TWI629885B - Software defined heterogeneous controller network environment high availability system and method thereof - Google Patents
Software defined heterogeneous controller network environment high availability system and method thereof Download PDFInfo
- Publication number
- TWI629885B TWI629885B TW106109856A TW106109856A TWI629885B TW I629885 B TWI629885 B TW I629885B TW 106109856 A TW106109856 A TW 106109856A TW 106109856 A TW106109856 A TW 106109856A TW I629885 B TWI629885 B TW I629885B
- Authority
- TW
- Taiwan
- Prior art keywords
- controller
- network
- application
- software
- state
- Prior art date
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本發明係有關於一種具異質控制器之軟體定義網路環境高可用性系統及其方法,該系統包含網路交換器、第一控制器、第二控制器與代理伺服器。第一控制器用於控制該網路交換器的一網路繞送規則。第二控制器作為該第一控制器的備援裝置。代理伺服器用於監聽該第一控制器、該第二控制器和該網路交換器的一連線訊息,其中該連線訊息包含一控制面訊息。該代理伺服器係解析該控制面訊息,以判斷該第一控制器指示該網路交換器的該網路繞送規則,並依據該網路繞送規則建立一網路拓樸,並且當該第一控制器發生異常時,分析該網路拓樸並將該第二控制器之一第二應用程式的狀態調整為與該第一控制器之一第一應用程式的狀態一致,進而藉由該第二控制器控制該網路交換器。
Description
本發明係有關於網路傳輸系統,尤指一種具異質控制器之軟體定義網路環境高可用性系統及其方法。
目前軟體定義網路環境高可用性解決方法主要是利用相同種類的控制器本身的資料庫來同步控制器的狀態,以達到高可用性。在啟動備援控制器時,可透過複製主要控制器內的資料庫來同步備援控制器的狀態,當主要控制器發生異常時,即可順利轉換到備援控制器,以達到網路高可用性。然就大型資料中心環境,為讓營運能更具靈活性,網路環境中存在異質控制器是普遍的現象,且同種類的控制器會存在共同的軟體缺陷,故現存的軟體定義網路高可用性技術並無法有效應用於大型資料中心。
由以上可知,需要一種新穎的方法,以輔助使用者妥善地解決既有的問題。
本發明之目的之一在於提供一種具異質控制器之軟體定義網路環境高可用性系統及其方法,以解決上述問題。
本發明之另一目的在於,使用異質控制器的軟體定義網路環
境可以達成高可用性。此外,可使用解析控制面訊息的方式使得網路拓樸更貼近實際網路的狀態,並且藉由分析網路拓樸來確認北向API序列及參數的方式,可以有效率的擴充控制器的應用程式,不必受限於應用程式必須使用控制器內部的資料庫來達成高可用性。
本發明之一實施例中提供一種具異質控制器之軟體定義網路環境高可用性系統。該系統包含網路交換器、第一控制器、第二控制器與代理伺服器。第一控制器用於控制該網路交換器的一網路繞送規則。第二控制器作為該第一控制器的備援裝置。代理伺服器用於監聽該第一控制器、該第二控制器和該網路交換器的一連線訊息,其中該連線訊息包含一控制面訊息。該代理伺服器係解析該控制面訊息,以判斷該第一控制器指示該網路交換器的該網路繞送規則,並依據該網路繞送規則建立一網路拓樸,並且當該第一控制器發生異常時,分析該網路拓樸並將該第二控制器之一第二應用程式的狀態調整為與該第一控制器之一第一應用程式的狀態一致,進而藉由該第二控制器控制該網路交換器。
本發明之另一實施例提供一種具異質控制器之軟體定義網路環境高可用性的方法,其包含:監聽該第一控制器、該第二控制器和該網路交換器的一連線訊息,其中該連線訊息包含一控制面訊息;解析該控制面訊息,以判斷該第一控制器指示該網路交換器的一網路繞送規則;依據該網路繞送規則建立一網路拓樸;以及當該第一控制器發生異常時,分析該網路拓樸並將該第二控制器之一第二應用程式的狀態調整為與該第一控制器之一第一應用程式的狀態一致,進而藉由該第二控制器控制該網路交換器。
上列詳細說明係針對本發明之一可行實施例之具體說明,惟該實施例並非用以限制本發明之專利範圍,凡未脫離本發明技藝精神所為之等效實施或變更,均應包含於本案之專利範圍中。
1‧‧‧具異質控制器之軟體定義網路環境高可用性系統
100‧‧‧第一控制器
110‧‧‧第一應用程式
200‧‧‧第二控制器
210‧‧‧第二應用程式
300‧‧‧代理伺服器
310‧‧‧訊息解析單元
320‧‧‧網路拓樸估測單元
330‧‧‧北向應用程式介面派送單元
400‧‧‧網路交換器
S310~S360‧‧‧步驟流程
圖1為根據本發明之實施例之具異質控制器之軟體定義網路環境高可用性系統的示意圖。
圖2為根據本發明之實施例之具異質控制器之軟體定義網路環境高可用性系統之控制流程的示意圖。
圖3為根據本發明之實施例之具異質控制器之軟體定義網路環境高可用性之方法的流程圖。
圖4為根據本發明之實施例之網路拓樸估測單元建立網路拓樸之演算法的虛擬碼。
圖5為根據本發明之實施例之北向應用程式介面派送單元分析得到第一應用程式狀態的演算法。
圖6為根據本發明之實施例之北向應用程式介面派送單元計算北向應用程式介面的序列及參數的演算法。
以下將以圖式及詳細說明本發明之精神,任何所屬技術領域中具有通常知識者在瞭解本發明之較佳實施例後,當可由本發明所教示之技術加以改變及修飾,其並不脫離本發明之精神與範圍。
關於本文中所使用之『第一』、『第二』、...等,並非特別指稱次序或順位的意思,亦非用以限定本案,其僅為了區別以相同技術用語描述的元件或操作。
關於本文中所使用之用詞(terms),除有特別註明外,通常具有每個用詞使用在此領域中、在此揭露之內容中與特殊內容中的平常意義。某些用以描述本揭露之用詞將於下或在此說明書的別處討論,以提供本領域技術人員在有關本揭露之描述上額外的引導。
請參考圖1,圖1為根據本發明之實施例之具異質控制器之軟體定義網路環境高可用性系統的示意圖。如圖1所示,具異質控制器之軟體定義網路環境高可用性系統1包含第一控制器100、第二控制器200、代理伺服器300、網路交換器400。其中,第一控制器100係執行第一應用程式110,第二控制器200係執行第二應用程式210。代理伺服器係可透過有線及/或無線方式耦接第一控制器100、第二控制器200與網路交換器400。其中,第一控制器100用於控制網路交換器400的網路繞送規則。並且第二控制器200作為第一控制器100的備援裝置。代理伺服器300用於監聽該第一控制器100、該第二控制器200和該網路交換器400的一連線訊息,其中該連線訊息包含一控制面訊息,並且於當第一控制器100發生異常時,分析該網路拓樸並將該第二控制器200之第二應用程式210的狀態調整為與第一控制器100之第一應用程式110的狀態一致,進而藉由第二控制器200控制該網路交換器400。舉例而言,第一控制器100可為Floodlight控制器,第二控制器200可為Ryu控制器,第一應用程式110及第二應用程式210可分別一防火牆(Firewall)應用程式,本發明不以此為
限。第一控制器100可使用防火牆應用程式之應用程式介面(API)預先設定防火牆規則限制軟體定義網路的連通性。
於此實施例中,代理伺服器300包含訊息解析單元310、網路拓樸估測單元320與北向應用程式介面(API)派送單元330。訊息解析單元310可解析該控制面訊息,以判斷第一控制器100指示網路交換器400的網路繞送規則。網路拓樸估測單元320可依據該網路繞送規則建立一網路拓樸。北向應用程式介面派送單元330依據第一控制器100之第一應用程式110的狀態與一應用程式介面描述檔來計算出一北向應用程式介面序列與參數,並且呼叫一北向應用程式介面,以對該北向應用程式介面下達使第二控制器200之第二應用程式210的狀態與第一控制器100之第一應用程式110的狀態一致的指令。藉此,本實施例之具異質控制器之軟體定義網路環境高可用性系統1可達到網路高可用性的目的。
請一併參考圖1與圖2,圖2為根據本發明之實施例之具異質控制器之軟體定義網路環境高可用性系統之控制流程的示意圖。如圖2所示,網路拓樸估測單元320接收來自訊息解析單元310的控制面訊息之後,即找尋網路節點資訊及網路連接資訊,然後利用網路節點資訊建立節點於網路拓樸,再利用網路節點資訊和網路連接資訊建立邊於網路拓樸,即可完成整個網路拓樸。舉例而言,圖4即為網路拓樸估測單元建立網路拓樸之演算法的虛擬碼。
此外,北向應用程式介面派送單元330可從一設定檔案中確認需要同步狀態的應用程式110,接著根據個別應用程式110的演算法從網路拓樸估測單元320分析拓樸取得應用程式110狀態。舉例而言,圖5即
為北向應用程式介面派送單元330從網路拓樸估測單元320分析得到第一應用程式110狀態的演算法。
接著,北向應用程式介面派送單元330可根據應用程式110狀態與API描述檔計算北向應用程式介面的序列及參數,呼叫北向應用程式介面,使得第二控制器200的應用程式210和第一控制器100的應用程式110狀態一致,達到高可用性的目的。舉例而言,圖6即為北向應用程式介面派送單元330計算北向應用程式介面的序列及參數的演算法。
請一併參考圖1與圖3,圖3為根據本發明之實施例之具異質控制器之軟體定義網路環境高可用性之方法的流程圖。其中,本實施例之實施例之具異質控制器之軟體定義網路環境高可用性方法可適用於上述實施例之具異質控制器之軟體定義網路環境高可用性的系統1,尤其是代理伺服器300。
於步驟S310中,訊息解析單元310監聽第一控制器100、第二控制器200和網路交換器400的連線訊息。其中,此連線訊息包含控制面訊息。
於步驟S320中,訊息解析單元310針對收到的控制面訊息進行解析。
於步驟S330中,訊息解析單元310判斷此訊息是第一控制器100送往網路交換器400的,或是網路交換器400送往第一控制器100的,如果是第一控制器100送往網路交換器400的控制面訊息,進入步驟S340;否則,則進入步驟S360。
於步驟S340中,訊息解析單元310判斷收到訊息是否為流
程修改(FlowMod)訊息,如果是流程修改訊息,就進行步驟3500,不然就進行步驟S360,
於步驟S350中,修改控制面訊息,啟用OFPFF_SEND_FLOW_REM旗號
於步驟S360中,將控制面訊息送往網路拓樸估測單元320或是網路交換器400。
其中,建構網路拓樸狀態所需要的OpenFlow訊息有以下三種,特徵回覆(FeatureRes)訊息是網路交換器400用來告知第一控制器100屬性的,流程修改訊息是第一控制器100用來修改網路交換器400的狀態,流程移除(FlowRemoved)訊息是網路交換器400用來通知第一控制器100移除過時的點和線;透過解析上述訊息就可以架構出網路拓樸。但是隨著時間增加,一些轉送規則會過期,此時網路交換器400會自動將過期規則移除掉,其對應的規則效果就會一併消逝。規則過期種類中的閒置過期(Idle Timeout)是無法推測何時發生,而且此類的過期訊息網路交換器400並不會主動通知第一控制器100,因此需要透過步驟3500修改控制面訊息,啟用OFPFF_SEND_FLOW_REM旗號,此旗號啟用之後就可以強制網路交換器400在移除規則時發出FlowRemoved訊息給第一控制器100,如此就可以架構出正確的網路拓樸。
綜上所述,本案不僅於技術思想上確屬創新,並具備習用之傳統方法所不及之上述多項功效,已充分符合新穎性及進步性之法定發明專利要件,爰依法提出申請,懇請 貴局核准本件發明專利申請案,以勵發明,至感德便。
Claims (10)
- 一種具異質控制器之軟體定義網路環境高可用性系統,其包含:一網路交換器;一第一控制器,係用於控制該網路交換器的一網路繞送規則;一第二控制器,係作為該第一控制器的備援裝置;以及一代理伺服器,係用於監聽該第一控制器、該第二控制器和該網路交換器的一連線訊息,其中該連線訊息包含一控制面訊息;其中,該代理伺服器係解析該控制面訊息,以判斷該第一控制器指示該網路交換器的該網路繞送規則,並依據該網路繞送規則建立一網路拓樸,並且當該第一控制器發生異常時,分析該網路拓樸並將該第二控制器之一第二應用程式的狀態調整為與該第一控制器之一第一應用程式的狀態一致,進而藉由該第二控制器控制該網路交換器。
- 如申請專利範圍第1項所述之具異質控制器之軟體定義網路環境高可用性系統,其中該代理伺服器係包含一訊息解析單元,係用於解析該控制面訊息,以判斷出該網路繞送規則。
- 如申請專利範圍第2項所述之具異質控制器之軟體定義網路環境高可用性系統,其中該代理伺服器更包含一網路拓樸估測單元,係依據該網路繞送規則來建構該網路拓樸。
- 如申請專利範圍第3項所述之具異質控制器之軟體定義網路環境高可用性系統,其中該代理伺服器更包含一北向應用程式介面派送單元,係依據該第一控制器之該第一應用程式的狀態與一應用程式介面描述檔來計算出一北向應用程式介面序列與參數,並且呼叫一北向應用程式介面, 以對該北向應用程式介面下達使該第二控制器之該第二應用程式的狀態與該第一控制器之該第一應用程式的狀態一致的指令。
- 一種具異質控制器之軟體定義網路環境高可用性方法,其適用於一網路系統,該網路系統包含一網路交換器、一第一控制器、一第二控制器以及一代理伺服器,該方法包含:監聽該第一控制器、該第二控制器和該網路交換器的一連線訊息,其中該連線訊息包含一控制面訊息;解析該控制面訊息,以判斷該第一控制器指示該網路交換器的一網路繞送規則;依據該網路繞送規則建立一網路拓樸;以及當該第一控制器發生異常時,分析該網路拓樸並將該第二控制器之一第二應用程式的狀態調整為與該第一控制器之一第一應用程式的狀態一致,進而藉由該第二控制器控制該網路交換器。
- 如申請專利範圍第5項所述之具異質控制器之軟體定義網路環境高可用性方法,該第一控制器係用於控制該網路交換器的一網路繞送規則。
- 如申請專利範圍第5項所述之具異質控制器之軟體定義網路環境高可用性方法,其中該第二控制器係作為該第一控制器的備援裝置。
- 如申請專利範圍第5項所述之具異質控制器之軟體定義網路環境高可用性方法,其中該代理伺服器係包含一訊息解析單元,係用於解析該控制面訊息,以判斷出該網路繞送規則。
- 如申請專利範圍第8項所述之具異質控制器之軟體定義網路環境高可用性方法,其中該代理伺服器更包含一網路拓樸估測單元,係依據該網路 繞送規則來建構該網路拓樸。
- 如申請專利範圍第9項所述之具異質控制器之軟體定義網路環境高可用性方法,其中該代理伺服器更包含一北向應用程式介面派送單元,該方法更包含:藉由該北向應用程式介面派送單元來依據該第一控制器之該第一應用程式的狀態與一應用程式介面描述檔計算出一北向應用程式介面序列與參數;以及呼叫一北向應用程式介面,以對該北向應用程式介面下達使該第二控制器之該第二應用程式的狀態與該第一控制器之該第一應用程式的狀態一致的指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106109856A TWI629885B (zh) | 2017-03-24 | 2017-03-24 | Software defined heterogeneous controller network environment high availability system and method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106109856A TWI629885B (zh) | 2017-03-24 | 2017-03-24 | Software defined heterogeneous controller network environment high availability system and method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI629885B true TWI629885B (zh) | 2018-07-11 |
TW201836326A TW201836326A (zh) | 2018-10-01 |
Family
ID=63640693
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106109856A TWI629885B (zh) | 2017-03-24 | 2017-03-24 | Software defined heterogeneous controller network environment high availability system and method thereof |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI629885B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070211689A1 (en) * | 2006-03-07 | 2007-09-13 | Campero Richard J | Network control |
TW201007489A (en) * | 2008-04-29 | 2010-02-16 | Maxiscale Inc | Peer-to-peer redundant file server system and methods |
CN201955675U (zh) * | 2011-02-16 | 2011-08-31 | 北京国电智深控制技术有限公司 | 一种分散控制系统试验箱 |
CN103051539A (zh) * | 2012-12-14 | 2013-04-17 | 中兴通讯股份有限公司 | 一种基于dht的控制网络实现方法、系统和网络控制器 |
CN204517830U (zh) * | 2015-03-17 | 2015-07-29 | 成都智慧之芯科技有限公司 | 基于全网络化的集中控制系统 |
-
2017
- 2017-03-24 TW TW106109856A patent/TWI629885B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070211689A1 (en) * | 2006-03-07 | 2007-09-13 | Campero Richard J | Network control |
TW201007489A (en) * | 2008-04-29 | 2010-02-16 | Maxiscale Inc | Peer-to-peer redundant file server system and methods |
CN201955675U (zh) * | 2011-02-16 | 2011-08-31 | 北京国电智深控制技术有限公司 | 一种分散控制系统试验箱 |
CN103051539A (zh) * | 2012-12-14 | 2013-04-17 | 中兴通讯股份有限公司 | 一种基于dht的控制网络实现方法、系统和网络控制器 |
CN204517830U (zh) * | 2015-03-17 | 2015-07-29 | 成都智慧之芯科技有限公司 | 基于全网络化的集中控制系统 |
Also Published As
Publication number | Publication date |
---|---|
TW201836326A (zh) | 2018-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10917307B2 (en) | Transparent middlebox graceful entry and exit | |
US9596134B2 (en) | Synchronization of configuration file of virtual application distribution chassis | |
EP3245762B1 (en) | Method and apparatus for router maintenance | |
WO2016045098A1 (zh) | 交换机、控制器、系统及链路质量检测方法 | |
WO2017031858A1 (zh) | 时延状态信息的检测方法及装置、网络架构 | |
US20140365634A1 (en) | Programmable Network Analytics Processing via an Inspect/Apply-Action Applied to Physical and Virtual Entities | |
CN110162405A (zh) | 一种自动服务发现与负载均衡的方法及系统 | |
CN104753752B (zh) | 一种适用于vpn的按需连接方法 | |
PH12020551322A1 (en) | Methods, network nodes, wireless device and computer program product for resuming a connection with full configuration | |
KR20140106235A (ko) | 오픈플로우 스위치 및 그 패킷 처리 방법 | |
WO2015165192A1 (zh) | 一种时间同步的方法及装置 | |
WO2016062165A1 (zh) | 一种实现操作管理维护功能的方法及装置 | |
TWI629885B (zh) | Software defined heterogeneous controller network environment high availability system and method thereof | |
WO2018215816A1 (en) | Handover at network edge | |
JP2011077630A (ja) | Sipサーバ、sip端末制御方法およびプログラム | |
WO2017071430A1 (zh) | 处理报文的方法、网卡及系统、更新信息的方法及主机 | |
WO2015120741A1 (zh) | 一种通告集群系统带宽的方法及控制器 | |
US20160021189A1 (en) | Automatic pushing of m2m signal processing to network sensor edge | |
CN113132758B (zh) | 内容分发网络的控制方法、装置及计算机程序产品 | |
WO2015135312A1 (zh) | 一种实现sdn网络通信管理的方法及装置 | |
JP2016048833A (ja) | ネットワークシステム及びそのバージョン変更方法 | |
CN102882735B (zh) | 一种mstp切换方法及装置 | |
CN113346974A (zh) | 用于时钟同步的方法、设备、通信系统和存储介质 | |
WO2016082368A1 (zh) | 一种保持数据一致性的方法、装置及ptn传输设备 | |
CN106612563B (zh) | 一种网络节点间建立sctp链路的方法及装置 |