作者簡介:
尹聖雨
曾為風投公司開發人員,因齣版IT類書籍並開展相關講座而聞名。2004年至今一直參與OpenGL ES圖形庫的建設和3D加速芯片的開發,以及Khronos Group(移動國際標準化財團)的標準製定相關業務,還參與手機DMB芯片的開發。現任(株)Axissoft公司CTO,緻力於構建基於Web的解決方案。
ripeness21@gmail.com
譯者簡介:
金國哲
畢業於重慶大學計算機學院,2009年至今在延邊大學計算機係任教。
主講課程:Java程序設計、Android應用開發、Web程序設計等。
主要研究方嚮:跨語言檢索、自然語言處理等。
曾主持並參與某部隊入侵檢測係統、論文自動采集及管理係統等多個軟件開發項目。
第一部分 開始網絡編程
第1章 理解網絡編程和套接字 2
1.1 理解網絡編程和套接字 2
1.2 基於Linux的文件操作 9
1.3 基於Windows平颱的實現 15
1.4 基於Windows的套接字相關函數及示例 18
1.5 習題 24
第2章 套接字類型與協議設置 26
2.1 套接字協議及其數據傳輸特性 26
2.2 Windows平颱下的實現及驗證 32
2.3 習題 35
第3章 地址族與數據序列 36
3.1 分配給套接字的IP地址與端口號 36
3.2 地址信息的錶示 39
3.3 網絡字節序與地址變換 42
3.4 網絡地址的初始化與分配 45
3.5 基於Windows的實現 52
3.6 習題 57
第4章 基於TCP的服務器端/客戶端(1) 59
4.1 理解TCP和UDP 59
4.2 實現基於TCP的服務器端/客戶端 64
4.3 實現迭代服務器端/客戶端 71
4.4 基於Windows的實現 77
4.5 習題 81
第5章 基於TCP的服務器端/客戶端(2) 82
5.1 迴聲客戶端的完美實現 82
5.2 TCP原理 91
5.3 基於Windows的實現 96
5.4 習題 99
第6章 基於UDP的服務器端/客戶端 101
6.1 理解UDP 101
6.2 實現基於UDP的服務器端/客戶端 103
6.3 UDP的數據傳輸特性和調用connect函數 109
6.4 基於Windows的實現 114
6.5 習題 117
第7章 優雅地斷開套接字連接 118
7.1 基於TCP的半關閉 118
7.2 基於Windows的實現 124
7.3 習題 127
第8章 域名及網絡地址 128
8.1 域名係統 128
8.2 IP地址和域名之間的轉換 130
8.3 基於Windows的實現 136
8.4 習題 138
第9章 套接字的多種可選項 140
9.1 套接字可選項和I/O緩衝大小 140
9.2 SO_REUSEADDR 145
9.3 TCP_NODELAY 150
9.4 基於Windows的實現 152
9.5 習題 154
第10章 多進程服務器端 155
10.1 進程概念及應用 155
10.2 進程和僵屍進程 159
10.3 信號處理 165
10.4 基於多任務的並發服務器 173
10.5 分割TCP的I/O程序 178
10.6 習題 182
第11章 進程間通信 183
11.1 進程間通信的基本概念 183
11.2 運用進程間通信 188
11.3 習題 193
第12章 I/O復用 194
12.1 基於I/O復用的服務器端 194
12.2 理解select函數並實現服務器端 197
12.3 基於Windows的實現 206
12.4 習題 209
第13章 多種I/O函數 211
13.1 send & recv函數 211
13.2 readv & writev函數 221
13.3 基於Windows的實現 225
13.4 習題 229
第14章 多播與廣播 230
14.1 多播 230
14.2 廣播 236
14.3 基於Windows的實現 240
14.4 習題 242
第二部分 基於Linux的編程
第15章 套接字和標準I/O 246
15.1 標準I/O函數的優點 246
15.2 使用標準I/O函數 249
15.3 基於套接字的標準I/O函數使用 252
15.4 習題 254
第16章 關於I/O流分離的其他內容 255
16.1 分離I/O流 255
16.2 文件描述符的復製和半關閉 259
16.3 習題 264
第17章 優於select的epoll 265
17.1 epoll理解及應用 265
17.2 條件觸發和邊緣觸發 273
17.3 習題 283
第18章 多綫程服務器端的實現 284
18.1 理解綫程的概念 284
18.2 綫程創建及運行 287
18.3 綫程存在的問題和臨界區 296
18.4 綫程同步 299
18.5 綫程的銷毀和多綫程並發服務器端的實現 306
18.6 習題 312
第三部分 基於Windows的編程
第19章 Windows平颱下綫程的使用 316
19.1 內核對象 316
19.2 基於Windows的綫程創建 317
19.3 內核對象的2種狀態 322
19.4 習題 325
第20章 Windows中的綫程同步 327
20.1 同步方法的分類及CRITICAL_SECTION同步 327
20.2 內核模式的同步方法 331
20.3 Windows平颱下實現多綫程服務器端 339
20.4 習題 343
第21章 異步通知I/O模型 344
21.1 理解異步通知I/O模型 344
21.2 理解和實現異步通知I/O模型 346
21.3 習題 356
第22章 重疊I/O模型 357
22.1 理解重疊I/O模型 357
22.2 重疊I/O的I/O完成確認 362
22.3 習題 370
第23章 IOCP 371
23.1 通過重疊I/O理解IOCP 371
23.2 分階段實現IOCP程序 379
23.3 習題 387
第四部分 結束網絡編程
第24章 製作HTTP服務器端 390
24.1 HTTP概要 390
24.2 實現簡單的Web服務器端 394
24.3 習題 401
第25章 進階內容 403
25.1 網絡編程學習的其他內容 403
25.2 網絡編程相關書籍介紹 404
索引 406
· · · · · · (
收起)
第一部分主要介紹網絡編程基礎知識。此部分主要論述Windows和Linux平颱網絡編程必備基礎知識,未過多涉及不同操作係統特性。
第二部分和第三部分與操作係統有關。第二部分主要是Linux相關內容,而第三部分主要是Windows相關內容。從事Windows編程的朋友瀏覽第二部分內容後,同樣可以提高技藝。
第四部分對全書內容進行總結,包含瞭作者在自身經驗基礎上總結的學習建議,還介紹瞭網絡編程經典書籍。
TCP/IP網絡編程 下載 mobi epub pdf txt 電子書 格式
評分
☆☆☆☆☆
##本書最大的特點是程序例子足夠多且能正常跑起來,內容對初學者友善,不會因為太難的內容而産生厭倦情緒。作為初學者,我是挺喜歡這本書的。 這本書另外一個好的地方是還同時介紹瞭Windows平颱下的網絡編程。那些Linux和Windows共有的一些接口,你會覺得,哦,原來也不是很難,...
評分
☆☆☆☆☆
##對零基礎的人友好,講很全麵,通俗易懂
評分
☆☆☆☆☆
評分
☆☆☆☆☆
評分
☆☆☆☆☆
##很適閤小白,一路指導實現HTTP服務器
評分
☆☆☆☆☆
##拋開Windows相關全部讀完,閱讀體驗極為舒適。關於epoll部分通俗易懂,解決瞭我好多睏惑
評分
☆☆☆☆☆
評分
☆☆☆☆☆
##這本書帶我入門網絡編程和係統編程,總體瞭來說,非常流暢,各種讀者可能的疑惑,作者都考慮到瞭,比單純的去看ostep和top to down這種,更適閤用來當通用程序員的書籍
評分
☆☆☆☆☆
##書不錯,但對我來說跳著看更好。瞟瞭一眼最後一章HTTP服務器的代碼,和我之前照葫蘆畫瓢寫的Rust單綫程HTTP服務器代碼對比瞭一下,發現其實我更想知道的是**撇開編程語言、圍繞著主要實現邏輯的防禦性代碼**的邊邊角角,網絡編程應用於什麼場景、客戶端和服務端在這些場景裏做瞭什麼,而不是怎麼調用不同平颱的套接字API。隻能說這本書的編排方式不符閤我學習網絡編程的預期,書裏講的東西在我看來過於側重平颱的套接字API瞭。