MAC協(xié)議概述
掃描二維碼
隨時(shí)隨地手機(jī)看文章
介質(zhì)訪問(wèn)控制(medium access control)簡(jiǎn)稱MAC。 是解決當(dāng)局域網(wǎng)中共用信道的使用產(chǎn)生競(jìng)爭(zhēng)時(shí),如何分配信道的使用權(quán)問(wèn)題。它定義了數(shù)據(jù)幀怎樣在介質(zhì)上進(jìn)行傳輸。在共享同一個(gè)帶寬的鏈路中,對(duì)連接介質(zhì)的訪問(wèn)是“先來(lái)先服務(wù)”的。物理尋址在此處被定義,邏輯拓?fù)?信號(hào)通過(guò)物理拓?fù)涞穆窂?也在此處被定義。線路控制、出錯(cuò)通知(不糾正)、幀的傳遞順序和可選擇的流量控制也在這一子層實(shí)現(xiàn)。
局域網(wǎng)的數(shù)據(jù)鏈路層分為邏輯鏈路層LLC和介質(zhì)訪問(wèn)控制MAC兩個(gè)子層。邏輯鏈路控制(Logical Link Control或簡(jiǎn)稱LLC)是局域網(wǎng)中數(shù)據(jù)鏈路層的上層部分,IEEE 802.2中定義了邏輯鏈路控制協(xié)議。用戶的數(shù)據(jù)鏈路服務(wù)通過(guò)LLC子層為網(wǎng)絡(luò)層提供統(tǒng)一的接口。在LLC子層下面是MAC子層。MAC(medium access control)屬于LLC(Logical Link Control)下的一個(gè)子層。局域網(wǎng)中廣泛采用的兩種介質(zhì)訪問(wèn)控制方法,分別是:1、爭(zhēng)用型介質(zhì)訪問(wèn)控制,又稱隨機(jī)型的介質(zhì)訪問(wèn)控制協(xié)議,如CSMA/CD方式。2、確定型介質(zhì)訪問(wèn)控制,又稱有序的訪問(wèn)控制協(xié)議,如Token(令牌)方式。
在CSMA中,由于信道傳播時(shí)延的存在,即使通信雙方的站點(diǎn)都沒(méi)有偵聽(tīng)到載波信號(hào),在發(fā)送數(shù)據(jù)時(shí)仍可能會(huì)發(fā)生沖突,因?yàn)樗麄兛赡軙?huì)在檢測(cè)到介質(zhì)空閑時(shí)同時(shí)發(fā)送數(shù)據(jù),致使沖突發(fā)生。盡管CSMA可以發(fā)現(xiàn)沖突,但它并沒(méi)有先知的沖突檢測(cè)和阻止功能,致使沖突發(fā)生頻繁。一種CSMA的改進(jìn)方案是使發(fā)送站點(diǎn)在傳輸過(guò)程中仍繼續(xù)偵聽(tīng)介質(zhì),以檢測(cè)是否存在沖突。如果兩個(gè)站點(diǎn)都在某一時(shí)間檢測(cè)到信道是空閑的,并且同時(shí)開(kāi)始傳送數(shù)據(jù),則它們幾乎立刻就會(huì)檢測(cè)到有沖突發(fā)生。如果發(fā)生沖突,信道上可以檢測(cè)到超過(guò)發(fā)送站點(diǎn)本身發(fā)送的載波信號(hào)幅度的電磁波,由此判斷出沖突的存在。一旦檢測(cè)到?jīng)_突,發(fā)送站點(diǎn)就立即停止發(fā)送,并向總線上發(fā)一串阻塞信號(hào),用以通知總線上通信的對(duì)方站點(diǎn),快速地終止被破壞的幀,可以節(jié)省時(shí)間和帶寬。這種方案就是本節(jié)要介紹的CSMA/CD(Carrier Sense Multiple Access with Collision Detection,載波偵聽(tīng)多路訪問(wèn)/沖突檢測(cè)協(xié)議),已廣泛應(yīng)用于局域網(wǎng)中。所謂載波偵聽(tīng)(Carrier Sense),意思是網(wǎng)絡(luò)上各個(gè)工作站在發(fā)送數(shù)據(jù)前都要確認(rèn)總線上有沒(méi)有數(shù)據(jù)傳輸。若有數(shù)據(jù)傳輸(稱總線為忙),則不發(fā)送數(shù)據(jù);若無(wú)數(shù)據(jù)傳輸(稱總線為空),立即發(fā)送準(zhǔn)備好的數(shù)據(jù)。所謂多路訪問(wèn)(Multiple Access),意思是網(wǎng)絡(luò)上所有工作站收發(fā)數(shù)據(jù)共同使用同一條總線,且發(fā)送數(shù)據(jù)是廣播式的。所謂沖突(Collision),意思是若網(wǎng)上有兩個(gè)或兩個(gè)以上工作站同時(shí)發(fā)送數(shù)據(jù),在總線上就會(huì)產(chǎn)生信號(hào)的混合,這樣哪個(gè)工作站都辨別不出真正的數(shù)據(jù)是什么。這種情況稱為數(shù)據(jù)沖突,又稱為碰撞。為了減少?zèng)_突發(fā)生后的影響,工作站在發(fā)送數(shù)據(jù)過(guò)程中還要不停地檢測(cè)自己發(fā)送的數(shù)據(jù),看有沒(méi)有在傳輸過(guò)程中與其他工作站的數(shù)據(jù)發(fā)生沖突,這就是沖突檢測(cè)(Collision Detected)。1、CSMA/CD沖突檢測(cè)原理CSMA/CD是標(biāo)準(zhǔn)以太網(wǎng)、快速以太網(wǎng)和千兆以太網(wǎng)中統(tǒng)一采用的介質(zhì)爭(zhēng)用處理協(xié)議(但在萬(wàn)兆以太網(wǎng)中,由于采用的是全雙工通信,所以不再采用這一協(xié)議)。之所以稱之為"載波偵聽(tīng)"("載波"就是承載信號(hào)的電磁波),而不是稱之為"介質(zhì)偵聽(tīng)",那是因?yàn)槿绻橘|(zhì)上正在有載波存在,則證明介質(zhì)處于忙的狀態(tài)(因?yàn)樾盘?hào)或者數(shù)據(jù)不是直接傳輸?shù)?,而是通過(guò)電磁載波進(jìn)行的);如果沒(méi)有載波存在,則介質(zhì)是空閑狀態(tài)。也就是通過(guò)載波的檢測(cè),可以得知介質(zhì)的狀態(tài),而不能直接來(lái)偵聽(tīng)介質(zhì)本身得出其空閑狀態(tài)。
【說(shuō)明】其實(shí)這里偵聽(tīng)的應(yīng)該是"信道",而不是"介質(zhì)"本身,因?yàn)樵谝粭l傳輸介質(zhì)中,可能包含有多條信道,用于不同的傳輸鏈路。前面說(shuō)了,CSMA/CD相對(duì)CSMA來(lái)說(shuō)的進(jìn)步就是具有沖突檢測(cè)功能,隨之問(wèn)題就來(lái)了,CSMA/CD是如何檢測(cè)沖突呢?CSMA/CD的工作原理可以用以下幾句話來(lái)概括:先聽(tīng)后說(shuō),邊聽(tīng)邊說(shuō)。一旦沖突,立即停說(shuō)。等待時(shí)機(jī),然后再說(shuō)。這里的"聽(tīng)"即監(jiān)聽(tīng)、檢測(cè)之意;"說(shuō)"即發(fā)送數(shù)據(jù)之意。具體的檢測(cè)原理描述如下:(1)當(dāng)一個(gè)站點(diǎn)想要發(fā)送數(shù)據(jù)的時(shí)候,它檢測(cè)網(wǎng)絡(luò)查看是否有其他站點(diǎn)正在傳輸,即偵聽(tīng)信道是否空閑。(2)如果信道忙,則等待,直到信道空閑;如果信道空閑,站點(diǎn)就準(zhǔn)備好要發(fā)送的數(shù)據(jù)。(3)在發(fā)送數(shù)據(jù)的同時(shí),站點(diǎn)繼續(xù)偵聽(tīng)網(wǎng)絡(luò),確信沒(méi)有其他站點(diǎn)在同時(shí)傳輸數(shù)據(jù)才繼續(xù)傳輸數(shù)據(jù)。因?yàn)橛锌赡軆蓚€(gè)或多個(gè)站點(diǎn)都同時(shí)檢測(cè)到網(wǎng)絡(luò)空閑然后幾乎在同一時(shí)刻開(kāi)始傳輸數(shù)據(jù)。如果兩個(gè)或多個(gè)站點(diǎn)同時(shí)發(fā)送數(shù)據(jù),就會(huì)產(chǎn)生沖突。若無(wú)沖突則繼續(xù)發(fā)送,直到發(fā)完全部數(shù)據(jù)。(4)若有沖突,則立即停止發(fā)送數(shù)據(jù),但是要發(fā)送一個(gè)加強(qiáng)沖突的JAM(阻塞)信號(hào),以便使網(wǎng)絡(luò)上所有工作站都知道網(wǎng)上發(fā)生了沖突,然后,等待一個(gè)預(yù)定的隨機(jī)時(shí)間,且在總線為空閑時(shí),再重新發(fā)送未發(fā)完的數(shù)據(jù)。CSMA/CD控制方式的優(yōu)點(diǎn)是:原理比較簡(jiǎn)單,技術(shù)上易實(shí)現(xiàn),網(wǎng)絡(luò)中各工作站處于平等地位,不需集中控制,不提供優(yōu)先級(jí)控制。但在網(wǎng)絡(luò)負(fù)載增大時(shí),發(fā)送時(shí)間增長(zhǎng),發(fā)送效率急劇下降2、令牌訪問(wèn)控制工作原理令牌訪問(wèn)控制方法可分為令牌環(huán)訪問(wèn)控制和令牌總線訪問(wèn)控制兩類。已較少采用令牌總線訪問(wèn)控制。