一種靈活乙太網中傳輸數據的方法及設備與流程
2023-10-06 04:15:29 2

本申請涉及通信領域,尤其涉及一種靈活乙太網(英文:Flex Ethernet,FlexE)中傳輸數據的方法及設備。
背景技術:
光互聯論壇(英文:Optical Internetworking Forum,OIF)發布的靈活乙太網實施協議(英文:implementation agreement)中在介質訪問控制(英文:Media Access Control,MAC)層和物理層之間定義了一個墊片(英文:shim)層。基於FlexE的轉發中,發送端FlexE設備使用FlexE客戶(英文:client)對應的時隙向接收端FlexE設備發送該FlexE客戶的報文。該FlexE客戶是基於MAC數據速率的乙太網流,該MAC數據速率可以等於或不等於乙太網物理層速率。接收端FlexE設備從FlexE客戶對應的時隙中獲取發送端FlexE設備發送的數據來恢復報文。
當發送端FlexE設備發送報文時使用的硬體出現部分損壞時,例如FlexE設備中包括對應於多個時隙的多個並行處理部件,該多個並行處理部件中的一個損壞,則發送端FlexE設備在該損壞的處理部件對應的時隙中發出的報文將出現錯誤。某一時隙中的報文持續出現錯誤,可以稱作該時隙損壞。接收端FlexE設備將報文恢復後,通過錯誤校驗可以發現並丟棄該錯誤報文或對報文進行糾錯。但發送端FlexE設備無法感知該時隙是否損壞,還會繼續用損壞的時隙來發送報文,導致報文傳輸受到影響。
技術實現要素:
本申請提供了一種FlexE中傳輸數據的方法及設備,有助於降低FlexE中傳輸數據時出現時隙損壞的影響。
第一方面,提供了一種FlexE中傳輸數據的方法。該方法包括:
第一FlexE設備用第一客戶日程表接收第二FlexE設備發送的包括多個數據塊的數據,所述第一客戶日程表指示客戶到第一時隙集合的對應關係;
所述第一FlexE設備根據所述多個數據塊中錯誤的數據塊確定第一時隙損壞,所述第一時隙集合包括所述第一時隙;
所述第一FlexE設備在向所述第二FlexE設備發送的開銷頭幀中添加時隙損壞通知,所述時隙損壞通知指示所述第一時隙損壞;
所述第一FlexE設備接收所述第二FlexE設備發送的第二客戶日程表,所述第二客戶日程表指示所述客戶到第二時隙集合的對應關係,所述第二時隙集合中包括所述第一時隙集合中除所述第一時隙外的時隙;
所述第一FlexE設備用所述第二客戶日程表接收所述第二FlexE設備發送的數據。
通過以上方案,接收端FlexE設備可以將時隙損壞情況通知給發送端FlexE設備,使得發送端FlexE設備可以及時調整傳輸時隙,降低時隙損壞對數據傳輸的影響。
可選地,所述第二時隙集合中還包括不在所述第一時隙集合中的替換時隙。通過使用替換時隙來代替損壞的時隙,有助於提供足夠的傳輸時隙,進一步降低時隙損壞對數據傳輸的影響。
可選地,所述第一FlexE設備根據所述錯誤的數據塊確定第一時隙損壞包括:如果對應於所述第一時隙的錯誤的數據塊的數量滿足條件,所述第一FlexE設備確定所述第一時隙損壞。通過設置判斷時隙損壞的條件,可以過濾偶然發生的傳輸錯誤,提高本傳輸數據的方法的適用性。
第二方面,提供了一種FlexE中傳輸數據的方法。該方法包括:
第一FlexE設備用第一客戶日程表向第二FlexE設備發送包括多個數據塊的數據,所述第一客戶日程表指示客戶到第一時隙集合的對應關係;
所述第一FlexE設備接收所述第二FlexE設備發送的開銷頭幀中的時隙損壞通知,所述時隙損壞通知指示所述第一時隙集合中的第一時隙損壞;
所述第一FlexE設備向所述第二FlexE設備發送第二客戶日程表,所述第二客戶日程表指示所述客戶到第二時隙集合的對應關係,所述第二時隙集合中包括所述第一時隙集合中除所述第一時隙外的時隙;
所述第一FlexE設備用所述第二客戶日程表向所述第二FlexE設備發送數據。
可選地,所述第二時隙集合中還包括不在所述第一時隙集合中的替換時隙。
第二方面的上述方案與第一方面描述內容中使用相同手段的對應方案具有相同的技術效果。
第三方面,提供了一種包括媒體接入控制器、FlexE墊片電路和物理層收發器的FlexE設備。
所述FlexE墊片電路,用於用第一客戶日程表經所述物理層收發器接收另一FlexE設備發送的包括多個數據塊的數據,根據所述媒體接入控制器確定的所述多個數據塊中錯誤的數據塊確定第一時隙損壞,經所述物理層收發器向所述另一FlexE設備發送包括時隙損壞通知的開銷頭幀。所述第一客戶日程表指示客戶到第一時隙集合的對應關係。所述第一時隙集合包括所述第一時隙。所述時隙損壞通知指示所述第一時隙損壞。
所述FlexE墊片電路,還用於經所述物理層收發器接收所述另一FlexE設備發送的第二客戶日程表,用所述第二客戶日程表經所述物理層收發器接收所述另一FlexE設備發送的數據。所述第二客戶日程表指示所述客戶到第二時隙集合的對應關係。所述第二時隙集合中包括所述第一時隙集合中除所述第一時隙外的時隙。
可選地,所述第二時隙集合中還包括不在所述第一時隙集合中的替換時隙。
可選地,所述FlexE墊片電路根據所述媒體接入控制器確定的所述多個數據塊中錯誤的數據塊確定第一時隙損壞包括:如果對應於所述第一時隙的錯誤的數據塊的數量滿足條件,所述FlexE墊片電路確定所述第一時隙損壞。
第三方面的上述方案與第一方面描述內容中使用相同手段的對應方案具有相同的技術效果。
第四方面,提供了一種包括FlexE墊片電路和物理層收發器的FlexE設備。
所述FlexE墊片電路,用於用第一客戶日程表經所述物理層收發器向另一FlexE設備發送包括多個數據塊的數據。所述第一客戶日程表指示客戶到第一時隙集合的對應關係。
所述FlexE墊片電路,還用於經所述物理層收發器接收所述另一FlexE設備發送的開銷頭幀中的時隙損壞通知。所述時隙損壞通知指示所述第一時隙集合中的第一時隙損壞。
所述FlexE墊片電路,還用於經所述物理層收發器向所述另一FlexE設備發送第二客戶日程表。所述第二客戶日程表指示所述客戶到第二時隙集合的對應關係。所述第二時隙集合中包括所述第一時隙集合中除所述第一時隙外的時隙。
所述FlexE墊片電路,還用於用所述第二客戶日程表經所述物理層收發器向所述另一FlexE設備發送數據。
可選地,所述第二時隙集合中還包括不在所述第一時隙集合中的替換時隙。第四方面的上述方案與第一方面描述內容中使用相同手段的對應方案具有相同的技術效果。
第五方面,提供一種包括接收單元、確定單元和發送單元的FlexE設備。
所述接收單元,用於用第一客戶日程表接收另一FlexE設備發送的包括多個數據塊的數據,所述第一客戶日程表指示客戶到第一時隙集合的對應關係。
所述確定單元,用於根據所述多個數據塊中錯誤的數據塊確定第一時隙損壞,所述第一時隙集合包括所述第一時隙。
所述發送單元,用於在向所述另一FlexE設備發送的開銷頭幀中添加時隙損壞通知,所述時隙損壞通知指示所述第一時隙損壞。
所述接收單元,還用於接收所述另一FlexE設備發送的第二客戶日程表,所述第二客戶日程表指示所述客戶到第二時隙集合的對應關係,所述第二時隙集合中包括所述第一時隙集合中除所述第一時隙外的時隙;以及用於用所述第二客戶日程表接收所述另一FlexE設備發送的數據。
可選地,所述第二時隙集合中還包括不在所述第一時隙集合中的替換時隙。
可選地,所述確定單元根據所述錯誤的數據塊確定第一時隙損壞包括:如果對應於所述第一時隙的錯誤的數據塊的數量滿足條件,所述確定單元確定所述第一時隙損壞。
第五方面的上述方案與第一方面描述內容中使用相同手段的對應方案具有相同的技術效果。
第六方面,提供一種包括發送單元和接收單元的FlexE設備。
所述發送單元,用於用第一客戶日程表向另一FlexE設備發送包括多個數據塊的數據,所述第一客戶日程表指示客戶到第一時隙集合的對應關係。
所述接收單元,用於接收所述另一FlexE設備發送的開銷頭幀中的時隙損壞通知,所述時隙損壞通知指示所述第一時隙集合中的第一時隙損壞。
所述發送單元,還用於向所述另一FlexE設備發送第二客戶日程表,所述第二客戶日程表指示所述客戶到第二時隙集合的對應關係,所述第二時隙集合中包括所述第一時隙集合中除所述第一時隙外的時隙;以及用於用所述第二客戶日程表向所述另一FlexE設備發送數據。
可選地,所述第二時隙集合中還包括不在所述第一時隙集合中的替換時隙。
第六方面的上述方案與第一方面描述內容中使用相同手段的對應方案具有相同的技術效果。
附圖說明
圖1為FlexE設備利用一個物理層收發器傳送的數據的示意圖;
圖2為本申請實施例提供的一種FlexE中傳輸數據的方法流程示意圖;
圖3是本申請實施例提供的一種FlexE設備300的結構圖;
圖4是本申請實施例提供的一種FlexE設備400的結構圖;
圖5是本申請實施例提供的一種FlexE設備500的結構圖。
具體實施方式
為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖對本發明實施方式做出進一步地詳細描述。
本申請實施例描述的應用場景是為了更加清楚的說明本申請實施例的技術方案,並不構成對於本申請實施例提供的技術方案的限定,本領域普通技術人員可知,隨著網絡架構的演變和新應用場景的出現,本申請實施例提供的技術方案對於類似的技術問題,同樣適用。
FlexE中的數據的傳輸基於時分復用機制。具體地,可以將傳輸速率為100吉比特每秒(Gbit/s)的物理層收發器的時域資源劃分為20個時隙,以20個時隙為一個周期,進行數據的發送和接收。這20個時隙中的每個時隙中,物理層收發器的發送和接收速率為5Gbit/s。每個周期中FlexE設備利用物理層收發器可以在一個時隙中發送一個數據塊,也可以在一個時隙中接收一個數據塊。一個FlexE客戶對應於一個或多個時隙。物理層收發器的時域資源中的20個時隙可以對應1個FlexE客戶或者多個FlexE客戶。也就是說,物理層收發器的時域資源中的20個時隙可以只用於發送或接收一個FlexE客戶的數據,也可以用於發送或接收多個FlexE客戶的數據。FlexE客戶和時隙的對應關係被稱為客戶日程表(英文:Client Calendar)。發送端FlexE設備A使用客戶日程表在與FlexE客戶對應的時隙向接收端FlexE設備B發送該FlexE客戶的數據塊。
圖1是FlexE設備利用一個物理層收發器傳送的數據的示意圖。
FlexE設備利用一個物理層收發器傳送的數據是由數據塊和開銷頭(英文:overhead)組成的。本申請中的「*」是乘號。具體地,如圖1所示每20*1023個連續的數據塊之前有一個開銷頭。該開銷頭和20*1023個連續的數據塊之間沒有其他數據塊或開銷頭。FlexE設備A發送8*32個所述20*1023個連續的數據塊後,共發送了8*32個開銷頭。其中,每8個開銷頭構成一個FlexE開銷頭幀(英文:Overhead frame)。32個FlexE開銷頭幀構成一個FlexE開銷頭復幀(英文:Overhead Multiframe)。FlexE開銷頭復幀的前20個FlexE開銷頭幀每個都包括對應於一個時隙的兩個FlexE客戶指示欄位。例如,第1個FlexE開銷頭幀包括對應於第1時隙的兩個FlexE客戶指示欄位,例如第1時隙的客戶承載日程表A和第1時隙的客戶承載日程表B。第2個FlexE開銷頭幀包括對應於第2時隙的兩個FlexE客戶指示欄位,例如第2時隙的客戶承載日程表A和第2時隙的客戶承載日程表B。依此類推。在一個FlexE開銷頭復幀發送完成前,FlexE設備A和FlexE設備B約定的客戶日程表不改變。FlexE設備用第1時隙的客戶承載日程表A至第20時隙的客戶承載日程表A組合得到客戶日程表A。FlexE設備用第1時隙的客戶承載日程表B至第20時隙的客戶承載日程表B組合得到客戶日程表B。接收端的的FlexE設備B可以根據客戶日程表A或客戶日程表B組裝來自相同FlexE客戶的數據塊以恢復出FlexE客戶的原始報文。該FlexE開銷頭復幀還可以包括其他欄位。該FlexE開銷頭復幀中各個欄位的具體內容可以參考靈活乙太網實現協議1.0(英文:Flex Ethernet Implementation Agreement 1.0)中的描述。
以上20*1023個數據塊中的每個數據塊可以是64比特/66比特(64b/66b)線路編碼的數據塊。本申請中的數據塊是指編碼的數據塊。例如,數據塊可以是經物理編碼子層(英文:physical coding sublayer,簡稱:PCS)電路編碼的數據塊。
以上組成一個FlexE開銷頭幀的8個開銷頭中,每個開銷頭都是一個66比特的塊。按照靈活乙太網實現協議1.0中的描述,該8個開銷頭包括保留位可以利用。例如第2個開銷頭的第20至第66位,第3個開銷頭的第38至50位。
本申請實施例利用以上FlexE開銷頭幀中的保留位來傳遞時隙損壞通知。接收端FlexE設備可以根據接收的數據塊中存在錯誤的錯誤塊來確定損壞時隙,用接收該數據塊的同一線纜反方向向發送端FlexE設備發送時隙損壞通知,該線纜中例如包括一對沿正反兩個方向傳輸數據的線路。由此,接收端FlexE設備發送的時隙損壞通知指示的損壞時隙與發送端FlexE設備損壞的時隙相對應。發送端FlexE設備可以根據時隙損壞通知調整發送數據時所使用的時隙。該保留位例如使用第3個開銷頭的第38位,值為0表示時隙處於正常狀態,值為1表示時隙處於損壞狀態。
圖2是本申請實施例提供的一種FlexE中傳輸數據的方法流程示意圖。該方法流程示意如下:
S201,FlexE設備A用第一客戶日程表向FlexE設備B發送包括多個數據塊的數據。
第一客戶日程表指示客戶到第一時隙集合的對應關係。第一時隙集合可以包括多個時隙。第一客戶日程表例如是客戶日程表A,客戶日程表A指示一個或多個客戶到第一時隙集合的對應關係。第一時隙集合包括一個或多個時隙。例如,第一時隙集合包括第1時隙,第2時隙和第5時隙。客戶日程表A指示FlexE客戶1對應所述第一時隙集合中的第1時隙和第2時隙,FlexE客戶2對應所述第一時隙集合中的第5時隙。FlexE設備A根據客戶日程表A,周期性地在第一時隙集合中的多個時隙向FlexE設備B發送數據,每個發送周期內在該多個時隙中的每個時隙可以發送一個數據塊。
S202,FlexE設備B用第一客戶日程表接收FlexE設備A發送的包括多個數據塊的數據。
FlexE設備B根據第一客戶日程表的指示,從FlexE設備A發送的數據中獲取來自FlexE客戶的多個數據塊。FlexE設備B在第一時隙集合包括的對應於一個FlexE客戶的一個或多個時隙接收對應於該一個FlexE客戶的多個數據塊。FlexE設備B在第一時隙集合包括的對應於另一個FlexE客戶的一個或多個時隙接收對應於該另一個FlexE客戶的多個數據塊。FlexE設備B分別組裝來自相同FlexE客戶的數據塊以恢復來自各個FlexE客戶的原始報文。
S203,FlexE設備B根據所述多個錯誤塊中錯誤的數據塊確定第一時隙損壞。
FlexE設備B對從多個數據塊恢復出的原始報文進行錯誤檢測,該檢測例如使用循環冗餘校驗(英文:Cyclic Redundancy Check,簡稱:CRC)。通過錯誤檢測,可以確定原始報文中的錯誤報文,該錯誤報文包括的數據塊為錯誤的數據塊,由此可以確定該多個數據塊中錯誤的數據塊。該錯誤的數據塊可以是在一個接收周期內的多個時隙接收的,也可以是在多個接收周期內的一個時隙或多個時隙接收的。該接收錯誤的數據塊的一個或多個時隙為損壞時隙。根據該多個數據塊中錯誤的數據塊可以確定第一時隙集合中的損壞時隙,例如第一時隙,該第一時隙可以包括一個或多個時隙。
可選地,如果對應於第一時隙的錯誤的數據塊的數量滿足條件,FlexE設備B確定第一時隙損壞。舉例來說,FlexE設備B確定所述多個數據塊中所有錯誤的數據塊對應的時隙,對每個時隙對應的錯誤的數據塊的數量分別進行統計,當一個時隙對應的錯誤的數據塊數量超過閾值時,確定該一個時隙損壞,或者當單位時間內一個時隙對應的錯誤的數據塊數量超過閾值時,確定該一個時隙損壞,或者當單位時間內一個時隙對應的錯誤的數據塊數量和單位時間內一個時隙對應的數據塊的總數之比超過閾值時,確定該一個時隙損壞。所述第一時隙包括所有被確定為損壞的時隙。通過設置判斷時隙損壞的條件,可以過濾偶然發生的傳輸錯誤,避免錯誤刪除或替換未損壞的時隙,進一步提高本傳輸數據的方法的適用性。
S204,FlexE設備B在向FlexE設備A發送的開銷頭幀中添加時隙損壞通知,所述時隙損壞通知指示所述第一時隙損壞。
FlexE設備B向FlexE設備A發送的每個開銷頭幀中包括8個開銷頭,可以選擇其中的保留位做為時隙損壞通知來指示損壞的時隙。例如選擇第2個開銷頭的第20至39位共20個比特,值為0表示時隙正常,值為1表示時隙損壞,20個比特的值可以依次表示20個時隙的損壞狀態。還例如,FlexE設備B在向FlexE設備A發送的多個開銷頭幀中順序添加時隙損壞通知。該多個開銷頭幀可以是FlexE設備B向FlexE設備A發送的開銷頭復幀中的前20個開銷頭幀。FlexE設備B向FlexE設備A發送的在前20個開銷頭幀中的每個開銷頭幀對應FlexE設備A向FlexE設備B發送的數據的一個時隙。如果FlexE設備A向FlexE設備B發送數據的一個時隙損壞,FlexE設備B在FlexE設備B向FlexE設備A發送的對應的開銷頭幀中添加時隙損壞通知。例如,該時隙損壞通知佔用每個開銷頭幀中第3個開銷頭的第38位,值為0表示時隙正常,值為1表示時隙損壞。由此FlexE設備B向FlexE設備A順序發送的20個開銷頭幀中的時隙損壞通知可以順序指示第1至20個時隙的損壞狀態。
S205,FlexE設備A向FlexE設備B發送第二客戶日程表,所述第二客戶日程表指示所述客戶到第二時隙集合的對應關係。
第二時隙集合中不包括第一時隙。第二時隙集合中可以包括第一時隙集合中除所述第一時隙外的任意時隙。第二時隙集合中還可以包括不在所述第一時隙集合中的時隙(例如替換時隙或新增時隙)。
FlexE設備A根據FlexE設備B發送的開銷頭幀中的時隙損壞通知,將第一客戶日程表中客戶到所述第一時隙的關係刪除從而生成第二客戶日程表,該刪除例如是將第一客戶日程表中第一時隙對應的客戶承載日程表刪除或是將客戶承載日程表設置為不指示任何客戶的其它值。當第一客戶日程表是客戶日程表A時,第二客戶日程表是客戶日程表B。由此FlexE設備B生成的二客戶日程表可以指示所述客戶到第二時隙集合的對應關係,該第二時隙集合中包括所述第一時隙集合中除所述第一時隙外的時隙。
可選地,所述第二時隙集合中還包括替換時隙,所述替換時隙不在所述第一時隙集合中。FlexE設備A可以查找用於替換第一時隙的替換時隙,該替換時隙不在第一時隙集合中。FlexE設備A在第二客戶日程表中添加替換時隙對應的指示所述客戶的客戶承載日程表。由此第二客戶日程表可以指示所述客戶到第二時隙集合的對應關係,所述第二時隙集合中包括不在所述第一時隙集合中的替換時隙。所述替換時隙可以是所述第一客戶日程表中不含客戶承載日程表的時隙或是客戶承載日程表不指示任何客戶的時隙。FlexE設備A可以記錄損壞時隙,以便在後續再次執行本方法查找替換時隙時,排除已經記錄的損壞時隙。通過使用替換時隙來代替損壞的時隙,有助於提供足夠的傳輸時隙,進一步降低時隙損壞對數據傳輸的影響,保證足夠的傳輸速率。
FlexE設備A在準備好第二客戶日程表後,向FlexE設備B發出日曆請求(英文:Calendar Request,CR),例如在向FlexE設備B發送的開銷頭幀中設置日曆請求位的值,開銷頭幀中第3個開銷頭的第36位為CR位。當上一個被發送的開銷頭幀中的CR位的值為0時,FlexE設備A改為持續發送CR位的值為1的FlexE開銷頭幀。或者當上一個被發送的FlexE開銷頭幀中的CR位的值為1時,FlexE設備A改為持續發送CR位的值為0的FlexE開銷頭幀。
FlexE設備B根據日曆請求位的值識別出FlexE設備A發出的日曆請求,向FlexE設備A發送日曆應答(英文:Calendar Acknowledge,CA),例如在向FlexE設備A發送的開銷頭幀中設置日曆應答位的值,開銷頭幀中第3個開銷頭的第37位為CA位。FlexE設備B設置的CA值與FlexE設備設置的CR值相同,由此FlexE設備A識別FlexE設備B發送的針對日曆請求的日曆應答。
S206,FlexE設備B用所述第二客戶日程表接收FlexE設備A發送的數據。
FlexE設備A在收到日曆應答,完成第二客戶日程表的發送後,開始使用第二客戶日程表向FlexE設備B發送包括多個數據塊的數據。當第一客戶日程表為客戶日程表A時,第二客戶日程表為客戶日程表B,當第一客戶日程表為客戶日程表B時,第二客戶日程表為客戶日程表A。第二客戶日程表指示所述FlexE客戶到第二時隙集合的對應關係。FlexE設備A根據第二客戶日程表,在第二時隙集合中的多個時隙向FlexE設備B發送包括多個數據塊的數據。FlexE設備A根據第二客戶日程表,周期性地在第二時隙集合中的多個時隙向FlexE設備B發送數據,每個發送周期內在該多個時隙中的每個時隙可以發送一個數據塊。FlexE設備B從FlexE設備A發送的數據中獲取來自FlexE客戶的多個數據塊。FlexE設備B在第二時隙集合包括的對應於一個FlexE客戶的一個或多個時隙接收對應於該一個FlexE客戶的多個數據塊。FlexE設備B在第二時隙集合包括的對應於另一個FlexE客戶的一個或多個時隙接收對應於該另一個FlexE客戶的多個數據塊。FlexE設備B分別組裝來自相同FlexE客戶的數據塊以恢復來自各個FlexE客戶的原始報文。
FlexE設備A可以設置FlexE開銷頭幀中的3個C比特的值來通知FlexE設備B:正在發送的數據是使用客戶日程表A還是客戶日程表B。以上3個C比特分別位於開銷頭幀中第1個開銷頭的第11位,第2個開銷頭的第3位,第3個開銷頭的第3位。FlexE設備A發送開銷頭幀時設置的3個相同的C比特的值,FlexE設備B接收到開銷頭幀後基於3個C比特的值採用多數投票(英文:majority vote)決定C比特的值。當FlexE設備A使用的客戶日程表在客戶日程表A和客戶日程表B之間進行切換時,FlexE設備A更改3個C比特的值,例如從0到1,或是從1到0。
通過以上圖2中所示方法,接收端FlexE設備可以將時隙損壞情況通知給發送端FlexE設備,使得發送端FlexE設備可以及時調整傳輸時隙,刪除損壞的時隙以降低對數據傳輸的影響。
圖3是本申請實施例提供的一種FlexE設備300的結構圖。FlexE設備300為具有FlexE墊片層處理功能的網絡設備,可以包括物理層收發器(英文:physical transceiver)301、FlexE墊片電路302和媒體接入控制器(英文:media access controller)303。FlexE設備300可以做為圖2所示方法中的FlexE設備B或FlexE設備A。FlexE設備300可以使用物理層收發器301、FlexE墊片電路302和媒體接入控制器303實現FlexE設備B的功能。FlexE設備300可以使用物理層收發器301和FlexE墊片電路302實現FlexE設備A的功能。
當FlexE設備300做為圖2所示方法中FlexE設備B時,FlexE設備300內部實現如下:
FlexE墊片電路302用第一客戶日程表經物理層收發器301接收FlexE設備A發送的包括多個數據塊的數據,組裝來自相同FlexE客戶的數據塊以恢復來自各個客戶的原始報文,其中第一客戶日程表指示客戶到第一時隙集合的對應關係。媒體接入控制器303對原始報文進行錯誤檢測,確定原始報文中的錯誤報文,該錯誤報文包括的數據塊為錯誤的數據塊。FlexE墊片電路302根據錯誤的數據塊確定第一時隙集合中的損壞時隙。以上用第一客戶日程表接收數據、錯誤檢測和確定損壞時隙方法與圖2所示步驟S202和步驟S203相同。
FlexE墊片電路302在向FlexE設備A發送的開銷頭幀中添加時隙損壞通知,該時隙損壞通知可以指示第一時隙集合中的損壞時隙。該添加時隙損壞通知的方法與圖2所示步驟S204相同。FlexE墊片電路302經物理層收發器301向FlexE設備A發送包括時隙損壞通知的開銷頭幀。
FlexE墊片電路302經物理層收發器301接收FlexE設備A發送的第二客戶日程表,用第二客戶日程表經物理層收發器301接收FlexE設備A發送的數據。第二客戶日程表指示所述客戶到第二時隙集合的對應關係,第二時隙集合中包括第一時隙集合中除損壞時隙外的時隙。FlexE墊片電路302可以在經物理層收發器301收到FlexE設備A發送的日曆請求和第二客戶日程表,並且準備好使用第二客戶日程表接收FlexE設備A發送的數據後,向FlexE設備A發送的開銷頭幀中設置日曆應答位的值,以便向FlexE設備A返回日曆應答。以上接收第二客戶日程表和用第二客戶日程表接收FlexE設備A發送的數據與圖2所示步驟S205和步驟S206相同。
第二時隙集合中不包括第一時隙集合中的損壞時隙。可選地,第二時隙集合中可以包括第一時隙集合中除所述損壞時隙外的任意時隙。第二時隙集合中還可以包括不在所述第一時隙集合中的時隙(例如替換時隙或新增時隙)。以上替換時隙與圖2所示步驟S205中所述替換時隙相同。
可選地,FlexE墊片電路302根據錯誤的數據塊的數量是否滿足條件來確定時隙損壞。確定時隙損壞的方法和條件與圖2所示步驟S203相同。
媒體接入控制器303、FlexE墊片電路302和物理層收發器301可以集成在一個現場可編程邏輯閘陣列(英文:field-programmable gate array,FPGA)上或一個專用集成電路(英文:application-specific integrated circuit,ASIC)上,也可以設置在不同的FPGA或ASIC上。
當FlexE設備300做為圖2所示方法中FlexE設備A時,FlexE設備300內部實現如下:
FlexE墊片電路302用第一客戶日程表經物理層收發器301向FlexE設備B發送包括多個數據塊的數據。第一客戶日程表指示客戶到第一時隙集合的對應關係。該發送數據的方法與圖2所示步驟S201相同。
FlexE墊片電路302經物理層收發器301接收FlexE設備B發送的開銷頭幀中的時隙損壞通知,該時隙損壞通知指示第一時隙集合中的第一時隙損壞。FlexE墊片電路302根據時隙損壞通知將第一客戶日程表中客戶到所述第一時隙的關係刪除從而生成第二客戶日程表。第二客戶日程表指示所述客戶到第二時隙集合的對應關係。第二時隙集合中不包括第一時隙。第二時隙集合中可以包括第一時隙集合中除所述第一時隙外的任意時隙。第二時隙集合中還可以包括不在所述第一時隙集合中的時隙(例如替換時隙或新增時隙)。以上FlexE墊片電路302根據時隙損壞通知生成第二客戶日程表的方法與圖2所示步驟S205相同。以上替換時隙與圖2所示步驟S205中所述替換時隙相同。
FlexE墊片電路302經物理層收發器301向FlexE設備B發送第二客戶日程表,該FlexE墊片電路302發送第二客戶日程表的方法與圖2所示步驟S205相同。
FlexE墊片電路302用第二客戶日程表經物理層收發器301向FlexE設備B發送數據。該FlexE墊片電路302用第二客戶日程表向FlexE設備B發送數據的方法與圖2所示步驟S206相同。
FlexE墊片電路302和物理層收發器301可以集成在一個FPGA上或一個ASIC上,也可以設置在不同的FPGA或ASIC上。
圖4是本申請實施例提供的一種FlexE設備400的結構圖。FlexE設備400可以是圖2所示方法中的FlexE設備B,可以是圖3所示做為FlexE設備B時的FlexE設備300。FlexE設備400包括接收單元401、確定單元402和發送單元403。接收單元401和發送單元403的功能例如由圖3中FlexE墊片電路302結合物理層收發器301實現,確定單元402的功能例如由圖3中FlexE墊片電路302結合媒體接入控制器303實現。
接收單元401,用於用第一客戶日程表接收FlexE設備A發送的包括多個數據塊的數據,所述第一客戶日程表指示客戶到第一時隙集合的對應關係。
確定單元402,用於根據所述多個數據塊中錯誤的數據塊確定第一時隙損壞,所述第一時隙集合包括所述第一時隙。
發送單元403,用於在向FlexE設備A發送的開銷頭幀中添加時隙損壞通知,所述時隙損壞通知指示所述第一時隙損壞。
接收單元401,還用於接收FlexE設備A發送的第二客戶日程表,所述第二客戶日程表指示所述客戶到第二時隙集合的對應關係,所述第二時隙集合中包括所述第一時隙集合中除所述第一時隙外的時隙;以及用於用所述第二客戶日程表接收FlexE設備A發送的數據。
可選地,所述第二時隙集合中還包括不在所述第一時隙集合中的替換時隙。
可選地,確定單元402根據所述錯誤的數據塊確定第一時隙損壞包括:如果對應於所述第一時隙的錯誤的數據塊的數量滿足條件,確定單元402確定所述第一時隙損壞。
圖5是本申請實施例提供的一種FlexE設備500的結構圖。FlexE設備500可以是圖2所示方法中的FlexE設備A和圖3所示做為FlexE設備A時的FlexE設備300。FlexE設備500包括發送單元501和接收單元502。發送單元501和接收單元502的功能例如由圖3中FlexE墊片電路302結合物理層收發器301實現。
發送單元501,用於用第一客戶日程表向FlexE設備B發送包括多個數據塊的數據,所述第一客戶日程表指示客戶到第一時隙集合的對應關係。
接收單元502,用於接收FlexE設備B發送的開銷頭幀中的時隙損壞通知,所述時隙損壞通知指示所述第一時隙集合中的第一時隙損壞。
發送單元501,還用於向FlexE設備B發送第二客戶日程表,所述第二客戶日程表指示所述客戶到第二時隙集合的對應關係,所述第二時隙集合中包括所述第一時隙集合中除所述第一時隙外的時隙;以及用於用所述第二客戶日程表向FlexE設備B發送數據。
可選地,所述第二時隙集合中還包括不在所述第一時隙集合中的替換時隙。
本說明書的各個部分均採用遞進的方式進行描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點介紹的都是與其他實施例不同之處。尤其,對於裝置和系統實施例而言,由於其基本相似於方法實施例,所以描述的比較簡單,相關之處參見方法實施例部分的說明即可。
應理解,在本申請的各種實施例中,上述各方法的序號的大小並不意味著執行順序的先後,各方法的執行順序應以其功能和內在邏輯確定,而不應對本申請實施例的實施過程構成任何限定。
本領域普通技術人員可以意識到,結合本文中所公開的實施例描述的各示例的電路及方法步驟,能夠以電子硬體、計算機軟體或者二者的結合來實現,為了清楚地說明硬體和軟體的可互換性,在上述說明中已經按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬體還是軟體方式來執行,取決於技術方案的特定應用和設計約束條件。專業技術人員可以對每個特定的應用來使用不同方法來實現所描述的功能,但是這種實現不應認為超出本申請的範圍。