ATM教程:數據鏈路層

  

 【導讀】ATM物理層大體包括了OSI物理層和數據鏈路層,包括功能像OSI物理層的物理介質決定了子層和與數據鏈路功能一樣的傳輸彙集(TC)子層。對於ATM,沒有特殊的物理層特性。相反,是由SONET,FDDI及其他傳輸系統運送ATM信元的。因此,我們這裏將集中於TC子層的數據鏈路功能。

一、ATM中的數據鏈路層

ATM物理層大體包括了OSI物理層和數據鏈路層,包括功能像OSI物理層的物理介質決定了子層和與數據鏈路功能一樣的傳輸彙集(TC)子層。對於ATM,沒有特殊的物理層特性。相反,是由SONET,FDDI及其他傳輸系統運送ATM信元的。因此,我們這裏將集中於TC子層的數據鏈路功能。

當一個應用程序產生了一條要發送的消息後,此消息要進入傳輸線路上,向下傳到ATM協議棧,加上頭部和尾部,並把分段放入ATM信元中。最後,這些信元到達TC子層進行傳輸。讓我們看一下出了門後,在路上所發生的事情。

二、信元傳輸

第一步是進行頭部的校驗和。每個信元都有一個5字節的頭部,頭部中包括4字節的虛擬電路及控制信息和1字節的校驗和。校驗和只包括了前4個頭部字節,而不佔用有效載荷字節。它是由32個頭部位除以多項式x^8+x^2+x+1後,所得的餘數構成的。校驗和加上常數01010101。

做出只校驗頭部的決定,是爲了減少由於頭部錯誤,而造成不正確傳遞信元的可能,也爲了避免其校驗開始要大得多的有效載荷字段的校驗。如果確需校驗有效載荷字段,就要上到較高的層上完成這一功能。由於校驗和字段只位於頭部,因此這8位校驗和字段被稱爲頭部錯誤控制HEC(headererrorcontrol)。

一旦產生出HEC,並插入信元頭部,那麼此信元就作好了發送準備。傳輸手段分成兩組:異步的和同步的。當使用異步方式時,只要準備好了發送它,就可以發送,沒有時間限制。

使用同步方式,信元就必須按照事先確定的時間節拍發送。如果在需要時無數據信元可用,TC子層就必須發明一個,這種信元稱爲空閒信元(idlecell)。

無數據信元的另一種類型是操作和維護OAM(operationandmaitenance)信元。ATM機制也使用OAM信元來交換控制及其他必需的信息,以保證系統的運行。把ATM輸出速率與從事傳輸系統的速率相匹配是TC子層的重要任務。

在接收方,空閒信元在TC子層中進行處理,但OAM信元交給了ATM層。

TC子層的另一項重要任務是:如果有的話,針對從事傳輸的系統,產生成幀信息。比如,一個ATM攝象機在線路上只產生一系列信元,但它也可能用ATM信元產生SONET幀,嵌入SONET有效載荷中。在後一種情況下,TC子層將產生SONET或幀,並把ATM信元打包,這並不完全是一個不必要的步驟,因爲SONET有效載荷不能支持53字節信元的整數倍。

儘管電話公司明確地使用SONET作爲ATM的傳輸系統,但是也可以定義成把ATM對應到其他系統的有效載荷字段,並且這種新幀已在工作。尤其是,映射成T1,T3或FDDI幀也是可以的。
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
三、信元接收

在輸出處,TC子層的工作是取得一系列信元,在每個信元上增加一個HEC,把此結果轉變成比特流,並通過加入OAM信元,將比特流匹配爲進行物理傳輸系統的速率。在輸入處,TC層準確地進行逆變換。它取來到達的比特流,設定信元邊界,確定信元頭(丟棄擁有不合法頭部的信元),處理OAM信元,並把數據信元上傳給ATM層。

最困難的部分是在到來的比特流中設定信元邊界。在某些情況下,進行傳輸的物理層提供了幫助。然而,有時物理層對成幀並不能提供幫助。這時應該怎麼辦?

技巧是使用HEC。隨着比特流到達TC子層,保留一個40位移位寄存器,比特流從左邊進入,右邊出來。TC子層然後審查這40位,看是否可能存在一個合法的信元頭部。如果有,最右邊的8位將是合法的HEC,而最左邊的32位則不是。如果不存在這種情況,則緩衝區沒有存在一個合法信元,在這種情況下,緩衝區中所有的位都向右移動一位,使得後端空出一位,於是一個新的輸入位就加到最左端。不斷重複此過程,直到定位一個合法的HEC。此時,明確了信元邊界,因爲移位寄存器包括了一個有效的頭部。

<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章