TWI729613B - Method of virtual network function deployment in service function chain - Google Patents

Method of virtual network function deployment in service function chain Download PDF

Info

Publication number
TWI729613B
TWI729613B TW108144920A TW108144920A TWI729613B TW I729613 B TWI729613 B TW I729613B TW 108144920 A TW108144920 A TW 108144920A TW 108144920 A TW108144920 A TW 108144920A TW I729613 B TWI729613 B TW I729613B
Authority
TW
Taiwan
Prior art keywords
virtual network
function
node
computing node
deployment
Prior art date
Application number
TW108144920A
Other languages
Chinese (zh)
Other versions
TW202123746A (en
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 中華電信股份有限公司
Priority to TW108144920A priority Critical patent/TWI729613B/en
Application granted granted Critical
Publication of TWI729613B publication Critical patent/TWI729613B/en
Publication of TW202123746A publication Critical patent/TW202123746A/en

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The present invention is a method of virtual network function deployment in a service function chain. The method is used to calculate the deployment position of the virtual network function in the service function chain. When the Internet Service Provider provides user-customized network services through the service function chain, multiple virtual network functions need to be deployed in the physical server of the cloud environment at the same time, and the packets are sequentially routed to different virtual network functions. The method described in the present invention can get a better deployment location, so that when the service is actually running, the calculation load of the physical server is reduced, and the network delay when the user accesses the service is reduced.

Description

服務功能鏈之虛擬網路功能部署決策方法 Virtual network function deployment decision method of service function chain

本發明係有關於虛擬網路功能部署機制,特別是一種服務功能鏈之虛擬網路功能部署決策方法。 The present invention relates to a virtual network function deployment mechanism, in particular to a virtual network function deployment decision method of a service function chain.

目前雲端環境採用大量虛擬化技術,網路設備功能虛擬化亦是其中一項,透過虛擬網路功能技術讓架設網路服務能夠更有彈性,並且使得實體伺服器資源能夠完整的運用。在現有的技術中,虛擬網路功能部署時通常是以平均分配到各個不同的實體伺服器的方式來部署,使得每台實體伺服器的資源能夠平均分攤,然在部分情況下,此將會增加實體伺服器的CPU運算量,且使得使用者在存取這些服務服務時產生額外的網路延遲時間,而此情況在服務功能鏈技術開始運用後更顯得嚴重。 The current cloud environment uses a large number of virtualization technologies, and network device function virtualization is also one of them. Through the virtual network function technology, the establishment of network services can be more flexible and the physical server resources can be fully utilized. In the existing technology, the virtual network function is usually deployed in a way that is evenly distributed to different physical servers, so that the resources of each physical server can be evenly distributed. However, in some cases, this will Increasing the CPU computing capacity of the physical server and causing additional network delay time when users access these services, and this situation becomes more serious after the service function chain technology starts to be used.

此外,服務功能鏈技術係將一或數個虛擬化網路功能透過網路將其相連以提供對應之網路功能。在現有技術部署服務功能鏈時,會將一串服務功能鏈的各個虛擬化網路功能平均分配到不同的實體伺服器,這使得使用者在存取這串服務功能鏈時,會需要經過許多不同的實體伺服器,這樣就會產生額外的網路延遲時間。 In addition, the service function chain technology connects one or several virtualized network functions through the network to provide corresponding network functions. When deploying a service function chain in the prior art, each virtualized network function of a series of service function chains is evenly distributed to different physical servers. This makes users need to go through a lot when accessing this series of service function chains. Different physical servers, this will cause additional network delay time.

另外,由於實體伺服器之間連線是使用通用路由封裝通道(Generic Routing Encapsulation Tunnel,GRE Tunnel)技術,而通用路由封裝通道技術在傳送端與接收端都需要對封包標頭(Header)進行處理,倘若經過許多實體伺服器,如此也是會增加使用者存取服務的時間。 In addition, since the connection between the physical servers uses Generic Routing Encapsulation Tunnel (GRE Tunnel) technology, the Generic Routing Encapsulation Tunnel (GRE Tunnel) technology needs to process the packet header (Header) at both the transmitting end and the receiving end. , If it passes through many physical servers, this will also increase the time for users to access the service.

由上可知,現有的雲端虛擬化環境下需要找出一種方法來解決上述問題,特別是對於各個虛擬化網路功平均分配到不同的實體伺服器所導致的網路延遲時間或是增加存取服務時間,提出改善目前技術之對策,此將成為本領域技術人員所急欲追求之目標。 It can be seen from the above that there is a need to find a way to solve the above problems in the existing cloud virtualization environment, especially for the network delay caused by the average distribution of each virtualized network function to different physical servers or increase the access Service time, and propose measures to improve the current technology, which will become an urgent goal pursued by those skilled in the art.

本發明之目的係針對使用服務功能鏈之虛擬網路功能所架設之網路環境提出一種虛擬網路功能部署位置的決策方法,使得部署虛擬網路功能時,能夠減少實體伺服器之CPU運算,並降低使用者存取服務之網路延遲,除了節省實體伺服器之可用資源之外,也能提供使用者更佳的服務品質。 The purpose of the present invention is to propose a virtual network function deployment location decision method for the network environment established by the virtual network function of the service function chain, so that the CPU operation of the physical server can be reduced when the virtual network function is deployed. It also reduces the network latency of users accessing services. In addition to saving the available resources of the physical server, it can also provide users with better service quality.

達成上述發明目的或其他目的,本發明係揭露一種服務功能鏈之虛擬網路功能部署決策方法,係包括:設定一網路節點為起始點;設定網路中各節點間之網路連線的權重初始值為相同;搜尋與該起始點相連之多個運算節點,找出能部屬虛擬網路功能之數量最多的運算節點以定義為選定之運算節點;判斷該選定之運算節點其資源是否足以部署該虛擬網路功能,以於該選定之運算節點資源充裕下,確定部署該虛擬網路功能於該選定之運算節點;增加一相同數值之權重至從該起始點行經至已部署 該虛擬網路功能之運算節點的網路連線;以及判斷是否存在尚未部署之其他虛擬網路功能,以於不存在未部署之其他虛擬網路功能時完成所有虛擬網路功能部署,或是於尚有未部署之其他虛擬網路功能時,以已部署該虛擬網路功能之運算節點為新起始點,重覆上述搜尋、判斷及增加權重之步驟,直到所有虛擬網路功能皆完成部署。 To achieve the above-mentioned object of the invention or other objects, the present invention discloses a virtual network function deployment decision method for a service function chain, which includes: setting a network node as the starting point; setting the network connection between nodes in the network The initial value of the weight of is the same; search for multiple computing nodes connected to the starting point, find the computing node with the largest number of virtual network functions that can be deployed, and define it as the selected computing node; determine the resources of the selected computing node Whether it is sufficient to deploy the virtual network function to determine the deployment of the virtual network function on the selected computing node when the resources of the selected computing node are sufficient; increase a weight of the same value to pass from the starting point to deployed The network connection of the computing node of the virtual network function; and determine whether there are other virtual network functions that have not been deployed, so as to complete the deployment of all virtual network functions when there are no other virtual network functions that have not been deployed, or When there are other virtual network functions that have not yet been deployed, take the computing node of the deployed virtual network function as a new starting point, and repeat the above steps of searching, judging and adding weights until all virtual network functions are completed deploy.

於上述方法中,若同時存在多個可用資源最多之運算節點,於該多個可用資源最多之運算節點之中找出路徑最短之運算節點,以選定該路徑最短之運算節點為該選定之運算節點。 In the above method, if there are multiple operation nodes with the most available resources at the same time, find the operation node with the shortest path among the plurality of operation nodes with the most available resources, and select the operation node with the shortest path as the selected operation node.

於上述方法中,該路徑最短之運算節點係指自該起始點行經至該選定之運算節點之網路連線的權重加總值最小者。 In the above method, the computing node with the shortest path refers to the one with the smallest total weight of the network connection from the starting point to the selected computing node.

於上述方法中,若可用資源最多之運算節點僅有一個,則選定為該選定之運算節點。 In the above method, if there is only one computing node with the most available resources, it is selected as the selected computing node.

於上述方法中,若判斷該選定之運算節點其資源不足以部署該虛擬網路功能,則結束該次虛擬網路功能之部屬。 In the above-mentioned method, if it is determined that the resources of the selected computing node are insufficient to deploy the virtual network function, then the subordination of the virtual network function is terminated.

於上述方法中,該網路節點為實體伺服器,用於執行所有虛擬網路功能之部署決策。 In the above method, the network node is a physical server, which is used to implement deployment decisions of all virtual network functions.

於上述方法中,該多個運算節點皆為實體伺服器,用於供各種虛擬網路功能之部署。 In the above method, the multiple computing nodes are all physical servers for the deployment of various virtual network functions.

於上述方法中,數個虛擬網路功能經串接組合後成為一服務功能鏈。 In the above method, a number of virtual network functions are cascaded and combined to form a service function chain.

於上述方法中,各節點間之網路連線不具方向性。 In the above method, the network connection between each node has no directionality.

於上述方法中,該虛擬網路功能或該其他虛擬網路功能包括防火牆功能、負載平衡功能、閘道功能或轉址功能。 In the above method, the virtual network function or the other virtual network function includes a firewall function, a load balancing function, a gateway function, or a forwarding function.

綜上所述,本發明所揭露之服務功能鏈之虛擬網路功能部署決策方法,提供了一種決策方法以計算出服務功能鏈中虛擬網路功能的部署位置,在選定一網路節點後,搜尋合適的下一個運算節點,即能部屬虛擬網路功能之數量最多且資源充裕者,對於流量分配問題,每當有虛擬網路功能的流量經過時,係將增加網路連線的權重,用來記錄這一條網路連線有流量經過,藉此在部署虛擬網路功能時,選擇權重較小的路徑,亦即虛擬網路功能的流量經過次數較少的路徑,使得網路流量能夠平均分配,減少網路壅塞的情況發生,透過本發明之決策方法,能計算出較佳的部署位置,並藉此讓服務實際運行時,減少實體伺服器的CPU運算,以及降低使用者在存取服務時的網路延遲。 In summary, the virtual network function deployment decision method of the service function chain disclosed in the present invention provides a decision method to calculate the deployment position of the virtual network function in the service function chain. After a network node is selected, Search for the next suitable computing node, that is, the one that can deploy the largest number of virtual network functions and has sufficient resources. Regarding the problem of traffic distribution, whenever there is a virtual network function's traffic passing, the weight of the network connection will be increased. It is used to record the flow of this network connection, so that when the virtual network function is deployed, the path with a smaller weight is selected, that is, the path where the virtual network function's traffic passes fewer times, so that the network traffic can be Evenly distribute, reduce the occurrence of network congestion, through the decision-making method of the present invention, a better deployment location can be calculated, and this can reduce the CPU operation of the physical server when the service is actually running, and reduce the user's presence The network delay when fetching the service.

100‧‧‧網路節點 100‧‧‧Network Node

201、202、203‧‧‧運算節點 201, 202, 203‧‧‧operation node

300、300’‧‧‧服務功能鏈 300, 300’‧‧‧Service Function Chain

3100‧‧‧防火牆功能 3100‧‧‧Firewall function

3200‧‧‧負載平衡功能 3200‧‧‧Load balancing function

3300‧‧‧閘道功能 3300‧‧‧Gateway function

3400‧‧‧轉址功能 3400‧‧‧Redirecting function

401、402、403‧‧‧網頁伺服器 401, 402, 403‧‧‧Web server

500、501‧‧‧使用者 500, 501‧‧‧User

601~611‧‧‧流程 601~611‧‧‧Process

S11~S16‧‧‧步驟 S11~S16‧‧‧Step

請參閱有關本發明之詳細說明及其附圖,將可進一步瞭解本發明之技術內容及其目的功效。 Please refer to the detailed description of the present invention and its accompanying drawings to further understand the technical content of the present invention and its objectives and effects.

第1圖為本發明之服務功能鏈之虛擬網路功能部署決策方法的步驟圖。 Figure 1 is a step diagram of the virtual network function deployment decision method of the service function chain of the present invention.

第2A-2C圖為應用本發明所述方法之使用者存取網頁伺服器的運作示意圖。 Figures 2A-2C are schematic diagrams of the operation of a user accessing a web server using the method of the present invention.

第3圖為本發明之服務功能鏈之虛擬網路功能部署決策方法實際應用的流程圖。 Figure 3 is a flowchart of the practical application of the virtual network function deployment decision method of the service function chain of the present invention.

以下藉由特定的具體實施形態說明本發明之技術內容,熟悉此技藝之人士可由本說明書所揭示之內容輕易地瞭解本發明之優點與功效。然本發明亦可藉由其他不同的具體實施形態加以施行或應用。 The following describes the technical content of the present invention with specific specific embodiments. Those familiar with the art can easily understand the advantages and effects of the present invention from the content disclosed in this specification. However, the present invention can also be implemented or applied by other different specific embodiments.

本發明所提出的服務功能鏈之虛擬網路功能部署決策方法,其概念是將同一服務功能鏈的虛擬網路功能儘量放置在同一台實體伺服器,藉此減少使用者在存取虛擬網路功能所經過的實體伺服器數量,再者,將不同服務功能鏈平均放置在不同的實體伺服器,讓每台實體伺服器的資源使用量能平均分配。 The virtual network function deployment decision method of the service function chain proposed in the present invention is based on the concept of placing the virtual network functions of the same service function chain on the same physical server as much as possible, thereby reducing users’ access to the virtual network. The number of physical servers that the function passes through. Furthermore, the different service function chains are evenly placed on different physical servers, so that the resource usage of each physical server can be evenly distributed.

第1圖為本發明之服務功能鏈之虛擬網路功能部署決策方法的步驟圖,說明本發明對於服務功能鏈如何進行虛擬網路功能之部屬。於步驟S11中,設定一網路節點為起始點。本步驟即是使用者(用戶)欲取得網路服務在建立網路服務連線時的一個網路節點,此網路節點為實體伺服器,用於執行所有虛擬網路功能之部署決策。 Figure 1 is a step diagram of the virtual network function deployment decision method of the service function chain of the present invention, and illustrates how the present invention performs the subordination of the virtual network function to the service function chain. In step S11, a network node is set as a starting point. This step is a network node when a user (user) wants to obtain a network service when establishing a network service connection. This network node is a physical server used to implement deployment decisions for all virtual network functions.

於步驟S12中,設定網路中各節點間之網路連線的權重初始值為相同。本發明對於流量分配問題係透過權重方式來處理,即當有虛擬網路功能的流量經過時,可將此網路連線增加權重,藉以記錄此網路連線有流量經過,如此在部署虛擬網路功能時,選擇權重較小的路徑,將有助於平均分配流量,在此情況下,一開始所有節點間的網路連線的權重初始值當然會相同,之後隨著有虛擬網路功能的流量經過時,才需增加權重值。 In step S12, the initial value of the weight of the network connection between each node in the network is set to be the same. The present invention deals with the problem of traffic distribution through a weighting method, that is, when the traffic with virtual network function passes, the network connection can be weighted, so as to record the traffic passing by the network connection, so that in the deployment of virtual For network functions, choosing a path with a smaller weight will help evenly distribute the traffic. In this case, the initial value of the weight of the network connection between all nodes will of course be the same at the beginning, and then there will be virtual networks. The weight value needs to be increased only when the flow of the function passes.

於步驟S13中,搜尋與該起始點相連之多個運算節點,找出 能部屬虛擬網路功能之數量最多的運算節點以定義為選定之運算節點。本步驟即是尋找與起始點相連的下一個節點,這裡稱之為運算節點,而尋找規則即是以能部屬虛擬網路功能之數量最多的運算節點為首選,找出後該運算節點稱之為選定之運算節點,具體來說,該多個運算節點皆為實體伺服器,用於供各種虛擬網路功能之部署。 In step S13, search for multiple operation nodes connected to the starting point to find The computing node with the largest number of virtual network functions that can be deployed is defined as the selected computing node. This step is to find the next node connected to the starting point, which is called a computing node here, and the search rule is that the computing node with the largest number of virtual network functions is the first choice. After finding the computing node, the computing node is called These are the selected computing nodes. Specifically, the multiple computing nodes are physical servers for the deployment of various virtual network functions.

於一實施例中,若可用資源最多之運算節點僅有一個,當然就選擇該運算節點為選定之運算節點,相反地,若同時存在多個可用資源最多之運算節點,於該多個可用資源最多之運算節點之中找出路徑最短之運算節點,以選定該路徑最短之運算節點為該選定之運算節點。前述該路徑最短之運算節點係指自該起始點行經至該選定之運算節點之網路連線的權重加總值最小者。由此可知,當有多個可用資源最多之運算節點時,則選擇路徑最短者的運算節點作為選定之運算節點,而路徑最短的定義即是起始點到該運算節點之網路連線的權重加總後加總值最小者。 In one embodiment, if there is only one computing node with the most available resources, of course, the computing node is selected as the selected computing node. Conversely, if there are multiple computing nodes with the most available resources at the same time, the multiple available resources Find the operation node with the shortest path among the most operation nodes, and select the operation node with the shortest path as the selected operation node. The aforementioned arithmetic node with the shortest path refers to the one with the smallest total weight of the network connection from the starting point to the selected arithmetic node. It can be seen that when there are multiple computing nodes with the most available resources, the computing node with the shortest path is selected as the selected computing node, and the definition of the shortest path is the network connection from the starting point to the computing node After the weights are added up, the total value is the smallest.

於步驟S14中,判斷該選定之運算節點其資源是否足以部署該虛擬網路功能,以於該選定之運算節點資源充裕下,確定部署該虛擬網路功能於該選定之運算節點。本步驟即是對選定之運算節點進行資源是否足夠部屬虛擬網路功能作判斷,由於該選定之運算節點是被選擇要進行虛擬網路功能的部屬,故要先確認該選定之運算節點是否資源充裕,在資源充裕情況下,方能部屬虛擬網路功能。 In step S14, it is determined whether the resources of the selected computing node are sufficient to deploy the virtual network function, so as to determine to deploy the virtual network function on the selected computing node when the resources of the selected computing node are sufficient. This step is to judge whether the resources of the selected computing node are sufficient to deploy the virtual network function. Since the selected computing node is the component selected to perform the virtual network function, it is necessary to first confirm whether the selected computing node is the resource Abundant, when resources are abundant, virtual network functions can be deployed.

於一實施例中,若判斷該選定之運算節點其資源不足以部署該虛擬網路功能,則結束該次虛擬網路功能之部屬。 In one embodiment, if it is determined that the resources of the selected computing node are insufficient to deploy the virtual network function, then the subordinated virtual network function is terminated.

於步驟S15中,增加一相同數值之權重至從該起始點行經至 已部署該虛擬網路功能之運算節點的網路連線。本步驟即是在該選定之運算節點部屬虛擬網路功能後,要對行經的網路連線作權重增加,也就是針對本次部屬虛擬網路功能,將起始點與選定之運算節點間的網路連線增加其權重,以便後續繼續執行部屬時,知道該網路連線權重較高,避免選擇此節點作為下一次部屬時的運算節點,亦即權重值越高,將使路徑選擇上中選機會越低。 In step S15, add a weight of the same value to the starting point The network connection of the computing node where the virtual network function has been deployed. This step is to increase the weight of the network connection passing through after the selected computing node is deployed with the virtual network function, that is, for this deployment of the virtual network function, the starting point and the selected computing node Increase the weight of the network connection so that when you continue to execute the deployment, you know that the network connection has a higher weight, and avoid choosing this node as the computing node for the next deployment. That is, the higher the weight value, the path selection The lower the chance of being selected.

於步驟S16中,判斷是否存在尚未部署之其他虛擬網路功能,以於不存在未部署之其他虛擬網路功能時完成所有虛擬網路功能部署,或是於尚有未部署之其他虛擬網路功能時,以已部署該虛擬網路功能之運算節點為新起始點,重覆上述搜尋、判斷及增加權重之步驟,直到所有虛擬網路功能皆完成部署。本步驟是判斷使否還有其他虛擬網路功能要部屬,若無,即表示完成所有虛擬網路功能部署,反之,若有其他虛擬網路功能要部屬,則再次執行步驟S13-S15,直到所有的網虛擬網路功能都部屬完畢。本發明所述之服務功能鏈之虛擬網路功能部署決策方法,係在ISP業者透過服務功能鏈提供使用者客製化網路服務時,需要同時部署多個虛擬網路功能在雲端環境的實體伺服器中,並將封包依序繞送到不同的虛擬網路功能。 In step S16, it is determined whether there are other virtual network functions that have not yet been deployed, so as to complete the deployment of all virtual network functions when there are no other virtual network functions that have not been deployed, or if there are other virtual networks that have not yet been deployed When functioning, take the computing node that has deployed the virtual network function as a new starting point, and repeat the above steps of searching, judging, and adding weight until all virtual network functions are deployed. This step is to determine whether there are other virtual network functions to be deployed. If not, it means that all virtual network functions are deployed. On the contrary, if there are other virtual network functions to be deployed, steps S13-S15 are executed again until All network virtual network functions are deployed. The virtual network function deployment decision method of the service function chain of the present invention is an entity that needs to simultaneously deploy multiple virtual network functions in a cloud environment when ISP operators provide users with customized network services through the service function chain. In the server, the packets are routed to different virtual network functions in sequence.

由上可知,數個虛擬網路功能經串接組合後將成為一服務功能鏈,本發明將同一服務功能鏈的虛擬網路功能儘量放置在同一台實體伺服器,故能減少使用者在存取虛擬網路功能所經過的實體伺服器數量,此可避免存取服務功能鏈時須經過許多不同的實體伺服器所導致的網路延遲時間問題,再者,將不同服務功能鏈平均放置在不同的實體伺服器,讓每 台實體伺服器的資源使用量能平均分配,如此能將平均服務功能鏈分配到不同的實體伺服器,藉此減少實體伺服器之運算負載。 It can be seen from the above that several virtual network functions will become a service function chain after being cascaded and combined. The present invention places the virtual network functions of the same service function chain on the same physical server as much as possible, thus reducing user presence. Take the number of physical servers that the virtual network function passes through. This can avoid the network delay time problem caused by many different physical servers when accessing the service function chain. Moreover, the different service function chains are evenly placed on Different physical servers, so that every The resource usage of two physical servers can be evenly distributed, so that the average service function chain can be distributed to different physical servers, thereby reducing the computing load of the physical servers.

本發明所述之虛擬網路功能包括防火牆功能、負載平衡功能、閘道功能或轉址功能,但不以此為限。 The virtual network function described in the present invention includes a firewall function, a load balancing function, a gateway function or a forwarding function, but is not limited to this.

第2A-2C圖說明應用本發明所述方法之使用者存取網頁伺服器的運作示意圖,即本發明執行網路功能部署時的相關元件組成範例,本實施例係說明使用者存取網頁伺服器取得網路服務的過程以及各元件之間的關係。 Figures 2A-2C illustrate a schematic diagram of the operation of a user accessing a web server using the method of the present invention, that is, an example of the composition of related components when the present invention executes network function deployment. This embodiment illustrates the user accessing a web server The process of obtaining network services and the relationship between components.

首先,本發明所述方法實際應用時,可配合圖形理論(Graph Theory)來說明,即利用圖形理論將網路拓樸轉換成圖(Graph),實體伺服器轉換為點(Vertex),本發明之實體伺服器包括網路節點(Network Node)與運算節點(Compute Node),兩個實體伺服器之間的網路連線可稱之邊(Edge),邊是沒有方向性的,且每一條邊都有權重(Weight),每當有虛擬網路功能的流量經過時,我們可增加邊的權重,藉以記錄這一條邊有流量經過,如此在部署虛擬網路功能時,選擇權重較小的路徑,亦即虛擬網路功能的流量經過次數較少的路徑,使得網路流量能夠平均分配,減少網路壅塞的情況發生。 First of all, when the method of the present invention is applied in practice, it can be explained with Graph Theory, that is, using graph theory to convert network topology into graph and physical server into vertex, the present invention The physical server includes a network node (Network Node) and a computing node (Compute Node). The network connection between the two physical servers can be called an edge. The edge has no directionality, and each Each side has the weight (Weight). Whenever the traffic with the virtual network function passes, we can increase the weight of the side to record the flow of this side. In this way, when deploying the virtual network function, choose the smaller weight Path, that is, the path that the virtual network function's traffic passes less frequently, so that the network traffic can be evenly distributed, reducing the occurrence of network congestion.

如第2A圖所示,本發明之實體伺服器包括網路節點100與運算節點201、202、203,網路節點100為決策方法的起始位置,使用者500、501在存取虛擬網路功能時,需要先經過此一網路節點100,而運算節點201、202、203為部署虛擬網路功能的實際位置,網頁伺服器(Web Server)401、402、403為本實施例中使用者500、501存取服務的最終站 點。 As shown in Figure 2A, the physical server of the present invention includes a network node 100 and computing nodes 201, 202, and 203. The network node 100 is the starting position of the decision-making method. The users 500 and 501 are accessing the virtual network. When functioning, it needs to pass through this network node 100 first, and the computing nodes 201, 202, and 203 are the actual locations where virtual network functions are deployed. Web servers 401, 402, and 403 are the users in this embodiment. 500, 501 access service's final station point.

使用者500、501存取網頁伺服器401、402、403時,會經過網路節點100及一或數個位於運算節點201、202、203,每一個運算節點201、202、203能執行一或多項虛擬網路功能,在一或數個虛擬網路功能串接組合後,將為服務功能鏈。如第2B圖所示,為使用者500執行網路服務時所串出之服務功能鏈300,又如第2C圖所示,為使用者501執行網路服務時所串出之服務功能鏈300’,虛擬網路功能可包括但不限於以下功能:防火牆(Firewall)功能3100、負載平衡(Load Balancer)功能3200、閘道(Gateway)功能3300、轉址(Network Address Translation,NAT)功能3400等。 When users 500 and 501 access the web servers 401, 402, and 403, they will pass through the network node 100 and one or more of the computing nodes 201, 202, and 203. Each computing node 201, 202, and 203 can execute one or Multiple virtual network functions, after one or several virtual network functions are connected in series, will become a service function chain. As shown in Figure 2B, it is the service function chain 300 when the user 500 executes the network service, and as shown in Figure 2C, it is the service function chain 300 when the user 501 executes the network service. ', virtual network functions may include but are not limited to the following functions: Firewall function 3100, Load Balancer function 3200, Gateway function 3300, Network Address Translation (NAT) function 3400, etc. .

以使用者500為例,其服務功能鏈300包含轉址功能3400和負載平衡功能3200,網路節點100為決策方法的起始位置並執行決策,首先,找出能部屬虛擬網路功能之數量最多的運算節點,即將運算節點202視為選定的運算節點後,接著判斷運算節點202其資源是否足以部署該虛擬網路功能,若足夠,則執行虛擬網路功能之部屬,於本實施例中,運算節點202所部屬的虛擬網路功能為轉址功能3400。 Take user 500 as an example. Its service function chain 300 includes forwarding function 3400 and load balancing function 3200. Network node 100 is the starting position of the decision-making method and executes the decision. First, find out the number of virtual network functions that can be deployed The most computing node, that is, after the computing node 202 is regarded as the selected computing node, it is then determined whether the computing node 202 has sufficient resources to deploy the virtual network function. If it is sufficient, the virtual network function is executed. In this embodiment , The virtual network function of the computing node 202 is the forwarding function 3400.

接著,判斷是否有其他虛擬網路功能需要被部屬,於本實施例有負載平衡功能3200要部屬,因而運算節點202則被視為起始點,尋找下一個能部屬虛擬網路功能之數量最多的運算節點,本實施中即將運算節點201,接著判斷運算節點201其資源是否足以部署該虛擬網路功能,同樣地,若足夠則執行虛擬網路功能之部屬,於本實施例中,運算節點201所部屬的虛擬網路功能為負載平衡功能3200。 Next, determine whether there are other virtual network functions that need to be deployed. In this embodiment, there is a load balancing function 3200 to be deployed. Therefore, the computing node 202 is regarded as the starting point to find the next virtual network function that can be deployed with the largest number In this embodiment, the computing node 201 is the computing node, and then it is judged whether the computing node 201 has enough resources to deploy the virtual network function. Similarly, if it is sufficient, it will execute the subordinate of the virtual network function. In this embodiment, the computing node The virtual network function deployed by 201 is load balancing function 3200.

最後,在判斷沒有其他虛擬網路功能需部屬時,網路連線即可接接至提供網路服務的網頁伺服器402,此整個路徑即為服務功能鏈300。 Finally, when it is determined that no other virtual network functions need to be deployed, the network connection can be connected to the web server 402 that provides network services, and this entire path is the service function chain 300.

第3圖為本發明之服務功能鏈之虛擬網路功能部署決策方法實際應用的流程圖,請一併參考第2圖,假設預計部署數個虛擬網路功能,於流程601及602中,首先以網路節點100為起始點,在每一個與起始點相連之運算節點201、202、203之中找到能夠部署虛擬網路功能數量最多的運算節點,也就是把可用資源最多的運算節點視為選定之運算節點。 Figure 3 is a flowchart of the actual application of the virtual network function deployment decision method of the service function chain of the present invention. Please refer to Figure 2 together. Assuming that several virtual network functions are expected to be deployed, in the processes 601 and 602, first Taking the network node 100 as the starting point, among the computing nodes 201, 202, and 203 connected to the starting point, find the computing node that can deploy the largest number of virtual network functions, that is, the computing node with the most available resources It is regarded as the selected operation node.

於流程603中,表示若同時有多個運算節點都符合條件,則進入流程604,進一步篩選出路徑最短的運算節點,即是找出由起始點至運算節點行經的邊的權重加總數值最小之運算節點,若以第2圖的使用者500為例,被選定之運算節點為運算節點202。另外,若流程603中,只有一個運算節點符合條件,則進入流程605。 In the process 603, it means that if multiple computing nodes meet the conditions at the same time, then the process 604 is entered to further filter the computing node with the shortest path, that is, to find the weight of the edge from the starting point to the computing node plus the total value The smallest computing node, if the user 500 in FIG. 2 is taken as an example, the selected computing node is the computing node 202. In addition, if only one computing node meets the condition in the process 603, then the process 605 is entered.

於流程605中,係依上述條件找到的運算節點202如果資源不足以部署虛擬網路功能時,就進入流程606,即回報管理者資源不足,相反地,若找到的運算節點202資源足以部署虛擬網路功能時,則進入流程607,即部署虛擬網路功能於此一運算節點202。接著進入流程608,將由起始點至此一運算節點202經過的邊增加權重,此表示本次部署之虛擬網路功能經過此路徑,該路徑的連線次數增加,下次部署時,優先權則因權重增加而降低。 In the process 605, if the resources of the computing node 202 found based on the above conditions are insufficient to deploy the virtual network function, the process 606 is entered, that is, the manager is reported to be insufficient in resources. Conversely, if the resources of the found computing node 202 are sufficient to deploy the virtual network function When the network function is used, the process 607 is entered, that is, the virtual network function is deployed on this computing node 202. Then enter the process 608, increase the weight of the edge passed by the computing node 202 from the starting point, which means that the virtual network function deployed this time passes through this path, and the number of connections of the path increases. The priority is then Decrease due to increased weight.

於流程609中,確認是否還有需要部署的虛擬網路功能,若有,進入流程610,以本次找到的運算節點202為起始點,回到流程602尋找可用資源最多的運算節點,以第2圖的使用者500為例,則為運算節點 201,接著,重覆上述流程直至流程611,即所有的虛擬網路功能都部署完成。 In the process 609, confirm whether there are any virtual network functions that need to be deployed. If so, enter the process 610, start with the computing node 202 found this time, and return to the process 602 to find the computing node with the most available resources. As an example, the user 500 in Figure 2 is a computing node 201. Then, repeat the above process until process 611, that is, all virtual network functions are deployed.

綜上所述,目前虛擬網路功能技術仍署新穎技術,許多方面考量尚未成熟,運用在雲端環境時更有許多改進空間,本發明提出服務功能鏈之虛擬網路功能部署決策方法,可解決虛擬網路功能的部署位置決策問題,與現有技術相比,擁有以下的優點:(1)本發明透過計算虛擬網路功能部署位置,使得封包能夠減少不必要的處理或轉送,藉此減少雲端環境下整體的CPU運算量,相對增加實體機之可用資源;(2)本發明透過計算虛擬網路功能部署位置,使得封包經過實體伺服器的數量減少,藉此使外部使用者在存取服務時,能夠擁有較低的網路延遲、減少網路壅塞的情況,使服務擁有更好的品質。 In summary, the current virtual network function technology is still new technology, many considerations are not yet mature, and there is much room for improvement when used in the cloud environment. The present invention proposes a virtual network function deployment decision method for the service function chain, which can solve Compared with the prior art, the virtual network function deployment location decision problem has the following advantages: (1) The present invention calculates the virtual network function deployment location, so that packets can reduce unnecessary processing or forwarding, thereby reducing cloud The overall CPU computing capacity in the environment relatively increases the available resources of the physical machine; (2) The present invention reduces the number of packets passing through the physical server by calculating the virtual network function deployment location, thereby allowing external users to access services At the same time, it can have lower network delay, reduce network congestion, and make the service have better quality.

上述實施形態僅例示性說明本發明之原理及其功效,而非用於限制本發明。任何熟習此項技藝之人士均可在不違背本發明之精神及範疇下,對上述實施形態進行修飾與改變。因此,本發明之權利保護範圍,應如後述之申請專利範圍所列。 The above-mentioned embodiments only exemplarily illustrate the principles and effects of the present invention, and are not intended to limit the present invention. Anyone who is familiar with this technique can modify and change the above-mentioned embodiments without departing from the spirit and scope of the present invention. Therefore, the scope of protection of the rights of the present invention should be listed in the scope of patent application described later.

S11~S16‧‧‧步驟 S11~S16‧‧‧Step

Claims (10)

一種服務功能鏈之虛擬網路功能部署決策方法,係包括: A decision-making method for virtual network function deployment of a service function chain includes: 設定一網路節點為起始點; Set a network node as the starting point; 設定網路中各節點間之網路連線的權重初始值為相同; Set the initial value of the weight of the network connection between each node in the network to be the same; 搜尋與該起始點相連之多個運算節點,找出能部屬虛擬網路功能之數量最多的運算節點以定義為選定之運算節點; Search multiple computing nodes connected to the starting point, find the computing node with the largest number of virtual network functions that can be deployed, and define it as the selected computing node; 判斷該選定之運算節點其資源是否足以部署該虛擬網路功能,以於該選定之運算節點資源充裕下,確定部署該虛擬網路功能於該選定之運算節點; Determine whether the resources of the selected computing node are sufficient to deploy the virtual network function, so as to determine the deployment of the virtual network function on the selected computing node when the selected computing node resources are abundant; 增加一相同數值之權重至從該起始點行經至已部署該虛擬網路功能之運算節點的網路連線;以及 Add a weight of the same value to the network connection from the starting point to the computing node where the virtual network function has been deployed; and 判斷是否存在尚未部署之其他虛擬網路功能,以於不存在未部署之其他虛擬網路功能時完成所有虛擬網路功能部署,或是於尚有未部署之其他虛擬網路功能時,以已部署該虛擬網路功能之運算節點為新起始點,重覆上述搜尋、判斷及增加權重之步驟,直到所有虛擬網路功能皆完成部署。 Determine whether there are other virtual network functions that have not been deployed, so as to complete the deployment of all virtual network functions when there are no other virtual network functions that have not been deployed, or when there are other virtual network functions that have not yet been deployed, the Deploy the computing node of the virtual network function as a new starting point. Repeat the steps of searching, judging, and increasing the weight until all virtual network functions are deployed. 如申請專利範圍第1項所述之服務功能鏈之虛擬網路功能部署決策方法,其中,若同時存在多個可用資源最多之運算節點,於該多個可用資源最多之運算節點之中找出路徑最短之運算節點,以選定該路徑最短之運算節點為該選定之運算節點。 For example, the virtual network function deployment decision method of the service function chain described in the scope of patent application, wherein, if there are multiple computing nodes with the most available resources at the same time, find out among the plurality of computing nodes with the most available resources For the operation node with the shortest path, the operation node with the shortest path is selected as the selected operation node. 如申請專利範圍第2項所述之服務功能鏈之虛擬網路功能部署決策方法,其中,該路徑最短之運算節點係指自該起始點行經至該選定之運算節點之網路連線的權重加總值最小者。 For example, the virtual network function deployment decision method of the service function chain described in the scope of the patent application, wherein the computing node with the shortest path refers to the network connection from the starting point to the selected computing node The one with the smallest total weight. 如申請專利範圍第1項所述之服務功能鏈之虛擬網路功能部署決策方法,其中,若可用資源最多之運算節點僅有一個,則選定為該選定之運算節點。 For example, the virtual network function deployment decision method of the service function chain described in the scope of the patent application, wherein if there is only one computing node with the most available resources, it is selected as the selected computing node. 如申請專利範圍第1項所述之服務功能鏈之虛擬網路功能部署決策方法,其中,若判斷該選定之運算節點其資源不足以部署該虛擬網路功能,則結束該次虛擬網路功能之部屬。 For example, the virtual network function deployment decision method of the service function chain described in the scope of patent application, wherein if it is determined that the resources of the selected computing node are insufficient to deploy the virtual network function, the virtual network function is terminated The subordinate. 如申請專利範圍第1項所述之服務功能鏈之虛擬網路功能部署決策方法,其中,該網路節點為實體伺服器,用於執行所有虛擬網路功能之部署決策。 For example, the virtual network function deployment decision method of the service function chain described in the scope of the patent application, wherein the network node is a physical server for performing deployment decisions of all virtual network functions. 如申請專利範圍第1項所述之服務功能鏈之虛擬網路功能部署決策方法,其中,該多個運算節點皆為實體伺服器,用於供各種虛擬網路功能之部署。 For example, the virtual network function deployment decision method of the service function chain described in the scope of the patent application, wherein the multiple computing nodes are all physical servers for the deployment of various virtual network functions. 如申請專利範圍第1項所述之服務功能鏈之虛擬網路功能部署決策方法,其中,數個虛擬網路功能經串接組合後成為一服務功能鏈。 For example, the virtual network function deployment decision method of the service function chain described in item 1 of the scope of patent application, in which several virtual network functions are combined in series to form a service function chain. 如申請專利範圍第1項所述之服務功能鏈之虛擬網路功能部署決策方法,其中,各節點間之網路連線不具方向性。 For example, the virtual network function deployment decision method of the service function chain described in item 1 of the scope of patent application, in which the network connection between each node is not directional. 如申請專利範圍第1項所述之服務功能鏈之虛擬網路功能部署決策方法,其中,該虛擬網路功能或該其他虛擬網路功能包括防火牆功能、負載平衡功能、閘道功能或轉址功能。 For example, the virtual network function deployment decision method of the service function chain described in the scope of patent application, wherein the virtual network function or the other virtual network function includes firewall function, load balancing function, gateway function or forwarding Features.
TW108144920A 2019-12-09 2019-12-09 Method of virtual network function deployment in service function chain TWI729613B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW108144920A TWI729613B (en) 2019-12-09 2019-12-09 Method of virtual network function deployment in service function chain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108144920A TWI729613B (en) 2019-12-09 2019-12-09 Method of virtual network function deployment in service function chain

Publications (2)

Publication Number Publication Date
TWI729613B true TWI729613B (en) 2021-06-01
TW202123746A TW202123746A (en) 2021-06-16

Family

ID=77516908

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108144920A TWI729613B (en) 2019-12-09 2019-12-09 Method of virtual network function deployment in service function chain

Country Status (1)

Country Link
TW (1) TWI729613B (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104009904A (en) * 2014-05-23 2014-08-27 清华大学 Method and system for establishing virtual network for big data processing of cloud platform
US20160234077A1 (en) * 2015-02-09 2016-08-11 Mellanox Technologies Ltd. Time-efficient network function virtualization architecture
US9843479B2 (en) * 2014-11-04 2017-12-12 Cisco Technology, Inc. System and method for providing dynamic radio access network orchestration
US20170373938A1 (en) * 2016-06-27 2017-12-28 Alcatel-Lucent Usa Inc. Predictive auto-scaling of virtualized network functions for a network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104009904A (en) * 2014-05-23 2014-08-27 清华大学 Method and system for establishing virtual network for big data processing of cloud platform
US9843479B2 (en) * 2014-11-04 2017-12-12 Cisco Technology, Inc. System and method for providing dynamic radio access network orchestration
US20160234077A1 (en) * 2015-02-09 2016-08-11 Mellanox Technologies Ltd. Time-efficient network function virtualization architecture
US20170373938A1 (en) * 2016-06-27 2017-12-28 Alcatel-Lucent Usa Inc. Predictive auto-scaling of virtualized network functions for a network

Also Published As

Publication number Publication date
TW202123746A (en) 2021-06-16

Similar Documents

Publication Publication Date Title
CN111770028B (en) Method and network device for computer network
JP7417825B2 (en) slice-based routing
US10042722B1 (en) Service-chain fault tolerance in service virtualized environments
JP6190966B2 (en) Service deployment for inline service change with multiple instances
Kanagevlu et al. SDN controlled local re-routing to reduce congestion in cloud data center
WO2017025021A1 (en) Method and device for processing flow table
Xiong et al. A mechanism for configurable network service chaining and its implementation
Medhat et al. Near optimal service function path instantiation in a multi-datacenter environment
CN103297347B (en) A kind of load balance process method and device
WO2018108278A1 (en) Flow control in a virtualized communication network
Rhamdani et al. Equal-cost multipath routing in data center network based on software defined network
CN111917567A (en) Network function virtualization
CN A proactive flow admission and re-routing scheme for load balancing and mitigation of congestion propagation in SDN data plane
Pham et al. Load balancing using multipath routing in network functions virtualization
CN105745874A (en) Method and device for determining service function path
Duliński et al. MPLS-based reduction of flow table entries in SDN switches supporting multipath transmission
Moura et al. Resilience enhancement at edge cloud systems
Bharanidharan et al. An enhanced framework for traffic load balancing and QoS provisioning in SDN
TWI729613B (en) Method of virtual network function deployment in service function chain
Ahmad et al. Effectively Handling Network Congestion and Load Balancing in Software-Defined Networking.
Chang et al. Using sdn technology to mitigate congestion in the openstack data center network
WO2015135284A1 (en) Data stream forwarding control method, system and computer storage medium
Adalian et al. Load balancing in LTE core networks using SDN
Chen et al. Dynamic load balancing for software-defined data center networks
Khaliq et al. Enhancing throughput and load balancing in software-defined networks