国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

報文分片(16位分片標(biāo)識、3位標(biāo)志、13位片偏移字段詳解)

這篇具有很好參考價值的文章主要介紹了報文分片(16位分片標(biāo)識、3位標(biāo)志、13位片偏移字段詳解)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

一、什么是分片?

二、如何分片?

三、如何組裝?(16位分片標(biāo)識、3位標(biāo)志、13位片偏移)

1、回顧16位分片標(biāo)識、3位標(biāo)志、13位片偏移

2、組合分片報文

四、分片的影響

1、對UDP的影響

2、對TCP的影響


一、什么是分片?

網(wǎng)絡(luò)層再繼續(xù)向下傳遞的時候,會限制報文的大小,mtu(max transform unit)是最大傳送單元,代表了每次所能傳輸報文的大小(含IP報頭)。當(dāng)我們的報文大?。ê琁P報頭)超過了1500 個字節(jié)的時候,將一個報文分成多部份來傳遞,這就是“分片”。

報文分片(16位分片標(biāo)識、3位標(biāo)志、13位片偏移字段詳解)

注意:分片不是大多數(shù)情況,而是特殊情況。本來傳遞一個報文就有著丟包的風(fēng)險,現(xiàn)在要傳遞一堆報文,丟包的概率會增加。

二、如何分片?

假設(shè) IP協(xié)議?收到上層的報文大小為 1700 字節(jié)。這1700字節(jié)在IP協(xié)議看來就是數(shù)據(jù),不考慮選項字段,加上IP報頭的20個字節(jié),要向下傳遞的大小為1720個字節(jié),很顯然超出了傳輸限制。

報文分片(16位分片標(biāo)識、3位標(biāo)志、13位片偏移字段詳解)

那么說明需要對這1700個字節(jié)進(jìn)行分片,注意,是1700個字節(jié)分片,而不是1720個字節(jié),先對數(shù)據(jù)進(jìn)行分片,然后每一部分再加上報頭。因為是分成多個報文來發(fā)送,每一個報文都要送到對端,那就必須加上報頭來告訴下一層目標(biāo)主機(jī)的IP地址。

報文分片(16位分片標(biāo)識、3位標(biāo)志、13位片偏移字段詳解)

三、如何組裝?(16位分片標(biāo)識、3位標(biāo)志、13位片偏移)

1、回顧16位分片標(biāo)識、3位標(biāo)志、13位片偏移

因為這些報文由一個完整的報文分片得到,不能隨意組合。這就需要用到IP報頭中的三個字段16位分片標(biāo)識、3位標(biāo)志、13位片偏移。

  • 13位片偏移:分片以后,各個部分在原始報文的哪個位置,即在原始報文中的偏移量。

  • 16位分片標(biāo)識:如果一個報文不分片,不同報文之間的16位標(biāo)識符是不同的;如果一個報文分片了,分片報文的16位標(biāo)識符是一樣的,說明這些分片報文原本屬于一個完整的報文。

  • 3位標(biāo)識:1位保留、1位標(biāo)識禁止分片、1位標(biāo)識更多報文(1說明后面跟了具有16位標(biāo)志符的報文,0說明后面沒有)

報文分片(16位分片標(biāo)識、3位標(biāo)志、13位片偏移字段詳解)

2、組合分片報文

第一步,通過三位標(biāo)識符的第三位標(biāo)識“更多報文”判斷當(dāng)前收到的報文后面是否存在其他分片報文。

如果第三位標(biāo)識為1,說明當(dāng)前報文是分片報文,加入到具有相同16位標(biāo)識符的集合中。,進(jìn)入下一步;如果為0,可能為普通報文,也有可能是分片報文的最后一部分,此時需要根據(jù)片偏移判斷。

  • 如果片偏移為0,說明是普通報文,結(jié)束判斷,直接向上層交付;
  • 如果不為0,說明是分片報文,加入到具有相同16位標(biāo)識符的集合中。

報文分片(16位分片標(biāo)識、3位標(biāo)志、13位片偏移字段詳解)

第二步,判斷所有的報文是否收全。將集合中的報文按照片偏移進(jìn)行升序排序。

判斷起始分片報文是否收到:如果第一個報文的片偏移為0,說明起始分片報文收到了。

判斷末尾分片報文是否收到:如果最后一個報文的三位標(biāo)志位中的第三位為0,說明末尾分片報文收到了

判斷中間報文是否收到:以第二個報文為例,第二個報文的片偏移理應(yīng)等于 第一個報文的片偏移 + 第一個報文的數(shù)據(jù)長度,以此來判斷第二個報文是否收到;依此類推,可以判斷中間報文是否收到。

=》該集合中一旦發(fā)現(xiàn)少了任意一個報文,整個集合中的報文直接全部丟棄!也不會通知上層TCP

四、分片的影響

分片有風(fēng)險,只要有一部分丟了,如果對端網(wǎng)絡(luò)層無法組裝,要組裝的幾部分會全部丟棄,對方TCP沒有收到報文,就認(rèn)為是丟包了。所以一般不建議分片,分片會增加丟包概率。

1、對UDP的影響

UDP沒有發(fā)送緩沖區(qū),應(yīng)用層要發(fā)多少,到了網(wǎng)絡(luò)層就是多少,這個時候就得老老實實分片。分片會增加丟包的概率,一旦某個分片報文丟了導(dǎo)致無法組裝就會將相關(guān)的分片報文全部丟棄。(是否相關(guān)可以根據(jù)16位分片標(biāo)識來判斷)

2、對TCP的影響

因為TCP有緩沖區(qū)的存在,想發(fā)多少、什么時候發(fā)都由TCP決定,TCP可以做到自己控制數(shù)據(jù)段的長度,然后再傳到網(wǎng)絡(luò)層,此時就無需網(wǎng)絡(luò)層來分片了。

但TCP每次可以發(fā)送的數(shù)據(jù)長度不是無限大,受制于MTU和對方主機(jī)的MSS(Max Segment Size),即最大消息長度。文章來源地址http://www.zghlxwxcb.cn/news/detail-455510.html

  • 受制于MTU的意思是,為了不分片,TCP每次最多攜帶的數(shù)據(jù)是多少。不同系統(tǒng)的MTU可能有所不同,MTU減去TCP報頭和IP報頭的大小,就是TCP每次最多可以發(fā)送的數(shù)據(jù)量。
  • 受制于對方主機(jī)的MSS的意思是,對方每次最多可以接收多少。雙方在發(fā)送SYN的時候會在TCP頭部寫入自己可以支持的MSS值,在得知對方的MSS以后,選取較小的作為最終MSS。MSS的值就是在TCP首部的40字節(jié)變長選項中(kind=2);

到了這里,關(guān)于報文分片(16位分片標(biāo)識、3位標(biāo)志、13位片偏移字段詳解)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 2.2 - 網(wǎng)絡(luò)協(xié)議 - IP協(xié)議,IP地址劃分,報文格式,數(shù)據(jù)分片,抓包實戰(zhàn)

    「作者主頁」: 士別三日wyx 「作者簡介」: CSDN top100、阿里云博客專家、華為云享專家、網(wǎng)絡(luò)安全領(lǐng)域優(yōu)質(zhì)創(chuàng)作者 「推薦專欄」: 對網(wǎng)絡(luò)安全感興趣的小伙伴可以關(guān)注專欄《網(wǎng)絡(luò)安全入門到精通》 IP(Internet Protocol)協(xié)議也叫 「網(wǎng)際互聯(lián)協(xié)議」 ,負(fù)責(zé) 「不同網(wǎng)絡(luò)」 之間的

    2024年02月06日
    瀏覽(156)
  • IP首部報文字段

    IP首部報文字段

    字段如下圖所示 版本 表示 IP 協(xié)議的版本。通信雙方使用的 IP 協(xié)議版本必須一致。目前廣泛使用的IP協(xié)議版本號為 4,即 IPv4 首部長度 這個字段所表示數(shù)的單位是 32 位字長(1 個 32 位字長是 4 字節(jié))。因此,當(dāng) IP 的首部長度為 1111 時(即十進(jìn)制的 15),首部長度就達(dá)到 60 字

    2024年02月17日
    瀏覽(23)
  • IP與TCP報文固定頭部中的字段

    IP報文固定頭部中的字段作用如下: 1.版本(Version) ? ? ? ? ? ?該字段用于指定IP協(xié)議的版本,IPv4的版本號為4,IPv6的版本號為6。 2.頭部長度(Header Length) ? ? ? ? ? 該字段用于指定IP報文頭部的長度,單位為4字節(jié)。由于IPv4頭部中可能包含多個選項字? ? ? ? ? ? ? ? ?

    2024年04月23日
    瀏覽(25)
  • ElasticSearch修改分片數(shù)和副本數(shù)及增加字段

    一、修改副本數(shù) PUT test/_settings { ? ? \\\"index\\\": { ? ? ? ? \\\"number_of_replicas\\\" : 1 ? ? } } 二、修改分片數(shù) ElasticSearch中的數(shù)據(jù)會被分別存儲在不同的分片上,索引庫的分片數(shù)量是在索引庫創(chuàng)建的時候通過settings去設(shè)置的,如果不設(shè)置,分片數(shù)默認(rèn)是5,分片數(shù)一旦確定就不能改變。如果

    2024年02月05日
    瀏覽(19)
  • Linux 1.2.13 -- IP分片重組源碼分析

    Linux 1.2.13 -- IP分片重組源碼分析

    本文源碼解析參考: 深入理解TCP/IP協(xié)議的實現(xiàn)之ip分片重組 – 基于linux1.2.13 計網(wǎng)理論部分參考: 自頂向下學(xué)習(xí)計算機(jī)網(wǎng)絡(luò) Linux 1.2.13 源碼倉庫鏈接: read-linux-1.2.13-net-code 筆者在完成cs144 lab 后,發(fā)現(xiàn)自己對IP層分片這部分知識點模糊不清,閱讀了自頂向下學(xué)習(xí)計算機(jī)網(wǎng)絡(luò)書籍對應(yīng)

    2024年02月13日
    瀏覽(14)
  • ElasticSearch數(shù)據(jù)庫修改分片數(shù)、副本數(shù)及修改mapping字段

    ElasticSearch數(shù)據(jù)庫修改分片數(shù)、副本數(shù)及修改mapping字段

    ????????對于已經(jīng)存在的索引,副本數(shù)可以隨時修改。 示例演示如下: ????????ElasticSearch中的數(shù)據(jù)會被分別存儲在不同的分片上,索引庫的分片數(shù)量是在索引庫創(chuàng)建的時候通過settings去設(shè)置的,如果不設(shè)置,分片數(shù)默認(rèn)是5,分片數(shù)一旦確定就不能改變。分片數(shù)量的設(shè)

    2024年02月02日
    瀏覽(19)
  • MySQL運(yùn)維13-Mycat分庫分表之按月分片

    MySQL運(yùn)維13-Mycat分庫分表之按月分片

    使用場景為按照自然月來分片,每個自然月為一個分片,但是一年有12個月,是不是要有12個數(shù)據(jù)節(jié)點才行呢?并不是。例如我現(xiàn)在只有三個分片數(shù)據(jù)庫,這樣就可以1月在第一個數(shù)據(jù)分片中,2月在第二個數(shù)據(jù)分片中,3月在第三個數(shù)據(jù)分片中,當(dāng)來到4月的時候,就會重新開始

    2024年02月04日
    瀏覽(27)
  • 通過兩種實現(xiàn)方式理解CANoe TC8 demo是如何判斷接收的以太網(wǎng)報文里的字段的

    通過兩種實現(xiàn)方式理解CANoe TC8 demo是如何判斷接收的以太網(wǎng)報文里的字段的

    假設(shè)有一個測試用例,需求是:編寫一個測試用例,發(fā)送一條icmpv4 echo request報文給DUT,identifier字段設(shè)置為10。判斷DUT能夠回復(fù)icmpv4 echo reply報文,且identifier字段值為10。 實現(xiàn):在canoe的simulation setup界面插入一個test節(jié)點,ip地址為:192.168.0.1,mac地址為:02:00:00:00:00:01,作為測

    2024年02月15日
    瀏覽(21)
  • IPv4報文格式詳解和報文示例

    IPv4報文格式詳解和報文示例

    目錄 一,IP數(shù)據(jù)報文的組成 二,IP報文格式 三,IPv4報文示例 作者:柒燁帶你飛 一個IP數(shù)據(jù)報文都是 由首部和數(shù)據(jù)兩部分組成 。 每個 IP 數(shù)據(jù)報都以一個 IP 報頭開始。IP 報頭中包含大量信息,如源 IP 地址、目的 IP 地址、數(shù)據(jù)報長度、IP 版本號等。每個信息都被稱為一個字段

    2023年04月08日
    瀏覽(40)
  • SQL窗口分析函數(shù)使用詳解系列三之偏移量類窗口函數(shù)

    本文以HiveSQL語法進(jìn)行代碼演示。 對于其他數(shù)據(jù)庫來說同樣也適用,比如SparkSQL,F(xiàn)linkSQL以及Mysql8,Oracle,SqlServer等傳統(tǒng)的關(guān)系型數(shù)據(jù)庫。 已更新第一類聚合函數(shù)類,點擊這里閱讀 ①SQL窗口函數(shù)系列一之聚合函數(shù)類 ②SQL窗口函數(shù)系列二之分組排序窗口函數(shù) 本節(jié)介紹Hive窗口分

    2024年04月26日
    瀏覽(22)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包