第42講差錯(cuò)控制技術(shù)_第1頁(yè)
第42講差錯(cuò)控制技術(shù)_第2頁(yè)
第42講差錯(cuò)控制技術(shù)_第3頁(yè)
第42講差錯(cuò)控制技術(shù)_第4頁(yè)
第42講差錯(cuò)控制技術(shù)_第5頁(yè)
已閱讀5頁(yè),還剩47頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、-1 差錯(cuò)控制技術(shù)差錯(cuò)控制技術(shù) 第第 4-2 講講網(wǎng)絡(luò)通用技術(shù)網(wǎng)絡(luò)通用技術(shù)-2內(nèi)容提綱內(nèi)容提綱1 概述概述2 差錯(cuò)類型差錯(cuò)類型3 差錯(cuò)檢測(cè)技術(shù)差錯(cuò)檢測(cè)技術(shù)4 差錯(cuò)控制技術(shù)差錯(cuò)控制技術(shù)5 差錯(cuò)控制與網(wǎng)絡(luò)層次的關(guān)系差錯(cuò)控制與網(wǎng)絡(luò)層次的關(guān)系-3差錯(cuò)控制:概述差錯(cuò)控制:概述v網(wǎng)絡(luò)通信的目的是通過(guò)網(wǎng)絡(luò)在應(yīng)用進(jìn)程間傳輸網(wǎng)絡(luò)通信的目的是通過(guò)網(wǎng)絡(luò)在應(yīng)用進(jìn)程間傳輸信息,任何數(shù)據(jù)丟失或損壞都將對(duì)通信雙方產(chǎn)信息,任何數(shù)據(jù)丟失或損壞都將對(duì)通信雙方產(chǎn)生重要的影響。生重要的影響。 v差錯(cuò)控制差錯(cuò)控制是指在網(wǎng)絡(luò)通信過(guò)程中發(fā)現(xiàn)(檢測(cè))是指在網(wǎng)絡(luò)通信過(guò)程中發(fā)現(xiàn)(檢測(cè))差錯(cuò),并采取措施糾正,把差錯(cuò)限制在差錯(cuò),并采取措施糾正,把差

2、錯(cuò)限制在所允許所允許的盡可能小的范圍內(nèi)的技術(shù)和方法。的盡可能小的范圍內(nèi)的技術(shù)和方法。 v差錯(cuò)控制的目的是為了差錯(cuò)控制的目的是為了提高數(shù)據(jù)傳輸?shù)目煽啃蕴岣邤?shù)據(jù)傳輸?shù)目煽啃?,但是任何一種差錯(cuò)控制方法均但是任何一種差錯(cuò)控制方法均不可能糾正所有不可能糾正所有可能出現(xiàn)的差錯(cuò)??赡艹霈F(xiàn)的差錯(cuò)。 -4差錯(cuò)類型(續(xù))差錯(cuò)類型(續(xù))v根據(jù)差錯(cuò)的表現(xiàn)形式根據(jù)差錯(cuò)的表現(xiàn)形式 ,可分為四類():,可分為四類():失真失真(Distortion) 定義:被傳送信息中的一個(gè)或多個(gè)比特發(fā)生了改定義:被傳送信息中的一個(gè)或多個(gè)比特發(fā)生了改變,或者被傳送的信息中插入了一些新的信息,變,或者被傳送的信息中插入了一些新的信息,后一種

3、情況也稱為后一種情況也稱為“插入插入(Insertion)” 主要原因:主要原因:網(wǎng)絡(luò)中物理干擾(如線路噪聲)網(wǎng)絡(luò)中物理干擾(如線路噪聲)發(fā)送者和接收者之間的失步發(fā)送者和接收者之間的失步入侵者的故意攻擊入侵者的故意攻擊結(jié)點(diǎn)中的硬件故障和軟件差錯(cuò)等結(jié)點(diǎn)中的硬件故障和軟件差錯(cuò)等 解決方法:各種校驗(yàn)方法來(lái)檢測(cè)解決方法:各種校驗(yàn)方法來(lái)檢測(cè) -5差錯(cuò)類型(續(xù))差錯(cuò)類型(續(xù))v根據(jù)差錯(cuò)的表現(xiàn)形式根據(jù)差錯(cuò)的表現(xiàn)形式 ,可分為四類,可分為四類()()丟失丟失(Deletion) 定義:網(wǎng)絡(luò)將被傳輸?shù)男畔G棄定義:網(wǎng)絡(luò)將被傳輸?shù)男畔G棄 主要原因:主要原因:噪聲脈沖對(duì)某個(gè)幀的破壞程度太大,以致接收方不知噪聲脈沖

4、對(duì)某個(gè)幀的破壞程度太大,以致接收方不知道這個(gè)幀已經(jīng)被傳輸;道這個(gè)幀已經(jīng)被傳輸;發(fā)送者和接收者之間的失步;發(fā)送者和接收者之間的失步;流量控制或擁塞控制措施不當(dāng)時(shí)因資源不夠而被中間流量控制或擁塞控制措施不當(dāng)時(shí)因資源不夠而被中間結(jié)點(diǎn)或接收者丟棄;結(jié)點(diǎn)或接收者丟棄;因接收者檢測(cè)到信息被損壞而主動(dòng)將其丟棄等因接收者檢測(cè)到信息被損壞而主動(dòng)將其丟棄等 解決方法:用序號(hào)、計(jì)時(shí)器和確認(rèn)共同檢測(cè),通解決方法:用序號(hào)、計(jì)時(shí)器和確認(rèn)共同檢測(cè),通過(guò)重傳的方法來(lái)糾正錯(cuò)誤過(guò)重傳的方法來(lái)糾正錯(cuò)誤 -6差錯(cuò)類型(續(xù))差錯(cuò)類型(續(xù))v根據(jù)差錯(cuò)的表現(xiàn)形式根據(jù)差錯(cuò)的表現(xiàn)形式 ,可分為四類,可分為四類()()重復(fù)重復(fù)(Duplicat

5、ion) 定義:多次收到同樣的信息定義:多次收到同樣的信息 主要原因:主要原因:是差錯(cuò)控制機(jī)制本身,如果發(fā)送方錯(cuò)誤地認(rèn)為數(shù)據(jù)丟是差錯(cuò)控制機(jī)制本身,如果發(fā)送方錯(cuò)誤地認(rèn)為數(shù)據(jù)丟失了,因而重傳了它,就可能造成接收方收到重復(fù)的失了,因而重傳了它,就可能造成接收方收到重復(fù)的信息信息 路由選擇機(jī)制引起的重復(fù)幀,如使用基于擴(kuò)散的路由路由選擇機(jī)制引起的重復(fù)幀,如使用基于擴(kuò)散的路由選擇策略選擇策略(如洪泛法如洪泛法) 解決方法:用序號(hào)來(lái)檢測(cè)這種錯(cuò)誤,用丟棄重復(fù)解決方法:用序號(hào)來(lái)檢測(cè)這種錯(cuò)誤,用丟棄重復(fù)的數(shù)據(jù)來(lái)糾正錯(cuò)誤。的數(shù)據(jù)來(lái)糾正錯(cuò)誤。-7差錯(cuò)類型(續(xù))差錯(cuò)類型(續(xù))v根據(jù)差錯(cuò)的表現(xiàn)形式根據(jù)差錯(cuò)的表現(xiàn)形式 ,可

6、分為四類,可分為四類()()失序失序(Reordering) 定義:定義:數(shù)據(jù)到達(dá)接收方的順序與發(fā)送方發(fā)送的順數(shù)據(jù)到達(dá)接收方的順序與發(fā)送方發(fā)送的順序不一致序不一致 主要原因:主要原因:采用自適應(yīng)的路由選擇策略,分組在網(wǎng)絡(luò)中傳送時(shí)可采用自適應(yīng)的路由選擇策略,分組在網(wǎng)絡(luò)中傳送時(shí)可能有多條路由而引起的后發(fā)先到能有多條路由而引起的后發(fā)先到 中間結(jié)點(diǎn)緩存或轉(zhuǎn)發(fā)出錯(cuò)中間結(jié)點(diǎn)緩存或轉(zhuǎn)發(fā)出錯(cuò)重傳丟失的數(shù)據(jù)也可能導(dǎo)致數(shù)據(jù)不按序到達(dá)重傳丟失的數(shù)據(jù)也可能導(dǎo)致數(shù)據(jù)不按序到達(dá)解決方法:解決方法:把亂序的數(shù)據(jù)先存儲(chǔ)下來(lái),使得以后能把它們存放在把亂序的數(shù)據(jù)先存儲(chǔ)下來(lái),使得以后能把它們存放在正確的位置上;正確的位置上;丟棄亂

7、序的數(shù)據(jù),然后按數(shù)據(jù)丟失來(lái)處理丟棄亂序的數(shù)據(jù),然后按數(shù)據(jù)丟失來(lái)處理 。-8差錯(cuò)檢測(cè)技術(shù):概述差錯(cuò)檢測(cè)技術(shù):概述v檢查收到的數(shù)據(jù)是否正確檢查收到的數(shù)據(jù)是否正確通常情況下,我們所說(shuō)的差錯(cuò)檢測(cè)是指檢測(cè)收到的通常情況下,我們所說(shuō)的差錯(cuò)檢測(cè)是指檢測(cè)收到的數(shù)據(jù)是否被損壞,而不包括對(duì)數(shù)據(jù)丟失、重復(fù)、亂數(shù)據(jù)是否被損壞,而不包括對(duì)數(shù)據(jù)丟失、重復(fù)、亂序等差錯(cuò)的檢測(cè)序等差錯(cuò)的檢測(cè)在這樣的前提下,差錯(cuò)檢測(cè)技術(shù)所采取的方法一般在這樣的前提下,差錯(cuò)檢測(cè)技術(shù)所采取的方法一般是各種檢驗(yàn)和技術(shù),如奇偶檢驗(yàn),循環(huán)冗余檢驗(yàn)等是各種檢驗(yàn)和技術(shù),如奇偶檢驗(yàn),循環(huán)冗余檢驗(yàn)等, ,本節(jié)主要介紹這方面的技術(shù)本節(jié)主要介紹這方面的技術(shù)v差錯(cuò)檢測(cè)

8、是差錯(cuò)控制的基礎(chǔ)差錯(cuò)檢測(cè)是差錯(cuò)控制的基礎(chǔ) -9差錯(cuò)檢測(cè)技術(shù):原理差錯(cuò)檢測(cè)技術(shù):原理E, E:差錯(cuò)檢驗(yàn)碼:差錯(cuò)檢驗(yàn)碼對(duì)比對(duì)比接收器接收器數(shù)據(jù)數(shù)據(jù) EE = f(Data)數(shù)據(jù)數(shù)據(jù) EE = f(Data)發(fā)送器發(fā)送器數(shù)據(jù)數(shù)據(jù)f: 差錯(cuò)檢驗(yàn)函數(shù)差錯(cuò)檢驗(yàn)函數(shù)問(wèn)題:?jiǎn)栴}:為什么將檢驗(yàn)碼放在幀的尾部?為什么將檢驗(yàn)碼放在幀的尾部?-10奇偶檢驗(yàn)奇偶檢驗(yàn)v奇偶檢驗(yàn)在數(shù)據(jù)的尾部附加上奇偶檢驗(yàn)位,使奇偶檢驗(yàn)在數(shù)據(jù)的尾部附加上奇偶檢驗(yàn)位,使得碼字中比特得碼字中比特“1”的個(gè)數(shù)保持為奇數(shù)的個(gè)數(shù)保持為奇數(shù)(奇檢驗(yàn)奇檢驗(yàn))或偶數(shù)或偶數(shù)(偶檢驗(yàn)偶檢驗(yàn)) v被廣泛用于諸如計(jì)算機(jī)的異步串行口通信中被廣泛用于諸如計(jì)算機(jī)的異步串

9、行口通信中v三種類型:三種類型:垂直冗余檢驗(yàn)垂直冗余檢驗(yàn)(Vertical Redundancy Checking,VRC)水平(縱向)冗余檢驗(yàn)水平(縱向)冗余檢驗(yàn)(Longitudinal Redundancy Checking,LRC)垂直水平冗余檢驗(yàn)垂直水平冗余檢驗(yàn) -11奇偶檢驗(yàn):奇偶檢驗(yàn):垂直冗余檢驗(yàn)v 原理:原理:將整個(gè)發(fā)送的信息分為長(zhǎng)度為將整個(gè)發(fā)送的信息分為長(zhǎng)度為p位的若干段,如位的若干段,如q段,段,每段后面按每段后面按“1”的個(gè)數(shù)為奇數(shù)或偶數(shù)的規(guī)律加上一位奇偶的個(gè)數(shù)為奇數(shù)或偶數(shù)的規(guī)律加上一位奇偶位,其有位,其有(p q) 個(gè)信息位,每段由個(gè)信息位,每段由p位構(gòu)成,共位構(gòu)成,共

10、q段。段。v 通常通常p值等于一個(gè)字符的長(zhǎng)度,因此有時(shí)也將垂直冗余檢值等于一個(gè)字符的長(zhǎng)度,因此有時(shí)也將垂直冗余檢驗(yàn)稱為驗(yàn)稱為字符奇偶檢驗(yàn)字符奇偶檢驗(yàn)。v 可以用硬件或軟件方法來(lái)實(shí)現(xiàn)連續(xù)半加(不考慮進(jìn)位)運(yùn)可以用硬件或軟件方法來(lái)實(shí)現(xiàn)連續(xù)半加(不考慮進(jìn)位)運(yùn)算,且可以邊發(fā)送邊產(chǎn)生檢驗(yàn)位,并插入檢驗(yàn)位發(fā)送。在算,且可以邊發(fā)送邊產(chǎn)生檢驗(yàn)位,并插入檢驗(yàn)位發(fā)送。在接收時(shí)邊接收邊進(jìn)行檢驗(yàn)并除去檢驗(yàn)位接收時(shí)邊接收邊進(jìn)行檢驗(yàn)并除去檢驗(yàn)位v 能檢測(cè)出每行中的能檢測(cè)出每行中的所有奇數(shù)個(gè)位的錯(cuò)所有奇數(shù)個(gè)位的錯(cuò),但檢測(cè)不出,但檢測(cè)不出偶數(shù)個(gè)偶數(shù)個(gè)位的錯(cuò)位的錯(cuò)。對(duì)于突發(fā)錯(cuò)誤而言,奇數(shù)位錯(cuò)與偶數(shù)位錯(cuò)的概率。對(duì)于突發(fā)錯(cuò)誤而言

11、,奇數(shù)位錯(cuò)與偶數(shù)位錯(cuò)的概率差不多是相等的,因而對(duì)差錯(cuò)的漏檢率接近于差不多是相等的,因而對(duì)差錯(cuò)的漏檢率接近于50%50%。 -12奇偶檢驗(yàn):奇偶檢驗(yàn):水平冗余檢驗(yàn)v原理:原理:對(duì)各個(gè)信息段的相應(yīng)位水平進(jìn)行編碼,對(duì)各個(gè)信息段的相應(yīng)位水平進(jìn)行編碼,對(duì)應(yīng)每一列產(chǎn)生一個(gè)奇偶檢驗(yàn)位。這種水平基對(duì)應(yīng)每一列產(chǎn)生一個(gè)奇偶檢驗(yàn)位。這種水平基礎(chǔ)上檢驗(yàn)字符的技術(shù),使用了和垂直冗余檢驗(yàn)礎(chǔ)上檢驗(yàn)字符的技術(shù),使用了和垂直冗余檢驗(yàn)同樣的奇偶性。同樣的奇偶性。 v漏檢率要比垂直冗余檢驗(yàn)低。不但可以檢測(cè)出漏檢率要比垂直冗余檢驗(yàn)低。不但可以檢測(cè)出各段同一位上的奇數(shù)位錯(cuò),而且可以檢測(cè)出突各段同一位上的奇數(shù)位錯(cuò),而且可以檢測(cè)出突發(fā)長(zhǎng)度

12、小于等于發(fā)長(zhǎng)度小于等于p的所有突發(fā)錯(cuò)誤(的所有突發(fā)錯(cuò)誤(Why?Why?)突發(fā)長(zhǎng)度小于等于突發(fā)長(zhǎng)度小于等于p的突發(fā)的突發(fā)錯(cuò)誤必然分布在不同列中,錯(cuò)誤必然分布在不同列中,每列一位,所以可以檢測(cè)出每列一位,所以可以檢測(cè)出來(lái)來(lái) -13奇偶檢驗(yàn):奇偶檢驗(yàn):垂直水平冗余檢驗(yàn)v 同時(shí)進(jìn)行垂直冗余檢驗(yàn)和縱向冗余檢驗(yàn)同時(shí)進(jìn)行垂直冗余檢驗(yàn)和縱向冗余檢驗(yàn)v 能檢測(cè)出所有能檢測(cè)出所有3位或位或3位以下的錯(cuò)誤位以下的錯(cuò)誤(因?yàn)榇藭r(shí)至少在某因?yàn)榇藭r(shí)至少在某一行或某一列上為一位錯(cuò)一行或某一列上為一位錯(cuò))、奇數(shù)位錯(cuò)奇數(shù)位錯(cuò)、突發(fā)長(zhǎng)度小于突發(fā)長(zhǎng)度小于等于等于(p+1)的突發(fā)錯(cuò)的突發(fā)錯(cuò)。v 還可以還可以糾正部分差錯(cuò),糾正部分差

13、錯(cuò),例如僅在某一行和某一列中有例如僅在某一行和某一列中有1 1位錯(cuò)時(shí),就可以確定錯(cuò)誤的位置就在該行和該列的交位錯(cuò)時(shí),就可以確定錯(cuò)誤的位置就在該行和該列的交叉處,從而得以糾正。叉處,從而得以糾正。 v 此外,能檢測(cè)此外,能檢測(cè)很大一部分偶數(shù)位錯(cuò)很大一部分偶數(shù)位錯(cuò)。當(dāng)某一行出現(xiàn)偶。當(dāng)某一行出現(xiàn)偶數(shù)個(gè)錯(cuò)時(shí),雖然垂直冗余檢驗(yàn)不能發(fā)現(xiàn),但在其縱向數(shù)個(gè)錯(cuò)時(shí),雖然垂直冗余檢驗(yàn)不能發(fā)現(xiàn),但在其縱向冗余檢驗(yàn)中還是可以被檢測(cè)出來(lái);反之亦然。只有當(dāng)冗余檢驗(yàn)中還是可以被檢測(cè)出來(lái);反之亦然。只有當(dāng)有錯(cuò)的各行和各列中出錯(cuò)位數(shù)均為偶數(shù)時(shí),才不可能有錯(cuò)的各行和各列中出錯(cuò)位數(shù)均為偶數(shù)時(shí),才不可能被發(fā)現(xiàn)。被發(fā)現(xiàn)。 -14CRC檢

14、驗(yàn):原理檢驗(yàn):原理v CRC是數(shù)據(jù)通信中進(jìn)行錯(cuò)誤檢查和糾正的一種重要方是數(shù)據(jù)通信中進(jìn)行錯(cuò)誤檢查和糾正的一種重要方法,易于編碼和解碼,對(duì)隨機(jī)和突發(fā)錯(cuò)碼均能以較低法,易于編碼和解碼,對(duì)隨機(jī)和突發(fā)錯(cuò)碼均能以較低冗余度實(shí)施檢查。冗余度實(shí)施檢查。 v 方法:方法:發(fā)端產(chǎn)生一個(gè)循環(huán)冗余檢驗(yàn)碼,附在信息位后發(fā)端產(chǎn)生一個(gè)循環(huán)冗余檢驗(yàn)碼,附在信息位后面發(fā)到收端,收端按照與發(fā)端同樣的算法進(jìn)行檢驗(yàn),面發(fā)到收端,收端按照與發(fā)端同樣的算法進(jìn)行檢驗(yàn),若有錯(cuò),需要重發(fā)。若有錯(cuò),需要重發(fā)。v 線性碼:由線性碼:由k位信息碼和位信息碼和r位檢驗(yàn)碼構(gòu)成,每位檢驗(yàn)碼位檢驗(yàn)碼構(gòu)成,每位檢驗(yàn)碼都是前面某些信息碼元的模都是前面某些信息碼

15、元的模2和(即按照線性關(guān)系相和(即按照線性關(guān)系相加),碼長(zhǎng)加),碼長(zhǎng)n=k+r。v 線性碼特點(diǎn):封閉性(任意兩個(gè)碼字相加仍可得到一線性碼特點(diǎn):封閉性(任意兩個(gè)碼字相加仍可得到一個(gè)碼字)和循環(huán)型(一個(gè)碼字作任意循環(huán)移位得到的個(gè)碼字)和循環(huán)型(一個(gè)碼字作任意循環(huán)移位得到的仍是碼字)。仍是碼字)。 -15CRC檢驗(yàn):示例檢驗(yàn):示例 1101010110Q 商 除數(shù)P110101 101000110100000XrM 被除數(shù) 110101 111011 110101 111010 110101 111110 110101 101100 110101 110010 110101 01110R 余數(shù)q 數(shù)

16、據(jù):數(shù)據(jù):M=1010001101q 除數(shù)除數(shù)P(生成多項(xiàng)式)(生成多項(xiàng)式)= X5+X4+X2+X0q XrM(X)=P(X)Q(X)+R(X) 模模 2 運(yùn)算:加法不進(jìn)位,減法和加法一樣,運(yùn)算:加法不進(jìn)位,減法和加法一樣, 例如:例如:1111 + 1010 = 0101q 冗余碼(冗余碼(R(X))稱為幀檢驗(yàn)序列)稱為幀檢驗(yàn)序列 FCSq T(X)=XrM(X) + R(X)稱為循環(huán)碼稱為循環(huán)碼q接收端運(yùn)算:接收端運(yùn)算:XrM(X) + R(X) / P(X) = Q(X),q 有錯(cuò):余數(shù)有錯(cuò):余數(shù)R(X) !=0;q無(wú)錯(cuò):余數(shù)無(wú)錯(cuò):余數(shù)R(X) =0,去掉尾部,去掉尾部r位便得到信息碼

17、位便得到信息碼q 問(wèn)題:?jiǎn)栴}:R(X) 等于等于0就肯定沒(méi)有錯(cuò)嗎?就肯定沒(méi)有錯(cuò)嗎?q 常見(jiàn)多項(xiàng)式:常見(jiàn)多項(xiàng)式:o CRC-CCITT = X16+X12+X5+1; CRC-16 = X16+X15+X2+1o CRC-12 = X12+X11+X3+X2+X+1o CRC-32 = X32+X26+X23+ X22+X16+X12+ X11+X10+X8+ X7+X5+X4+ X2+X+1(信息多項(xiàng)式)(信息多項(xiàng)式)-16算術(shù)檢驗(yàn)和(因特網(wǎng)檢驗(yàn)和)算術(shù)檢驗(yàn)和(因特網(wǎng)檢驗(yàn)和)v盡管可以通過(guò)前面介紹的查表方法或特殊硬件盡管可以通過(guò)前面介紹的查表方法或特殊硬件方法計(jì)算檢驗(yàn)和來(lái)縮短處理時(shí)間方法計(jì)算檢

18、驗(yàn)和來(lái)縮短處理時(shí)間,但:,但:v對(duì)于允許一定程度漏檢率的應(yīng)用場(chǎng)合,對(duì)于允許一定程度漏檢率的應(yīng)用場(chǎng)合,可以采可以采用比用比CRC檢驗(yàn)簡(jiǎn)單且又能夠發(fā)現(xiàn)比較嚴(yán)重的傳檢驗(yàn)簡(jiǎn)單且又能夠發(fā)現(xiàn)比較嚴(yán)重的傳輸錯(cuò)誤的方法來(lái)進(jìn)行差錯(cuò)檢測(cè)。輸錯(cuò)誤的方法來(lái)進(jìn)行差錯(cuò)檢測(cè)。vJohn Fletcher John Fletcher 在在19821982提出了這樣一種差錯(cuò)檢提出了這樣一種差錯(cuò)檢測(cè)方法,稱為測(cè)方法,稱為算術(shù)檢驗(yàn)和算術(shù)檢驗(yàn)和只需用到加法和取模操作只需用到加法和取模操作算法特別簡(jiǎn)單算法特別簡(jiǎn)單 一些因特網(wǎng)協(xié)議(一些因特網(wǎng)協(xié)議(TCP、UDP和和IP)使用這種方法,)使用這種方法,強(qiáng)調(diào)易實(shí)現(xiàn)性和簡(jiǎn)單性強(qiáng)調(diào)易實(shí)現(xiàn)性和簡(jiǎn)

19、單性-17Arithmetic ChecksumvError detection at the higher layer is usually done by ordinary arithmetic operations.This is simpler in software but somewhat less effective than CRC.vStandard technique is to view packet as sequence of k numbers of n bits each, say x1, x2,., xk.vChecksum is then the n bit

20、number x1+x2+.+xk using ordinary arithmetic with no carry.-18Arithmetic Checksum (Cont.)vAlternatively, checksum might be 2n bits; first n bits is (sum) x1+x2+.+xk and second n bits is (sum of sum) x1+2x2+3x3+.+kxk.vExample: n=16, checksum is 16 bits.vChecksum=x1+x2+.+xk,接收端計(jì)算接收端計(jì)算x1+x2+.+xk+Checksu

21、m=0,則沒(méi)有錯(cuò)誤。,則沒(méi)有錯(cuò)誤。-19UDP協(xié)議的差錯(cuò)檢測(cè)協(xié)議的差錯(cuò)檢測(cè)10011001 00010011 153.1900001000 01101000 8.10410101011 00000011 171.300001110 00001011 16.1100000000 00010001 0 和 1700000000 00001111 1500000100 00111111 108700000000 00001101 1300000000 00001111 1500000000 00000000 0(檢驗(yàn)和)01010100 01000101 數(shù)據(jù)01010011 01010100 數(shù)據(jù)

22、01001001 01001110 數(shù)據(jù)01000111 00000000 數(shù)據(jù)和 0(填充)10010110 11101011 求和得出的結(jié)果01101001 00010100 檢驗(yàn)和 153.19.8.104171.3.16.11全 0 17 15 1087 13 15 全 0數(shù)據(jù) 數(shù)據(jù) 數(shù)據(jù) 數(shù)據(jù)數(shù)據(jù) 數(shù)據(jù) 數(shù)據(jù) 全 012 字節(jié)偽首部7 字節(jié)數(shù)據(jù)填充按二進(jìn)制反碼運(yùn)算求和將得出的結(jié)果求反碼兩個(gè)數(shù)進(jìn)行二進(jìn)制反碼求和的運(yùn)算規(guī)則是從低位到高位逐列進(jìn)行計(jì)算。0和0相加是0,0和1相加是1,1和1相加是0但要產(chǎn)生一個(gè)進(jìn)位1,加到下一列。最高位相加后產(chǎn)生的進(jìn)位則進(jìn)到最低位,也就是循環(huán)進(jìn)位。 -20U

23、DP協(xié)議的差錯(cuò)檢測(cè)協(xié)議的差錯(cuò)檢測(cè)10011001 00010011 153.1900001000 01101000 8.10410101011 00000011 171.300001110 00001011 16.1100000000 00010001 0 和 1700000000 00001111 1500000100 00111111 108700000000 00001101 1300000000 00001111 1500000000 00000000 0(檢驗(yàn)和)01010100 01000101 數(shù)據(jù)01010011 01010100 數(shù)據(jù)01001001 01001110 數(shù)據(jù)0

24、1000111 00000000 數(shù)據(jù)和 0(填充)10010110 11101011 求和得出的結(jié)果01101001 00010100 檢驗(yàn)和 153.19.8.104171.3.16.11全 0 17 15 1087 13 15 全 0數(shù)據(jù) 數(shù)據(jù) 數(shù)據(jù) 數(shù)據(jù)數(shù)據(jù) 數(shù)據(jù) 數(shù)據(jù) 全 012 字節(jié)偽首部7 字節(jié)數(shù)據(jù)填充按二進(jìn)制反碼運(yùn)算求和將得出的結(jié)果求反碼-21TCP協(xié)議的差錯(cuò)檢測(cè)協(xié)議的差錯(cuò)檢測(cè)v檢驗(yàn)和字段檢驗(yàn)的范圍包括首部和數(shù)據(jù)檢驗(yàn)和字段檢驗(yàn)的范圍包括首部和數(shù)據(jù)這兩部分。和這兩部分。和UDP用戶數(shù)據(jù)報(bào)一樣,在用戶數(shù)據(jù)報(bào)一樣,在計(jì)算檢驗(yàn)和時(shí),要在計(jì)算檢驗(yàn)和時(shí),要在TCP報(bào)文段的前面報(bào)文段的前面加

25、上加上12字節(jié)的偽首部。偽首部的格式與字節(jié)的偽首部。偽首部的格式與UDP用戶數(shù)據(jù)報(bào)的偽首部一樣。但應(yīng)將用戶數(shù)據(jù)報(bào)的偽首部一樣。但應(yīng)將偽首部第偽首部第6 6個(gè)字段中的個(gè)字段中的17改為改為6(TCP的的協(xié)議號(hào)是協(xié)議號(hào)是6),將第),將第5字段中的字段中的UDP長(zhǎng)度長(zhǎng)度改為改為TCP長(zhǎng)度。長(zhǎng)度。TCPTCP必須進(jìn)行檢驗(yàn)必須進(jìn)行檢驗(yàn)( (UDP可選可選) )。-22前向糾錯(cuò)技術(shù)前向糾錯(cuò)技術(shù)v前向糾錯(cuò):在每個(gè)要發(fā)送的數(shù)據(jù)塊附加足夠的冗前向糾錯(cuò):在每個(gè)要發(fā)送的數(shù)據(jù)塊附加足夠的冗余信息余信息( (糾錯(cuò)碼糾錯(cuò)碼) ),使接收方能夠推導(dǎo)出發(fā)送方實(shí),使接收方能夠推導(dǎo)出發(fā)送方實(shí)際發(fā)送的應(yīng)該是什么樣的比特串。際發(fā)送

26、的應(yīng)該是什么樣的比特串。前面介紹的縱向垂直冗余檢驗(yàn)就具有糾錯(cuò)功能。前面介紹的縱向垂直冗余檢驗(yàn)就具有糾錯(cuò)功能。漢明碼漢明碼(Hamming Code)v一般情況下,使用差錯(cuò)檢測(cè)技術(shù)檢測(cè)出傳輸錯(cuò)誤一般情況下,使用差錯(cuò)檢測(cè)技術(shù)檢測(cè)出傳輸錯(cuò)誤后,通常使用重傳后,通常使用重傳(請(qǐng)求重傳和超時(shí)重傳請(qǐng)求重傳和超時(shí)重傳)的方的方法來(lái)糾正。法來(lái)糾正。 v為什么需要前向糾錯(cuò)為什么需要前向糾錯(cuò)(Forward Error Correction, FEC) ?-23前向糾錯(cuò)技術(shù)前向糾錯(cuò)技術(shù)v在有些場(chǎng)合下,不適合或不能使用重傳的方法,在有些場(chǎng)合下,不適合或不能使用重傳的方法,例如:例如: 很長(zhǎng)的傳輸時(shí)延:很長(zhǎng)的傳輸時(shí)延

27、:例如,例如,空間探測(cè)器與地面控制中心之間的通信,可空間探測(cè)器與地面控制中心之間的通信,可能沒(méi)有足夠的時(shí)間來(lái)重傳能沒(méi)有足夠的時(shí)間來(lái)重傳沒(méi)有反向信道:沒(méi)有反向信道:在單向廣播系統(tǒng)中,根本不能發(fā)送重傳請(qǐng)求。在單向廣播系統(tǒng)中,根本不能發(fā)送重傳請(qǐng)求。 高的比特差錯(cuò)率:高的比特差錯(cuò)率:重傳幀以及請(qǐng)求重傳幀出錯(cuò)的概率都非常高,使得重傳幀以及請(qǐng)求重傳幀出錯(cuò)的概率都非常高,使得重傳難以實(shí)現(xiàn)重傳難以實(shí)現(xiàn) 某些實(shí)時(shí)性應(yīng)用某些實(shí)時(shí)性應(yīng)用發(fā)端的信息無(wú)法存儲(chǔ)發(fā)端的信息無(wú)法存儲(chǔ)-24被保護(hù)對(duì)象的選擇被保護(hù)對(duì)象的選擇v有些協(xié)議中,是對(duì)整個(gè)數(shù)據(jù)單元有些協(xié)議中,是對(duì)整個(gè)數(shù)據(jù)單元(幀、分組、幀、分組、報(bào)文,或統(tǒng)稱為報(bào)文,或統(tǒng)稱為

28、PDU)進(jìn)行檢驗(yàn)和保護(hù),進(jìn)行檢驗(yàn)和保護(hù),v而另一些協(xié)議則只需要對(duì)數(shù)據(jù)單元的首部而另一些協(xié)議則只需要對(duì)數(shù)據(jù)單元的首部(控制控制部分部分)或首部中的某些字段進(jìn)行檢驗(yàn)和保護(hù)?;蚴撞恐械哪承┳侄芜M(jìn)行檢驗(yàn)和保護(hù)。v選擇被保護(hù)對(duì)象的選擇被保護(hù)對(duì)象的主要依據(jù)是:主要依據(jù)是:協(xié)議提供的功能協(xié)議提供的功能下層協(xié)議提供的服務(wù)的特點(diǎn)下層協(xié)議提供的服務(wù)的特點(diǎn)性能上的要求等性能上的要求等 -25思考題思考題1 請(qǐng)說(shuō)明上述協(xié)議采用的差錯(cuò)檢測(cè)方法及選擇的請(qǐng)說(shuō)明上述協(xié)議采用的差錯(cuò)檢測(cè)方法及選擇的被保護(hù)對(duì)象的理由。被保護(hù)對(duì)象的理由。2 是否在所有協(xié)議中,檢驗(yàn)和生成函數(shù)的輸入只是否在所有協(xié)議中,檢驗(yàn)和生成函數(shù)的輸入只有被保護(hù)數(shù)據(jù)

29、?請(qǐng)舉例說(shuō)明,并作出解釋。有被保護(hù)數(shù)據(jù)?請(qǐng)舉例說(shuō)明,并作出解釋。-26差錯(cuò)控制技術(shù)差錯(cuò)控制技術(shù)一、確認(rèn)一、確認(rèn)(Acknowledge) -27確認(rèn)確認(rèn)v確認(rèn)確認(rèn)(ack)是接收者顯式地通知發(fā)送者所發(fā)送的是接收者顯式地通知發(fā)送者所發(fā)送的特定數(shù)據(jù)的接收情況特定數(shù)據(jù)的接收情況v被確認(rèn)的對(duì)象主要有被確認(rèn)的對(duì)象主要有PDU字節(jié)字節(jié)v確認(rèn)的情況:確認(rèn)的情況:已正確到達(dá),已正確到達(dá),還沒(méi)有收到,還沒(méi)有收到,收到但有錯(cuò)收到但有錯(cuò)(相當(dāng)于沒(méi)有收到)相當(dāng)于沒(méi)有收到) -28確認(rèn)確認(rèn)(續(xù)續(xù))v確認(rèn)分為三種類型:確認(rèn)分為三種類型: 肯定確認(rèn)肯定確認(rèn)(Ack)指示數(shù)據(jù)已正確收到指示數(shù)據(jù)已正確收到否定確認(rèn)否定確認(rèn)(Na

30、k)指示數(shù)據(jù)丟失指示數(shù)據(jù)丟失(沒(méi)收到或收到但有錯(cuò)誤)沒(méi)收到或收到但有錯(cuò)誤) 選擇確認(rèn)選擇確認(rèn)(Select Ack)既指示已正確接收的數(shù)據(jù),又指示哪些數(shù)據(jù)還沒(méi)既指示已正確接收的數(shù)據(jù),又指示哪些數(shù)據(jù)還沒(méi)有正確收到有正確收到 -29確認(rèn)確認(rèn)(續(xù)續(xù))v兩種發(fā)送方式:兩種發(fā)送方式:獨(dú)立確認(rèn)獨(dú)立確認(rèn)指用一個(gè)確認(rèn)指用一個(gè)確認(rèn)PDUPDU來(lái)攜帶確認(rèn)信息來(lái)攜帶確認(rèn)信息 獨(dú)立確認(rèn)隨時(shí)可以發(fā)送獨(dú)立確認(rèn)隨時(shí)可以發(fā)送另一種是另一種是捎帶確認(rèn)捎帶確認(rèn)(piggybacking) 將確認(rèn)信息放在數(shù)據(jù)將確認(rèn)信息放在數(shù)據(jù)PDU中發(fā)送中發(fā)送可以提高協(xié)議的效率,但要求接收方有數(shù)據(jù)發(fā)送可以提高協(xié)議的效率,但要求接收方有數(shù)據(jù)發(fā)送時(shí)才

31、能發(fā)送確認(rèn)時(shí)才能發(fā)送確認(rèn)v通常在一種協(xié)議中,這兩種確認(rèn)形式均存在通常在一種協(xié)議中,這兩種確認(rèn)形式均存在。-30確認(rèn)(續(xù))確認(rèn)(續(xù))v 如何標(biāo)識(shí)被確認(rèn)的對(duì)象?如何標(biāo)識(shí)被確認(rèn)的對(duì)象?用被確認(rèn)的用被確認(rèn)的PDU或字節(jié)或字節(jié)的序號(hào)來(lái)標(biāo)識(shí)的序號(hào)來(lái)標(biāo)識(shí)否定和肯定確認(rèn)通常包含一個(gè)序號(hào)否定和肯定確認(rèn)通常包含一個(gè)序號(hào)如果確認(rèn)的語(yǔ)義表示給定序號(hào)之前的所有序號(hào)如果確認(rèn)的語(yǔ)義表示給定序號(hào)之前的所有序號(hào)( (包括或不包括包括或不包括本序號(hào)本序號(hào)) )的數(shù)據(jù)都已被成功接收,則該確認(rèn)又稱為的數(shù)據(jù)都已被成功接收,則該確認(rèn)又稱為累計(jì)確認(rèn)累計(jì)確認(rèn)。 選擇確認(rèn)信息中包含多個(gè)序號(hào),其格式可以有以下幾種:選擇確認(rèn)信息中包含多個(gè)序號(hào),其

32、格式可以有以下幾種: 表。表中含有一組序號(hào),代表丟失的數(shù)據(jù)或代表正確接收的表。表中含有一組序號(hào),代表丟失的數(shù)據(jù)或代表正確接收的數(shù)據(jù)。數(shù)據(jù)。范圍。范圍用序號(hào)區(qū)間來(lái)表示,在區(qū)間內(nèi)的序號(hào)代表丟失的范圍。范圍用序號(hào)區(qū)間來(lái)表示,在區(qū)間內(nèi)的序號(hào)代表丟失的數(shù)據(jù)或者代表正確接收的數(shù)據(jù)。數(shù)據(jù)或者代表正確接收的數(shù)據(jù)。 位圖。用一個(gè)比特組來(lái)表示確認(rèn),其中每一個(gè)比特位代表一位圖。用一個(gè)比特組來(lái)表示確認(rèn),其中每一個(gè)比特位代表一個(gè)序號(hào),它被置位表示它所代表的數(shù)據(jù)已正確收到。此外,個(gè)序號(hào),它被置位表示它所代表的數(shù)據(jù)已正確收到。此外,這種方法還需要一個(gè)序號(hào),指明該位圖的偏移量。這種方法還需要一個(gè)序號(hào),指明該位圖的偏移量。 -

33、31確認(rèn):思考題確認(rèn):思考題3 討論討論TCP協(xié)議采用的確認(rèn)機(jī)制(考慮收到正確數(shù)協(xié)議采用的確認(rèn)機(jī)制(考慮收到正確數(shù)據(jù)、錯(cuò)誤數(shù)據(jù)、數(shù)據(jù)丟失、重復(fù)、失序等情況)據(jù)、錯(cuò)誤數(shù)據(jù)、數(shù)據(jù)丟失、重復(fù)、失序等情況)并分析確認(rèn)機(jī)制的效率。并分析確認(rèn)機(jī)制的效率。4 試分析高速傳輸協(xié)議與低速傳輸協(xié)議所采用的確試分析高速傳輸協(xié)議與低速傳輸協(xié)議所采用的確認(rèn)機(jī)制上的差別(如幀中繼和認(rèn)機(jī)制上的差別(如幀中繼和X.25)。)。-32差錯(cuò)控制技術(shù)差錯(cuò)控制技術(shù)二、計(jì)時(shí)器二、計(jì)時(shí)器(Timer) -33計(jì)時(shí)器計(jì)時(shí)器v為什么需要計(jì)時(shí)器?為什么需要計(jì)時(shí)器?如果攜帶確認(rèn)信息的確認(rèn)如果攜帶確認(rèn)信息的確認(rèn)PDU或數(shù)據(jù)或數(shù)據(jù)PDU丟失,則丟失

34、,則發(fā)送方無(wú)法知道發(fā)送的發(fā)送方無(wú)法知道發(fā)送的PDU的接收情況。的接收情況。 這將導(dǎo)致:這將導(dǎo)致:對(duì)于可靠通信協(xié)議而言,占用發(fā)送方緩存對(duì)于可靠通信協(xié)議而言,占用發(fā)送方緩存由于流量控制而不能發(fā)送新的由于流量控制而不能發(fā)送新的PDU發(fā)送方一直處于等待狀態(tài),死鎖發(fā)送方一直處于等待狀態(tài),死鎖計(jì)時(shí)器:計(jì)時(shí)器:檢測(cè)確認(rèn)檢測(cè)確認(rèn)PDU或重傳請(qǐng)求信號(hào)的丟失或重傳請(qǐng)求信號(hào)的丟失-34計(jì)時(shí)器(續(xù))計(jì)時(shí)器(續(xù))v 計(jì)時(shí)器的超時(shí)值如何設(shè)置?計(jì)時(shí)器的超時(shí)值如何設(shè)置?是一個(gè)非常復(fù)雜和難解決的問(wèn)題,依賴于住返時(shí)間是一個(gè)非常復(fù)雜和難解決的問(wèn)題,依賴于住返時(shí)間(RTT)RTTRTT與網(wǎng)絡(luò)負(fù)載和路由選擇策略有很大的關(guān)系,通常情況下

35、是與網(wǎng)絡(luò)負(fù)載和路由選擇策略有很大的關(guān)系,通常情況下是一個(gè)動(dòng)態(tài)變化的量一個(gè)動(dòng)態(tài)變化的量動(dòng)態(tài)估計(jì)動(dòng)態(tài)估計(jì)往返時(shí)間和重傳計(jì)時(shí)器定時(shí)值的算法往返時(shí)間和重傳計(jì)時(shí)器定時(shí)值的算法MillsMills算法算法(Mills, 1983)(Mills, 1983)EdgeEdge算法算法(Edge, 1984)(Edge, 1984)KarnKarn和和PatridgePatridge的算法的算法(Karn and Patridge, 1987)(Karn and Patridge, 1987)Jacobson/KarelJacobson/Karel的算法的算法(Jacobson, 1988) (Jacobson

36、, 1988) 如果超時(shí)計(jì)時(shí)器的超時(shí)值設(shè)置不當(dāng),如果超時(shí)計(jì)時(shí)器的超時(shí)值設(shè)置不當(dāng),會(huì)導(dǎo)致會(huì)導(dǎo)致過(guò)短,導(dǎo)致連續(xù)大量的數(shù)據(jù)重傳,嚴(yán)重情況下將加劇網(wǎng)絡(luò)擁塞,過(guò)短,導(dǎo)致連續(xù)大量的數(shù)據(jù)重傳,嚴(yán)重情況下將加劇網(wǎng)絡(luò)擁塞,甚至出現(xiàn)擁塞崩潰甚至出現(xiàn)擁塞崩潰 如果超時(shí)值設(shè)置太長(zhǎng),出現(xiàn)數(shù)據(jù)丟失而得不到及時(shí)糾正,則會(huì)如果超時(shí)值設(shè)置太長(zhǎng),出現(xiàn)數(shù)據(jù)丟失而得不到及時(shí)糾正,則會(huì)降低協(xié)議的性能降低協(xié)議的性能 -35計(jì)時(shí)器(續(xù))計(jì)時(shí)器(續(xù))v為了差錯(cuò)控制的目的,一個(gè)協(xié)議中往往存在多個(gè)為了差錯(cuò)控制的目的,一個(gè)協(xié)議中往往存在多個(gè)計(jì)時(shí)器(續(xù))計(jì)時(shí)器(續(xù))TCPTCP協(xié)議:協(xié)議:重傳計(jì)時(shí)器重傳計(jì)時(shí)器:控制丟失的或丟棄的報(bào)文段控制丟失的或丟

37、棄的報(bào)文段 凍結(jié)計(jì)時(shí)器凍結(jié)計(jì)時(shí)器:一條連接一個(gè)凍結(jié)計(jì)時(shí)器。:一條連接一個(gè)凍結(jié)計(jì)時(shí)器。當(dāng)發(fā)送端當(dāng)發(fā)送端的的TCP收到一個(gè)窗口大小為零收到一個(gè)窗口大小為零(讓發(fā)送端停止發(fā)送讓發(fā)送端停止發(fā)送)的確認(rèn)時(shí),就啟動(dòng)凍結(jié)計(jì)時(shí)器。的確認(rèn)時(shí),就啟動(dòng)凍結(jié)計(jì)時(shí)器。 ?;钣?jì)時(shí)器?;钣?jì)時(shí)器:在某些實(shí)現(xiàn)中,用來(lái)防止在兩個(gè)在某些實(shí)現(xiàn)中,用來(lái)防止在兩個(gè)TCP端點(diǎn)端點(diǎn)之間的連接長(zhǎng)期處于空閑之間的連接長(zhǎng)期處于空閑 時(shí)間等待計(jì)時(shí)器時(shí)間等待計(jì)時(shí)器:在連接終止期間使用。當(dāng)在連接終止期間使用。當(dāng)TCP關(guān)關(guān)閉一個(gè)連接時(shí),它并不認(rèn)為這個(gè)連接馬上就真正關(guān)閉一個(gè)連接時(shí),它并不認(rèn)為這個(gè)連接馬上就真正關(guān)閉。在時(shí)間等待期間中,連接還處于一種中間過(guò)渡閉

38、。在時(shí)間等待期間中,連接還處于一種中間過(guò)渡狀態(tài)。狀態(tài)。 -36計(jì)時(shí)器:思考題計(jì)時(shí)器:思考題5 請(qǐng)以請(qǐng)以TCP為例,詳細(xì)討論在設(shè)置計(jì)時(shí)器的超時(shí)為例,詳細(xì)討論在設(shè)置計(jì)時(shí)器的超時(shí)值時(shí)應(yīng)考慮哪些問(wèn)題。值時(shí)應(yīng)考慮哪些問(wèn)題。-37差錯(cuò)控制技術(shù)差錯(cuò)控制技術(shù)三、重傳三、重傳(Retransmit) -38重傳重傳v指發(fā)送者重傳由確認(rèn)所指出的數(shù)據(jù)指發(fā)送者重傳由確認(rèn)所指出的數(shù)據(jù)PDU或重傳或重傳計(jì)時(shí)器超時(shí)未收到確認(rèn)的數(shù)據(jù)計(jì)時(shí)器超時(shí)未收到確認(rèn)的數(shù)據(jù)PDU。v基于滑動(dòng)窗口的重傳方法:基于滑動(dòng)窗口的重傳方法:回退回退n幀幀(Go-back-N) 接收方直接丟棄所有不按序到達(dá)的數(shù)據(jù)接收方直接丟棄所有不按序到達(dá)的數(shù)據(jù)PDU

39、。發(fā)送方從第一個(gè)否定確認(rèn)或超時(shí)時(shí)所指序號(hào)的數(shù)發(fā)送方從第一個(gè)否定確認(rèn)或超時(shí)時(shí)所指序號(hào)的數(shù)據(jù)據(jù)PDU開(kāi)始,重傳所有后續(xù)數(shù)據(jù)開(kāi)始,重傳所有后續(xù)數(shù)據(jù)PDU。 選擇重傳選擇重傳(selective repeat) 發(fā)送方只重傳否定確認(rèn)、選擇確認(rèn)和計(jì)時(shí)器超時(shí)發(fā)送方只重傳否定確認(rèn)、選擇確認(rèn)和計(jì)時(shí)器超時(shí)指出的那些數(shù)據(jù)指出的那些數(shù)據(jù)PDU -39重傳(續(xù))重傳(續(xù))v實(shí)際協(xié)議中的重傳機(jī)制比較復(fù)雜,主要是計(jì)時(shí)實(shí)際協(xié)議中的重傳機(jī)制比較復(fù)雜,主要是計(jì)時(shí)器的超時(shí)間隔很難確定。器的超時(shí)間隔很難確定。 vTCP的重傳機(jī)制的重傳機(jī)制重傳機(jī)制是重傳機(jī)制是TCP中最重要和最復(fù)雜的問(wèn)題之一。中最重要和最復(fù)雜的問(wèn)題之一。TCP每發(fā)送

40、一個(gè)報(bào)文段,就設(shè)置一次計(jì)時(shí)器。只要每發(fā)送一個(gè)報(bào)文段,就設(shè)置一次計(jì)時(shí)器。只要計(jì)時(shí)器設(shè)置的重傳時(shí)間到而還沒(méi)有收到確認(rèn),就要計(jì)時(shí)器設(shè)置的重傳時(shí)間到而還沒(méi)有收到確認(rèn),就要重傳這一報(bào)文段。重傳這一報(bào)文段。TCPTCP的下層往往是一個(gè)互連網(wǎng)環(huán)境。發(fā)送的報(bào)文段的下層往往是一個(gè)互連網(wǎng)環(huán)境。發(fā)送的報(bào)文段可能只經(jīng)過(guò)一個(gè)高速率的局域網(wǎng),也可能經(jīng)過(guò)多個(gè)可能只經(jīng)過(guò)一個(gè)高速率的局域網(wǎng),也可能經(jīng)過(guò)多個(gè)低速率的廣域網(wǎng),并且數(shù)據(jù)報(bào)所選擇的路由也可能低速率的廣域網(wǎng),并且數(shù)據(jù)報(bào)所選擇的路由也可能會(huì)發(fā)生變化會(huì)發(fā)生變化 需要一種動(dòng)態(tài)自適應(yīng)算法需要一種動(dòng)態(tài)自適應(yīng)算法-40差錯(cuò)控制技術(shù)差錯(cuò)控制技術(shù)四、序號(hào)四、序號(hào)(Sequence Num

41、ber) -41序號(hào)序號(hào)v 為什么需要序號(hào)?為什么需要序號(hào)?為了檢測(cè)數(shù)據(jù)為了檢測(cè)數(shù)據(jù)PDU的重復(fù)、失序和丟失,需要對(duì)數(shù)據(jù)的重復(fù)、失序和丟失,需要對(duì)數(shù)據(jù)PDU進(jìn)行進(jìn)行無(wú)二義性的編號(hào),該編號(hào)稱為數(shù)據(jù)無(wú)二義性的編號(hào),該編號(hào)稱為數(shù)據(jù)PDU的序號(hào)的序號(hào)編號(hào)通常是按照請(qǐng)求服務(wù)者傳遞編號(hào)通常是按照請(qǐng)求服務(wù)者傳遞SDU的次序進(jìn)行的。這些的次序進(jìn)行的。這些SDU被被放入放入PDU中進(jìn)行傳輸。中進(jìn)行傳輸。 v 序號(hào)有三種不同的產(chǎn)生方式序號(hào)有三種不同的產(chǎn)生方式:SDU序號(hào)序號(hào):對(duì)每個(gè)對(duì)每個(gè)SDU都編上序號(hào),從都編上序號(hào),從SDU序號(hào)得到序號(hào)得到PDU的序號(hào)。的序號(hào)。如果該如果該SDU被攜帶在多個(gè)數(shù)據(jù)被攜帶在多個(gè)數(shù)據(jù)

42、PDU中時(shí),還應(yīng)附加一個(gè)中時(shí),還應(yīng)附加一個(gè)SDU數(shù)數(shù)據(jù)塊號(hào)據(jù)塊號(hào)PDU序號(hào):對(duì)序號(hào):對(duì)PDU連續(xù)編號(hào),不管它們攜帶的連續(xù)編號(hào),不管它們攜帶的SDU數(shù)據(jù)量。數(shù)據(jù)量。 字節(jié)序號(hào):一個(gè)字節(jié)序號(hào):一個(gè)SDU的每個(gè)字節(jié)都編號(hào),的每個(gè)字節(jié)都編號(hào),PDU的序號(hào)來(lái)自于它的序號(hào)來(lái)自于它所攜帶的所攜帶的SDU的第的第1個(gè)字節(jié)的序號(hào)或最后個(gè)字節(jié)的序號(hào)或最后1個(gè)字節(jié)的序號(hào)。個(gè)字節(jié)的序號(hào)。 -42序號(hào)(續(xù))序號(hào)(續(xù))v一個(gè)重要的問(wèn)題:如何防止序號(hào)重復(fù)?一個(gè)重要的問(wèn)題:如何防止序號(hào)重復(fù)?使用非常大的序號(hào)空間。這個(gè)序號(hào)空間大到使得在數(shù)使用非常大的序號(hào)空間。這個(gè)序號(hào)空間大到使得在數(shù)據(jù)單元從這一端傳送到另一端的最大可能的遲延時(shí)

43、間據(jù)單元從這一端傳送到另一端的最大可能的遲延時(shí)間L L內(nèi),所有從源點(diǎn)發(fā)送出去的新的數(shù)據(jù)單元都具有不內(nèi),所有從源點(diǎn)發(fā)送出去的新的數(shù)據(jù)單元都具有不同的序號(hào)。在開(kāi)始一個(gè)新的連接時(shí),可以使數(shù)據(jù)單元同的序號(hào)。在開(kāi)始一個(gè)新的連接時(shí),可以使數(shù)據(jù)單元的起始序號(hào)為上次連接中最后使用過(guò)的序號(hào)加的起始序號(hào)為上次連接中最后使用過(guò)的序號(hào)加1 1。每次連接開(kāi)始數(shù)據(jù)單元都使用同樣的起始序號(hào),但必每次連接開(kāi)始數(shù)據(jù)單元都使用同樣的起始序號(hào),但必須使新的連接推遲開(kāi)始,如至少在上次的連接釋放后須使新的連接推遲開(kāi)始,如至少在上次的連接釋放后推遲時(shí)間推遲時(shí)間L。 賦給每個(gè)連接一個(gè)標(biāo)號(hào),或者稱為連接序號(hào)。對(duì)于一賦給每個(gè)連接一個(gè)標(biāo)號(hào),或者

44、稱為連接序號(hào)。對(duì)于一個(gè)給定連接中的每一個(gè)數(shù)據(jù)單元都附上連接序號(hào)。當(dāng)個(gè)給定連接中的每一個(gè)數(shù)據(jù)單元都附上連接序號(hào)。當(dāng)新建一個(gè)連接時(shí),就換上一個(gè)新的序號(hào)新建一個(gè)連接時(shí),就換上一個(gè)新的序號(hào)(如如socket)。-43序號(hào)(續(xù))序號(hào)(續(xù))v序號(hào)空間的大小與信道特點(diǎn)、確認(rèn)方法、流量控序號(hào)空間的大小與信道特點(diǎn)、確認(rèn)方法、流量控制方法和制方法和PDU數(shù)據(jù)字段長(zhǎng)度有關(guān)數(shù)據(jù)字段長(zhǎng)度有關(guān)如果信道的質(zhì)量比較好,則序號(hào)空間要求比較大,從如果信道的質(zhì)量比較好,則序號(hào)空間要求比較大,從而可以連續(xù)發(fā)送多個(gè)數(shù)據(jù)單元,提高協(xié)議效率而可以連續(xù)發(fā)送多個(gè)數(shù)據(jù)單元,提高協(xié)議效率采用周期性確認(rèn),序號(hào)空間就不一定要很大采用周期性確認(rèn),序號(hào)空

45、間就不一定要很大在停止等待協(xié)議中,只需要在停止等待協(xié)議中,只需要0 0和和1 1兩個(gè)序號(hào)即可兩個(gè)序號(hào)即可一般來(lái)說(shuō),序號(hào)空間的大小與數(shù)據(jù)字段長(zhǎng)度成反比一般來(lái)說(shuō),序號(hào)空間的大小與數(shù)據(jù)字段長(zhǎng)度成反比v序號(hào)是確認(rèn)和重傳的基礎(chǔ),此外序號(hào)還可用于流序號(hào)是確認(rèn)和重傳的基礎(chǔ),此外序號(hào)還可用于流量控制。量控制。 -44差錯(cuò)控制技術(shù):思考題差錯(cuò)控制技術(shù):思考題6 簡(jiǎn)要說(shuō)明確認(rèn)、計(jì)時(shí)器、重傳、序號(hào)之間的關(guān)簡(jiǎn)要說(shuō)明確認(rèn)、計(jì)時(shí)器、重傳、序號(hào)之間的關(guān)系。系。-45差錯(cuò)控制與協(xié)議層次的關(guān)系差錯(cuò)控制與協(xié)議層次的關(guān)系v從通信和信息處理角度看,物理層、數(shù)據(jù)鏈路層、從通信和信息處理角度看,物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層和運(yùn)輸層屬面向通

46、信部分,因而網(wǎng)絡(luò)中的網(wǎng)絡(luò)層和運(yùn)輸層屬面向通信部分,因而網(wǎng)絡(luò)中的絕大部分差錯(cuò)控制功能要在這幾層中實(shí)現(xiàn)。絕大部分差錯(cuò)控制功能要在這幾層中實(shí)現(xiàn)。v處于不同層次的協(xié)議所采用的差錯(cuò)控制機(jī)制是有處于不同層次的協(xié)議所采用的差錯(cuò)控制機(jī)制是有區(qū)別的。區(qū)別的。-46物理層和數(shù)據(jù)鏈路層協(xié)議物理層和數(shù)據(jù)鏈路層協(xié)議v 物理層和數(shù)據(jù)鏈路層主要處理通信線路引起的傳物理層和數(shù)據(jù)鏈路層主要處理通信線路引起的傳輸錯(cuò)誤,這類錯(cuò)誤大多是隨機(jī)偶然性錯(cuò)誤,一般輸錯(cuò)誤,這類錯(cuò)誤大多是隨機(jī)偶然性錯(cuò)誤,一般通過(guò)檢測(cè)、重傳的方式來(lái)糾正。通過(guò)檢測(cè)、重傳的方式來(lái)糾正。v考慮到物理層一般主要依靠硬件實(shí)現(xiàn),重傳糾錯(cuò)考慮到物理層一般主要依靠硬件實(shí)現(xiàn),重傳糾錯(cuò)比較困難,所以原則上把差錯(cuò)恢復(fù)的任務(wù)交給數(shù)比較困難,所以原則上把差錯(cuò)恢復(fù)的任務(wù)交給數(shù)據(jù)鏈路層來(lái)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論