TCP/IP詳解卷一02
1. 鏈路層的目的:
1.1 為IP模塊發送IP數據報和接收IP數據報;
1.2 為ARP模塊發送ARP請求和接收ARP應答
1.3為RARP模塊發送RARP請求和接收RARP應答
2.以太網(主要局域網技術,CSMA/CD(帶沖突檢測的載波偵聽多路接入)速率10Mb/s,地址48bit )
3.IEEE 802(820.3針對整個CSMA/CD,802.4針對令牌總線網絡,802.5針對令牌環網絡),802網絡共有的邏輯鏈路控制(LLC)
以太網封裝的理解:目的地址(48bit)--源地址(48bit)------類型(16bit;0800IP數據報;0806ARP請求/應答;8035RARP請求/應答)---數據(46~1500字節)------CRC(32bit)
4.尾部封裝(trailer encapsulation;RFC 893;以太網的封裝格式)
5.SLIP:串行線路IP(Serial Line IP)
5.1SLIP協議定義的幀格式:(1)IP數據報以一個稱作END的特殊字符結束。(2)如果IP報文中某個字符為END,那麼就需要輸入兩個0xdb和0xdc來取代。(3)如果IP報文中某個字符為SLIP的ESC字符,就需要傳輸兩個字節0xdb和0xdd來取代它。(則在串行線路上傳輸的總字節數是原IP報文長度再加連續添加的字節數)
5.2缺點:(1)每一端必須知道對方的IP地址,沒有辦法將本端的IP地址傳送給另一端;(2)數據幀中沒有類型字段;(3)SLIP沒有在數據幀上加上檢驗和(類似於以太網上的CRC字段)
6.CSLIP:(壓縮的串行線路IP):將40個字節壓縮到3或者5個字節。能在CSIP的每一端維持多達16個TCP連接,並且知道其中每個連接的首部中的某些字段一般不會發生變化。
7.PPP:點對點協議
7.1包括:(1)在串行鏈路上封裝了IP數據報的方法
(2)建立、配置及測試數據鏈路的鏈路控制協議(LCP:Link Control Protocol)
(3)針對不同網絡層協議的網絡控制協議(NCP:Network Control Protocol)
7.2 PPP數據幀的格式:
每一幀都是以標誌位0x7e開始和結束,緊接著是一個地址字符值為0xff,然後是0x03的控制字節。
協議字段中0X0021(表示信息字段是一個IP數據報),值為0xc021(信息字段是鏈路控制數據);值為0x8021時,表示信息字段是網絡控制數據。
CRC字段(幀檢驗序列)是一個循環冗余檢驗碼,以檢測數據幀中的錯誤。
標誌字符0x7e,當該字符出現在信息字段時,PPP需要對它進行轉義(遇到字符0x7e 時,需要連續傳送兩個字符:0x7d和0x5e,以實現標誌字符的轉義)。
:
PPP的優點:(1)PPP支持在單根串行線路上運行多種協議,不只是IP協議;
(2)每一幀都有循環冗余檢驗
(3)通信雙方可以進行IP地址的動態協商(使用IP網絡控制協議)
(4)與CSLIP類似,對TCP和IP報文首部進行壓縮;
(5)鏈路控制協議可以對多個數據鏈路選項進行設置
代價:每一幀的首部增加3個字節。
8.環回接口(Loopback Interface):IP 地址:127.0.0.1,命名為localhost,傳給環回接口的IP數據報不能在任何網絡上出現
關鍵點:(1)傳給環回地址(127.0.0.1)的任何數據均作為IP輸入
(2)傳給廣播地址或者多播地址的數據復制一份傳給環回接口,然後送到以太網上。、
(3)任何傳給該主機IP地址的數據均送到環回接口
(4)環回接口可以被看作網絡層下面的另一個鏈路層,網絡層把數據報傳送給了環回接口,就像傳給其他鏈路層一樣,只不過環回接口把它返回到IP的輸入隊列中。
(5)送給主機本身IP地址的IP數據報一般不應該出現在相應的網絡上。
9.最大傳輸單元MTU:以太網數據幀的長度最大值是1500字節,802.3數據幀的長度最大是1492字節。鏈路層這個特性為MTU。
(1)當IP層數據報的數據長度大於鏈路層的MTU,那麼IP層需要進行分片(fragmentation)
(2)?????MTU並非指的是網絡媒體的物理特性,而是一個邏輯限制,目的是為交互使用提供足夠快的響應時間。將這個數值計算出來。?????
(3)netstat打印出網絡接口的MTU
10.路經MTU:當兩臺主機之間的通信需要通過多個網絡,每個網絡的鏈路層就可能有不同的MTU,重要的不是兩臺主機所在網絡的MTU的值,重要的是兩臺通信主機路徑中最小的MTU。
11.串行線路吞吐量計算:?????
12.netstat的使用:用於顯示與IP 、TCP、UDP和ICMP相關的統計數據,一般用於檢驗本機各端口的網絡連接情況
netstat -s :按照各個協議分別顯示其統計數據。
netstat -e :顯示以太網的統計數據(包括傳送的數據報的總字節數、錯誤數、刪除數、數據報的數量和廣播的數量)
netstat -r: 顯示路由表的信息,類似於route print 命令看到的信息。除了顯示有效地路由外,還顯示當前有效地連接
netstat -a:顯示一個所有的有效連接信息列表,包括已建立的連接(ESTABLISHED),也包括監聽連接請求(LISTENING)的那些連接
netstat -n : 顯示所有已建立的有效連接。
TCP/IP詳解卷一02