Linux網絡編程

Linux網絡編程

作者: 李興華 邢碧麟
出版社: 人民郵電
出版在: 2020-04-01
ISBN-13: 9787115527318
ISBN-10: 7115527318
裝訂格式: 平裝
總頁數: 172 頁




內容描述


本書較為全面地介紹了基於Linux網絡編程的基礎知識和編程技術,
章節安排貼近企業項目需求,基於Linux C語言函數和Linux操作系統支持的庫函數等進行講解,
由易到難,逐層遞進。
全書共10章,分為網絡基礎、網絡編程、編程實踐三個部分,內容包括網絡概述
、網絡基礎概念、套接字、TCP編程、UDP編程、網絡通信、防火牆、原始套接字,
並在*後提供了兩個編程實踐項目,通過項目練習幫助讀者鞏固所學的編程技術。


目錄大綱


目錄:
第1部分網絡基礎
第1章網絡概述2
1.1計算機網絡的概念、發展及類別2
1.1.1計算機網絡的概念2
1.1.2計算機網絡的發展2
1.1.3計算機網絡的類別3
1.2計算機網絡的性能4
1.3計算機網絡體系結構5
1.4計算機網絡協議8
1.5本章小結9
1.6本章習題9
第2章網絡基礎概念10
2.1 MAC地址10
2.2 IP地址11
2.3子網掩碼12
2.4端口13
2.5本章小結14
2.6本章習題14
第2部分網絡編程
第3章套接字16
3.1套接字地址結構16
3.2字節序18
3.3網絡通信地址轉換函數20
3.4解析器函數21
3.5本章小結27
3.6本章習題27
第4章TCP編程28
4.1 TCP概述28
4.1.1 TCP的三個特性28
4.1.2 TCP報文首部解析29
4.2 TCP連接的建立及斷開31
4.2.1 TCP建立連接——三次握手31
4.2.2 TCP斷開連接——四次揮手31
4.3 TCP網絡編程32
4.3.1基本條件32
4.3.2基本流程32
4.3.3基本函數33
4.4 TCP服務器並發41
4.4.1進程41
4.4.2線程44
4.4.3 select 48
4.4.4 epoll 53
4.5 HTTP通信58
4.5.1 Web服務器58
4.5.2 HTTP 58
4.5.3 HTTP通信流程59
4.5.4 HTTP報文解析59
4.6網絡抓包工具61
4.6.1報文抓取方法61
4.6.2色彩標識63
4.6.3過濾報文64
4.6. 4使用Wireshark工具分析報文66
4.7本章小結70
4.8本章練習70
第5章UDP編程71
5.1 UDP概述71
5.1.1 UDP的主要特點71
5.1.2 UDP報文首部解析72
5.1.3 UDP端口的複用及分用72
5.2 UDP網絡編程73
5.2.1 UDP通信流程建立73
5.2.2編程函數74
5.3 TFTP 79
5.3.1 TFTP概述79
5.3.2 TFTP報文分析80
5.3.3 TFTP通信流程82
5.4廣播84
5.4.1廣播協議84
5.4.2廣播地址84
5.4.3廣播編程85
5.5多播87
5.5.1多播地址87
5.5.2多播編程87
5.6本章小結90
5.7本章習題90
第6章網絡通信91
6.1網絡搭建工具91
6.2交換機通信95
6.2.1交換機概述95
6.2.2交換機種類96
6.2.3交換機組網97
6.3路由器通信98
6.3.1路由器概述98
6.3.2路由器組網98
6.4本章小結99
6.5本章練習99
第7章防火牆100
7.1防火牆概述100
7.2防火牆網絡佈線結構101
7.3防火牆的局限性103
7.4 iptables工具103
7.5本章小結109
7.6本章習題109

第8章原始套接字110
8.1原始套接字概述110
8.2創建原始套接字111
8.2.1鏈路層原始套接字112
8.2.2網際層原始套接字116
8.3網卡工作模式122
8.4原始數據包分析123
8.5本章小結124
8.6本章習題124
第3部分編程實踐
第9章飛鴿傳書項目126
9.1飛鴿傳書概述126
9.2 IPMsg簡介126
9.3項目介紹128
9.4項目實施131
第10章路由器項目161
10.1路由器項目概述161
10.2路由器功能簡介161
10.3項目分析162
10.4項目實施164
參考文獻172


作者介紹


李興華
慧科集團AI機器人學院院長,阿里雲MVP,北京航空航天大學特聘講師,*深嵌入式工程師。
精通Unix/Linux操作系統和linux下多種語言編程,熟悉Linux的各種應用編程接口和機制,
深入了解Linux應用開發和系統集成,ARM體系結構與處理器應用開發,linux內核與驅動開發。
參與研發過的產品涉及工業控制,智能農業、機器人、智能家電、以及消費類電子產品等多個領域,
目前專注於AI機器人專業人才的培養和研究。

邢碧麟
慧科集團*深講師,具有5年Linux網絡開發經驗,曾工作於新華三集團和瑞斯康達科技發展有限公司,
從事路由器開發,精通Linux網絡編程。
作為項目代表對接移動、聯通電信三家運營商的路由器項目開發,
開發產品包括普通轉發功能路由器和智能路由器。具有豐富的Linux操作系統開發經驗。
現北京航空航天大學在讀研究生,專注智能製造方向的研究。




相關書籍

Designing Software Synthesizer Plugins in C++: With Audio DSP

作者 Pirkle Will C.

2020-04-01

LTE/LTE-Advanced-UMTS 長期演進理論與實踐 (LTE-The UMTS Long Term Evolution: From Theory to Practice, 2/e)

作者 斯特芬妮婭•塞西亞 (Stefania Sesia) 伊薩姆•陶菲克 (Issam Toufik) 馬修•貝克 (Matthew Baker)

2020-04-01

跟阿銘學Linux(第3版)

作者 李世明

2020-04-01