(相關申請的引用)
本發明基于并且要求于2014年11月5日提交的日本專利申請no.2014-225080的優先權,其公開內容通過引用整體并入本文。
本發明涉及一種控制裝置、通信系統和中繼裝置控制方法。特別涉及:以集中方式控制中繼裝置的控制裝置;其中布置該控制裝置的集中控制型通信系統;和中繼裝置控制方法。
背景技術:
ptl1和npl1公開了包括轉發分組的分組轉發裝置、和通過控制分組轉發裝置的分組轉發來控制分組通信路徑的路徑控制裝置的通信系統的示例。在ptl1中,當分組轉發裝置接收到針對其未存儲分組轉發規則的分組時,分組轉發裝置請求路徑控制裝置生成分組轉發規則。在接收到請求時,路徑控制裝置在分組轉發裝置中生成并設定分組轉發規則。
ptl2公開了在atm(異步傳輸模式)網絡中分離地執行呼叫設定和連接設定的通信控制方法的示例。ptl2中的維護中心包括網絡配置數據庫,并且向獨立節點通知目的地節點號碼和輸出路徑號碼。當接收到這些號碼時,伴隨輸出路徑號碼,獨立節點將目的地節點號碼作為路徑信息登記在路徑信息表中。以這種方式,在由維護中心管理的所有節點之間設定直接路徑,并且源節點通過相應的直接路徑在目的地節點上執行呼叫設定。
ptl3公開了一種網絡中繼裝置,其具有以防當響應于來自接收終端的請求形成傳輸路由時的故障,預先形成備份路由的功能。通過此功能,當故障實際發生時,傳輸路由可以及時切換到備份路由。
引用列表
專利文獻
ptl1:日本專利特開公布no.jp2011-101245a
ptl2:日本專利特開公布no.jp2004-80434a
ptl3:日本專利特開公布no.h05-268254a
非專利文獻
npl1:nickmckeown和其他七位,“openflow:實現校園網絡創新(openflow:enablinginnovationincampusnetworks)”,[在線],[2014年10月9日搜索],互聯網<url:http://archive.openflow.org/documents/openflow-wp-latest.pdf>
技術實現要素:
技術問題
基于本發明進行了以下的分析。例如,需要用于連接節點的點對點連接。在點對點通信中,需要實現帶寬保證、高質量和高可靠性。
這里,將假設通過使用ptl1或npl1中的集中控制型通信系統來實現點對點通信。第一個問題是,當在控制裝置(對應于ptl1中的路徑控制裝置)和中繼裝置(對應于ptl1中的分組轉發裝置)之間發生故障時,不能開始新的通信。這是因為由于中繼裝置不能通知控制裝置任何分組,所以不可能設定任何分組轉發規則。
第二個問題是,控制裝置需要等待請求來自中繼裝置的分組轉發規則,還要實現冗余或執行負載分配。此外,由于控制裝置在每個通信單元(流)中將分組轉發規則設定在各個中繼裝置中,所以可以同時執行的通信數量限于可以在中繼裝置中注冊的分組轉發規則的數量(限于流量表的大小)。因此,也不可能實現必要的冗余或負載分配。
本發明的目的是提供一種集中控制型通信系統、控制裝置和中繼裝置控制方法,其可以有助于豐富實現點對點通信的組件。
技術方案
根據第一方面,提供了一種控制裝置,其連接到兩個或更多個第一中繼裝置,該第一中繼裝置與第一外部中繼裝置形成干線,并且控制裝置連接到第二中繼裝置,第二中繼裝置連接到第一中繼裝置中的至少一個,且被布置在執行點對點通信的目的地裝置[和第一中繼裝置]之間,控制裝置包括:用于控制第一中繼裝置和第二中繼裝置的組件;用于接收關于點對點通信的配置的請求的組件,所述請求包括關于點對點通信的端點信息;以及用于在點對點通信發生之前,基于關于點對點通信的端點信息和第一外部中繼裝置的分組分配規則來確定點對點通信的路徑、并且在所述路徑上的所述第一中繼裝置和第二中繼裝置中為使用所述干線的所述點對點通信設定分組轉發規則的組件。
根據第二方面,提供了一種通信系統,包括:與第一外部中繼裝置形成干線的兩個或更多個第一中繼裝置;第二中繼裝置,其連接到第一中繼裝置中的至少一個,并且被布置在執行點對點通信的目的地裝置和第一中繼裝置之間;以及控制第一中繼裝置和第二中繼裝置的控制裝置。在該通信系統中,控制裝置包括:用于接收關于點對點通信的配置的請求的組件,所述請求包括關于點對點通信的端點信息;以及用于基于關于點對點通信的端點信息和第一外部中繼裝置的分組分配規則來確定點對點通信的路徑、并且在所述路徑上的所述第一中繼裝置和第二中繼裝置中為使用所述干線的所述點對點通信設定分組轉發規則的組件。
根據第三方面,提供了一種由控制裝置執行的中繼裝置控制方法,該控制裝置連接到與第一外部中繼裝置形成干線的兩個或更多個第一中繼裝置,以及該控制裝置連接到第二中繼裝置,第二中繼裝置連接到第一中繼裝置中的至少一個,并且被布置在執行點對點通信的目的地裝置與第一中繼裝置之間,并且控制裝置控制第一中繼裝置和第二中繼裝置。該中繼裝置控制方法包括以下步驟:接收關于點對點通信的配置的請求,該請求包括關于點對點通信的端點信息;以及在點對點通信發生之前,基于關于點對點通信的端點信息和第一外部中繼裝置的分組分配規則來確定點對點通信的路徑,并且為在該路徑上使用第一中繼裝置和第二中繼裝置中的干線的點對點通信設定分組轉發規則。此外,該方法與被稱為控制中繼裝置的控制裝置的某個機器綁定。
根據第四方面,提供一種由構成控制裝置的計算機執行的計算機程序,該控制裝置連接到與第一外部中繼裝置形成干線的兩個或更多個第一中繼裝置,第一外部中繼裝置連接到第二中繼裝置,第二中繼裝置與第一中繼裝置中的至少一個連接并且被布置在執行點對點通信的目的地裝置與第一中繼裝置之間,并且控制裝置控制第一中繼裝置和第二中繼裝置。該程序使得計算機執行用于接收關于點對點通信的配置的請求的處理,該請求包括關于點對點通信的端點信息,和用于基于關于點對點通信的端點信息和第一外部中繼裝置的分組分配規則的確定點對點通信的路徑的處理,以及為使用在路徑上的第一中繼裝置和第二中繼裝置中的干線的點對點通信分組設定轉發規則。程序可以記錄在計算機可讀(非瞬態)存儲介質中。即,本發明可以實現為計算機程序產品。
有益效果
本發明可以有助于豐富實現點對點通信的手段。也就是說,本發明可以將集中控制型通信系統轉換為能夠執行更適合的點對點通信的系統。
附圖說明
圖1示出了根據本發明的示例性實施例的配置。
圖2示出了根據本發明的第一示例性實施例的通信系統的配置。
圖3示出了根據本發明的第一示例性實施例的控制裝置的配置。
圖4示出了根據本發明的第一示例性實施例的控制裝置中保持的點對點配置信息的示例。
圖5是示出了根據本發明的第一示例性實施例的控制裝置的操作的順序圖。
圖6示出了根據本發明的第一示例性實施例的中繼裝置中設定的分組轉發規則的示例。
圖7示出了根據本發明的第一示例性實施例的中繼裝置中設定的分組轉發規則的示例。
圖8示出了根據本發明的第一示例性實施例的中繼裝置中設定的分組轉發規則的示例。
圖9是示出了根據本發明的第一示例性實施例的控制裝置執行的分組轉發規則設定操作的圖。
圖10示出了根據本發明的第一示例性實施例的中繼裝置中設定的分組轉發規則的示例。
圖11示出了根據本發明的第一示例性實施例的中繼裝置中設定的分組轉發規則的示例。
圖12示出了根據本發明的第一示例性實施例的中繼裝置中設定的分組轉發規則的示例。
圖13是示出了根據本發明的第一示例性實施例的控制裝置執行的分組轉發規則設定操作的另一圖。
圖14是示出了當根據本發明的第一示例性實施例的通信系統中的中繼裝置發生故障時執行的操作的圖。
圖15是示出了當根據本發明的第一示例性實施例的通信系統中的中繼裝置發生故障時執行的分組轉發規則重寫處理的圖。
圖16是示出了當根據本發明的第一示例性實施例的通信系統中的中繼裝置發生故障時執行的操作的另一圖。
圖17是示出了當根據本發明的第一示例性實施例的通信系統中的中繼裝置發生故障時執行的分組轉發規則重寫處理的另一圖。
圖18是示出了當根據本發明的第一示例性實施例的通信系統中的中繼裝置發生故障時執行的分組轉發規則重寫處理的另一圖。
具體實施方式
首先,將參考附圖描述本發明的示例性實施例的概述。在下面的概述中,為了方便起見,以附圖標記表示各種部件。也就是說,以下附圖標記僅用作示例,以便于理解本發明,而不是將本發明限于所示的模式。
如圖1所示,本發明的示例性實施例可以通過包括以下各項的配置實現:兩個或更多個第一中繼裝置201a和203a,其與第一外部中繼裝置301a形成干線;第二中繼裝置202a和204a,其連接到第一中繼裝置201a和203a中的至少一個,并被布置在執行點對點通信的點對點通信目的地裝置(外部中繼裝置302a)和第一中繼裝置之間;以及控制第一中繼裝置和第二中繼裝置201a至204a的控制裝置101a。
在下文中,術語“干線(trunk)”將用于表示通過使用稱為端口中繼(trunking)或鏈路聚合的方法實現的聚合鏈路(中繼)。網絡裝置的供應商將這些方法bonding、teaming等稱作其各自裝置的功能名稱。在任何情況下,通過將單個部分中的多個鏈路處理為單個虛擬鏈路來實現冗余(可用性的改善)、負載分配(或平衡)、并行化等。
控制裝置101a包括:用于接收關于點對點通信的配置的請求的組件111a,該請求包括關于點對點通信的端點信息;以及用于基于關于點對點通信的端點信息和第一外部中繼裝置301a的分組分配規則來確定點對點通信的路徑,以及在所述路徑上的所述第一中繼裝置和第二中繼裝置中為使用所述干線的所述點對點通信設定分組轉發規則的組件121a。
通過上述配置,當控制裝置101a接收到關于點對點通信的配置的請求時,控制裝置101a將分組轉發規則設定在點對點通信的路徑上的中繼裝置中。因此,在不等待來自任何中繼裝置201a至204a的分組轉發規則設定請求的情況下,可以開始點對點通信。此外,由于僅需要設定實現端點之間的點對點通信的分組轉發規則,所以可以減少在中繼裝置中的單獨一個中設定的分組轉發規則的數量。
[第一示例性實施例]
接下來,將參照附圖詳細描述本發明的第一示例性實施例。圖2示出了包括以下各項的配置:六個中繼裝置201至206,其與分組轉發有關的操作可以通過外部命令控制;以及控制這些中繼裝置201至206的控制裝置101。
中繼裝置201至206分別經由控制鏈路連接到控制裝置101。中繼裝置201至206經由數據轉發鏈路相互連接。以下,將連接到外部中繼裝置301的中繼裝置201和204將稱為第一中繼裝置。連接到外部中繼裝置302的中繼裝置203和206將被稱為第三中繼裝置。布置在第一中繼裝置和第三中繼裝置之間的中繼裝置將被稱為第二中繼裝置。
外部中繼裝置301具有通過使用多個物理端口形成干線的功能。在外部中繼裝置301的端口中,形成干線的端口經由數據轉發鏈路連接到中繼裝置201和204。
類似地,在外部中繼裝置302的多個端口中,形成干線的端口經由數據轉發鏈路連接到中繼裝置203和206。
在下文中,將假設使用符合npl1中的openflow的交換機作為中繼裝置201至206來描述本示例性實施例。然而,除了openflow交換機之外的裝置可以用作中繼裝置201至206。替選地,能夠經由telnet通過使用cli(命令行界面)來設定分組路徑而指定任意分組的匹配條件的裝置。
圖3示出了根據本發明的第一示例性實施例的控制裝置的配置。圖3示出了包括中繼裝置通信單元1011、拓撲獲取單元1012、拓撲表1013、單播路徑搜索單元1014、單播路徑控制命令生成單元1015、點對點信息接收單元1016、點對點信息存儲單元1017、和干線控制命令生成單元1018的配置。
中繼裝置通信單元1011與中繼裝置201至206執行控制通信。具體而言,中繼裝置通信單元1011與中繼裝置201至206建立控制會話和交換控制命令。openflow(協議)可以用于控制命令。可以經由telnet或snmp(簡單網絡管理協議)通過cli執行通信。
經由中繼裝置通信單元1011,拓撲獲取單元1012發送拓撲獲取分組,獲取中繼裝置201至206的拓撲,并將獲取的拓撲存儲在拓撲表1013中。可以通過使中繼裝置201至206發送相鄰中繼裝置識別信息來獲取拓撲。用于識別中繼裝置(交換機)中的相鄰節點的這種協議的典型示例是鏈路層發現協議。控制裝置101可以使某個中繼裝置從某個端口輸出包括中繼裝置的id和端口號碼的分組。在這種情況下,通過從相對的中繼裝置接收相應的分組,控制裝置101可以識別中繼裝置之間(之中)的連接。當輸出和接收分組時,控制裝置可以使用openflow(協議)的分組輸出和分組輸入消息。關于網絡拓撲的信息可以在拓撲表1013中預先設定。
單播路徑搜索單元1014參考拓撲表1013,并通過使用預定的計算算法搜索中繼裝置201至206上的單播路徑。當計算單播路徑時,可以分別針對連接到外部中繼裝置301和302的每對中繼裝置計算不同的路徑。替選地,可以計算其中將連接到外部中繼裝置301或302的中繼裝置用作開始點或結束點的路徑樹。例如,可以使用最短路徑樹(其典型的例子是dijkstra算法)作為路徑計算方法。路徑的數量不限于一個。可以針對每個通信單元使用不同的路徑。當計算路徑時,可以通過使用中繼裝置中的每個作為開始點或結束點來執行計算。
單播路徑控制命令生成單元1015經由中繼裝置通信單元1011生成并發送控制命令,以將分組轉發規則設定在由單播路徑搜索單元1014找到的路徑上的中繼裝置201至206中。
點對點信息接收單元1016從網絡管理員等接收關于點對點通信的配置信息(點對點配置信息)。可以通過使用cli(命令行界面)或gui(圖形用戶界面)來執行對點對點信息接收單元1016的輸入。
在本示例性實施例中,點對點配置信息的項包括連接到作為對應點對點通信的端點的外部中繼裝置的一對中繼裝置和用于點對點通信的一對端口。可以將由多個中繼裝置的端口形成的干線指定為點對點通信的端點。除了中繼裝置201至206的端口或干線之外,還可以指定vlanid(虛擬局域網標識符)。以這種方式,可以僅對某些vlan通信執行點對點通信。
點對點信息存儲單元1017累積由點對點信息接收單元1016接收的點對點配置信息。當計算用于點對點通信的單播路徑時,單播路徑搜索單元1014是指累積的點對點信息。
圖4示出了在點對點信息存儲單元1017中保持的點對點配置信息的示例。在圖4中的示例中,每點對點通信分配id(點對點通信id)。每點對點通信分配的id(點對點通信id)用于識別屬于相應點對點通信的分組。雖然圖4中的示例僅示出了點對點通信id為1的條目,但是可以存儲點對點配置信息的多個條目。
基于來自單播路徑搜索單元1014的通知,中繼控制命令生成單元1018生成用于中繼裝置201至206的干線控制命令,并且經由中繼裝置通信單元1011發送控制命令。
在本示例性實施例中,分開布置數據通信路徑和控制通信路徑。然而,單個種類路徑可以用于數據和控制操作。此外,在本示例性實施例中,使用六個中繼裝置和兩個外部中繼裝置,并且兩個中繼裝置形成干線。然而,這些數量用作示例,便于說明。本發明不特別限于這些數量。
此外,圖1或圖3所示的控制裝置101或101a的單元(處理組件)中的單獨一個可以通過使構成對應的控制裝置的計算機使用其硬件并執行上述處理的計算機程序來實現。
接下來,將參照附圖詳細描述根據本示例性實施例的操作。首先,將描述控制裝置101如何在中繼裝置201至206中設定點對點通信路徑(分組轉發規則)的操作。
以下說明假設控制裝置101已經接收了由圖2中的中繼裝置201和204形成的干線與由中繼裝置203和206形成的干線之間的點對點通信配置信息。更具體地,以下描述假定,如圖4所示,控制裝置101已經接收到關于其中使用中繼裝置201和203作為端點的點對點通信的配置信息和關于其中使用中繼裝置204和206作為端點的點對點通信的配置信息。
圖5是示出了控制裝置的操作的順序圖。如圖5所示,首先,控制裝置101接收點對點通信配置信息(步驟s0-1)。控制裝置101參照點對點通信配置信息,并且取決于點對點通信識別出將分組分類為中繼裝置201或204以及中繼裝置203或206。接下來,控制裝置101計算中繼裝置201和203之間的單播路徑以及中繼裝置204和206之間的單播路徑(步驟s0-2)。以下說明假定控制裝置101已經計算了沿著中繼裝置201至203的單播路徑以及沿著中繼裝置204至206的單播路徑。
控制裝置101生成在該兩個單播路徑上的中繼裝置中設定的分組轉發規則(步驟s0-3)。
接下來,控制裝置101將在步驟s0-3中生成的分組轉發規則設定在中繼裝置201中(步驟s1-1)。圖6示出了在中繼裝置201中設定的分組轉發規則的示例。中繼裝置201根據圖6中的分組轉發規則2011至2014轉發分組。
圖6中的分組轉發規則2011定義了應用于經由連接到外部中繼裝置301的端口接收的并且具有從其計算只是目的地中繼裝置203的哈希值的分組報頭的分組的處理內容。圖6中的分組轉發規則2011的處理內容定義了中繼裝置201將點對點通信id(例如,“1”)和指示目的地中繼裝置203的id添加到匹配分組,并將匹配分組輸出到導向目的地中繼裝置203的單播路徑(例如,到連接到中繼裝置202的端口)。
同樣,圖6中的分組轉發規則2012定義了應用于經由連接到外部中繼裝置301的端口接收的分組并且具有從其計算指示目的地中繼裝置206的哈希值的分組報頭的處理內容。圖6中的分組轉發規則2012的處理內容定義了中繼裝置201將點對點通信id(例如,“1”)和指示目的地中繼裝置206的id添加到匹配分組,并將匹配分組輸出到導向目的地中繼裝置206的單播路徑(例如,到連接到中繼裝置204的端口)。
如圖6中的分組轉發規則2011和2012所定義的,中繼裝置201基于從分組報頭計算出的哈希值,選擇目的地中繼裝置,即形成干線的中繼裝置203和206之一。以這種方式,可以實現中繼裝置之間和中繼裝置與外部中繼裝置之間的分組轉發的負載平衡。
用于從分組報頭計算哈希值的方法的示例包括從源mac(媒體訪問控制)地址、目的地mac地址和以太網報頭的vlanid(以下,“以太網(ethernet)”是注冊商標)計算哈希值的方法。可以使用用于參考以太網報頭的某個報頭中的特定比特值的方法。另外,可以使用外部中繼裝置301中的分配(分類)目的地選擇規則(哈希值計算方法)作為向中繼裝置203或206分配分組的規則(哈希值計算方法)。
此外,可以通過基于mac中的mac將匹配分組與以太網幀封裝并將該id存儲在外部以太網報頭中的mac地址中,來將點對點通信id和指示目的地中繼裝置id的id分配給匹配分組。替選地,可以基于q中的q添加vlan標志,并且可以將id存儲在添加的vlan報頭中。替選地,可以添加mpls(多協議標簽交換)報頭,并且可以將id存儲在添加的mpls報頭中的標簽中。
此外,控制裝置101在圖6中的中繼裝置201中設定分組轉發規則2013和2014。分組轉發規則2013指令中繼裝置201沿著導向目的地中繼裝置203的單播路徑,轉發指示目的地中繼裝置203的id被添加到的分組。同樣地,分組轉發規則2014指令中繼裝置201沿著導向目的地中繼裝置206的單播路徑,轉發指示目的地中繼裝置206的id被添加到的分組。這些也用于使中繼裝置201沿著替選路徑執行分組轉發。
接下來,控制裝置101將在步驟s0-3中生成的分組轉發規則設定在中繼裝置202中(步驟s1-2)。圖7示出了在中繼裝置202中設定的分組轉發規則的示例。中繼裝置202根據圖7中的分組轉發規則2021和2022轉發分組。
圖7中的分組轉發規則2021指令中繼裝置202沿著導向目的地中繼裝置203的單播路徑,轉發指示目的地中繼裝置203的id被添加到的分組。類似地,分組轉發規則2022指令中繼裝置202沿著導向目的地中繼裝置206的單播路徑,轉發指示目的地中繼裝置206的id被添加到的分組。這些也用于使中繼裝置202沿著替選路徑執行分組轉發。
接下來,控制裝置101將在步驟s0-3中生成的分組轉發規則設定在中繼裝置203中(步驟s1-3)。圖8示出了在中繼裝置203中設定的分組轉發規則的示例。中繼裝置203根據圖8中的分組轉發規則2031和2032轉發分組。
圖8中的分組轉發規則2031定義了應用于指示目的地中繼裝置203的id和指定為點對點通信id(例如“1”)的值被添加到的分組的處理內容。圖8中的分組轉發規則2031的處理內容定義了中繼裝置203從匹配分組移除指示目的地中繼裝置203的id和點對點通信id,并從連接到外部中繼裝置302的端口輸出匹配分組。
圖8中的分組轉發規則2032指令中繼裝置203沿著導向目的地中繼裝置206的單播路徑轉發指示目的地中繼裝置206的id被添加到的分組。該分組轉發規則2032用于使中繼裝置203沿著替選路徑執行分組轉發。例如,當在中繼裝置205和206之間發生故障并且尋址到目的地中繼裝置206的分組在替選路徑上從中繼裝置202轉發時,也使用該分組轉發規則2032。
在如上所述在中繼裝置201至203中設定分組轉發規則之后,如圖9所示,例如,可以在沿著中繼裝置201至203的路徑上轉發具有從其計算出指示目的地中繼裝置203的哈希值的分組報頭的分組。另外,在點對點通信中,在其中中繼裝置206為目的地的單播路徑上轉發具有從其計算出指示目的地中繼裝置206的哈希值的分組報頭的分組。在轉發屬于任何點對點通信的匹配分組的過程中,為匹配分組分配指示對應目的地中繼裝置的id和點對點通信id。指示對應的目的地中繼裝置的id由后續中繼裝置進行檢查,以確定轉發目的地,并且可以由最下游中繼裝置使用點對點通信id,來確定點對點通信,并且改變輸出端口。
類似地,控制裝置101將在步驟s0-3中生成的分組轉發規則設定在中繼裝置204中(步驟s1-4)。圖10示出了在中繼裝置204中設定的分組轉發規則的示例。中繼裝置204根據圖10中的分組轉發規則2041至2044轉發分組。具體內容等同于圖6中的分組轉發規則2011至2014,將省略其描述。
類似地,控制裝置101將在步驟s0-3中生成的分組轉發規則設定在中繼裝置205和206中(步驟s1-5和s1-6)。圖11和圖12分別示出了在中繼裝置205和206中設定的分組轉發規則的示例。中繼裝置205根據圖11中的分組轉發規則2051和2052轉發分組。同樣,中繼裝置206根據圖12中的分組轉發規則2061和2062轉發分組。具體內容等同于圖7和圖8中的分組轉發規則2021和2022以及分組轉發規則2031和2032,將省略其描述。
在如上所述在中繼裝置204至206中設定分組轉發規則之后,如圖13所示,例如,可以在沿著中繼裝置204至206的路徑上轉發具有從其計算出指示目的地中繼裝置206的哈希值的分組頭部的分組。此外,在點對點通信中,在其中中繼裝置203為目的地的單播路徑上轉發從其計算出指示目的地中繼裝置203的哈希值的分組報頭的分組。在轉發屬于任何點對點通信的匹配分組的過程中,為匹配分組分配指示對應目的地中繼裝置的id和點對點通信id。指示對應的目的地中繼裝置的id由后續中繼裝置檢查,以確定轉發目的地,并且可以由最下游中繼裝置使用點對點通信id來確定點對點通信,并且改變輸出端口。
雖然將不描述特定分組轉發規則,但是控制裝置101根據相同的流程,計算用于將由中繼裝置203接收的分組從外部中繼裝置302轉發到中繼裝置201或204的路徑,并且設定相關的分組轉發規則。控制裝置101還計算用于將由中繼裝置206接收的分組從外部中繼裝置302轉發到中繼裝置201或204的路徑,并且設定相關的分組轉發規則。以這種方式,可以執行任意兩點之間的雙向點對點通信。
接下來,將描述當在圖2中的中繼裝置202和203之間發生故障時執行的操作。在此操作中,將路徑切換到替選路徑,以繼續執行點對點通信。
圖14是示出了當在中繼裝置202和203之間發生故障時執行的操作的圖。當在中繼裝置202和203之間發生故障時,中繼裝置202通知控制裝置101端口故障(步驟s2-1)。中繼裝置203也通知控制裝置101端口故障(步驟s2-2)。為了檢測中繼裝置之間的故障,可以使用中繼裝置特有的端口故障檢測機構。替選地,如在拓撲的獲取中,中繼裝置可以交換關于其相鄰中繼裝置的信息。替選地,控制裝置可以指令中繼裝置發送分組并且檢測錯誤(分組的不傳送)。
當接收到通知時,控制裝置101基于通知的內容來更新拓撲表1013,并且重新計算受故障影響的單播路徑。基于重新計算的結果,控制裝置101指令中繼裝置202改變分組轉發規則,如圖15所示(步驟s2-3)。圖7所示的分組轉發規則和圖15所示的分組轉發規則之間的區別在于,在分組轉發規則2021的動作中的輸出端口已被改變為連接到在重新計算的單播路徑上的中繼裝置(例如,中繼裝置205)的端口。
替選地,可以預先在中繼裝置中設定當輸出端口故障發生時指令沿著替選路徑轉發的圖15中相應的分組轉發規則。在這種情況下,通過使中繼裝置移除與其中已經檢測到故障的路徑相對應的分組轉發規則,可以在沒有來自控制裝置101的指令的情況下執行旁路處理。替選地,中繼裝置可以被提供有當檢測到故障時將圖7中相應的分組轉發規則重寫到圖15中的相應分組轉發規則的功能。通過使用這些配置中的任一個,即使在控制裝置101和中繼裝置之間發生故障,也可以執行旁路處理。
接下來,當在圖2中的中繼裝置202和203之間以及中繼裝置203和206之間發生故障時執行的操作。在此操作中,將路徑切換到替選路徑,以繼續執行點對點通信。
圖16示出了當附加于中繼裝置202和203之間的故障,在中繼裝置203和206之間發生故障時執行的操作。如果附加于中繼裝置202和203之間的故障,中繼裝置203和206之間發生故障,則中繼裝置203通知控制裝置101端口故障(步驟s3-1)。中繼裝置206也通知控制裝置101端口故障(步驟s3-2)。
當接收到通知時,控制裝置101基于通知的內容來更新拓撲表1013,并且重新計算受故障影響的單播路徑。基于重新計算的結果,控制裝置101指令中繼裝置201改變分組轉發規則,如圖17所示(步驟s3-3)。根據圖17中的分組轉發規則2011,目的地中繼裝置不能分類為中繼裝置203和206(因為在從外部中繼裝置301到外部中繼裝置302的路徑上不存在中繼裝置203)。因此,無論從接收到的分組的分組報頭計算的哈希值如何,將指示中繼裝置206的id設定為指示接收到的分組中的目的地中繼裝置的id。
類似地,控制裝置101指令中繼裝置204改變分組轉發規則,如圖18所示(步驟s3-4)。根據圖18中的分組轉發規則2041,目的地中繼裝置不能被分類為中繼裝置203和206。因此,無論從接收到的分組的分組報頭計算的哈希值如何,將指示中繼裝置206的id設定為指示接收到的分組中的目的地中繼裝置的id。
此外,控制裝置101指令中繼裝置203執行形成連接到外部中繼裝置302的干線的端口的端口關閉(步驟s3-5)。在由中繼裝置203執行的端口關閉之后,通知外部中繼裝置302該端口關閉。結果,外部中繼裝置302不會將分組轉發到沒有到另一中繼裝置的任何路徑的中繼裝置203。
另外,在圖17和圖18的示例中,雖然定義關于其中目的地中繼裝置是中繼裝置203的分組的處理的分組轉發規則2013和2043未被改變,但是可以改變分組轉發規則2013和2043中的動作,使得中繼裝置201和204分別根據需要將分組輸出到其中中繼裝置206是目的地的單播路徑。此外,控制裝置101可以向外部中繼裝置301等發送預定的通知,使得防止發送其中目的地中繼裝置為中繼裝置203的分組。
如上所述,本示例性實施例不僅實現點對點通信,而且通過使用替選路徑,即使發生多個故障也能夠連續通信。
本示例性實施例的有益效果將總結如下。第一有益效果是,可以在不使用防止在由多個中繼裝置形成的分組轉發網絡中的諸如生成樹協議的循環的協議的情況下實現點對點通信。
第二有益效果是,當通信發生時,由于在通信之前在相關的中繼裝置中設定了必要的分組轉發規則(參見圖5),所以可以及時地執行通信。這意味著可以在不在中繼裝置和控制裝置之間引起負載的情況下開始通信。此外,根據本示例性實施例,當在中繼裝置和控制裝置之間發生故障時,可以執行新的通信。
第三有益效果是,可以在干線之間執行點對點通信。即,可以在點對點通信中的中繼裝置之間以及在外部中繼裝置與中繼裝置之間的通信中實現冗余和負載平衡。
雖然已經由此描述了本發明的個別示例性實施例,但是本發明不限于此。在不脫離本發明的基本技術概念的情況下,可以執行進一步的變化、替換或調整。例如,附圖中所示的網絡和元件的配置以及分組轉發規則的具體示例僅用作示例以便于理解本發明。即,本發明不限于圖中所示的。
例如,雖然已經假設點對點通信的端點被布置在干線之間而描述了上述示例性實施例,但是也可以在中繼裝置的端口之間或在中繼裝置的端口和干線之間執行點對點通信。
例如,根據上述示例性實施例(參見圖4),可以在點對點配置信息中包括vlanid。以這種方式,由于vlanid可以被添加到在步驟s1-1及隨后步驟中登記在中繼裝置中的分組轉發規則中的匹配條件,所以也可以實現每vlan的點對點通信。當執行每vlan的點對點通信時,通過添加用于將vlanid重寫到指示分組從中繼裝置輸出到外部中繼裝置的分組轉發規則中的動作的處理,可以在點對點通信的端點處改變vlanid。
最后,將總結本發明的合適模式。
[模式1]
(參照根據上述第一方面的控制裝置)
[模式2]
根據模式1的控制裝置,
其中,控制裝置連接到兩個或更多個第三中繼裝置,該兩個或更多個第三中繼裝置布置在執行點對點通信的目的地裝置與第二中繼裝置之間,并與第二外部中繼裝置形成第二干線,和
其中,控制裝置將使用兩個干線的分組轉發規則設定在第一至第三中繼裝置中。
[模式3]
根據模式2的控制裝置,
其中,控制裝置指令連接到第一外部中繼裝置的第一中繼裝置中的至少一個,以將用于識別所述點對點通信的信息添加到屬于點對點通信的分組,和
其中,控制裝置指令連接到第二外部中繼裝置的第三中繼裝置中的至少一個,以基于用于識別所述點對點通信的信息來確定輸出端口,并且從屬于點對點通信的分組移除用于識別所述點對點通信的信息。
[模式4]
根據模式1至3中任一項所述的控制裝置,還包括:
用于基于由中繼裝置形成的網絡拓撲的改變來重新計算屬于點對點通信的分組的路徑,并且在重新計算的路徑上的中繼裝置中設定用于轉發屬于沿著重新計算的路徑的點對點通信的分組的分組轉發規則的組件。
[模式5]
根據模式2至4中任一項所述的控制裝置,其中,控制裝置通過由中繼裝置形成的網絡拓撲的改變來指令從點對點通信的路徑移除的第一中繼裝置和第三中繼裝置中的至少一個,以執行屬于由點對點通信使用的干線的端口的端口關閉。
[模式6]
(參照根據上述第二方面的通信系統)
[模式7]
根據模式6的通信系統,
其中,在執行點對點通信的目的地裝置與第二中繼裝置之間,與第二外部中繼裝置形成第二干線的兩個或更多個第三中繼裝置,以及
其中,控制裝置將使用兩個干線的分組轉發規則設定在第一至第三中繼裝置中。
[模式8]
根據模式7的通信系統,
其中,控制裝置指令連接到第一外部中繼裝置的第一中繼裝置中的至少一個,以將用于識別所述點對點通信的信息添加到屬于點對點通信的分組,和
其中,控制裝置指令連接到第二外部中繼裝置的第三中繼裝置中的至少一個,以基于用于識別所述點對點通信的信息來確定輸出端口,并且從屬于點對點通信的分組移除用于識別所述點對點通信的信息。
[模式9]
根據模式6至8中任一項所述的通信系統,
其中,控制裝置還包括:用于基于由中繼裝置形成的網絡拓撲的改變重新計算屬于點對點通信的分組的路徑,并且在重新計算的路徑上的中繼裝置中設定將用于轉發屬于沿著重新計算的路徑的點對點通信的分組的分組轉發規則的組件。
[模式10]
根據模式7至9中任一項所述的通信系統,
其中,控制裝置通過由中繼裝置形成的網絡拓撲的改變來指令從點對點通信的路徑移除的第一中繼裝置和第三中繼裝置中的至少一個,以執行屬于由點對點通信使用的干線的端口的端口關閉。
[模式11]
(參照根據上述第三方面的中繼裝置控制方法)
[模式12]
(參照根據上述第四方面的程序)
上述模式11和12可以以與模式1擴展到模式2至5相同的方式擴展到模式2至5。
上述ptl和npl的公開內容通過引用并入本文。示例性實施例和示例的變化和調整在本發明的整體公開(包括權利要求)的范圍內是可能的,并且基于本發明的基本技術概念。在本發明的公開的范圍內,各種公開的元素(包括權利要求、示例、示例性實施例、實例、附圖等中的每一個中的元素)的各種組合和選擇是可能的。也就是說,本發明當然包括本領域技術人員根據包括權利要求和技術概念的整體公開可以做出的各種變化和修改。該說明書公開了數值范圍。然而,即使該描述沒有特別公開包括在范圍內的任意數值或小范圍,這些值和范圍應當被認為是具體公開的。
附圖標記列表
101、101a控制裝置
111a設定接收組件
121a分組轉發規則設定組件
131a中繼裝置控制組件
201、201a、203a、204(第一)中繼裝置
202、202a、204a、205(第二)中繼裝置
203、206(第三)中繼裝置
301、302、301a、302a外部中繼裝置
1011中繼裝置通信單元
1012拓撲獲取單元
1013拓撲表
1014單播路徑搜索單元
1015單播路徑控制命令生成單元
1016點對點信息接收單元
1017點對點信息存儲單元
1018干線控制命令生成單元
2011至2062分組轉發規則