CN105391635A - Network virtualization method based on software defined network (SDN) - Google Patents

Network virtualization method based on software defined network (SDN) Download PDF

Info

Publication number
CN105391635A
CN105391635A CN201510667519.XA CN201510667519A CN105391635A CN 105391635 A CN105391635 A CN 105391635A CN 201510667519 A CN201510667519 A CN 201510667519A CN 105391635 A CN105391635 A CN 105391635A
Authority
CN
China
Prior art keywords
virtual network
network
module
bandwidth
message
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN201510667519.XA
Other languages
Chinese (zh)
Other versions
CN105391635B (en
Inventor
唐勇
栾谋升
汪文勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
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 University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201510667519.XA priority Critical patent/CN105391635B/en
Publication of CN105391635A publication Critical patent/CN105391635A/en
Application granted granted Critical
Publication of CN105391635B publication Critical patent/CN105391635B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types

Landscapes

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

Abstract

The invention discloses a network virtualization method based on a software defined network (SDN). The network virtualization method comprises the steps of obtaining SDN topology information by a controller through detection in network initialization; creating a virtual network sheet, calling a virtual network generation module by the created virtual network sheet, adding host computers into the virtual network after network creation is finished, adding the host computers into the virtual network sheet, and communication between a certain host computer and another host computer is required, if a switch has a matched flow item, directly forwarding a data package, and if the switch has no matched flow item, transmitting the data package to the controller, calling an information interception module by the controller for intercepting the data package, calling an information analyzing module by the information interception module, waiting for a result which is returned from the information analyzing module, and determining whether to discard the data package. The network virtualization method can be used for flexibly creating a virtual network and is totally driven according to a user requirement and has relatively high expandability. Furthermore the invention provides a relatively good solution for improving network throughput and preventing competition of busy links.

Description

A kind of network virtualization method based on SDN
Technical field
The present invention relates to the virtual field of computer network, exactly relate to a kind of network virtualization method based on SDN.
Background technology
Intel Virtualization Technology is always inseparable with the development of network, the problem " ossify " to solve current internet also stimulates the innovation to future network research, the concept of network virtualization is suggested, network virtualization technology refer to use abstract, distribute and isolation mech isolation test realizes node and link is virtual, built by the physical resource of shared bottom and coexist but mutually isolated diversified virtual network, physical network can according to the virtual resource request realization of dynamic change to the reasonable disposition of physical resource and management.Researcher utilizes Intel Virtualization Technology on existing network architecture basis, to construct logical network to meet specific business demand.As realized the VLAN of user isolation, connect the Virtual Private Network etc. of strange land user.
Now, lot of domestic and international group and academic institution propose to utilize network virtualization to build network experimental platform, using network virtualization technology as the architecture building Next Generation Internet.Comprise GENI(GlobalEnvironmentforNetworkInnovations), it is intended to the large scale experiment platform of a structure General Open, solve conventional internet fail safe, reliability and managerial etc. in deficiency, its design object be structure one programmable, virtualized, meet the global network that heterogeneous networks is interconnected, possess fail safe.GENI can realize user to the access of underlying resource and control; PlantLab project, originate in 2003, initial architecture is by LarryPeterson, the TomAnderson of University of Washington, the DavidCuller Joint Designing of University of California Berkeley of Princeton University, and it is an opening, global experiment platform for next generation network the Internet and service.The computational resource, memory source, Internet resources etc. of node share by multiple stage virtual machine.The virtual machine be made up of multiple stage virtual machine is called as a resource sheet of PlantLab.Multiple resource sheet runs on PlantLab simultaneously, is independent of each other mutually in logic; VegaNet(VirtualGigabitNetwork) project, originates in 2009, is initiated by University of Science & Technology, Beijing, Tsing-Hua University, Beijing University of Post & Telecommunication.The principal character of VegaNet comprises introduces real customer flow, support node and link failure inject, synchronous bottom-layer network fault, virtual router realizes based on real business router platform, support the virtual network flow of high bandwidth, the protocol suite run in virtual network is independent of bottom Physical Network, and virtual network is transparent to bottom physical network; 4WARD project is the sub-project of the scientific and technological framework planning EP7 of European Union the 7th in network technology research field, starts in January, 2008.Its target is the shortcoming being overcome existing communication network by innovation, builds the framework of multiple network that can simultaneously coexist.The virtual framework of 4WARD allows multiple network operation on a general platform, coexisting of multiple network architecture is realized by the virtual of Internet resources Working level, only allow also to coexist multiple network in network layer and transport layer unlike, 4WARD at link layer and application layer multiple network that coexists simultaneously with existing Internet.4WARD can support the terminal use and new network agreement etc. of virtual, the isomery of heterogeneous network simultaneously.Its main research contents comprises the principle and content etc. of network virtualization technology, novel framework.
SDN originates from the cleanstate project of Stanford University the earliest, it is a kind of network architecture of innovation, its core concept is Forwarding plane and control plane decoupling zero, uses the interface of standard to manage the various different network equipment by centralized controller.At present, OpenFlow is used widely as the interface of standard, and master controller is by become more meticulous monitoring and the management of OpenFlow protocol realization to physical switches.Meanwhile, SDN has the advantage of natural network virtualization, and the network virtualization particularly for data center is applied.For the requirement disposed, virtual requirement has the network architecture of centerized fusion, and SDN is exactly exactly a kind of network architecture of centralized management.
Through retrieval, on national patent board web and foreign patent board web, patent is not crossed in the technical scheme application comparatively close with technical scheme, more not close with technical scheme periodical file, does not have the prior art realizing creating virtual network based on SDN yet.
Summary of the invention
The present invention is intended to for the defect existing for above-mentioned prior art and deficiency, a kind of network virtualization method based on SDN is provided, this method not only can create virtual network based on MAC Address, can also based on IP address creation virtual network, virtual network can carry specific application layer energy or some is from and to the flow reaching main frame.
The present invention realizes by adopting following technical proposals:
Based on a network virtualization method of SDN, it is characterized in that:
Step 1, during netinit, controller obtains SDN topology information by detection, comprises exchanger information and link information;
Step 2, exists without any virtual network during netinit, and all bottom-layer network resources wouldn't be used;
Step 3, the prerequisite using Internet resources obtains a virtual network sheet, otherwise cannot use any Internet resources, creates a virtual network sheet, go to step 4;
Step 4, create virtual network sheet and call virtual network generation module, virtual network generation module collects the information of the various required parameter of user, virtual network sheet is created according to required parameter, required parameter comprises the ID of virtual network, name, flow type of isolation and bandwidth demand, establishment completes in backward virtual network adds main frame, goes to step 5;
Step 5, add main frame to virtual network sheet, virtual network is the set of a series of main frame, these host complexes share the resource in virtual network, add the Host Based MAC Address of main frame or the IP address of virtual network sheet to, but same virtual network can only based on a kind of addition manner, as only added host MAC address or only adding host IP address, after main frame has added, go to step 6;
Step 6, when certain main frame needs with another main-machine communication, if switch has the stream list item of coupling, then direct forwarding data bag, if the stream list item that switch does not mate, this packet can mail to controller, goes to step 7;
Step 7, controller message call blocking module tackles this packet, and message block module message call parsing module, goes to step 8, the result that the parsing module that waits for the arrival of news returns, and determines the need of abandoning this packet;
Step 8, message resolution module resolves this packet, whether data query bag comes from certain virtual network, if Query Result belongs to some virtual networks and meet virtual network relevant parameter, notification message blocking module allows this packet to pass through and issues stream table, otherwise notification message blocking module abandons this packet;
Whether data query bag comes from some virtual networks needs to call virtual network mapping block, goes to step 9;
Step 9, virtual network mapping block query mappings relation, determine whether packet belongs to some virtual networks, determine the relevant parameter of virtual network simultaneously, according to the handling process of relevant parameter determination packet, as called flow isolation module, bandwidth virtualization route generation module, if need to call flow isolation module, go to step 10, if need to call bandwidth virtualization route generation module to go to step 11;
Step 10, if specify carried flow in the starting stage that virtual network creates, flow isolation module isolates the flow that all non-virtual networks carry, otherwise can not isolate any type flow;
Step 11, if specify bandwidth demand in the starting stage that virtual network creates, first bandwidth virtualization route generation module calls MM_ATT algorithm and calculates a route, path is installed stream table, and the edge switch outbound port that the main frame then in all virtual networks is connected arranges speed limit queue.
Described virtual network generation module, be used for user's virtual network requests formation logic virtual network sheet slice, the generation of virtual network stems from the request of user, required parameter is determined by user, by controller generating virtual network sheet data structure, and safeguard the mapping of all virtual network relevant parameters.
Described message block module, be used for tackling all packet_in message from bottom physical network, during netinit, cannot use any physical network resource, all bags do not mated all will be transmitted to controller by packet_in message; Establish virtual network before only having, and this packet_in message belongs to the stream at some virtual network places, after message resolution module, allow message to pass through, otherwise abandon this message.
Described message resolution module, for the packet that message block module is tackled, message resolution module parses relevant information, as source IP address, object IP address, source TCP/UDP port numbers, object TCP/UDP port numbers, source MAC, target MAC (Media Access Control) address with enter switch ports themselves number; Meanwhile, determine whether message is broadcast, dhcp message, will not tackle for this kind of message block module.
Described virtual network mapping block, be used for managing all virtual network mapping relations data structures, comprise virtual network ID to the mapping of virtual network, virtual network ID to the mapping of virtual network name, virtual network ID to the mapping of the mapping of virtual network main frame collection, IP address to MAC address and main frame to the mapping of switch ports themselves.These Mapping data structure are kernel data structures of virtual network mapping block.
Described flow isolation module, is used for the particular flow rate of isolation applications layer, as HTTP, FTP and P2P flow; If virtual network specifies the flow of required isolation when creating, flow isolation module process request, and all switches install stream table on path, and these stream tables are the specific bag of coupling only, realizes exact matching.Field as following in exact matching: enter switch ports themselves, source MAC, target MAC (Media Access Control) address, source IP address, object IP address, source transport layer port, object transport layer port.
Described bandwidth virtualization route generation module, be used for the generation of bandwidth virtualization route, bandwidth virtualization meaning is namely for limited bandwidth and the isolation of virtual network, minimum value or the maximum of occupied bandwidth needed for virtual network are generally set, MM_ATT algorithm is utilized to find route for stream, the edge switch outbound port connected at all virtual network main frames arranges some speed limit queues, realizes the speed limit of stream and the generation of route.
The formalized description of described MM_ATT algorithm is: a given network G (V, E), source node s ∈ V, destination node d ∈ V, bandwidth demand b ∈ R.For (i, j) ∈ E, link capacity Cij ∈ R, residual capacity Lij ∈ R, require to find source node to be s, destination node is the path p of d, make the available bandwidth available >=b of path p, available is the least residue capacity of all links on the p of path, requires that bandwidth availability ratio U (p) of p is minimum simultaneously, i.e. U (p)=minU (pi); Wherein V representation node set, E represents link set, and R represents arithmetic number collection, and pi ∈ P, P represent all set of paths from s to d;
Algorithm steps:
(1) deletion figure G link is discontented with the link of sufficient bandwidth requirement, is newly schemed G2=(V, E2).
(2) to the every bar link calculation bandwidth availability ratio Uij in figure G2.
(3) search for all path P from source node s to destination node d, be not more than max_hop with limit jumping figure.
(4) path that a paths bandwidth availability ratio is minimum is found out in the path found from step (3).
Described step 1 comprises further:
Controller cycle ground sends the connection status that LLDP probe data packet detects switch in SDN, safeguards the topological relation of SDN.
Described step 5 comprises further:
Add virtual network belonging to main frame identify by the ID of virtual network, while the given host port that is connected with switch.The host address added identifies with the address format of standard;
Described step 8 comprises further:
Whether data query bag comes from some virtual networks is determined by the source address of packet and destination address, if the main frame representated by these addresses is all in the host complexes of virtual network, then this packet belongs to this virtual network, otherwise directly abandons this packet;
Described step 9 comprises further:
Whether virtual network mapping block first data query bag belongs to some virtual networks, further the parameter attribute of inquiry virtual network.Specifically comprise: virtual network only carry specify source and destination address, the isolation of application layer traffic, bandwidth demand.The wherein flow of " virtual network only carries the source and destination address of specifying ", only needs simply to judge whether the source and destination address of packet mates in network mapping module.
Described step 10 comprises further:
Flow isolation module isolates the application layer traffic of specifying, comprise the flows such as HTTP, FTP, P2P, the transport layer port standardization that these standard application layer flows use, flow isolation module determines the application layer traffic on upper strata by the source transport layer port of packet and object transport layer port, realizes the object of flow isolation.
Described step 11 comprises further:
Bandwidth virtualization route generation module generates route and needs the port speed arranging edge switch after issuing stream table, some speed limit queues can be configured at switch ports themselves, queue specified queue id, the minimum transmission rate of queue, the maximum transmission rate of queue, then special flow list item is added at edge switch, the port particular queue configured before the stream that the instruction of this stream list item arrives from certain port is directed to, reaches the object of flow accurate speed limit.
Compared with prior art, the beneficial effect that reaches of the present invention is as follows:
1, system this method formed, can be used as an application module on controller, with the pluggable kit form of one, achieving and add flexibly and delete, when not needing virtual network function, in configuration file, deleting this.The method can create virtual network flexibly, is driven by user's request completely, has good autgmentability.Simultaneously for promoting the throughput of network and avoiding the competition of hot-spot link to it is also proposed solution preferably.
2, the technical program is by dividing the mode of virtual network, creates virtual network neatly and arranges virtual network parameter, multiple virtual network Share and concomitance Internet resources.This programme not only can create virtual network based on MAC Address, can also based on IP address creation virtual network.Virtual network can carry specific application layer energy or some is from/to the flow reaching main frame.
3, the technical program adopts MM_ATT algorithm, for the link having the virtual network of bandwidth demand to select a relative free, the routing principle of this algorithm is to locate the minimum path of a paths bandwidth availability ratio, thus under the prerequisite ensureing virtual network bandwidth demand, make path remaining bandwidth maximum, thus the throughput of overall network is effectively promoted.Arrange speed limit queue at all virtual network main frame edge switch outbound ports after finding route, the flow of injection virtual network can not be greater than the bandwidth demand required by it, thus well control burst flow simultaneously.
Accompanying drawing explanation
Below in conjunction with specification drawings and specific embodiments, the present invention is described in further detail, wherein:
Fig. 1 is the module map of a kind of network virtualization method based on SDN of the present invention.
Fig. 2 is that the embodiment of the present invention is based on the mutual communication flow diagram of main frame in the virtual network of MAC Address.
Fig. 3 is the mutual communication flow diagram of main frame in the IP address-based virtual network of the embodiment of the present invention.
Fig. 4 is that the embodiment of the present invention is based on MM_ATT algorithm pathfinding topology schematic diagram.
Embodiment
Embodiment 1
As the preferred forms of the technical program, with reference to the network topology of Fig. 1 and the handling process of Fig. 2, first this example sets up virtual network based on MAC Address, virtual network relevant parameter is set and adds some main frames, the mutual communication process of main frame in concise and to the point description virtual network, concrete steps are as follows:
Step 1, newly-built virtual network slice1, specify virtual network name and id, specify and set up virtual network based on MAC Address, target flow isolation parameters is http flow, and the bandwidth requirement of specifying virtual network is bandwidth;
Step 2, add main frame h1, h3, h4 to virtual network slice1, its mac address is respectively mac1, mac3, mac4.Host address set now in virtual network slice1 is { mac1, mac3, mac4};
Step 3, main frame h1 sends http packet toward h4, and first this packet arrives switch s1, if switch s1 does not have the stream list item that can mate, this packet will be forwarded to controller, by controller process.If switch s1 has the stream list item of coupling, then directly forward this packet;
Step 4, this packet of message block block intercepts of controller, gives message resolution module process, goes to step 5;
Step 5, message resolution module obtains this packet, starts to resolve this packet, if cause resolving unsuccessfully due to any reason, abandons this packet, goes to step 9.Otherwise give virtual network mapping block, go to step 6;
Step 6, virtual network mapping block, according to the correlation map data structure stored, searches the mac address, source of packet and object mac address whether in same virtual network, if in a virtual network, give flow isolation module, go to step 7.Otherwise packet discard, goes to step 9.Here mac1 and mac4 belongs to the host complexes of virtual network slice1, therefore will go to step 7;
Step 7, by the parameter of searching virtual network, flow isolation module determines whether this flow is the flow that virtual network needs isolation, if not then give the process of bandwidth virtualization route generation module, goes to step 8.Otherwise module needs to isolate this flow, packet discard, goes to step 9.Here flow isolation module does not need isolation http flow, therefore goes to step 8 process;
Step 8, whether bandwidth virtualization route generation module searches this virtual network has bandwidth requirement, if do not have bandwidth requirement, directly issues stream table, forwards.Otherwise generate route by bandwidth virtualization route generation module, on path, all switches install stream table, and arrange speed limit queue at the edge switch outbound port that virtual network place main frame connects.The route of hypotheses creation is: s1-s6-s5-s4, then speed limit queue can be set at the port s4-s5 of port s1-s6 and s4 of s1, packet from h1 to h4 can be directed to the speed limit queue that port s1-s6 has set, and the packet from h4 to h1 can be directed to the speed limit queue that port s4-s5 has set;
Step 9, process terminates;
Embodiment 2
As the preferred forms of the technical program, with reference to Fig. 4, example illustrates how to utilize MM_ATT algorithm to find out Routing Algorithm network throughput being got a promotion, avoids hot spot for competition link, concrete steps are as follows:
Step 1, needs the bandwidth availability ratio calculating every bar link in initialization procedure.
Step 2, deletes the link that all remaining bandwidths do not meet virtual network bandwidth requirement, the topology after deletion as shown in Figure 4, the bandwidth availability ratio (unit: %) of this link of digitized representation in chain roadside.
Step 3, suppose the route needing to calculate s1 to s11, first we arrange max_hop=6, and algorithm is by the route of depth-first search s1 to s11, the route that this algorithm finds is: s1-s0-s3-s8-s10-s11, bandwidth availability ratio on this path is 4,6,6,6,4, can find that the maximum bandwidth utilance on this path is 6, this bandwidth availability ratio is the minimum value of all path bandwidth utilances from s1 to s11.If arrange max_hop=5, the route that algorithm finds is s1-s0-s3-s8-s11, bandwidth availability ratio on this path is 4,6,6,8, can find that on this path, maximum bandwidth utilance is 8, although this numeral is larger than arranging the numeral that max_hop=6 finds, this path is shorter, search complexity being reduced further, during actual use, search time can be reduced by regulating the size of max_hop parameter.
Generally speaking, as far as possible algorithm routing principle finds a paths, makes this path remaining bandwidth more sufficient, avoid hot-spot link, thus adds somewhat to the throughput of network, reach the object that network bandwidth resources effectively utilizes.
Embodiment 3
As another better embodiment of this method, it comprises:
Step 1, during netinit, controller obtains SDN topology information by detection, comprises exchanger information and link information;
Step 2, exists without any virtual network during netinit, and all bottom-layer network resources wouldn't be used;
Step 3, the prerequisite using Internet resources obtains a virtual network sheet, otherwise cannot use any Internet resources, creates a virtual network sheet, go to step 4;
Step 4, create virtual network sheet and call virtual network generation module, virtual network generation module collects the information of the various required parameter of user, virtual network sheet is created according to required parameter, required parameter comprises the ID of virtual network, name, flow type of isolation and bandwidth demand, establishment completes in backward virtual network adds main frame, goes to step 5;
Step 5, add main frame to virtual network sheet, virtual network is the set of a series of main frame, these host complexes share the resource in virtual network, add the Host Based MAC Address of main frame or the IP address of virtual network sheet to, but same virtual network can only based on a kind of addition manner, as only added host MAC address or only adding host IP address, after main frame has added, go to step 6;
Step 6, when certain main frame needs with another main-machine communication, if switch has the stream list item of coupling, then direct forwarding data bag, if the stream list item that switch does not mate, this packet can mail to controller, goes to step 7;
Step 7, controller message call blocking module tackles this packet, and message block module message call parsing module, goes to step 8, the result that the parsing module that waits for the arrival of news returns, and determines the need of abandoning this packet;
Step 8, message resolution module resolves this packet, whether data query bag comes from certain virtual network, if Query Result belongs to some virtual networks and meet virtual network relevant parameter, notification message blocking module allows this packet to pass through and issues stream table, otherwise notification message blocking module abandons this packet;
Whether data query bag comes from some virtual networks needs to call virtual network mapping block, goes to step 9;
Step 9, virtual network mapping block query mappings relation, determine whether packet belongs to some virtual networks, determine the relevant parameter of virtual network simultaneously, according to the handling process of relevant parameter determination packet, as called flow isolation module, bandwidth virtualization route generation module, if need to call flow isolation module, go to step 10, if need to call bandwidth virtualization route generation module to go to step 11;
Step 10, if specify carried flow in the starting stage that virtual network creates, flow isolation module isolates the flow that all non-virtual networks carry, otherwise can not isolate any type flow;
Step 11, if specify bandwidth demand in the starting stage that virtual network creates, first bandwidth virtualization route generation module calls MM_ATT algorithm and calculates a route, path is installed stream table, and the edge switch outbound port that the main frame then in all virtual networks is connected arranges speed limit queue.
Embodiment 4
Adopt this method formed system, its its mainly comprise: virtual network generation module, message block module, message resolution module, virtual network mapping block, flow isolation module, bandwidth virtualization route generation module.
Described virtual network generation module, be used for user's virtual network requests formation logic virtual network sheet slice, the generation of virtual network stems from the request of user, required parameter is determined by user, by controller generating virtual network sheet data structure, and safeguard the mapping of all virtual network relevant parameters.
Described message block module, be used for tackling all packet_in message from bottom physical network, during netinit, cannot use any physical network resource, all bags do not mated all will be transmitted to controller by packet_in message.Establish virtual network before only having, and this packet_in message belongs to the stream at some virtual network places, after message resolution module, allow message to pass through, otherwise abandon this message.
Described message resolution module, for the packet that message block module is tackled, message resolution module parses relevant information, as source IP address, object IP address, source TCP/UDP port numbers, object TCP/UDP port numbers, source MAC, target MAC (Media Access Control) address, enters switch ports themselves number.Meanwhile, determine whether message is broadcast, dhcp message, will not tackle for this kind of message block module.
Described virtual network mapping block, be used for managing all virtual network mapping relations data structures, comprise virtual network ID to the mapping of virtual network, virtual network ID to the mapping of virtual network name, virtual network ID to the mapping of the mapping of virtual network main frame collection, IP address to MAC address and main frame to the mapping of switch ports themselves.These Mapping data structure are kernel data structures of virtual network mapping block.
Described flow isolation module, is used for the particular flow rate of isolation applications layer, as HTTP, FTP, P2P flow etc.If virtual network specifies the flow of required isolation when creating, flow isolation module process request, and all switches install stream table on path, these stream tables are the specific bag of coupling only, realize exact matching, field as following in exact matching: enter switch ports themselves, source MAC, target MAC (Media Access Control) address, source IP address, object IP address, source transport layer port, object transport layer port.
Described bandwidth virtualization route generation module, be used for the generation of bandwidth virtualization route, bandwidth virtualization meaning is namely for limited bandwidth and the isolation of virtual network, minimum value or the maximum of occupied bandwidth needed for virtual network are generally set, MM_ATT algorithm is utilized to find route for stream, the edge switch outbound port connected at all virtual network main frames arranges some speed limit queues, realizes the speed limit of stream and the generation of route.MM_ATT algorithm is described in detail in detail below:
MM-ATT is a kind of algorithm comprising two kinds of demands, (1) first, bandwidth demand is specified when creating virtual network, Min-MaxBandwidthUtilization algorithm is then utilized to find a paths, for the switch on path issues stream table, simultaneously, in the flow outbound port configuration speed limit queue of all edge switch, these queues specify the maximum bandwidth of outlet, corresponding bandwidth demand of specifying when creating virtual network, therefore these streams outwards may inject flow to be greater than the bandwidth rates of specifying never; (2) secondly, do not have nominated bandwidth demand when creating virtual network, the stream randomness operated in this virtual network is larger, and bandwidth fluctuation uncertainty is larger.According to the Routing Algorithm of controller routine, for this stream selects route, issue stream table.The bandwidth availability ratio of monitoring control devices link, if when link bandwidth utilization rate is greater than specified trigger conditions, use Min-MaxBandwidthUtilization algorithm is the path of the other relative free of stream selection of the non-bandwidth demand of this link, and this circulation is moved on to this path.
Therefore, when the bandwidth availability ratio of certain link is greater than trigger condition, the circulation of non-for this link nominated bandwidth demand can be moved on to other links, this link is unborn has the stream of bandwidth demand to be transferred, and the stream be transferred is all the stream of those non-nominated bandwidth demands.
Min-MaxBandwidthUtilization, Minimize Maximum Link Utilization: make selected path bandwidth utilance minimum, path bandwidth utilance is all link bandwidth utilization rate maximums on path.As far as possible this algorithm target makes path bandwidth utilance minimum, avoids crowded link, use the link of those relative free.Meanwhile, this algorithm makes the remaining bandwidth on link more, can arrive the demand of stream by As soon as possible Promising Policy later.
Formalized description: a given network G (V, E), source node s ∈ V, destination node d ∈ V, bandwidth demand b ∈ R.For (i, j) ∈ E, link capacity C ij∈ R, residual capacity L ij∈ R, requirement finds source node to be s, destination node is the path p of d, make the available bandwidth available>=b of path p, available is the least residue capacity of all links on the p of path, require that bandwidth availability ratio U (p) of p is minimum, i.e. U (p)=minU (pi) simultaneously.Wherein V representation node set, E represents link set, and R represents arithmetic number collection, and pi ∈ P, P represent all set of paths from s to d.
Algorithm steps:
(1) deletion figure G link is discontented with the link of sufficient bandwidth requirement, is newly schemed G 2=(V, E 2).
(2) to figure G 2in every bar link calculation bandwidth availability ratio U ij.
(3) all path P from source node s to destination node d of depth-first search, are not more than max_hop with limit jumping figure.
(4) path that a paths bandwidth availability ratio is minimum is found out in the path found from step (3).
For the pathfinding of this algorithm see shown in embodiment 2.

Claims (10)

1., based on a network virtualization method of SDN, it is characterized in that:
Step 1, during netinit, controller obtains SDN topology information by detection, comprises exchanger information and link information;
Step 2, exists without any virtual network during netinit, and all bottom-layer network resources wouldn't be used;
Step 3, creates a virtual network sheet, goes to step 4;
Step 4, create virtual network sheet and call virtual network generation module, virtual network generation module collects the information of the various required parameter of user, virtual network sheet is created according to required parameter, required parameter comprises the ID of virtual network, name, flow type of isolation and bandwidth demand, establishment completes in backward virtual network adds main frame, goes to step 5;
Step 5, adds main frame to virtual network sheet, adds the Host Based MAC Address of main frame or the IP address of virtual network sheet to, same virtual network can only based on a kind of addition manner, as only added host MAC address or only adding host IP address, after main frame has added, go to step 6;
Step 6, when certain main frame needs with another main-machine communication, if switch has the stream list item of coupling, then direct forwarding data bag, if the stream list item that switch does not mate, this packet can mail to controller, goes to step 7;
Step 7, controller message call blocking module tackles this packet, and message block module message call parsing module, goes to step 8, the result that the parsing module that waits for the arrival of news returns, and determines the need of abandoning this packet;
Step 8, message resolution module resolves this packet, whether data query bag comes from certain virtual network, if Query Result belongs to some virtual networks and meet virtual network relevant parameter, notification message blocking module allows this packet to pass through and issues stream table, otherwise notification message blocking module abandons this packet.
2. a kind of network virtualization method based on SDN according to claim 1, is characterized in that: whether data query bag comes from some virtual networks needs to call virtual network mapping block, goes to step 9;
Step 9, virtual network mapping block query mappings relation, determine whether packet belongs to some virtual networks, determine the relevant parameter of virtual network simultaneously, according to the handling process of relevant parameter determination packet, as called flow isolation module, bandwidth virtualization route generation module, if need to call flow isolation module, go to step 10, if need to call bandwidth virtualization route generation module to go to step 11;
Step 10, if specify carried flow in the starting stage that virtual network creates, flow isolation module isolates the flow that all non-virtual networks carry, otherwise can not isolate any type flow;
Step 11, if specify bandwidth demand in the starting stage that virtual network creates, first bandwidth virtualization route generation module calls MM_ATT algorithm and calculates a route, path is installed stream table, and the edge switch outbound port that the main frame then in all virtual networks is connected arranges speed limit queue.
3. a kind of network virtualization method based on SDN according to claim 1 and 2, it is characterized in that: described virtual network generation module, be used for user's virtual network requests formation logic virtual network sheet slice, the generation of virtual network stems from the request of user, required parameter is determined by user, by controller generating virtual network sheet data structure, and safeguard the mapping of all virtual network relevant parameters.
4. a kind of network virtualization method based on SDN according to claim 1 and 2, it is characterized in that: described message block module, be used for tackling all packet_in message from bottom physical network, during netinit, cannot use any physical network resource, all bags do not mated all will be transmitted to controller by packet_in message; Establish virtual network before only having, and this packet_in message belongs to the stream at some virtual network places, after message resolution module, allow message to pass through, otherwise abandon this message.
5. a kind of network virtualization method based on SDN according to claim 1 and 2, it is characterized in that: described message resolution module, for the packet that message block module is tackled, message resolution module parses relevant information, as source IP address, object IP address, source TCP/UDP port numbers, object TCP/UDP port numbers, source MAC, target MAC (Media Access Control) address with enter switch ports themselves number; Meanwhile, determine whether message is broadcast, dhcp message, will not tackle for this kind of message block module.
6. a kind of network virtualization method based on SDN according to claim 1 and 2, it is characterized in that: described virtual network mapping block, be used for managing all virtual network mapping relations data structures, comprise virtual network ID to the mapping of virtual network, virtual network ID to the mapping of virtual network name, virtual network ID to the mapping of the mapping of virtual network main frame collection, IP address to MAC address and main frame to the mapping of switch ports themselves.
7. a kind of network virtualization method based on SDN according to claim 1 and 2, is characterized in that: described flow isolation module, is used for the particular flow rate of isolation applications layer, as HTTP, FTP and P2P flow; If virtual network specifies the flow of required isolation when creating, flow isolation module process request, and all switches install stream table on path, and these stream tables are the specific bag of coupling only, realizes exact matching.
8. a kind of network virtualization method based on SDN according to claim 1 and 2, it is characterized in that: described bandwidth virtualization route generation module, be used for the generation of bandwidth virtualization route, bandwidth virtualization meaning is namely for limited bandwidth and the isolation of virtual network, minimum value or the maximum of occupied bandwidth needed for virtual network are generally set, MM_ATT algorithm is utilized to find route for stream, the edge switch outbound port connected at all virtual network main frames arranges some speed limit queues, realizes the speed limit of stream and the generation of route.
9. a kind of network virtualization method based on SDN according to claim 1 and 2, it is characterized in that: the formalized description of described MM_ATT algorithm is: a given network G (V, E), source node s ∈ V, destination node d ∈ V, bandwidth demand b ∈ R.
10. for (i, j) ∈ E, link capacity Cij ∈ R, residual capacity Lij ∈ R, require to find source node to be s, destination node is the path p of d, make the available bandwidth available >=b of path p, available is the least residue capacity of all links on the p of path, requires that bandwidth availability ratio U (p) of p is minimum simultaneously, i.e. U (p)=minU (pi); Wherein V representation node set, E represents link set, and R represents arithmetic number collection, and pi ∈ P, P represent all set of paths from s to d;
Algorithm steps:
(1) deletion figure G link is discontented with the link of sufficient bandwidth requirement, is newly schemed G2=(V, E2);
(2) to the every bar link calculation bandwidth availability ratio Uij in figure G2;
(3) search for all path P from source node s to destination node d, be not more than max_hop with limit jumping figure;
(4) path that a paths bandwidth availability ratio is minimum is found out in the path found from step (3).
CN201510667519.XA 2015-10-16 2015-10-16 A kind of network virtualization method based on SDN Active CN105391635B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510667519.XA CN105391635B (en) 2015-10-16 2015-10-16 A kind of network virtualization method based on SDN

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510667519.XA CN105391635B (en) 2015-10-16 2015-10-16 A kind of network virtualization method based on SDN

Publications (2)

Publication Number Publication Date
CN105391635A true CN105391635A (en) 2016-03-09
CN105391635B CN105391635B (en) 2018-10-16

Family

ID=55423483

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510667519.XA Active CN105391635B (en) 2015-10-16 2015-10-16 A kind of network virtualization method based on SDN

Country Status (1)

Country Link
CN (1) CN105391635B (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105763438A (en) * 2016-04-29 2016-07-13 清华大学 Content delivery method based on software defined network and name routing technology
CN107070766A (en) * 2017-04-25 2017-08-18 福州大学 The virtual network construction method of language is may be programmed based on software definition datum plane
WO2017167151A1 (en) * 2016-03-30 2017-10-05 Huawei Technologies Co., Ltd. Multiple provider framework for virtual switch data planes and data plane migration
CN107682258A (en) * 2017-09-27 2018-02-09 北京邮电大学 A kind of multi-path network transmission method and device based on virtualization
CN107786458A (en) * 2017-11-02 2018-03-09 下代互联网重大应用技术(北京)工程研究中心有限公司 The method that multiport access standard based on DPDK goes out
CN108650112A (en) * 2018-04-02 2018-10-12 郑州云海信息技术有限公司 A kind of the network virtualization design system and method for data center's total management system
CN110300139A (en) * 2018-03-23 2019-10-01 北方工业大学 Point-to-point content distribution method
CN110753054A (en) * 2019-10-25 2020-02-04 电子科技大学 Anonymous communication method based on SDN
CN111049747A (en) * 2019-12-18 2020-04-21 北京计算机技术及应用研究所 Intelligent virtual network path planning method for large-scale container cluster
CN116938811A (en) * 2023-09-18 2023-10-24 北京慧嘉科技有限公司 SDN routing method and routing system based on virtual network mapping

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013139298A1 (en) * 2012-03-22 2013-09-26 Huawei Technologies Co., Ltd. Supporting software defined networking with application layer traffic optimization
CN103905523A (en) * 2013-12-23 2014-07-02 浪潮(北京)电子信息产业有限公司 Cloud computing network virtualization method and system based on SDN
CN104717683A (en) * 2015-03-26 2015-06-17 清华大学 User request processing method based on software-defined network southing interface protocol
CN104767676A (en) * 2014-01-03 2015-07-08 华为技术有限公司 Data message forwarding method and data message forwarding system in software defined network (SDN)

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013139298A1 (en) * 2012-03-22 2013-09-26 Huawei Technologies Co., Ltd. Supporting software defined networking with application layer traffic optimization
CN103905523A (en) * 2013-12-23 2014-07-02 浪潮(北京)电子信息产业有限公司 Cloud computing network virtualization method and system based on SDN
CN104767676A (en) * 2014-01-03 2015-07-08 华为技术有限公司 Data message forwarding method and data message forwarding system in software defined network (SDN)
CN104717683A (en) * 2015-03-26 2015-06-17 清华大学 User request processing method based on software-defined network southing interface protocol

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10469374B2 (en) 2016-03-30 2019-11-05 Futurewei Technologies, Inc. Multiple provider framework for virtual switch data planes and data plane migration
WO2017167151A1 (en) * 2016-03-30 2017-10-05 Huawei Technologies Co., Ltd. Multiple provider framework for virtual switch data planes and data plane migration
CN105763438A (en) * 2016-04-29 2016-07-13 清华大学 Content delivery method based on software defined network and name routing technology
CN105763438B (en) * 2016-04-29 2018-08-28 清华大学 A kind of content distribution method based on software defined network Yu name route technology
CN107070766A (en) * 2017-04-25 2017-08-18 福州大学 The virtual network construction method of language is may be programmed based on software definition datum plane
CN107070766B (en) * 2017-04-25 2019-11-05 福州大学 It may be programmed the virtual network construction method of language based on software definition data plane
CN107682258A (en) * 2017-09-27 2018-02-09 北京邮电大学 A kind of multi-path network transmission method and device based on virtualization
CN107786458A (en) * 2017-11-02 2018-03-09 下代互联网重大应用技术(北京)工程研究中心有限公司 The method that multiport access standard based on DPDK goes out
CN107786458B (en) * 2017-11-02 2021-06-25 下一代互联网重大应用技术(北京)工程研究中心有限公司 DPDK-based multi-port access and egress method
CN110300139A (en) * 2018-03-23 2019-10-01 北方工业大学 Point-to-point content distribution method
CN110300139B (en) * 2018-03-23 2021-11-23 北方工业大学 Point-to-point content distribution method
CN108650112A (en) * 2018-04-02 2018-10-12 郑州云海信息技术有限公司 A kind of the network virtualization design system and method for data center's total management system
CN110753054A (en) * 2019-10-25 2020-02-04 电子科技大学 Anonymous communication method based on SDN
CN111049747A (en) * 2019-12-18 2020-04-21 北京计算机技术及应用研究所 Intelligent virtual network path planning method for large-scale container cluster
CN116938811A (en) * 2023-09-18 2023-10-24 北京慧嘉科技有限公司 SDN routing method and routing system based on virtual network mapping
CN116938811B (en) * 2023-09-18 2024-05-07 厦门市佐云佑网科技有限公司 SDN routing method and routing system based on virtual network mapping

Also Published As

Publication number Publication date
CN105391635B (en) 2018-10-16

Similar Documents

Publication Publication Date Title
CN105391635A (en) Network virtualization method based on software defined network (SDN)
CN109561108B (en) Policy-based container network resource isolation control method
Huang et al. A survey of deployment solutions and optimization strategies for hybrid SDN networks
US9979605B2 (en) Virtualization mapping
CN104253770B (en) Realize the method and apparatus of the distributed virtual switch system
TW202026896A (en) Asynchronous object manager in a network routing environment
US7039720B2 (en) Dense virtual router packet switching
KR101615691B1 (en) Chassis controllers for converting universal flows
US7242665B2 (en) Network device virtual interface
CN102457439B (en) Virtual switching system and method of cloud computing system
CN112187517B (en) Configuration method, platform and controller for SDN virtual routing of data center
WO2021007963A1 (en) Route distribution method and controller, information routing method and network node device
CN105871718B (en) A kind of SDN inter-domain routing implementation method
CN100505692C (en) High performance router BGP routing protocol distribution parallel realizing method
CN109218053A (en) Implementation method, system and the storage medium of virtual data center
CN104303467A (en) Integrated heterogeneous software-defined network
CN102957619B (en) Virtual route system and method
CN104104534A (en) Realization method of virtual network (VN) management and virtual network management system
CN109714238A (en) A kind of method and apparatus for realizing inter-virtual machine communication
CN105897465A (en) Equipment configuration method and apparatus
CN108737272A (en) High-performance routing conversion in a kind of cloud computing
CN103997513A (en) Programmable virtual network service system
CN104363170A (en) Data flow forwarding method and device in software defined network (SDN)
CN105471747A (en) Intelligent router routing method and apparatus thereof
CN114301868A (en) Method for quickly generating floating IP of virtual container and method and device for network direct connection

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant