用於基於電力線載波的介質訪問控制協議的信道訪問方法
2024-01-24 09:47:15 2
專利名稱:用於基於電力線載波的介質訪問控制協議的信道訪問方法
技術領域:
本發明涉及數據通信系統,更具體地說,涉及一種用於基於電力線載波的介質訪問控制(MAC)協議的信道訪問方法。
背景技術:
近年來,整個世界目睹了對各種類型的通信的需求的爆炸性的增長並且可以預測這種需求在將來還會增加。人們期望著電力線載波(PLC)在提供家庭、SOHO以及企業企業環境下的通信方面起主要作用。使用PLC通信的主要的優點之一在於可以在已有的供電設線上進行通信。運行於傳統的LAN纜線上的網絡需要安裝銅線或光纜,這通常要花費大量的人力和物力。然而,因為PLC網絡使用建築物內已有的電力線,所以PLC網絡不需要任何專門的纜線安裝。
另外,在電氣設備工業中存在這樣一種正在增加的趨勢,即使先前獨立的電氣設備,例如傳感器以及照明控制設備,能通過某種類型的通信網絡相互通信。以前,傳感器、開關以及控制設備使用點到點的連接通信。如今,製造商正將通信裝置安裝到這些設備中,以使它們可以通過被構建成一個或多個區域網(LAN)的某些類型的共享介質進行通信。目前有各種商品化的系統,電氣設備的製造商可以將它們集成到其產品中以使得這些設備可以通過網絡通信。一種讓這些設備在其上通信的便利的介質就是電力線,這是因為為了獲取電能,大部分設備都已經連接到了電線系統上。
一種這樣的通信系統是CEBus系統,它最初是由Intellon企業開發的,並且已經被制定為EIA標準,稱為EIA600標準。第二種廣為人知的通信系統是由Echelon企業開發並商品化的LonWorks系統。CEBus和LonWorks系統都通過各種不同的介質通信而指定物理層和鏈路層裝置,所述各種不同的介質包括電力線載波、同軸電纜、光纜、射頻(RF)、紅外(IR)以及雙絞線對電纜。
通用的ISO OSI通信模型規定了7層通信協議棧,包括物理層、鏈路層或介質訪問控制(MAC)層、網絡層、傳輸層、會話層、表示層以及應用層。MAC層以及相關協議的主要作用是提供訪問物理信道的有效方法,在這個例子中,所述的物理信道為電力線。在提供基本的信道訪問的同時,MAC協議還理想地提供(1)用於不同種類的可能的連接的有效和可靠的主機分組和會話傳輸,該不同種類的可能的連接包括單播,多路廣播和廣播;(2)用於連接到網絡的站點的有效編址方案;(3)用於站點分布範圍廣的大型網絡的轉發器功能,以及(4)服務質量的功能。
任何MAC協議的主要功能都是提供有效的信道訪問方法,該方法能實現用於不同種類的可能的連接的有效和可靠的主機分組傳輸,所述的不同種類的可能的實現連接例如是單播、多路廣播以及廣播連接。
一種目前廣泛使用的信道訪問方案被稱做載波偵聽多路訪問(CSMA),它用於以太LAN(IEEE標準802.3)中。一種更新的方案是帶有衝突避免的載波偵聽多路訪問(CSMA/CA),它被用於無線LAN(IEEE標準802.11)中。它們通常用於這樣的網絡中,該網絡包括共享介質,由此多個節點能夠同時訪問同一介質。所述的介質可以是任何可以同時被多個節點共享的物理介質,例如電纜、射頻(RF)、電力線等等。
電力線網絡的特點圖1示出了一個共享網絡的例子。用10來總體地表示的該網絡包括多個通信節點12(節點A到F),它們連接到公共的物理介質14上。一個共享的介質的例子是家庭、辦公室以及企業中可看到的交流電力線配線網。在居住環境中,相鄰住戶的組被通過室外布線連接在一起,這樣形成了巨大的公共介質。由於相互間的感應耦合,所述的感應耦合在某些情況下允許在一個相中傳輸的信號感應到其他相中,因此,信號得以在廣泛的區域中傳播。注意,直到到達變壓器為止,電力線介質始終被共享,在變壓器中由於低的感應耦合,不使用信號耦合器就能向外傳播信號。
共享的介質,例如電力線,通常其特徵在於各種各樣不同的信號傳播條件。在同一個邏輯網絡上的站點可能不能夠自由地相互通信,這樣就產生了隱藏節點的問題,由此,所述的介質的部分對於其他部分來說是不可見的。
基於電力線的網絡的另一個特徵是處於不同的邏輯網絡上的站點可以共享同一個物理網絡。在許多情況下,家庭、企業或其他建築物包括多於一個的通信網絡。每個通信網絡可以包括多個節點,每個網絡包括至少兩個節點。在同一個網絡上的所有節點執行相同的通信技術,並且能相互間通信,這樣就允許相互協作(假設在所述的介質上的傳播條件允許通信)。來自不同網絡的節點能執行不同的通信技術,在這種情況下,它們不能相互間通信。另外,共享介質(諸如電力線網)的傳播特性可以具有很大的變化以及不規律性。這導致了在兩個給定的節點間的通信路徑上產生了大的衰減變化。
因為相鄰的住戶的電力線網被通過電力傳輸網絡物理地連接在一起,所以圖1中的公共介質可以指單個住戶的電力線網絡或幾個相鄰的住戶的電力線網絡(諸如一棟建築中的幾套公寓)。
因此,整個物理網絡是巨大的,可能包括大量的住宅或企業,並且不能被分成小的邏輯單元,諸如單個住宅。這通常是因為,相鄰的住戶被連線,以使處於同一區域的許多住宅或企業電氣連接到設施線的同一相上。
電力線網絡的另一個特徵是信道衰減可能是非均衡的,舉例來說在信號傳播的相反方向上的衰減可能是不同的。換言之,在傳輸的兩端上的站點所看到的阻抗是不同的。這可能在發送和接收過程中產生功率失配或其他的問題。
電力線網絡的又一個特徵是它們本質上是隨意的(ad hoc),這意味著站點可以在任何時間加入或退出網絡。在這種類型的網絡中,沒有在其他良好受控的網絡,例如電信載波廣域網(WAN)、公司網等等中所具有的系統管理員或安裝人員。在這種網絡中不進行校準測量並且每個終端用戶獨立於網絡的其它用戶、也不需要知道網絡的其它用戶地購買和安裝設備。
電力線信道的特徵還在於也以有極大的噪聲和不可靠,這使得儘管近來出現了採用各種形式的闊頻技術的先進的調製方案,電力線依然是一種很難在其中進行高速和遠距離通信的介質。在任意的時刻,網絡上都可能出現任意數量的產生噪聲的設備,諸如白熾光調光器、螢光調光器或其他的電氣設備,這些其它的電氣設備利用產生噪聲的半導體開關元件,例如三端雙向可控矽開關元件、矽控整流器(SCR)、兩端交流開關元件等。其他的製造噪聲的設備包括電鑽、壓縮機等中的電動機等。
傳統的介質訪問控制(MAC)協議在下文中說明一些傳統的MAC協議技術。因為電力線是分布式的環境,所以僅說明分布式的協議和方法。
已有多種公知的信道訪問技術。這些方法中的大部分可以分為下面的兩類(1)中央控制以及(2)分布式控制。在中央控制中,被稱為信道主站點的單個站點控制所有對所述的信道的訪問,並且給網絡中的站點分配信道訪問。在分布式控制中,只要遵守特定MAC協議中制定的訪問規則,全部的站點都可以競爭所述的信道。
一些分布式的信道訪問技術採用後退機制的形式,藉此偵聽到信道忙的站點會後退並且在稍後的時刻再嘗試發送。後退的時間按隨機數目個時隙選定,其中每個時隙表示以高的概率檢測到信道上出現了信號的時間。這典型地是一段相對長的時間並且增加了協議的開銷。
MAC協議也在網絡中採用某種類型的站點編址,以便唯一地識別站點。通常,為此此目的,使用6位元組的MAC地址。MAC地址被用於信道競爭分組內,並且其構成分組大小的很一大部分。例如,基本的信道競爭分組必須至少包含源MAC地址(6位元組)以及目的地MAC地址(6位元組)。在某些MAC控制分組中,例如信道競爭分組,MAC地址可以構成分組內容的超過90%。因為信道競爭分組是最可能在信道上碰撞的分組,所以它們被頻繁地重新發送。這些發送和重新發送構成了佔所有MAC層開銷中的一大部分的開銷。
廣播傳輸是由單個站點發出並且以網絡中的所有站點為目的地的傳輸。在處於邏輯網絡中的所有站點都可以與所有其他站點相互連接的網絡中,為了讓所有的站點接收到所述的傳輸,使用單個廣播傳輸就足夠了。然而如果不是這樣的情況,並且需要所有的站點都接收到所述的廣播傳輸,那麼必須使用更為精巧的廣播傳輸技術。這樣的傳輸方法通常被稱為擴散,並且其是基於由網絡上的許多站點(可能是全部的站點)重複發送最初的廣播發送的。
然而,如果包括多個邏輯網絡的物理網絡非常大,簡單的擴散將使得最初的發送被不必要地發送非常多的次數,這將引起整個物理網絡的擁塞。通過預定一些邏輯網絡並且僅讓處於同一邏輯網絡內的站點重複所述的最初的發送,有可能減少這樣的發送的次數。這種方案的缺點是必須在MAC層中定義不同的邏輯網絡,這在一些應用中是不實際的要求。
多路廣播傳輸是由單個站點向預定的一組站點發送。因為管理來自眾多站點的確認很複雜,所以大部分多路廣播傳輸方法不支持多路廣播傳輸的確認。一種解決方案是指定單個站點,該單個站點將返回確認。這個單個的確認可以被用於部分地確保多路廣播傳輸沒有在信道上發生碰撞。然而它不能確保在該多路廣播組中的所有站點都正確地接收到了所述的發送。這樣就需要一種MAC協議,該協議即便是在不好的信道條件下,也支持來自多路廣播組內的所有的站點的確認。
所述的MAC協議應該還支持不同種類的業務。業務可以分為(1)實時業務,這是對傳輸時間敏感的業務,其中如果傳輸沒有在給定的期間內完成,則該業務實際上已丟失並且可以被丟棄,以及(2)非實時業務,該業務幾乎對傳輸時間不敏感,其中傳輸可以在從主機進行請求後的任意給定的時間期間內完成。
MAC層負責向上層協議提供足夠的服務,這意味著高優先級的業務必須相對於低優先級的業務被給予對信道的優先訪問。MAC協議的一個要求是在後退算法之上提供某種類型的信道訪問優先級。使用連續的後退期間將考慮到基於每種業務類型的信道訪問優先級。它的一個缺點是這將需要大的後退期間,由此每個優先級都需要同樣的為整個網絡計算出的後退的大小,這是因為不知道有多少站點在任意給定的時間以給定的優先級進行發送。這樣大的後退期間將大大地增加MAC層的開銷。
當不是在邏輯網絡中的所有站點都能與同一個邏輯網絡內的其他所有的站點通信時,MAC層應提供某種形式的轉發器能力。這需要網絡中的站點充當源和目的地站點間的中間站點。在選擇源和目的地站點兩者都能通信的適當站點時產生了一個問題。由於網絡狀況總是在變化,所以事先不知道網絡狀況,因此,做進行這樣的選擇是困難的。另外,在隨意網絡中,如電力線網絡中,不知道在網絡中任意給定時刻在線的站點,因而,管理這樣的信息幾乎是不可能的。
MAC協議也應該至少能夠處理大到1500位元組(相當於最大的乙太網幀的大小)以及小到64位元組(相當於最小的乙太網幀的大小)或甚至更小的分組的發送。
一旦捕獲了信道,簡單的MAC協議將在單個發送中傳輸整個分組。這樣做的缺點是可能需要非常長的時間來完成大的分組的傳輸,因此,將引起實時業務被延遲並且最終被丟棄。因此,需要MAC協議允許將原始分組分段成較小的部分,每次一個分段地進行發送,在每段之間,信道應當被釋放,並且將允許其他可能有實時業務的站點進行發送。
在另一方面,因為報頭的開銷以及爭用的開銷是固定的並且不依賴於分組的大小,所以小尺寸的分組將大大地增加MAC層的開銷。因此希望能夠支持大的分組分段以及小的分組積聚,這樣就允許進行數據的有效傳輸。
發明概述本發明是一種新而有用的介質訪問控制(MAC)協議,該協議旨在用於有噪聲的共享介質信道之上。本發明的MAC協議尤其適用於基於電力線的通信系統,但是它也可用於其他介質,例如無線、紅外線、雙絞對線等,並且也可用於其他的應用,例如網絡訪問。所述的MAC協議適用於在不同環境中的電力線上的通信,所述的環境包括家庭、辦公室、企業、工廠等。所述的MAC協議提供一種有效的信道訪問機制,該機制能為任何種類的連接,即單播、廣播以及多路廣播,實現有效且可靠的分組傳輸。
當使用所述的MAC協議以提供在利用共享介質的網絡上的通信服務時,通過加入以下能力,所述的MAC協議與現有技術協議相比,提供了一些優點(1)用於CSMA/CA信道訪問的有效後退機制,(2)有效且簡潔的鏈路編址,所述的編址可以減少長MAC地址的開銷,(3)用於廣播傳輸的具有受控風險(controlled exposure)的擴散方案,(4)採用選擇性的ACK的多路廣播傳輸,(5)採用自適應後退方案的業務優先級劃分的實現,(6)提供第二層轉發器建立過程,以及(7)對短分之的多分組發送以及對長分之的分段發送。
所述的MAC協議包括一些機制,這些機制反映了電力線載波介質的特殊本質和獨特的要求,其中包括用於顯著提高PLC信道的服務質量以及吞吐量的手段。本發明的MAC協議包括下述的要素和特性,包括訪問機制,該機制包括使用RTS/CTS機制的CSMA/CA技術,該要素和特性還包括物理的和虛擬的載波偵聽功能以確保信道上的碰撞數量最少且發送站點和接收站點對信道的捕獲。
所述的協議還包括幀和分組發送,所述的幀和分組發送包括對在一個突發中發送單個乙太網分組的支持,對不用RTS/CTS機制的短分組傳輸的支持,對基於PLC的廣播和多路廣播傳輸的支持,丟棄超時的分組,對幀發送和對廣播和多路廣播幀的ARQ和部分的ARQ,以及對第二層轉發器機制的支持。
所述的協議中還包括服務質量(QoS)的特性,所述的QoS的特性包括多級優先級級別、對信道捕獲的最長時間的限制、基於優先級級別的多個競爭窗口以及無競爭期間,該無競爭期間允許站點在一段延長的期間內控制信道。
管理特性包括通過網絡密鑰分配實現的邏輯網絡定義,使用專門的16位的鏈路地址編址而不是使用兩個48位源和目的地MAC地址編址,支持根據信道的質量對速率和功率的自適應,以及提供由PHY層和MAC層更新的鏈路狀態。
應該注意,本發明的許多方面都可以構建成如下的形式作為固件在嵌入設備中執行的軟體對象、作為運行著,諸如Windows、UNIX、LINUX等作業系統的計算機系統上的軟體應用程式的部分而執行的軟體對象、專用集成電路(ASIC)、現場可編程門陣列(FPGA)或是同等功能的分立的硬體部件。
因此,根據本發明提供了一種在與通信信道相連接的通信收發信機中訪問信道的方法,所述的收發收發信機適合於提供載波偵聽信號,所述的載波偵聽信號包括在發送開始後相對短的時刻產生的快速載波檢測(FCD),所述的FCD具有高的偽報警率並且指示發送可能正在開始,以及在發送開始後相對長的時刻產生的載波檢測(CD)信號,所述的CD信號具有低的偽報警率並且指示發送正在開始,所述方法包括如下步驟在當前發送會話終止後建立信道競爭期間,所述的信道競爭期間被分成多個時隙,每個時隙的寬度大體上與FCD信號的時間相等,以與隨機數目個時隙相等的後退值初始化後退計數器,當介質空閒時減少所述的後退計數器,當收到FCD信號後掛起所述的後退計數器,在一個CD時間內沒有CD信號到達則繼續減少後退計數器,當接收到CD信號時,將推遲發送到下一個競爭期間,並且當後退計數器超時後開始發送。
根據本發明還提供了一種在與通信信道相連的通信收發信機中訪問信道的方法,所述的方法包括如下的步驟在當前發送會話結束後建立一個或多個競爭窗口,為每個競爭窗口分配有優先級並且被細分為多個後退時隙,推遲零個或多個競爭窗口,直到優先級與特定的發送的優先級對應的競爭窗口到達為止,用與隨機數目個後退時隙相等的後退值初始化後退計數器,當介質空閒時減少後退計數器,並且在後退計數器超時後嘗試預留信道。
根據本發明還提供了一種基於載波偵聽多路訪問(CSMA)的通信系統,其中在發送之前是競爭階段,在競爭階段中,一個或多個收發信機競爭對信道的訪問,該一個或多個收發信機包括建立一個或多個競爭窗口的裝置,為每個競爭窗口分配優先級,將每個競爭窗口細分為多個後退時隙的裝置,其中在時隙內檢測到的載波偵聽信號可能指示該信道忙,適於使用後退計數器計數隨機選擇的與多個後退時隙相等的後退時間的後退裝置,以及適於在後退計時器超時後嘗試預留該信道並在成功地預留了信道後開始進行發送的預留裝置。
根據本發明還提供了一種通信收發信機,所述的通信收發信機用於在基於載波偵聽多路訪問(CSMA)幀的通信網絡上發送和接收,在該通信網絡中以競爭幀間隙(CIFS)將幀的發送分隔開,一個或多個節點在CIFS期間競爭對網絡的訪問,所述的收發信機包括耦合電路,所述的耦合電路用於產生在網絡上接收的接收信號,並且還用於發送傳輸信號到網絡上;發射機,所述的發射機適於根據調製方案調製要發送的數據從而從中產生發送信號;接收機,所述的接收機適於按照調製方案解調收到的信號從而從中產生接收數據信號,所述的發射機和接收機還適於產生載波偵聽信號,所述的載波偵聽信號包括在發送開始後相對短的時刻產生的快速載波檢測(FCD),它具有高的偽報警率並指示發送可能正在開始,所述的載波偵聽信號還包括在發送開始後的相對長的時刻產生的載波檢測(CD)信號,它具有低的偽報警率並指示發送正在開始;介質訪問控制(MAC),所述的MAC包括適於如下方面的裝置在當前傳輸會話終止後建立一個或多個競爭窗口,為每個競爭窗口分配一個優先級並且將其細分成多個後退時隙,推遲0或多個競爭窗口,直到優先級與特定發送的優先級對應的競爭窗口到來為止,用與隨機數目個後退時隙相等的後退值初始化後退計數器,當介質空閒時減少所述的後退計數器,並且在後退計數器屆滿後嘗試預留該信道,預留信道成功後,發送到所述的信道上;以及適於控制發射機、接收機以及MAC的操作、並提供在MAC和外部主機之間的接口的處理器。
本發明還提供了一種計算機可讀存儲介質,其上嵌入有電腦程式,用於使適當編程的系統在基於載波偵聽多路訪問(CSMA)幀的通信系統中訪問信道,在該通信系統中,通過使用競爭幀間隙(CIFS)將幀的發送分隔開,當在系統上執行這種程序時,在所述的CIFS期間,一個或多個發射機通過執行下面的步驟競爭對所述的信道的訪問在當前傳輸會話終止後建立一個或多個競爭窗口,每個競爭窗口分配有一個優先級,並且被細分為多個後退時隙;推遲0或多個競爭窗口,直到其優先級與特定發送的優先級對應的競爭窗口到達為止;用與隨機數目個後退時隙相等的後退值初始化後退計數器;在所述的介質空閒時減少所述的後退計數器;在所述的後退計數器屆滿後,嘗試預留所述的信道,並在成功地預留所述的信道後,發送到所述的信道上。
本發明還提供了一種在包含多個站點的網絡上訪問通信信道的方法,所述的方法包括如下的步驟建立一個或多個競爭窗口,所述的多個站點在所述的競爭窗口內競爭對所述的通信信道的訪問;為所述的一個或多個競爭窗口中的每一個分配一個不同的優先級;用與隨機個數的後退時隙相等的後退值初始化後退計數器;並等待直到優先級與特定站點的發送的優先級對對應的競爭窗口到來,並且當所述的介質為空閒時,減少所述的後退計數器,並且在所述的後退計數器屆滿後嘗試預留所述的通信信道。
本發明還提供了一種在包含多個站點的網絡上訪問通信信道的方法,所述的方法包括如下的步驟建立一個或多個競爭窗口,所述的多個站點在所述的競爭窗口內競爭對所述的通信信道的訪問;為所述的一個或多個競爭窗口中的每一個分配一個優先級;用與隨機數目個後退時隙相等的後退值初始化後退計數器;等待直到優先級與特定站點的發送的優先級對應的競爭窗口到來,並在其到來後,當所述的介質為空閒時,減少所述的後退計數器;在後退計數器屆滿後嘗試預留所述的信道;並且將競爭窗口的大小按照在所述的競爭窗口內競爭所述的通信信道的站點的數目的函數進行調節。
本發明還提供了一種在包含多個站點的網絡上訪問通信信道的方法,所述的方法包括如下的步驟建立一個或多個競爭窗口,所述的多個站點在所述的競爭窗口內競爭對所述的通信信道的訪問;按照當前競爭窗口的大小以及從站點被允許發送的時刻直到一個站點開始發送之間的實際時間t的函數估計所述網絡上的站點的數目;按照所述網絡中的站點數目的估計值的函數調節所述的一個或多個競爭窗口中的每一個的大小;並且每個站點將對所述通信信道的預留的嘗試推遲到與特定發送相關聯的競爭窗口到達為止。
本發明還提供了一種在包含多個站點的網絡上訪問通信信道的方法,所述的方法包括如下的步驟每個站點產生指示所述的通信信道忙的虛擬載波偵聽信號;並且當所述的虛擬載波偵聽信號指示當前所述的通信信道忙,且目前正在預留所述通信信道的站點確定將要更新與其會話相關聯的預留計數器時,將包含更新的預留計數器時間的消息發送到該網絡上。
本發明還提供了一種在包含多個站點的網絡上訪問通信信道的方法,所述的方法包括如下的步驟檢測在所述的網絡中的站點間建立的一個或多個會話;在每個站點中為特定站點檢測到的每個會話維護預留計數器,所述的預留計數器保持預留時間;周期性地減少每個預留計數器;並且當具有最大的預留時間的預留計數器屆滿後,就認為所述的通信信道被釋放。
本發明還提供了一種在包括多個站點的基於電力線載波的網絡上訪問通信信道的方法,所述的方法包括如下的步驟建立一個或多個競爭窗口,所述的多個站點在所述的競爭窗口內競爭對所述的通信信道的訪問;為所述的一個或多個競爭窗口中的每一個分配一個不同的優先級;每個站點偵聽所述通信信道看是否有載波信號;每個要發送的站點選擇隨機的後退時間;每個站點等待,直到與其相關聯的優先級與特定站點的發送的優先級對應的競爭窗口到來為止;在具有匹配的優先級的競爭窗口內,等待隨機的後退時間;當所述的後退時間屆滿後,嘗試預留所述的通信信道,並且如果檢測到了載波信號,就暫停倒計時所述的後退時間。
本發明還提供了一種在包含多個站點的網絡上訪問通信信道的方法,所述的方法包括如下的步驟建立一個或多個競爭窗口,所述的多個站點在所述的競爭窗口內競爭對所述的通信信道的訪問;用與隨機數目的後退時隙相等的後退值初始化後退計數器;等待知道與特定發送對應的競爭窗口的到來,並且其到來後,當所述的介質空閒時,減少所述的後退計數器;當所述的後退計數器屆滿後,嘗試預留所述的通信信道;在進行了預定次數的預留所述通信信道的嘗試失敗後,宣布存在隱藏的站點;並且由此增加所述的後退時隙的寬度並且重複初始化、等待並嘗試預留所述的通信信道的步驟。
根據本發明還提供了一種在包含多個站點的網絡上訪問通信信道的方法,所述的方法包括如下的步驟將發送會話分段成多個幀;建立一個或多個競爭窗口,所述的多個站點在所述的競爭窗口內競爭對所述的通信信道的訪問;用與隨機個數的後退時隙相等的後退值初始化後退計數器;等待直到與特定發送對應的競爭窗口的到來,並且在其到來後,當所述的介質空閒時,減少所述的後退計數器;當所述的後退計數器屆滿後,嘗試預留所述的信道一段時間,這段時間要足以發送所述的多個幀;從發送站點向接收站點發送所述的多個幀;並且接收站點向所述的發送站點發送ACK應答,所述的ACK應答包括多個ACK位,每個ACK位指示是否要重發所述的幀中的一個幀。
本發明還提供了一種在包含多個站點的網絡上訪問通信信道的方法,所述的方法包括如下的步驟按照下式估計在通信網絡上的站點的數目Nestimated=CWt-1]]>其中t的期望值為E[t]=CWN+1]]>其中CW代表一個或多個競爭窗口中的每一個,每個站點在CW內隨機地選擇後退時隙,N是在任意給定的時刻競爭所述的信道的站點的數目,t是從站點被允許進行發送的時刻到站點開始發送的實際時間,E(t)是t的期望值。
本發明進還提供了一種在包含多個站點的網絡上訪問通信信道的方法,所述的方法包括如下的步驟從發送站點向接收站點發送消息;接收站點在收到消息後發送確認消息;當發送站點沒有收到所述的確認消息,則發送站點向所述的接收站點發送請求確認(RA)消息;並且當發送站點一直沒有收到所述的確認消息,則發送站點反覆地向所述的接收站點發送RA消息。
僅僅通過示例的方式,在此參考附圖對本發明進行說明,其中圖1是表示了包含多個連接到共享介質,例如電力線上的站點的實例通信系統的框圖;圖2是表示了在每個連接到網絡上的站點中所實現的通信協議棧的參考模型的示意圖;圖3是表示了本發明的MAC協議的數據流模型的示意圖;圖4是表示了本發明的MAC協議的廣播傳輸過程的示意圖;圖5是表示了本發明的MAC協議的多路廣播傳輸過程的示意圖;圖6是表示了本發明的MAC協議的長會話傳輸(LST)的傳輸過程的示意圖;圖7是表示了本發明的MAC協議的短會話傳輸(SST)的傳輸過程的示意圖;圖8是表示了本發明的MAC協議的分段過程的示意圖;圖9是表示了本發明的MAC協議的ACK過程的示意圖;圖10是表示了本發明的MAC協議的ACK方法的流程圖;圖11是表示了圖10中說明的ACK過程中的等待ACK方法部分的流程圖;圖12是表示了圖10中說明的ACK過程中的請求ACK方法部分的流程圖;圖13是表示了本發明的MAC協議的轉發器建立過程的示意圖;圖14是表示了本發明的基於源站點的轉發器方法的流程圖;
圖15是表示了本發明的基於轉發器的轉發器方法的流程圖;圖16是表示了本發明的等待LASR/RSR方法的流程圖;圖17是表示了本發明的等待建立連接方法的流程圖;圖18是表示了被劃分為多個具有優先級的競爭窗口的競爭期間的示意圖;圖19是表示了本發明的被劃分為多個CD和FCD時隙的的競爭窗口的示意圖;圖20A和20B是表示了本發明的MAC協議的後退機制的流程圖;圖21是表示了信道開銷時間相對於競爭窗口大小的示意圖;圖22是表示了本發明的RTS/CTS過程的示意圖;圖23是表示了本發明的RTS方法的流程圖;圖24是表示了本發明的CTS方法的流程圖;圖25是表示了被插入到發送會話之間的幀間隙的示意圖;圖26是表示了控制幀的結構的示意圖;圖27是表示了RTS、CTS以及RA控制幀的淨負荷結構的示意圖;圖28是表示了ACK幀格式的示意圖;圖29是表示了數據幀結構的示意圖;圖30是表示了數據幀的淨負荷報頭部分的結構的示意圖;圖31是表示了數據幀的幀信息欄位的結構的示意圖;圖32是表示了多路廣播的數據幀的淨負荷結構的示意圖;圖33是表示了發送站點的鏈路地址分配方法的流程圖;圖34是表示了接收站點的鏈路地址分配方法的流程圖;圖35是表示了管理幀結構的示意圖;圖36是表示了管理幀的報頭部分結構的示意圖;圖37是表示了管理幀中的管理項部分的結構的示意圖;圖38是表示了適於執行本發明的MAC協議機制的示例性站點的框圖;
表示法和定義以下的表示法和定義在整個文件中適用術語 定義ACK確認ACK_Time ACK發送時間Ack_Timeout直到接收到ACK分組的時間ARQ地址請求ASIC 專用集成電路Backoff後退的當前值Backoff_SlotTime 用於檢測CD的時間BID廣播消息的ID號BID_Length 廣播ID的長度BLA廣播鏈路地址CD 載波檢測CIFS 競爭幀間隙CPU中央處理單元CQ 信道質量CRC循環冗餘校驗CS 載波偵聽CSMA/CD帶有碰撞檢測的載波偵聽多路存取CSMA/CA帶有碰撞避免的載波偵聽多路存取CSR信道探測請求CT 有條件發送CTS清除發送CTS_Time CTS發送時間CTS_Time_Meas 接收機測量出的CTS幀的發送時間CTS_timeout直到接收到CTS分組的時間CW 當前的後退範圍值
CWMax 後退範圍的最大值CWMin 後退範圍的最小值Data_Retries_Threshold 每個會話最多的重試DATA_Time 數據發送時間Data_Time_Meas 接收機測量出的數據幀的發送時間DataNum會話中的數據幀的個數DataNumRetries 數據幀重試的次數DC 數據/控制DecPLRThreshold減少PLR狀態門限Destination正在接收的節點DR 雙倍速率DSP數位訊號處理Dup_Add重複地址,具有相同的邏輯地址的兩個節點Dup_Add_discovered 通知網絡存在Dup_Add的情形EC 建立連接EC_Timeout 直到接收到了EC幀的時間EEROM 電可控只讀存儲器EIA電子工業協會EIFS 擴展的幀間隙EOP分組末尾ErrDataFrame 從特定鏈路上接收到的錯誤的數據幀的個數當由於缺少資源而造成發送失敗時站點等待的FALL_Time 時間FC 失敗的連接FCD快速載波檢測FCS幀校驗序列FPGA 現場可編程門陣列Fragment 幀中所封裝的主機數據中的一部分
FragmentLength最大分段長度FragmentThreshold 處於分段的主機分組的長度限制Frame MAC層中的數據單元,包括所有的報頭、主機數據以及所有報尾幀類型FT幀類型GSR 收集的統計信息響應GT全局時間GTUR 全局時間更新響應HTL 重新發送至成功的跳數IEEE 電氣和電子工程師協會IncPLRThreshold 增加PLR狀態門限IncPLRThreshold 增加PLR狀態門限IR紅外ISO 國際標準化組織LA鏈路地址LAN 區域網LAS 鏈路地址設置LASR 鏈路地址設置響應LASR_Timeout 直到接收到LASR分組的時間LastPL在特定鏈路中使用的最後一個功率水平LastRate 在特定鏈路中使用的最後一個速率LDA 鏈路目的地地址LE鏈路存在LE_interval 鏈路存在的時間間隔LER 鏈路存在響應LSA 鏈路源地址LST 長會話傳輸MAC 介質訪問控制
MAX_HTL用於傳輸廣播消息的最大跳數MAX_LAS_retriesLAS重試的總數MAX_LASR_retries LASR重試的總數MAX_Length 主機分組的最大長度MAX_Packet_Timeout 重新發送至成功的時間的計時器的最大值Max_RA_retries 帶有後退範圍增量的RA重試的總數(默認為3)MAX_Repeater_retries 轉發器過程重試的總數MAX_RS_retries RS重試的總數帶有後退範圍增量的RTS重試的總數(默認為Max_RTS_retries3)MaxFrangNumber 會話中最大的分段數目MD 管理數據MDAMAC目的地地址MLA多播鏈路地址MSAMAC源地址MT 管理類型NACK 否定的確認NeighboredStations 用於收集統計信息的資料庫NID網絡ID用於減少功率水平或增加速率的良好會話的數NumOfGoodSessions目NumOfNodes_Iheard 站點收聽到正在發送的幀的數目OD 初始目的地ODM初始目的地MACOS 初始源OSI開放系統鏈OSM初始源MACPacket 從主機接收到的數據
Packet_Timeout 用於發送主機分組的最大時間PBX專用小型交換機Pending_Timeout持有分組的一部分的時限PL 功率水平PLC電力線載波PLDecThreshold 功率水平減少門限PLIncThreshold 功率水平增加門限PLR功率水平和速率PLR State 功率水平和速率狀態PLR_interval 功率水平和速率間隔PrErrData 錯誤數據幀的百分比QoS服務質量R 速率RA 請求ACKRA_First_retries 沒有增加後退範圍的RA重試的總數(默認為1)RA_TimeRA發送時間RAM隨機存取存儲器RC 轉發器取消RCR轉發器取消轉發器RDecThreshold 速率減少門限RES預留用於確定何時會話中斷的每個ACK的重試次Retries_Threshold 數RF 射頻RGTU 請求全局時間更新RIFS 響應幀間隙RIncThreshold 速率增加門限ROM只讀存儲器RS 轉發器搜索
RSA 轉發器搜索確認RSA_Timeout 直到接收到RSC分組的時間RSR 轉發器搜索響應RSR_Timeout 直到接收到RSR幀的時間RTS 請求發送RTS_First_retries 沒有增加後退範圍的RTS重試的總數(默認為1)RTS_Time RTS發送時間RTS_Transmit_Time RTS幀發送的時間SCR 可控矽整流器SCR 源取消轉發器Session_Timeout 捕獲信道的最大時間SessionCapacity 用字節表示的會話的數據容量SID 會話IDSOHO 小辦公室/家庭辦公室SoundInterval 信道發聲間隔Source正在發送的節點SST 短會話傳輸StatInterval 統計間隔SymbolTime以μs表示的碼元持續的時間Syne_Interval 同步間隔Sync_Interval 連續的滴答之間的時間TotalNumOfRecData 從特定鏈路上接收到的數據幀的總數Transmission Session 按順序發送最多8個幀只用一個確認TSE 時間戳存在TTT 滴答時間VCS 虛擬載波偵聽VLA 有效的鏈路地址WAN 廣域網
具體實施例方式
本發明是一種基於電力線載波(PLC)的介質訪問控制(MAC)協議,該協議旨在用於多種不同類型的通信系統和信道之上。本發明的MAC協議尤其適用於有噪聲的共享介質信道,例如基於電力線載波的通信系統。所述的協議也可以用於其他的介質,例如無線、紅外線、雙絞線對等,也可用於其他的應用,例如網絡訪問。所述的MAC協議適用於在不同環境中的電力線上進行通信,包括家庭、辦公室、企業、工廠等等。所述的MAC協議提供了一種有效的信道訪問機制,它為任何類型的連接實現有效而可靠的分組發送,該任何類型的連接例如為單播、廣播以及多路廣播。
1功能的說明1.1體系結構下面給出本發明的MAC層和鏈路層協議的體系結構的一般性說明,其後是對所述的協議的各種特徵和規定的功能性的更加詳細的說明。應當注意,雖然在基於電力線載波的網絡環境中說明所述的MAC協議,但是並不打算將本發明的範圍進行限制,由此本領域的技術人員也可以將本發明的原理應用於其他類型的網絡以及介質之上。
1.1.1網絡參考模型圖2中示出了在每個連接到網絡上的站點中實現的通信協議棧的參考模型的示意圖。所述的模型包括兩個通信設備22,設備A和設備B。每個設備包括連接到共享介質20(諸如電力線)上的PHY或物理層28由本發明的MAC協議提供的鏈路層26以及表示包括應用層在內的上層24的方框。如帶雙向箭頭的點劃線所表示的,設備A的協議棧中的每個不同的層與設備B的協議棧中相應的層通信。應當注意,上層可以實現(1)在外部的主計算設備中,而MAC和PHY層在為電力線載波通信而優化的數據機裝置中,或(2)與PHY和MAC層實現在同一設備中。
PHY層提供了與介質的物理接口,諸如與電力線的電氣接口。MAC層為主機提供分組傳輸業務,並用做發送由主機提供的數據用以在網絡上通信。主機和MAC之間的協議提供了由主機指示給MAC的對優先級最大的延遲以及安全要求的規定。MAC提供接收到的數據並且向主機回報狀態,這些狀態例如檢測到了鏈路失敗事件。
1.1.2數據流程圖3給出了表示本發明的MAC協議的數據流模型的示意圖。將要發送的數據分組30被從主機發送到MAC。數據分組的長度被限制為MaxLength字節。在操作中,從主機接收的數據分組被分成多個數據段32。然後,這些數據段被封裝上報頭和幀控制序列(FCS)以形成MAC幀34。最多為MaxFragNumber個幀被結合在一起以形成會話,由此組成會話的全部幀被按順序地連續地發送到接收站點。
1.2信道訪問機制信道訪問方法可以分為如下的兩類(1)中央控制,其中單個被稱作為信道主站點的站點控制所有對信道的訪問,並且為網絡中的站點分配信道訪問,以及(2)分布式控制,其中所有的站點在遵守在此處說明的MAC協議中定義的訪問規則的同時競爭信道。
本發明的MAC的基本的訪問方法是被稱為具有隨機後退的帶有碰撞避免的載波偵聽多路訪問(CSMA/CA)的分布式訪問方法。所述的載波偵聽(CS)機制包括由PHY層執行的物理的CS以及由MAC層執行的虛擬CS(VCS)。為了發送,站點選擇隨機的後退間隔,當在分配給待發送的特定優先級類別的幀的競爭窗口期間,介質空閒時,減少所述隨機的後退間隔。僅在分配給等於或小於等待發送的幀的優先級的優先級類別的競爭窗口期間站點減少其後退間隔。當後退計時器屆滿,如果信道仍然空閒,則發送站點就進行發送。如果載波偵聽機制確定出介質忙,則發送被推遲到當前發送之後進行。在下面6.3節中更詳細地說明後退機制。
1.3確定虛擬載波偵聽網絡上的所有站點都實現虛擬的載波偵聽機制以便提高信道訪問的可靠性。基於包含在接收到的幀中的信息設置虛擬載波偵聽。站點使用包含在接收到的幀內的信息來計算出介質的預料的忙狀態,然後將其作為虛擬載波偵聽存儲。總是以來自正確接收到的控制幀(諸如RTS,CTS,ACK,RA)或專用的數據幀中的信息更新所述的虛擬載波偵聽。為了支持同一時刻發生的多個發送,每個站點都基於每個發送維護虛擬載波偵聽,由此將總的虛擬載波偵聽設置為最大。
1.4邏輯網絡邏輯網絡是站點的子集,這些子集就象它們是唯一的獨立的網絡那樣運行。通過加密和網絡密鑰管理提供邏輯網絡的定義。每個邏輯網絡都有其自己的網絡密鑰,這些網絡密鑰起分離屬於不同邏輯網絡的信息的作用。一個站點可以屬於若干邏輯網絡。
1.4.1站點編址使用16位的鏈路地址(LA)定義兩個站點間的鏈路,這樣就可以實現接近216條鏈路。LA用於識別參與傳輸的發射機和接收機。主機使用48位MAC地址從MAC層請求發送。為了支持48位的MAC地址,MAC層創建並維護表,該表表示了MAC地址和LA地址間的映射,下文的8.1節對此有更詳細的說明。
1.5分組傳輸由MAC層從主機層接收的分之經過分段和結合以形成MAC幀和MAC會話。分段是將主機分組分成較小的數據段的過程,而結合是將若干分組組成一個會話的過程。在接收站點,每個會話被拆開並進行分段重組以便恢復原始的主機分組。分組只有在被完全還原後才被傳給主機。
使用兩個參數實現對每個主機分組的管理(1)分組超時,它確定了該分組有效傳輸的最大時間,以及(2)優先級等級。分組傳輸過程在下文第2節中有更詳細的說明。
1.6會話傳輸所述的MAC協議適於支持兩種會話格式長會話傳輸(LST)格式以及短會話傳輸(SST)格式。LST類型的會話由若干數據幀構成,這些數據幀在信道被捕獲後,使用RTS/CTS機制發送。SST類型的會話由單個數據幀構成,該單個數據幀不用預先獲得信道就可以發送。如果分組的大小不超過FragmentThreshold數目個字節,就可以使用SST會話類型,否則就使用LST類型的會話。會話的傳輸時間由SessionTimeout參數加以定界。會話傳輸在下文第3節中有更詳細的說明。
1.7第二層轉發器當源站點在與其目的地進行通信或嘗試進行通信時檢測到了鏈路失敗時,它可以使用中間站點向目的地傳輸幀。所述的中間站點起第二層轉發器的作用。在操作中,包括重新發送在內的整個會話被發送到轉發器站點,然後由此在新的會話中將數據幀傳輸到目的地站點。在下文的第4節中有對第二層轉發器以及轉發器建立過程的更詳細的說明。
1.8廣播和多路廣播本發明的MAC協議適於支持帶有部分ACK或全部ACK選項的廣播和多路廣播傳輸。在假設上層用於過濾該傳輸的情況下,使用廣播傳輸傳送廣播和多路廣播的MAC地址。多路廣播傳輸由具體地識別包括在多路廣播組中的站點而開始。
1.9服務質量所述的MAC協議適於支持使用多個優先級類別,所述的優先級類別限制任何一個站點可以捕獲信道的最長時間(例如會話超時SessionTimeout參數)。按照本發明,在被分配給等於或小於正在等待發送的幀的優先級的優先級類別的競爭窗口期間,站點競爭對信道的控制。依據後退算法執行信道競爭過程,所述的後退算法在下面的第6節中更加詳細地說明。
1.10網絡同步所述的MAC協議還提供了用於網絡同步的機制。所述的網絡同步方案在網絡中的相鄰站點間提供好於8μsec的同步。所述的同步方案在下文的第5節以及2001年3月30提交的、申請號09/822,939的、名稱為「Distributed Synchronization Mechanism For Shared CommunicationsMedia Based Networks」的、具有同一受讓人的美國申請中有更詳細的說明,該美國申請作為整體在此引入作為參考。
1.11信道檢測所述的MAC協議還提供了用於確定網絡上的站點間的鏈路質量的信道檢測機制。通過發送信道檢測類型的管理幀,站點發出信道檢測請求。接收站點以信道檢測響應管理幀應答,該信道探測響應管理幀包括如下的參數1.由PHY層為最後的發送(也就是信道檢測請求)計算出的信道質量(CQ)。
2.最後的StatInterval的平均信道質量(AvgCQ)。
3.在最後的StatInterval秒內發送的數據幀的數目(CS_TxDataCounter),該數據幀包括重新發送。
4.在最後的StatInterval秒內重新發送的受損的數據幀的數目(CS_TxFailCounter)。
1.12統計收集按照所述的MAC協議,每個站點收集內部存儲的傳輸和網絡的統計信息。可以收集和存儲下面的一個或多個數據每條鏈路上失敗的數據幀的百分比;每個優先級發送的數據幀的數目;每個優先級接收到的數據幀的數目;包括每個源的平均信道質量的平均信道質量表;用於向每個站點傳輸的數據速率;以及到每個站點的傳輸功率水平。另外,站點可以使用管理幀從任何其他站點請求統計信息,這在下文的9.3.2.12節中有更詳細的說明。
2分組傳輸2.1傳輸類型所述的MAC協議適於支持三種類型的傳輸單播、廣播和多路廣播。下面的節給出每種傳輸類型的詳細說明。
2.1.1單播傳輸主機通過目的地站點的乙太網MAC地址向MAC層指定單播傳輸。MAC層將MAC地址轉換成鏈路地址(LA),並且在後續的發送中使用所述的LA。下文中的8.1節有對鏈路地址管理的更詳細的說明。按照會話傳輸過程傳輸分組,第3節中有對會話傳輸過程更加詳細的說明。
2.1.2廣播傳輸使用擴散算法實現廣播傳輸,由此網絡中的每個站點都重複所述的廣播傳輸。這確保每個非孤立的站點都將接收到所述的傳輸。在包含大量的站點和邏輯網絡的網絡中,消息將傳播到整個介質。按照本發明,將對廣播傳輸的傳播進行控制,以允許僅將傳輸限定在有限的站點區域內。注意,由於在電力線載波共享介質中的傳輸信號的有限範圍,該網絡可以被看成是重疊的小區的集合。
使用從一個站點到另一個站點所需的跳數的概念實現了對廣播傳輸的傳播的控制。跳數定義為在消息被認為已到達目的地站點之前,源站點及中間站點傳送該消息的最小次數。下面說明了MAC協議的擴散廣播算法。這個可配置的算法使用跳數參數來限制廣播消息的重新發送。
主機使用乙太網廣播MAC地址指定廣播傳輸。使用廣播鏈路地址所述的乙太網廣播MAC地址。廣播會話包括計數器、指示消息被重新發送的最大次數的重新發送至成功的跳數(hops to live)(HTL)欄位,以及唯一地識別所述消息的唯一廣播ID號(BID)。廣播消息還包括源的MAC地址用來允許必要時的響應。
初始的發送站點將HTL計數器初始化為所請求的跳數的最大值。每個接收到該廣播消息的站點將HTL欄位減1,並且如果HTL欄位不為0且該站點沒有預先發送該消息,則重新發送該消息,一個站點僅重新發送一次廣播消息。初始發送站點按照要進行消息廣播的所需區域初始化HTL欄位。每個站點在重新發送之前減少計數器的值。所述的消息被一跳接一跳的重新發送,直到HTL欄位為0為止,這將結束重新發送過程。例如,為1的HTL初始值指示不重新發送,為2的HTL初始值指示允許重新發送1次。
使用BID欄位防止產生死循環,由於死循環已經被廣播的消息總是被相同的站點收聽並重新廣播。初始源從一列未使用的BID值中隨機地選擇BID的值。站點每次接收到廣播消息,它就更新在其列表中的未使用的BID值。使用過的BID值在被釋放並被加入所述的未使用列表之前被作為BID_Timeout保存。
使用帶有廣播鏈路地址的RTS幀實現對信道的競爭,該幀之後緊跟著廣播傳輸。每個重新發送都使用比額定的後退長的後退。源站點在初始化廣播消息之前,使用RTS幀捕獲鏈路。使用廣播鏈路地址發送RTS,其後是廣播消息。
圖4示出了表示對於有5個站點的網絡的本發明MAC協議的廣播傳輸過程的圖。站點1發送初始廣播會話,並按照該會話的期望的傳播區域定義HTL欄位。使用RTS和BLA LA為來自站點1的廣播分組的初始發送預留信道。
站點2和3收聽到初始的廣播會話,它們僅將該會話重新發送一次。站點4和5收聽到該重新發送,它們隨後重新發送該會話。注意,不論從其他站點接收到了幾次該會話,每個站點僅將該會話發送一次。每個站點將複製的會話丟棄。
2.1.3帶有選擇性確認的多路廣播傳輸按照本發明的MAC協議,可以實現多路廣播傳輸,其中源站點可以指定多路廣播組中的哪些站點被要求確認該消息。源站點可以從多路廣播組中按照任何期望的組合選擇0個或多個站點。源站點指定以ACK進行應答的站點,這是通過設置該消息中的位完成的。所述的消息還指示站點應答的順序。
主機通過下面的兩種方式之一指定多路廣播傳輸(1)使用乙太網多路廣播MAC地址(0x01005Exxxxxx)或(2)使用定義了屬於多播組的多個站點(例如16個)的預定多路廣播組。乙太網多播MAC地址被轉換成廣播傳輸並按上述2.1.2節所述進行傳輸。
按如下所述處理預定多路廣播組傳輸。站點使用RTS分組以開始對信道的競爭。使用多路廣播鏈路地址(MLA)發送RTS分組。多路廣播消息緊隨RTS分組之後。多路廣播消息包括組內的站點的數目、這些站點的鏈路地址以及對每個站點來說表示是否需要ACK的位。每個被要求發送ACK的站點按照地址列表中規定的順序發送ACK而不進行後退或競爭。
在下文的2.1.3節中有對多路廣播幀結構的更詳細的說明。
圖5示出了表示對於有5個站點的實例網絡的本發明MAC協議的多路廣播傳輸過程的圖。站點1首先使用RTS/MLA分組為初始的多播傳輸以及任何被要求的ACK的持續時間預留信道。被傳輸的多路廣播消息包括站點2、3、4、5的鏈路地址。該消息還包括ACK請求位,在這個實例中該ACK請求位被設置為『1011』,它指示對站點2、4和5有ACK要求,但對站點3沒有ACK要求。在接收到多路廣播消息後,站點2、4與5以和在初始多路廣播消息中相同的順序發送其ACK分組。
2.2分組超時按照本發明,主機可以向MAC層指示Packet_Timeout,它定義為從主機傳送來的包的所允許的最大傳輸延遲。當Packet_Timeout屆滿後,分組被丟棄而不被傳輸。在主機未指定Packet_Timeout的情況下,使用Default_Packet_Timeout。
當從主機接收到分組時,將Packet_Timeout計時器初始化為Packet_Timeout的值。當到達了預定的門限Packet_Timeout_Threshold後,將分組的優先級增加1,並且使用新的優先級嘗試競爭信道。當Packet_Timeout計時器屆滿後,傳輸被放棄,分組被丟棄。在下文的3.6節中有對傳輸放棄的更加詳細的說明。注意,當使用轉發器時,源站點在會話中的第一個數據幀中發送所述的Packet_Timeout計時器的值。
2.3分組的時間戳為了支持更高層的同步,本發明的MAC協議適於使發送和接收站點能同步到傳輸的MAC的時鐘。為了實現這種同步,當有要求時,發射機的MAC增加時間戳t1到該分組中。接收機MAC在將分組發送給發射機站點之前加入其時間戳到分組中。發射機站點和接收機站點都訪問它們各自的MAC層的時鐘。接收機主機使用下式計算在發射機MAC的時間t=t1-(r2-r1)其中t是在發射機的當前時間;t1是由發射機加入分組中的時間戳;r1是接收機指示何時接收到該分組的時間戳;r2是在接收機的當前時間;
注意,時間戳t1是由發射機如7.5.2.1節所說明的那樣加入到淨負荷的報頭中。
3會話傳輸在所述的MAC協議中,在會話過程中實現站點間的通信。會話定義為兩個站點間邏輯上相關的傳輸,包括競爭幀(RTS/CTS)、數據幀、ACK幀以及任何後續的重試。從主機處接收的分組被結合在一起以形成會話。所述的結合過程考慮到將大的分組分段成多個會話或是將若干小的分組積聚到一個會話。
所支持的兩種類型的傳輸的會話包括長會話傳輸(LST)和短會話傳輸(SST)。在LST會話中,使用RTS/CTS機制捕獲並預留信道。所述的會話包括最多到MaxFragNumber的可變大小的幀,並且包括任何所需的重新發送。在SST會話中,在會話傳輸之前不預留信道。所述的會話包含單個幀,並且包括任何需要的重新發送。分段的大小被限定為FragmentThreshold字節。所述的兩種會話傳輸過程在下面的節中有更詳細的說明。
在發射機,來自主機的輸入數據分組被首先結合為一個或多個MAC會話,並且隨後被分段成多個MAC幀。在接收機,從PHY層接收到的數據被首先從MAC幀中進行分段重組以創建會話,並且隨後被拆成將被傳輸給主機的分組。下面的節中給出了對結合/拆開以及分段和分段重組過程的詳細的說明。
3.1長會話傳輸(LST)過程LST會話可最多包括MaxFragNumber個數據幀,由此使用下面詳述的過程確定每個幀的大小。圖6示出了表示本發明的MAC協議的長會話傳輸(LST)傳輸過程的圖。在競爭幀間隙(CIFS)和後退間隔之後,使用RTS控制幀實現對信道的訪問。響應幀間隙(RIFS)將發送的分組分隔開。在CTS分組後,發送數據幀,其後跟著ACK和任何的重新發送。
3.2短會話傳輸(SST)過程可以使用SST會話以傳輸最多FragmentThreshold字節的會話。SST會話包括單個幀(包括任何所需的重新發送)。以與RTS分組相同的方式使用SST分組以競爭信道,並且在發生碰撞的情況下,使用與RTS幀相同的後退過程。
SST會話可以使用也可以不使用ACK或重新發送過程。如果不使用ACK,那麼就沒有重新發送,並且在傳輸完所述的單個幀後結束會話。注意,在這樣的情況下不可能檢測碰撞。圖7示出了表示本發明的MAC協議的短會話傳輸(SST)傳輸過程的圖。在CIFS和後退間隔之後,使用數據幀本身實現信道訪問。RIFS把發送的分組分隔開。在所述的數據幀之後,目的地用ACK應答,然後是任何的重新發送以及後續的ACK。
3.3結合和拆開按照本發明,結合過程定義為將分組合併及劃分為多個MAC會話的過程。拆開是相反的過程,並且被定義為從接收到的會話中提取分組。輸入的分組被劃分為最長到SessionCapacity的數據會話,Session Capacity是由每個站點按下文所述計算出的參數。
僅對有相同目的地站點的分組進行結合。所述會話的優先級與會話中的分組的最低優先級相等。在每個會話的開頭處加上會話報頭。所述的會話報頭用於拆開該會話並且包含與該會話以及會話中的分組有關的信息。接收機為每個源站點提供至少一個進行中的(pending)分組的支持。在接收到帶有新分組的新會話,並且接收機沒有足夠的資源處理該輸入的分組的情況下,所述的進行中的(pending)分組被丟棄。
3.3.1會話容量計算使用下式計算該SessionCapacity(SC)參數SC=m×n (2)其中n=min(8,QMinFL)--(3)]]>m=min(FL1,FL2) (4)mFL1=max(MinFL,CQFL) (5) 並且其中
n是會話中的數據幀的個數(例如,最多8個);m是分段中的字節數;FL是分段的長度;MinFL是最小的分段大小(例如,64個字節-每個數據幀帶有20%的開銷);Q是排隊等待的數據字節的個數;Session_Timeout是最長會話期間;CQFL是分段的長度,它通過模擬為信道質量的函數來確定並且表示為受損的數據幀的百分比;會話容量計算由各個站點周期性地進行,或是當主機請求時進行。
3.3.2會話報頭會話報頭包含在每個會話的第一個幀內,並且它是長度可變的欄位,其包括會話信息欄位,其後是如下表1所說明的各種任選欄位表1會話報頭欄位格式欄位 位數 定義Session Information8 會話信息BID16 廣播IDHTL8 重新發送至成功的跳數NumOfPacket8 會話中分組的個數Packet Length 116 會話中分組#1的長度···Packet Length N16 會話中分組#N的長度注意,BID和HTL欄位僅用於廣播傳輸,其中傳輸類型為0b11。NumOfPacket和Packet Length欄位僅當LSHV等於1時使用。
3.3.2.1會話信息欄位下表2中說明了會話信息欄位。
表2會話信息欄位格式欄位 位號 位數 定義 值發射機發送『00』,接收機丟棄除了PV 6-7 2 協議版本帶有『00』的分組之外的所有分組結合ID,在每個結合後,按每個LAAID 3-5 3 結合ID順序地循環SID 1-2 2 會話ID會話ID,按每個結合順序地循環0會話在分組結束時結束EOP 0 1 分組結束1會話在分組的中間結束注意,SID起檢測有丟失的會話的作用。如果檢測到了有丟失的會話,就丟棄不完整的分組。EOP位表示會話中的最後一個分組是完整的,並且可以不用等待下一個會話就發送給主機。使用EOP位避免了需要等待下一個會話以確定當前會話中的分組是否結束了。
3.4分段和分段重組本發明的MAC協議包括兩種不同的用於有效的分組傳輸的機制(1)將長的分組分段成較短的數據分段,以確保信道不會被非常長時間地捕獲,這將有礙於足夠的服務質量,以及(2)將一些小的分組合併成較大的數據塊。將分組分段或合併到單個MAC會話(例如,單個無間斷傳輸)被稱為結合過程。拆開定義為從接收到的會話中提取包。
將MAC會話分成多個MAC幀的過程稱為分段,圖3表示了該過程。MAC幀中每個數據分段的大小使用上面說明的公式4計算。將MAC層的數據幀重新合併成單個主機分組的過程定義為分段重組。分段重組在每個接收站點上實現。
結合過程的第一個步驟是將從主機接收到的分組排隊。然後,使用上面的公式2確定每個會話的大小,也稱作會話容量。然後將排在隊列中的內容分段成數據分段,每個分段都封裝上幀頭和幀尾。
圖8更詳細地示出了表示本發明的MAC協議的分段過程的圖。組成會話的多個分組被分段成多個數據幀。從主機分組的分段中產生的數據幀被作為會話中的順序發送而發送,該順序發送即數據幀0、數據幀1等等。
每個MAC幀包括幀(MAC)頭,數據分段以及幀檢驗序列(FCS)。幀頭包含幀索引,幀索引使得會話能從其構成會話的數據幀中進行分段重組。幀被按照最低的幀號到最高的幀號的順序發送,其中幀號值從0開始並且為每個連續的分段增加1。
3.5重新發送過程所述的MAC協議支持ACK和NACK響應作為其重新發送過程的部分。基於每個會話發送ACK和NACK響應。如果會話包括若干幀,那麼響應包括關於會話中每個幀的信息。只要目的地站點接收到了指示要求響應的會話,它就發送適當的響應。響應的發送開始於會話中最後一幀結束後的最多一個RIFS期間,而不管由VCS指示的介質忙狀態。如果沒有接收到會話的最後一幀,則接收站點將不發送ACK響應。
使用ACK控制幀發送ACK或NACK響應,ACK控制幀的結構在7.4.2.2節中有更詳細的說明。ACK幀中的AckBits欄位表示會話中的哪個數據幀出錯。每位表示對一個數據幀的ACK,每個ACK最多響應8幀。值「1」表示負的ACK或NACK,而值「0」表示正的ACK。
如果接收機確定發生了會話中斷(在下面的3.6節中說明),或者它從一個站點接收到了請求ACK(RA),該站點不是該接收機所參與的最後一個會話的發射機,那麼就發送ACK_FAIL幀,而不是發送ACK幀。
發送站點在接收到ARQ響應後所採取的動作列於下面的表3。
表3傳輸響應解決方案響應 解釋 動作(s)ACK 傳輸成功結束會話NACK 在接收機檢測到出重新發送所需的數據幀錯幀,表示壞信道無或攙雜 推斷的碰撞或可能等待ACK_Timeout的時間,並且假設ACK 是壞的信道 所有的幀都沒有接收到,發送帶有計算出的預留的RA幀無對RA的 推斷的碰撞或可能將RA重新發送RA_retries次,然後響應 是壞的信道 發送RA_Fail以釋放信道圖9示出了表示本發明的MAC協議的ACK過程以及重新發送過程的圖。ACK響應時間開始於最後一個數據幀的傳輸結束之後。在這個實例中,目的地節點發送『00010001』的ACK位,這表示對數據幀0和4的NACK。作為響應,源節點向目的地重新發送數據幀0和4。在重新發送後的ACK響應時間內,目的地節點發送剩餘的ACK,例如,『00000000』,它向源節點指示重新發送過程中沒有錯誤。
注意,使用最大的功率水平以及最小的發送速率發送ACK幀,以便實現源正確接收的高可靠性。廣播傳輸不使用MAC層重新發送。多路廣播傳輸使用MAC層重新發送,包括上文中2.1.3節中說明的來自多路廣播組中的每個站點的ACK/NACK響應。
在圖10中示出了表示本發明的MAC協議的ACK方法的流程圖。在最後一個分段被發送(步驟40)後,源等待ACK(步驟42)。接收到ACK或是ACK_FAIL(步驟44)。如果接收到了ACK,則將AckBits與0進行比較(步驟48)並且如果相等(也就是正的ACK),所述的方法成功地終止。如果AckBits不是0(也就是NACK),則重新發送受損的分段(步驟50),並且所述的方法繼續到步驟42。如果接收到了ACK_FAIL(步驟44),則宣布鏈路失敗(步驟46)。
在圖11中示出了表示圖10中說明的ACK過程中的等待ACK方法部分的流程圖。首先,將timeout變量設置為當前的ACK_timeout值(步驟60)。如果timeout沒有屆滿(步驟62),就減少timeout(步驟64),否則執行發送請求ACK方法(步驟68)。如果成功地接收到了ACK(步驟66),則所述的方法終止,否則過程重複步驟62。
在圖12中示出了表示圖10中說明的ACK過程中的請求ACK(RA)方法部分的流程圖。通常,在傳輸完會話中的最後一個幀後,發送站點等待接收ACK幀(步驟70)。如果發送站點沒有接收到ACK幀,則發送站點向接收站點重複發送ACK請求(請求ACK或RA幀)並且等待接收ACK。在發送完RA幀後,發送站點檢查重試的次數是否超過了預定的最大值(max_RA_retries)(步驟72)。如果超過了,就宣布發送失敗並且結束所述的方法(步驟76)。如果沒有超過,發送站點向接收站點發送RA幀(步驟74),然後該站點等待ACK(步驟70)。將這些步驟重複max_RA_retries次或是直到接收到了ACK。
3.6會話中斷在成功地捕獲了信道後,接收機可以響應表4中列出的以下事件中斷會話。
表4會話中斷事件事件說明行動/職責會話超時 在Session_Timeout 在發送NACK之前,接收機確定發送剩餘的之後信道不可捕獲 幀所需的時間是否將超過Session_Timeout。
如果是,其發送ACK_Fail,表示會話中斷。
發射機可通過再次捕獲信道重試發送該會話。
分組超時 分組在MAC層被延 在發送之前,發射機確定發送剩餘的幀所需遲的時間超過了 的時間是否超過了分組超時。如果是,其丟Packet_Timeout 棄該分組。
太多的重 在發送NACK之前,接收機檢查是否超過了新發送Data_Retries_Threshold,如果是,其發送ACK_Fail,表示該會話中斷。發射機應激活PLR過程(見8.2節),在此之後,它可以通過再次捕獲信道重試發送該會話。
當站點確定信道可以被釋放時,站點也可以發送介質釋放消息。可以當虛擬載波偵聽(VCS)信號指示通信信道忙(即通過預留計算),但是不再需要該信道或該信道不能再使用時確定可以釋放信道。介質釋放消息包括預留計數器的更新的值。發送所述的介質釋放消息的站點可以(1)如果發現當前的預留時間太短,則增加預留計數器的值;(2)如果發現當前的預留時間太長,則減少預留計數器的值;或者(3)如果發現不再需要該信道或是該信道不能使用時,將預留計數器的值設置為0以便立即釋放信道。
4.第二層轉發器所述的MAC協議適於提供第二層轉發,第二層轉發是指使用中間站點傳輸的會話。所述的中間站點稱為轉發器。轉發器從初始源站點(OS)接收整個會話,並且隨後將會話重新發送到初始的目的地站點(OD)。
在圖13中示出了表示本發明的MAC協議的轉發器建立過程的示意圖。當源站點檢測到鏈路失敗時,它可以通過發送稱為轉發器搜索(RS)管理幀的專門的廣播消息,來搜索作為第二層轉發器的站點,所述的轉發器搜索(RS)管理幀的重新發送至成功的跳數被設置為0。所述的RS消息包括對轉發器站點的質量要求。接收RS幀並且能夠以高於或等於RS幀中定義的要求的功率水平和速率(PLR)狀態與初始源(OS)站點以及初始目的地(OD)站點連接的站點可以以轉發器搜索響應(RSR)幀進行響應。
OS等待長為Repeater_Search_Timeout的時間後,選擇以最高PLR狀態響應的站點作為其轉發器。在下面的步驟中,建立兩個新的鏈路地址(LA)一個在OS和轉發器之間,一個在轉發器和OD之間。這些LA僅用於通過所述的轉發器的會話傳輸。OS向選出的轉發器發送在OS和轉發器之間分配新的LDA的LAS幀。轉發器向OD發送第二LAS幀,該第二LAS幀在轉發器和OD之間分配新的LDA。
OD站點以給轉發器分配新的LSA的LASR幀響應。當轉發器接收到LASR幀時,它向OS站點發送作為響應給OS分配新的LSA的LASR幀,這樣就完成了轉發器建立過程。如果轉發器在LASR_Timeout時間後沒有從OD站點接收到LASR幀,它就向OS發送指示連接失敗的失敗連接(FC)幀。
當轉發器檢測到與OD站點間的鏈路失敗時,它就向OS和OD發送指示鏈路失敗和終止鏈路地址定義的RF幀。然後OS可以啟動新的轉發器搜索過程以便通過不同的轉發器站點建立連接。如果OS檢測到與轉發器之間的鏈路失敗,它就向所述的轉發器發送源取消轉發器(SCR)幀,並且重新啟動轉發器搜索過程。
OS每隔LE_interval就向OD站點發送鏈路存在(LE)幀。如果源接收到了鏈路存在響應(LER)幀,則源作為響應向轉發器站點發送源取消轉發器(SCR)幀,並且直接與目的地通信,這是因為現在存在有源和目的地之間的直接連接。
注意,可能因為可以用作轉發器的站點在以前既沒有與OS通信也沒有和OD通信,所以OS可能在RSR_Timeout時間後沒有接收到RSR響應幀。在這種情況下,OS廣播一個帶有信道檢測請求(CSR)的新的RS幀,所述新的RS幀的重新發送至成功的跳數(hops to live)欄位被設置為0。接收具有等於或高於所要求的質量的新的RS幀的站點,向OD站點發起CSR並且以RSR幀響應OS,所述的RSR幀包括OD的信道檢測過程的結果。OS等待長為Extended_Repeater_Search_Timeout的時間,此後它選擇有最好的信道檢測的站點,並且啟動轉發器建立過程。
圖14中示出了表示在源站點執行的本發明的轉發器方法的流程圖。由檢測到鏈路失敗的站點觸發所述的轉發器過程(步驟90)。然後發送轉發器搜索幀(步驟92)並且執行等待LASR/RSR方法(步驟94)。如果接收到了RSR,則將LAS發送給所選出的轉發器(步驟96)。然後執行等待建立連接(EC)方法(步驟98)。如果接收到了EC,則開始與轉發器之間的會話(步驟100)。如果沒有接收到EC,那麼如果repeater_retries超過了max_repeater_retries(步驟108),就選擇新的轉發器(步驟110)並且該方法繼續到步驟96,否則嘗試另一個RS重試並且該方法繼續到步驟92。
如果沒有接收到RSR(步驟94),那麼如果重試超過了max_RS_retries(步驟102),則宣布鏈路失敗(步驟106),否則增加重試數(步驟104),並且嘗試另一個RS重試,並且該方法繼續到步驟92。
圖15示出了表示在轉發器上執行的本發明的轉發器方法的流程圖。首先接收RS幀(步驟120)。如果源和目的地上的PLR狀態不高於最小值(步驟122),則終止所述的方法。否則,發送RSR(步驟124)。如果沒有接收到LAS(步驟126),該站點可以象上述解釋的那樣嘗試廣播CSR。否則發送RC幀(步驟128),並且執行等待LASR/RSR方法(步驟130)。如果沒有接收到LASR,那麼如果重試沒有超過max_RC_retries(步驟142),則增加重試(步驟144)並且嘗試另一個RC發送,繼續到步驟128。否則向源發送EC被設置為1的EC幀(步驟146),並且終止所述的方法。
如果接收到了LASR幀(步驟130),則向目的地發送LAS幀(步驟132),並且向源發送EC被設置為0的EC幀(步驟134)。然後從源接收會話(步驟136),並且與目的地進行所述的會話(步驟138)。如果沒有發生鏈路失敗(步驟140),則所述的方法返回,否則向源發送EC被設置為1的EC幀(步驟146)並且該方法返回。
圖16示出了表示本發明的等待LASR/RSR方法的流程圖。timeout首先被設置為RSR/LASR_Timeout的值(步驟150)。如果timeout屆滿(步驟152),則所述的方法返回沒有接收到LASR/RSR(步驟160)。否則減少timeout(步驟154)並且然後檢查是否接收到了LASR或RSR幀(步驟156)。如果接收到了,則該方法返回接收到的LASR/RSR(步驟158)。
圖17示出了表示本發明的等待建立連接方法的流程圖。timeout首先被設置為EC_Timeout的值(步驟170)。如果timeout屆滿(步驟172),則所述的方法返回沒有接收到EC(步驟180)。否則,減少timeout(步驟174),並且然後檢查是否接收到了EC幀(步驟176)。如果接收到了,則該方法返回接收到的EC(步驟178)。
5.網絡同步所述的MAC協議適於使用下述的方案來可選擇地提供網絡同步。每個站點都維護全局時間(GT)計數器以記數到下一個滴答的時間。滴答的時間長度是Tick_Interval秒長。如果GT從下一個滴答開始小於Sync_Interval,則站點在信道訪問期間將使用長RTS/CTS幀,由此發送站點用GT-RTS_Transmit_time-CTS_Transmit_Time值更新長RTS幀的time to tick(TTT)欄位。目的地站點用包含相同TTT值的長CTS幀響應。接收到所述的長RTS的站點用TTT+CTS_Transmit_Time更新它們的GT。接收到長CTS的站點用接收到的TTT值更新它們的GT。注意,TTT的值是從所述的控制幀的最後一位開始測量的。
在初始化後,站點等待1秒鐘以便接收GT更新,此後,站點使用請求GT更新(RGTU)管理幀發送請求以便接收GT更新。如果該幀有有效的LA,則該幀使用單播傳輸來發送。否則,其就使用重新發送至成功的跳數(hops to live)被設置為0的廣播傳輸。接收站點(單播或廣播)以GT更新響應(GTUR)管理幀響應。
6.介質共享按照本發明,使用一種修改過的帶有隨機後退的CSMA/CA機制實現介質共享。由MAC協議實現的介質共享使用下述的機制虛擬載波偵聽(VCS)以及物理載波偵聽(PCS)、信道預留、後退和幀間隙。下面的節中將詳細說明每種機制。
注意,信道可以處於下面的3種狀態之一(1)忙-指示由VCS或PCS指示正在處理會話,(2)競爭期間-指示會話已經結束且信道不忙(站點可以以遞減的優先級的順序競爭信道)以及(3)空閒-如果在競爭期間結束時沒有開始發送,則信道被定義為處於空閒狀態。
6.1虛擬載波偵聽機制MAC協議使用物理和虛擬載波偵聽功能來確定信道的狀態。信道可以處於3種狀態之一忙、競爭或空閒。物理載波偵聽(PCS)是由PHY層提供的。虛擬載波偵聽(VCS)是由MAC層提供的。當PCS或VCS指示信道忙時,就認為該信道忙。否則該信道就處於競爭或空閒狀態。
在當前傳輸會話期間,可以根據由發射機或接收機發送的幀中所指示的預留時間來增加或減少VCS。站點可以僅當VCS是0(也就是介質不忙)並且物理載波偵聽為空閒時開始發送過程,這指示信道不忙。
每個接收站點為每個與它沒有參與的會話相關聯的LA對記錄預留計數器,並且在會話過程中適當地更新所述的計數器。VCS被設置為所有預留計數器的最大值。
表5列出了一些幀,這些幀使VCS按照它們中所規定的預留時間進行更新。
表5設置VCS計時器接收幀類型新的預留計時器的值SST數據幀 該幀中的預留欄位RTS RTS中的預留欄位CTS CTS中的預留欄位-CTS傳輸時間ACK ACK幀中的預留欄位RA RA幀中的預留欄位LST的第一數據幀 數據幀中的預留欄位-幀傳輸時間第一個重新發送的數據幀 數據幀中的預留欄位-幀傳輸時間沒接收到RTS、CTS幀或第一數據(會話中數據幀的個數-幀索引)*數幀的LST的數據幀 據幀的長度+CIFS站點叫醒EIFSCRC8錯誤的幀不變CRC16錯誤且沒有來自規定的LA EIFS的預留幀6.2信道競爭期間所述的MAC協議實現了基於優先級的信道訪問方法,所述的方法可以使用任意數量的優先級等級實現。所述的方法具有能夠適應信道上的業務內容的優點。下面是對分優先級的信道訪問方法的詳細說明。僅僅是出於說明的目的,使用包含4個優先級等級的實例說明該方法。注意,本發明並不旨在限於該實例,因為本領域技術人員可以使用在此公開的原理和方法實現任何數量的優先級等級。
圖18示出了表示被分成多個分優先級的競爭窗口的競爭期間的圖。所述的競爭期間被劃分為4個競爭窗口。站點在被分配給等於或小於等待發送的分組的優先級的優先級類別的競爭窗口期間競爭對信道的控制。按照下面說明的後退算法實現對信道的競爭。在較高優先級的競爭期間內,站點並不激活它們的後退過程並且並不減少它們的後退計數器。所述的競爭窗口按遞減的優先級順序排序,由此優先級3最高而優先級0最低。這種技術確保按照遞減的優先級的順序發送分組。
每個優先級等級的競爭窗口的大小取決於(1)在同一優先級等級中發送的站點的數量,以及(2)信道上發生的碰撞的數量。每個站點按照6.4節中說明的方法計算每個優先級等級的競爭窗口的大小。
注意,上面說明的方法是有效的並且是健壯的,它並不需要網絡中的站點間的全局同步。在站點使用不同的競爭窗口大小的情況下,較低優先級的幀被先於較高優先級的幀發送的可能性是非常低的,這是因為站點僅在等於或小於它們自身的優先級的優先級類別期間減少它們的後退計數器。這種特性在基於PLC的網絡中尤其重要,在這種網絡中物理介質包括大量的、使用同一信道的、部分重疊的小區。通過使得站點間有微小的差別,可以提供從一個小區到下一個小區的逐漸的變化。
在當前會話結束後,信道從忙轉變到競爭期間CIFS,這是由從忙轉變到空閒的VCS和PCS或是由該站點剛剛參與的會話的結束所指示的。
在優先級與等待發送的幀相關聯的競爭窗口開始的時候,啟動下面說明的後退算法。當後退計數器達到0時,站點開始競爭信道。站點通過嘗試為發送預留信道而競爭信道。如果要進行會話發送,並且當前競爭窗口的優先級比該會話的優先級低,則立刻啟動所述的後退算法。如果到達了優先級比當前要進行的會話的優先級高的新會話,則新的會話取代要進行的會話競爭信道。
6.3信道訪問後退算法在可以將會話發送到信道上之前,啟動在此說明的後退過程。如果當啟動所述的後退算法時信道是空閒的,則站點立刻開始發送。否則站點在0到CWPX之間隨機產生後退,這是在與該站點的優先級相應的競爭窗口的開始時啟動的。當後退達到0並且信道不忙時開始發送。通過如下面6.5節中說明的那樣嘗試預留信道開始會話的發送。
僅當信道不忙並且在優先級等於或小於要進行的發送的優先級的競爭窗口期間,站點才減少後退值。如果在後退倒計數期間檢測到了發送,站點將推遲發送,直到下一個循環中的具有等於或小於它的優先級的優先級的競爭窗口為止,並且從其以前的值開始減少後退計數器的值。
如果沒有檢測到幀(也就是錯誤的檢測)而停止了物理載波偵聽,則競爭窗口從其以前的狀態開始並且後退從其以前的值繼續倒數。
如背景技術部分中說明的,為後退時隙(也稱為後退間隙或時隙)選擇的時間寬度可能會構成大部分信道訪問機制的開銷。在另一方面,時隙不能太小使得站點不能夠識別出另一個站點已經開始了發送。所述的MAC協議包括使用兩個由物理層提供的信號,即快速載波檢測(FCD)以及載波檢測(CD)來設置該時隙的寬度到一個大大小於現有技術的算法的時間的機制。
FCD信號是從物理層到MAC層的信號,它指示可能正在開始一個發送。該信號在發送開始之後非常快地到達,但是有相對高的偽報警率。CD信號也從物理層到MAC層,它以很高的可能性指示正在開始發送。這個信號在發送開始之後相對長的一段時間後到達,但是有非常低的偽報警率。
現有技術的後退算法將時隙設定為CD時間。本發明的後退算法將時隙的寬度設定為FCD時間,這樣大大地降低了開銷。選擇FCD時間作為時隙(也就是後退時隙)具有這樣的優點,即所述的時隙足夠大以使得使用隨機後退時間的站點不會碰撞,同時它也大大短於物理層以高的可能性識別出發送已經開始所用的時間。在此處給出的示例性實施例中,FCD時間和CD時間之間的比值最小為1∶6,這樣就提供了優於傳統算法的很多優點。
圖19示出了表示被劃分為多個分優先級的競爭窗口的競爭期間的圖。所示的競爭窗口196被分成多個CD時間194。然後每個CD時間進一步分為多個FCD時間192。按照本發明,用於隨機選擇後退時間的時隙是FCD時間而不是CD時間。這大大地減少了站點獲得信道所需的時間。
本發明的後退算法旨在防止站點在同一時間競爭信道。在當前發送結束之後,站點可以開始競爭信道。所述的競爭期間被分成時隙。站點隨機地選擇在嘗試競爭信道之前它必須推遲多少個時隙。如果在推遲的時間期間,另一個站點開始了發送,則站點等待下一次信道空閒。時隙的大小被這樣確定,以使得隨機選擇不同的推遲期間的站點不會在信道上碰撞。這意味著隨機選擇了一段較長的推遲期間的站點將檢測到第二個站點已經開始發送了。時隙的大小通常被設置為站點同步到信道上的分組所用的時間。然而時隙越大,後退算法加在信道訪問機制上的開銷就越多。
下面是後退算法的說明。圖20A和20B示出了表示本發明的MAC協議的後退機制的流程圖。在向信道發送新的會話之前,在與會話的優先級對應的競爭窗口的開始啟動後退算法。首先,站點從主機接收發送請求(步驟200)。然後將競爭窗口(CW)設置成CWMin的值(步驟202)。在競爭期間開始時,站點將後退時間隨機地選擇為多個時隙寬度,也就是從0到CWPX之間的值(步驟204)。如果在信道為空閒時啟動後退算法,則站點可以立即開始發送,否則發送站點隨機選擇後退。
當信道處於競爭期間內時(步驟206),在等待更高的優先級CWMin時間後(步驟208),站點減少所述的後退時間(步驟210)。當後退計數器不為0時(步驟212),所述的方法檢查VPC以及PCS看信道是否空閒,並且減少後退計數器。當後退計數器達到0時(步驟212),如下面6.5節說明的那樣通過嘗試預留(或獲得)信道來進行發送。通過發送RTS或RA幀實現預留信道(步驟214)。所述的協議實現了兩個被設計用於捕獲信道的專門的控制分組請求發送(RTS)以及清除發送(CTS)。源站點和接收站點使用所述的RTS和CTS分組捕獲並預留信道。
如果RTS/RA幀超時(步驟216),那麼如果重試的次數小於RTS/RZ_first_retry(步驟220),則按下面6.4節的說明調整CW的大小並且產生新的隨機後退(步驟232)。否則,調整CW的大小並且產生新的隨機後退(步驟224)。如果沒有達到max_RTS/RA_retries,則所述的方法繼續到在步驟206中檢查空閒信道狀態。否則,宣布鏈路失敗(步驟228)。
如果RTS/RA幀沒有超時(步驟216),則站點檢查幀的接收(步驟218)。如果接收到了幀,則該方法返回,否則該方法繼續到步驟216。
這樣,按照所述的MAC協議,如果到達了FCD信號,則站點停止減少後退計數器。如果在接收到FCD信號後的CD時間內沒有到達CD信號,這指示FCD信號是偽報警。然後站點繼續從接收到該FCD信號之前的時間點減少所述的後退計數器。如果CD信號到達了,則站點推遲發送並且等待下一個競爭期間。
站點僅當信道不忙並且在優先級等於或小於等待發送的會話的優先級的競爭窗口期間減少所述的後退值。如果在後退倒計數期間檢測到了發送,則站點將發送推遲到下一個循環當到達了與其優先級對應的競爭窗口時為止。在那個時刻,該站點從它先前的後退計數器的值繼續減少該後退計數器的值。
在後退計數器屆滿並且競爭信道成功之後才進行發送。一旦完成了當前的發送,站點就再次隨機地選擇後退的間隔。注意,後退時間的作用是使每個站點等待一個不同的時間,以將站點競爭信道的時間分散開。因此按照站點和競爭事件的數目設置後退時間。
6.4競爭窗口大小的自適應調整每個優先級類別的競爭窗口的大小都會被改變以便適應網絡業務的當前特性。按照本發明,每個站點所等待的後退時間開始於最後一個發送之後的一個隨機的時間。在0和競爭窗口的大小之間選擇所述的隨機時間。
注意,競爭窗口的大小在確定碰撞的可能性中起主要作用。另一個影響碰撞的可能性的因素是嘗試訪問信道的站點的數目。例如,考慮有20個站點等待在同一時間發送。如果每個站點在大小為10的競爭窗口內選擇了一個隨機數,那麼可能將有許多碰撞。另一方面,如果競爭窗口被擴展到60,則可能僅有很少的碰撞。本發明提供了一種動態地調整競爭窗口的大小到任意給定的時間希望發送的站點的數目的機制。
圖21示出了表示估計的信道開銷時間相對於競爭窗口的大小的圖。信道訪問過程的開銷包括下述部分的組合(1)靜寂期間,其中所有的站點都推遲發送,直到後退時間屆滿,以及(2)碰撞,此時兩個或多個站點嘗試在同一時間發送。如果減少競爭窗口的大小,則碰撞的可能性就增加,反之亦然。這樣就存在一個最小化信道開銷的最優的CW大小。這在圖中由被表示為『A』的CW的大小來表示。
注意,圖中A點左側的坡度比A點右側的坡度陡。向A點左側移動,碰撞的概率增加,直到最後信道開銷逐漸達到無窮大。向A點右側移動,由於靜寂期間的增加,信道開銷逐漸增加。為了考慮到出於下述原因的誤差容限,取在A點右側的B點為最優點。
不能準確地估計最佳的CW大小主要是因為(1)估計過程的精確性和可靠性的限制,以及(2)需要花費時間進行調整的負荷隨時間動態變化。
按照本發明,提供了一種用於調整競爭窗口的大小的方法。使用估計出的要在信道上以同一優先級類別進行發送的站點數利用下述公式調整競爭窗口的大小CW=α·N 3≤α≤10 (7)其中=K1Time_of_colliding_packetTime_slot--(8)]]>並且其中後退值值是每個站點在競爭信道之前等待的隨機時間;CW是競爭窗口,每個站點在其中隨機地選擇後退值;α是由模擬確定的因子;N是在任意給定的時間競爭信道的站點的數目。N是實際數,並且E(N)是期望的站點的數目;K是由模擬確定的因子;Time_of_colliding_packet是競爭分組期望的發送時間。它可以包括數據分組本身或包括控制分組;1/λ表示站點有分組要發送的概率。
注意,α和K被作為部分網絡規範固定下來,並且通過對每種特定的網絡實現進行計算、測量和/或模擬來確定。
N的值可以使用下式之一估計 其中t的期望值為
E[t]=CWN+1--(10)]]>並且其中t是從允許站點發送的時刻到一個站點開始發送的時刻之間的實際時間;E[t]是t的期望值;每個站點發送它的CW。所有的站點通過測量從最後一次發送到當前發送時間之間的時間來確定t。每個站點使用被發送的CW以及t計算估計的N。然後,每個站點使用下式計算新的NN新=(1-β)·N1H+β·N估計(11)其中加權因子β通過模擬確定。然後站點使用公式(7)按下述的方式計算新的CW。
注意,可以給加權因子β分配兩個不同的值當N新<N估計時為β1,以及當N新>N估計時為β2。在啟動以及當每個新的站點進入網絡時,站點被賦予大的初始的N0,站點從這個初始的N0開始計算它們的第一個CW值。然而,此後,CW值被快速地調整為實際網絡的特性。
6.4.1考慮了隱藏節點問題的調整方法在兩種情況下可能在信道上發生碰撞(1)兩個或多個站點選擇了相同的隨機後退時間,以及(2)兩個站點相對於彼此隱藏。在第二種情況下,這兩個站點相互之間聽不到對方,但是可以聽到在網絡上的其他站點。在這種情況下,有可能一個站點在另一個站點結束髮送之前就開始發送。
在第一種碰撞的情況下,發生碰撞的站點希望進行重新發送,並且這樣一來就成為了想要競爭信道的一組站點中的一部分。這是CSMA/CA方法的常規行為,而本發明的自適應的CW大小的算法被設計以優化該CW大小參數。
因為隱藏的節點將無法接收到確認並且將希望進行重新發送,所以第二種碰撞的情況更加複雜。這種模式將重複到重新發送的數目已完畢時為止。上層的通信層將被通知,並且作為結果將再次產生分組,這將導致無限循環,直到上層的通信層關閉該連接為止。
按照本發明,可以通過允許有限次數的競爭,此後在其之後站點宣布它懷疑那是隱藏的站點,也就是對某一數量的確認的接收失敗表明這個失敗不是由於通常的碰撞而產生的,來避免無限循環的產生。
當一個站點在第二個節點開始其發送之前結束了它的發送時,就避免了無限的循環。如果兩個站點使用大小為碰撞分組的大小或者更大的時隙來選擇隨機的後退時間,就可以確保這一點。在懷疑有隱藏節點情形的情況下,所有涉及到的站點都以碰撞分組的大小或者更大的大小為單位選擇隨機的後退數。在這種情況下,CW將是Y×colliding_packet_time_units,其中Y是預定的或者動態設置的因子。因此,這些站點選擇了比網絡上其餘站點相對要大的後退值。然而,最終兩個站點將互不碰撞地進行發送。
6.5預留信道如上所述,當後退計數器達到0時,站點嘗試通過使用LST中的控制幀或SST中的SST幀發送帶有預留計數器更新信息的幀來預留信道。在發送過程中,在重新發送或會話中斷的情況下對信道的預留進行必要的更新。
6.5.1在長會話傳輸中的信道預留站點通過發送請求發送(RTS)控制幀來嘗試預留信道。RTS幀包括新的發送所需要的預留時間,該新的發送包括來自目的地的ACK分組。目的地站點在RTS幀結束後的RIFS秒內以清除發送(CTS)幀響應。CTS幀包括從RTS分組中複製來的預留時間。
圖22示出了表示本發明的RTS/CTS過程的圖。如果接收機沒有足夠的資源來處理到來的發送,那麼它就以CTS_Fail幀響應。另外,使用發射機的最大功率水平以及最小發送速率發送RTS和CTS幀以便獲得最大的傳輸可靠性。
在發送站點接收到CTS幀後,它就在CTS幀結束之後的最長為RIFS的時刻開始發送會話數據幀。在重新發送的情況下,ACK、RA以及第一幀更新信道的預留。下文中的6.5.3節中說明了預留計算。在會話中斷的情況下,如下文3.6節中說明的那樣釋放信道。如果發射機在CTS_Timeout之後沒有接收到對RTS的CTS響應,則發射機認為發生了碰撞,並且調用在6.6節中說明的預留重試過程。
6.5.2短會話傳輸中的信道預留SST中的信道預留只在帶有ACK的SST中有效。源站點發送包括預留值的SST幀。目的地站點以ACK幀響應,如果需要,所述的ACK幀包括等於重新發送時間的預留時間。如果沒有接收到ACK幀,則源站點認為發生了碰撞,並且調用在6.6節中說明的預留重試過程。
6.5.3預留計算在發送前所有的預留時間都被壓縮以適合一個字節的大小。這個字節用RES欄位表示。每個接收站點將RES欄位解壓縮,並且使用解壓縮的預留時間更新VCS計時器。從幀的被接收到的最後一位開始計數預留時間,該預留時間也被用來更新VCS計時器。可以使用任何適合的壓縮和解壓縮技術,使用何種技術對本發明的操作來說是不重要的。如下表中所述的那樣計算預留時間。
表6預留欄位的值幀類型 發送預留欄位RTSCTS_Time+(DATA_Time*DataNum)+ACK_Time+RA_Time+RIFS*4CTS複製RTS欄位第一個數據幀/第一個重試複製CTS欄位或ACKACK(DataNumRetries*DATA_Time)+ACKTime+RA_Time+RIFS*3+CIFSRA 複製最後一個RTS或ACK6.6預留重試過程如果源站點沒有接收到對預留幀的響應或者接收到了CRC8或CRC16錯誤的幀(RTS或SST幀),則該站點認為發生了碰撞並且調用預留重試過程。如果源站點接收到了不是響應的有效的幀,則該站點推遲發送並且等待下一個競爭期間。
圖23示出了表示本發明的RTS方法的流程圖。第一步是將預留幀重新發送RTS_First_retries次(步驟240,242,244,246)。如果在RTS_First_retries之後沒有接收到響應(步驟246),則該站點隨機選擇新的後退並且重新發送所述的預留幀(步驟248,250,252,254,256)。這個步驟重複MAX_RTS_Retries次。
如果在MAX_RTS_Retries之後沒有接收到響應(步驟256),則源站點發送RTS_Fail幀並且調用新的LA分配過程(步驟258,260)。如果LA分配過程失敗了,則該站點宣布與目的地站點之間的鏈路失敗(步驟262)並且所述的方法返回。如果源站點接收到了CTS幀(步驟242或252),則開始要進行的會話的數據幀的發送(步驟264)。
注意,在第一個RTS/RA_First_retries次重試中,在重新發送之前,發射機隨機選擇Backoff_slotTime或Backoff_SlotTime*2的後退值。在下一個MAX_RTS/RA_Retries次重試期間,發射機將CWPX值增加到兩倍並且在每個重新發送之前隨機選擇新的後退值。CWPX的值不應超過CWPX-MAX。
對每個成功的信道預留,將CWPX值減少一半,並且當每次所述的競爭窗口已過去且沒有發送開始,將CWPX值初始化到由6.2節中說明的公式計算出的值。
圖24示出了表示本發明的CTS方法的流程圖。首先將timeout設置為CTS_Timeout的值(步驟270)。當沒有發生超時時(步驟272),減少timeout(步驟274)並且執行是否接收到了CTS幀的檢查(步驟276)。如果接收到了,方法返回接收到的CTS(步驟280),否則方法繼續到步驟272的超時檢查。當超時後,該方法返回超時(步驟278)。
6.7幀間隙介質上的幀之間的時間間隔構成了幀間隙,並且由於信號傳播與站點處理時間,幀間隙是必須的。如下所述,為MAC協議定義了三種幀間隙值。圖25示出了表示被插入在發送會話間的幀間隙的圖。
競爭幀間隙(CIFS)定義為前一個會話的結束與新的競爭期間的開始之間的間隔。在具有最高優先級以及0後退的情況下,新的會話至少要在前一個會話結束後的不小於CIFS的時間開始。
響應幀間隙(RIFS)定義為幀發送的結束和其相關響應的開始之間的時間。注意,如果不期望有響應,則CIFS是無效的。
對於當站點沒有對介質狀態的完全了解時的情形,定義了擴展幀間隙(EIFS)。這可發生在站點僅僅收聽到了幀的一部分、接收到的幀中的錯誤使得很難解碼或是當該站點初次接入網絡時。EIFS優選地大大長於其他的幀間隙以避免引起正在進行的會話的碰撞。
7幀格式7.1幀類型所述的MAC協議定義了兩種幀結構類型數據幀和控制幀。兩種幀類型都由PHY報頭(幀控制)部分、淨負荷部分和幀校驗序列(FCS)(也就是CRC)以及狀態部分構成。下面的節中給出了兩種幀類型的具體結構、內容以及功能。
7.2位順序數據被以最重要字節在前、最重要位在前的方式傳遞給物理層,其中位號7是字節的MSB。在此給出的圖在左邊表示了最重要位或字節。
7.3幀結構控制幀的幀格式包括幀控制以及其後的淨負荷和幀校驗序列(FCS)/狀態。所述的幀控制包括在下面說明的控制信息,該控制信息被接收機用於將淨負荷解碼。所述的淨負荷具有在3到2048位元組之間的按照幀的類型而變化的字節容量。
7.3.1幀控制報頭對於控制幀和數據幀,幀控制報頭具有不同的大小和內容屬性。控制幀使用24位的幀控制,而數據幀使用40位的幀控制。
7.3.2淨負荷對於控制幀和數據幀,淨負荷具有不同的大小和內容。控制幀具有固定的3位元組的淨負荷而數據幀具有可以在4-2048位元組之間變化的可變的淨負荷。
7.4控制幀圖26示出了表示控制幀的結構的圖。控制幀有固定的長度,並且其格式包括24位的幀控制,其後是3位元組的淨負荷和8位的幀校驗序列(FCS)/狀態。
7.4.1幀控制報頭(控制幀)幀控制提供了由PHY層使用的關於該幀的參數。目的地站點使用幀控制信息識別幀類型以及幀參數。幀控制是長為24位的欄位。下面的表7中示出了位欄位的定義。
表7幀控制欄位欄位位號位 定義值CT 23 1 有條件發送 0PL20-223 功率水平DC 19 1 數據/控制幀 1R 18 1 速率FT16-172幀類型TxW 10-156 Tx等待時間4-9 6 預留『00XXXX』NID1-3 3網絡IDC 0 1 確認7.4.1.1有條件發送如果有條件發送位(CT)是『1』,則站點僅當最後一個接收到的分組的CRC無錯誤時才進行發送。如果該位被設置為『0』,那麼站點不管最後一個分組的CRC是什麼都進行發送。該位被設置為『0』。
7.4.1.2數據/控制幀類型如果數據/控制幀位(DC)設置為『0』,則表示數據幀,而『1』表示控制幀。該位被設置為『1』以表示控制幀。
7.4.1.3速率速率位表示用於發送該幀的速率。速率位為『0』表示全速(也就是4μs的碼元持續時間),而速率位為『1』表示半速(也就是8μs的碼元持續時間)。
7.4.1.4幀類型幀類型(FT)欄位表示將要發送哪一種控制幀。下面的表8中列出了幀類型欄位的值。
表8幀類型欄位FT值 解釋00請求ACK幀(RA)01請求發送幀(DTS)10請求發送幀(CTS)11確認幀(ACK)7.4.1.5Tx等待時間Tx等待時間是6位長的欄位,表示在發送請求後,在開始發送之前的延遲時間。Tx等待時間的解析度是4μs。
7.4.1.6網絡ID3位的網絡ID欄位表示數據機的網絡ID。這個欄位是可由MAC配置的。網絡ID的默認值為『000』。
7.4.1.7確認位確認位向源站點指明前一個幀的接收是否正常。該位由目的地站點上的PHY層設置。值『0』表示最後一幀受損,而值『1』表示已經正確地接收到了最後一幀。確認位僅在接收時有效。該位由源站點的MAC層設置為『0』。
7.4.2控制幀淨負荷結構7.4.2.1RTS、CTS、RA圖27示出了表示RTS、CTS和RA控制幀的淨負荷結構的圖。該3個字節的淨負荷包括1個字節的鏈路目的地地址(LDA),1個字節的鏈路源地址(LSA)以及1個字節的預留欄位。幀校驗序列(FCS)/狀態在淨負荷之後。
7.4.2.2ACK結構圖28示出了表示ACK幀格式的圖。ACK幀包括1個字節的XMAC地址、1個字節的確認位(AckBits)欄位以及1個字節的預留欄位。幀校驗序列(FCS)/狀態在淨負荷之後。
XMAC欄位是6個字節的源站點MAC地址的異或(XOR)結果。XMAC的第1位是6個字節的源站點MAC地址中的每個字節的位0的XOR。XMAC的第2位是6個字節的源站點MAC地址中的每個字節的位1的XOR,依此類推。
AckBits欄位用於確認數據幀的接收。AckBits欄位中的每一位對應於對一個分段的ACK。ACK位在AckBits欄位中的位置對應於在會話中的幀索引。『0』表示正的ACK而『1』表示NACK。
所述的預留欄位用於為受損的數據幀的重新發送預留信道。
7.4.2.3失敗控制幀每個控制幀都有連接失敗指示選項。失敗控制幀與所有的RES位設置為『0』的常規控制幀相同。
7.4.3幀校驗序列以及狀態在發送方向,幀校驗序列(FCS)是8位的欄位,該包括8位的循環冗餘校驗(CRC)。使用下面的標準的8次生成多項式計算所述的FCS。
P8(x)=X8+X7+X2+1 (13)該P8生成多項式不是最大長度的生成多項式。在接收方向,狀態字節如以下的下表9中說明的那面。
表9狀態欄位描述位# 描述解釋7 ACK 『1』-發射機接收到的最後一個分組正常4-6 信道質量 0-3發現錯誤4-7沒有發現錯誤3 報頭 『1』-無效的報頭或是沒有發現報頭2 網絡ID 『1』-錯誤的網絡ID1 CRC8 『1』-檢測到CRC8錯誤0 CRC16 『1』-檢測CRC16錯誤
7.5數據幀圖29示出了表示數據幀的結構的圖。所述的數據幀格式包括40位的幀控制報頭,其後為可變的4到2048位元組的淨負荷以及8/16位的FCS/狀態欄位。
7.5.1幀控制報頭(數據幀)幀控制報頭除了包括關於目的地站點的地址的信息之外還包括被目的地站點用於識別幀的類型的信息。幀控制報頭是40位的欄位。下面的表10中列出了幀控制報頭的位欄位定義。
表10幀控制欄位定義欄位 位# 位 定義CT391 有條件發送(見7.4.1.1節)PL36-38 3 功率水平DC351 數據/控制,對於數據設置為『0』(見7.4.1.2節)R 341 速率(見7.4.1.3節)PP32-33 2 每個碼元的位TxW 26-31 6 Tx等待時間(見7.4.1.5節)Reserved 24-25 2 設置為『00』DR231 雙倍速率LEN MSB 20-22 3 長度欄位的MSBNID 17-19 3 網絡ID(見7.4.1.6節)C 161 確認=『0』(見7.4.1.7節)LEN LSB 8-15 8 長度欄位的LSBFCS 0-7 8 幀校驗序列(見7.4.2.3節)7.5.1.1每個碼元的位PP欄位表示每個碼元的位數目。『00』的PP值表示每個碼元有4位;『01』表示每個碼元有5位;『10』表示每個碼元有6位;以及『11』表示每個碼元有7位。
7.5.1.2雙倍速率雙倍速率(DR)位表示是否使用雙倍速率發送該幀。在使用這種速率操作時可使用每個碼元最多6位。『0』值表示該速率是按照R和PP欄位的。『1』值表示雙倍速率操作,PP欄位不能是『11』。
7.5.1.3淨負荷長度淨負荷長度欄位以字節的形式指示淨負荷欄位的長度。該欄位被分成兩個欄位MSB LEN,表示數據長度的3個MSB位;以及LSB LEN欄位,表示8個數據長度的LSB位。這11位的淨負荷長度欄位允許淨負荷最長有2048個字節的長度。
7.5.2數據幀淨負荷結構圖29示出了表示數據幀的結構的圖。數據幀的淨負荷部分包括4-20位元組的淨負荷報頭,可變長度的會話報頭以及0-2043位元組的數據欄位。淨負荷前面是40位的幀控制,其後是8/16位的幀校驗序列(FCS)/狀態欄位。
7.5.2.1數據幀淨負荷報頭圖30示出了表示數據幀的淨負荷報頭部分的結構的圖。淨負荷報頭的長度可變並且可以在4個字節(對於VLA=1的SST)到19個字節(對於VLA=0並利用轉發器的SST)之間變化。淨負荷報頭包括下面這些欄位16位的幀信息欄位,8位的LDA(僅在VLA=1時),8位的LSA(僅在VLA=1時),8位的幀索引欄位(僅在LST會話中),48位的目的地MAC地址(僅在VLA=0的SST幀中),48位的源MAC地址(僅在VLA=0的SST幀中,並且僅在第一幀或SST幀中),8位的預留(RES)欄位(僅在第一幀中或第一個重新發送中或SST幀中),16位的分組超時欄位(僅在會話被發送到轉發器時),1位元組的會話報頭長度欄位(僅在LSHV=1時)以及2個字節的發射機時間戳欄位(僅在TSE=1時)。
7.5.2.1.1幀信息圖31示出了表示數據幀的幀信息欄位的結構的圖。16位的幀信息欄位包括列於下面表11中的欄位。
表11幀信息欄位欄位 位# 位 定義PV14-152 協議版本=『00』L/S 13 1 LST或SSTTxT 11-122 傳輸類型DT10 1 數據類型P 8-9 2 幀優先級在LST中-第一幀指示FF/ACK71 在SST中-ACK/沒有ACK指示LSHV 61 長會話報頭有效TSE 51 時間戳存在有效的LA-在SST會話中有效(為LST預留)Reserved 0-3 4 預留位協議版本欄位表示正在使用的MAC的版本。假設僅有1個版本正在使用,發射機將這些位設置為『00』。如果PV不是『00』,則接收機丟棄該幀。L/S類型欄位表示該幀是否包括LST或SST會話。『0』表示LST會話而『1』表示SST會話。傳輸類型欄位如下面所述的那樣表示傳輸的類型『00』表示單播傳輸;『10』表示多播數據幀;『11』表示廣播數據幀(『01』預留)。
數據類型欄位如下所述的那樣表示數據幀的類型『0』表示數據幀,而『1』表示管理幀。優先級位確定當前數據會話的優先級,其中『00』是最低的優先級,『11』是最高的優先級。
對於LST和SST會話,first frame/ACK欄位有不同的含義。對於LST會話,這個欄位如下述的那樣表示該幀是為第一幀或是第一個重新發送『0』表示第2到第8個幀,『1』表示第一幀或第一個重新發送。對於SST會話,這個欄位表示是否需要來自目的地站點的ACK。『0』表示不需要ACK,『1』表示需要ACK。
LSHV欄位表示該會話報頭是否包括多於一個分組。如果該會話報頭包括多於一個分組,那麼淨負荷報頭就包括會話報頭長度欄位。LSHV值為0表示該會話報頭包括一個分組,而LSHV值為1表示會話包括2個或多個分組。TSE欄位起表示是否有時間戳欄位的作用。TSE的值為0表示沒有時間戳,而TSE的值為1表示有時間戳。
有效的LA(VLA欄位)僅在SST幀中有效。在LST幀中,該位被發射機設置為『0』,並且被接收機忽略掉。在幀信息欄位中的VLA位用於表示LA地址是否有效。『0』表示LA無效,『1』表示LA有效。如果LA無效,則使用源和目的地的MAC地址。
7.5.2.1.2幀索引8位的幀索引欄位包括兩個子欄位4位的總計幀欄位以及4位的幀索引。總幀表示會話中的幀的總數,幀索引表示會話中的幀的索引。
7.5.2.2幀校驗序列/狀態在發射機,有兩個FCS(1)報頭FCS,包括幀控制報頭的最後8位,以及(2)在淨負荷欄位後面的數據FCS。在接收機,狀態字節被插入在如上面7.4.2節中規定的淨負荷欄位的後面。報頭CRC與控制幀的8位CRC是相同的(見7.4.2節)。數據FCS是包括16位循環冗餘校驗(CRC)的16位的欄位。使用下面的標準的16次生成多項式計算數據FCS。
P16(X)=X16+X15+X2+1(16)7.5.3廣播淨負荷結構廣播淨負荷與常規的數據淨負荷類似,不同之處為其淨負荷報頭包括兩個另外的欄位廣播ID(BID)以及重新發送至成功的跳數(HTL)欄位。見3.3.2節。
7.5.4多路廣播淨負荷結構圖32示出了表示多路廣播數據幀的淨負荷結構的圖。多路廣播淨負荷包括兩個字節的幀信息(見7.5.2.1.1節)、1個字節的幀編號(僅存在於LST會話中)(見7.5.2.1.1節)、1個字節的RES(僅存在於第1個幀中或是笫一個重新發送中或是SST中)、1個字節的會話報頭欄位、表示在多路廣播組中的站點的數目的1個字節的NumOfLA、對於目的地『x』的16位的LDAx、LSAx欄位、淨負荷數據、其後的從目的地『x』請求ACK的1個字節的AckBits。注意,所述的AckBits以0填充以便成為一個完整的字節。注意,幀信息欄位中的傳輸類型TxT欄位被設置為『10』以指示是多路廣播傳輸。所述的幀信息欄位還包括2位的PV、1位的L/S、1位的DT、1位的FF、2位的P以及7位的預留欄位。
8.層管理8.1鏈路地址分配過程如上所述,使用6個字節的MAC地址識別網絡上的每個站點。必須為每個站點使用6個字節是因為MAC地址不僅是邏輯網絡中的站點的唯一標識,而且還是作為物理實體的站點的唯一標識。然而在邏輯網絡中,可以分配邏輯地址以便減小地址空間的大小。例如,如果邏輯網絡最多有256個站點,則一個字節的邏輯地址就足夠了,這樣就減少了多於80%的地址的大小。如上所述,在RTS和CTS幀中使用站點地址,這樣就減少了地址的開銷並且由此大大減少了MAC層的總開銷。
在中央控制的網絡中部署邏輯地址如下所述。由中央控制器為每個加入該網絡的站點分配一個邏輯地址。在分布式網絡中,分配邏輯地址的過程也必須以分布式的方式進行。在分布式網絡中分配邏輯地址的主要問題是確保站點不會選擇已經被使用的邏輯地址。
為了確保邏輯地址是唯一的,本發明提供了一種在站點間執行的接合過程。本發明還使在存儲器分配和地址搜索時間方面能非常有效地實現鏈路地址。按照本發明的MAC協議,不是使用包括1個字節的源地址和1個字節的目的地地址的2個字節的邏輯地址,而是使用2個字節的鏈路地址(LA)。在每個發送中僅使用與2個字節的邏輯地址有相同開銷的單個2個字節的LA。與表示網絡中的站點的唯一地址的邏輯以及MAC地址相對,LA是識別兩個站點間的鏈路的唯一地址。使用鏈路地址的優點(與站點地址相比)是在保持相同的地址大小和開銷(也就是2位元組)的同時,獲得了大得多的地址空間,也就是與使用邏輯地址的28相比,其為216。
當要建立在網絡中的兩個站點間的新的連接時,建立在這兩個站點間的新的LA。LA包括兩個1位元組的部分分別為鏈路源地址(LSA)以及鏈路目的地地址(LDA)。LSA與發送站點相關聯,LDA與接收站點相關聯。每個站點從每個站點維護的地址表中存儲的未使用的值中隨機地選擇LSA與LDA。該值可以在0x00和0xFD之間變化。注意,值0xFF對於LSA和LDA都是非法的,並且只用於BLA廣播傳輸中。
每個站點用與其他站點相關聯的所有被分配的LA維護所述的地址表。當使用一個或多個轉發器時,可能有多於1個的LA與每個站點相關聯。接收到與已經與之建立了LA的站點建立新的LA的請求的站點,丟棄舊的LA並且建立新的LA。
所述的鏈路地址用於一對站點間的所有傳輸。每個站點都維護包含已定義的LSA和LDA對的地址表,每條鏈路有一個項。每個站點還例如通過維護雙重鏈路列表來維護存儲有MAC地址與鏈路地址間的雙向映射的表。通常,使用鏈路地址表建立鏈路地址。所述的鏈路地址表的長度為256,其中每個記錄適於存儲8位的鏈路地址以及各種與統計相關的數據,例如成功的以及失敗的幀傳輸的數目,錯誤接收的幀的數目,發送和接收的ACK的數目,重新發送的數目等等。存儲在該表中的值0xFF表示該鏈路地址是可用的。在加電時或復位後,該表的內容被初始化為0xFF。每個站點將具有0xFFFF的廣播鏈路地址的消息識別為廣播傳輸。這樣,第256個項被預留並且不能用於單播消息。
發送源站點從鏈路地址表中的可用的地址項中隨機地選擇地址。選出的地址用作在表中的查找,並且是源站點的LDA。該站點將選出的LDA發送給目的地接收站點。然後目的地從其鏈路地址表內的可用的地址項中隨機地選擇項。目的地站點將接收到的LDA存儲在該表中。存儲LDA的地址為LSA,並且將LSA返回給源站點。當接收到LSA後,源站點將接收到的LSA存儲在所述的表的LDA地址處。
當發送消息時,源站點通過首先使用目的地MAC地址查找LA來形成LA。然後使用LDA(也就是表中的查找地址)以及LSA(也就是表中LDA地址處的內容)形成所述的LA。
在目的地,檢查LA以確定該消息是否是發給這個站點的。這是通過使用後半個LA(也就是由源發送的LSA)作為在其表中的查找地址並且將該內容與所述消息中的前半個LA(也就是由源發送的LDA)進行比較來實現的。
可以使用長RST以及長CTS幀或是通過使用兩個管理幀,即鏈路地址設置(LAS)以及鏈路地址設置響應(LASR)實現鏈路地址分配過程。所述的LAS幀由發起站點發送,並且包括LA的LDA部分。所述的LASR幀由目的地站點發送,並且包括LA的LSA部分。下面的小節中說明了建立鏈路地址的過程。
8.1.1使用管理幀的鏈路地址建立按照本發明,兩個站點使用鏈路地址相互間通信。下面的過程用於在兩個站點間使用LAS和LASR管理分組建立鏈路地址。然而,在建立鏈路地址之前,使用帶有ACK以及VLA=0的SST分組進行通信。
圖33示出了表示發送站點的鏈路地址分配方法的流程圖。首先,發送站點隨機地從一列未用過的LDA中選擇新的LDA(步驟290)。然後向接收站點發送具有所述的新的LDA的LAS幀(步驟292)。然後,發送站點等待從目的地站點接收LASR幀(步驟294)。如果接收到了LASR幀,則用接收到的LSA更新地址表(步驟302)。否則,如果達到了LSAR超時(步驟296),則將此過程重複MAX_LAS_retries次(步驟298)。如果在最大次數的重試後還沒有接收到LASR幀,則宣布鏈路失敗(步驟300)。
圖34示出了表示接收站點的鏈路地址分配方法的流程圖。從發送站點接收LAS幀(步驟310)。然後,目的地站點從可用的LSA池(pool)中隨機地選擇新的LSA(步驟312)。然後目的地站點用接收到的LDA更新它的地址表,這樣就完成了LA(步驟314)。然後它將所選出的LSA在ARLS幀中發送給發送站點(步驟316),此後該選出的LSA被記錄在發送站點的地址表中。
注意,如果LASR沒有被確認,則目的地站點將所述的新的LA標記為「有問題的」,但是並不從其LA表中刪除它的項。如果發送站點使用該新的LA發起會話,則接收站點將該LA的狀態改變為「已建立」。如果接收站點必須發起與發射機的新的會話,不用該「有問題的」LA而是建立新的LA。
8.1.2使用長RTSCTS幀的鏈路地址建立使用長RTS和長CTS控制幀捕獲信道。發送站點使用長RTS的LDA欄位分配LDA,接收站點通過使用長CTS中的LSA欄位分配LSA來進行響應,這樣就完成了新的LA。使用長RTS和CTS幀的優點是不需要在發送主機數據分組之前等待,直到建立了LA為止。
8.1.3鏈路地址重複的解決方案上述的結合大的鏈路地址空間(216個可能的鏈路地址)的LA算法顯著地減少了碰撞的可能性。然而在某些極端的情況下,可能會出現重複的鏈路地址。本發明的MAC協議包括解決重複的鏈路地址的機制。出現重複的鏈路地址可以產生下面的影響之一(1)來自兩個站點的CTS響應幀發生碰撞,阻止了在源站點對任一個的接收,或(2)僅接收到一個CTS響應幀,但是該響應幀來自錯誤的站點,(3)兩個站點都以CTS響應,在源站點正確地接收到了這兩個響應。
因為源不能向目的地站點進行發送,所以第一種情況易於引起鏈路失敗。為了解決這種類型的重複地址問題,源站點在宣布鏈路失敗之前嘗試建立新的鏈路地址(使用管理幀的方法)。
第二種和第三種情況易於引起分組被錯誤的站點所接收。為了解決這種類型的重複地址問題,源站點將目的地站點的MAC地址插入到分組中。接收到該分組後,目的地站點檢查該MAC地址,如果不匹配,則目的地丟棄這個包並且建立新的LA。否則,按上述進行處理。
8.2功率和速率的自適應功率和速率自適應過程假設物理層適於在傳輸會話期間改變其功率和速率的設置。該算法適用於實現為包括具有這種能力的物理層的收發信機。所述的MAC協議適於改變正在進行的連接的功率水平和速率以便增強網絡中的連接性和可靠性。MAC層使用從信道上收集的統計信息來管理速率和功率。
功率水平和速率的組合定義為功率水平和速率(PLR)狀態。PLR狀態的範圍是從1到m,PLR狀態1對應於最小的功率水平和最大的速率,而PLR狀態m對應於最大的功率水平和最小的速率。對於每條鏈路,發射機使用下面給出的公式11動態地計算受損數據幀的百分比PrErrData。
在會話期間並不改變PLR狀態。增加、降低或不改變PLR狀態的決定是由發射機在會話的第一RTS幀的發送之前進行的。分段的長度FragmentLength是按照發送速率確定的。如果MaxFragNumber的數據幀的傳輸超過了Session_Timeout,則減少該分段的長度以便符合Session_Timeout的限制(見3.3節)。
按照發射機使用的發送速率計算ACK幀中的預留欄位。當會話結束後,發射機記錄發送中使用的功率水平和速率。所述的功率水平和速率記錄將用於同一鏈路上的下一個發送。
按照本發明,每個站點都維護稱作NeighboredStations的資料庫,這個資料庫用於存儲收集到的統計信息。該NeighboredStations資料庫包括對於該站點所維護的每條鏈路的項。每個項包括下面的欄位LastPL在這條鏈路上使用的最後一個功率水平;LastRate在這條鏈路上使用的最後一個速率;PrErrData受損數據幀的百分比;注意,LastPL和LastRate欄位在站點結束髮送會話時被更新。使用兩個計數器如下計算量PrErrDatePrErrDat[%]=((1-)ErrDateFrameTotalNumOfRecData+PrErrData/100)*100--(17)]]>其中TotalNumOfRecData是從該鏈路上接收到的數據幀的總數(包括錯誤的數據幀);ErrDataFrame是從這條鏈路上接收到的錯誤的數據幀的數目;α是分配給統計歷史的權值;當該站點接收和發送會話時,更新TotalNumOfRecData和ErrDataFrame量。在PLR狀態變化後,量PrErrDat復位為0。
PLR狀態按如下方式變化。如果PrErrDat比DecPLRThreshold高,則發射機降低PLR狀態。對於PLR狀態1到n,DecPLRThreshold與PLIncThreshold相等。對於PLR狀態n+1到m,DecPLRThreshold與RDecThreshold相等。在降低了特定鏈路的速率後,發射機將該鏈路的所有計數器復位。
如果PrErrDat比IncPLRThreshold低NumOfGoodSessions次,則發射機增加PLR狀態。對於PLR狀態1到n,NumOfGoodSessions與PLDecThreshold相等。對於PLR狀態n+1到m,NumOfGoodSessions與RIncThreshold相等。在增加了鏈路的速率後,發射機將該鏈路的所有計數器復位。
為了適用於TCP協議,初始的PLR水平被設置為最低的水平,以便確保連接性,IncPLRThreshold和DecPLRThreshold從小的數值開始,並且隨著每個PLR狀態的增加而增加,直到達到它們的最終值。
8.3統計信息按照本發明,站點使用對收集的統計信息的請求(RGS)幀從其他站點接收統計信息。收到該請求的站點使用收集的統計信息響應(GSR)幀響應。GSR幀被作為MAX_HTL被初始化為0的廣播會話發送。可選地,每個站點適於周期性地每隔StatInterval廣播MAX_HTL等於0的GSR幀。另外,每個站點廣播管理幀,所述的管理幀包括該站點在過去的StatInterval秒內所發送的會話的優先級類型。站點將接收到的信息加入它們的統計信息中,並且據此計算CWMin值。
9.層管理幀所述的MAC協議適於提供一些不同類型的管理幀。圖35示出了表示管理幀的結構的圖。管理幀的格式基於SST數據幀的格式並且包括28位的幀控制報頭、其後是11/15位元組的管理報頭、可變長度的管理項(淨負荷)以及16位的FCS。
9.1幀控制報頭(管理幀)幀控制報頭的格式與上文7.5.1節中更詳細說明的數據幀的報頭格式是相同的。
9.2管理報頭圖36示出了表示管理幀的頭部的結構的圖。管理報頭包括具有被設置以指示SST報頭的標誌的10/14位元組的淨負荷報頭,其後是1位元組數目的管理項欄位。上面的7.5.1節中對SST報頭進行了說明。
9.3管理項圖37示出了表示管理幀的管理項部分的結構的圖。每個管理項包括1位元組的管理類型(MT)欄位,其後是可變長度的管理數據(MD)欄位。
9.3.1管理類型下面的表12中列出了管理類型(MT)欄位的可能的值。
表12管理類型欄位的值MT值 幀類型0x00 LAS幀0x01 LASR幀0x02 RS幀0x03 SCR幀0x04 LE幀0x05 LER幀0x06 FC幀0x07 長RTS0x08 長CTS0x09 RSR幀0x0A RCS幀0x0B CSR幀0x0C RGS幀0x0D GSR幀0x0E RGTU幀0x0F GTUR幀0x10-xFF預留9.3.2管理數據9.3.2.1鏈路地址設置(LAS)
LAS項用於在兩個站點之間分配鏈路地址(LA)(見8.1節)。LAS項包括含有鏈路目的地地址(LDA)的1個字節的管理項。
9.3.2.2鏈路地址設置響應(LASR)接收站點在鏈路地址分配過程期間使用LASR項確認LAS幀(見8.1節)。LASR項是包括鏈路源地址(LSA)的1個字節的管理項。
9.3.2.3轉發器搜索(RS)源站點將RS項作為廣播會話發送以搜索可能的轉發器站點(見4節)。RS項是12個字節的管理項,包括6個字節的初始目的地MAC(ODM)地址,其後是6個字節的初始源MAC(OSM)地址。
9.3.2.4源取消轉發器(SCR)初始源向轉發器發送SCR項以便終止其作為轉發器的作用。SCR項是6個字節的管理項,包括6個字節的初始目的地MAC地址(ODM)。
9.3.2.5鏈路存在(LE)初始源站點向初始目的地站點發送LE項以檢查在這兩個站點之間是否有直接的鏈路存在。LE項沒有管理數據。
9.3.2.6鏈路存在響應(LER)接收機發送LER項以指示接收到了LE。LER項沒有管理數據。
9.3.2.7失敗的連接(FC)轉發器向初始源站點發送FC項以指示與初始目的地站點間的通信失敗了,並且可能會也可能不會產生傳輸。FC是1位元組的管理項,它包括6位元組的初始目的地MAC地址。
9.3.2.8長RTS/CTS如上所述,出於同步以及分配鏈路地址的目的,所述的MAC協議適於提供長RTS和CTS幀發送。如下面的表13所示,長RTS/CTS項包括LDA/LSA的4位元組的管理項,其後是RES以及TTT。
表13長RTS/CTS管理項欄位位# 位 定義LDA/LSA 24-31 8 如果發送長RTS則為LDA如果發送長CTS則為LSA如RTS和CTS控制幀中的預留RES16-23 8 欄位TTT0-15 16 滴答時間9.3.2.9轉發器搜索響應(RSR)作為對RS幀的確認,轉發器發送RSR項。RSR項是14個字節的管理項,包括目的地MAC地址、其後的源MAC地址、轉發器與OS站點之間的PLR狀態以及轉發器與OD站點之間的PLR狀態。下面的表14中給出了RSR管理項欄位的定義。
表14RSR管理項欄位 位# 位定義DM 64-11148 初始目的地站點的MAC地址SM 16-63 48 初始源站點的MAC地址PLR_OS112-15 4 OS和轉發器之間的PLR狀態PLR_OS2 8-11 4 轉發器和OS之間的PLR狀態PLR_OD1 4-7 4 轉發器和OD之間的PLR狀態PLR_OD2 0-3 4 OD和轉發器之間的PLR狀態9.3.2.10請求信道檢測(RCS)站點發送RCS項以便請求信道檢測參數。RCS沒有管理數據。
9.3.2.11信道檢測響應(CSR)站點作為對RCS幀的響應發送CSR項。CSR幀是2個字節的管理項,如下面的表15所示,它包括CQ、AvgCQ、CS_TxDataCounter以及CS_TxFailCounter(見1.11節)。
表15CSR管理項欄位位# 位 定義CQ 12-15 4接收到的RCS的信道質量AvgCQ 8-11 4平均信道質量PrErrData 0-7 8當前鏈路中的失敗數據幀的百分比9.3.2.12對收集統計信息的請求(RGS)站點發送RGS項以便從其他站點請求統計參數。RCS沒有管理數據。
9.3.2.13收集的統計信息的響應(GSR)站點發送GSR項作為對RGS幀的響應(見1.12節)。GSR是19個字節的管理項,它包括下面的表16中示出的統計參數。
表16QSR管理項欄位位#位定義TxPrCounter00 136-151 16 具有00優先級的已發送數據幀的數目TxPrCounter01 120-135 16 具有01優先級的已發送數據幀的數目TxPrCounter10 104-119 16 具有10優先級的已發送數據幀的數目TxPrCounter11 88-103 16 具有11優先級的已發送數據幀的數目TxPrCounter00 72-87 16 具有00優先級的已接收數據幀的數目TxPrCounter01 56-71 16 具有01優先級的已接收數據幀的數目TxPrCounter10 40-55 16 具有10優先級的已接收數據幀的數目TxPrCounter11 24-39 16 具有11優先級的已接收數據幀的數目來自發送RGS的站點的失效的數據幀PrErrData 16-23 8的百分比來自發送RGS的站點的發送的平均信AvgCQ8-15 8道質量TxRate 5-74發送RGS的站點的發送速率TxPowerLevel 0-44發送RGS的站點的發送功率水平9.3.2.14請求全局時間更新(RGTU)站點發送RGTU項以請求全局時間(見1.10節)。RGTU沒有管理數據。
9.3.2.15全局時間更新響應(GTUR)站點發送GTUR項作為對RGTU幀的響應(見1.10節)。GTUR是2個字節的管理項,它包括16位的滴答時間(TTT)欄位。
9.3.3管理幀優先級為在會話之前發送的管理幀分配一個比該會話更高的優先級(如果存在有這樣的優先級等級的話)。這些幀包括LAS、LASR、長RTS/CTS、RS、RSR、SCR、LE、LER以及FC。由站點作為響應而發送的、包含立即使用的重要信息的管理幀分配有最高的優先級。這些幀包括RCS、CSR、RGTU以及GTUR。請求或者包括用作站點的一般用途以及繼續的操作的信息的管理幀分配有最低的優先級。這些幀包括RGS以及GSR。
包含介質訪問控制器的站點現在說明本發明的包含介質訪問控制器(MAC)的節點設備的實例性實施例。圖38示出了表示適於執行本發明的MAC協議的機制的實例站點的框圖。被總體地以320表示的站點表示可以獨立運行或者被引入如交換機、路由器、集線器、寬帶數據機、電纜數據機、基於PLC的數據機等等的用於執行通信功能(也就是實現包括MAC功能的OSI協議棧功能)的網絡設備中站點。所述的節點設備包括應用處理器330,該應用處理器330具有與該處理器通信的相關聯的靜態的、動態的、易失的和/或非易失的存儲器(未示出)。所述的應用處理器還通過主機接口332與主機計算設備334通信。所述的主機可適於在一個或多個其他網絡上通信。
所述的站點還包括介質耦合電路322,它的作用是作為站點到共享介質340的接口。發送電路324以及接收電路326通過所述的介質耦合電路在介質上通信。Rx電路不僅適於提供接收到的數據,還適於提供在信道競爭期間由MAC所使用的FCD以及CD載波檢測信號。在一端,所述的介質訪問控制器(MAC)328起向發送電路提供發送數據以及從接收電路接收數據的作用。在處理器端,它與所述的應用處理器進行接口。所述的MAC適於實現本發明的MAC協議層的功能,該功能包括使用上述的方法和技術控制對共享介質的訪問。
注意,所述的介質訪問控制可以用軟體加以實現,並且適於存在計算機可讀介質中,例如在磁碟、軟盤、快閃記憶體卡、基於EEROM的存儲器、磁泡存儲器、RAM存儲器、ROM存儲器等等中。所述的軟體還可以整個地或是部分地存在於計算機系統的靜態的或動態的主存儲器中或處理器內的固件中。所述的處理器可以包括任何適合的處理裝置,包括微控制器、微型計算機、微處理器、數位訊號處理器、FPGA核心,ASIC核心等等。特別是,所述的介質訪問控制軟體包括指令序列,當處理器在執行該指令序列時,該指令序列使計算機系統執行上述MAC層方法中的任一個的步驟。
在另一個實施例中,本發明可以適用於在集成電路中實現上述的方法和裝置,特別是在專用集成電路(ASIC)、現場可編程門陣列(FPGA)或晶片組、無線數據機實現方案、電力線數據機實現方案、交換系統產品以及傳輸系統產品中實現。注意,還可以實現軟體和硬體的組合,前者執行複雜的操作而後者執行對時間有嚴格要求的操作。
同於本文的目的,用術語交換系統產品來指代專用小型交換機(PBX)、互連用戶的中央局交換系統、長途電話/匯接交換中心、位於服務提供商網絡的中心的、可由寬帶邊緣交換機或接入多路復用器饋入的寬帶核心交換機以及相關信令和支持系統及服務。用術語傳輸系統產品來指代被服務提供商用來在其用戶及其如環形系統的網絡之間提供互連、並在跨廣泛區域的服務提供商的交換系統之間提供復用、匯聚和傳輸的產品以及相關信令和支持系統及服務。
所附的權利要求書旨在覆蓋落在本發明的精神和範圍內的本發明的所有這些特徵和優點。因為本領域技術人員可以容易地作出許多修改和變化,所以本發明並不旨在局限於在此說明的有限數量的實施例。因此,應當理解,所有可以採用的適當的變形、修改以及等同的方案都落在本發明的精神和範圍內。
權利要求
1.一種在與通信信道相連的通信收發信機中訪問信道的方法,所述的收發信機適於提供載波偵聽信號,所述的載波偵聽信號包括在發送開始後相對短的時刻產生的快速載波檢測(FCD),所述的快速載波檢測具有高的偽報警率,並指示發送可能正在開始,所述的載波偵聽信號還包括在發送開始後的相對長的時刻產生的載波檢測(CD)信號,所述的載波檢測信號具有低的偽報警率,並且指示發送正在開始,所述方法包括下述步驟在當前發送會話終止後,建立信道競爭期間,所述的信道競爭期間被分成多個時隙,每個時隙的寬度大體上與所述的FCD信號的時間相等;用與隨機數目個時隙相等的後退值初始化後退計數器;當所述的介質空閒時,減少所述的後退計數器;當接收到FCD信號後,暫停所述的後退計數器;當在CD時間內沒有CD信號到達後,繼續減少所述的後退計數器;當接收到CD信號後,將發送推遲到下一個競爭期間;以及當所述的後退計數器屆滿後,開始發送。
2.如權利要求1所述的方法,其中由所述信道的狀態從忙到競爭的變化指示所述的當前發送會話的終止。
3.如權利要求1所述的方法還包括在前一個發送會話的末尾與所述的信道競爭期間的開始之間插入競爭幀間隙(CIFS)。
4.如權利要求1所述的方法還包括當所述的後退計數器屆滿後嘗試預留所述的信道的步驟。
5.如權利要求1所述的方法還包括通過向目的地站點發送含有預留時間的請求發送(RTS)幀來預留所述信道的步驟。
6.如權利要求1所述的方法還包括通過從目的地站點向源站點發送含有預留時間的清除發送(CTS)幀來預留所述信道的步驟。
7.如權利要求1所述的方法,其中每個競爭期間進一步分成多個競爭窗口,每個競爭窗口對應於一個不同的優先級。
8.如權利要求7所述的方法,其中按照所述網絡中的站點數目的函數動態地調整每個競爭窗口的大小。
9.如權利要求8所述的方法,其中使用管理幀確定所述的站點數目。
10.如權利要求8所述的方法,其中通過按照競爭窗口的當前大小和從當站點被允許發送到當該站點實際開始發送之間的時間的函數來計算所述網絡中的站點數目的估計值確定所述站點數目。
11.如權利要求1所述的方法,其中將所述的後退計數器暫停,直到優先級與將要發送的發送的優先級對應的競爭窗口到來為止。
12.如權利要求1所述的方法,其中所述的初始化步驟包括在0和競爭窗口的大小之間選擇隨機數目個時隙。
13.如權利要求1所述的方法,其中所述的後退計數器從在接收到最近一個FCD信號之前的值開始繼續。
14.如權利要求1所述的方法,其中在接收到了FCD信號的CD時間內沒有接收到CD信號指示所述的FCD信號是偽報警。
15.如權利要求1所述的方法,其特徵在於進一步包括在鏈路失敗的情況下釋放所述的曾經被預留的信道或減少預留計數器的步驟。
16.如權利要求15所述的方法,其中通過適於指示CTS失敗的幀指示所述的鏈路失敗。
17.如權利要求15所述的方法,其中通過適於指示RTS失敗的幀指示所述的鏈路失敗。
18.如權利要求1所述的方法,其中進一步包括在分配給會話的最大時間屆滿的情況下釋放所述的信道的步驟。
19.如權利要求1所述的方法,還包括減少一個或多個預留計數器的步驟,每個預留計數器保持預留時間,其中為由站點檢測到的每個會話維護單獨的預留計數器,並且其中僅當具有最大預留時間的預留計數器屆滿時,才認為已釋放了所述的信道。
20.一種在與通信信道相連的通信收發信機中訪問信道的方法,所述方法包括以下步驟在當前發送會話終止後建立一個或多個競爭窗口,為每個競爭窗口分配一優先級,並且將每個競爭窗口細分為多個後退時隙;推遲0或多個競爭窗口,直到優先級與特定發送的優先級對應的競爭窗口到達為止;使用與隨機數目個後退時隙相等的後退值初始化後退計數器;在所述的介質空閒時減少所述的後退計數器;以及在所述的後退計數器屆滿後,嘗試預留所述的信道。
21.如權利要求20所述的方法,其中所述的後退時隙的寬度是載波檢測(CD)信號的倍數。
22.如權利要求21所述的方法,其中在發送開始後相對長的時刻產生所述的CD信號,所述的CD信號具有低的偽報警率並且指示發送正在開始。
23.如權利要求20所述的方法,其中所述後退時隙的寬度是快速載波檢測(FCD)信號的倍數。
24.如權利要求23所述的方法,其中在發送開始後相對較短的時刻產生所述的FCD信號,所述的FCD信號具有高的偽報警率並且指示發送可能正在開始。
25.如權利要求20所述的方法,還包括如下步驟當接收到快速載波檢測(FCD)信號後,暫停所述的後退計數器;當在CD時間內沒有載波檢測(CD)信號到達後,繼續減少所述的後退計數器;以及當接收到CD信號後,推遲發送,直到隨後的發送完成後為止。
26.如權利要求20所述的方法,其中所述的嘗試預留所述信道的步驟包括向目的地站點發送包含有預留時間的請求發送(RTS)幀。
27.如權利要求20所述的方法,還包括在進行了預定次數的對預留所述信道的嘗試後,宣布鏈路失敗的步驟。
28.如權利要求20所述的方法,還包括當預留所述的信道失敗後增加競爭窗口的大小的步驟。
29.如權利要求20所述的方法,還包括步驟如果成功地預留了信道,則將所述的競爭窗口的大小減少到達到最小的競爭窗口的大小。
30.如權利要求20所述的方法,還包括按照所述網絡中的站點數目的函數調整每個競爭窗口的大小的步驟。
31.一種基於載波偵聽多路訪問(CSMA)的通信系統,其中在發送之前是競爭階段,在競爭階段期間一個或多個發射機競爭對信道的訪問,所述系統包括用於建立一個或多個競爭窗口的裝置,每個競爭窗口分配有優先級;用於將每個競爭窗口分成多個後退時隙的裝置,其中在一個時隙期間檢測到載波偵聽信號潛在地指示所述的信道忙;適用於使用後退計數器計數與多個所述的後退時隙相等的隨機選擇的後退時間的後退裝置;以及適於在所述的後退計數器屆滿後嘗試預留所述信道並且在成功地預留了所述信道後能夠進行發送的預留裝置。
32.如權利要求31所述的系統,其特徵在於所述的後退裝置包括用於在檢測到了快速載波檢測(FCD)信號的後退時隙期間暫停所述的後退計數器的裝置;在沒有接收到FCD信號的後退時隙期間繼續所述的後退計數器;以及在沒有接收到了FCD信號的CD時間內接收到了載波檢測(CD)信號後,將發送推遲到下一個競爭階段。
33.如權利要求31所述的系統,其中所述的FCD信號快於所述的CD信號而被檢測。
34.如權利要求31所述的系統,其中所述的FCD信號的偽報警率比所述的CD信號高。
35.如權利要求31所述的系統,其中所述的後退裝置包括用於當接收到了CD信號後重新開始發送會話的裝置。
36.如權利要求31所述的系統,其中所述的後退計數器適於響應所述的被推遲的發送會話以產生新的隨機後退時間。
37.如權利要求31所述的系統,其中所述的後退計數器適於當繼續所述的發送會話後,從所述的後退計數器先前停止的時刻開始繼續計數。
38.如權利要求31所述的系統,其中所述的預留裝置適於向目的地站點發送包含有預留時間的請求發送(RTS)幀。
39.如權利要求31所述的系統,其中所述的預留裝置適於從目的地站點向源站點發送包含有預留時間的清除發送(CTS)幀。
40.如權利要求31所述的系統,其中所述的用於劃分每個競爭窗口的裝置包括適於按照在所述的競爭窗口內競爭信道的站點數目的函數來調整每個競爭窗口的大小的調整裝置。
41.如權利要求40所述的系統,其中使用管理幀確定所述的站點數目。
42.如權利要求40所述的系統,其中使用用於按照競爭窗口的當前大小和從當站點被允許發送到當該站點實際開始發送之間的時間的函數來計算所述網絡中的站點數目的估計值的裝置確定所述站點數目。
43.如權利要求31所述的系統,還包括用於在鏈路失敗的情況下釋放所述的曾經預留的信道的裝置。
44.如權利要求43所述的系統,其中通過適於指示CTS失敗的幀指示所述的鏈路失敗。
45.如權利要求43所述的系統,其中通過適於指示RTS失敗的幀指示所述的鏈路失敗。
46.如權利要求43所述的系統,其中通過適於指示ACK失敗的幀指示所述的鏈路失敗。
47.如權利要求31所述的系統,還包括用於在分配給會話的最大時間屆滿的情況下釋放所述信道的裝置。
48.如權利要求31所述的系統,還包括用於減少一個或多個預留計數器的裝置,每個預留計數器保持預留時間,其中為由站點檢測到的每個會話維護單獨的預留計數器,並且其中僅當具有最大預留時間的預留計數器屆滿時才認為釋放了所述的信道。
49.一種用於在基於載波偵聽多路訪問(CSMA)幀的通信網絡上發送和接收的通信收發信機,其中通過競爭幀間隙(CIFS)將幀的發送分隔開,在所述的競爭幀間隙期間,一個或多個節點競爭對所述網絡的訪問,所述收發信機包括用於產生在所述的網絡上接收到的接收信號和用於輸出發送信號到所述網絡上的耦合電路;發射機適於按照調製方案調製要被發送的數據以便從中產生所述的發送信號;接收機適於按照所述的調製方案解調所述的接收信號以便從中產生接收數據信號,並適於產生載波偵聽信號,所述的載波偵聽信號包括在傳輸開始後相對短的時刻產生、具有高的偽報警率且指示發送可能正在開始的快速載波檢測(FCD),以及在發送開始後相對長的時刻產生、具有低的偽報警率且指示發送正在開始的載波檢測(CD)信號;介質訪問控制(MAC),所述的介質訪問控制包括適於如下方面的裝置在當前發送會話終止後,建立一個或多個競爭窗口,每個競爭窗口分配有優先級並且被細分為多個後退時隙;推遲0或多個競爭窗口,直到優先級與特定的發送的優先級對應的競爭窗口到來時為止;用與隨機數目個後退時隙相等的後退值初始化後退計數器;當所述的介質空閒時減少所述的後退計數器;當所述的後退計數器屆滿後,嘗試預留所述的信道;當成功地預留了所述的信道後,發送到所述信道上;以及適於控制所述的發射機、接收機以及MAC的操作並適於在所述的MAC和外部主機之間提供接口的處理器。
50.如權利要求49所述的收發信機,其中由所述信道狀態從忙變成空閒的變化指示所述的當前發送會話的終止。
51.如權利要求49所述的收發信機,其中所述的MAC裝置適於在前一個發送會話的末尾與所述的信道競爭期間的開始之間插入競爭幀間隙(CIFS)。
52.如權利要求49所述的收發信機,其中預留所述信道包括向目的地站點發送包含有預留時間的請求發送(RTS)幀。
53.如權利要求49所述的收發信機,其中所述網絡中的站點數目的函數動態地調整每個所述的一個或多個競爭窗口的大小。
54.如權利要求53所述的收發信機,其中使用管理幀確定所述的站點數目。
55.如權利要求53所述的收發信機,其中使用這樣的裝置確定所述的站點數目,所述的這樣的裝置用於按照競爭窗口的當前大小和從當站點被允許發送到站點實際開始發送之間的時間的函數來計算所述網絡上的站點數目的估計值。
56.如權利要求49所述的收發信機,其中暫停所述的後退計數器,直到優先級與將被發送的發送的優先級對應的競爭窗口到來為止。
57.如權利要求49所述的收發信機,其中所述的初始化步驟包括在0和競爭窗口的大小之間選擇隨機數目個時隙。
58.如權利要求49所述的收發信機,其中所述的後退計數器從在接收到最近一個快速載波檢測(FCD)信號之前的值開始繼續。
59.如權利要求49所述的收發信機,其中在接收到了快速載波檢測(FCD)信號的CD時間內沒有接收到載波檢測(CD)信號指示所述的FCD信號是偽報警。
60.一種計算機可讀存儲介質,所述的計算機可讀存儲介質具有其上嵌入的電腦程式,所述的電腦程式用於使適當編程的系統在基於載波偵聽多路訪問(CSMA)幀的通信系統中訪問信道,其中通過競爭幀間隙(CIFS)將幀發送分隔開,在所述的幀間隙期間,當在所述的系統上執行這種程序時,一個或多個發射機通過執行下面的步驟競爭對所述的信道的訪問噹噹前發送會話終止後建立一個或多個競爭窗口,每個競爭窗口分配有優先級,並且每個競爭窗口被細分為多個後退時隙;推遲0或多個競爭窗口,直到優先級與特定發送的優先級對應的競爭窗口到達為止;用與隨機數目個後退時隙相等的後退值初始化後退計數器;當所述的介質空閒時減少所述的後退計數器;當所述的後退計數器屆滿後,嘗試預留所述的信道;以及當成功地預留了所述的信道後,發送到所述的信道上。
61.如權利要求60所述的計算機可讀存儲介質,其中所述的後退時隙的寬度是載波檢測(CD)信號的倍數。
62.如權利要求61所述的計算機可讀存儲介質,其中發送開始後的相對長的時刻產生所述的CD信號,所述的CD信號具有低的為報警率並且指示發送正在開始。
63.如權利要求60所述的計算機可讀存儲介質,其中所述的後退時隙的寬度是快速載波檢測(FCD)信號的倍數。
64.如權利要求63所述的計算機可讀存儲介質,其中在發送開始後相對短的時刻產生所述的FCD信號,所述的FCD信號具有高的報警率並且指示發送可能正在開始。
65.如權利要求60所述的計算機可讀存儲介質,還包括如下步驟在接收到快速載波檢測(FCD)信號後,暫停所述的後退計數器;當在CD時間內沒有載波檢測(CD)信號到來後繼續減少所述的後退計數器;以及當接收到CD信號後,將發送推遲到緊接著的發送之後。
66.如權利要求60所述的計算機可讀存儲介質,其中在發送之後,所述的FCD信號快於所述的CD信號而產生。
67.如權利要求60所述的計算機可讀存儲介質,其中所述的FCD信號具有比所述的CD信號更高的偽報警率。
68.如權利要求60所述的計算機可讀存儲介質,其中所述的FCD信號有比所述的CD信號更高的檢測可能性。
69.如權利要求60所述的計算機可讀存儲介質,還包括當接收到載波檢測(CD)信號後接著重新開始發送會話的步驟。
70.如權利要求60所述的計算機可讀存儲介質,其中按照所述網絡中的站點數目的函數動態地調整每個所述的一個或多個競爭窗口的大小。
71.如權利要求70所述的計算機可讀存儲介質,其中使用管理幀確定所述的站點數目。
72.如權利要求70所述的計算機可讀存儲介質,其中使用這樣的裝置確定所述的站點數目,所述的這樣的裝置用於按照競爭窗口的當前大小和從當站點被允許發送到當站點實際開始發送之間的時間的函數來計算所述網絡中的站點數目的估計值。
73.如權利要求60所述的計算機可讀存儲介質,其中所述的傳輸步驟包括向目的地站點發送包含有預留時間的請求發送(RTS)幀的步驟。
74.如權利要求60所述的計算機可讀存儲介質,其中所述的發送步驟包括從目的地站點向源站點發送包含有預留時間的清除發送(CTS)幀。
75.如權利要求60所述的計算機可讀存儲介質,還包括在鏈路失敗的情況下釋放所述的曾經預留的信道的步驟。
76.如權利要求75所述的計算機可讀存儲介質,其中通過適於指示CTS失敗的幀指示所述的鏈路失敗。
77.如權利要求75所述的計算機可讀存儲介質,其中通過適於指示RTS失敗的幀指示所述的鏈路失敗。
78.如權利要求60所述的計算機可讀存儲介質,還包括在分配給會話的最大時間屆滿的情況下釋放所述的信道的步驟。
79.如權利要求60所述的計算機可讀存儲介質,還包括減少一個或多個預留計數器的步驟,每個預留計數器保持預留時間,其中為由站點檢測到的每個會話維護單獨的預留計數器,並且其中僅當具有最大預留時間的預留計數器屆滿時,才認為釋放了所述的信道。
80.一種在包括多個站點的網絡中訪問通信信道的方法,所述方法包括如下步驟建立一個或多個競爭窗口,所述的多個站點在所述的競爭窗口內競爭對所述的通信信道的訪問;為所述的一個或多個競爭窗口的每一個分配不同的優先級;用與隨機數目個後退時隙相等的後退值初始化後退計數器;等待,直到優先級與特定站點的發送的優先級對應的競爭窗口到來,並且當其到來後,在所述的介質為空閒時,減少所述的後退計數器;以及當所述的後退計數器屆滿後嘗試預留所述的通信信道。
81.如權利要求80所述的方法,其中當站點預留所述的通信信道失敗後,增加所述的競爭窗口的大小。
82.如權利要求80所述的方法,其中當站點成功地預留了所述的通信信道後,減少所述的競爭窗口的大小。
83.一種在包括多個站點的網絡中,訪問通信信道的方法,所述方法包括如下步驟建立一個或多個競爭窗口,所述的多個站點在所述的競爭窗口內競爭對所述的通信信道的訪問;為所述的一個或多個競爭窗口的每一個分配優先級;用與隨機數目個後退時隙相等的後退值初始化後退計數器;等待,直到優先級與特定站點的發送的優先級相對應的競爭窗口的到來為止,並且當其到來後,在所述的介質為空閒時,減少所述的後退計數器;當所述的後退計數器屆滿後,嘗試預留所述信道;以及按照在所述的競爭窗口內競爭所述的通信信道的站點數目的函數調整競爭窗口的大小。
84.如權利要求83所述的方法,其中當站點預留所述的通信信道失敗後,增加所述的競爭窗口的大小。
85.如權利要求83所述的方法,其中當站點成功地預留了所述的通信信道後,減少所述的競爭窗口的大小。
86.如權利要求83所述的方法,其中按照下式計算所述的站點數目 其中t的期望值為E[t]=CWN+1]]>其中CW是競爭窗口,每個站點在CW內隨機地選擇後退值,N是在任意給定的時刻競爭所述的通信信道的站點數目,t是從站點被允許進行發送的時刻到一個站點開始發送的時刻的實際時間,E(t)是t的期望值。
87.一種在包括多個站點的網絡中訪問通信信道的方法,所述方法包括如下步驟建立一個或多個競爭窗口,所述的多個站點在所述的競爭窗口內競爭對所述的通信信道的訪問;按照當前競爭窗口的大小以及為從站點被允許發送的時刻直到一個站點開始發送的實際時間的時間t的函數估計所述網絡中的站點數目;按照估計的所述網絡中的站點數目的函數調整所述的一個或多個競爭窗口的每一個的大小;以及每個站點將對所述通信信道的預留的嘗試推遲到特定發送相關聯的競爭窗口到達為止。
88.一種在包括多個站點的網絡中訪問通信信道的方法,所述方法包括如下步驟每個站點產生指示所述的通信信道忙的虛擬載波偵聽信號;以及當所述的虛擬載波偵聽信號指示所述的通信信道當前忙,並且目前正在預留所述通信信道的站點確定將要更新與其會話相關聯的預留計數器時,將包含更新的預留計數器時間的消息發送到所述網絡上。
89.如權利要求88所述的方法,其中減少所述的更新的預留計數器。
90.如權利要求88所述的方法,其中增加所述的更新的預留計數器。
91.如權利要求88所述的方法,其中所述的更新的預留計數器設置為0以便使所述的通信信道被釋放。
92.一種在包括多個站點的網絡中訪問通信信道的方法,所述方法包括如下步驟檢測在所述的網絡中的站點間建立的一個或多個會話;在每個站點中為由特定站點檢測到的每個會話維護預留計數器,所述的預留計數器保持預留時間;周期性地減少每個預留計數器;以及當具有最大的預留時間的預留計數器屆滿後,就認為所述的通信信道被釋放。
93.一種在包括多個站點的基於電力線載波的網絡中,訪問通信信道的方法,所述方法包括如下步驟建立一個或多個競爭窗口,所述的多個站點在所述的競爭窗口內競爭對所述的通信信道的訪問;為所述的一個或多個競爭窗口的每一個分配不同的優先級;每個站點偵聽所述通信信道看是否有載波信號;每個想要發送的站點選擇隨機的後退時間;每個站點等待,直到與其相關的優先級與特定站點的發送的優先級對應的競爭窗口到來為止;在具有匹配的優先級的競爭窗口內,等待隨機的後退時間;當所述的後退時間屆滿後,嘗試預留所述的通信信道;以及如果檢測到了載波信號的存在,就暫停所述的後退時間的倒數。
94.一種在包括多個站點的網絡中訪問通信信道的方法,所述方法包括如下步驟建立一個或多個競爭窗口,所述的多個站點在所述的競爭窗口內競爭對所述的通信信道的訪問;用與隨機數目個後退時隙相等的後退值初始化後退計數器;等待,直到與特定發送對應的競爭窗口的到來為止,並且當其到來後,在所述的介質空閒時,減少所述的後退計數器;當所述的後退計數器屆滿後,嘗試預留所述的信道;在進行了預定次數的失敗的對所述通信信道的預留嘗試後,宣布存在隱藏的站點;以及由此增加所述的後退時隙的寬度並且重複所述的初始化步驟,等待並嘗試預留所述的通信信道。
95.一種在包括多個站點的網絡中訪問通信信道的方法,所述方法包括如下步驟將發送會話分段成多個幀;建立一個或多個競爭窗口,所述的多個站點在所述的競爭窗口內競爭對所述的通信信道的訪問;用與隨機數目個後退時隙相等的後退值初始化後退計數器;等待,直到與特定發送對應的競爭窗口的到來為止,並且當其到來後,在所述的介質空閒時,減少所述的後退計數器;當所述的後退計數器屆滿後,嘗試預留所述的信道一段足夠發送所述的多個幀的時間;從發送站點向接收站點發送所述的多個幀;以及所述的接收站點向所述的發送站點發送ACK應答,所述的ACK應答包括多個ACK位,每個ACK位指示是否要重新發送所述的幀中的一個。
96.一種在包括多個站點的網絡中訪問通信信道的方法,所述方法包括如下步驟按照下式估計在所述的通信網絡中的站點數目 其中t的期望值為E[t]=CWN+1]]>並且其中CW表示一個或多個競爭窗口之一的寬度,在CW內每個站點隨機地選擇後退時隙,N是在任意給定的時間競爭信道的站點數目,t是從站點被允許發送的時刻直到一個站點開始發送的時刻的實際的時間,並且E(t)是t的期望值。
97.一種在包括多個站點的網絡中訪問通信信道的方法,所述方法包括如下步驟從發送站點向接收站點發送消息;所述的接收站點在接收到消息後發送確認消息;當所述的發送站點沒有接收到所述的確認消息後,所述的發送站點向所述的接收站點發送請求確認(RA)消息;以及當所述的發送站點一直沒有接收到所述的確認消息後,所述的發送站點反覆地向所述的接收站點發送RA消息。
98.如權利要求97所述的方法,其中重複所述的反覆地向所述的接收站點發送RA消息的步驟,直到所述的發送站點接收到確認為止。
99.如權利要求97所述的方法,其中所述的反覆地向所述的接收站點發送RA消息的步驟被重複max RA retries次。
全文摘要
一種旨在用於有噪聲的共享介質信道上的新穎及有用的介質訪問控制(MAC)協議。所述的MAC協議在使用共享介質的網絡上提供第二層功能,包括用於CSMA.CA信道訪問的後退機制、減少長的MAC地址開銷的鏈路編址、用於廣播傳輸的具有受控的風險的擴散方案、使用可選擇的ACK的多路廣播傳輸、使用自適應後退方案的業務優先級的實現方案、第二層轉發器的建立過程以及用於短分組的多分組傳輸和用於長分組傳輸的分段。
文檔編號H04B3/54GK1533643SQ02814500
公開日2004年9月29日 申請日期2002年6月18日 優先權日2001年6月18日
發明者D·拉斐利, M·穆什基, R·加齊特, Y·卡琴, A·埃雷茲, D 拉斐利, 不 , 胩, 鬃 申請人:伊特蘭通信有限公司