91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

網絡協議IP

發布時間:2020-07-27 03:13:51 來源:網絡 閱讀:333 作者:飛飛飛jjs 欄目:網絡安全

                IP協議是用于將多個包交換網絡連接起來的,它在源地址和目的地址之間傳送一種稱之為數據包的東西,它還提供對數據大小的重新組裝功能,以適應不同網絡對包大小的要求。IP的責任就是把數據從源傳送到目的地。它不負責保證傳送可靠性,流控制,包順序和其它對于主機到主機協議來說很普通的服務。

                    ip數據包的格式

    

網絡協議IP

IP協議是TCP/IP體系中兩個主要的協議之一,而IP地址位于IP數據報的首部,在網絡層及以上使用的是IP地址,因此在數據鏈路層是看不見數據報的IP地址,另外首部的前一部分是固定長度,共20字節。在TCP/IP的標準中,各種數據格式常以32位為單位來描述,通過分析IP數據報的格式就能夠知道IP協議都具有哪些功能    

                    分析捕捉到的數據包:

網絡協議IP

網絡協議IP

            從捕捉的數據包看出是ipv4的版本,首部長度為20字節,次長度為固定長度,total length :60 全部長度為字節  Differentiated services Field: 0xoo 指明服務類型;flags  標志  Fragment offset :0 片偏移量為零。time to live :64 生存時間,又叫跳數。header checksum :oxee19 校驗和,可驗證數據包是否出錯,source:172.28.15.1 原地址的ip Destination:172.28.15.55為目的地址ip

            IP使用四個關鍵技術提供服務:服務類型,生存時間,選項和報頭校驗碼。服務類型指希望得到的服務質量。服務類型是一個參數集,這些參數是Internet能夠提供服務的代表。這種服務類型由網關使用,用于在特定的網絡,或是用于下下一個要經過的網絡,或是下一個要對這個數據報進行路由的網關上選擇實際的傳送參數。生存時間是數據報可以生存的時間上限。它由發送者設置,由經過路由的地方處理。如果未到達時生存時間為零,拋棄此數據報。對于控制函數來說選項是重要的,但對于通常的通信來說它沒有存在的必要。選項包括時間戳,安全和特殊路由。報頭校驗碼保證數據的正確傳輸。如果校驗出錯,拋棄整個數據報

        IP不提供可靠的傳輸服務,它不提供端到端的或(路由)結點到(路由)結點的確認,對數據沒有差錯控制,它只使用報頭的校驗碼,它不提供重發和流量控制。如果出錯可以通過ICMP報告,ICMP在IP模塊中實現。

                    接下來即是校驗和的計算:

          IP首部校驗和的計算方法

            1.把校驗和字段清零。

          2.然后對每16位(2字節)進行二進制反碼求和,反碼求和的意思是先對每16位求和,再將得到的和轉為反碼。

            下面以網絡上的例子講述:

                                

        接收方進行校驗時,也是對每16位進行二進制反碼求和。接收方計算校驗和時的首部與發送方計算校驗和時的首部相比,多了一個發送方計算出來的校驗和。因此,如果首部在傳輸過程中沒有發生差錯,那么接收方計算的結果應該為全一,因為接收方計算除校驗和以外的部分得到值是校驗和的反碼,再加多出來的校驗和當然是全一了。

          最后對上述過程舉個例子:先將校驗和字段置零;

                              IP頭:

                              45 00    00 31

                              89 F5    00 00

                              6E 06    00 00(校驗字段)

                              DE B7   45 5D       ->    222.183.69.93

                              C0 A8   00 DC     ->    192.168.0.220

                              計算:  

                      4500 + 0031 +89F5 + 0000 + 6e06+ 0000 + DEB7 + 455D + C0A8 + 00DC =3 22C4

                      0003 + 22C4 = 22C7

                      ~22C7 = DD38      ->即為應填充的校驗和

        

                     當接受到IP數據包時,要檢查IP頭是否正確,則對IP頭進行檢驗,方法同上:

             計算:

                 4500 + 0031 +89F5 + 0000 + 6E06+ DD38 + DEB7 + 455D + C0A8 + 00DC =3 FFFC

                 0003 + FFFC = FFFF

             得到的結果是全一,正確

(作業)

        求校驗和的算法及程序:

                    算法:

                    SHORT checksum(USHORT* buffer, int size){
    unsigned long cksum = 0;
    while(size>1)
    {
        cksum += *buffer++;
        size -= sizeof(USHORT);
    }
    if(size)
    {
        cksum += *(UCHAR*)buffer;
    }
    cksum = (cksum>>16) + (cksum&0xffff); 
    cksum += (cksum>>16); 
    return (USHORT)(~cksum);
}

          程序:







向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

海宁市| 永修县| 满洲里市| 达尔| 申扎县| 灵石县| 巴楚县| 恭城| 石渠县| 南充市| 将乐县| 麦盖提县| 通山县| 乌兰浩特市| 木兰县| 靖西县| 晋州市| 新沂市| 思南县| 黔西| 延寿县| 镇赉县| 通江县| 喜德县| 延长县| 绥德县| 大理市| 武城县| 滁州市| 东乌珠穆沁旗| 黎川县| 东至县| 油尖旺区| 晋中市| 米易县| 洮南市| 三江| 南康市| 迭部县| 永丰县| 彭山县|