1. 程式人生 > >協議棧之一:《linux核心網路棧原始碼情景分析》.(曹桂平)

協議棧之一:《linux核心網路棧原始碼情景分析》.(曹桂平)

在工作中或多或少需要和協議棧打交道,因為公司的策略,公司自有的協議棧基本都是基於開源協議棧的理解重寫的協議棧,在可維護性和效能方面均比開源軟體強勢很多,可惜在公司時更多是呼叫API,並未從頭到尾研究過一個完整的協議棧。從事網路工作沒有研究過完整的協議棧,不得不說是個嚴重的缺失。

本想基於2.6核心進行協議棧分析,分析了一段時間,感覺有些吃力,估計得分析幾遍才能理解透徹,而且並不能真正掌握。

        發現了《linux核心網路棧原始碼情景分析》,此書是基於1.2.3版本Linux進行的分析,20多年前的版本,不過對於協議棧的一些理論分析為不錯的參考。整個協議棧收發包流程以及協議設計並沒有太大的改變,更多的是基於效能考慮優化了資料結構以及相應的演算法,當然此版本不支援多核,所以整個過程沒有鎖,或者使用變數標誌作為鎖。

        下一步準備分析一下最新版本Linux的協議棧。