Linux網(wǎng)絡(luò)內(nèi)核分析與開發(fā)

出版時(shí)間:2010-8  出版社:電子工業(yè)出版社  作者:肖宇峰,李昕,時(shí)巖 編著  頁數(shù):354  
Tag標(biāo)簽:無  

前言

  隨著Internet在社會各領(lǐng)域的延伸,人類的生產(chǎn)、生活方式發(fā)生了翻天覆地的變化。Internet提供了強(qiáng)大的信息交互平臺,帶來了多樣化的網(wǎng)絡(luò)服務(wù)和消費(fèi)品,極大地提高了生產(chǎn)效率,使人類的生活更加方便、快捷?! ∫J(rèn)識并理解Internet的運(yùn)行方式,讀者應(yīng)首先學(xué)習(xí)TCP/IP協(xié)議體系。一方面,只有使用和分析實(shí)際網(wǎng)絡(luò)原型,才能深入掌握這些知識,并用于生產(chǎn)實(shí)踐。另一方面,現(xiàn)有的TCP/IP體系已經(jīng)比較成熟,若要增加新功能或者研究開發(fā)新一代網(wǎng)絡(luò),最有效的途徑就是從一個(gè)實(shí)際原型入手改進(jìn)或者擴(kuò)展現(xiàn)有的網(wǎng)絡(luò)架構(gòu)。作為開源平臺,Linux網(wǎng)絡(luò)內(nèi)核能充分滿足這兩方面需要,為不同層次的學(xué)生、廣大王程和科研人員提供強(qiáng)大的學(xué)習(xí)和開發(fā)平臺?! ”緯丫W(wǎng)絡(luò)內(nèi)核從Linux內(nèi)核架構(gòu)中取出來獨(dú)立分析,不僅從源碼級角度闡述了TCP/IP的工作原理,而且從開發(fā)角度引入實(shí)例,向讀者展示了網(wǎng)絡(luò)內(nèi)核的工作流程和開發(fā)方法。

內(nèi)容概要

本書全面描述了Linux網(wǎng)絡(luò)內(nèi)核的結(jié)構(gòu)和源碼,力圖使讀者了解和掌握網(wǎng)絡(luò)內(nèi)核的工作原理和開發(fā)方法。全書共分為9章,主要介紹了Linux內(nèi)核和相關(guān)開發(fā)工具、Linux網(wǎng)絡(luò)內(nèi)核結(jié)構(gòu)、套接字及其設(shè)計(jì)、傳輸層協(xié)議實(shí)現(xiàn)與設(shè)計(jì)、網(wǎng)絡(luò)層實(shí)現(xiàn)、數(shù)據(jù)鏈路層實(shí)現(xiàn)、網(wǎng)絡(luò)設(shè)備驅(qū)動程序及其設(shè)計(jì)、路由模塊與鄰居子系統(tǒng)、MPLS網(wǎng)絡(luò)及其協(xié)議實(shí)現(xiàn)等內(nèi)容。    本書適用于從事計(jì)算機(jī)網(wǎng)絡(luò)、協(xié)議研發(fā)、嵌入式產(chǎn)品開發(fā)的技術(shù)人員,也適用于計(jì)算機(jī)、通信專業(yè)的本科生和研究生。

書籍目錄

第1章  Linux系統(tǒng)內(nèi)核  1.1  Linux系統(tǒng)內(nèi)核組成結(jié)構(gòu)    1.1.1  內(nèi)核組成結(jié)構(gòu)    1.1.2  Linux內(nèi)核源碼瀏覽工具  1.2  Linux系統(tǒng)內(nèi)核編譯    1.2.1  Linux內(nèi)核編譯步驟    1.2.2  Linux內(nèi)核編譯選項(xiàng)  1.3  Linux系統(tǒng)內(nèi)核調(diào)試工具    1.3.1  KGDB調(diào)試工具    1.3.2  UML調(diào)試工具    1.3.3  用虛擬機(jī)軟件搭建內(nèi)核調(diào)試平臺  1.4  GDB使用    1.4.1  基本命令    1.4.2  斷點(diǎn)    1.4.3  查看運(yùn)行時(shí)數(shù)據(jù)    1.4.4  改變程序的執(zhí)行  1.5  調(diào)試范例    1.5.1  調(diào)試示例程序    1.5.2  調(diào)試前的工作    1.5.3  調(diào)試運(yùn)行第2章  Linux網(wǎng)絡(luò)內(nèi)核  2.1  TCP/IP協(xié)議體系    2.1.1  TCP/IP協(xié)議體系架構(gòu)    2.1.2  網(wǎng)絡(luò)數(shù)據(jù)包的封裝與解封  2.2  Linux網(wǎng)絡(luò)內(nèi)核組成    2.2.1  Linux網(wǎng)絡(luò)內(nèi)核的組成模塊    2.2.2  內(nèi)核中的數(shù)據(jù)包處理流程  2.3  網(wǎng)絡(luò)內(nèi)核的重要數(shù)據(jù)結(jié)構(gòu)    2.3.1  套接字緩沖區(qū)    2.3.2  網(wǎng)絡(luò)設(shè)備第3章  套接字  3.1  套接字與套接字接口    3.1.1  套接字    3.1.2  套接字接口的使用    3.1.3  套接字編程實(shí)例  3.2  套接字內(nèi)核實(shí)現(xiàn)    3.2.1  套接字創(chuàng)建流程    3.2.2  套接字?jǐn)?shù)據(jù)結(jié)構(gòu)    3.2.3  套接字功能實(shí)現(xiàn)  3.3  新協(xié)議族與套接字    3.3.1  數(shù)據(jù)定義    3.3.2  函數(shù)設(shè)計(jì)第4章  傳輸層  4.1  UDP協(xié)議    4.1.1  UDP簡介    4.1.2  UDP協(xié)議模塊處理流程    4.1.3  UDP頭部實(shí)現(xiàn)    4.1.4  UDP包的發(fā)送    4.1.5  UDP包的接收    4.1.6  UDP連接的建立  4.2  TCP協(xié)議    4.2.1  TCP協(xié)議簡介    4.2.2  TCP協(xié)議模塊處理流程    4.2.3  TCP頭部實(shí)現(xiàn)    4.2.4  TCP連接建立    4.2.5  TCP包的發(fā)送    4.2.6  TCP包的接收  4.3  原始數(shù)據(jù)包處理模塊    4.3.1  原始套接字簡介    4.3.2  原始數(shù)據(jù)包處理流程    4.3.3  原始數(shù)據(jù)包的發(fā)送    4.3.4  原始數(shù)據(jù)包的接收  4.4  新傳輸層協(xié)議與套接字設(shè)計(jì)    4.4.1  數(shù)據(jù)結(jié)構(gòu)    4.4.2  函數(shù)設(shè)計(jì)第5章  網(wǎng)絡(luò)層  5.1  IPv4介紹  5.2  IPv4協(xié)議實(shí)現(xiàn)    5.2.1  IP包頭實(shí)現(xiàn)    5.2.2  IP層處理流程    5.2.3  IP包的本地發(fā)送    5.2.4  IP包的本地接收    5.2.5  IP包的轉(zhuǎn)發(fā)  5.3  ICMP協(xié)議實(shí)現(xiàn)    5.3.1  ICMP簡介    5.3.2  ICMP流程  5.4  IPv6協(xié)議實(shí)現(xiàn)    5.4.1  IPv6協(xié)議簡介    5.4.2  給內(nèi)核配置IPv6    5.4.3  IPv6協(xié)議模塊處理流程    5.4.4  IPv6包的發(fā)送    5.4.5  IPv6包的接收    5.4.6  IPv6包的轉(zhuǎn)發(fā)    5.4.7  相關(guān)協(xié)議實(shí)現(xiàn)第6章  數(shù)據(jù)鏈路層  6.1  數(shù)據(jù)鏈路層協(xié)議  6.2  幀的發(fā)送和接收    6.2.1  設(shè)備初始化函數(shù)    6.2.2  幀的發(fā)送實(shí)現(xiàn)    6.2.3  幀的接收實(shí)現(xiàn)    6.2.4  驅(qū)動上層的數(shù)據(jù)包類型與遞交方法  6.3  通用點(diǎn)對點(diǎn)(PPP)協(xié)議實(shí)現(xiàn)    6.3.1  點(diǎn)對點(diǎn)協(xié)議    6.3.2  PPP協(xié)議管理    6.3.3  發(fā)送幀    6.3.4  接收幀  6.4  異步PPP協(xié)議實(shí)現(xiàn)    6.4.1  ppp_async_init函數(shù)    6.4.2  ppp_async_send函數(shù)    6.4.3  ppp_asynctty_receive函數(shù)  6.5  以太網(wǎng)上的PPP協(xié)議實(shí)現(xiàn)    6.5.1  PPPoE協(xié)議規(guī)范    6.5.2  數(shù)據(jù)結(jié)構(gòu)    6.5.3  PPPoE驅(qū)動程序第7章  網(wǎng)絡(luò)設(shè)備驅(qū)動程序  7.1  網(wǎng)絡(luò)設(shè)備驅(qū)動程序    7.1.1  數(shù)據(jù)結(jié)構(gòu)    7.1.2  網(wǎng)絡(luò)設(shè)備的初始化    7.1.3  網(wǎng)絡(luò)設(shè)備的打開和關(guān)閉    7.1.4  發(fā)送數(shù)據(jù)包    7.1.5  接收數(shù)據(jù)包    7.1.6  網(wǎng)絡(luò)設(shè)備的統(tǒng)計(jì)信息  7.2  CS89x0網(wǎng)卡驅(qū)動程序設(shè)計(jì)    7.2.1  數(shù)據(jù)定義    7.2.2  I/O端口訪問函數(shù)    7.2.3  CS89x0網(wǎng)卡的初始化    7.2.4  CS89x0網(wǎng)卡的打開和關(guān)閉    7.2.5  CS89x0網(wǎng)卡發(fā)送數(shù)據(jù)包    7.2.6  CS89x0網(wǎng)卡接收數(shù)據(jù)包第8章  路由模塊與鄰居子系統(tǒng)  8.1  路由原理  8.2  路由表數(shù)據(jù)結(jié)構(gòu)    8.2.1  路由表類型    8.2.2  路由表緩存類型  8.3  路由信息管理    8.3.1  路由規(guī)則管理    8.3.2  路由表管理  8.4  路由查詢    8.4.1  發(fā)送時(shí)路由查詢    8.4.2  接收時(shí)路由查詢  8.5  鄰居子系統(tǒng)    8.5.1  鄰居子系統(tǒng)類型    8.5.2  鄰居子系統(tǒng)處理模塊第9章  MPLS網(wǎng)絡(luò)與協(xié)議實(shí)現(xiàn)  9.1  MPLS協(xié)議原理    9.1.1  原理介紹    9.1.2  Linux內(nèi)核的MPLS配置  9.2  MPLS協(xié)議模塊    9.2.1  流程    9.2.2  數(shù)據(jù)結(jié)構(gòu)    9.2.3  初始化    9.2.4  MPLS標(biāo)簽轉(zhuǎn)發(fā)表管理    9.2.5  MPLS層的數(shù)據(jù)發(fā)送    9.2.6  MPLS層的數(shù)據(jù)接收與轉(zhuǎn)發(fā)參考文獻(xiàn)

章節(jié)摘錄

  應(yīng)用層,為網(wǎng)絡(luò)用戶提供各種服務(wù),例如電子郵件、文件傳輸?shù)?。  表示層,為不同主機(jī)間的通信提供統(tǒng)一的數(shù)據(jù)表示形式。  會話層,負(fù)責(zé)信息傳輸?shù)慕M織和協(xié)調(diào),管理進(jìn)程會話過程?! 鬏攲?,管理網(wǎng)絡(luò)通信兩端的數(shù)據(jù)傳輸,提供可靠或不可靠的傳輸服務(wù)?! 【W(wǎng)絡(luò)層,負(fù)責(zé)數(shù)據(jù)傳輸?shù)穆酚蛇x擇和網(wǎng)際互連。  數(shù)據(jù)鏈路層,負(fù)責(zé)物理相鄰(通過網(wǎng)絡(luò)介質(zhì)相連)的主機(jī)間的數(shù)據(jù)傳輸,主要作用包括物理地址尋址、數(shù)據(jù)幀封裝、差錯(cuò)控制等。該層可分為邏輯鏈路控制子層(LLC)和介質(zhì)訪問控制子層(MAC)?! ∥锢韺?,負(fù)責(zé)把主機(jī)中的數(shù)據(jù)轉(zhuǎn)換成電信號,再通過網(wǎng)絡(luò)介質(zhì)(雙絞線、光纖、無線信道等)來傳輸。該層描述了通信設(shè)備的機(jī)械、電氣、功能等特性。  在某些文獻(xiàn)中,上述的傳輸層、網(wǎng)絡(luò)層、數(shù)據(jù)鏈路層和物理層又被依次稱為第四層、第三層、第二層和第一層,本書也沿用該說法。相比于OSI體系,TCP/IP協(xié)議體系的架構(gòu)更加簡單實(shí)用。如圖2.1(b)所示,該體系包括下面四個(gè)層次:  應(yīng)用層,對應(yīng)OSI傳輸層之上的層次,包括提供文件傳輸服務(wù)的FTP協(xié)議,提供萬維網(wǎng)服務(wù)的H/TP協(xié)議,提供電子郵件服務(wù)的SMTP協(xié)議等。由于該層不屬于系統(tǒng)內(nèi)核,本書未描述這部分內(nèi)容。

圖書封面

圖書標(biāo)簽Tags

評論、評分、閱讀與下載


    Linux網(wǎng)絡(luò)內(nèi)核分析與開發(fā) PDF格式下載


用戶評論 (總計(jì)8條)

 
 

  •   首先這本書層次感強(qiáng),很清晰,從用戶層->傳輸層->ip層->鏈路層,對于每一層作者都把框架(其實(shí)就是一些核心函數(shù))提出來了,這個(gè)對整體把握很有幫助,另外文字內(nèi)容也流暢易懂。但是也有缺點(diǎn),就是一些細(xì)節(jié)的東西沒有列出來(其實(shí)也歸咎于linux內(nèi)核網(wǎng)絡(luò)過于龐大,要是細(xì)講下來,估計(jì)兩本書也講不完,而且容易模糊內(nèi)核網(wǎng)絡(luò)的重點(diǎn),所以這也是我猜想作者沒有談這些細(xì)節(jié)的原因),但總的來說還是很不錯(cuò)的一本書,對我的幫助很大,所以值得推薦這本書!
  •   對于搞linux網(wǎng)絡(luò)編程很有幫助,深入淺出
  •   對網(wǎng)絡(luò)流程和框架描述的比較清楚,對協(xié)議處理細(xì)節(jié)不夠深入。但仍然值得一看
  •   大部分內(nèi)容還沒看懂
  •   剛買還在看,感覺不錯(cuò)!
  •   不錯(cuò)的一本書,感覺蠻好。。
  •   還沒看,翻了一下,感覺典型的國內(nèi)寫的計(jì)算機(jī)書
  •   字體較大,沒有技術(shù)的緊湊感,有湊頁數(shù)的嫌疑
 

250萬本中文圖書簡介、評論、評分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號-7