載波偵聽多址訪問學習筆記

2021-05-22 18:24:48 字數 2937 閱讀 8378

載波偵聽多址訪問

直接進入主題——多址訪問協議。

有兩種型別的網路鏈路:點對點鏈路和廣播鏈路。點對點鏈路有鏈路一端的單個傳送方和鏈路另一端的單個接收方組成。而廣播鏈路能夠有多個傳送和接收節點連線到相同的、單一的、共享的廣播通道。廣播是指當任何乙個節點傳輸一幀時,該通道廣播該幀,從而讓其他節點都可以收到乙個拷貝。這時就會出現多址訪問問題,即協調多個傳送和接收節點對乙個共享廣播通道的訪問的問題。這就是多址訪問協議存在的原因。

多址訪問協議可以分為3類:通道劃分協議、隨機訪問協議和輪流協議。其中隨機訪問協議中有乙個很重要的協議族,即載波偵聽多址訪問(csma),其中帶碰撞檢測的csma(csma/cd)用於有線區域網如乙太網中,而帶碰撞避免的csma(csma/ca)用於無線區域網如802.11中。

首先來了解幾個概念。第乙個是載波偵聽(csma),即在乙個節點在傳輸之前先聽信道,如果來自另乙個節點的幀正往通道上傳輸,該節點於是等待(「回退」)一段隨即時間,然後再偵聽通道。如果偵聽到該通道是空閒的,則該節點開始傳輸。否則,該節點等待另一段隨即時間,繼續重複這個過程。簡單地說就是傳輸前監聽,如果通道空閒,傳送整個幀;如果通道忙,推遲傳送。

csma可分為以下幾類:

(1)非堅持csma

一旦監聽到通道忙(即發現有其他站在傳送資料),就不再堅持聽下去,而是根據協議的演算法延遲乙個隨機的時間後重新再監聽。若進行載波監聽時發現通道空閒,則將準備好的幀傳送出去。

(2)時隙非堅持csma

採用劃分時隙的隨機接入csma協議,協議規定只能在每個時隙開始時才能傳送幀。

(3)1堅持csma

當乙個站點要傳送資料時,首先偵聽通道,看是否有其他站點正在傳送。如果通道正忙,它就持續等待直到它偵聽到通道空閒時,便將資料送出。若發生衝突,站點就等待乙個隨機長的時間,然後重新開始。

(4)p堅持csma

當乙個站點要傳送資料時,首先偵聽通道,看是否有其他站點正在傳送。如果通道正忙,它就持續等待直到它偵聽到通道空閒時,以概率p傳送資料,而以概率(1-p)延遲一段時間τ(網路中最遠的端到端的傳播時延),重新監聽通道。若發生衝突,站點就等待乙個隨機長的時間,然後重新開始。

當然這幾種csma都有自己的缺點:

對於非堅持和時隙非堅持:不能充分利用通道剛剛轉入空閒期的這段時間。

對於1堅持:容易在上述這段時間產生衝突。

對於p堅持:可以在一定程度上克服這些缺點,但卻很難選擇乙個能用於各種通訊量強度的p值。所以在實際網路中常選擇1堅持。

雖然有載波偵聽機制,但是通道傳播時延使得兩個節點可能沒有偵聽到對方的傳輸,所以衝突仍然可能發生,如下圖,在時刻t0,節點b偵聽到通道是空閒的,因此節點b開始沿著廣播**上在兩個方向上傳播它的位元。在時刻t1(t1 > t0),節點d有乙個幀要傳送。儘管節點b在時刻t1正在傳輸,但b傳輸的位元還沒有到達d,所以d在t1偵聽到通道空閒,從而d開始傳輸幀,乙個短暫的時間之後,b的床書開始在d干擾d的傳輸。產生碰撞後,包被損壞,若只進行載波偵聽而不進行碰撞檢測,那麼整個包傳輸時間被浪費 。

於是便有了帶碰撞檢測的載波偵聽(csma/cd),它邊傳輸邊檢測碰撞,發現碰撞後停止傳輸,減少通道浪費。

csma/cd協議工作演算法如下:

(1)介面卡收到來自網路層的資料報,建立幀。

(2)若介面卡檢測到通道空閒(96bit時間),則開始傳輸幀;若檢測到通道忙,就開始等待,直到通道空閒再開始傳輸該幀

(3)若介面卡傳輸了整個幀而沒有檢測到其它介面卡的傳輸,則該介面卡完成該幀的傳輸。

(4)若介面卡在傳輸時檢測到其它介面卡也在傳輸,則停止傳輸,傳送擁塞訊號(48bit)。

(5)中止傳輸後,介面卡進入指數回退階段,在經歷第m次碰撞後,介面卡隨機從中選擇k值。介面卡在等待 k·512位元時間後,返回第2步。

上面的csma/cd適用於有線lan,而csma/ca則適用於無線lan,如802.11無線lan及我們常講的wi-fi。

802.11不採用碰撞檢測的原因主要有

(1)檢測碰撞的能力要求站點具有同時傳送和接收的能力。而802.11介面卡上,接收訊號的強度可能遠遠小於傳送訊號的強度,從而被淹沒,無法檢測到,如果一定要實現,則硬體代價會非常大。

(2)即使站點具備同時傳送和監聽的能力,也會由於隱藏終端和衰減的問題無法檢測到所有的碰撞。

上面提到了隱藏終端的問題,這也是無線鏈路與有線鏈路的區別之一,同時也是使無線網路比有線網路更複雜的原因之一。造成隱藏終端現象的兩個典型是:存在障礙物和訊號衰減。

(1)存在障礙物

如上圖,a和c中間隔著障礙物,使a,c 兩個站點不能互相「聽見」,但b、c以及b、a能夠相互「聽見」,即a,c 不知道他們同時對b傳輸資料時會發生碰撞。

(2)  訊號衰減

如上圖,b、a 能互相「聽見」,b、c 也能互相「聽見」,a、c 因為他們訊號強度的衰減不能檢測到對方的傳輸。

由於無線通道相對較高的位元差錯率,802.11除了載波偵聽外,還使用鏈路層確認/重傳(arq)機制。

如下圖傳送方的工作流程:

(1)如果偵聽到通道閒置了disf 秒,則傳輸整個幀 (無衝突檢測)

(2)如果偵聽到通道忙,則選擇乙個隨機回退值作為定時器的定時時間,並在偵聽通道閒置時遞減該值,通道忙時計數值不變。

(3)定時時間一到且通道空閒就傳送資料。

(4)如果收到確認,且站點要繼續傳送資料,則執行第2步。

(5)如果沒有收到確認( ack),則在更大範圍內選取隨機值, 重複第2步。

接收方的工作流程:

如果幀收到則ok,等待 sifs秒後返回ack (ack是必須的因為隱藏終端問題)。

csma/ca是怎樣實現衝突避免的呢?

其基本思路是思路:  允許傳送方「預約」通道而非隨機訪問,以此來避免長的資料幀衝突。即

(1)傳送方在傳送資料幀之前首先使用 csma協議傳送乙個短的請求傳送rts( request-to-send)幀給ap(接入點):

(2)ap廣播乙個允許傳送cts(clear-to-send)幀響應 rts

(3)rts 和cts被所有節點偵聽到,然後傳送方傳送資料幀,其他站點推遲傳送。

基本過程如下圖:

多域間訪問筆記

多域間訪問 域樹子域 林林的根域 enterprise admins 企業管理組 可以對活動目錄中的整個林做修改 schema admins 架構管理組 可以對活動目錄中的整個林做架構修改 建立林在新林中新建域 建立子域 在現有林中新建域 多域控在現有域中新增域控制器 建立林中域樹 使用高階模式安裝...

多域間訪問筆記

多域間訪問 域樹子域 林林的根域 enterprise admins 企業管理組 可以對活動目錄中的整個林做修改 schema admins 架構管理組 可以對活動目錄中的整個林做架構修改 建立林在新林中新建域 建立子域 在現有林中新建域 多域控在現有域中新增域控制器 建立林中域樹 使用高階模式安裝...

Vue3 0學習筆記 偵聽器Watch

偵聽器 watch watch 偵聽器 可以監聽 data中資料的變化 watch裡面的名字就是用資料的名字 可以接受兩個引數 current 變化後的值 prev 變化之前的值 watch message current,prev watch和computed的區別 computed在頁面渲染的同...