注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術(shù)計算機/網(wǎng)絡(luò)網(wǎng)絡(luò)與數(shù)據(jù)通信TCP/IP網(wǎng)絡(luò)編程原理與技術(shù)

TCP/IP網(wǎng)絡(luò)編程原理與技術(shù)

TCP/IP網(wǎng)絡(luò)編程原理與技術(shù)

定 價:¥39.00

作 者: 鐘輝,臧晗,董潔,宋凱,孟祥宇 著
出版社: 清華大學出版社
叢編項: 計算機系列教材
標 簽: 暫缺

ISBN: 9787302526025 出版時間: 2019-06-01 包裝: 平裝
開本: 16開 頁數(shù): 191 字數(shù):  

內(nèi)容簡介

  Internet是世界上z大的計算機互連網(wǎng)絡(luò),TCP/IP是Internet上使用z為成熟的協(xié)議。本書重點介紹用TCP/IP進行編程的主要原理和編程環(huán)境,并舉出實例來解釋這些編程原理和概念。 網(wǎng)絡(luò)中最基本的通信基礎(chǔ)是客戶服務(wù)器模式,它在計算機通信中占主導地位。本書內(nèi)容主要包括客戶服務(wù)器各部件的功能,還說明了如何構(gòu)建客戶和服務(wù)器軟件。介紹了客戶服務(wù)器模式的基本概念,TCP/IP協(xié)議提供傳輸數(shù)據(jù)的基本機制;如何在TCP/IP環(huán)境下組織編寫應用程序;計算機網(wǎng)絡(luò)通信程序的構(gòu)建方法;從而進一步了解在網(wǎng)絡(luò)環(huán)境下構(gòu)建分布式程序。 全書共分13章: 第1章著重介紹網(wǎng)絡(luò)編程的目標和準備工作;第2章和第3章著重介紹客戶服務(wù)器的概念以及并發(fā)處理存在的主要問題和應用;第4章和第5章基于Linux操作系統(tǒng)介紹套接字接口的概念和封裝的系統(tǒng)調(diào)用函數(shù);第6章介紹客戶程序設(shè)計方法和需要注意的細節(jié)問題;第7章介紹了各種典型服務(wù)器的設(shè)計方法,需要注意的問題和細節(jié);第8章和第9章介紹單線程編寫并發(fā)程序的方法和應用條件;第10~12章介紹多服務(wù)、多協(xié)議服務(wù)器設(shè)計方法和并發(fā)管理過程;第13章介紹客戶并發(fā)設(shè)計的方法和使用條件。全書提供了大量應用實例,每章后均附有習題。 本書適合作為高等院校計算機、軟件工程、信息管理等專業(yè)高年級本科生、研究生的教材,也可供對TCP/IP比較熟悉并且對網(wǎng)絡(luò)編程有所了解的開發(fā)人員、廣大科技工作者和研究人員參考。

作者簡介

暫缺《TCP/IP網(wǎng)絡(luò)編程原理與技術(shù)》作者簡介

圖書目錄

目錄
第1章網(wǎng)絡(luò)編程準備1
1.1TCP/IP技術(shù)的因特網(wǎng)應用1
1.2用TCP/IP構(gòu)建分布式環(huán)境設(shè)計應用程序2
1.3用TCP/IP構(gòu)建的標準和非標準應用協(xié)議2
1.4使用TCP/IP標準應用協(xié)議的例子2
1.5Telnet連接的例子3
1.6使用Telnet訪問其他服務(wù)4
1.7TCP/IP應用協(xié)議和軟件靈活性5
1.8從提供者的角度看服務(wù)5
1.9本教材內(nèi)容介紹6
1.10小結(jié)6
習題6第2章客戶服務(wù)器模式軟件設(shè)計概念8
2.1客戶服務(wù)器的起源8
2.2客戶服務(wù)器關(guān)鍵問題9
2.3客戶服務(wù)器術(shù)語9
2.3.1客戶和服務(wù)器10
2.3.2服務(wù)器特權(quán)和復雜性10
2.3.3標準和非標準客戶軟件10
2.3.4客戶的參數(shù)化11
2.3.5無連接的和面向連接的服務(wù)器11
2.3.6無狀態(tài)和有狀態(tài)服務(wù)器12
2.3.7無狀態(tài)文件服務(wù)器的例子13
2.3.8有狀態(tài)文件服務(wù)器的例子13
2.3.9客戶標識14
2.3.10無狀態(tài)是一個協(xié)議問題15
2.3.11充當客戶的服務(wù)器16
2.4小結(jié)16
習題17第3章客戶服務(wù)器模式軟件中的并發(fā)處理18
3.1引言18
3.2網(wǎng)絡(luò)中的并發(fā)18
3.3服務(wù)器中的并發(fā)19
3.4并發(fā)術(shù)語20
3.4.1進程概念20
3.4.2局部和全局變量的共享21
3.4.3過程調(diào)用22
3.5一個創(chuàng)建并發(fā)進程的例子22
3.5.1一個順序執(zhí)行的C實例22
3.5.2程序的并發(fā)版本23
3.5.3時間分片24
3.5.4單線程的進程25
3.5.5使各進程分離25
3.6執(zhí)行新的代碼26
3.7上下文切換和協(xié)議軟件設(shè)計27
3.8并發(fā)和異步I/O27
3.9小結(jié)28
習題28第4章網(wǎng)絡(luò)編程協(xié)議的程序接口29
4.1引言29
4.2不精確指明的協(xié)議軟件編程接口29
4.3接口功能30
4.4概念性接口的規(guī)范30
4.5操作系統(tǒng)調(diào)用31
4.6網(wǎng)絡(luò)通信的兩種基本方法31
4.7Linux中提供的基本I/O功能32
4.8將Linux I/O用于TCP/IP33
4.9小結(jié)33
習題33第5章接口實現(xiàn)——套接字API35
5.1引言35
5.2Berkeley套接字35
5.3指明一個協(xié)議接口35
5.4套接字的抽象36
5.4.1套接字描述符和文件描述符36
5.4.2針對套接字的系統(tǒng)數(shù)據(jù)結(jié)構(gòu)37
5.4.3主動套接字或被動套接字37
5.5指明端點地址38
5.6類屬地址結(jié)構(gòu)39
5.7套接字API中的主要系統(tǒng)調(diào)用40
5.7.1socket調(diào)用40
5.7.2connect調(diào)用40
5.7.3send調(diào)用41
5.7.4recv調(diào)用41
5.7.5close調(diào)用41
5.7.6bind調(diào)用41
5.7.7listen調(diào)用42
5.7.8accept調(diào)用42
5.7.9在套接字中使用read和write42
5.7.10套接字調(diào)用小結(jié)42
5.8用于整數(shù)轉(zhuǎn)換的實用例程43
5.9在程序中使用套接字調(diào)用44
5.10套接字調(diào)用的參數(shù)所使用的符號常量44
5.11小結(jié)45
習題46第6章客戶軟件算法及編程實例47
6.1引言47
6.2不是研究細節(jié)而是學習算法47
6.3客戶體系結(jié)構(gòu)和要解決的問題48
6.3.1標識服務(wù)器的位置48
6.3.2分析地址參數(shù)49
6.3.3查找域名50
6.3.4由名字查找某個熟知端口51
6.3.5端口號和網(wǎng)絡(luò)字節(jié)順序51
6.3.6由名字查找協(xié)議51
6.4TCP客戶算法52
6.4.1分配套接字52
6.4.2選擇本地協(xié)議端口號53
6.4.3選擇本地IP地址中的一個基本問題53
6.4.4將TCP套接字連接到某個服務(wù)器54
6.4.5使用TCP與服務(wù)器通信54
6.4.6從TCP連接中讀取響應55
6.4.7關(guān)閉TCP連接55
6.5UDP客戶算法56
6.5.1連接的和非連接的UDP套接字57
6.5.2對UDP使用connect57
6.5.3使用UDP與服務(wù)器通信57
6.5.4關(guān)閉使用UDP的套接字57
6.5.5對UDP的部分關(guān)閉58
6.5.6關(guān)于UDP不可靠性的警告58
6.6客戶編程實例的重要性58
6.7隱藏細節(jié)59
6.8針對客戶程序的過程庫59
6.8.1connectTCP的實現(xiàn)60
6.8.2connectUDP的實現(xiàn)60
6.8.3構(gòu)成連接的過程61
6.9過程庫使用63
6.10DAYTIME服務(wù)63
6.10.1針對DAYTIME的TCP客戶實現(xiàn)64
6.10.2從TCP連接中進行讀65
6.11TIME服務(wù)66
6.12訪問TIME服務(wù)66
6.13精確時間和網(wǎng)絡(luò)時延67
6.14針對TIME服務(wù)的UDP客戶67
6.15ECHO服務(wù)69
6.16針對ECHO服務(wù)的TCP客戶69
6.17針對ECHO服務(wù)的UDP客戶71
6.18小結(jié)72
習題74第7章服務(wù)器軟件算法及編程實例76
7.1引言76
7.2概念性的服務(wù)器算法76
7.3并發(fā)服務(wù)器和循環(huán)服務(wù)器76
7.4面向連接的和無連接的訪問77
7.5服務(wù)器需要考慮的幾個問題77
7.5.1傳輸層協(xié)議的語義77
7.5.2選擇傳輸協(xié)議78
7.5.3面向連接的服務(wù)器78
7.5.4無連接的服務(wù)器79
7.5.5服務(wù)器的故障、可靠性和無狀態(tài)80
7.5.6優(yōu)化無狀態(tài)服務(wù)器80
7.5.7請求處理時間82
7.6服務(wù)器的四種基本類型82
7.7循環(huán)服務(wù)器的算法83
7.8循環(huán)的、面向連接的服務(wù)器的算法83
7.8.1用INADDR_ANY綁定熟知端口83
7.8.2將套接字置于被動模式84
7.8.3接受連接并使用這些連接84
7.9循環(huán)的、無連接的服務(wù)器的算法84
7.10并發(fā)服務(wù)器的算法85
7.11并發(fā)的、無連接的服務(wù)器的算法86
7.12并發(fā)的、面向連接的服務(wù)器的算法86
7.12.1服務(wù)器并發(fā)性的實現(xiàn)87
7.12.2把單獨的程序作為從進程來使用87
7.13使用單線程獲得表面上的并發(fā)性88
7.14各服務(wù)器類型所適用的場合89
7.15服務(wù)器類型小結(jié)89
7.16重要問題——服務(wù)器死鎖90
7.17其他的實現(xiàn)方法90
7.18循環(huán)的、無連接的服務(wù)器設(shè)計91
7.18.1創(chuàng)建被動套接字91
7.18.2進程結(jié)構(gòu)94
7.18.3TIME服務(wù)器舉例94
7.18.4小結(jié)96
7.19循環(huán)的、面向連接的服務(wù)器設(shè)計96
7.19.1分配被動的TCP套接字96
7.19.2用于DAYTIME服務(wù)的服務(wù)器97
7.19.3進程結(jié)構(gòu)97
7.19.4DAYTIME服務(wù)器舉例98
7.19.5關(guān)閉連接100
7.19.6連接終止和服務(wù)器的脆弱性100
7.19.7小結(jié)101
7.20并發(fā)的、面向連接的服務(wù)器設(shè)計101
7.20.1并發(fā)ECHO102
7.20.2循環(huán)與并發(fā)實現(xiàn)的比較102
7.20.3進程結(jié)構(gòu)102
7.20.4并發(fā)ECHO服務(wù)器舉例103
7.20.5清除游離(errant)進程106
7.20.6小結(jié)106
7.21小結(jié)107
習題107第8章使用線程模型實現(xiàn)并發(fā)110
8.1引言110
8.2Linux線程概述110
8.3線程和進程的關(guān)系111
8.3.1描述符、延遲和退出111
8.3.2線程退出112
8.4線程協(xié)調(diào)和同步112
8.4.1互斥112
8.4.2信號量113
8.4.3條件變量113
8.5使用線程的服務(wù)器實例114
8.6監(jiān)控117
8.7小結(jié)118
習題118第9章單線程并發(fā)服務(wù)器設(shè)計119
9.1引言119
9.2服務(wù)器中的數(shù)據(jù)驅(qū)動處理119
9.3用單線程進行數(shù)據(jù)驅(qū)動處理120
9.4單線程服務(wù)器的線程結(jié)構(gòu)120
9.5單線程ECHO服務(wù)器舉例121
9.6小結(jié)123
習題124第10章多協(xié)議服務(wù)器設(shè)計125
10.1引言125
10.2減少服務(wù)器數(shù)量的動機125
10.3多協(xié)議服務(wù)器的設(shè)計125
10.4進程結(jié)構(gòu)126
10.5多協(xié)議DAYTIME服務(wù)器的例子126
10.6共享代碼的概念129
10.7并發(fā)多協(xié)議服務(wù)器130
10.8小結(jié)130
習題130第11章多服務(wù)服務(wù)器設(shè)計132
11.1引言132
11.2合并服務(wù)器132
11.3循環(huán)的、無連接的、多服務(wù)服務(wù)器設(shè)計132
11.4循環(huán)的、面向連接的、多服務(wù)服務(wù)器設(shè)計133
11.5并發(fā)的、面向連接的、多服務(wù)服務(wù)器設(shè)計134
11.6并發(fā)的、單線程的、多服務(wù)服務(wù)器的實現(xiàn)135
11.7從多服務(wù)服務(wù)器調(diào)用單獨的程序135
11.8多服務(wù)、多協(xié)議服務(wù)器設(shè)計136
11.9多服務(wù)服務(wù)器的例子137
11.10靜態(tài)的和動態(tài)的服務(wù)器配置143
11.11UNIX超級服務(wù)器——inetd144
11.12inetd服務(wù)器的例子146
11.13小結(jié)147
習題148第12章服務(wù)器并發(fā)性管理149
12.1引言149
12.2在循環(huán)設(shè)計和并發(fā)設(shè)計間選擇149
12.3并發(fā)等級150
12.4需求驅(qū)動的并發(fā)150
12.5并發(fā)的代價150
12.6額外開銷和時延151
12.7小時延問題151
12.8從線程/進程的預分配152
12.8.1Linux中的預分配153
12.8.2面向連接的服務(wù)器中的預分配153
12.8.3互斥、文件鎖定和accept并發(fā)調(diào)用154
12.8.4無連接的服務(wù)器中的預分配155
12.8.5預分配、突發(fā)通信量和NFS155
12.8.6多處理器上的預分配156
12.9延遲的從線程/進程分配156
12.10兩種技術(shù)統(tǒng)一的基礎(chǔ)157
12.11技術(shù)的結(jié)合157
12.12小結(jié)158
習題158第13章客戶軟件并發(fā)設(shè)計160
13.1引言160
13.2并發(fā)的優(yōu)點160
13.3運用控制的動機160
13.4與多個服務(wù)器的并發(fā)聯(lián)系161
13.5實現(xiàn)并發(fā)客戶162
13.6單線程實現(xiàn)162
13.7使用ECHO的并發(fā)客戶的例子163
13.8并發(fā)客戶的執(zhí)行167
13.9例子代碼中的并發(fā)性169
13.10小結(jié)169
習題169附錄A系統(tǒng)調(diào)用與套接字使用的庫例程170參考文獻192

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號