在帶寬地圖信息中發送給核心路徑的各從節點和代理主節點;核心路徑的從節點根據接收到的帶寬地圖信息、第三延時和接收到控制幀的時隙位置在對應的時隙位置發送或接收數據幀和控制幀。
[0185]其中,核心路徑的從節點根據接收到的帶寬地圖信息、第三延時和接收到控制幀的時隙位置在對應的時隙位置發送或接收數據幀和控制幀包括:
[0186]從節點接收到控制幀后,在固定的延時后向下一個節點轉發控制幀;根據接收到控制幀的時隙位置、控制幀和第三延時確定接收數據幀的時隙位置,根據確定的時隙位置接收數據幀。
[0187]從節點發送數據幀使得發送數據幀的時隙位置和接收數據幀的時隙位置的差值為時隙長度的整數倍。
[0188]其中,根據接收到控制幀的時隙位置、控制幀和第三延時確定接收數據幀的時隙位置包括:
[0189]確定數據幀的第一個時隙位置為接收到控制幀的時隙位置和第三延時之間的和;確定數據幀的第N個時隙位置為第一個時隙位置和(N-1)倍時隙長度之間的和。其中,N為大于或等于2的整數。
[0190]其中,控制幀包括數據幀的時隙數和時隙長度。
[0191]其中,各節點依據數據幀相對控制幀的第三延時,以及接收到控制幀的時隙位置,計算數據幀的第一個時隙的時間位置,并根據主節點帶寬地圖分配的信息,對各時隙上的突發包進行收發和通斷控制,實現全光數據突發交換。
[0192]本發明的方法中,只需要根據OBTN的時隙長度進行OBTN的時隙同步訓練,而不需要在節點設計時考慮FDL,簡化了節點的設計,提高了同步的時間精度,且不會對光效率造成損失。
[0193]當主節點接收來自非核心路徑的從節點的帶寬請求時,該方法還包括:
[0194]步驟103、主節點根據帶寬請求確定從節點發送數據到接收節點的路徑。
[0195]本步驟中,帶寬請求包括從節點發送數據的流量大小信息,目的地址。
[0196]步驟104、主節點判斷出確定的路徑中不跨代理主節點,將指示從節點采用一個時隙長度來發送數據的一個時隙的信息包含在帶寬地圖信息中發送給非核心路徑的各從節點和代理主節點。
[0197]本步驟中,當主節點判斷出確定的路徑中跨代理主節點時,在主節點接收來自非核心路徑的從節點的帶寬請求之前還包括:
[0198]各代理主節點根據自身所在的非核心路徑的長度計算非核心路徑中多余的時間長度,并將計算得到的多余的時間長度發送給主節點。
[0199]在從節點根據接收到的帶寬地圖信息、第四延時和接收到控制幀時隙位置在對應的時隙位置發送或接收數據幀和控制幀之前還包括:
[0200]主節點將指示從節點采用兩個時隙長度來發送數據的一個時隙的信息包含在帶寬地圖信息中發送給核心路徑、非核心路徑上的各從節點和代理主節點。
[0201]其中,非核心路徑包含的時隙數為非核心路徑的長度除以接收到的時隙長度得到的商,多余的時間長度為非核心路徑的環長除以接收到的時隙長度得到的余數。如在圖3(c)的第二次環中,根據第二次環的環長和時隙長度T+T1,計算得到的余數可能為AL3,其中 O ( AL3〈T+T1。
[0202]本步驟中,帶寬地圖信息還包括確定的路徑。
[0203]本步驟中,從節點或代理主節點采用控制幀向主節點發送帶寬請求,主節點收到帶寬請求后,根據當前資源狀態和帶寬請求執行動態帶寬分配(DBA, Dynamic BandwidthAllocat1n)算法,進行波長、時隙和路徑的分配,并生成新帶寬地圖分配信息,發送至從節點或代理主節點。因為網絡為可調發送、選擇接收,故時隙的分配更加靈活,重用度更高,一個時隙被本節點下路接收后,本節點還能繼續使用本波長的同一個時隙發送數據,達到提升網絡傳輸速率的目的。此過程在網絡運行過程中不斷重復進行。
[0204]步驟105、從節點根據接收到的帶寬地圖信息、第四延時和接收到控制幀的時隙位置在對應的時隙位置發送或接收數據幀和控制幀。
[0205]本步驟具體包括:
[0206]從節點接收到控制幀后,在固定的延時后向帶寬地圖信息中的路徑的下一個節點轉發控制幀;根據接收到控制幀的時隙位置、控制幀和第四延時確定接收數據幀的時隙位置,根據確定的時隙位置接收數據幀中的時隙。
[0207]當判斷出帶寬地圖信息中的路徑不跨代理主節點時,從節點發送數據幀使得發送數據幀的時隙位置和接收數據幀的時隙位置在光層的差值為時隙長度的整數倍;即收發相同的時隙時,其在光層上的時間是相同的;
[0208]當判斷出帶寬地圖信息中的路徑跨代理主節點時,從節點發送數據幀使得發送數據幀的時隙位置、接收數據幀的時隙位置和帶寬地圖信息中的多余的時間長度之間的差值為時隙長度的整數倍,且數據幀中每一個時隙占用兩個時隙長度(即數據幀中每一個時隙的長度為時隙長度的兩倍)。
[0209]其中,根據接收到控制幀的時隙位置、第四延時和控制幀確定接收數據幀的時隙位置包括:
[0210]確定數據幀的第一個時隙位置為接收到控制幀的時隙位置和第四延時之間的和;確定數據幀的第N個時隙位置為第一個時隙位置和N-1倍時隙長度之間的和。其中,N為大于或等于2的整數。
[0211 ] 本步驟中,控制幀包括數據幀的時隙數和時隙長度。
[0212]本步驟中,各節點依據數據幀相對控制幀的第四延時,以及接收到控制幀的時隙位置,計算數據幀的第一個時隙的時間位置,并根據主節點帶寬地圖分配的信息,對各時隙上的突發包進行收發和通斷控制,實現全光數據突發交換。
[0213]圖4 (a)為第二次環中節點D向節點A3和節點A3向節點D3發送控制幀與數據幀的相對時序的示意圖。如圖4(a)所示,在第二次環中,一個數據幀包含有N3個時隙或突發包,一個突發包的長度為T,突發包之間的保護間隔為Tl,時隙長度為(T+T1),與核心環中的時隙長度和保護間隔相同。控制幀的長度等于數據幀的長度,控制幀包括控制幀頭、控制信息、其它信息和idle碼等;控制信息中包含有帶寬地圖信息。
[0214]由于各節點均無FDL,為了確保各節點能正確處理突發包,需控制幀優先于對應數據中貞到達各節點。故在第二次環中,代理主節點D(第二次環與核心環的交匯節點)在向節點A3發送數據幀K時,提前一段時間Ata發送控制幀K。節點A3收到控制幀K后,根據訓練的結果,在節點A3的第四延時后接收對應的數據幀K。
[0215]節點A3收到控制幀K后,在解析出其中關于節點A3收發數據的帶寬地圖分配信息時,插入本節點A3的帶寬請求信息,并將控制幀K向下一個節點D3發送。由于控制幀K在節點A3存在一定的緩存或延遲,而數據通道上無FDL延遲,導致節點A3發送控制幀K的時間相對數據幀提前Atb。可見,相對于數據幀K,控制幀K在A3節點的延遲時間為(Δ ta- Δ tb) ο
[0216]同時,因為第二次環和核心環在節點D相交,第二次環中接收的時隙位置與從核心環中傳遞過來的時隙位置相同,從而實現第二次環中的時隙與核心環中的時隙位置保持同步,這一要求在時隙同步的過程中實現。故可以看出,在D到A3路徑上,從核心環中傳遞過來的時隙能和本次環L3內上傳的時隙均保持在理想時隙位置上,如數據幀K中,λ I的時隙 I (Α — A3)、時隙 3 (Β2 -A3), λ 2 的時隙 I (B — D3)、時隙 3 (C3 — D3)。
[0217]在本次環L3中,發送數據幀的時隙都在理想的時隙位置,但是接收數據幀的時隙需要根據第二次環的環長是否是時隙長度的整數倍以及該時隙是否到達或跨代理主節點或跨環確定是否在正常的時間位置上。如果發送數據幀的時隙不到達或跨代理主節點或跨環,或者發送數據幀的時隙到達或跨代理主節點或跨環,但第二次環的長度為時隙長度的整數倍時,則發送數據幀的時隙在理想的時隙位置即可。而如果第二次環的長度不是時隙長度的整數倍,如還有Δ L3 ( Λ L3〈T+T1)的長度,則到達或跨代理主節點或跨環時,則可如圖4(b)中處理,可在發送數據幀的理想位置提前AL3時刻發送該時隙。如此,該時隙(圖中帶有黑色背景的時隙2)就要占用兩個連續的理想時隙位置,即圖中的無黑色背景的時隙I和2。這樣,到達或經過跨代理主節點D或跨環之后,該時隙就正好在理想的時隙位置上了,而不會與其它時隙產生沖突。或者該發送數據幀的時隙可利用前一個時隙的后一段時間(ALS-Tl)(圖中帶有黑色背景的時隙2_1)或當前時隙的前一段時間(T-AL3)(圖中帶有黑色背景的時隙2_2)進行數據幀的發送,如此當前路徑上發送數據幀的跨代理主節點時隙雖為一個時隙的部分長度,但其在跨代理主節點前后均落在理想時隙位置的范圍內。
[0218]具體,由于Tl相比T較小,可暫不考慮,當第二次環中多于的長度AL3 < T/2,發送到達或跨代理主節點的時隙可采用圖中帶有黑色背景的時隙2或2_2處理;當Δ L3>T/2,發送到達或跨代理主節點的時隙可采用圖中帶有黑色背景的時隙2或2_1處理。
[0219]故在圖4 (a)中,在A3到D3的路徑上,數據幀K中,λ I的時隙2 (A3 — Α)、時隙3(A3 —C3)的時隙位置如圖中黑色背景時隙所示,時隙2 (A3 —Α)因為需要跨代理主節點D進入核心環中,可在理想時隙的基礎上提前Λ L3發送出來;其在本路徑上占用了時隙I和時隙2 ;而時隙3 (A3 — C3)因為不需要跨代理主節點,故不需要對此時隙在時間上做提前或延遲的處理。
[0220]當第二次環環長不是時隙長度整數倍時,跨代理主節點或跨環的時隙會造成帶寬的浪費。故在計算時隙長度時,應盡量保持次環環長L3也是時隙長度的整數倍。當次環環長L3不是時隙長度整數倍時,為了減少網絡帶寬的損耗,主節點在分配帶寬地圖時,盡量將到達或跨環或跨代理主節點的時隙都安排在連續時隙上,并采用圖4(b)中黑色背景時隙2的處理方式。
[0221]參見圖5,本發明還提出了一種主節點,至少包括:
[0222]同步模塊,用于根據OBTN的時隙長度進行核心路徑和非核心路徑的時隙同步訓練。
[0223]本發明的主節點中,還包括:
[0224]檢測模塊,用于對OBTN進行路徑檢測獲取網絡拓撲結構;從獲得的網絡拓撲結構中選擇核心路徑,檢測核心路徑和/或非核心路徑的長度;
[0225]計算模塊,用于根據核心路徑的長度或核心路徑和非核心路徑的長度計算時隙長度。
[0226]本發明的主節點中,檢測模塊用于對OBTN進行路徑檢測獲取網絡拓撲結構的功能具體用于:
[0227]分別向與自身相連的所有從節點或代理主節點發送包含有主節點的節點信息的第一測試控制幀;接收到所有第一測試控制幀后,對所有第一測試控制幀中的路徑進行整合以獲得網絡拓撲結構。
[0228]本發明的主節點中,同步模塊具體用于:
[0229]根據OBTN的時隙長度確定核心路徑中主節點發送控制幀比數據幀提前的第一時間間隔,根據第一時間間隔和OBTN的時隙長度確定核心路徑中各從節點或代理主節點自身接收或發送控制幀比數據幀提前的第三延時。
[0230]本發明的主節點中,同步模塊根據OBTN的時隙長度確定核心路徑中主節點發送控制幀比數據幀提前的第一時間間隔的功能具體用于:
[0231]根據OBTN的時隙長度依次向核心路徑的從節點發送第一測試數據幀和第二測試控制幀,測量接收第二測試控制幀和第一測試數據幀回到主節點的第一延時;接收來自代理主節點的第二延時;根據第一延時和第二延時確定核心路徑中主節點發送控制幀比數據幀提前的第一時間間隔。
[0232]本發明的主節點中,同步模塊根據OBTN的時隙長度確定核心路徑中主節點發送控制幀比數據幀提前的第一時間間隔的功能具體用于:
[0233]根據OBTN的時隙長度依次向核心路徑的從節點或代理主節點發送第二測試控制幀;獲取從發送第二測試控制幀到接收第二測試控制幀之間的第二時間間隔,計算獲得的第二時間間隔和核心路徑的長度之間的差值即得到第一延時;接收來自代理主節點的第二延時;根據第一延時和第二延時確定核心路徑中主節點發送控制幀比數據幀提前的第一時間間隔。
[0234]本發明的主節點中,同步模塊根據第一時間間隔和OBTN的時隙長度確定各從節點或代理主節點自身接收控制幀比數據幀提前的第三延時的功能具體用于: