TWI607639B - SDN sharing tree multicast streaming system and method - Google Patents

SDN sharing tree multicast streaming system and method Download PDF

Info

Publication number
TWI607639B
TWI607639B TW105120120A TW105120120A TWI607639B TW I607639 B TWI607639 B TW I607639B TW 105120120 A TW105120120 A TW 105120120A TW 105120120 A TW105120120 A TW 105120120A TW I607639 B TWI607639 B TW I607639B
Authority
TW
Taiwan
Prior art keywords
cluster
multicast
tree
switch
source
Prior art date
Application number
TW105120120A
Other languages
Chinese (zh)
Other versions
TW201801494A (en
Inventor
Ying Da Lin
Jun Jie Liao
Hong Yi Deng
Yuan Zheng Lai
yu huang Zhu
Jing Li Liu
Original Assignee
Chunghwa Telecom Co Ltd
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 Chunghwa Telecom Co Ltd filed Critical Chunghwa Telecom Co Ltd
Priority to TW105120120A priority Critical patent/TWI607639B/en
Priority to JP2016201349A priority patent/JP6286506B2/en
Priority to CN201611040067.3A priority patent/CN106973019B/en
Application granted granted Critical
Publication of TWI607639B publication Critical patent/TWI607639B/en
Publication of TW201801494A publication Critical patent/TW201801494A/en

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/16Multipoint routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • H04L12/4645Details on frame tagging
    • H04L12/465Details on frame tagging wherein a single frame includes a plurality of VLAN tags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]

Landscapes

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

Description

SDN共享樹群播串流系統與方法 SDN shared tree group broadcast stream system and method

本發明屬於一種應用於SDN(Software Defined Networking,軟體定義網路)共享樹群播串流系統與方法,群播來源端在發送群播串流前會建立群播樹,以做為傳送群播串流的路徑,並藉此減少網路頻寬的浪費。本發明所提出之方法可減少在控制器所需要的計算量以及減少交換器所需設定的流量條數量。 The invention belongs to one application to SDN (Software Defined) Networking, software-defined network) shared tree multicast streaming system and method. The multicast source establishes a multicast tree before sending the multicast stream as a path for transmitting the multicast stream, and thereby reducing the network. The waste of the road bandwidth. The method proposed by the present invention can reduce the amount of calculation required by the controller and reduce the number of flow bars required for the switch.

SDN是近年來的新興網路架構。它的概念是將網路的控制層(control-plane)功能與資料層(data-plane)功能分離,並將控制層集中至控制器,交換器上只保留傳送封包的功能,交換器需要透過控制器去計算路徑,並由控制器將封包傳送的方向設定至交換器。因此,控制器具有全面的網路拓樸資訊去建立最佳的群播樹,並且能更快速的處理群播訊息,使得IP串流群播在SDN上是可以實現。 SDN is an emerging network architecture in recent years. Its concept is to separate the control-plane function of the network from the data-plane function, and to concentrate the control layer on the controller. The switch only retains the function of transmitting packets, and the switch needs to pass through. The controller calculates the path and the controller sets the direction of packet transmission to the switch. Therefore, the controller has comprehensive network topology information to establish an optimal multicast tree, and can process multicast messages more quickly, so that IP streaming multicast can be implemented on SDN.

控制器在群播來源端傳送串流前,必須先為群播來源端建立群播樹,使得群播來源端能傳送至用戶端。本發明針對SDN網路設計一種共享樹群播串流系統。先前應用於群播串流主要是針對交換器如何設定流量條能使得封包得以傳送至用戶端,並沒有考慮群播來源端數量造成流量條數量 影響,進而影響交換器效能,不適用於大量群播來源端,在下列先前的專利技術中有提及類似的概念:US 8831000(IP multicast service join process for MPLS-based virtual private cloud networking)、US 8638789(Optimal multicast forwarding in OpenFlow based networks)。另一方面針對樹建立的機制,都是對每一個群播來源端去建立群播樹,會使控制器計算群播樹的時間過長,並且使交換器內流量條的數量過多,因此也不適用於大量群播來源端。 Before the controller transmits the stream on the source side of the multicast network, the multicast source must be established for the source end of the multicast broadcast, so that the source end of the multicast broadcast can be transmitted to the user end. The invention designs a shared tree multicast streaming system for SDN networks. Previously applied to multicast streaming is mainly for how the switch sets the traffic bar so that the packet can be transmitted to the client, and does not consider the number of traffic bars caused by the number of multicast sources. The impact, which in turn affects the performance of the switch, does not apply to a large number of multicast source sources. A similar concept is mentioned in the following prior patents: US 8831000 (IP multicast service join process for MPLS-based virtual private cloud networking), US 8638789 (Optimal multicast forwarding in OpenFlow based networks). On the other hand, the mechanism for tree establishment is to establish a multicast tree for each multicast source, which will make the controller calculate the multicast tree for too long, and make the number of traffic bars in the switch too much. Not applicable to a large number of multicast sources.

本案發明人鑑於上述習用方式所衍生的各項缺點,乃亟思加以改良創新,並經多年苦心孤詣潛心研究後,終於成功研發完成本SDN共享樹群播串流系統與方法。 In view of the shortcomings derived from the above-mentioned conventional methods, the inventor of the present invention has improved and innovated, and after years of painstaking research, finally successfully developed and completed the SDN shared tree group streaming system and method.

為達上述目的,本發明即在於針對SDN網路設計一種共享樹群播串流系統與方法,群播來源端在發送群播串流前,透過將臨近的群播來源樹分為同一叢集,隨著網路拓樸分佈,自動能形成複數個叢集,接著為每個叢集建立群播樹,以做為傳送群播串流的路徑。透過共享樹並設定共享樹的流量條,減少在控制器所需要的計算量以及減少交換器所需設定的流量條數量。若建立過多的群播樹(如對每一個群播來源建立群播樹),會使控制器計算群播樹的時間過長,並且使交換器內流量條的數量過多;若建立過少的群播樹(如對所有群播來源只建立一棵群播樹),則會使傳送的路徑過長,並且使集中點的負擔過重。 To achieve the above objective, the present invention is to design a shared tree multicast streaming system and method for an SDN network, and the multicast source side divides the adjacent multicast source trees into the same cluster before transmitting the multicast stream. As the network topology is distributed, a plurality of clusters can be automatically formed, and then a multicast tree is established for each cluster as a path for transmitting the multicast stream. By sharing the tree and setting the flow bar of the shared tree, the amount of calculation required by the controller is reduced and the number of flow bars required by the switch is reduced. If too many multicast trees are established (such as establishing a multicast tree for each multicast source), the controller will calculate the multicast tree for too long and make the number of traffic bars in the switch too much; if too few groups are established Broadcasting trees (such as building only one multicast tree for all multicast sources) will make the path of the transmission too long and overload the concentration point.

達成上述發明目的之SDN共享樹群播串流系統,是在控制器在群播來源端傳送串流前,將臨近的群播來源端 分為複數個叢集,隨著網路拓樸分佈,自動能形成複數個叢集,對於每一個叢集設立一個與群播來源端距離最小的交換器作為集中點,使得同一個叢集內的群播來源端建立最短路徑至集中點,並以集中點為根,建立最短路徑樹到所有的群播用戶端,並根據最短路徑樹,對於每個在樹節點上的交換器設定流量條。若建立過多的群播樹(如對每一個群播來源建立群播樹),會使控制器計算群播樹的時間過長,並且使交換器內流量條的數量過多;若建立過少的群播樹(如對所有群播來源只建立一棵群播樹),則會使傳送的路徑過長,並且使集中點的負擔過重。 The SDN shared tree multicast stream system for achieving the above object is to bring the adjacent multicast source before the controller transmits the stream at the source end of the multicast. It is divided into a plurality of clusters. With the network topology distribution, a plurality of clusters can be automatically formed. For each cluster, a switch with the smallest distance from the source end of the cluster is set as a concentration point, so that the multicast source in the same cluster is used. The end establishes the shortest path to the centralized point, and takes the centralized point as the root, establishes the shortest path tree to all the multicast clients, and sets a traffic bar for each switch on the tree node according to the shortest path tree. If too many multicast trees are established (such as establishing a multicast tree for each multicast source), the controller will calculate the multicast tree for too long and make the number of traffic bars in the switch too much; if too few groups are established Broadcasting trees (such as building only one multicast tree for all multicast sources) will make the path of the transmission too long and overload the concentration point.

本發明所提出之SDN共享樹群播串流系統包括兩大模組:一群播樹建立模組,以及(二)一流量條設定模組。 控制器在群播來源端傳送串流前,首先利用控制器原有的拓樸偵測模組進行交換器、群播來源端與用戶端位置的偵測。 接下來,利用群播樹建立模組,建立複數個群播樹使得所有的群播來源端以及用戶端都在群播樹內。最後,根據群播樹,控制器設定傳送封包至用戶端的流量條到群播樹上的交換器上。 The SDN shared tree multicast stream system proposed by the invention comprises two modules: a group of broadcast tree building modules, and (2) a flow bar setting module. Before the controller transmits the stream at the source end of the multicast, the controller first uses the original topology detection module of the controller to detect the source and the location of the switch. Next, the clustering tree is used to establish a module, and a plurality of multicast trees are established so that all the source terminals and the user terminals are in the multicast tree. Finally, according to the multicast tree, the controller sets the transport packet to the client's traffic bar to the switch on the multicast tree.

一種SDN共享樹群播串流系統,是由控制器在群播來源端傳送串流前,將群播來源端分為複數個叢集,對於每一個叢集設立一個與群播來源端距離最小的交換器作為集中點,使得同一個叢集內的群播來源端建立最短路徑至集中點,並以集中點為根,建立最短路徑樹到所有的群播用戶端,並根據最短路徑樹,對於每個在樹節點上的交換器設定流量條(flow entry),主要包括一群播樹建立模組,是於交換器、群播來源端以及群播用戶端分佈下,建立傳送串流所需的群 播樹,其包含:一群播來源端叢集單元,是將所有群播來源端分為複數個叢集;一集中點選擇單元,是設置於群播來源端叢集單元之後,以選擇一個叢集中距離最小的交換器作為集中點;以及一最短路徑樹建立單元,是設置於集中點選擇單元之後,用以將每個叢集中的所有群播來源端建立最短路徑至叢集集中點,並以叢集集中點為根,建立最短路徑群播樹到所有的群播用戶端;一流量條設定模組,是設置於群播樹建立模組之後,並以設定交換器上之流量條,其流量條包含一群播來源端流量條設定單元,是以設定對於在叢集內的來源端串流,利用OpenFlow protocol(OpenFlow協定)設定傳送flow(流量)至交換器之流量條動作,來將串流封包送出至叢集集中點;一集中點交換器流量條設定單元,是以設定對於在叢集內的來源端串流,利用OpenFlow protocol設定貼VLAN(Virtual Local Area Network,虛擬區域網路)標籤的flow至交換器之流量條動作,來貼VLAN標籤到串流封包上,並將串流封包送出至用戶端;一樹交換器流量條設定單元,是以設定對於已貼VLAN標籤的串流封包,利用OpenFlow protocol設定傳送的flow至交換器之流量條動作,來將串流封包送出至用戶端;以及一用戶端交換器流量條設定單元,是以設定對於已貼VLAN標籤的串流封包上,利用OpenFlow protocol設定移除VLAN標籤並傳送flow至交換器之流量條動作,來將串流封包上的VLAN標籤移除,並將串流封包送至要求的用戶端上。 An SDN shared tree multicast streaming system is configured to divide a source end of a multicast broadcast into a plurality of clusters before the controller transmits the stream at the source end of the multicast group, and set an exchange with the smallest distance from the source end of the multicast broadcast for each cluster. As a centralized point, the source end of the multicast group in the same cluster establishes the shortest path to the centralized point, and uses the concentrated point as the root to establish the shortest path tree to all the multicast users, and according to the shortest path tree, for each The switch on the tree node sets a flow entry, which mainly includes a group of broadcast tree building modules, which are required to establish a transport stream under the distribution of the switch, the multicast source, and the multicast client. Sowing tree, which comprises: a group of broadcast source clustering units, which divides all the multicast source ends into a plurality of clusters; a centralized point selection unit is set after the cluster source end cluster unit to select a cluster distance to be the smallest The switch is used as a centralized point; and a shortest path tree establishing unit is disposed after the centralized point selecting unit to establish a shortest path to the cluster centralized point of all the multicast source ends in each cluster, and to cluster the centralized point For the root, establish the shortest path multicast tree to all the multicast clients; a traffic bar setting module is set after the multicast tree building module, and set the traffic bar on the switch, and the traffic bar includes a group The broadcast source-side traffic bar setting unit sends the stream packet to the cluster by setting the flow bar action for transmitting the flow (flow) to the switch using the OpenFlow protocol (OpenFlow protocol) to set the source stream in the cluster. Concentration point; a centralized point switch flow bar setting unit is to set the source stream in the cluster, and use the OpenFlow protocol to set the VLAN (Virtua) l Local Area Network (virtual area network) tag flow to the switch traffic bar action, to paste the VLAN tag to the stream packet, and send the stream packet to the user; a tree switch flow bar setting unit is To set a stream packet to the VLAN tag, use the OpenFlow protocol to set the flow of the flow to the switch to send the stream packet to the client; and a user switch flow bar setting unit, Set the stream tag on the tagged VLAN tag to remove the VLAN tag and transmit the flow to the switch by using the OpenFlow protocol to remove the VLAN tag on the stream packet and send the stream packet to the stream packet. On the requested client side.

其中群播來源端叢集單元,包含:一叢集選擇單元,是以計算叢集與叢集之間的距離,並選擇叢集距離最小的兩個叢集;一距離閥值比較單元,是設置於叢集選擇單元 之後,以根據叢集選擇單元所選擇的兩個叢集,其距離是否小於距離閥值,以決定群播來源端叢集單元是否結束;一負載比較單元,是設置於距離閥值比較單元之後,以根據叢集選擇單元所選擇的兩個叢集,其總流量是否小於等於最大交換器容量,以決定兩個叢集是否進行合併。其中集中點選擇單元,是包含一最短路徑計算單元,是以計算一個群播來源端到某交換器之最短路徑;以及一最小距離總和選擇單元,是設置於最短路徑計算單元之後,以選擇具有最小距離總和之交換器,以作為叢集集中點。其中最短路徑樹建立單元,是包含二最短路徑計算,以計算群播來源端或用戶端到叢集集中點之最短路徑,以建立最短路徑之群播樹。 The cluster source end cluster unit includes: a cluster selection unit, which is to calculate the distance between the cluster and the cluster, and select two clusters with the smallest cluster distance; a distance threshold comparison unit is set in the cluster selection unit. Then, according to the two clusters selected according to the cluster selection unit, whether the distance is less than the distance threshold to determine whether the cluster source end cluster unit ends; a load comparison unit is disposed after the distance threshold comparison unit to The cluster selects the two clusters selected by the unit, and whether the total traffic is less than or equal to the maximum switch capacity to determine whether the two clusters are merged. The central point selection unit includes a shortest path calculation unit for calculating a shortest path from a source end to a switch; and a minimum distance sum selection unit, which is disposed after the shortest path calculation unit to select The smallest distance sum of the switches to serve as a cluster concentration point. The shortest path tree establishing unit is a shortest path that includes two shortest path calculations to calculate a shortest path from the source end of the multicast group or the end point of the user end to the cluster set point to establish a shortest path.

一種SDN共享樹群播串流方法,包括:步驟一、拓樸建立,當控制器開啟時,利用控制器中的拓樸偵測模組以及群組管理模組獲得交換器、群播來源端以及群播用戶端的分佈;步驟二、群播樹建立,依拓樸建立,將群播來源端分為複數個叢集,對於每一個叢集設立一個與群播來源端距離最小的交換器作為集中點,使得同一個叢集內的群播來源端建立最短路徑至集中點,並以集中點為根,建立最短路徑樹到所有的群播用戶端;步驟三、流量條設定,依群播樹建立,設定流量條在群播樹上的交換器,以傳送群播串流封包。 An SDN shared tree multicast streaming method includes: Step 1 and topology establishment. When the controller is turned on, the topology detection module and the group management module in the controller are used to obtain the switch and the multicast source. And the distribution of the multicast client; step 2, the establishment of the multicast tree, according to the topology establishment, the source end of the multicast broadcast is divided into a plurality of clusters, and a switch with the smallest distance from the source end of the multicast broadcast is set as a centralized point for each cluster. So that the source end of the multicast group in the same cluster establishes the shortest path to the centralized point, and uses the centralized point as the root to establish the shortest path tree to all the multicast users; Step 3: Traffic bar setting, according to the group broadcast tree, Set the traffic bar to the switch on the multicast tree to transmit the multicast stream packet.

其中群播樹建立之步驟是包含:步驟一、群播來源端叢集,將所有群播來源端分為複數個叢集; 步驟二、集中點選擇,將群播來源端叢集中每一個叢集選擇距離最小的交換器,以作為叢集集中點;步驟三、最短路徑樹建立,將集中點選擇中每一個叢集集中點,建立每一個群播來源端到叢集集中點之最短路徑,以及建立從叢集集中點到所有用戶端之最短路徑樹。 The step of establishing the multicast tree includes: step one, clustering the source end cluster, and dividing all the source end sources into a plurality of clusters; Step 2: Select a centralized point to select the switch with the smallest distance selected by each cluster in the cluster source end cluster as the cluster concentration point; Step 3, establish the shortest path tree, and set each cluster concentration point in the centralized point selection to establish The shortest path from each source to the cluster set point, and the shortest path tree from the cluster set point to all the users.

其中流量條設定之步驟是包含:步驟一、群播來源端流量條設定,對於在群播來源端到叢集集中點路徑上的交換器,設定流量條符合條件為來源IP為群播來源端IP,目的IP為群播IP,動作為傳送至叢集集中點;步驟二、集中點交換器流量條設定,對於叢集集中點,設定流量條符合條件為叢集內從群播來源端送出的封包,動作為貼上叢集VLAN標籤,並傳送至所有用戶端;步驟三、樹交換器流量條設定,對於群播樹上的交換器,設定流量條符合條件為叢集VLAN標籤的封包,動作為傳送至所有用戶端;步驟四、用戶端交換器流量條設定,對於連接用戶端的交換器,設定流量條符合條件為叢集VLAN標籤的封包,動作為移除封包上的叢集VLAN標籤,並將封包傳送至用戶端。 The flow bar setting step includes: Step 1: setting the source traffic bar of the multicast source. For the switch on the path from the source end to the cluster centralized point, setting the traffic bar to meet the condition that the source IP is the multicast source IP. The destination IP is the multicast IP address, and the action is transmitted to the cluster centralized point; in step 2, the centralized point switch traffic bar is set, and for the cluster centralized point, the traffic bar is set to meet the condition that the packet sent from the source end of the cluster is in the cluster, and the action is performed. To paste the cluster VLAN tag and transmit it to all clients; Step 3: Tree switch traffic bar setting, for the switch on the multicast tree, set the traffic bar to meet the condition that the packet of the cluster VLAN tag, the action is transmitted to all User terminal; Step 4: User-side switch traffic bar setting, for the switch connected to the client, set the traffic bar to meet the condition that the packet of the cluster VLAN tag, the action is to remove the cluster VLAN tag on the packet, and transmit the packet to the user. end.

其中群播來源端叢集之步驟是包含:步驟一、設定每一群播來源端為一個叢集;步驟二、叢集選擇,透過Dijkstra演算法,以計算任兩個叢集之間的距離,從結果中選擇距離最小的 兩個叢集;步驟三、距離閥值比較,以決定目前兩個叢集的距離是否小於距離閥值,若是,則進入負載比較;反之,則結束群播來源端叢集,所得結果為複數個叢集;步驟四、其負載比較,是以決定目前兩個叢集的流量是否小於等於最大交換器容量,若是,則兩叢集進行叢集合併,並重新回到叢集選擇;反之,則直接回到叢集選擇,重新選擇距離最小的兩個叢集。 The step of the cluster source end cluster includes: step one: setting each multicast source as a cluster; step two, cluster selection, through Dijkstra algorithm, to calculate the distance between any two clusters, and selecting from the results Smallest distance Two clusters; step three, distance threshold comparison, to determine whether the distance between the current two clusters is less than the distance threshold, and if so, enter the load comparison; otherwise, the cluster source end cluster is ended, and the result is a plurality of clusters; Step 4: The load comparison is to determine whether the current traffic of the two clusters is less than or equal to the maximum switch capacity. If yes, the two clusters are clustered and returned to the cluster selection; otherwise, directly return to the cluster selection, and then Select the two clusters with the smallest distance.

其中集中點選擇之步驟是包含:步驟一、最短路徑計算,透過Dijkstra演算法,以計算一個群播來源端到某交換器之最短路徑;步驟二、最小距離總和選擇,從最短路徑計算之結果,累加在同一個叢集下所有群播來源到相同交換器的最短路徑距離,並選擇具有最小距離總和之交換器,以作為叢集集中點。 The step of selecting a concentration point includes: step one, shortest path calculation, through Dijkstra algorithm, to calculate a shortest path from a source end to a switch; step two, minimum distance sum selection, calculation result from the shortest path , accumulate the shortest path distances of all multicast sources to the same switch under the same cluster, and select the switch with the smallest distance sum as the cluster concentration point.

其中最短路徑樹建立之步驟,是包含二最短路徑計算,以計算群播來源端或用戶端到叢集集中點之最短路徑,以建立最短路徑樹。 The step of establishing the shortest path tree is to include two shortest path calculations to calculate the shortest path from the source end of the multicast group or the end point of the user end to the cluster set point to establish a shortest path tree.

本發明所提供一種SDN共享樹群播串流系統與方法,主要是針對交換器如何設定流量條能使得封包得以傳送至用戶端,並沒有考慮群播來源端數量造成流量條數量影響,進而影響交換器效能,不適用於大量群播來源端,與其他習用技術相互比較時,更具備下列優點: The invention provides an SDN shared tree multicast stream system and method, which mainly relates to how a switch sets a traffic bar so that a packet can be transmitted to a user end, and does not consider the number of traffic sources caused by the number of source channels, thereby affecting Switch performance is not suitable for a large number of multicast sources. When compared with other common technologies, it has the following advantages:

1.本發明利用將群播來源端分為複數個叢集,可減少 群播樹的數量。 1. The invention utilizes dividing the source end of the multicast into a plurality of clusters, which can be reduced The number of cluster trees.

2.本發明利用叢集共享群播樹,可減少控制器計算群播樹的時間。 2. The present invention utilizes a cluster shared group broadcast tree to reduce the time for the controller to calculate the group broadcast tree.

3.本發明利用叢集共享群播樹,可減少交換器內流量條的數量。 3. The present invention utilizes a cluster shared multicast tree to reduce the number of traffic bars in the switch.

100‧‧‧拓樸偵測模組 100‧‧‧Topology Detection Module

200‧‧‧群播樹建立模組 200‧‧‧Group Tree Building Module

210‧‧‧群播來源端叢集單元 210‧‧‧Communication source cluster unit

211‧‧‧叢集選擇單元 211‧‧‧ cluster selection unit

212‧‧‧距離閥值比較單元 212‧‧‧Distance Threshold Comparison Unit

213‧‧‧負載比較單元 213‧‧‧Load comparison unit

220‧‧‧集中點選擇單元 220‧‧‧ Concentration point selection unit

221‧‧‧最短路徑計算單元 221‧‧‧ Shortest path calculation unit

222‧‧‧最小距離總和選擇單元 222‧‧‧Minimum distance sum selection unit

230‧‧‧最短路徑樹建立單元 230‧‧‧ Shortest path tree building unit

300‧‧‧叢集 300‧‧ ‧ cluster

400‧‧‧集中點 400‧‧‧ Concentration points

500‧‧‧群播樹 500‧‧‧Group tree

510‧‧‧群播來源端 510‧‧‧Group source

520‧‧‧用戶端 520‧‧‧User side

530‧‧‧最短路徑計算 530‧‧‧ Shortest path calculation

600‧‧‧流量條設定模組 600‧‧‧Flow bar setting module

610‧‧‧群播來源端流量條設定單元 610‧‧‧Group source source flow bar setting unit

620‧‧‧集中點交換器流量條設定單元 620‧‧‧ Concentrated point exchanger flow bar setting unit

630‧‧‧樹交換器流量條設定單元 630‧‧‧ Tree exchanger flow bar setting unit

640‧‧‧用戶端交換器流量條設定單元 640‧‧‧Customer Switch Flow Strip Setting Unit

S7121‧‧‧最短路徑計算 S7121‧‧‧ Shortest path calculation

S7122‧‧‧最小距離總和選擇 S7122‧‧‧Small distance sum selection

S700~S720‧‧‧流程 S700~S720‧‧‧Process

S720~S728‧‧‧流量條設定流程 S720~S728‧‧‧Flow bar setting process

S7111~S7116‧‧‧群播來源端叢集之流程 S7111~S7116‧‧‧Communication source clustering process

S810~S850‧‧‧最短路徑樹建立流程 S810~S850‧‧‧ Shortest path tree establishment process

請參閱有關本發明之詳細說明及其附圖,將可進一步瞭解本發明之技術內容及其目的功效;有關附圖為:圖1為本發明SDN共享樹群播串流系統與方法之系統架構圖;圖2為本發明SDN共享樹群播串流系統與方法之群播來源端叢集單元之架構圖;圖3為本發明SDN共享樹群播串流系統與方法之集中點選擇單元之架構圖;圖4為本發明SDN共享樹群播串流系統與方法之最短路徑樹建立單元之架構圖;圖5為本發明SDN共享樹群播串流系統與方法之流程圖;圖6為本發明SDN共享樹群播串流系統與方法之群播來源端叢集之流程圖;圖7為本發明SDN共享樹群播串流系統與方法之集中點選擇步驟之流程圖;圖8為本發明SDN共享樹群播串流系統與方法之最短路徑樹建立之流程圖;圖9為本發明SDN共享樹群播串流系統與方法之流量條設定之流程圖。 Please refer to the detailed description of the present invention and its accompanying drawings, which can further understand the technical content of the present invention and its function. The related drawings are: FIG. 1 is a system architecture of an SDN shared tree multicast stream system and method according to the present invention. 2 is an architectural diagram of a multicast source end cluster unit of an SDN shared tree multicast stream system and method according to the present invention; FIG. 3 is a schematic diagram of a centralized point selection unit of an SDN shared tree multicast stream system and method according to the present invention; FIG. 4 is a structural diagram of a shortest path tree establishing unit of an SDN shared tree multicast stream system and method according to the present invention; FIG. 5 is a flowchart of a SDN shared tree multicast stream system and method according to the present invention; A flowchart of a clustering source end cluster of an SDN shared tree multicast stream system and method; FIG. 7 is a flowchart of a centralized point selection step of an SDN shared tree multicast stream system and method according to the present invention; A flowchart of establishing a shortest path tree of an SDN shared tree multicast stream system and method; FIG. 9 is a flow chart of setting a traffic bar of an SDN shared tree multicast stream system and method according to the present invention.

為了使本發明的目的、技術方案及優點更加清楚明白,下面結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅用以解釋本發明,但並不用於限定本發明。 The present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It is understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.

以下,結合附圖對本發明進一步說明: 請參閱圖1所示,為本發明SDN共享樹群播串流系統與方法之系統架構圖,是由控制器在群播來源端傳送串流前,將群播來源端分為複數個叢集,對於每一個叢集設立一個與群播來源端距離最小的交換器作為集中點,使得同一個叢集內的群播來源端建立最短路徑至集中點,並以集中點為根,建立最短路徑樹到所有的群播用戶端,並根據最短路徑樹,對於每個在樹節點上的交換器設定流量條(flow entry),主要包括一群播樹建立模組200,是於交換器、群播來源端以及群播用戶端分佈下,建立傳送串流所需的群播樹,其包含:一群播來源端叢集單元210,是將所有群播來源端分為複數個叢集300;一集中點選擇單元220,是設置於群播來源端叢集單元210之後,以選擇一個叢集300中距離最小的交換器作為集中點400;以及一最短路徑樹建立單元230,是設置於集中點選擇單元220之後,用以將每個叢集中的所有群播來源端建立最短路徑至叢集集中點,並以叢集集中點為根,建立最短路徑群播樹到所有的群播用戶端;一流量條設定模組600,是設置於群播樹建立模組200之後,並以設定交換器上之流量條,其流量條包含一群播來源端流量條設定單元610,是以設定對於在叢集內的來源端串流,利用OpenFlow protocol設定傳送flow至交換器之流量條動作,來將串流封包送出至叢 集集中點;一集中點交換器流量條設定單元620,是以設定對於在叢集內的來源端串流,利用OpenFlow protocol設定貼VLAN標籤的flow至交換器之流量條動作,來貼VLAN標籤到串流封包上,並將串流封包送出至用戶端;一樹交換器流量條設定單元630,是以設定對於已貼VLAN標籤的串流封包,利用OpenFlow protocol設定傳送的flow至交換器之流量條動作,來將串流封包送出至用戶端;以及一用戶端交換器流量條設定單元640,是以設定對於已貼VLAN標籤的串流封包上,利用OpenFlow protocol設定移除VLAN標籤並傳送flow至交換器之流量條動作,來將串流封包上的VLAN標籤移除,並將串流封包送至要求的用戶端上。 Hereinafter, the present invention will be further described with reference to the accompanying drawings: Please refer to FIG. 1 , which is a system architecture diagram of an SDN shared tree multicast streaming system and method according to the present invention. The controller divides the source end of the multicast broadcast into a plurality of clusters before the controller transmits the stream at the source end of the multicast. For each cluster, set up a switch with the smallest distance from the source end of the multicast as a centralized point, so that the source end of the multicast group in the same cluster establishes the shortest path to the centralized point, and uses the centralized point as the root to establish the shortest path tree to all. The multicast client, and according to the shortest path tree, set a flow entry for each switch on the tree node, mainly including a group of broadcast tree building modules 200, which are at the source of the switch, the multicast, and The multicast network is configured to establish a multicast tree required for the transport stream, and includes: a group of broadcast source end cluster units 210, which divides all the multicast source ends into a plurality of clusters 300; and a centralized point selection unit 220. After being set to the multicast source end cluster unit 210, the switch having the smallest distance among the clusters 300 is selected as the concentration point 400; and a shortest path tree establishing unit 230 is set in the centralized point selection list. After element 220, it is used to establish the shortest path to the cluster concentration point of all the multicast source terminals in each cluster, and establish the shortest path multicast tree to all the multicast users by using the cluster concentration point as the root; The setting module 600 is disposed after the multicast tree building module 200, and sets a traffic bar on the switch, and the traffic bar includes a group of broadcast source side traffic bar setting unit 610, which is set for the source in the cluster. End stream, use the OpenFlow protocol to set the flow bar action of the flow to the switch to send the stream packet to the bundle The centralized point switch flow rate setting unit 620 is configured to set the flow label to the flow of the flow label to the switch by using the OpenFlow protocol to set the flow label to the source stream in the cluster. The stream packet is sent to the user end; the tree switch traffic bar setting unit 630 is configured to set the flow packet to the switch by using the OpenFlow protocol to set the stream packet to the labeled VLAN tag. Acting to send the stream packet to the client; and a client switch flow bar setting unit 640 is configured to remove the VLAN tag and transmit the flow to the stream tag that has been tagged with the OpenFlow protocol. The traffic bar of the switch acts to remove the VLAN tag on the stream packet and send the stream packet to the required client.

請參閱圖2所示,為本發明SDN共享樹群播串流系統與方法之群播來源端叢集單元之架構圖,其中群播來源端叢集單元210,包含:一叢集選擇單元211,是以計算叢集與叢集之間的距離,並選擇叢集距離最小的兩個叢集;一距離閥值比較單元212,是設置於叢集選擇單元211之後,以根據叢集選擇單元211所選擇的兩個叢集,其距離是否小於距離閥值,以決定群播來源端叢集單元是否結束;一負載比較單元213,是設置於距離閥值比較單元212之後,以根據叢集選擇單元211所選擇的兩個叢集,其總流量是否小於等於最大交換器容量,以決定兩個叢集是否進行合併。 Referring to FIG. 2, which is an architecture diagram of a multicast source end cluster unit of the SDN shared tree multicast stream system and method of the present invention, where the multicast source end cluster unit 210 includes: a cluster selection unit 211, Calculating the distance between the cluster and the cluster, and selecting two clusters with the smallest cluster distance; a distance threshold comparing unit 212 is disposed after the cluster selecting unit 211 to select two clusters according to the cluster selecting unit 211, Whether the distance is less than the distance threshold to determine whether the cluster source end cluster unit ends; a load comparison unit 213 is disposed after the distance threshold comparison unit 212 to select the two clusters according to the cluster selection unit 211, the total of which is Whether the traffic is less than or equal to the maximum switch capacity to determine whether the two clusters are merged.

請參閱圖3所示,為本發明SDN共享樹群播串流系統與方法之集中點選擇單元之架構圖,其中集中點選擇單元220,是包含一最短路徑計算單元221,是以計算一個群播來源端到某交換器之最短路徑;以及一最小距離總和選擇單元222,是設置於最短路徑計算單元221之後,以選擇具有最 小距離總和之交換器,以作為叢集集中點。 Referring to FIG. 3, it is an architectural diagram of a centralized point selection unit of an SDN shared tree multicast stream system and method according to the present invention. The centralized point selection unit 220 includes a shortest path calculation unit 221, which is to calculate a group. The shortest path from the source to the switch; and a minimum distance sum selection unit 222 is disposed after the shortest path calculation unit 221 to select the most The small distance sum of the exchangers to serve as a cluster concentration point.

請參閱圖4所示,為本發明SDN共享樹群播串流系統與方法之最短路徑樹建立單元之架構圖,其中最短路徑樹建立單元,是包含二最短路徑計算530,以計算群播來源端510或用戶端520到叢集集中點400之最短路徑,以建立最短路徑之群播樹500。 Referring to FIG. 4, an architecture diagram of a shortest path tree establishing unit of the SDN shared tree multicast streaming system and method according to the present invention, wherein the shortest path tree establishing unit includes a second shortest path calculation 530 to calculate a multicast source. The shortest path from the end 510 or the client 520 to the cluster concentration point 400 to establish the shortest path of the multicast tree 500.

請參閱圖5所示,為本發明SDN共享樹群播串流系統與方法之流程圖,一種SDN共享樹群播串流方法,包括:步驟一、拓樸建立S700,當控制器開啟時,利用控制器中既有的拓樸偵測模組以及群組管理模組獲得交換器、群播來源端以及群播用戶端的分佈;步驟二、群播樹建立S710,依拓樸建立S700,將群播來源端分為複數個叢集,對於每一個叢集設立一個與群播來源端距離最小的交換器作為集中點,使得同一個叢集內的群播來源端建立最短路徑至集中點,並以集中點為根,建立最短路徑樹到所有的群播用戶端;步驟三、流量條設定S720,依群播樹建立S710,設定流量條在群播樹上的交換器,以傳送群播串流封包。 Referring to FIG. 5, it is a flowchart of an SDN shared tree multicast stream system and method according to the present invention, and an SDN shared tree multicast stream method, including: Step 1 and topology establishment S700, when the controller is turned on, The distribution of the switch, the multicast source, and the multicast client is obtained by using the existing topology detection module and the group management module in the controller. Step 2: The cluster tree is established with S710, and the S700 is established according to the topology. The source end of the multicast broadcast is divided into a plurality of clusters, and a switch with the smallest distance from the source end of the multicast broadcast is set as a centralized point for each cluster, so that the source end of the multicast group in the same cluster establishes the shortest path to the centralized point, and concentrates The point is the root, and the shortest path tree is established to all the multicast clients. Step 3: The traffic bar is set to S720, the S710 is established according to the multicast tree, and the switch of the traffic bar in the multicast tree is set to transmit the multicast stream packet. .

其中S710群播樹建立之步驟是包含:步驟一、S711群播來源端叢集,將所有群播來源端分為複數個叢集;步驟二、S712集中點選擇,將群播來源端叢集中每一個叢集選擇距離最小的交換器,以作為叢集集 中點;步驟三、S713最短路徑樹建立,將集中點選擇中每一個叢集集中點,建立每一個群播來源端到叢集集中點之最短路徑,以及建立從叢集集中點到所有用戶端之最短路徑樹。 The step of establishing the S710 multicast tree includes: Step 1: S711 multicast source end cluster, dividing all the multicast source ends into a plurality of clusters; Step 2, S712 centralized point selection, and grouping the source end clusters each. The cluster selects the switch with the smallest distance as the cluster set Midpoint; Step 3: S713 shortest path tree is established, each cluster point in the cluster selection will be selected, the shortest path from each source to the cluster point, and the shortest from the cluster point to all the users. Path tree.

請參閱圖9所示,為本發明SDN共享樹群播串流系統與方法之流量條設定之流程圖,其中S720流量條設定之步驟是包含:步驟一、S721群播來源端流量條設定,對於在群播來源端到叢集集中點路徑上的交換器,其S722設定流量條符合條件為:來源IP為群播來源端IP,目的IP為群播IP,動作為傳送至叢集集中點;步驟二、S723集中點交換器流量條設定,對於叢集集中點,其S724設定流量條符合條件為:叢集內從群播來源端送出的封包,動作為貼上叢集VLAN標籤,並傳送至所有用戶端;步驟三、S725樹交換器流量條設定,對於群播樹上的交換器,其S726設定流量條符合條件為:叢集VLAN標籤的封包,動作為傳送至所有用戶端;步驟四、S727用戶端交換器流量條設定,對於連接用戶端的交換器,其S728設定流量條符合條件為:叢集VLAN標籤的封包,動作為移除封包上的叢集VLAN標籤,並將封包傳送至用戶端。 Please refer to FIG. 9 , which is a flowchart of setting a traffic bar of an SDN shared tree multicast streaming system and method according to the present invention. The step of setting the S720 traffic bar includes: Step 1 : S721 multicast source flow bar setting, For the switch on the source to the cluster centralized point path, the S722 sets the traffic bar to meet the following conditions: the source IP is the multicast source IP address, the destination IP is the multicast IP address, and the action is transmitted to the cluster aggregation point; Second, the S723 centralized point switch traffic bar is set. For the cluster concentration point, the S724 sets the traffic bar to meet the condition: the packet sent from the source end of the cluster in the cluster, the action is to affix the cluster VLAN tag and transmit to all the clients. Step 3: S725 tree switch traffic bar setting. For the switch on the multicast tree, the S726 sets the traffic bar to meet the condition: the packet of the cluster VLAN tag, the action is transmitted to all clients; step 4, S727 client The switch traffic bar is set. For the switch connected to the client, the S728 setting traffic bar meets the condition that: the packet of the cluster VLAN tag, the action is to remove the cluster VLAN tag on the packet. Sign and send the packet to the client.

請參閱圖6所示,為本發明SDN共享樹群播串流系統與方法之群播來源端叢集之流程圖,其中S711群播來源端叢集之步驟是包含:步驟一、S7111設定每一群播來源端為一個叢集;步驟二、S7112叢集選擇,透過Dijkstra演算法,以計算任兩個叢集之間的距離,從結果中選擇距離最小的兩個叢集;步驟三、S7113距離閥值比較,以決定目前兩個叢集的距離是否小於距離閥值,若是,則進入負載比較;反之,則結束群播來源端叢集S7114,所得結果為複數個叢集;步驟四、S7115負載比較,是以決定目前兩個叢集的流量是否小於等於最大交換器容量,若是,則兩叢集進行S7116叢集合併,並重新回到S7112叢集選擇;反之,則直接回到S7112叢集選擇,重新選擇距離最小的兩個叢集。 Please refer to FIG. 6 , which is a flowchart of a cluster source end cluster of an SDN shared tree multicast stream system and method according to the present invention. The step of the S711 multicast source end cluster includes: Step 1 and S7111 set each multicast group. The source is a cluster; Step 2, S7112 cluster selection, through the Dijkstra algorithm, to calculate the distance between any two clusters, select the two clusters with the smallest distance from the results; Step 3, S7113 distance threshold comparison, Determine whether the distance between the two clusters is less than the distance threshold, and if so, enter the load comparison; otherwise, end the cluster source cluster S7114, the result is a plurality of clusters; Step 4, S7115 load comparison, is to determine the current two Whether the traffic of the clusters is less than or equal to the maximum switch capacity, if so, the two clusters are clustered with the S7116 cluster and returned to the S7112 cluster selection; otherwise, directly return to the S7112 cluster selection, and reselect the two clusters with the smallest distance.

請參閱圖7所示,為本發明SDN共享樹群播串流系統與方法之集中點選擇步驟之流程圖,其中S712集中點選擇之包含:步驟一、最短路徑計算S7121,透過Dijkstra演算法,以計算一個群播來源端到某交換器之最短路徑;步驟二、最小距離總和選擇S7122,從最短路徑計算之結果,累加在同一個叢集下所有群播來源到相同交換器的最短路徑距離,並選擇具有最小距離總和之交換器,以作為叢集集中點。 Please refer to FIG. 7 , which is a flowchart of a centralized point selection step of the SDN shared tree multicast stream system and method according to the present invention, wherein the S712 centralized point selection includes: Step 1 and shortest path calculation S7121, through the Dijkstra algorithm, To calculate the shortest path from the source end of a multicast source to a switch; step 2, the sum of the minimum distances selects S7122, and the result of the calculation from the shortest path accumulates the shortest path distance of all the multicast sources to the same switch under the same cluster. And choose the switch with the smallest distance sum as the cluster concentration point.

請參閱圖8所示,為本發明SDN共享樹群播串流系統與方法之最短路徑樹建立之流程圖,其中最短路徑樹建立之步驟,是包含S840二最短路徑計算,以計算群播來源端S810或用戶端S820到叢集集中點S830之最短路徑,以建立最短路徑樹S850。 Please refer to FIG. 8 , which is a flowchart of establishing a shortest path tree of an SDN shared tree multicast stream system and method according to the present invention. The step of establishing a shortest path tree includes the S840 second shortest path calculation to calculate a multicast source. The shortest path from the end S810 or the client S820 to the cluster concentration point S830 to establish the shortest path tree S850.

上列詳細說明乃針對本發明之一可行實施例進行具體說明,惟該實施例並非用以限制本發明之專利範圍,凡未脫離本發明技藝精神所為之等效實施或變更,均應包含於本案之專利範圍中。 The detailed description of the present invention is intended to be illustrative of a preferred embodiment of the invention, and is not intended to limit the scope of the invention. The patent scope of this case.

綜上所述,本案不僅於技術思想上確屬創新,並具備習用之傳統方法所不及之上述多項功效,已充分符合新穎性及進步性之法定發明專利要件,爰依法提出申請,懇請貴局核准本件發明專利申請案,以勵發明,至感德便。 To sum up, this case is not only innovative in terms of technical thinking, but also has many of the above-mentioned functions that are not in the traditional methods of the past. It has fully complied with the statutory invention patent requirements of novelty and progressiveness, and applied for it according to law. Approved this invention patent application, in order to invent invention, to the sense of virtue.

100‧‧‧拓樸偵測模組 100‧‧‧Topology Detection Module

200‧‧‧群播樹建立模組 200‧‧‧Group Tree Building Module

210‧‧‧群播來源端叢集單元 210‧‧‧Communication source cluster unit

220‧‧‧集中點選擇單元 220‧‧‧ Concentration point selection unit

230‧‧‧最短路徑樹建立單元 230‧‧‧ Shortest path tree building unit

300‧‧‧叢集 300‧‧ ‧ cluster

400‧‧‧集中點 400‧‧‧ Concentration points

500‧‧‧群播樹 500‧‧‧Group tree

600‧‧‧流量條設定模組 600‧‧‧Flow bar setting module

610‧‧‧群播來源端流量條設定單元 610‧‧‧Group source source flow bar setting unit

620‧‧‧集中點交換器流量條設定單元 620‧‧‧ Concentrated point exchanger flow bar setting unit

630‧‧‧樹交換器流量條設定單元 630‧‧‧ Tree exchanger flow bar setting unit

640‧‧‧用戶端交換器流量條設定單元 640‧‧‧Customer Switch Flow Strip Setting Unit

Claims (10)

一種SDN(Software Defined Networking,軟體定義網路)共享樹群播串流系統,係由控制器在群播來源端傳送串流前,將群播來源端分為複數個叢集,對於每一個叢集設立一個與群播來源端距離最小的交換器作為集中點,使得同一個叢集內的群播來源端建立最短路徑至集中點,並以集中點為根,建立最短路徑樹到所有的群播用戶端,並根據最短路徑樹,對於每個在樹節點上的交換器設定流量條(flow entry),主要包括:一群播樹建立模組,係於交換器、群播來源端以及群播用戶端分佈下,建立傳送串流所需的群播樹,其包含:一群播來源端叢集單元,係將所有群播來源端分為複數個叢集;一集中點選擇單元,係設置於該群播來源端叢集單元之後,以選擇一個叢集中距離最小的交換器作為集中點;以及一最短路徑樹建立單元,係設置於該集中點選擇單元之後,用以將每個叢集中的所有群播來源端建立最短路徑至叢集集中點,並以叢集集中點為根,建立最短路徑群播樹到所有的群播用戶端;一流量條設定模組,係設置於該群播樹建立模組之後,並以設定該交換器上之流量條,其包含:一群播來源端流量條設定單元,係以設定對於在叢集內的來源端串流,利用OpenFlow protocol(OpenFlow協定)設定傳送flow(流量)至交換器之流量條動作,來將串流封包送出至叢集集中點; 一集中點交換器流量條設定單元,係以設定對於在叢集內的來源端串流,利用OpenFlow protocol設定貼VLAN(Virtual Local Area Network,虛擬區域網路)標籤的flow至交換器之流量條動作,來貼VLAN標籤到串流封包上,並將該串流封包送出至用戶端;一樹交換器流量條設定單元,係以設定對於已貼VLAN標籤的串流封包,利用OpenFlow protocol設定傳送的flow至交換器之流量條動作,來將串流封包送出至用戶端;以及一用戶端交換器流量條設定單元,係以設定對於已貼VLAN標籤的串流封包上,利用OpenFlow protocol設定移除VLAN標籤並傳送flow至交換器之流量條動作,來將串流封包上的VLAN標籤移除,並將該串流封包送至要求的用戶端上。 An SDN (Software Defined Networking) shared tree multicast streaming system is configured by the controller to divide the source end of the multicast broadcast into a plurality of clusters before transmitting the stream at the source end of the multicast broadcast, and set up a cluster for each cluster. A switch with the smallest distance from the source end of the multicast broadcast is used as a centralized point, so that the source end of the multicast group in the same cluster establishes the shortest path to the centralized point, and the centralized point is used as the root to establish the shortest path tree to all the multicast clients. According to the shortest path tree, a flow entry is set for each switch on the tree node, which mainly includes: a group of broadcast tree building modules, which are distributed on the switch, the multicast source, and the multicast client. Next, the multicast tree required for the transport stream is established, which comprises: a group of broadcast source clustering units, which divides all the multicast source ends into a plurality of clusters; and a centralized point selection unit is set at the source end of the multicast broadcast. After the cluster unit, the switch having the smallest cluster distance is selected as the concentration point; and a shortest path tree establishing unit is disposed after the set point selecting unit, All the multicast source sources in each cluster establish the shortest path to the cluster concentration point, and use the cluster concentration point as the root to establish the shortest path multicast tree to all the multicast users; a traffic bar setting module is set in After the cluster tree establishes a module, and sets a traffic bar on the switch, it includes: a group of broadcast source-side traffic bar setting units, configured to set the source-side stream in the cluster, and utilize OpenFlow protocol (OpenFlow) Agreement) sets the flow bar action of transmitting flow (flow) to the switch to send the stream packet to the cluster concentration point; A centralized switch flow bar setting unit is configured to set a flow to the switch of the VLAN (Virtual Local Area Network) tag by using the OpenFlow protocol to set the source stream in the cluster. , the VLAN tag is attached to the stream packet, and the stream packet is sent to the user end; a tree switch flow bar setting unit is configured to set the flow packet for the tagged VLAN tag, and use the OpenFlow protocol to set the flow to be transmitted. The flow bar to the switch acts to send the stream packet to the client; and a client switch flow bar setting unit is configured to set the VLAN tag to the streamed packet, and use the OpenFlow protocol to remove the VLAN. The tag also transmits a flow bar action to the switch to remove the VLAN tag on the stream packet and send the stream packet to the required client. 如申請專利範圍第1項所述之SDN共享樹群播串流系統,其中該群播來源端叢集單元,係包含:一叢集選擇單元,係以計算叢集與叢集之間的距離,並選擇叢集距離最小的兩個叢集;一距離閥值比較單元,係設置於該叢集選擇單元之後,以根據叢集選擇單元所選擇的兩個叢集,其距離是否小於距離閥值,以決定群播來源端叢集單元是否結束;一負載比較單元,係設置於該距離閥值比較單元之後,以根據該叢集選擇單元所選擇的兩個叢集,其總流量是否小於等於最大交換器容量,以決定兩個叢集是否進行合併。 The SDN shared tree multicast stream system according to claim 1, wherein the multicast source cluster unit comprises: a cluster selection unit, which calculates the distance between the cluster and the cluster, and selects the cluster. The minimum two clusters; a distance threshold comparison unit is disposed after the cluster selection unit to select whether the distance is less than the distance threshold according to the two clusters selected by the cluster selection unit to determine the cluster source end cluster Whether the unit ends; a load comparison unit is disposed after the distance threshold comparison unit to determine whether the two clusters are equal to or greater than the maximum switch capacity according to the two clusters selected by the cluster selection unit Consolidate. 如申請專利範圍第1項所述之SDN共享樹群播串流系統, 其中該集中點選擇單元,係包含:一最短路徑計算單元,係以計算一個群播來源端到某交換器之最短路徑;以及一最小距離總和選擇單元,係設置於該最短路徑計算單元之後,以選擇具有最小距離總和之交換器,以作為該叢集集中點。 For example, the SDN shared tree multicast stream system described in claim 1 of the patent scope, The central point selection unit includes: a shortest path calculation unit for calculating a shortest path from a source end to a switch; and a minimum distance sum selection unit, which is disposed after the shortest path calculation unit. To select the switch with the smallest distance sum as the cluster concentration point. 如申請專利範圍第1項所述之SDN共享樹群播串流系統,其中該最短路徑樹建立單元,係包含二最短路徑計算,以計算群播來源端或用戶端到叢集集中點之最短路徑,以建立最短路徑之群播樹。 The SDN shared tree multicast stream system as described in claim 1, wherein the shortest path tree establishing unit includes two shortest path calculations to calculate a shortest path of the source source or the client to the cluster concentration point. To establish a shortest path to the multicast tree. 一種SDN共享樹群播串流方法,包括:步驟一、拓樸建立,當控制器開啟時,利用該控制器中的拓樸偵測模組以及群組管理模組獲得交換器、群播來源端以及群播用戶端的分佈;步驟二、群播樹建立,依該拓樸建立,將群播來源端分為複數個叢集,對於每一個叢集設立一個與群播來源端距離最小的交換器作為集中點,使得同一個叢集內的群播來源端建立最短路徑至集中點,並以集中點為根,建立最短路徑樹到所有的群播用戶端;步驟三、流量條設定,依該群播樹建立,設定流量條在群播樹上的交換器,以傳送群播串流封包。 An SDN shared tree multicast streaming method includes: Step 1 and topology establishment. When the controller is turned on, the topology detection module and the group management module in the controller are used to obtain a switch and a multicast source. The distribution of the end and the multicast client; step 2, the establishment of the multicast tree, according to the topology, the source end of the multicast is divided into a plurality of clusters, and a switch with the smallest distance from the source end of the multicast is set for each cluster as Concentration point, so that the source end of the multicast group in the same cluster establishes the shortest path to the centralized point, and uses the centralized point as the root to establish the shortest path tree to all the multicast users; Step 3: Traffic bar setting, according to the multicast The tree establishes a switch that sets the traffic bar on the multicast tree to transmit the multicast stream packet. 如申請專利範圍第5項所述之SDN共享樹群播串流方法,其中該群播樹建立之步驟係包含:步驟一、群播來源端叢集,將所有群播來源端分為複數個叢集; 步驟二、集中點選擇,將該群播來源端叢集中每一個叢集選擇距離最小的交換器,以作為叢集集中點;步驟三、最短路徑樹建立,將該集中點選擇中每一個叢集集中點,建立每一個群播來源端到叢集集中點之最短路徑,以及建立從叢集集中點到所有用戶端之最短路徑樹。 The method for establishing an SDN shared tree multicast stream according to claim 5, wherein the step of establishing the multicast tree includes: step 1: grouping the source end cluster, and dividing all the source sources into a plurality of clusters. ; Step 2: Selecting a centralized point, selecting the switch with the smallest selection distance of each cluster in the cluster end cluster as the cluster concentration point; Step 3, establishing the shortest path tree, and selecting each cluster concentration point in the centralized point selection Establish the shortest path from each source to the cluster set point and establish the shortest path tree from the cluster set point to all the users. 如申請專利範圍第5項所述之SDN共享樹群播串流方法,其中該流量條設定之步驟係包含:步驟一、群播來源端流量條設定,對於在群播來源端到叢集集中點路徑上的交換器,設定流量條符合條件為來源IP為群播來源端IP,目的IP為群播IP,動作為傳送至叢集集中點;步驟二、集中點交換器流量條設定,對於叢集集中點,設定流量條符合條件為叢集內從群播來源端送出的封包,動作為貼上叢集VLAN標籤,並傳送至所有用戶端;步驟三、樹交換器流量條設定,對於群播樹上的交換器,設定流量條符合條件為叢集VLAN標籤的封包,動作為傳送至所有用戶端;步驟四、用戶端交換器流量條設定,對於連接用戶端的交換器,設定流量條符合條件為叢集VLAN標籤的封包,動作為移除封包上的叢集VLAN標籤,並將封包傳送至用戶端。 The SDN shared tree multicast stream method as described in claim 5, wherein the step of setting the traffic bar includes: Step 1: setting the source traffic bar of the multicast source, for the source to the cluster concentration point The switch on the path sets the traffic bar to meet the condition that the source IP is the multicast source IP address, the destination IP is the multicast IP address, and the action is transmitted to the cluster aggregation point; step 2, the centralized point switch traffic bar setting, for the cluster concentration Point, set the traffic bar to meet the conditions for the packet sent from the source end of the cluster, the action is to paste the cluster VLAN tag, and transmit to all the users; Step 3, the tree switch traffic bar setting, for the multicast tree The switch sets the flow bar to meet the conditions of the packet of the cluster VLAN tag, and the action is transmitted to all the users; the fourth step is to set the traffic bar of the user switch, and for the switch connected to the client, the traffic bar is set to meet the condition of the cluster VLAN tag. Packet, the action is to remove the cluster VLAN tag on the packet and send the packet to the client. 如申請專利範圍第6項所述之SDN共享樹群播串流方法,其中該群播來源端叢集之步驟係包含: 步驟一、設定每一群播來源端為一個叢集;步驟二、叢集選擇,透過Dijkstra演算法,以計算任兩個叢集之間的距離,從結果中選擇距離最小的兩個叢集;步驟三、距離閥值比較,以決定目前兩個叢集的距離是否小於距離閥值,若是,則進入負載比較;反之,則結束群播來源端叢集,所得結果為複數個叢集;步驟四、其該負載比較,係以決定目前兩個叢集的流量是否小於等於最大交換器容量,若是,則兩叢集進行叢集合併,並重新回到叢集選擇;反之,則直接回到叢集選擇,重新選擇距離最小的兩個叢集。 The SDN shared tree multicast stream method as described in claim 6, wherein the step of the cluster source end cluster includes: Step 1: Set each multicast source to be a cluster; Step 2, Cluster selection, through Dijkstra algorithm, to calculate the distance between any two clusters, select the two clusters with the smallest distance from the result; Step 3, Distance Threshold comparison to determine whether the distance between the two clusters is less than the distance threshold, and if so, enter the load comparison; otherwise, the cluster source end cluster is ended, and the result is a plurality of clusters; step four, the load comparison, Determine whether the traffic of the current two clusters is less than or equal to the maximum switch capacity. If so, the two clusters are clustered and returned to the cluster selection; otherwise, directly return to the cluster selection, and reselect the two clusters with the smallest distance. . 如申請專利範圍第6項所述之SDN共享樹群播串流方法,其中該集中點選擇之步驟係包含:步驟一、最短路徑計算,透過Dijkstra演算法,以計算一個群播來源端到某交換器之最短路徑;步驟二、最小距離總和選擇,從該最短路徑計算之結果,累加在同一個叢集下所有群播來源到相同交換器的最短路徑距離,並選擇具有最小距離總和之交換器,以作為該叢集集中點。 For example, the SDN shared tree multicast stream method described in claim 6 wherein the step of selecting a centralized point includes: step one, shortest path calculation, and calculating a multicast source to a certain by Dijkstra algorithm The shortest path of the switch; step 2, the minimum distance sum selection, from the result of the shortest path calculation, accumulate the shortest path distance of all the multicast sources to the same switch under the same cluster, and select the switch with the smallest distance sum As the focus of the cluster. 如申請專利範圍第6項所述之SDN共享樹群播串流方法,其中該最短路徑樹建立之步驟,係包含二最短路徑計算,以計算群播來源端或用戶端到叢集集中點之最短路徑,以建立最短路徑樹。 The SDN shared tree multicast stream method as described in claim 6, wherein the step of establishing the shortest path tree includes two shortest path calculations to calculate the shortest source of the multicast source or the minimum of the user end to the cluster concentration point. Path to establish the shortest path tree.
TW105120120A 2016-06-27 2016-06-27 SDN sharing tree multicast streaming system and method TWI607639B (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW105120120A TWI607639B (en) 2016-06-27 2016-06-27 SDN sharing tree multicast streaming system and method
JP2016201349A JP6286506B2 (en) 2016-06-27 2016-10-12 SDN shared tree multicast streaming mechanism and method
CN201611040067.3A CN106973019B (en) 2016-06-27 2016-11-21 SDN shared tree multicast streaming system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW105120120A TWI607639B (en) 2016-06-27 2016-06-27 SDN sharing tree multicast streaming system and method

Publications (2)

Publication Number Publication Date
TWI607639B true TWI607639B (en) 2017-12-01
TW201801494A TW201801494A (en) 2018-01-01

Family

ID=59334840

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105120120A TWI607639B (en) 2016-06-27 2016-06-27 SDN sharing tree multicast streaming system and method

Country Status (3)

Country Link
JP (1) JP6286506B2 (en)
CN (1) CN106973019B (en)
TW (1) TWI607639B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI242337B (en) * 2002-08-22 2005-10-21 Nec Corp Network system, spanning tree configuration method, spanning tree configuration node, and spanning tree configuration program
TWI276320B (en) * 2001-10-24 2007-03-11 Bogenpfeil Co Ltd Method of forming, searching, or generating quasi-minimum tree providing optimum network configuration, and information recording medium which stores program thereof
US20080162732A1 (en) * 2006-12-29 2008-07-03 Raytheon Company Redundant Network Shared Switch
WO2009082151A2 (en) * 2007-12-21 2009-07-02 Samsung Electronics Co., Ltd. A hybrid multicast routing protocol for wireless mesh networks
TWI410077B (en) * 2009-04-14 2013-09-21 Univ Nat Chiao Tung Method of Wrapping Method and Winding Path in Wireless Network Environment
US20140016457A1 (en) * 2011-03-31 2014-01-16 Telefonaktiebolaget L M Ericsson (Publ) Technique for Operating a Network Node

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005039733A (en) * 2003-07-18 2005-02-10 Nippon Telegr & Teleph Corp <Ntt> Wide area mobile information communication method, and mobile information communication edge router device and wide area mobile information communication system device
JP2008211444A (en) * 2007-02-26 2008-09-11 Toshiba Corp Communication system and communication method
EP2294820A1 (en) * 2008-05-28 2011-03-16 Thomson Licensing Multi-head hierarchically clustered peer-to-peer live streaming system
CN101631274B (en) * 2009-07-28 2012-09-05 北京交通大学 Realizing system of multicast routing based on mark and method thereof
JP2011166360A (en) * 2010-02-08 2011-08-25 Nec Corp Multicast-tree calculation device, calculation method, and network system
US8638789B1 (en) * 2012-05-04 2014-01-28 Google Inc. Optimal multicast forwarding in OpenFlow based networks
JP2014027443A (en) * 2012-07-26 2014-02-06 Nec Corp Control device, communication system, communication method, and program
US9300483B2 (en) * 2013-03-15 2016-03-29 International Business Machines Corporation Self-routing multicast in a software defined network fabric
CN105657671B (en) * 2014-11-14 2019-08-23 电信科学技术研究院 A kind of method and apparatus for realizing multicast
CN104980355B (en) * 2015-05-14 2018-04-24 华中科技大学 A kind of source controllable multicast data transmission system under SDN environment

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI276320B (en) * 2001-10-24 2007-03-11 Bogenpfeil Co Ltd Method of forming, searching, or generating quasi-minimum tree providing optimum network configuration, and information recording medium which stores program thereof
TWI242337B (en) * 2002-08-22 2005-10-21 Nec Corp Network system, spanning tree configuration method, spanning tree configuration node, and spanning tree configuration program
US20080162732A1 (en) * 2006-12-29 2008-07-03 Raytheon Company Redundant Network Shared Switch
WO2009082151A2 (en) * 2007-12-21 2009-07-02 Samsung Electronics Co., Ltd. A hybrid multicast routing protocol for wireless mesh networks
TWI410077B (en) * 2009-04-14 2013-09-21 Univ Nat Chiao Tung Method of Wrapping Method and Winding Path in Wireless Network Environment
US20140016457A1 (en) * 2011-03-31 2014-01-16 Telefonaktiebolaget L M Ericsson (Publ) Technique for Operating a Network Node

Also Published As

Publication number Publication date
CN106973019A (en) 2017-07-21
JP6286506B2 (en) 2018-02-28
JP2018007224A (en) 2018-01-11
TW201801494A (en) 2018-01-01
CN106973019B (en) 2020-03-17

Similar Documents

Publication Publication Date Title
US8885643B2 (en) Method for multicast flow routing selection
USRE47260E1 (en) System and method for point to multipoint inter-domain MPLS traffic engineering path calculation
US11917262B2 (en) Dynamic designated forwarder election per multicast stream for EVPN all-active homing
US20150341183A1 (en) Forwarding multicast data packets
CN106559330B (en) SDN-based dynamic path planning method
US20180077064A1 (en) Methods and systems for data center load balancing
WO2007090346A1 (en) Control system, data message transmission method and network device in the ethernet
WO2013123654A1 (en) Method and system for layered distribution of ip multicast data
WO2020052306A1 (en) Method, device and system for determining message forwarding path
CN106209622A (en) A kind of method of multicasting based on SDN
CN103414650A (en) Routing method and device for congestion avoidance
CN106059861B (en) System and method for constructing minimum dynamic aggregation tree of Internet of things in distributed mode
JPWO2016039135A1 (en) COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION SYSTEM
CN106790146A (en) The system and its operation method of mobile multicast are realized under a kind of cloud environment based on SDN technologies
WO2015014197A1 (en) Method for selecting route in scenario of multicast load, and router
TWI607639B (en) SDN sharing tree multicast streaming system and method
CN103220221A (en) Method and device capable of noticing link information
Ren et al. Toward continuous push-based P2P live streaming
Ramya et al. Software defined networking based solution in load balancing for media transfer in overlay network
Chandrasekar et al. Performance of Video Conferencing using Protocol Independent Multicast Routing with Core failure
JP2016054342A (en) Communication device, communication method and program
JP6281566B2 (en) Relay management device, relay management method, program, and relay management system
CN110446059B (en) Method and device for determining communication path between video network terminals
CN107483354A (en) Network congestion based on SDN solves method and system
Date et al. Evaluation of parallel processing control of virtual switch architecture on large-scale network