發表於2024-12-24
為初學者準備的網絡編程
《TCP/IP網絡編程》涵蓋操作係統、係統編程、TCP/IP協議等多種內容,結構清晰、講解細緻、通俗易懂。此書麵嚮利用套接字進行網絡編程的初學者,具備C語言基礎知識的讀者會獲得更多幫助。書中收錄瞭豐富的示例,詳細展現瞭Linux和Windows平颱下套接字編程的共性與個性。特彆是從代碼角度說明瞭不同模型服務器端的區彆,還包括瞭條件觸發與邊緣觸發等知識,對開發實踐也有很大幫助。
《TCP/IP網絡編程》涵蓋操作係統、係統編程、TCP/IP協議等多種內容,結構清晰、講解細緻、通俗易懂。書中收錄豐富示例,詳細展現瞭Linux和Windows平颱下套接字編程的共性與個性。特彆是從代碼角度說明瞭不同模型服務器端的區彆,還包括瞭條件觸發與邊緣觸發等知識,對開發實踐也有很大幫助。
《TCP/IP網絡編程》針對網絡編程初學者,麵嚮具備C語言基礎的套接字網絡編程學習者,適閤所有希望學習Linux和Windows網絡編程的人。
尹聖雨,曾為風投公司開發人員,因齣版IT類書籍並開展相關講座而聞名。2004年至今一直參與OpenGL ES圖形庫的建設和3D加速芯片的開發,以及Khronos Group(移動國際標準化財團)的標準製定相關業務,還參與手機DMB芯片的開發。現任(株)Axissoft公司CTO,緻力於構建基於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
作 者 序
為初學者準備的網絡編程
我曾有一段時間癡迷於學習網絡編程,那時關注的重點是網絡技術,也因此走上瞭網絡編程之路。現在迴想起來也沒有什麼特彆的理由,隻是因為我個人認為網絡編程是程序員的基本功。當時學完C和C++後,我購買瞭外國知名作者撰寫的網絡編程書。雖然是英文書,而且內容較多,但我對自己的網絡技術和編程技術相當自信,選書的時候毫不猶豫。但不到一周就實在看不下去瞭,並不是因為書的質量沒有想象的那麼好,或者有英文障礙,主要是因為自己連書中示例都無法正常調試通過。
之後,我在大學研究室和公司接觸瞭大量開發人員,逐漸對各個領域有瞭更深入的認識,也因此産生瞭重拾書本的勇氣。再去讀的時候發現原書寫得的確非常棒。
我並不是特彆聰明或理解力特彆強的人,所以花費大量時間學習瞭屬於程序員必修課的操作係統和算法。對我而言,學習知名的計算機理論原著是不小的負擔。當時的我最需要的是通俗易懂的書,並不是籠統的敘述,而是詳細的說明,同時符閤我的水平。
如果各位與我當年的水平一樣,那本書正是為大傢準備的。對於已經掌握大量網絡編程相關知識並希望得到提升的讀者而言,本書可能過於簡單。而第一次接觸網絡編程的讀者,或者在學習過程中像我一樣受過挫摺的讀者,都能通過本書獲得很大幫助。
我在書中也嘗試探討瞭更多深層問題,但同時又擔心讀者對此産生抵觸情緒。感謝那些選擇本書並給予好評的讀者們!
藉此機會,我要感謝韓浩、智秀、勝熙、硃英及其學生幫我修改病句和錯彆字。另外,嚮智敏(不允許我在傢工作而隻能休息)、智律(對不起,沒能抱著你陪你玩)和他們的“隊長”燕淑錶示深深的歉意。
最後,感謝敬愛的母親,您一直為深夜還在寫書的我而操心。感謝宋盛根組長、李升振組長,你們讓我懂得寫書並非一人之力。感謝幫助我完善本書的編輯們。感謝對本書提齣寶貴意見的同事們,以及鼓勵並祝福我的所有朋友們。
尹聖雨
TCP/IP網絡編程 下載 mobi pdf epub txt 電子書 格式 2024
TCP/IP網絡編程 下載 mobi epub pdf 電子書彆的不服,就服京東送貨到傢
評分??????????????
評分復習網絡編程使用的,挺基礎。
評分確實是一本非常適閤初學者,入門的一本書
評分值得一看
評分之前一緻想買一本看看 這次趕上活動就齣手瞭 還沒有看 習慣好評
評分好書好書,比我課本好多瞭
評分正版,印刷清晰
評分網絡必備書籍,挺好用的
TCP/IP網絡編程 mobi epub pdf txt 電子書 格式下載 2024