出版時(shí)間:2009 出版社:人民郵電出版社 作者:Richard Stevens 頁數(shù):991 字?jǐn)?shù):1215000
Tag標(biāo)簽:無
前言
本書的第1版本于1990年問世,并迅速成為程序員學(xué)習(xí)網(wǎng)絡(luò)編程的權(quán)威參考書。時(shí)至今日,計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)已發(fā)生了翻天覆地的變化。只要看看第1版給出的用于征集反饋意見的地址(“uunet!hsi!netbook”)就一目了然了。(有多少讀者能看出這是20世紀(jì)80年代很流行的UUCP撥號網(wǎng)絡(luò)的地址?) 現(xiàn)在UUCP網(wǎng)絡(luò)已經(jīng)很罕見了,而無線網(wǎng)絡(luò)等新技術(shù)則變得無處不在!在這種背景下,新的網(wǎng)絡(luò)協(xié)議和編程范型業(yè)已開發(fā)出來,但程序員卻苦于找不到一本好的參考書來學(xué)習(xí)這些復(fù)雜的新技術(shù)?! ∵@本書填補(bǔ)了這一空白。擁有本書舊版的讀者一定想要一個(gè)新的版本來學(xué)習(xí)新的編程方法,了解IPv6等下一代協(xié)議方面的新內(nèi)容。所有人都非常期待本書,因?yàn)樗昝赖亟Y(jié)合了實(shí)踐經(jīng)驗(yàn)、歷史視角以及在本領(lǐng)域浸淫多年才能獲得的透徹理解。 閱讀本書是一種享受,我收獲頗豐。相信大家定會有同感。
內(nèi)容概要
本書是一部UNIX網(wǎng)絡(luò)編程的經(jīng)典之作。書中全面深入地介紹了如何使用套接字API進(jìn)行網(wǎng)絡(luò)編程。全書不但介紹了基本編程內(nèi)容,還涵蓋了與套接字編程相關(guān)的高級主題,對于客戶/服務(wù)器程序的各種設(shè)計(jì)方法也作了完整的探討,最后還深入分析了流這種設(shè)備驅(qū)動(dòng)機(jī)制?! ”緯鴥?nèi)容詳盡且具權(quán)威性,幾乎每章都提供精選的習(xí)題,并提供了部分習(xí)題的答案,是網(wǎng)絡(luò)研究和開發(fā)人員理想的參考書。
作者簡介
W. Richard Stevens(1951—1999) 國際知名的UNIX和網(wǎng)絡(luò)專家,備受贊譽(yù)的技術(shù)作家。生前著有《TCP/IP詳解》(三卷)、《UNIX環(huán)境高級編程》和《UNIX網(wǎng)絡(luò)編程》(兩卷),均為不朽的經(jīng)典著作?! ill Fenner AT&T實(shí)驗(yàn)室的主要技術(shù)人員,專攻IP多播、網(wǎng)絡(luò)管理和測量,他是IETF路由的領(lǐng)域主管之一,負(fù)責(zé)審批作為RFC出版的所有路由相關(guān)文檔?! ndrew M. Rudoff Sun公司的資深軟件工程師,專攻網(wǎng)絡(luò)、操作系統(tǒng)內(nèi)核、文件系統(tǒng)和高可用性軟件體系結(jié)構(gòu)。
書籍目錄
Part 1 Introduction and TCP/IP 簡介和TCP/IP Chapter 1 Introduction 簡介 1.1 Introduction 概述 1.2 A Simple Daytime Client 一個(gè)簡單的時(shí)間獲取客戶程序 1.3 Protocol Independence 協(xié)議無關(guān)性 1.4 Error Handling: Wrapper Functions 錯(cuò)誤處理:包裝函數(shù) 1.5 A Simple Daytime Server 一個(gè)簡單的時(shí)間獲取服務(wù)器程序 1.6 Roadmap to Client/Server Examples in theText 本書中客戶/服務(wù)器示例的路線圖 1.7 OSI Model OSI模型 1.8 BSD Networking History BSD網(wǎng)絡(luò)歷史 1.9 Test Networks and Hosts 測試用網(wǎng)絡(luò)及主機(jī) 1.10 Unix Standards Unix標(biāo)準(zhǔn) 1.11 -Bit Architectures 位體系結(jié)構(gòu) 1.12 Summary 小結(jié) Chapter 2 The Transport Layer: TOP,UDP, and SCTP 傳輸層:TCP、UDP和SCTP 2.1 Introduction 概述 2.2 The Big Picture 全景圖 2.3 User Datagram Protocol (UDP) 用戶數(shù)據(jù)報(bào)協(xié)議 2.4 Transmission Control Protocol (TCP) 傳輸控制協(xié)議 2.5 Stream Control Transmission Protocol(SCTP) 流控制傳輸協(xié)議 2.6 TCP Connection Establishment andTermination TCP連接的建立和終止 2.7 TIME_WAIT State TIME_WAIT狀態(tài) 2.8 SCTP Association Establishment andTermination SCTP關(guān)聯(lián)的建立和終止 2.9 Port Numbers 端口號 2.10 TCP Port Numbers and ConcurrentServers TCP端口號與并發(fā)服務(wù)器 2.11 Buffer Sizes and Limitations 緩沖區(qū)大小及限制 2.12 Standard Internet Services 標(biāo)準(zhǔn)因特網(wǎng)服務(wù) 2.13 Protocol Usage by Common InternetApplications 常見因特網(wǎng)應(yīng)用所用的協(xié)議 2.14 Summary 小結(jié)Part 2 Elementary Sockets 基本套接字 Chanter 3 Sockets Introduction 套接字簡介 3.1 Introduction 概述 3.2 Socket Address Structures 套接字地址結(jié)構(gòu) 3.3 Value-Result Arguments 值-結(jié)果參數(shù) 3.4 Byte Ordering Functions 字節(jié)排序函數(shù) 3.5 Byte Manipulation Functions 字節(jié)操縱函數(shù) 3.6 inet_aton, inet_addr, and inet_ntoa Functions inet_aton、inet_addr和inet_ntoa函數(shù) 3.7 inet_pton and inet_ntop Functions inet_pton和inet_ntop函數(shù) 3.8 sock_ntop and Related Functions 6 sock_ntop和相關(guān)函數(shù) 3.9 readn, writen, and readline Functions readn、writen和readline函數(shù) 3.10 Summary 小結(jié) Chapter 4 Elementary TCP Sockets 基本TCP套接字 4.1 Introduction 概述 4.2 socket Function socket函數(shù) 4.3 connect Function connect函數(shù) 4.4 bind Function bind函數(shù) 4.5 listen Function listen函數(shù) 4.6 accept Function accept函數(shù) 4.7 fork and exec Functions fork和exec函數(shù) 4.8 Concurrent Servers 并發(fā)服務(wù)器 4.9 close Function close函數(shù) 4.10 getsockname and getpeernameFunctions getsockname和getpeername函數(shù) 4.11 Summary 小結(jié) Chapter 5 TCP Client/Server Example TCP客戶/服務(wù)器示例 5.1 Introduction 概述 5.2 TCP Echo Server: main Function TCP回送服務(wù)器程序:main函數(shù) 5.3 TCP Echo Server: str_echo Function TCP回送服務(wù)器程序:str_echo函數(shù) 5.4 TCP Echo Client: main Function TCP回送客戶程序:main函數(shù) 5.5 TCP Echo Client: str_cli Function TCP回送客戶程序:str_cli函數(shù) 5.6 Normal Startup 正常啟動(dòng) 5.7 Normal Termination 正常終止 5.8 POSIX Signal Handling POSIX信號處理 5.9 Handling SIGCHLD Signals 處理SIGCHLD信號 5.10 wait and waitpid Functions wait和waitpid函數(shù) 5.11 Connection Abort before acceptReturns accept返回前連接異常中止 5.12 Termination of Server Process 服務(wù)器進(jìn)程的終止 5.13 SIGPIPE Signal SIGPIPE信號 5.14 Crashing of Server Host 服務(wù)器主機(jī)崩潰 5.15 Crashing and Rebooting of Server Host 服務(wù)器主機(jī)崩潰及重啟 5.16 Shutdown of Server Host 服務(wù)器主機(jī)關(guān)機(jī) 5.17 Summary of TCP Example TCP示例小結(jié) 5.18 Data Format 數(shù)據(jù)格式 5.19 Summary 小結(jié) Chapter 6 I/O多路復(fù)用:select和poll函數(shù) Chapter 7 套接字選項(xiàng) Chapter 8 基本UDP套接字 Chapter 9 基本SCTP套接字 Chapter 10 SCTP客戶/服務(wù)器示例 Chapter 11 名字與地址轉(zhuǎn)換Part 3 高級套接字 Chapter 12 IPv4與IPv6的互操作性 Chapter 13 守護(hù)進(jìn)程和inetd超級服務(wù)器程序 Chapter 14 高級I/O函數(shù) Chapter 15 Unix域協(xié)議 Chapter 16 非阻塞I/O Chapter 17 ioctl操作 Chapter 18 路由套接字 Chapter 19 密鑰管理套接字 Chapter 20 廣播 Chapter 21 多播 Chapter 22 高級UDP套接字 Chapter 23 高級SCTP套接字 Chapter 24 帶外數(shù)據(jù) Chapter 25 信號驅(qū)動(dòng)I/O Chapter 26 線程 Chapter 27 IP選項(xiàng) Chapter 28 原始套接字 Chapter 29 數(shù)據(jù)鏈路訪問 Chapter 30 多種客戶/服務(wù)器設(shè)計(jì)方式 Chapter 31 STREAMSAppendix A IPv4、IPv6、ICMPv4和ICMPv6Appendix B 虛擬網(wǎng)絡(luò)Appendix C 調(diào)試技術(shù)Appendix D 其他源代碼Appendix E 精選習(xí)題答案參考文獻(xiàn)索引
章節(jié)摘錄
1.1 Introduction 概述 When writing programs that communicate across a computer network, one must first invent a protocol, an agreement on how those programs will communicate. Before delv- ing into the design details of a protocol, high-level decisions must be made about which program is expected to initiate communication and when responses are expected. F r example, a Web server is typically thought of as a long-running program (or daemon) that sends network messages only in response to requests coming in from the network. The other side of the protocol is a Web client, such as a browser, which always initiates communication with the server. This organization into client and server is used by most network-aware applications. Deciding that the client always initiates requests tends to simplify the protocol as well as the programs themselves. Of course, some of the more complex network applications also require asynchronous callback communication, where the server initiates a message to the client. But it is far more common for applications to stick to the basic client/server model shown in Figure 1.1. Clients normally communicate with one server at a time, although using a Web browser as an example, we might communicate with many different Web servers over, say, a 10-minute time period. But from the servers perspective, at any given point in time, it is not unusual for a server to be communicating with multiple clients. We show this in Figure 1.2. Later in this text, we will cover several different ways for a server to handle multiple clients at the same time.
媒體關(guān)注與評論
“所有人都非常期待這本書,因?yàn)樗昝赖亟Y(jié)合了實(shí)踐經(jīng)驗(yàn)、歷史視角以及在本領(lǐng)域浸淫多年才能獲得的透徹理解。閱讀本書是一種享受,我收獲頗豐。相信大家定會有同感?!薄 猄am Leffler,F(xiàn)reeBSD基金會副主席 “這部著作在計(jì)算機(jī)科學(xué)領(lǐng)域里的傳奇得以延續(xù),Bill Fenner和Andrew Rudoff居功至偉?!薄 狝rt Sedighi “這套書是學(xué)習(xí)網(wǎng)絡(luò)編程最好的書。全世界最最好的,遠(yuǎn)超群倫?!薄 猄. Devasundaram “這本書極好……買吧,這本書非常專業(yè),物有所值,對每一個(gè)準(zhǔn)備從事UNIX系統(tǒng)網(wǎng)絡(luò)編程的人來說都是必備的。” ——L. Garcia “這本書包括了我想了解的UNIX套接字API的所有知識。” ——Thomas Haugland Jensen “這本書不會讓你一夜之間成為專家,但它終究會讓你成為專家?!薄 狫ohn Nguyen “你若是個(gè)重任在肩的網(wǎng)絡(luò)程序員骨干,這本書絕對是給你寫的,即使你不是,也能從中學(xué)到不少東西?!薄 猂uss Woodman “任何詞語都無法表達(dá)出這本書有多好!我誠懇地推薦初學(xué)者買這本書,我保證你一定會成為網(wǎng)絡(luò)大師。我自己剛讀完這本書,并在工作中經(jīng)常用到,我能感覺到自己的功力倍增,真是奇妙!” ——“kael8952”
編輯推薦
這是一部傳世之作!頂級網(wǎng)絡(luò)編程專家Bill Fenner和Andrew M.Rudooff應(yīng)邀執(zhí)筆,對W.Richard Stevens的經(jīng)典作品進(jìn)行修訂。書中吸納了近幾年網(wǎng)絡(luò)技術(shù)的發(fā)展。增添了IPv6、SCTP協(xié)議和密鑰管理套接字等內(nèi)容,深入討論了最新的關(guān)鍵標(biāo)準(zhǔn)、實(shí)現(xiàn)和技術(shù)?! 械乃惺纠际窃赨NIX系統(tǒng)上測試通過的真實(shí)的、可運(yùn)行的代碼,繼承了Stevens一直強(qiáng)調(diào)的理念:“學(xué)習(xí)網(wǎng)絡(luò)編程的最好方法就是下載這些程序,對其進(jìn)行修改和改進(jìn)。只有這樣實(shí)際編寫代碼才能深入理解有關(guān)概念和方法?!弊x者可以從圖靈網(wǎng)站《UNIX網(wǎng)絡(luò)編程 卷1:套接字聯(lián)網(wǎng)API(英文版 第3版)》網(wǎng)頁免費(fèi)注冊下載這些示例的源代碼。 《UNIX網(wǎng)絡(luò)編程 卷1:套接字聯(lián)網(wǎng)API(英文版 第3版)》為UNIX網(wǎng)絡(luò)編程提供了全面的指導(dǎo)。是網(wǎng)絡(luò)研究和開發(fā)人員公認(rèn)的權(quán)威參考書,無論網(wǎng)絡(luò)編程的初學(xué)者還是網(wǎng)絡(luò)專家都會大受裨益?! 禪NIX網(wǎng)絡(luò)編程 卷1:套接字聯(lián)網(wǎng)API(英文版 第3版)》中文版預(yù)計(jì)在2010年5月出版。敬請期待。 UNIX和網(wǎng)絡(luò)專家W. Richard Stevens的傳世之作 UNIX系統(tǒng)網(wǎng)絡(luò)編程人員的必備經(jīng)典 內(nèi)容詳盡權(quán)威,提供精選習(xí)題及答案 詳細(xì)描述4種不同的IPC形式 在Unix系統(tǒng)上測試通過的真實(shí)、可運(yùn)行的代碼讓讀者輕松深入學(xué)習(xí)網(wǎng)絡(luò)編程復(fù)雜的新技術(shù)。
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載
UNIX網(wǎng)絡(luò)編程 卷1 PDF格式下載