日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

CSMA/CD协议分析笔记

發(fā)布時(shí)間:2024/7/19 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CSMA/CD协议分析笔记 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

CSMA/CD協(xié)議分析筆記

CSMA/CD(carrier sense multiple access with collision detection)

文章目錄

  • CSMA/CD協(xié)議分析筆記
  • 前言
  • 一、解讀CS MA / CD
    • CS——“載波監(jiān)聽(tīng)”
    • MA——“多點(diǎn)接入”
    • CD——“碰撞(沖突)檢測(cè)”
  • 二、傳播時(shí)延對(duì)載波監(jiān)聽(tīng)的影響
    • 為什么先聽(tīng)后發(fā)還是會(huì)產(chǎn)生沖突???
    • 端到端往返傳播時(shí)延
  • 三、產(chǎn)生沖突(確定碰撞)后的重傳時(shí)機(jī)
    • 如何確定碰撞后的重傳時(shí)機(jī)??
    • 最小幀長(zhǎng)問(wèn)題
  • 四、強(qiáng)化碰撞
  • 五、要點(diǎn)歸納
      • 1.準(zhǔn)備發(fā)送
      • 2.檢測(cè)信道
      • 3.邊發(fā)送邊監(jiān)聽(tīng)


前言

課程視頻https://www.bilibili.com/video/BV19E411D78Q/?p=35

CSMA/CD協(xié)議,意思是載波監(jiān)聽(tīng)多點(diǎn)接入/碰撞檢測(cè),屬于共享信道中動(dòng)態(tài)媒體接入控制的隨機(jī)接入的協(xié)議,即所有用戶(hù)可以隨機(jī)發(fā)送信息,發(fā)送信息時(shí)占用全部信道帶寬。




CSMA/CD口訣:先聽(tīng)后發(fā);邊聽(tīng)邊發(fā);沖突停止;隨機(jī)重發(fā)


一、解讀CS MA / CD

CS——“載波監(jiān)聽(tīng)”

檢測(cè)信道。不管在發(fā)送前還是發(fā)送后,每個(gè)站都必須不停地檢測(cè)信道,檢查是否有其他的計(jì)算機(jī)在發(fā)送數(shù)據(jù)。

MA——“多點(diǎn)接入”

總線(xiàn)型網(wǎng)絡(luò),即計(jì)算機(jī)以多點(diǎn)接入地方式連接在一根總線(xiàn)上。

CD——“碰撞(沖突)檢測(cè)”

半雙工網(wǎng)絡(luò)“邊發(fā)送邊監(jiān)聽(tīng)”,即適配器邊發(fā)送數(shù)據(jù)邊檢測(cè)信道上地信號(hào)電壓地變化情況,以便于判斷自己在發(fā)送數(shù)據(jù)時(shí)其他站是否也在發(fā)送數(shù)據(jù)。當(dāng)幾個(gè)站同時(shí)在總線(xiàn)上發(fā)送數(shù)據(jù)時(shí),總線(xiàn)上的信號(hào)電壓變化幅度將會(huì)增大(互相疊加),當(dāng)適配器檢測(cè)到地信號(hào)電壓變化幅度超過(guò)一定地門(mén)限值時(shí),就認(rèn)為總線(xiàn)上至少有兩個(gè)站同時(shí)發(fā)送數(shù)據(jù),即產(chǎn)生了沖突或碰撞。




二、傳播時(shí)延對(duì)載波監(jiān)聽(tīng)的影響

為什么先聽(tīng)后發(fā)還是會(huì)產(chǎn)生沖突???

因?yàn)殡姶挪ㄔ诳偩€(xiàn)上總是以有限的速率傳播的。


設(shè)局域網(wǎng)兩端站A和站B相距1km,用同軸電纜相連。電磁波在1km電纜的傳播時(shí)延約為5us。因此,A向B發(fā)出的數(shù)據(jù),在約5us后才能傳送到B。如果B在A發(fā)送的數(shù)據(jù)到達(dá)前發(fā)送數(shù)據(jù),這是B的載波監(jiān)聽(tīng)檢測(cè)不到A發(fā)送的信息,就一定會(huì)在某個(gè)時(shí)間A的幀和B的幀碰撞。產(chǎn)生碰撞之后,A和B分別對(duì)數(shù)據(jù)進(jìn)行差錯(cuò)控制,一定會(huì)檢測(cè)到所接收到的數(shù)據(jù)出現(xiàn)錯(cuò)誤,而碰撞之后接收的數(shù)據(jù)發(fā)生錯(cuò)誤,這兩個(gè)幀都會(huì)變得無(wú)用,A和B站也會(huì)停發(fā)數(shù)據(jù),不讓這個(gè)錯(cuò)誤繼續(xù)下去。

端到端往返傳播時(shí)延

在局域網(wǎng)的分析中,常把總線(xiàn)上的單程端到端傳播時(shí)延記為τ

發(fā)送的數(shù)據(jù)站希望盡早知道是否發(fā)生了碰撞,最多要經(jīng)過(guò)的時(shí)間是兩倍的總線(xiàn)端到端的傳播時(shí)延(2τ),或總線(xiàn)的端到端往返傳播時(shí)延,也稱(chēng)為爭(zhēng)用期/沖突窗口/碰撞窗口


只要經(jīng)過(guò)2τ時(shí)間還沒(méi)有檢測(cè)到碰撞,就能肯定這次發(fā)送不會(huì)發(fā)生碰撞
經(jīng)過(guò)爭(zhēng)用期這段時(shí)間還沒(méi)有檢測(cè)到碰撞,才能肯定這次發(fā)送不會(huì)發(fā)生碰撞。




三、產(chǎn)生沖突(確定碰撞)后的重傳時(shí)機(jī)

以太網(wǎng)使用截?cái)喽M(jìn)制指數(shù)退避算法來(lái)確定碰撞后重傳的時(shí)機(jī)。這種算法讓發(fā)生碰撞的站在停止發(fā)送數(shù)據(jù)后,不是等待信道變成空閑后就立即重新發(fā)送數(shù)據(jù),而是推遲(避讓)一個(gè)隨機(jī)的時(shí)間。

如果幾個(gè)發(fā)生碰撞的站都在監(jiān)聽(tīng)信道,那么都會(huì)同時(shí)發(fā)現(xiàn)信道變成了空閑。如果在此時(shí)都同時(shí)重新發(fā)送,那么一定會(huì)又發(fā)生碰撞

如何確定碰撞后的重傳時(shí)機(jī)??

  • 確定基本推遲時(shí)間為爭(zhēng)用期2τ
  • 定義參數(shù)k,它等于重傳次數(shù),但k不超過(guò)10,即k=min[重傳次數(shù),10]。重傳次數(shù)不超過(guò)10時(shí),k等于重傳次數(shù);當(dāng)重傳次數(shù)大于10時(shí),k就不再增大而一直等于10
  • 從離散的整數(shù)集合[0,1,2k-1]中隨機(jī)取出一個(gè)數(shù),重傳所需要退避的時(shí)間就是r倍的基本推遲時(shí)間,即r * 2τ
  • 當(dāng)重傳達(dá)到16次仍然不成功,說(shuō)明網(wǎng)絡(luò)太擁擠,認(rèn)為此幀永遠(yuǎn)無(wú)法正確發(fā)出,拋棄此幀并向高層報(bào)告出錯(cuò)
  • (1)第一次重傳:k=1,r從{0,1}選;重傳推遲時(shí)間為0或2τ,在這兩個(gè)時(shí)間中隨機(jī)選一個(gè)
    (2)若再次碰撞,則進(jìn)行第二次重傳:k=2,r從{0,1,2,3}選;重傳推遲時(shí)間為0或2τ或4τ或6τ,在這四個(gè)時(shí)間中隨機(jī)選一個(gè)
    (3)若再次碰撞,則進(jìn)行第三次重傳:k=3,r從{0,1,2,3,4,5,6,7}選......;
    (10)若還是碰撞,則進(jìn)行第十次重傳:k=10,r從{0,1,2,......,1022,1023}選......
    (11)若還是碰撞,則進(jìn)行第十一次重傳:k=10,r從{0,1,2,......,1022,1023}選......
    (16)若還是碰撞,說(shuō)明網(wǎng)絡(luò)太擁擠,此時(shí)認(rèn)為此幀永遠(yuǎn)無(wú)法正確發(fā)出,拋棄此幀并向高層報(bào)告出錯(cuò)。
    若連續(xù)發(fā)生多次沖突,就表明可能有較多的站參與爭(zhēng)用信道。使用此算法可使重傳需要推遲的平均時(shí)間隨重傳次數(shù)的增大而增大,因而減小發(fā)生碰撞的概率,有利于整個(gè)系統(tǒng)的穩(wěn)定。

    最小幀長(zhǎng)問(wèn)題

    ——幀的傳輸時(shí)延至少要兩倍的信號(hào)在總線(xiàn)中的傳播時(shí)延——

    %為什么要設(shè)置最小幀長(zhǎng)???%
    如果某一個(gè)站發(fā)送了一個(gè)很短的幀,假定這個(gè)幀在繼續(xù)向前傳播到達(dá)目的站之前和別的站發(fā)送的幀發(fā)生了碰撞,因而目的站點(diǎn)接收到錯(cuò)誤的幀,然后將該幀丟棄。而發(fā)送站不知道這個(gè)幀發(fā)生了碰撞,因而不會(huì)重傳此幀。

    最小幀長(zhǎng)的計(jì)算:

    以太網(wǎng)規(guī)定的最小幀長(zhǎng)為64B,即512bit。凡是長(zhǎng)度小于64B的都是由于沖突而異常終止的無(wú)效幀。只要接收到這種無(wú)效幀,就應(yīng)當(dāng)立即丟棄。

    最小幀長(zhǎng)相關(guān)例題請(qǐng)?zhí)D(zhuǎn)到計(jì)算機(jī)網(wǎng)絡(luò)——CSMA/CD最小幀長(zhǎng)相關(guān)題目

    協(xié)議規(guī)定了基本推遲時(shí)間為爭(zhēng)用期2τ,具體的爭(zhēng)用期時(shí)間是51.2us。對(duì)于10Mbit/s以太網(wǎng),在爭(zhēng)用期內(nèi)可發(fā)送512bit,即64字節(jié),也可以說(shuō)爭(zhēng)用期是512比特時(shí)間。




    四、強(qiáng)化碰撞

    當(dāng)發(fā)送數(shù)據(jù)的站點(diǎn)一旦發(fā)生了碰撞,除了立即停止發(fā)送數(shù)據(jù)外,還需要再繼續(xù)發(fā)送32比特或者48比特的人為干擾信號(hào),以便于讓所有用戶(hù)都知道現(xiàn)在已經(jīng)發(fā)生了碰撞

    T1:A站從發(fā)送數(shù)據(jù)開(kāi)始到檢測(cè)到碰撞并停止發(fā)送的時(shí)間間隔
    T2:A站得知碰撞已經(jīng)發(fā)生時(shí)發(fā)送的強(qiáng)化碰撞的干擾信號(hào)的持續(xù)時(shí)間
    發(fā)生碰撞使A浪費(fèi)的時(shí)間:T1+T2
    整個(gè)信道被占用的時(shí)間:T1+T2+τ

    為了使剛剛收到數(shù)據(jù)幀的目的站點(diǎn)清理接收緩存,做好接收下一幀的準(zhǔn)備,以太網(wǎng)規(guī)定了幀間最小間隔9.6us,相當(dāng)于96比特時(shí)間。




    五、要點(diǎn)歸納

    1.準(zhǔn)備發(fā)送

    在發(fā)送數(shù)據(jù)幀之前,先要檢測(cè)信道。適配器從網(wǎng)絡(luò)層獲得一個(gè)分組,加上以太網(wǎng)的首部和尾部,組成以太網(wǎng)幀,放入適配器的緩存中。

    2.檢測(cè)信道

    若檢測(cè)到信道忙,就不停的檢測(cè)信道,一直等待信道轉(zhuǎn)為空閑。

    若檢測(cè)到信道為空閑,并在96比特時(shí)間內(nèi)信道保持空閑(保證了幀間最小間隔),就發(fā)送這個(gè)幀。

    3.邊發(fā)送邊監(jiān)聽(tīng)

    • 發(fā)送成功
      在爭(zhēng)用期內(nèi)一直未檢測(cè)到碰撞,那么這個(gè)幀肯定能發(fā)送成功。

    • 發(fā)送失敗
      (1)在爭(zhēng)用期內(nèi)檢測(cè)到碰撞,這時(shí)立即停止發(fā)送數(shù)據(jù),按照規(guī)定發(fā)送人為干擾信號(hào)

      (2)適配器執(zhí)行截?cái)喽M(jìn)制指數(shù)退避算法,等待r倍的512比特時(shí)間后,返回步驟2繼續(xù)檢測(cè)信道

      (3)若重傳16次仍不能成功,則停止重傳向上報(bào)錯(cuò)

    以太網(wǎng)每發(fā)完一個(gè)幀,一定要把已發(fā)送的幀暫時(shí)保留一下。如果在爭(zhēng)用期內(nèi)檢測(cè)出發(fā)生了碰撞,那么還要再推遲了一段時(shí)間后再把這個(gè)幀重傳一次。

    總結(jié)

    以上是生活随笔為你收集整理的CSMA/CD协议分析笔记的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。