TW201817199A - 網路路線優化方法及軟體定義網路控制器 - Google Patents

網路路線優化方法及軟體定義網路控制器 Download PDF

Info

Publication number
TW201817199A
TW201817199A TW106125220A TW106125220A TW201817199A TW 201817199 A TW201817199 A TW 201817199A TW 106125220 A TW106125220 A TW 106125220A TW 106125220 A TW106125220 A TW 106125220A TW 201817199 A TW201817199 A TW 201817199A
Authority
TW
Taiwan
Prior art keywords
route
candidate
substream
disjoint
routes
Prior art date
Application number
TW106125220A
Other languages
English (en)
Other versions
TWI653855B (zh
Inventor
林士能
Original Assignee
鴻海精密工業股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 鴻海精密工業股份有限公司 filed Critical 鴻海精密工業股份有限公司
Publication of TW201817199A publication Critical patent/TW201817199A/zh
Application granted granted Critical
Publication of TWI653855B publication Critical patent/TWI653855B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/128Shortest path evaluation for finding disjoint paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0894Policy-based network configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/34Signalling channels for network management communication
    • H04L41/342Signalling channels for network management communication between virtual entities, e.g. orchestrators, SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/036Updating the topology between route computation elements, e.g. between OpenFlow controllers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/14Routing performance; Theoretical aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/70Routing based on monitoring results
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本發明實施例提供了一種路線優化方法,應用於一軟體定義網路控制器。當該SDN控制器監測到一第一網路裝置和一第二網路裝置建立一MPTCP會話的握手資訊時:根據網路拓撲,分析出第一網路裝置和第二網路裝置之間的複數走訪路線及複數第一候選不相交路線組;從該些第一候選不相交路線組中選擇出一個相容度最高的第一不相交路線組,該第一不相交路線組包括一第一走訪路線;為該MPTCP會話的一第一子流配置該第一走訪路線;及生成用於該第一子流的一第一流表並下發至該第一子流途徑的複數轉發設備中。

Description

網路路線優化方法及軟體定義網路控制器
本發明實施例涉及通信領域,具體而言,涉及一種基於軟體定義網路(Software Defined Network, SDN)之網路路線優化方法及SDN控制器。
多路線傳輸控制協定(Multipath Transmission Control Protocol,簡稱:MPTCP)的核心思想是在應用層和傳輸層中間加入支援多路線傳輸的MPTCP層,將傳統的TCP資料分為複數TCP子流,不同TCP子流沿不同路線傳輸。
MPTCP是一個端到端協定,兩端根據可用埠及可用IP地址來決定是否建立或增加MPTCP子流,並為建立或增加的子流隨機分配走訪路線。而這些隨機分配的一條或複數走訪路線可能傳輸品質較差,從而影響傳輸效率,造成網路擁堵。
有鑑於此,本發明目的是提供一種基於軟體定義網路(SDN)之網路路線優化方法,為MPTCP會話的子流配置傳輸品質良好的走訪路線,以解決網路堵塞。
本發明目的還提供一種使SDN控制器,該SDN控制器可以為MPTCP會話的子流配置傳輸品質良好的走訪路線,以解決網路堵塞。
本發明實施例提供的一種路線優化方法,應用於一軟體定義網路(SDN)控制器,該SDN控制器位於一網路拓撲中,該方法包括下列步驟:當監測到一第一網路裝置和一第二網路裝置建立一MPTCP會話的握手資訊時:根據該網路拓撲,分析出該第一網路裝置和該第二網路裝置之間的複數走訪路線及複數第一候選不相交路線組,每個該第一候選不相交路線組包括從該些走訪路線中選擇的且兩兩之間均沒有共用傳輸路段的至少兩條候選走訪路線;從該些該第一候選不相交路線組中選擇出一個相容度最高的一第一不相交路線組,該第一不相交路線組包括一第一走訪路線;為該MPTCP會話的一第一子流配置該第一走訪路線;及生成用於該第一子流的一第一流表並下發至該第一子流途徑的複數轉發設備中路線路線路線路線路線。
本發明實施例還提供了一種SDN控制器,包括一第一監測模組、一分析模組、一選擇模組、一配置模組和一部署模組。該第一監測模組用於監測一第一網路裝置和一第二網路裝置建立MPTCP會話的握手資訊。該分析模組用於根據該網路拓撲,分析出該第一網路裝置和該第二網路裝置之間的複數走訪路線及複數第一候選不相交路線組,每個該第一候選不相交路線組包括從該些走訪路線中選擇的且兩兩之間均沒有共用傳輸路段的至少兩條候選走訪路線。該選擇模組用於從該些第一候選不相交路線組中選擇出一個相容度最高的一第一不相交路線組,該第一不相交路線組包括一第一走訪路線。該配置模組用於為該MPTCP會話的一第一子流配置該第一走訪路線。該部署模組用於生成用於該第一子流的一第一流表並下發至該第一子流途徑的複數轉發設備中。
圖1是本發明實施例之網路拓撲圖,該網路拓撲100包括至少一個SDN控制器110、一第一網路裝置112、一第二網路裝置114,以及複數轉發設備122、124、126、128、130、132、134、136、138及140。其中,該第一網路裝置112及該第二網路裝置114均具有MPTCP能力,其可以是個人電腦、平板電腦、行動電話或機上盒等電子設備。該些轉發設備122-140可以是交換機、路由器、AP或其它網路轉發裝置。
本發明實施例之SDN控制器110會即時監測網路拓撲100中的MPTCP資訊(如建立連接、增加子流、刪除子流等)。根據所監測到的MPTCP資訊,進行一關聯操作,如為一MPTCP會話中的一子流分配或重新分配高品質的一走訪路線。
圖2是本發明實施例之SDN控制器110的功能模組圖。該SDN控制器110包括一路線優化系統10、一記憶體20和一處理器30。一路線優化系統10包括一第一監測模組210、一分析模組212、一選擇模組214、一配置模組216、一部署模組218、一第二監測模組220、一更新模組222及一量化模組224。該些模組210-224被配置成由一個或複數處理器(本實施例為處理器30)執行,以完成本發明實施例。本發明實施例所稱的模組是完成一特定功能的電腦程式段。記憶體20用於存儲路線優化系統10的程式碼資料。
以下為MPTCP會話一第一子流的建立。
第一監測模組210,監測第一網路裝置112和第二網路裝置114建立MPTCP會話的握手資訊。該用於建立MPTCP會話的握手資訊包括三次握手消息,這三握手消息依次為TCP SYN消息、SYN+ACK消息及ACK消息。這三次握手消息的欄位中均攜帶有MP_CAPABLE選項。當第一監測模組210監測到第一網路裝置112和第二網路裝置114之間的這三次握手之後,則判斷第一網路裝置112和第二網路裝置114之間正在建立MPTCP連接(即MPTCP會話)。
需要說明的,該第一監測模組210是採用SDN的監測方式:預先向網路拓撲100中各個轉發設備(e.g., 122、124、…)下發了用於監測MPTCP資訊的一流表,這些轉發設備會對流經的資訊進行監測並在監測到MPTCP資訊後上傳或上報給SDN控制器110。
分析模組212,根據網路拓撲100(各個轉發設備間的連接狀態),分析出第一網路裝置112和第二網路裝置114之間的複數走訪路線及複數第一候選不相交路線組,每個該第一候選不相交路線組包括從該些走訪路線中選擇的兩兩之間均沒有共用傳輸路段的至少兩條候選走訪路線。
在本實施例中,分析模組212可以根據一福特-福克森(Ford-Fulkerson)演算法,遍歷出第一網路裝置112和第二網路裝置114之間複數走訪路線(不相交路線),圖3為Ford-Fulkerson演算法推導出的4條走訪路線(即A,B,C,D),該4條走訪路線可以根據預設數量分為複數第一候選不相交路線組,如預設數量為每組2條候選走訪路線,則可以形成(A,B)、(A,C)、(A,D)、(B,C)、(B,D)及(C,D),共6個第一候選不相交路線組;如預設數量為每組3條候選走訪路線,則可以形成(A,B,C)、(A,B,D)、(A,C,D)、(B,C,D),共4個第一候選不相交路線組。需要說明的是,第一候選不相交路線組內的候選走訪路線的資料可以預先設定,也可以根據走訪路線的數量決定,在此不做限定。
在另一實施例中,分析模組212可以先遍歷出第一網路裝置112和第二網路裝置114之間所有走訪路線,然後根據預設每組候選走訪路線的數量,形成複數第一候選不相交路線組,同一組內的候選走訪路線之間均沒有共用路段。
選擇模組214,從該些第一候選不相交路線組中選擇出一個相容度最高的第一不相交路線組,該第一不相交路線組包括一第一走訪路線。需要說明的是,該第一走訪路線即為該第一不相交路線組中的複數候選走訪路線中的其中一條。
每個第一候選不相交路線組的相容度可以由多種因數所決定的,例如組內所有候選走訪路線的頻寬總體傳輸品質、組內各條候選走訪路線之間的傳輸品質差異等。其中,第一不相交路線組內的各條候選走訪路線的傳輸品質好且各條候選走訪路線之間的傳輸品質相近。在一個實施例中,量化模組224被用於量化每個第一候選不相交路線組的相容度以得到相應的一相容度值。具體為:
當每個該第一候選不相交路線組包括兩條候選走訪路線時,以其中一個第一候選不相交路線組為例進行說明:這個第一候選不相交路線組的相容度值(compatibility value,CV)為:這個第一候選不相交路線組內的兩條候選走訪路線頻寬之和與這兩條候選走訪路線頻寬之比的乘積,其中,這兩條候選走訪路線頻寬之比恒不大於1。以(C,D)組為例:從圖4中得知,候選走訪路線C的可用頻寬(Available Bandwidth,ABC)為150,候選走訪路線D的可用頻寬(ABD)為20,故:CV(C,D)=(ABC+ABD)*(ABC/ABD)=(150+20)*(20/150)=22.61。
當每個該第一候選不相交路線組包括至少三條候選走訪路線時,以其中一個第一候選不相交路線組為例進行說明:這個第一候選不相交路線組的相容度值為:這個第一候選不相交路線組內的至少三條候選走訪路線兩兩之間的複數相容度的平均值。以(A,B,D)組為例:CV(A,B,D)=(CV(A,B)+CV(A,D)+CV(B,D))/3。
通過量化模組224可得到,如果預設數量為每組2條候選走訪路線時,(A,B)、(A,C)、(A,D)、(B,C)、(B,D)及(C,D)的6個第一候選不相交路線組中,(A,B)組成的第一不相交路線組的相容度值最高。
通過量化模組224可得到,如果預設數量為每組3條候選走訪路線時,(A,B,C)、(A,B,D)、(A,C,D)、(B,C,D)的4個第一候選不相交路線組中,(A,B,C)組成的第一不相交路線組的相容度值最高。
因此,如果預設數量為每組2條候選走訪路線時,選擇模組214從6個第一候選不相交路線組中選擇出一第一不相交路線組(A,B)。該第一不相交路線組中包括一第一走訪路線A和一第二走訪路線B。如果預設數量為每組3條候選走訪路線時,選擇模組214從4個第一候選不相交路線組中選擇出一第一不相交路線組(A,B,C)。該第一不相交路線組中包括一第一走訪路線A、一第二走訪路線B及一第三走訪路線C。
配置模組216,為該MPTCP會話的第一子流配置第一走訪路線A。第一走訪路線A可以是根據傳輸品質從第一不相交路線組中的複數候選走訪路線中選擇而出,該第一走訪路線A在第一不相交路線組中品質最優。
部署模組218根據開放流(Openflow)協議,生成用於第一子流的一第一流表並下發至第一子流途徑的複數轉發設備中。在本實施例中,該第一流表根據第一走訪路線A生成並下發到第一走訪路線A途徑的複數轉發設備(122、132、138、134及140)中。
以下為MPTCP會話一第二子流的建立。
第一監測模組210,監測用於在該MPTCP會話中加入第二子流的握手資訊。該增加第二子流的握手資訊包括三次握手消息。該三次握手消息的欄位中均攜帶有MP_JOIN選項。
配置模組216,為該第二子流配置該第二走訪路線B。由於在第一子流的建立中,選擇模組214選擇出第一不相交路線組,該第一不相交路線組還包括第二走訪路線B,因此,當第一監測模組210監測到加入第二子流的握手資訊後,配置模組216會直接為第二子流配置第二走訪路線B。
部署模組218,生成用於該第二子流的一第二流表並下發至該第二子流途徑的複數轉發設備中。在本實施例中,該第二流表根據第二走訪路線B生成並下發到第二走訪路線B途徑的複數轉發設備(122、128、134、130及140)中。
以下為MPTCP會話一第三子流的建立。
如圖3所示的4條走訪路線,如果預設數量為每個第一候選不相交路線組包括2條候選走訪路線時,在建立第一子流時得到的相容度最高的第一不相交路線組,不能為該第三子流提供具體的走訪路線。
第一監測模組210,監測用於在該MPTCP會話中加入第三子流的握手資訊。該增加第三子流的握手資訊包括三次握手消息。該三次握手消息的欄位中均攜帶有MP_JOIN選項。
分析模組212,根據該網路拓撲,分析出該網路拓撲中與該第一走訪路線A及該第二走訪路線B均不相交的複數第三候選走訪路線。如圖3所示,該些第三候選走訪路線包括走訪路線C和D。
選擇模組214,從該些第三候選走訪路線(即C,D)中選擇出一個與第一走訪路線A及該第二走訪路線B相容度最高的第三走訪路線C。
在本實施例中,通過量化模組224可知,(CV(a,b)+CV(a,c))/2 > (CV(d,b)+CV(d,c))/2。即,相比於第四走訪路線D,第三走訪路線C具有與第一走訪路線A及該第二走訪路線B更高的相容度。
配置模組216,為該第三子流配置該第三走訪路線C。
部署模組218,生成用於該第三子流的第三流表並下發至該第三子流途徑的轉發設備中。在本實施例中,該第一流表根據第三走訪路線C生成並下發到第三走訪路線C途徑的轉發設備(122、124、126及140)中。
以下為建立MPTCP會話第三子流的另一實施例。
如圖3所示的4條走訪路線,如果預設數量為每個第一候選不相交路線組包括3條候選走訪路線時,在建立第一子流時得到的相容度最高的第一不相交路線組,可以為該第三子流提供第三走訪路線C。
第一監測模組210,監測在該MPTCP會話中加入加入第三子流的握手資訊。
配置模組216,為該第三子流配置該第三走訪路線C。該第三走訪路線C來自於第一不相交路線組中。
部署模組218,生成用於該第三子流的一第三流表並下發至該第三子流途徑的複數轉發設備中。
以下為MPTCP子流的刪除及更新(1)。
第二監測模組220,監測該MPTCP會話中每個子流的傳輸品質。在本實施例中,第二監測模組220可以根據複數因數評測每個子流的傳輸品質。該因數包括一往返延時(Round-Trip Time,RTT)、一丟包率(Packet Lost Ratio)、一可用頻寬(Available Bandwidth)與一接收窗口(Receiving Window,RWIN),但不以此為限。
在一實施例,第二監測模組220可以對每個子流的傳輸品質進行趨勢分析。當分析出其中一個子流的傳輸品質持續下滑並預設閥值的,則通知配置模組216刪除該子流。
配置模組216,當其中一個子流的傳輸品質低於一個預設閥值時,為該傳輸品質低於該預設閥值的子流重新配置走訪路線,或刪除該傳輸品質低於該預設閥值的子流。如果MPTCP會話當前包括第一子流、第二子流和第三子流時,當第二子流的傳輸品質低於第一預設閥值,則刪除該第二子流,或者為該第二子流重新配置新的其它走訪路線,例如將第二子流的走訪路線由第二走訪路線B重新配置為傳輸品質更高的第四走訪路線D (每條走訪路線的傳輸品質是動態變化的,假設此時第四走訪路線D的傳輸品質優於第三走訪路線C)。
部署模組218,根據一重新配置操作或一刪除操作,生成相應的一第四流表並下發至與該第四流表關聯的複數轉發設備中。當重新配置操作被實施時,第四流表下發至第四走訪路線D上的轉發設備及通知第二走訪路線B上的轉發設備刪除第二流表(當然,流表也可以設置老化機制)。當刪除操作被實施時,觸發第二走訪路線B上的兩端的轉發設備(122、140)向第一網路裝置112和第二網路裝置114發送RST消息和FIN消息。
以下為MPTCP子流的刪除及更新(2)。
如果對第二子流的刪除操作被實施,更新模組222會對該MPTCP會話中的其餘子流(即剩餘的第一子流和第三子流)的走訪路線進行更新:依據該其餘子流(第一子流和第三子流)的數量及該網路拓撲,分析出與該數量匹配的複數第二候選不相交路線組;從該些第二候選不相交路線組中選擇出一個相容度最高的第二不相交路線組;依據該第二不相交路線組,為該其餘子流重新配置相應的走訪路線;及根據更新策略生成相應的一第五流表下發至相應的複數轉發設備中。
本發明實施例之基於軟體定義網路(SDN)之網路路線優化方法利用已知的開放流(OpenFlow)技術標準協議(例如,ONF-OFPI),取得網路拓撲相關資訊,並為MPTCP會話的子流配置優化路線,從而減輕網路擁堵。
在一個實施例中,SDN控制器110還可以建立一個資訊連接表,該資訊連接表用於記錄該MPTCP會話中的子流資訊,該子流資訊包括子流權杖資訊、協定號、源位址、源埠號、目的地址及目的埠號。
在一個實施例中,SDN控制器110還可以監測第一網路裝置或第二網路裝置發出的其它資訊,如ADD_ADDR消息、REMOVE_ADDR消息。
圖5是本發明實施例之網路路線優化方法的步驟流程圖。該方法的執行可以為如圖2所示的SDN控制器110,也可以是支援本方法的任意其它控制器。下面以SDN控制器為執行主體進行示例性描述。
步驟S300,監測一第一網路裝置112和一第二網路裝置114建立一MPTCP會話的握手資訊。
步驟S302,根據網路拓撲100,分析出第一網路裝置112和第二網路裝置114之間的複數走訪路線及複數第一候選不相交路線組,每個該第一候選不相交路線組包括從該複數走訪路線中選擇的兩兩之間均沒有共用傳輸路段的至少兩條候選走訪路線。
步驟S304,從該些第一候選不相交路線組中選擇出一個相容度最高的第一不相交路線組,該第一不相交路線組包括一第一走訪路線。
步驟S306,為該MPTCP會話的一第一子流配置第一走訪路線。第一走訪路線可以是根據傳輸品質從第一不相交路線組選擇而出。
步驟S308,生成用於第一子流的一第一流表並下發至第一子流途徑的複數轉發設備中。
步驟S300-S308用於MPTCP會話的建立及第一子流的建立。
步驟S310,監測用於在該MPTCP會話中加入一第二子流的握手資訊。
步驟S312,為該第二子流配置該第二走訪路線。
步驟S314,生成用於該第二子流的一第二流表並下發至該第二子流途徑的複數轉發設備中。
步驟S310-S314用於MPTCP會話的一第二子流的建立。
步驟S316,監測用於在該MPTCP會話中加入第三子流的握手資訊。
步驟S318,判斷步驟S304中的第一不相交路線組是否包括一第三走訪路線。如果不包括,進入步驟S320;如果包括,進入步驟S324。
步驟S320,根據該網路拓撲,分析出該網路拓撲中與該第一走訪路線及該第二走訪路線均不相交的複數第三候選走訪路線。
步驟S322,從該些第三候選走訪路線中選擇出一個與第一走訪路線及該第二走訪路線相容度最高的第三走訪路線。
步驟S324,為該第三子流配置該第三走訪路線。
步驟S326,生成用於該第三子流的一第三流表並下發至該第三子流途徑的複數轉發設備中。
步驟S316-S326用於MPTCP會話的一第三子流的建立。
本發明實施例並不限制第一、第二及第三子流的建立,參照第二子流和第三子流的建立,可以進一步建立第四子流、第五子流、…。
圖6是本發明實施例之網路路線優化方法的步驟流程圖。
步驟S400、監測該MPTCP會話中每個子流的傳輸品質。
步驟S402、判斷是否存在至少一個子流的傳輸品質低於一個預設閥值。如果有,進入步驟S404;如果沒有,返回步驟S400。
步驟S404、為該傳輸品質低於該預設閥值的子流實施處理操作,該處理操作包括重新配置走訪路線,或刪除子流。當實施一刪除操作時,進入步驟S406;當實施一重新配置操作時,進入步驟S410。
步驟S406、根據刪除操作生成相應的一第四流表並下發至與該第四流表關聯的複數轉發設備中。
步驟S408、對該MPTCP會話中的其餘子流的走訪路線進行更新。該步驟S408包括步驟S500-S506。
如圖7所示,步驟S500、依據該其餘子流的數量及該網路拓撲,分析出與該數量匹配的複數第二候選不相交路線組。步驟S502、從該些第二候選不相交路線組中選擇出一個相容度最高的第二不相交路線組。步驟S504、依據該第二不相交路線組,為該其餘子流重新配置走訪路線。步驟S506、根據重新配置操作生成相應的第五流表下發至相應的轉發設備中。返回步驟S400。
步驟S410、根據重新配置策略生成相應的一第四流表並下發至與該第四流表關聯的複數轉發設備中。返回步驟S400。
綜上所述,本發明符合發明專利要件,爰依法提出專利申請。惟,以上所述者僅爲本發明之較佳實施方式,本發明之範圍並不以上述實施方式爲限,舉凡熟悉本案技藝之人士爰依本發明之精神所作之等效修飾或變化,皆應涵蓋於以下申請專利範圍內。
10‧‧‧路線優化系統
20‧‧‧記憶體
30‧‧‧處理器
100‧‧‧網路拓撲
110‧‧‧SDN控制器
112‧‧‧第一網路裝置
114‧‧‧第二網路裝置
122、124、126、128、130、132、134、138、140‧‧‧轉發設備
210‧‧‧第一監測模組
212‧‧‧分析模組
214‧‧‧選擇模組
216‧‧‧配置模組
218‧‧‧部署模組
220‧‧‧第二監測模組
222‧‧‧更新模組
224‧‧‧量化模組
A‧‧‧第一走訪路線
B‧‧‧第二走訪路線
C‧‧‧第三走訪路線
D‧‧‧第四走訪路線
圖1是本發明實施例之網路拓撲的一示意圖。
圖2是本發明實施例之SDN控制器的一功能模組圖。
圖3是本發明實施例通過福特-福克森演算法遍歷到的走訪路線的一示意圖。
圖4是圖3之走訪路線的一頻寬示意圖。
圖5是本發明實施例之路線優化方法的一步驟流程圖。
圖6是本發明另一實施例之路線優化方法的一步驟流程圖。
圖7是圖6之路線更新步驟S408中的一具體流程圖。

Claims (14)

  1. 一種網路路線優化方法,應用於一軟體定義網路(SDN)控制器,該SDN控制器位於一網路拓撲中,該方法包括下列步驟: 當監測到一第一網路裝置和一第二網路裝置建立一MPTCP會話的握手資訊時: 根據該網路拓撲,分析出該第一網路裝置和該第二網路裝置之間的複數走訪路線及複數第一候選不相交路線組,每個該第一候選不相交路線組包括從該些走訪路線中選擇的且兩兩之間均沒有共用傳輸路段的至少兩條候選走訪路線; 從該些該第一候選不相交路線組中選擇出一個相容度最高的第一不相交路線組,該第一不相交路線組包括一第一走訪路線; 為該MPTCP會話的一第一子流配置該第一走訪路線;及 生成用於該第一子流的一第一流表並下發至該第一子流途徑的複數轉發設備中。
  2. 如申請專利範圍第1項所述之網路路線優化方法,該第一不相交路線組還包括一第二走訪路線,該方法還包括: 監測用於在該MPTCP會話中加入一第二子流的握手資訊; 為該第二子流配置該第二走訪路線;及 生成用於該第二子流的一第二流表並下發至該第二子流途徑的複數轉發設備中。
  3. 如申請專利範圍第2項所述之網路路線優化方法,每個該第一候選不相交路線組包括兩條候選走訪路線,該方法還包括: 監測用於在該MPTCP會話中加入第三子流的握手資訊; 根據該網路拓撲,分析出該網路拓撲中與該第一走訪路線及該第二走訪路線均不相交的複數第三候選走訪路線; 從該些第三候選走訪路線中選擇出一條與該第一走訪路線及該第二走訪路線相容度最高的第三走訪路線; 為該第三子流配置該第三走訪路線; 生成用於該第三子流的一第三流表並下發至該第三子流途徑的複數轉發設備中。
  4. 如申請專利範圍第2項所述之網路路線優化方法,每個該第一候選不相交路線組包括三條候選走訪路線,該第一不相交路線組還包括一第三走訪路線,該方法還包括: 監測該MPTCP會話中加入一第三子流的握手資訊; 為該第三子流配置該第三走訪路線;及 生成用於該第三子流的一第三流表並下發至該第三子流途徑的複數轉發設備中。
  5. 如申請專利範圍第4項所述之網路路線優化方法,還包括: 監測該MPTCP會話中每個子流的傳輸品質; 當其中一個子流的傳輸品質低於一個預設閥值時,為該傳輸品質低於該預設閥值的子流重新配置走訪路線,或刪除該傳輸品質低於該預設閥值的子流; 根據一重新配置操作或一刪除操作,生成相應的一第四流表並下發至與該第四流表關聯的複數轉發設備中。
  6. 如申請專利範圍第5項所述之網路路線優化方法,該刪除該傳輸品質低於該預設閥值的子流之後,還包括: 對該MPTCP會話中的其餘子流的走訪路線進行更新: 依據該其餘子流的數量及該網路拓撲,分析出與該數量匹配的複數第二候選不相交路線組; 從複數該第二候選不相交路線組中選擇出一個相容度最高的第二不相交路線組; 依據該第二不相交路線組,為該其餘子流更新走訪路線;及 根據更新操作生成相應的一第五流表下發至相應的轉發設備中。
  7. 如申請專利範圍第1項所述之網路路線優化方法,還包括: 量化每個該第一候選不相交路線組的相容度以得到相應的一相容度值: 當一個該第一候選不相交路線組包括兩條候選走訪路線時,其相容度值為:該一個該第一候選不相交路線組內的兩條該候選走訪路線頻寬之和與兩條該候選走訪路線頻寬之比的乘積,其中,兩條該候選走訪路線頻寬之比恒不大於1; 當一個該第一候選不相交路線組包括至少三條候選走訪路線時,其相容度值為:該一個該第一候選不相交路線組內的組內的至少三條該候選走訪路線兩兩之間的複數相容度的平均值。
  8. 一種SDN控制器,該SDN控制器位於一網路拓撲中,該SDN控制器包括: 一第一監測模組,用於監測一第一網路裝置和一第二網路裝置建立MPTCP會話的握手資訊; 一分析模組,用於根據該網路拓撲,分析出該第一網路裝置和該第二網路裝置之間的複數走訪路線及複數第一候選不相交路線組,每個該第一候選不相交路線組包括從該些走訪路線中選擇的且兩兩之間均沒有共用傳輸路段的至少兩條候選走訪路線; 一選擇模組,用於從該些第一候選不相交路線組中選擇出一個相容度最高的一第一不相交路線組,該第一不相交路線組包括一第一走訪路線; 一配置模組,用於為該MPTCP會話的一第一子流配置該第一走訪路線;及 一部署模組,用於生成用於該第一子流的一第一流表並下發至該第一子流途徑的複數轉發設備中。
  9. 如申請專利範圍第8項所述之SDN控制器,該第一不相交路線組還包括一第二走訪路線: 該第一監測模組,還用於監測用於在該MPTCP會話中加入一第二子流的握手資訊; 該配置模組,還用於為該第二子流配置該第二走訪路線;及 該部署模組,還用於生成用於該第二子流的一第二流表並下發至該第二子流途徑的複數轉發設備中。
  10. 如申請專利範圍第9項所述之SDN控制器,每個該第一候選不相交路線組包括兩條候選走訪路線: 該第一監測模組,還用於監測用於在該MPTCP會話中加入第三子流的握手資訊; 該分析模組,還用於根據該網路拓撲,分析出該網路拓撲中與該第一走訪路線及該第二走訪路線均不相交的複數第三候選走訪路線; 該選擇模組,還用於從該些第三候選走訪路線中選擇出一條與該第一走訪路線及該第二走訪路線相容度最高的第三走訪路線; 該配置模組,還用於為該第三子流配置該第三走訪路線; 該部署模組,還用於生成用於該第三子流的一第三流表並下發至該第三子流途徑的複數轉發設備中。
  11. 如申請專利範圍第9項所述之SDN控制器,每個該第一候選不相交路線組包括三條候選走訪路線,該第一不相交路線組還包括一第三走訪路線: 該第一監測模組,還用於監測該MPTCP會話中加入一第三子流的握手資訊; 該配置模組,還用於為該第三子流配置該第三走訪路線;及 該部署模組,還用於生成用於該第三子流的一第三流表並下發至該第三子流途徑的複數轉發設備中。
  12. 如申請專利範圍第11項所述之SDN控制器,還包括一第二監測模組: 該第二監測模組,用於監測該MPTCP會話中每個子流的傳輸品質; 該配置模組,還用於當其中一個子流的傳輸品質低於一個預設閥值時,為該傳輸品質低於該預設閥值的子流重新配置走訪路線,或刪除該傳輸品質低於該預設閥值的子流; 該部署模組,還用於根據一重新配置操作或一刪除操作,生成相應的一第四流表並下發至與該第四流表關聯的複數轉發設備中。
  13. 如申請專利範圍第12項所述之SDN控制器,該刪除該傳輸品質低於該預設閥值的子流之後,還包括: 更新模組,用於對該MPTCP會話中的其餘子流的走訪路線進行更新: 依據該其餘子流的數量及該網路拓撲,分析出與該數量匹配的複數第二候選不相交路線組; 從複數該第二候選不相交路線組中選擇出一個相容度最高的第二不相交路線組; 依據該第二不相交路線組,為該其餘子流更新走訪路線;及 根據更新操作生成相應的一第五流表下發至相應的轉發設備中。
  14. 如申請專利範圍第8項所述之SDN控制器,還包括: 量化模組,用於量化每個第一候選不相交路線組的相容度以得到相應的相容度值: 當一個該第一候選不相交路線組包括兩條候選走訪路線時,其相容度值為:該一個該第一候選不相交路線組內的兩條該候選走訪路線頻寬之和與兩條該候選走訪路線頻寬之比的乘積,其中,兩條該候選走訪路線頻寬之比恒不大於1; 當一個該第一候選不相交路線組包括至少三條候選走訪路線時,其相容度值為:該一個該第一候選不相交路線組內的組內的至少三條該候選走訪路線兩兩之間的複數相容度的平均值。
TW106125220A 2016-10-27 2017-07-27 網路路線優化方法及軟體定義網路控制器 TWI653855B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/336755 2016-10-27
US15/336,755 US10091097B2 (en) 2016-10-27 2016-10-27 Transmission path optimization method and software-defined networking controller using the method

Publications (2)

Publication Number Publication Date
TW201817199A true TW201817199A (zh) 2018-05-01
TWI653855B TWI653855B (zh) 2019-03-11

Family

ID=62022697

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106125220A TWI653855B (zh) 2016-10-27 2017-07-27 網路路線優化方法及軟體定義網路控制器

Country Status (3)

Country Link
US (1) US10091097B2 (zh)
CN (1) CN107995108B (zh)
TW (1) TWI653855B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108737198A (zh) * 2018-06-22 2018-11-02 深圳市信锐网科技术有限公司 一种快速部署交换机的方法、系统及相关装置

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106716950B (zh) * 2014-09-30 2021-06-01 华为技术有限公司 多路径传输控制协议通信的地址管理装置、系统及方法
CN113162854B (zh) * 2017-01-27 2022-11-15 华为技术有限公司 路径计算方法和装置
US11088947B2 (en) * 2017-05-04 2021-08-10 Liveu Ltd Device, system, and method of pre-processing and data delivery for multi-link communications and for media content
CN111213401B (zh) * 2017-08-18 2023-08-29 诺基亚技术有限公司 用于无线混合接入网络的业务分布控制
US11303560B2 (en) * 2017-09-15 2022-04-12 Nokia Technologies Oy HCPE-based intelligent path selection over a multipath network
CN109257282B (zh) * 2018-08-09 2020-07-14 北京邮电大学 一种数据传输方法及装置
CN111277423B (zh) * 2018-12-04 2022-05-20 中兴通讯股份有限公司 数据中心流量互通方法、装置、设备及存储介质
CN110113263A (zh) * 2019-05-16 2019-08-09 北京邮电大学 一种通信路径确定方法及装置
CN110535697B (zh) 2019-08-22 2021-05-11 杭州趣链科技有限公司 一种均衡区块链跨域广播网络负载的方法
CN112769697B (zh) * 2020-12-22 2022-08-23 广州技象科技有限公司 多用户接入的传输路径分配方法及装置
WO2022180665A1 (ja) * 2021-02-24 2022-09-01 日本電信電話株式会社 通信システム、通信方法、接続先管理サーバ及びプログラム
WO2022180666A1 (ja) * 2021-02-24 2022-09-01 日本電信電話株式会社 通信システム、通信方法、中継サーバ及びプログラム
CN112910713A (zh) * 2021-03-02 2021-06-04 山东省计算中心(国家超级计算济南中心) 云边数据分流传输方法、边缘节点、控制中心及存储介质
CN114567582B (zh) * 2022-02-24 2022-11-22 南京航空航天大学 一种基于路径跟踪反馈的sdn网络可信路由调度方法
CN115379469B (zh) * 2022-08-12 2023-11-28 江苏省电力试验研究院有限公司 一种基于机器学习的多接入异构网络mptcp子流调度方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201214187A (en) 2010-09-17 2012-04-01 Nat Univ Tsing Hua Embedded anti-thief system and method thereof for executing anti-thief
US9197544B2 (en) * 2011-10-19 2015-11-24 The Regents Of The University Of California Comprehensive multipath routing for congestion and quality-of-service in communication networks
TW201325103A (zh) 2011-12-09 2013-06-16 Nat Univ Tsing Hua 低功率無線感測系統之雙層基板與製造方法
CN102811453B (zh) * 2012-08-17 2014-12-17 武汉大学 一种工业无线网状网络多径路由的选路判定方法
US9571384B2 (en) 2013-08-30 2017-02-14 Futurewei Technologies, Inc. Dynamic priority queue mapping for QoS routing in software defined networks
US9112794B2 (en) * 2013-11-05 2015-08-18 International Business Machines Corporation Dynamic multipath forwarding in software defined data center networks
TWI542172B (zh) 2014-09-22 2016-07-11 財團法人工業技術研究院 路徑更換方法與系統及其控制器
CN105491178B (zh) * 2015-11-23 2018-10-09 北京邮电大学 一种基于软件定义网络的主机网卡ip地址获取方法
CN105337857B (zh) * 2015-11-23 2018-05-25 北京邮电大学 一种基于软件定义网络的多路径传输方法
CN105553845A (zh) * 2016-01-19 2016-05-04 重庆邮电大学 一种软件定义网络路由选择方法
TWI607641B (zh) * 2016-07-12 2017-12-01 國立清華大學 軟體定義網路的控制器及其多路徑路由方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108737198A (zh) * 2018-06-22 2018-11-02 深圳市信锐网科技术有限公司 一种快速部署交换机的方法、系统及相关装置
CN108737198B (zh) * 2018-06-22 2021-08-13 深圳市信锐网科技术有限公司 一种快速部署交换机的方法、系统及相关装置

Also Published As

Publication number Publication date
TWI653855B (zh) 2019-03-11
CN107995108A (zh) 2018-05-04
CN107995108B (zh) 2021-07-13
US10091097B2 (en) 2018-10-02
US20180123948A1 (en) 2018-05-03

Similar Documents

Publication Publication Date Title
TWI653855B (zh) 網路路線優化方法及軟體定義網路控制器
US10554538B2 (en) Dynamic link state routing protocol
US9154407B2 (en) Maintained message delivery during routing domain migration
CN105553680B (zh) 基于网络特征创建虚拟接口的系统、方法和存储介质
JP6017702B2 (ja) Twampを増強するための方法及び装置
US8000239B2 (en) Method and system for bandwidth allocation using router feedback
CN106716963B (zh) 用于网络端点之间的媒体会话的方法及装置
JP2019523621A (ja) 複数のチャネルを使用してパフォーマンスを向上するインテリジェントアダプティブトランスポートレイヤー
US20160226742A1 (en) Monitoring network performance characteristics
EP2712480B1 (en) Cloud service control and management architecture expanded to interface the network stratum
WO2017161982A1 (zh) 一种sdn网络中多流传输的方法和设备
US10171511B2 (en) Media session between network endpoints
US10153964B2 (en) Network routing using dynamic virtual paths in an overlay network
CN108702394B (zh) 网络端点间的媒体会话
US20170063699A1 (en) Method and apparatus for configuring multi-paths using segment list
US11290394B2 (en) Traffic control in hybrid networks containing both software defined networking domains and non-SDN IP domains
CN111771359B (zh) 用于连接通信网络的方法和系统
CN113364894B (zh) 用于网络端点间的媒体会话的方法和装置
JP2017518007A (ja) ネットワーク制御方法及び装置
KR101155386B1 (ko) 네트워크에서 데이터 유닛을 라우팅하기 위한 장치 및 방법
CN114172842A (zh) 一种数据传输处理方法、装置、设备及可读存储介质
JP2004274702A (ja) ルータ装置及びパケット転送制御方法
Pandey et al. Simulation Based Comparative Study on EIGRP/IS-IS and OSPF/IS-IS
CN115622935A (zh) 基于网络的路径处理方法、系统和存储介质
EP3471351B1 (en) Method and device for acquiring path information about data packet