linux-tcp ip協(xié)議棧源碼閱讀筆記

linux-tcp ip協(xié)議棧源碼閱讀筆記

ID:37428785

大?。?76.50 KB

頁(yè)數(shù):17頁(yè)

時(shí)間:2019-05-23

linux-tcp ip協(xié)議棧源碼閱讀筆記_第1頁(yè)
linux-tcp ip協(xié)議棧源碼閱讀筆記_第2頁(yè)
linux-tcp ip協(xié)議棧源碼閱讀筆記_第3頁(yè)
linux-tcp ip協(xié)議棧源碼閱讀筆記_第4頁(yè)
linux-tcp ip協(xié)議棧源碼閱讀筆記_第5頁(yè)
資源描述:

《linux-tcp ip協(xié)議棧源碼閱讀筆記》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫(kù)。

1、linux-TcpIP協(xié)議棧源碼閱讀筆記一.linux內(nèi)核網(wǎng)絡(luò)棧代碼的準(zhǔn)備知識(shí)1.linux內(nèi)核ipv4網(wǎng)絡(luò)部分分層結(jié)構(gòu):BSDsocket層:這一部分處理BSDsocket相關(guān)操作,每個(gè)socket在內(nèi)核中以structsocket結(jié)構(gòu)體現(xiàn)。這一部分的文件主要有:/net/socket.c/net/protocols.cetcINETsocket層:BSDsocket是個(gè)可以用于各種網(wǎng)絡(luò)協(xié)議的接口,而當(dāng)用于tcp/ip,即建立了AF_INET形式的socket時(shí),還需要保留些額外的參數(shù),于是就有了structs

2、ock結(jié)構(gòu)。文件主要有:/net/ipv4/protocol.c/net/ipv4/af_inet.c/net/core/sock.cetcTCP/UDP層:處理傳輸層的操作,傳輸層用structinet_protocol和structproto兩個(gè)結(jié)構(gòu)表示。文件主要有:/net/ipv4/udp.c/net/ipv4/datagram.c/net/ipv4/tcp.c/net/ipv4/tcp_input.c/net/ipv4//tcp_output.c/net/ipv4/tcp_minisocks.c/net

3、/ipv4/tcp_output.c?/net/ipv4/tcp_timer.cetc???????IP層:處理網(wǎng)絡(luò)層的操作,網(wǎng)絡(luò)層用structpacket_type結(jié)構(gòu)表示。文件主要有:/net/ipv4/ip_forward.cip_fragment.cip_input.cip_output.cetc.數(shù)據(jù)鏈路層和驅(qū)動(dòng)程序:每個(gè)網(wǎng)絡(luò)設(shè)備以structnet_device表示,通用的處理在dev.c中,驅(qū)動(dòng)程序都在/driver/net目錄下。2.兩臺(tái)主機(jī)建立udp通信所走過(guò)的函數(shù)列表?^

4、???????sy

5、s_read????????????????fs/read_write.c

6、???????sock_read???????????????net/socket.c

7、???????sock_recvmsg????????????net/socket.c

8、???????inet_recvmsg????????????net/ipv4/af_inet.c

9、???????udp_recvmsg?????????????net/ipv4/udp.c

10、???????skb_recv_datagram???????net/co

11、re/datagram.c

12、???????-------------------------------------------

13、???????sock_queue_rcv_skb??????include/net/sock.h

14、???????udp_queue_rcv_skb???????net/ipv4/udp.c

15、???????udp_rcv?????????????????net/ipv4/udp.c

16、???????ip_local_deliver_finishnet/ipv4/ip_input.c

17、??

18、?????ip_local_deliver????????net/ipv4/ip_input.c

19、???????ip_recv?????????????????net/ipv4/ip_input.c

20、???????net_rx_action???????????net/dev.c

21、???????-------------------------------------------

22、???????netif_rx????????????????net/dev.c

23、???????el3_rx?????????????

24、?????driver/net/3c309.c

25、???????el3_interrupt???????????driver/net/3c309.c==========================

26、???????sys_write???????????????fs/read_write.c

27、???????sock_writev?????????????net/socket.c????????????????????

28、???????sock_sendmsg????????????net/socket.c

29、????

30、???inet_sendmsg????????????net/ipv4/af_inet.c

31、???????udp_sendmsg?????????????net/ipv4/udp.c

32、???????ip_build_xmit???????????net/ipv4/ip_output.c

33、???????output_maybe_reroute????net/ipv4/ip_

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。