2012-05-12 13 views
2

最近、私の仕事の一つは、私のチームによって開発されたLinuxとは全く異なるOSでC++を使ってネットワークスタックを書くことです。しかし、私は、Linuxネットワークスタックの深い理解がどのように設計と実装に役立つかと思います。linuxネットワークスタックのソースコードを学ぶ方法

アドバイスや役立つ資料がありますか?

+1

私は[Tanenbaum](http://www.amazon.com/Computer-Networks-Edition-Andrew-Tanenbaum/dp/0132126958)のコピーに間違いなく投資します – paulsm4

答えて

5

Unix Network Programming。特にLwIP - これらは小さく、よく文書化されており、組み込みデバイスに移植されています。 BSD/Linuxネットワークスタックのソースコードから学び、学ぶことはたくさんの作業を必要とします。

+0

スティーブンスはソケットを学習する人にとって私のトップの選択肢になります。しかし、スタックを実装するには、[Tanenbaum](http://www.amazon.com/Computer-Networks-Edition-Andrew-Tanenbaum/dp/0132126958)または[Comer](http:// www。 amazon.com/Internetworking-TCP-Vol-5th-Edition/dp/0131876716)。 IMHO .. – paulsm4

+0

これはuser-sapceでネットワークアプリケーションを書く方法の本です。私が尋ねたのは、カーネル空間にカーネルのネットワーク部分を書く方法に関するアドバイスです。すべて同じようにありがとう。 – mjt0704

+0

ユーザー空間を十分に理解していれば、ターゲットアーキテクチャのリファレンス実装を調査します。多数の実装があり、それらはすべて異なります – nsfyn55

2

LwIPまたはUIP W.リチャードスティーヴンスによって、両方もともとアダム・ダンケルズによって