從 Linux 直入 TCP/IP 核心世界─使用 C (深入淺出 Linux TCP/IP 協定核心)

羅鈺

  • 出版商: 佳魁資訊
  • 出版日期: 2012-12-27
  • 定價: $520
  • 售價: 8.5$442
  • 貴賓價: 7.9$411
  • 語言: 繁體中文
  • ISBN: 9865908506
  • ISBN-13: 9789865908508
  • 相關分類: C 程式語言LinuxTCP/IP

無法訂購

買這商品的人也買了...

商品描述

<內容簡介>

這是一本介紹協定核心實現原始程式碼的書,不是介紹協定的書。

本書作者做過一些網路通信產品開發,所以對網路內部實現很感興趣,於是在學習和工作時間之餘記錄下分析和調用Linux 的網路通訊協定核心的心得體會。

很多人對網路非常感興趣,但卻不理解內部是如何運作的,或知之不多,最終的結果就是行之不遠。本書嘗試用淺顯的語言和合理的安排帶領讀者到Linux 核心網路模組的程式碼叢林中一遊,既讓你有所知,也讓您有所思。

Linux
是經過成千上萬用戶使用過並且還將不斷發展的,目前Linux 在伺服器市場上已經證明其設計的精巧和健壯,特別是當核心也從非搶佔式發展成為搶佔式後,嵌入設備市場上也將要掀起一股風浪。於是Linux 核心分析的資料層出不窮,但有的太老(核心的程式碼還使用2.2 的),有的對網路部分的分析不甚詳細,因此作者萌發了分析整個Linux 網路通訊協定核心的想法。

希望能在研究一些經典程式碼時發現與時俱進的部分,抛磚引玉,吸引更多的人參與到研究網路通訊協定核心的實現技巧以及移植工作上,而不用對照枯燥的RFC 文件和程式碼。

<章節目錄>

前言

1 章 作業系統、網路、協定核心、程式碼
1.1 L nux
作業系統介紹
1.1.1 L nux
作業系統架構簡介
1.1.2
網路通訊協定發展介紹
1.2
本書的組織和安排
1.2.1
基本的資料結構和電腦術語
1.2.2
圖片風格展示
1.2.3
本書的組織

2 章 核心系統初始化
2.1
系統初始化流程簡介
2.2
核心檔案解讀
2.2.1 ELF
檔案格式
2.2.2 L nk Scr pts
知識
2.2.3 L nux
核心鏡像解析
2.3
中斷及任務呼叫管理
2.3.1
中斷及軟中斷模型
2.3.2
各種語系環境下的切換
2.3.3
核心下的同步與互斥
2.3.4
各種非同步手段
2.4
虛擬檔案系統
2.5
網路通訊協定核心各部分初始化
2.5.1
網路基礎系統初始化
2.5.2
網路記憶體管理
2.5.3
網路檔案系統初始化
2.5.4
網路通訊協定初始化
2.5.5
初步瞭解路由系統
2.6 Linux
設備管理
2.6.1
底層PCI 模組的初始化
2.6.2
網路設備介面初始化函式

3 章 配置網路系統
3.1
配置過程分析
3.1.1
配置是如何下達到核心的
3.1.2 socket
系統呼叫
3.1.3 octl
程式碼的實現
3.1.4 loopback
介面的配置過程
3.1.5 IP
別名的實現
3.2
回顧FIB 系統初始化
3.3
深入FIB 系統
3.4 FIB
系統發生了什麼樣的變化
3.5
直接連結路由表
3.6
介面狀態變化的處理過程

4 章 網路層實現的初步研究
4.1
p ng 127.0.0.1 開始旅程
4.2
再次相遇Socket 系統呼叫
4.3 IP
資料封包內容格式
4.4 send
系統呼叫
4.5
在路由系統中遊歷
4.5.1
尋找出口
4.5.2
當目的地址是遠端主機時
4.5.3
建立對應路由cache 表項
4.5.4
建立對應芳鄰表項
4.6
回到發送的路徑
4.6.1 IP
層發送過程
4.6.2
揭密hh_cache
4.7 ARP
的作用

4.7.1 ARP
的機制
4.7.2 ARP
封包格式
4.7.3 L nux ARP
協定的實現
4.8
到達設備驅動層
4.8.1 Loopback
設備的發送過程訊框數據鏈路層格式
4.8.2 Loopback
設備的發送過程
4.9
接收過程:從中斷到路由系統
4.10 ICMP
4.10.1 ICMP
封包格式
4.10.2 p ng
本機地址及回環地址
4.10.3 p ng
外部位址
4.11
從核心到用戶

5 章 傳輸層實現的研究
5.1
進一步到UDP
5.1.1 UDP
用戶程式碼

5.1.2 UDP
資料封包格式
5.1.3
伺服器端b nd 的實現
5.1.4
接收程式碼
5.1.5
釋放UDP socket
5.2
更高階的
TCP
5.2.1 TCP
用戶程式碼

5.2.2 TCP
資料封包格式
5.2.3 TCP
協定及socket 的初始化
5.2.4
伺服器端b nd l sten 的實現
5.2.5
伺服器端accept 的實現
5.2.6
用戶端connect 的實現發起三次握手
5.2.7 TCP
封包的接收
5.2.8
三次握手的實現
5.2.9
核心收到封包轉到用戶狀態
5.2.10
釋放TCP socket
5.3 TCP
擁塞控制

5.3.1 TCP
擁塞控制機制介紹
5.3.2 L nux
核心擁塞控制功能的實現

6 章 Select 系統呼叫的實現機制
6.1
如何使用select
6.2 Select
的核心實現


第7章 資料連結層協定實現
7.1
基本的2 層知識
7.2 L nux
橋實現的基本框架
7.3 VLAN
7.3.1 VLAN
概念
7.3.2 L nux
VLAN—存在巨大的缺陷
7.4 LACP
協定
7.4.1
聚合連接埠簡介
7.4.2 LACP
L nux 中的實現
7.5 2
層功能總結

後 記