UNIX網絡編程 卷1:套接字聯(lián)網API(第3版)

出版時間:2010-6  出版社:人民郵電出版社  作者:W.Richard Stevens,Bill Fenner,Andrew M. Rudoff  頁數(shù):804  譯者:楊繼張  
Tag標簽:無  

前言

概述 本書面向的讀者是那些希望自己編寫的程序能使用稱為套接字(socket)的API進行彼此通信的人。有些讀者可能已經非常熟悉套接字了,因為這個模型幾乎已經成了網絡編程的同義詞,但有些讀者可能仍需要從頭開始學習。本書想達到的目標是向大家提供網絡編程指導。這些內容不僅適用于專業(yè)人士,也適用于初學者;不僅適用于維護已有代碼,也適用于開發(fā)新的網絡應用程序;此外,還適用于那些只是想了解一下自己系統(tǒng)中網絡組件的工作原理的人。 書中的所有示例都是在Unix系統(tǒng)上測試通過的真實的、可運行的代碼。但是,考慮到許多非Unix的操作系統(tǒng)也支持套接字API,因而我們選取的示例與所講述的一般性概念,在很大程度上是與操作系統(tǒng)無關的。幾乎每種操作系統(tǒng)都提供了大量的網絡應用程序,如網頁瀏覽器、電子郵件客戶端、文件共享服務器等。我們按常規(guī)的劃分方法把這些應用程序分為客戶程序和服務器程序,并在書中多次編寫了相應的小型示例。 面向Unix介紹網絡編程自然免不了要介紹Unix本身和TCP/IP的相關背景知識。需要更詳盡的背景知識時,我們會指引讀者查閱其他書籍。本書中經常提到以下4本書,我們將其簡記如下: APUE:Advanced Programming in the UNIX Environment [Stevens 1992]; TCPv1:TCP/IP Illustrated, Volume 1 [Stevens 1994]; TCPv2:TCP/IP Illustrated, Volume 2 [Wright and Stevens 1995]; TCPv3:TCP/IP Illustrated, Volume 3 [Stevens 1996]。 其中TCPv2包含了與本書內容密切相關的細節(jié),它描述并給出了套接字API中網絡編程函數(shù)(socket、bind、connect等)的真實4.4BSD實現(xiàn)。如果已經理解某個特性的實現(xiàn),那么在應用程序中使用該特性就更有意義了。 與第2版的區(qū)別 從20世紀80年代開始,套接字就差不多是現(xiàn)在這個樣子了。時至今日,套接字仍然是網絡API的首選,其最初的設計的確值得稱道。因此,當讀者發(fā)現(xiàn)我們對出版于1998年的第2版又做了不少改動時,可能會覺得驚訝。本書中所做的改動歸納如下。 新版本包含了IPv6的最新信息。在第2版出版時,IPv6尚處于草案階段,這些年來已經有所發(fā)展。 更新了全部函數(shù)和示例的描述,以反映最新的POSIX規(guī)范(POSIX 1003.1-2001),即Single Unix Specification Version 3。 刪去了X/Open傳輸接口(XTI)的內容。這個API已經不常用了,連最新的POSIX 規(guī)范也不再提到。 刪去了事務TCP協(xié)議(T/TCP)的內容。 新增了三章用于描述一種相對較新的傳輸協(xié)議——SCTP。這個可靠的面向消息的協(xié)議能夠在兩個端點之間提供多個流,并為多歸屬技術提供傳輸層支持。該協(xié)議最初是為了在因特網上傳輸電話信號而設計的,但它的一些特性可以用于許多應用。

內容概要

  本書是一部UNIX網絡編程的經典之作!書中全面深入地介紹了如何使用套接字API進行網絡編程。全書不但介紹了基本編程內容,還涵蓋了與套接字編程相關的高級主題,對于客戶/服務器程序的各種設計方法也作了完整的探討,最后還深入分析了流這種設備驅動機制?! ”緯鴥热菰敱M且具權威性,幾乎每章都提供精選的習題,并提供了部分習題的答案,是網絡研究和開發(fā)人員理想的參考書。

作者簡介

W.Richard Stevens國際知名的Unix和網絡專家,《TCP/IP 詳解》(三卷本)作者W.Richard Stevens(1951-1999),是國際知名的Unix和網絡專家;受人尊敬的計算機圖書作家;同時他還是廣受歡迎的教師和顧問。

書籍目錄

第一部分 簡介和TCP/IP  第1章 簡介   第2章 傳輸層:TCP、UDP和SCTP 第二部分 基本套接字編程  第3章 套接字編程簡介   第4章 基本TCP套接字編程   第5章 TCP客戶/服務器程序示例   第6章 I/O復用:select和poll函數(shù)   第7章 套接字選項   第8章 基本UDP套接字編程   第9章 基本SCTP套接字編程  第10章 SCTP客戶/服務器程序例子  第11章 名字與地址轉換第三部分 高級套接字編程  第12章 IPv4與IPv6的互操作性   第13章 守護進程和inetd超級服務器   第14章 高級I/O函數(shù)   第15章 Unix域協(xié)議   第16章 非阻塞式I/O   第17章 ioctl操作   第18章 路由套接字   第19章 密鑰管理套接字   第20章 廣播   第21章 多播   第22章 高級UDP套接字編程   第23章 高級SCTP套接字編程   第24章 帶外數(shù)據(jù)   第25章 信號驅動式I/O   第26章 線程   第27章 IP選項   第28章 原始套接字   第29章 數(shù)據(jù)鏈路訪問   第30章 客戶/服務器程序設計范式   第31章 流 附錄A IPv4、IPv6、ICMPv4和ICMPv6 附錄B 虛擬網絡 附錄C 調試技術 附錄D 雜湊的源代碼 附錄E 精選習題答案 參考文獻索引 

章節(jié)摘錄

插圖:我們將在本章較深入地討論SCTP,查看SCTP提供的更多特性和套接字選項。我們將討論多個論題,包括故障檢測的控制、無序的數(shù)據(jù)以及通知。本章通章提供了多個代碼例子,以展示如何使用SCTP的某些高級特性。SCTP是一個面向消息的協(xié)議,遞送給用戶的是部分的或完整的消息。部分消息的遞送前提是應用進程選擇向對端發(fā)送大消息(譬如大于套接字緩沖區(qū)一半大?。?。部分消息被遞送給應用進程之后,多個部分消息組合成單個完整消息并不由SCTP負責。在應用進程看來,一個消息既可以由單個輸入操作接收,也可以由若干個相繼的輸入操作接收。我們將通過一個作為例子的函數(shù)說明處理這種部分遞送機制的一個方法。SCTP服務器程序既可以迭代運行,也可以并發(fā)運行,這取決于應用程序開發(fā)人員選取的套接字式樣。SCTP還提供了從一到多式套接字抽取某個關聯(lián)并使其成為一到一式套接字的方法。本方法允許構造既可迭代運行又可并發(fā)運行的服務器程序?;仡櫸覀冊诘?0章中編寫的服務器程序,它不保持任何關聯(lián)狀態(tài),因為它依賴客戶程序關閉關聯(lián)。依賴客戶關閉關聯(lián)存在這樣的弱點:要是客戶打開一個關聯(lián)后從不發(fā)送任何數(shù)據(jù),將發(fā)生什么?服務器不得不將資源分配給從不使用這些資源的客戶。懶惰的客戶會無意中造成對于SCTP實現(xiàn)的拒絕服務攻擊。

媒體關注與評論

“所有人都非常期待這本書,因為它完美地結合了實踐經驗、歷史視角以及在本領域浸淫多年才能獲得的透徹理解。閱讀本書是一種享受,我收獲頗豐。相信大家定會有同感。”   ——Sam Leffler,F(xiàn)reeBSD基金會副主席  “這部著作在計算機科學領域里的傳奇得以延續(xù),Bill Fenner和Andrew Rudoff居功至偉?!?   ——Art Sedighi  “這套書是學習網絡編程最好的書。全世界最最好的,遠超群倫?!?   ——S. Devasundaram  “這本書不會讓你一夜之間成為專家,但它終究會讓你成為專家?!?   ——John Nguyen

編輯推薦

《UNIX網絡編程(卷1):套接字聯(lián)網API(第3版)》中頂級網絡編程專家Bill Fenner和Andrew M. Rudoff應邀執(zhí)筆,對W. Richard Stevens的經典作品進行修訂。書中吸納了近幾年網絡技術的發(fā)展,增添了IPv6、SCTP協(xié)議和密鑰管理套接字等內容,深入討論了最新的關鍵標準、實現(xiàn)和技術。書中的所有示例都是在UNIX系統(tǒng)上測試通過的真實的、可運行的代碼,繼承了Stevens一直強調的理念:“學習網絡編程的最好方法就是下載這些程序,對其進行修改和改進。只有這樣實際編寫代碼才能深入理解有關概念和方法?!弊x者可以從圖靈網站《UNIX網絡編程(卷1):套接字聯(lián)網API(第3版)》網頁免費注冊下載這些示例的源代碼。 《UNIX網絡編程(卷1):套接字聯(lián)網API(第3版)》為UNIX網絡編程提供全面的指導,是網絡研究和開發(fā)人員公認的權威參考書,無論網絡編程的初學者還是網絡專家都會大受裨益。

圖書封面

圖書標簽Tags

評論、評分、閱讀與下載


    UNIX網絡編程 卷1:套接字聯(lián)網API(第3版) PDF格式下載


用戶評論 (總計174條)

 
 

  •   UNIX網絡編程 卷1:套接字聯(lián)網API, 值得一看啊
  •   寫作手法很輕松靈活,適合不同層次的讀者閱讀,這本書可以激發(fā)讀者的靈感給予讀者以啟迪,可以給讀者很透徹的理論指導和實踐指南,可以讓讀者學的更扎實更深入理解UNIX和LINUX網絡編程的細節(jié)和原理性的知識,是本不可多得的大師級別的巨作值得珍藏。
  •   看著這本書,對于工作的幫助很大,除了網絡編程的內容之外還能了解很多unix相關的知識很好
  •   書的內容對于地每位想學習網絡編程的人來說必須看,看了之后無論是在linux還是windows平臺上,其基本的原理不變,都可以應用上,具體的操作系統(tǒng)平臺細節(jié)有差異,比如unix下有的socket選項linux下可能是另一個。書的紙張印刷質量很好,人民郵電出版社的圖靈系列只要是正版的用的紙質量都很好
  •   UNIX網絡編程 經典還用說么
    呵呵 如果你是Unix C 程序員
    必備
    不然你OUT了
  •   詳細講解了Unix網絡編程,做網絡開發(fā)的不錯
  •   沒什么好說的,如果要搞Unix網絡編程,本書必看!
  •   unix網絡編程,是學習網絡知識的必備書籍,挺不錯的
  •   unix網絡編程的權威書籍
  •   這本書比卷2有用多了,比《UNIX環(huán)境高級編程》有用
  •   UNIX編程經典之一,必須讀過才算入門。
  •   unix編程語言強大,需要慢慢研究!
  •   Unix編程必看
  •   拿到書的時候,包裝的非常好,書的質量也很好,絕對的正版,沒的說,看完了第一章,覺得學到了很多知識,以前在網上下載了掃描版的電子版,可能是個人不習慣用電子版本,總覺得看著電子版看得不是很深入,現(xiàn)在紙質版來了,個人感覺看的比較深入點。很多人說翻譯有很多地方錯誤,有那么嚴重嗎?既然是翻譯過來的,而且中文又是博大精深,同種意思各種表述都有,何必那么偏激呢?我覺得翻譯很好啊。難不成你買英文版然后google翻譯?你試試看?這本書絕對是網絡編程的經典必備書籍,像我一樣的同學們,不要因為某些人的偏激而影響我們的學習渠道,沒有哪一本書是十全十美的。況且還是翻譯過來的,應該感謝譯者。你草草的看一章做結論,和你認真的看一章做結論那是不一樣的,說多了,呵呵
  •   書的內容是公認的網絡編程經典之作,大家懂的;書的紙質也蠻好的,就是送來的時候書角有點損傷,沒什么關系啦。
  •   看了下還是先買的卷二,網絡編程,主要就是太貴了,所以先買一本看。不過物有所值的。
  •   之前聽同事說學習網絡編程的話,這本書很經典,拿到書大致看了一下內容,確實不錯
  •   經典的書,學linux網絡編程必看之書~~收獲非常大!
  •   學習網絡編程的必讀書目之一!!
    內容貨真價實,在計算機科學發(fā)展史上該書具有不可磨滅的貢獻!

    值得認真學習和收藏!
  •   確實沒寫譯者,所以我第一個提問,是不是中文的,買回來確實是中文的,寫的是兩個人"編譯"
    看了2章,覺得翻譯的還可以,昨天又回頭看了機械的<高級環(huán)境編程>的第一版,我覺得這個翻譯好像更容易理解一些。我沒有讀過機械的<網絡編程>,不知道是不是翻譯是一樣的。
  •   網絡編程中的經典,不得不看
  •   聽同事介紹的書,對學習網絡編程很有幫助
  •   學習網絡編程絕對的經典,簡直有一種相見恨晚的感覺
  •   很喜歡網絡編程,一直沒有系統(tǒng)的學習過,這本書可以系統(tǒng)的學習和掌握網絡編程知識
  •   好書,看了本書,使自己對網絡編程理解的更深了
  •   網絡編程入門必看的一本書
  •   網絡編程必看之書,寫的最好一本網絡編程。超級厲害
  •   大師級的書,剛好網絡編程,正好用的上,就厚了點
  •   好書,學習網絡編程中
  •   網絡編程必修,不用多說
  •   是學習網絡編程必備書籍
  •   質感很不錯,網絡編程必備。
  •   學學網絡編程
  •   好書,網絡編程必備哦
  •   現(xiàn)在是因特網時代,網絡編程是每個程序員必定要掌握的知識,從此時肯定是能夠獲益的
  •   學習網絡編程的必看
  •   網絡編程必備,不過要耐心才能看
  •   Stevens的書內容沒得說,經典。書質量不錯,就是紙張?zhí)?,我比較喜歡泛黃一點的紙張,保護眼睛。
    這本書基本把現(xiàn)在主要的網絡協(xié)議,(傳輸層之上)做了一個深入淺出的說明??赐曛髮W絡會有一個更高的認識。強烈推薦。
  •   是Linux/UnIX下開發(fā)的必備書籍,知識全面,詳細,非常不錯,翻譯的有點生硬。
  •   拿到書,每天都是在地鐵上或者路上看!
    以前學套接字,你只知道socket是通信的,不知道內部機制是什么,但這本書給你詳細的闡述所有的原理,每個細節(jié)都涉及到!而且這本書會激發(fā)你的興趣,雖然有800多頁,你都覺得太薄了!
  •   這本是經典名著,也根據(jù)技術發(fā)展做了一些更新。不過譯者都不樂意署名了么?這本書把TCP/IP相關的socket api講的清清楚楚。
  •   最近有接觸linux網絡驅動開發(fā),買了這兩本經典書
  •   對于學習tcp,udp socket編程用處很大
  •   這本書就不說了,大師的經典之作,搞網絡的人必備書籍?。。。?!沒有這本書,就別說你是搞網絡的
  •   同樣是活動期間買的,天貓**買的東西到現(xiàn)在都沒發(fā)出來,當當?shù)囊呀浭盏搅?,發(fā)貨快多了,贊一個。UNIXLINUX網絡開發(fā)必看書籍。內容詳盡,紙質不錯。
  •   真是本好書,里面的知識都解釋的很詳細。對于學習linux編程有很大的幫助
  •   經典書籍,不多說,學習linux等網絡變成必備
  •   做網絡開發(fā)必備書
  •   好書,學網絡的不管做那一層的,都應該看看這本書。
  •   有些難度,網絡學習很好!
  •   物超所值,好好學習網絡這一塊了!
  •   本書寫的很有條理,對api的用法及為什么這樣用都有介紹,加深理解對于代碼設計健壯性很有幫助。
  •   這本書是Tcp/ip中得經典,書的質量也很好。
  •   Stevens 寫的書值得信賴
  •   好書,沒得說;很經典的書,其他不多說了,早就想擁有一套,乘機半價購買。
  •   好書就不用多說了,大家都知道的,兩個字:經典
  •   卷一很好,很經典!但是當當主頁上國慶哥的圖片我怎么看都不好看,有點影響購物的心情?。?!
  •   紙張質量好,字體清晰,內容深入,豐富實在。經典中的經典,值得收藏。
  •   全新的書,稱著活動果斷買了一套,很高興!
  •   經典書了,值得所有學習計算機的人讀一讀了。
  •   經典書,通信系統(tǒng)軟件開發(fā)必備。
  •   計算機經典好書啊,正版,當時搞活動五折買的,喜歡,內容也很,有幫助
  •   快遞的速度超爛,上帝很生氣!
    書就不用說了,經典之作,堪稱句句經典,翻譯的也很棒!
  •   經典,經典,經典,經典,不會讓你一夜成為專家,但終究會讓你成為專家
  •   經典之作,物流給力
  •   紙質的到底比電子版的看起來心里踏實些,不愧是經典之作,看了挺受用的?。?/li>
  •   經典之作,不用多說
  •   經典之作,怎能不讀。。
  •   經典之作,翻譯的不是很好,有點別扭
  •   包裝還行,經典之作,從來都買正版
  •   對如此經典之作,任何評價都是多余的。
  •   內容經典,書的紙張好
  •   經典的一本書 書的質量還可以
  •   這本書內容詳盡,是不可多得的書籍
  •   對做linux方面的工程師說的話,還是不錯的一本書,特別是想深入學習的
  •   太經典了,內容不用多說,紙張很好
  •   很好,只是書太厚,內容很多,只能先作為參考書看了。
  •   是本好書,值得深入研究!
  •   里面的內容非常充實,紙張也很不錯
    值得購買!
  •   買書從來沒覺得這么開心過,太棒了,永遠推薦這本書
  •   經典的一本書,程序員值得擁有!
  •   這本書確實不錯,經典。。。
  •   聽人推薦的書,還沒詳細看。
  •   經典書籍,值得好好研究和實踐
  •   經典書啊,降價時買的,備用著,方便查看
  •   經典書,不用說了,常備的
  •   經典書,先收藏了慢慢看
  •   很經典的書,也很實惠
  •   書很經典。就是好厚啊
  •   這是公認的經典的書
  •   書的包裝質量都不錯,一本經典的書
  •   是我要的書,很好看,經典的書很不錯。
  •   經典的書,以備不時之需
  •   書是必須讀經典的
  •   非常經典的書,學習一下
  •   適合看完linux程序設計之后接著看。路漫漫呀
  •   屬于進階級人員看的書了,沒有基礎的話建議先從APUE看起。另外據(jù)說這本書看英文原版的更佳。(當當給的書的書角有些褶皺,算是美中不足)
  •   這本書找了好久了。包裝完整。好多地方沒得賣。
  •   經典中的經典,錯不了。
  •   很經典的工具書,正在學習中
 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網 手機版

京ICP備13047387號-7