在多個環形拓撲間實現穩定通信的方法、系統及拓撲結構的製作方法
2023-10-27 08:57:52 2
專利名稱:在多個環形拓撲間實現穩定通信的方法、系統及拓撲結構的製作方法
技術領域:
本發明涉及通信技術領域,尤其涉及一種在多個環形拓撲之間實現穩定通信的方 法及系統。本發明還涉及一種採用該方法構建的複雜拓撲結構。
背景技術:
隨著乙太網技術的迅速發展及其在商用領域的應用日漸廣泛,越來越多的工業控 制設備也逐漸使用乙太網並採用TCP/IP協議作為主要的通信標準。雖然應用於工業控制 領域的乙太網標準與商用乙太網相同,但在工業控制領域,還需要網絡能在比較惡劣的工 作環境下穩定地工作。因此,用來連接工業設備的網絡產品需要經過特別設計,才能提供工 業級的可靠性,以滿足長期連續運行的需求。另外,在工業控制領域,所需連接的設備分布 較分散,單個地方連接設備少,因此需要實現光纖冗餘環路功能。STP協議解決了冗餘環路問題。但是它還是有缺點的,STP協議的缺陷主要表現在 收斂速度上。當拓撲發生變化,新的配置消息要經過一定的時延才能傳播到整個網絡,這個 時延稱為Forward Delay,協議默認值是15秒。在所有網橋收到這個變化的消息之前,若舊 拓撲結構中處於轉發的埠還沒有發現自己應該在新的拓撲中停止轉發,則可能存在臨時 環路。為了解決臨時環路的問題,生成樹使用了一種定時器策略,即在埠從阻塞狀態到轉 發狀態中間加上一個只學習MAC地址但不參與轉發的中間狀態,兩次狀態切換的時間長度 都是Forward Delay,這樣就可以保證在拓撲變化的時候不會產生臨時環路。但是,這個看 似良好的解決方案實際上帶來的卻是至少兩倍ForwardDelay的收斂時間!申請號為「201010107799. 6」的中國發明專利申請文件提出了一種環形拓撲,可以 實現快速收斂,但是單個的環形拓撲結構比較簡單,不能構建複雜拓撲,雖然RSTP能構建 複雜拓撲,但是收斂時間滿足不了一些應用。因此,有必要提供一種方法,該方法既能實現 複雜拓撲也能滿足快速收斂。
發明內容本發明要解決的技術問題在於,提供一種在多個環形拓撲之間實現穩定通信的方 法,該方法既能實現複雜拓撲也能滿足快速收斂。本發明解決其技術問題所採用的技術方案是—種在多個環形拓撲之間實現穩定通信的方法,包括以下步驟步驟S1,建立雙鏈路在兩個需要通信的環形拓撲之間提供兩條連接鏈路,其中 一條鏈路為主鏈路,另一條鏈路為備份鏈路,每一條鏈路的兩端分別連接兩個環形拓撲中 的一個節點;步驟S2,備份式通信當所述主鏈路正常連接時,兩個環形拓撲通過主鏈路傳遞 通信數據,此時備份鏈路被阻塞;當主鏈路斷開連接時,備份鏈路被打開,兩個環形拓撲通 過備份鏈路傳遞通信數據;當主鏈路恢復連接時,備份鏈路即被阻塞,兩個環形拓撲再次通 過主鏈路傳遞通信數據;當備份鏈路斷開連接或恢復連接時,兩個環形拓撲仍通過主鏈路傳遞通信數據。作為優選方案,所述當主鏈路斷開連接時,備份鏈路被打開,兩個環形拓撲通過備 份鏈路傳遞通信數據的步驟具體為當主鏈路斷開連接時,與所述主鏈路連接的兩個節點分別通過各自的埠,在各 自所在的環形拓撲中發送通知消息GHR_FLAGS_Y0UW0RK,與備份鏈路連接的兩個節點收到 該通知消息GHR_FLAGS_Y0UW0RK時,立即將各自與備份鏈路相連的埠設置為轉發狀態, 同時兩個環形拓撲中曾參與轉發該通知消息GHR_FLAGS_Y0UW0RK的節點刷新自身的MAC 表,從而備份鏈路被打開,兩個環形拓撲通過備份鏈路傳遞通信數據。作為優選方案,所述當主鏈路恢復連接時,備份鏈路即被阻塞,兩個環形拓撲再次 通過主鏈路傳遞通信數據的步驟具體為當主鏈路恢復連接時,與所述主鏈路連接的兩個節點分別通過各自的埠,在各 自所在的環形拓撲中發送通知消息GHR_FLAGS_MEWORK,與備份鏈路連接的兩個節點收到 該GHR_FLAGS_MEWORK通知消息時,立即將各自與備份鏈路相連的埠設置為阻塞狀態,同 時回應GHR_FLAGS_Y0UW0RK通知消息,與所述主鏈路連接的兩個節點收到回應的通知消息 GHR_FLAGS_Y0UW0RK時,立即將各自與主鏈路相連的埠設置為轉發狀態,同時兩個環形拓 撲中曾參與轉發通知消息的節點刷新自身的MAC表,從而備份鏈路即被阻塞,兩個環形拓 撲再次通過主鏈路傳遞通信數據。作為優選方案,所述當備份鏈路斷開連接或恢復連接時,兩個環形拓撲仍通過主 鏈路傳遞通信數據的步驟具體為當備份鏈路斷開連接時,與備份鏈路連接的兩個節點分別通過各自的埠,在各 自所在的環形拓撲中發送通知消息GHR_FLAGS_Y0UW0RK,與所述主鏈路連接的兩個節點收 到所述通知消息GHR_FLAGS_Y0UW0RK時,立即將各自與備份鏈路相連的埠設置為轉髮狀 態,同時兩個環形拓撲中曾參與轉發所述通知消息GHR_FLAGS_Y0UW0RK的節點刷新自身的 MAC表,從而兩個環形拓撲通過主鏈路傳遞通信數據;當備份鏈路恢復連接時,與備份鏈路連接的兩個節點分別通過各自的埠,在各 自所在的環形拓撲中發送通知消息GHR_FLAGS_MEWORK,與主鏈路連接的兩個節點收到該通 知消息GHR_FLAGS_MEWORK時,若主鏈路連接正常,則不回應通知消息,從而兩個環形拓撲 仍通過主鏈路傳遞通信數據。作為優選方案,所述當備份鏈路恢復連接時,與備份鏈路連接的兩個節點分別通 過各自的埠,在各自所在的環形拓撲中發送通知消息GHR_FLAGS_MEWORK,與主鏈路連接 的兩個節點收到該通知消息GHR_FLAGS_MEWORK時的步驟之後還包括以下步驟若主鏈路處於斷開狀態,則回應通知消息GHR_FLAGS_Y0UW0RK,與備份鏈路連接的 兩個節點收到回應的通知消息GHR_FLAGS_Y0UW0RK時,立即將各自與備份鏈路相連的埠 設置為轉發狀態,同時兩個環形拓撲中曾參與轉發通知消息的節點刷新自身的MAC表,從 而兩個環形拓撲通過備份鏈路傳遞通信數據。作為優選方案,所述步驟S2,備份式通信還包括當主鏈路處於正常工作狀態時,與主鏈路相連的節點以均勻時間間隔在各自所在 的環形拓撲中發送健康檢測報文GHR_FLAGS_LINKHELLO,若與備份鏈路連接的節點收到該 健康檢測報文,則將各自與備份鏈路相連的埠設置為阻塞狀態;若與備份鏈路連接的設備節點在預先設置的時間內未能收到該健康檢測報文,則將各自與備份鏈路相連的埠設 置為轉發狀態,於是備份鏈路被打開,兩個環形拓撲通過備份鏈路傳遞通信數據。本發明還提供一種在多個環形拓撲之間實現穩定通信的系統,所述系統包括兩條 鏈路、信息處理模塊和設置模塊所述兩條鏈路分別連接兩個環形拓撲,用於兩個環形拓撲之間傳遞通信數據,其 中一條鏈路為主鏈路,另一條鏈路為備份鏈路,每一條鏈路的兩端分別連接兩個環形拓撲 中的一個節點;所述信息處理模塊設置於與所述兩條鏈路相連的節點上,用於當鏈路斷開連接或 者恢復連接時,通過所在節點的埠,在環形拓撲中發送或者回應通知消息;所述設置模塊也設置於與所述兩條鏈路相連的節點上,用於在收到所述信息處理 模塊發出或者回應的通知消息時,將所在節點的與鏈路相連的埠設置為轉發狀態或者阻 塞狀態。作為優選方案,所述信息處理模塊發送或者回應的通知消息包括第一通知消息GHR_FLAGS_Y0UW0RK,收到該第一通知消息的節點即將自身的埠 設置為轉發狀態;第二通知消息GHR_FLAGS_MEWORK,當鏈路恢復連接時,與該鏈路相連的節點即發 送該第二通知消息;健康檢測報文GHR_FLAGS_LINKHELLO,當主鏈路處於正常工作狀態時,與主鏈路相 連的節點以均勻時間間隔在環形拓撲中發送該健康檢測報文。本發明還提供一種可以實現快速收斂且通訊穩定的複雜拓撲結構,包括至少兩個 環形拓撲,每個環形拓撲由至少三個節點和連接相鄰節點的鏈路構成,所述的節點中有且 只有一個為主節點,其餘為傳輸節點,所述環形拓撲中的每一個節點具有若干個與鏈路相 連的埠,所述埠具有轉發和阻塞兩種狀態;所述複雜拓撲結構的特徵在於,在兩個需要通信的環形拓撲之間具有兩條連接鏈 路,其中一條鏈路為主鏈路,另一條鏈路為備份鏈路,每一條鏈路的兩端分別連接兩個環形 拓撲中的一個節點;當所述主鏈路正常連接時,兩個環形拓撲通過主鏈路傳遞通信數據,此 時備份鏈路被阻塞;當主鏈路斷開連接時,備份鏈路被打開,兩個環形拓撲通過備份鏈路傳 遞通信數據;當主鏈路恢復連接時,備份鏈路即被阻塞,兩個環形拓撲再次通過主鏈路傳遞 通信數據;當備份鏈路斷開連接或恢復連接時,兩個環形拓撲仍通過主鏈路傳遞通信數據。採用本發明提供在多個環形拓撲之間實現穩定通信的的方法,多個環形拓撲之間 可以實現穩定通信。當連接兩個環形拓撲之間的主鏈路和備份鏈路中的一條鏈路斷開連接 或者恢復連接時,可以實現鏈路的快速切換,整個拓撲結構可實現快速收斂,收斂時間僅需 要幾毫秒。同時,採用本發明實施例提供的方法,環形拓撲和主備鏈路相結合,可以實現較 為複雜的拓撲結構。
下面將結合附圖及實施例對本發明作進一步說明,附圖中圖1是連接兩個環形拓撲的鏈路正常工作時的示意圖;圖2是圖1中的主鏈路斷開連接示意7
圖3是圖1中的主鏈路恢復連接示意圖。
具體實施方式本發明實施例提供一種在多個環形拓撲之間實現穩定通信的方法。所述環形拓撲 由至少三個節點和連接相鄰節點的鏈路構成,所述的節點中有且只有一個為主節點,其餘 為傳輸節點。每一個環形拓撲在物理上對應一個環形連接的乙太網拓撲,由整數表示的ID 來標識。所述環形拓撲中的一個節點實質上就是一臺通信設備。所述環形拓撲中的每一個 節點具有若干個埠,該埠具有轉發和阻塞兩種狀態。與節點相連的鏈路實際上是連接 該節點的埠。當一條鏈路兩端連接的兩個埠都處於轉發狀態時,該鏈路可用於通信進 行數據傳遞;當該鏈路兩端的兩個埠中的一個或兩個處於阻塞狀態時,該鏈路即被阻塞, 不能用於數據傳遞。所述環形拓撲中的主節點是環形拓撲上的主要決策和控制節點。每個環形拓撲中 必須有一個主節點,而且只能有一個。主節點是環網狀態主動檢測機制(即Polling機制) 的發起者,也是環形拓撲發生改變後執行操作的決策者。主節點周期性的從其主埠發送 健康檢測報文(即HELLO報文),該報文依次經各傳輸節點在環形拓撲中傳播。如果主節點 從其副埠能夠收到自己發送的健康檢測報文,說明環網鏈路完整;如果在預先設置的時 間內收不到健康檢測報文,說明環網發生鏈路故障。所述環形拓撲上除主節點之外的其餘節點都可以稱為傳輸節點。一個正常的環形 拓撲上至少有兩個或者以上傳輸節點。每一個環形拓撲由整數表示的ID來標識。傳輸節 點負責監測相連接鏈路的狀態,並把鏈路變化通知主節點,然後由主節點來決策如何處理。本發明實施例提供的在多個環形拓撲之間實現穩定通信的方法,是通過在兩個環 形拓撲之間提供兩條鏈路實現的。所述的兩條鏈路,其中一條為主鏈路,另一條為備份鏈 路。兩條鏈路中,每一條鏈路的兩端分別連接兩個環形拓撲中的一個節點。正常工作時,兩 個環形拓撲通過主鏈路傳遞通信數據,此時備份鏈路被阻塞。當主鏈路斷開連接時,備份鏈 路被打開用於兩個環形拓撲之間的通信數據傳遞。當主鏈路恢復連接時,備份鏈路即被阻 塞,重新採用主鏈路用於兩個環形拓撲之間的通信數據傳遞。下面結合附圖進行詳細說明。圖1是連接兩個環形拓撲的鏈路正常工作時的示意圖。圖中,節點SW1、SW2、SW3、 SW4及依次連接各節點的鏈路構成第一環形拓撲,節點SW5、SW6、SW7、SW8及依次連接各節 點的鏈路構成第二環形拓撲。在第一環形拓撲中,SW2為主節點(master節點),其以均勻 時間間隔在第一環形拓撲中發送健康檢測報文(即GHR_FLAGS_LINKHELLO);在第二環形拓 撲中,SW7為主節點,其同樣以均勻時間間隔在第二環形拓撲中發送健康檢測報文(即GHR_ FLAGS_LINKHELLO)。若發出健康檢測報文的主節點收到自身發送的健康檢測報文,說明環 形拓撲鏈路完整;若發出健康檢測報文的主節點在預先設置的時間內不能收到自身發送的 健康檢測報文,則認為環形拓撲鏈路發生故障。連接第一環形拓撲和第二環形拓撲的鏈路 有兩條,其中連接節點SW4和SW5的鏈路為主鏈路,連接節點SW3和SW6的鏈路為備份鏈路。 第一環形拓撲和第二環形拓撲通過主鏈路進行通信數據傳遞。備份鏈路處於阻塞狀態,阻 止通信數據傳遞。當主鏈路處於正常工作狀態時,與主鏈路相連的設備節點以均勻時間間 隔在各自所在的環形拓撲中發送健康檢測報文GHR_FLAGS_LINKHELLO。與備份鏈路連接的 設備節點收到該健康檢測報文,則將自身與備份鏈路相連的埠設置為阻塞狀態;若與備份鏈路連接的設備節點在預先設置的時間內未能收到該健康檢測報文,則將自身與備份鏈 路相連的埠設置為轉發狀態,於是備份鏈路被打開用於兩個環形拓撲之間的通信數據傳 遞。圖2是主鏈路斷開連接時的示意圖。當主鏈路斷開連接時,本發明實施例提供的 方法採用消息通知的方式實現鏈路的快速切換。如圖所示,主鏈路斷開時,與該主鏈路連 接的設備即節點SW4和SW5分別通過各自的埠,在各自所在的環形拓撲中發送通知消息 GHR_FLAGS_Y0UW0RK。與備份鏈路連接的設備即節點SW3和SW6收到該GHR_FLAGS_Y0UW0RK 通知消息時,立即將各自與備份鏈路相連的埠設置為轉發狀態,同時兩個環形拓撲中曾 參與轉發該GHR_FLAGS_Y0UW0RK通知消息的節點刷新自身的MAC表。於是,備份鏈路被打 開,可用於兩個環形拓撲之間的通信數據傳遞。上述過程中,從主鏈路斷開連接,切換到採 用備份鏈路進行通信數據傳遞,整個拓撲系統達到穩定狀態,僅需要幾毫秒而已。圖3是主鏈路恢復連接時的示意圖。如圖所示,主鏈路恢復連接時,與主鏈路連 接的設備即節點SW4和SW5分別通過各自的埠,在各自的環形拓撲中發送通知消息GHR_ FLAGS_MEW0RK。與備份鏈路連接的設備即節點SW3和SW6收到該GHR_FLAGS_MEWORK通知消 息時,則立即將各自與備份鏈路相連的埠設置為阻塞狀態,同時回應GHR_FLAGS_Y0UW0RK 通知消息。節點SW4和SW5收到回應的GHR_FLAGS_Y0UW0RK通知消息時,立即將各自與主 鏈路相連的埠設置為轉發狀態,同時兩個環形拓撲中曾參與轉發通知消息的節點刷新自 身的MAC表。於是,備份鏈路被阻塞,而主鏈路被打開用於兩個環形拓撲之間的通信數據傳 遞。上述過程中,從主鏈路恢復連接,到阻塞備份鏈路,重新採用主鏈路進行通信數據傳遞, 整個拓撲系統達到穩定狀態,僅需要幾毫秒而已。在上述主鏈路恢復連接時,若備份鏈路已處於斷開連接狀態,則與備份鏈路連接 的節點SW3和SW6收到GHR_FLAGS_MEWORK通知消息時,直接回應GHR_FLAGS_Y0UW0RK,節 點SW4和SW5收到回應的GHR_FLAGS_Y0UW0RK通知消息時,立即將各自與主鏈路相連的端 口設置為轉發狀態,同時兩個環形拓撲中曾參與轉發通知消息的節點刷新自身的MAC表。與主鏈路斷開連接時相似,當備份鏈路斷開連接時,與備份鏈路連接的設備即 節點SW3和SW6分別通過各自的埠,在各自的環形拓撲中發送通知消息GHR_FLAGS_ Y0UW0RK。與該主鏈路連接的設備即節點SW4和SW5收到該GHR_FLAGS_Y0UW0RK通知消息 時,立即將各自與備份鏈路相連的埠設置為轉發狀態,同時兩個環形拓撲中曾參與轉發 該GHR_FLAGS_Y0UW0RK通知消息的節點刷新自身的MAC表。從而實現鏈路的快速切換。與主鏈路恢復連接時相似,當備份鏈路恢復連接時,與備份鏈路連接的設備即節 點SW3和SW6分別通過各自的埠,在各自的環形拓撲中發送通知消息GHR_FLAGS_MEWORK。 與主鏈路連接的設備即節點SW4和SW5收到該GHR_FLAGS_MEWORK通知消息時,若主鏈路連 接正常,則不回應;若主鏈路處於斷開狀態,則回應GHR_FLAGS_Y0UW0RK通知消息。節點SW3 和SW6收到回應的GHR_FLAGS_Y0UW0RK通知消息時,立即將各自與備份鏈路相連的埠設 置為轉發狀態,同時兩個環形拓撲中曾參與轉發通知消息的節點刷新自身的MAC表。從而 實現鏈路的快速切換。需要說明的是,一個環形拓撲可以同時連接多對主備鏈路,每對主備鏈路使用鏈 路ID區分標識。例如,在存在三個環形拓撲的情況下,第一環形拓撲和第二環形拓撲之間 存在一對主備鏈路,第一環形拓撲和第三環形拓撲之間也存在一對主備鏈路。環形拓撲的局部改變不會影響主備鏈路的的正常運作。這樣環形拓撲與主備鏈路相結合,可以實現較 為複雜的拓撲。在連接兩個環形拓撲的鏈路正常工作以及一條鏈路斷開連接或者恢復連接,整個 拓撲實現穩定的過程中,兩個環形拓撲及相連的鏈路中傳遞的通知消息包括以下三種,下 面進行詳細說明GHR_FLAGS_Y0UW0RK,該通知消息用於通知對方鏈路打開。當連接兩個環形拓撲的 一條鏈路斷開連接時,與該鏈路連接的兩個節點即發送該通知消息。與另一條鏈路連接的 兩個節點收到該消息時,立即將各自與所述另一條鏈路相連的埠設置為轉發狀態,於是 所述另一條鏈路被打開。GHR_FLAGS_MEWORK,該通知消息是鏈路恢復連接時發出的。當連接兩個環形拓撲 的一條鏈路恢復連接時,與該鏈路連接的兩個節點即發送該通知消息。若另一條鏈路為主 鏈路且處於轉發狀態,則與主鏈路連接的兩個節點收到該消息時,不回應消息;若另一條鏈 路為備份鏈路且處於轉發狀態,則與備份鏈路連接的兩個節點收到該消息時,立即將各自 與備份鏈路相連的埠設置為阻塞狀態,同時回應GHR_FLAGS_Y0UW0RK通知消息;若另一 條鏈路為備份鏈路且處於斷開狀態,則與備份鏈路連接的兩個節點收到該消息時,立即直 接回應GHR_FLAGS_Y0UW0RK通知消息。GHR_FLAGS_LINKHELLO,該報文用於鏈路之間的循環健康檢測。當主鏈路處於正常 工作狀態時,與主鏈路相連的設備節點以均勻時間間隔在環形拓撲中發送該報文。與備份 鏈路連接的設備節點收到該報文,則將自身與備份鏈路相連的埠設置為阻塞狀態;若與 備份鏈路連接的設備節點在預先設置的時間內未能收到該報文,則將自身與備份鏈路相連 的埠設置為轉發狀態,於是備份鏈路被打開用於兩個環形拓撲之間的通信數據傳遞。採用本發明實施例提供的方法,多個環形拓撲之間可以實現穩定通信。當連接兩 個環形拓撲之間的主鏈路和備份鏈路中的一條鏈路斷開連接或者恢復連接時,可以實現鏈 路的快速切換,整個拓撲結構可以實現收斂,達到穩定時間僅需要幾毫秒。同時,採用本發 明實施例提供的方法,環形拓撲和主備鏈路相結合,可以實現較為複雜的拓撲結構。本發明還提供一種在多個環形拓撲之間實現穩定通信的系統,所述系統包括兩條 鏈路、信息處理模塊和設置模塊所述兩條鏈路分別連接兩個環形拓撲,用於兩個環形拓撲之間傳遞通信數據,其 中一條鏈路為主鏈路,另一條鏈路為備份鏈路,每一條鏈路的兩端分別連接兩個環形拓撲 中的一個節點;所述信息處理模塊設置於與所屬兩條鏈路相連的節點上,用於當鏈路斷開連接或 者恢復連接時,通過所在節點的埠,在環形拓撲中發送或者回應通知消息;所述設置模塊也設置於與所屬兩條鏈路相連的節點上,用於在收到所述信息處理 模塊發出或者回應的通知消息時,將所在節點的與鏈路相連的埠設置為轉發狀態或者阻 塞狀態。作為優選方案,所述信息處理模塊發送或者回應的通知消息包括第一通知消息GHR_FLAGS_Y0UW0RK,收到該第一通知消息的節點即將自身的埠 設置為轉發狀態;第二通知消息GHR_FLAGS_MEWORK,當鏈路恢復連接時,與該鏈路相連的節點即發送該第二通知消息;健康檢測報文GHR_FLAGS_LINKHELLO,當主鏈路處於正常工作狀態時,與主鏈路相 連的節點以均勻時間間隔在環形拓撲中發送該健康檢測報文。本發明還提供一種可以實現快速收斂且通訊穩定的複雜拓撲結構,包括至少兩個 環形拓撲,每個環形拓撲由至少三個節點和連接相鄰節點的鏈路構成,所述的節點中有且 只有一個為主節點,其餘為傳輸節點,所述環形拓撲中的每一個節點具有若干個與鏈路相 連的埠,所述埠具有轉發和阻塞兩種狀態;所述複雜拓撲結構的特徵在於,在兩個需要通信的環形拓撲之間具有兩條連接鏈 路,其中一條鏈路為主鏈路,另一條鏈路為備份鏈路,每一條鏈路的兩端分別連接兩個環形 拓撲中的一個節點;當所述主鏈路正常連接時,兩個環形拓撲通過主鏈路傳遞通信數據,此 時備份鏈路被阻塞;當主鏈路斷開連接時,備份鏈路被打開,兩個環形拓撲通過備份鏈路傳 遞通信數據;當主鏈路恢復連接時,備份鏈路即被阻塞,兩個環形拓撲再次通過主鏈路傳遞 通信數據;當備份鏈路斷開連接或恢復連接時,兩個環形拓撲仍通過主鏈路傳遞通信數據。以上所述僅為本發明的較佳實施例,並不用於限制本發明,凡在本發明精神和原 則內所做的修改、等同替換或者改進等,均應包含在本發明的保護範圍之內。
權利要求
一種在多個環形拓撲之間實現穩定通信的方法,其特徵在於,包括以下步驟步驟S1,建立雙鏈路在兩個需要通信的環形拓撲之間提供兩條連接鏈路,其中一條鏈路為主鏈路,另一條鏈路為備份鏈路,每一條鏈路的兩端分別連接兩個環形拓撲中的一個節點;步驟S2,備份式通信當所述主鏈路正常連接時,兩個環形拓撲通過主鏈路傳遞通信數據,此時備份鏈路被阻塞;當主鏈路斷開連接時,備份鏈路被打開,兩個環形拓撲通過備份鏈路傳遞通信數據;當主鏈路恢復連接時,備份鏈路即被阻塞,兩個環形拓撲再次通過主鏈路傳遞通信數據;當備份鏈路斷開連接或恢復連接時,兩個環形拓撲仍通過主鏈路傳遞通信數據。
2.根據權利要求1所述的在多個環形拓撲之間實現穩定通信的方法,其特徵在於,所 述當主鏈路斷開連接時,備份鏈路被打開,兩個環形拓撲通過備份鏈路傳遞通信數據的步 驟具體為當主鏈路斷開連接時,與所述主鏈路連接的兩個節點分別通過各自的埠,在各自所 在的環形拓撲中發送通知消息GHR_FLAGS_YOUWORK,與備份鏈路連接的兩個節點收到該通 知消息GHR_FLAGS_YOUWORK時,立即將各自與備份鏈路相連的埠設置為轉發狀態,同時 兩個環形拓撲中曾參與轉發該通知消息GHR_FLAGS_YOUWORK的節點刷新自身的MAC表,從 而備份鏈路被打開,兩個環形拓撲通過備份鏈路傳遞通信數據。
3.根據權利要求1所述的在多個環形拓撲之間實現穩定通信的方法,其特徵在於,所 述當主鏈路恢復連接時,備份鏈路即被阻塞,兩個環形拓撲再次通過主鏈路傳遞通信數據 的步驟具體為當主鏈路恢復連接時,與所述主鏈路連接的兩個節點分別通過各自的埠,在各自 所在的環形拓撲中發送通知消息GHR_FLAGS_MEWORK,與備份鏈路連接的兩個節點收到該 GHR_FLAGS_MEWORK通知消息時,立即將各自與備份鏈路相連的埠設置為阻塞狀態,同時 回應GHR_FLAGS_YOUWORK通知消息,與所述主鏈路連接的兩個節點收到回應的通知消息 GHR_FLAGS_YOUWORK時,立即將各自與主鏈路相連的埠設置為轉發狀態,同時兩個環形拓 撲中曾參與轉發通知消息的節點刷新自身的MAC表,從而備份鏈路即被阻塞,兩個環形拓 撲再次通過主鏈路傳遞通信數據。
4.根據權利要求1所述的在多個環形拓撲之間實現穩定通信的方法,其特徵在於,所 述當備份鏈路斷開連接或恢復連接時,兩個環形拓撲仍通過主鏈路傳遞通信數據的步驟具 體為當備份鏈路斷開連接時,與備份鏈路連接的兩個節點分別通過各自的埠,在各自所 在的環形拓撲中發送通知消息GHR_FLAGS_YOUWORK,與所述主鏈路連接的兩個節點收到所 述通知消息GHR_FLAGS_YOUWORK時,立即將各自與備份鏈路相連的埠設置為轉發狀態, 同時兩個環形拓撲中曾參與轉發所述通知消息GHR_FLAGS_YOUWORK的節點刷新自身的MAC 表,從而兩個環形拓撲通過主鏈路傳遞通信數據;當備份鏈路恢復連接時,與備份鏈路連接的兩個節點分別通過各自的埠,在各自所 在的環形拓撲中發送通知消息GHR_FLAGS_MEWORK,與主鏈路連接的兩個節點收到該通知消 息GHR_FLAGS_MEWORK時,若主鏈路連接正常,則不回應通知消息,從而兩個環形拓撲仍通 過主鏈路傳遞通信數據。
5.根據權利要求4所述的在多個環形拓撲之間實現穩定通信的方法,其特徵在於,所 述當備份鏈路恢復連接時,與備份鏈路連接的兩個節點分別通過各自的埠,在各自所在 的環形拓撲中發送通知消息GHR_FLAGS_MEWORK,與主鏈路連接的兩個節點收到該通知消息 GHR_FLAGS_MEWORK時的步驟之後還包括以下步驟若主鏈路處於斷開狀態,則回應通知消息GHR_FLAGS_YOUWORK,與備份鏈路連接的兩個 節點收到回應的通知消息GHR_FLAGS_YOUWORK時,立即將各自與備份鏈路相連的埠設置 為轉發狀態,同時兩個環形拓撲中曾參與轉發通知消息的節點刷新自身的MAC表,從而兩 個環形拓撲通過備份鏈路傳遞通信數據。
6.根據權利要求1所述的在多個環形拓撲之間實現穩定通信的方法,其特徵在於,所 述步驟S2,備份式通信還包括 當主鏈路處於正常工作狀態時,與主鏈路相連的節點以均勻時間間隔在各自所在的環 形拓撲中發送健康檢測報文GHR_FLAGS_LINKHELLO,若與備份鏈路連接的節點收到該健康 檢測報文,則將各自與備份鏈路相連的埠設置為阻塞狀態;若與備份鏈路連接的設備節 點在預先設置的時間內未能收到該健康檢測報文,則將各自與備份鏈路相連的埠設置為 轉發狀態,於是備份鏈路被打開,兩個環形拓撲通過備份鏈路傳遞通信數據。
7.一種在多個環形拓撲之間實現穩定通信的系統,其特徵在於,所述系統包括兩條鏈 路、信息處理模塊和設置模塊,所述兩條鏈路分別連接兩個環形拓撲,用於兩個環形拓撲之間傳遞通信數據,其中一 條鏈路為主鏈路,另一條鏈路為備份鏈路,每一條鏈路的兩端分別連接兩個環形拓撲中的 一個節點;所述信息處理模塊設置於與所述兩條鏈路相連的節點上,用於當鏈路斷開連接或者恢 復連接時,通過所在節點的埠,在環形拓撲中發送或者回應通知消息;所述設置模塊也設置於與所述兩條鏈路相連的節點上,用於在收到所述信息處理模塊 發出或者回應的通知消息時,將所在節點的與鏈路相連的埠設置為轉發狀態或者阻塞狀 態。
8.根據權利要求1所述的在多個環形拓撲之間實現穩定通信的系統,其特徵在於,所 述信息處理模塊發送或者回應的通知消息包括第一通知消息GHR_FLAGS_YOUWORK,收到該第一通知消息的節點即將自身的埠設置 為轉發狀態;第二通知消息GHR_FLAGS_MEWORK,當鏈路恢復連接時,與該鏈路相連的節點即發送該 第二通知消息;健康檢測報文GHR_FLAGS_LINKHELLO,當主鏈路處於正常工作狀態時,與主鏈路相連的 節點以均勻時間間隔在環形拓撲中發送該健康檢測報文。
9.一種可以實現快速收斂且通訊穩定的複雜拓撲結構,包括至少兩個環形拓撲,每個 環形拓撲由至少三個節點和連接相鄰節點的鏈路構成,所述的節點中有且只有一個為主節 點,其餘為傳輸節點,所述環形拓撲中的每一個節點具有若干個與鏈路相連的埠,所述端 口具有轉發和阻塞兩種狀態;所述複雜拓撲結構的特徵在於,在兩個需要通信的環形拓撲之間具有兩條連接鏈路, 其中一條鏈路為主鏈路,另一條鏈路為備份鏈路,每一條鏈路的兩端分別連接兩個環形拓撲中的一個節點;當所述主鏈路正常連接時,兩個環形拓撲通過主鏈路傳遞通信數據,此時 備份鏈路被阻塞;當主鏈路斷開連接時,備份鏈路被打開,兩個環形拓撲通過備份鏈路傳遞 通信數據;當主鏈路恢復連接時,備份鏈路即被阻塞,兩個環形拓撲再次通過主鏈路傳遞通 信數據;當備份鏈路斷開連接或恢復連接時,兩個環形拓撲仍通過主鏈路傳遞通信數據。
全文摘要
本發明公開了一種在多個環形拓撲之間實現穩定通信的方法,包括以下步驟在兩個需要通信的環形拓撲之間提供兩條連接鏈路,其中一條鏈路為主鏈路,另一條鏈路為備份鏈路,每一條鏈路的兩端分別連接兩個環形拓撲中的一個節點;當所述主鏈路正常連接時,兩個環形拓撲通過主鏈路傳遞通信數據,此時備份鏈路被阻塞;當主鏈路斷開連接時,備份鏈路被打開,兩個環形拓撲通過備份鏈路傳遞通信數據;當主鏈路恢復連接時,備份鏈路即被阻塞,兩個環形拓撲再次通過主鏈路傳遞通信數據;當備份鏈路斷開連接或恢復連接時,兩個環形拓撲仍通過主鏈路傳遞通信數據。採用本發明提供的方法,多個環形拓撲之間可以實現穩定通信,可以構建快速收斂的複雜拓撲結構。
文檔編號H04L12/437GK101848128SQ20101014694
公開日2010年9月29日 申請日期2010年4月8日 優先權日2010年4月8日
發明者晏平仲 申請人:深圳市金宏威實業發展有限公司