資源描述:
《通訊差錯(cuò)校驗(yàn).doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、本專題概述(第5周)●數(shù)據(jù)鏈路層的幀--差錯(cuò)控制---循環(huán)冗余校驗(yàn)●幀的傳輸控制標(biāo)準(zhǔn)之流量控制—滑動(dòng)窗口協(xié)議●協(xié)議種類與事實(shí)標(biāo)準(zhǔn)回首往事數(shù)據(jù)鏈路層數(shù)據(jù)鏈路層主要是保證數(shù)據(jù)幀的傳輸。幀,一段(塊、團(tuán))由比特流組成的數(shù)據(jù)。為了保證幀傳輸?shù)臏?zhǔn)確進(jìn)行,規(guī)定了:幀的定義(構(gòu)造組成標(biāo)準(zhǔn))、幀的傳輸控制標(biāo)準(zhǔn)(差錯(cuò)控制、流量控制)等。二.幀傳輸差錯(cuò)的發(fā)現(xiàn)1.傳輸差錯(cuò)的來源:電磁干擾、接觸不良。2.傳輸差錯(cuò)的檢測(cè)要求:A.簡(jiǎn)單快速B.易于實(shí)現(xiàn)C.附加的位少D.最好能糾錯(cuò)3.傳輸差錯(cuò)的檢測(cè)方法(1)奇偶校驗(yàn)A.奇校驗(yàn)B.偶校驗(yàn)為了得到偶校驗(yàn)位,發(fā)送方把校驗(yàn)位置1,并使1的總數(shù)(包括校驗(yàn)位)是偶數(shù)。發(fā)送
2、方:原數(shù)據(jù)為1110110(奇數(shù)個(gè)1),轉(zhuǎn)變后實(shí)際發(fā)送的數(shù)據(jù)為11110110(偶數(shù)個(gè)1),在前面插1原數(shù)據(jù)為0110110(偶數(shù)個(gè)1),轉(zhuǎn)變后實(shí)際發(fā)送的數(shù)據(jù)為00110110(偶數(shù)個(gè)1),在前面插0接受方:檢測(cè)數(shù)據(jù)中1的總個(gè)數(shù),為偶數(shù)個(gè)1則認(rèn)為傳輸正確,為奇數(shù)個(gè)1則認(rèn)為傳輸發(fā)生錯(cuò)誤。優(yōu)點(diǎn):A.簡(jiǎn)單快速B.易于實(shí)現(xiàn)C.附加的位少缺點(diǎn):不可靠。如傳輸數(shù)據(jù)中有兩位同時(shí)發(fā)生錯(cuò)誤,則無法判斷是否傳輸出錯(cuò)。例:發(fā)送方:原數(shù)據(jù)為1110110(奇數(shù)個(gè)1),轉(zhuǎn)變后實(shí)際發(fā)送的數(shù)據(jù)為11110110(偶數(shù)個(gè)1)。如果傳輸發(fā)生錯(cuò)誤11110110突變?yōu)?1110000接受方:檢測(cè)數(shù)據(jù)中1的總個(gè)數(shù),為偶
3、數(shù)個(gè)1則認(rèn)為傳輸正確,為奇數(shù)個(gè)1則認(rèn)為傳輸發(fā)生錯(cuò)誤。解決辦法:采用其他方法。(2)用校驗(yàn)和檢測(cè)差錯(cuò)算法描述:step1:把所有的數(shù)據(jù)看成是二進(jìn)制(16進(jìn)制)整數(shù)序列,并把這些整數(shù)序列累加。Step2:把整數(shù)序列累加產(chǎn)生的進(jìn)位再次累加到結(jié)果中。例如:Helloworld.48656C6C6F20776F726C642E4865+6C6C+6F20+776F+726C+642E+進(jìn)位=71FC(4865+6C6C+6F20+776F+726C+642E=271FA,進(jìn)位為2,71FA+2=71FC)優(yōu)點(diǎn):A.簡(jiǎn)單快速B.易于實(shí)現(xiàn)C.附加的位少缺點(diǎn):不能檢測(cè)所有錯(cuò)誤。如傳輸數(shù)據(jù)中有兩位同
4、時(shí)發(fā)生錯(cuò)誤,則無法判斷是否傳輸出錯(cuò)。例:原數(shù)據(jù):出錯(cuò)后變?yōu)椋?0010003000200000003000100010003校驗(yàn)和均為7㊣●(3)用循環(huán)冗余校驗(yàn)(CyclicRedundancyCheck,CRC)檢測(cè)差錯(cuò)g(X)=X^16+X^12+X^5+1優(yōu)點(diǎn):可以檢測(cè)出小范圍內(nèi)出錯(cuò)。例如,突發(fā)性錯(cuò)誤。A、校驗(yàn)原理 循環(huán)冗余碼校驗(yàn)英文名稱為CyclicalRedundancyCheck,簡(jiǎn)稱CRC。它是利用除法及余數(shù)的原理來作錯(cuò)誤偵測(cè)(ErrorDetecting)的。實(shí)際應(yīng)用時(shí),發(fā)送裝置計(jì)算出CRC值并隨數(shù)據(jù)一同發(fā)送給接收裝置,接收裝置對(duì)收到的數(shù)據(jù)重新計(jì)算CRC并與收到的
5、CRC相比較,若兩個(gè)CRC值不同,則說明數(shù)據(jù)通訊出現(xiàn)錯(cuò)誤。B.工作原理(a).把位串看成是系數(shù)為0或1的多項(xiàng)式。一個(gè)K位幀看成是系數(shù)為0或1的K次多項(xiàng)式(從X^K-1到X^0)的系數(shù)序列.例:110001共6位K=6表示成多項(xiàng)式1*X^5+1*X^4+0*X^3+0*X^2+0*X^1+1*X^0多項(xiàng)式系數(shù)1,1,0,0,0,1(b).模2加法或減法運(yùn)算=異或運(yùn)算(相異為1,相同為0)0-0=00-1=11-0=11-1=00+0=00+1=11+0=11+1=00異或0=00異或1=11異或0=11異或1=0(c).發(fā)送方和接收方事先商量好一個(gè)生成多項(xiàng)式g(X)=X^16+X^1
6、2+X^5+1。(d).基本思想:將CRC校驗(yàn)位加在幀的末尾,使這個(gè)帶校驗(yàn)位的幀的多項(xiàng)式能被g(x)除盡(整除)。當(dāng)接收收到帶CRC校驗(yàn)位的幀時(shí),用多項(xiàng)式g(x)去除它(即[帶校驗(yàn)的幀的多項(xiàng)式/多項(xiàng)式g(x)]),如果有余數(shù),則說明數(shù)據(jù)通訊出現(xiàn)錯(cuò)誤。C.計(jì)算CRC校驗(yàn)算法:step1:用乘法。設(shè)多項(xiàng)式g(x)為r階,在幀的末尾附加r個(gè)0,使這個(gè)幀為m+r位,相應(yīng)的多項(xiàng)式為x^r*M(x)step2:用除法。[多項(xiàng)式x^r*M(x)的系數(shù)位串]/[多項(xiàng)式g(x)的系數(shù)位串]step3:用模2減法(異或運(yùn)算)。從多項(xiàng)式x^r*M(x)的系數(shù)位串-余數(shù)。結(jié)果就是要傳送的帶校驗(yàn)位的幀.叫多
7、項(xiàng)式T(x).明顯地,T(x)能被g(x)整除。因?yàn)椋海ū怀龜?shù)-余數(shù))/除數(shù),結(jié)果肯定為整數(shù)(即被整除,無余數(shù))。例如:10/3=3,余1,(10-1)/3=?,結(jié)果肯定為整數(shù)(即被整除,無余數(shù))。例:幀:1101011011M(x)除數(shù):10011g(x)=x^4+x+1r階r=4在幀的末尾附加r=4個(gè)0后形成的串11010110110000x^r*M(x)商1100001010——————————10011)1101011011000010011---------