CN111404705B - SDN optimization method and device and computer readable storage medium - Google Patents

SDN optimization method and device and computer readable storage medium Download PDF

Info

Publication number
CN111404705B
CN111404705B CN201910000505.0A CN201910000505A CN111404705B CN 111404705 B CN111404705 B CN 111404705B CN 201910000505 A CN201910000505 A CN 201910000505A CN 111404705 B CN111404705 B CN 111404705B
Authority
CN
China
Prior art keywords
sdn
rule
packet
physical switch
data
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.)
Active
Application number
CN201910000505.0A
Other languages
Chinese (zh)
Other versions
CN111404705A (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.)
China Mobile Communications Group Co Ltd
China Mobile Communications Ltd Research Institute
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Communications Ltd Research Institute
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 China Mobile Communications Group Co Ltd, China Mobile Communications Ltd Research Institute filed Critical China Mobile Communications Group Co Ltd
Priority to CN201910000505.0A priority Critical patent/CN111404705B/en
Publication of CN111404705A publication Critical patent/CN111404705A/en
Application granted granted Critical
Publication of CN111404705B publication Critical patent/CN111404705B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers

Landscapes

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

Abstract

The invention discloses an optimization method, a device and a computer-readable storage medium of a Software Defined Network (SDN), wherein the method comprises the following steps: when a first data packet in a data stream is received, the first data packet is sent to a virtual switch.

Description

SDN optimization method and device and computer readable storage medium
Technical Field
The present invention relates to software defined networking technologies, and in particular, to an optimization method and apparatus for SDN and a computer readable storage medium.
Background
The forwarding control function of a software defined network (SDN, software Defined Network) relies on communication between a controller and forwarding devices, and if the communication efficiency between the controller and forwarding devices becomes a bottleneck, the performance of the SDN will be affected. In current SDNs, the CPU on the switch typically has very limited processing and computing power, and therefore the components OFA (Openflow Agent) of the control plane on the switch also have very limited processing and computing power. While this design meets the initial intent of an SDN, namely pulling the control plane away from the switch and keeping the organization of the switch simple, it also limits the control plane traffic to some extent. In case of a network attack (e.g. DDos) or a large number of new data flows in the network, the control plane traffic increases drastically, the workload of the OFA on the switch will exceed its processing capacity, and the data flows will not be processed in time, thus affecting the performance of the whole SDN.
In summary, the communication capability between the OFA of the physical switch and the central controller is one of the bottlenecks of SDN network performance, and the essential reason for this phenomenon is the extreme mismatch of the switch control plane processing capability and the data plane forwarding capability.
Disclosure of Invention
To solve the above technical problems, an embodiment of the present invention provides a method for improving scalability and stability of a software defined network SDN, applied to a physical switch, where the method includes:
when a first data packet in a data stream is received, the first data packet is sent to a virtual switch.
The embodiment of the invention provides an SDN optimization method which is applied to a physical switch and comprises the following steps:
selecting to execute the first rule or the second rule based on a preset strategy;
wherein the first rule includes: when a first data packet in a data stream is received, the first data packet is sent to a virtual switch;
the second rule includes: when a first data packet in a data flow is received, the first data packet is sent to an SDN controller.
Wherein the preset policy comprises one of the following items:
the policy is executed in turn, the policy is selected randomly, and the data flow characteristics are selected randomly.
The embodiment of the invention provides an SDN optimization method which is applied to an SDN controller, and comprises the following steps:
generating first configuration information, wherein the first configuration information comprises: when a physical switch receives a first data packet in a data stream, the first data packet is sent to a virtual switch;
and sending the first configuration information to a physical switch.
Before the first configuration information is sent to the physical switch, the method includes:
and determining that the control plane of the physical switch is overloaded or determining to trigger a first preset condition.
The embodiment of the invention provides an SDN optimization method which is applied to an SDN controller, and comprises the following steps:
generating first configuration information, wherein the first configuration information comprises: based on a preset policy, the physical switch selects to execute a first rule or a second rule, wherein the first rule comprises: when a first data packet in a data stream is received, the first data packet is sent to a virtual switch, and the second rule includes: when a first data packet in a data flow is received, sending the first data packet to an SDN controller;
and sending the first configuration information to a physical switch.
Wherein the preset policy comprises one of the following items:
the policy is executed in turn, the policy is selected randomly, and the data flow characteristics are selected randomly.
Before the first configuration information is sent to the physical switch, the method includes:
and determining that the control plane of the physical switch is overloaded or determining to trigger a first preset condition.
An embodiment of the present invention provides an optimizing apparatus for an SDN, where the apparatus includes:
a receiving module for receiving a first data packet in the data stream,
and the sending module is used for sending the first data packet to the virtual switch.
An embodiment of the present invention provides an optimizing apparatus for an SDN, where the apparatus includes:
the selection execution module is used for selecting to execute the first rule or the second rule based on a preset strategy; wherein the first rule includes: when a first data packet in a data stream is received, the first data packet is sent to a virtual switch; the second rule includes: when a first data packet in a data flow is received, the first data packet is sent to an SDN controller.
Wherein, in the selection execution module, the preset strategy comprises one of the following content items:
the policy is executed in turn, the policy is selected randomly, and the data flow characteristics are selected randomly.
An embodiment of the present invention provides an optimizing apparatus for an SDN, where the apparatus includes:
the generating module is configured to generate first configuration information, where the first configuration information includes: when a physical switch receives a first data packet in a data stream, the first data packet is sent to a virtual switch;
and the sending module is used for sending the first configuration information to a physical switch.
Wherein the device also comprises a determining module which is connected with the sending module,
the determining module is configured to determine that a control plane of the physical switch is overloaded, or determine to trigger a first preset condition.
An embodiment of the present invention provides an optimizing apparatus for an SDN, where the apparatus includes:
the generating module is configured to generate first configuration information, where the first configuration information includes: based on a preset policy, the physical switch selects to execute a first rule or a second rule, wherein the first rule comprises: when a first data packet in a data stream is received, the first data packet is sent to a virtual switch, and the second rule includes: when a first data packet in a data flow is received, sending the first data packet to an SDN controller;
and the sending module is used for sending the first configuration information to a physical switch.
Wherein, in the generating module, the preset policy includes one of the following content items:
the policy is executed in turn, the policy is selected randomly, and the data flow characteristics are selected randomly.
Wherein the device also comprises a determining module which is connected with the sending module,
the determining module is configured to determine that a control plane of the physical switch is overloaded, or determine to trigger a first preset condition.
The embodiment of the invention also provides a computer readable storage medium, on which a computer program is stored, which when executed by a processor, implements any step of the foregoing SDN optimization method.
In the technical scheme of the embodiment of the invention, when a first data packet in a data stream is received, the first data packet is sent to a virtual switch. Therefore, the processing burden of the physical switch is shunted by utilizing the processing capacity of the virtual switch, and the expandability and the stability of the SDN are improved.
In the technical scheme of the embodiment of the invention, the first rule or the second rule is selected to be executed based on a preset strategy; wherein the first rule includes: when a first data packet in a data stream is received, the first data packet is sent to a virtual switch; the second rule includes: when a first data packet in a data flow is received, the first data packet is sent to an SDN controller. In this way, through the mode of coexistence of the two regulations, the physical switch is realized to transfer the flow of a part of control planes to the virtual switch for processing, thereby improving the expandability and the stability of the SDN.
Drawings
The accompanying drawings generally illustrate, by way of example and not limitation, various embodiments discussed herein;
fig. 1 is a flow chart of an optimization method of SDN according to an embodiment of the present invention;
fig. 2 is a schematic diagram of an SDN architecture according to an embodiment of the present invention;
fig. 3 is a flow chart of an optimization method of SDN according to an embodiment of the present invention;
fig. 4 is a flow chart of an optimization method of SDN according to an embodiment of the present invention;
fig. 5 is a flow chart of an optimization method of SDN according to an embodiment of the present invention;
fig. 6 is a schematic structural diagram of an optimizing device of an SDN according to an embodiment of the present invention;
fig. 7 is a schematic structural diagram of an optimizing device of an SDN according to an embodiment of the present invention;
fig. 8 is a schematic structural diagram of an optimizing device of an SDN according to an embodiment of the present invention;
fig. 9 is a schematic structural diagram of an optimizing device of an SDN according to an embodiment of the present invention;
fig. 10 is a schematic structural diagram of an optimizing device of an SDN according to an embodiment of the present invention.
Detailed Description
For a more complete understanding of the nature and the technical content of the embodiments of the present invention, reference should be made to the following detailed description of embodiments of the invention, taken in conjunction with the accompanying drawings, which are meant to be illustrative only and not limiting of the embodiments of the invention.
Fig. 1 is a flow chart of an optimization method of SDN according to an embodiment of the present invention, as shown in fig. 1, the method includes the following steps:
step 101: when a first data packet in a data stream is received, the first data packet is sent to a virtual switch.
The implementation body of the method of this embodiment may be a physical switch, where the virtual switch may be implemented in any feasible manner, for example, may be built on a virtual resource supported by an underlying physical resource of the communication system, or the virtual switch may be dedicated or dynamically allocated. The virtual switches may be deployed at any suitable location in the SDN network, such as on servers where computing power and links are still abundant.
In the prior art, there are default processing rules in the physical switch for the first packet of the received data stream: the method of this embodiment replaces the processing rule, and uses the virtual switch to implement the splitting of the physical switch, so as to achieve the purpose of improving the expandability and stability of the SDN, and the implementation principle of the method of this embodiment is described in detail below by taking the application scenario shown in fig. 2 as an example:
fig. 2 is a schematic architecture diagram of an SDN to which the optimization method provided by the embodiment of the present invention is applied. As shown in fig. 2, the SDN includes a central controller c1, namely, SDN controller c1, a physical switch p1, three virtual switches v1, v2 and v3, and servers s1 and s2. The links between network components in the figure marked with dashed lines are control plane communication channels and the links marked with solid lines are data plane communication channels. The central controller c1 communicates with forwarding devices in the network via a control plane. The physical switch p1 and the virtual switches v1-3 provide forwarding functions in the network. The structure of the physical switch p1 comprises an OFA (control plane) and a data plane, wherein the data plane in turn comprises a number of flow tables, which consist of a number of forwarding rules. The physical switch p1 will forward and process the data flow arriving at p1 according to the rules contained in the p1 flow table. It should be noted that, among the rules of the p1 flow table, there is also a default rule, and when a new data flow arrives at p1, and there is no forwarding rule corresponding to the new data flow in the p1 flow table, p1 will process and forward the new data flow according to the default rule. The embodiment of the invention modifies the default rule, and specific modification details are described below. Virtual switches are similar to physical switches and also include control planes and data planes, the flow tables and default rule mechanisms for which are consistent with physical switches and are not repeated in the figures.
Step S1: central controller to monitor physical switch
In the SDN shown in fig. 2, the central controller c1 may monitor the OFA of the control plane of the physical switch p1 in real time, and when the link pressure between c1 and p1 is found to be too high, reconfigure the data plane of p1 to reduce the load of the control plane between the two. The central controller may monitor the control plane portion of the physical switch in any reasonable way, such as detecting the rate at which the physical switch sends messages to the central controller to determine if it is overloaded. When the central controller c1 judges that the p1 control plane is overloaded, a command is issued to modify the default forwarding rule of the p1 data plane, and the traffic is guided to the virtual switch.
It should be noted that step S1 is an optional step. If the central controller does not monitor the physical switch, the default forwarding rules mentioned above may be configured directly in the physical switch or issued by the central controller at a specific time or under a trigger condition.
Step S2: the central controller modifies the default forwarding rules of the physical switch
The physical switch p1 in fig. 2 receives packets on its port eth0, each of which contains identification information (such as source ip address, destination ip address, source port, destination port and five-tuple of communication protocol) to identify that it belongs to a certain data flow. When the data packet arrives at p1, the data plane of p1 searches the local flow table according to the identification information in the data packet for the forwarding rule corresponding to the data flow. If the packet is not the first packet of the data flow, there will be a rule corresponding to the packet in the p1 flow table, and p1 may directly forward the packet according to the rule. But if the packet is the first packet of this flow, then there will be no rule in the p1 flow table corresponding to it, in which case p1 will process the packet according to the default rule in its flow table.
In the existing SDN, a default rule of a physical switch specifies that a first packet of a new data flow is encapsulated into a packet-in message and forwarded to a central controller, and after the central controller receives the packet-in, the central controller decides how to forward the packet according to a network condition, and issues a forwarding rule to a switch along a forwarding path. However, in the proposed improved SDN shown in fig. 2, the central controller c1 will modify the default forwarding rules of the p1 data plane as: the first packet of the received data stream is forwarded to the virtual switch v1. Thus, when the first packet of the data flow arrives at switch p1, the data plane that will pass through p1 is forwarded directly to virtual switch v1.
Step S3: virtual switch replaces physical switch to send packet-in request to central controller
The internal structure and the forwarding working mechanism of the virtual switch are consistent with those of the physical switch, and after the virtual switch v1 receives the data packet, the corresponding rule is searched in a local flow table of the virtual switch. Since this data packet is the first packet of the data stream, v1 will not find the corresponding rule in its stream table, and thus will execute the default rule. The default rules of the virtual switch are not modified, so the virtual switch would encapsulate the packet into a packet-in and send the packet to the controller to request forwarding instructions.
By modifying the default rules as described above, the first packet of a new data flow will not pass through the control plane of the physical switch (the OFA need not process the packet and send a request to the central controller), but will be forwarded directly through the data plane of the physical switch. The task of sending a request to the central controller and establishing forwarding rules for the new data flow is transferred to the virtual switch.
Step S4: the central controller receives packet-in and calculates the forwarding path
When the central controller receives the packet-in request, the forwarding path of the data stream is determined according to the real-time network condition. Assuming that the destination address of this packet is server s1 in the scenario of fig. 1, the forwarding path calculated by the central controller c1 is p1-v1-v3-s 1. c1 will give v1, v3 the forwarding rules respectively. Thus, when other packets of this data flow reach p1 again, p1 forwards the packets directly to v1 according to the modified default rule, and v1 and v3 already have corresponding forwarding rules, so that the packets will reach s1 according to the path of p1-v1-v3-s 1.
In the above procedure, c1 receives packet-in from v1 and does not know that the source of the packet to be forwarded is p1. In practice, p1 may tag the packet by some method such that after c1 receives a packet-in from v1, it is known that this packet-in was actually sent by v1 instead of p1. So that c1 will be more flexible in calculating the forwarding paths. For example, in the scenario described above, c1 may determine that the forwarding path is p1-v2-v3-s1, and then issue forwarding rules to p1, v2, and v3, respectively. Although the default rule for p1 is that packets of the new data flow are forwarded to v1, the forwarding path calculated by c1 may not pass through v1.
Step S5: load balancing using virtual switches and default rules
In the above scenario, the central controller replaces the old default rule with a new default rule, but in practice the new default rule mentioned above may also coexist with the old default rule. Two default rules may exist on the physical switch at the same time: one specifying the new data flow packet requires a packet-in request to the central controller and one specifying the new data flow packet is forwarded directly to the virtual switch. The physical machine switch may employ a variety of mechanisms to decide how to choose between two rules, several possible approaches being listed here: the two default rules take effect in turn, and the two default rules take effect randomly (by calculating a hash value, etc.) or select the default rules to execute according to the characteristics of the data stream and/or other conditions.
By the coexistence of the two rules, the physical switch can transfer the traffic of a part of the control plane to the virtual switch for processing. If more default rules are added on the physical switch, the physical switch can also disperse the traffic to a plurality of virtual switches, thereby realizing the function of load balancing.
Fig. 3 is a flow chart of an optimization method of SDN according to an embodiment of the present invention, as shown in fig. 3, the method includes the following steps:
step 301: selecting to execute the first rule or the second rule based on a preset strategy; wherein the first rule includes: when a first data packet in a data stream is received, the first data packet is sent to a virtual switch; the second rule includes: when a first data packet in a data flow is received, the first data packet is sent to an SDN controller.
The implementation main body of the method of this embodiment may be a physical switch, where the preset policy is a policy set by itself according to an actual network requirement, and the physical switch may use multiple mechanisms to determine how to select between the two rules, and through coexistence of the two rules, the physical switch may transfer a portion of traffic of the control plane to the virtual switch for processing.
In one embodiment, the preset policy includes one of the following items: the policy is executed in turn, the policy is selected randomly, and the data flow characteristics are selected randomly. The physical switch can take effect of the first rule and the second rule in turn, and the random selection policy comprises that one rule can take effect randomly by calculating a hash value and the like.
Fig. 4 is a flow chart of an optimization method of SDN according to an embodiment of the present invention, as shown in fig. 4, the method includes the following steps:
step 401: generating first configuration information, wherein the first configuration information comprises: when the physical switch receives a first data packet in the data stream, the first data packet is sent to the virtual switch.
The implementation subject of the method of the present embodiment may be an SDN controller. Unlike the foregoing embodiments, where the rules are configured by the physical switch itself, the method of this embodiment is to generate the rules by the SDN controller and issue them to the physical switch.
Step 402: and sending the first configuration information to a physical switch.
In one embodiment, before the sending the first configuration information to the physical switch, the method includes: and determining that the control plane of the physical switch is overloaded or determining to trigger a first preset condition. Specifically, the SDN controller may monitor the physical switch, and when the SDN controller determines that a control plane of the physical switch is overloaded, issue first configuration information to the physical switch. Or when a certain preset condition is determined to be triggered, namely when a first preset condition is triggered, the first configuration information is sent to the physical switch.
Fig. 5 is a flow chart of an optimization method of SDN according to an embodiment of the present invention, as shown in fig. 5, the method includes the following steps:
step 501: generating first configuration information, wherein the first configuration information comprises: based on a preset policy, the physical switch selects to execute a first rule or a second rule, wherein the first rule comprises: when a first data packet in a data stream is received, the first data packet is sent to a virtual switch, and the second rule includes: when a first data packet in a data flow is received, the first data packet is sent to an SDN controller.
The implementation subject of the method of the present embodiment may be an SDN controller. The first configuration information is configuration information corresponding to two regulations in the physical switch when the two regulations coexist. The first configuration information may be generated by the SDN controller and issued to the physical switch.
In one embodiment, the preset policy includes one of the following items: the policy is executed in turn, the policy is selected randomly, and the data flow characteristics are selected randomly. The physical switch can take effect of the first rule and the second rule in turn, and the random selection policy comprises that one rule can take effect randomly by calculating a hash value and the like.
Step 502: and sending the first configuration information to a physical switch.
In one embodiment, before the sending the first configuration information to the physical switch, the method includes: and determining that the control plane of the physical switch is overloaded or determining to trigger a first preset condition. Specifically, the SDN controller may monitor the physical switch, and when the SDN controller determines that a control plane of the physical switch is overloaded, issue first configuration information to the physical switch. Or when a certain preset condition is determined to be triggered, namely when a first preset condition is triggered, the first configuration information is sent to the physical switch.
Fig. 6 is a schematic structural diagram of an optimizing apparatus for an SDN according to an embodiment of the present invention, as shown in fig. 6, an optimizing apparatus 600 for an SDN includes:
a receiving module 601, configured to receive a first packet in a data stream,
and a sending module 602, configured to send the first data packet to a virtual switch.
Those skilled in the art will understand that the implementation functions of each module in the optimization apparatus of the SDN shown in fig. 6 may be understood with reference to the related description of the optimization method of the SDN. The functions of each module in the optimizing apparatus of the SDN shown in fig. 6 may be implemented by a program running on a processor, or may be implemented by a specific logic circuit.
Fig. 7 is a schematic structural diagram of an optimizing apparatus for an SDN according to an embodiment of the present invention, as shown in fig. 7, an optimizing apparatus 700 for an SDN includes:
a selection execution module 701, configured to select to execute the first rule or the second rule based on a preset policy; wherein the first rule includes: when a first data packet in a data stream is received, the first data packet is sent to a virtual switch; the second rule includes: when a first data packet in a data flow is received, the first data packet is sent to an SDN controller.
In one embodiment, in the selection execution module 701, the preset policy includes one of the following items: the policy is executed in turn, the policy is selected randomly, and the data flow characteristics are selected randomly.
Those skilled in the art will understand that the implementation functions of each module in the optimization apparatus of the SDN shown in fig. 7 may be understood with reference to the related description of the optimization method of the SDN. The functions of each module in the optimizing apparatus of the SDN shown in fig. 7 may be implemented by a program running on a processor, or may be implemented by a specific logic circuit.
Fig. 8 is a schematic structural diagram of an optimizing apparatus for an SDN according to an embodiment of the present invention, as shown in fig. 8, an optimizing apparatus 800 for an SDN includes:
a generating module 801, configured to generate first configuration information, where the first configuration information includes: when a physical switch receives a first data packet in a data stream, the first data packet is sent to a virtual switch;
a sending module 802, configured to send the first configuration information to a physical switch.
In an embodiment, the optimizing apparatus 800 of the SDN further comprises a determining module 803, where the determining module 803 is connected to the sending module 802, and the determining module 803 is configured to determine that a control plane of the physical switch is overloaded, or determine to trigger a first preset condition.
Those skilled in the art will understand that the implementation functions of each module in the optimization apparatus of the SDN shown in fig. 8 may be understood with reference to the related description of the optimization method of the SDN. The functions of each module in the optimizing apparatus of the SDN shown in fig. 8 may be implemented by a program running on a processor, or may be implemented by a specific logic circuit.
Fig. 9 is a schematic structural diagram of an optimizing apparatus for an SDN according to an embodiment of the present invention, as shown in fig. 9, an optimizing apparatus 900 for an SDN includes:
the generating module 901 is configured to generate first configuration information, where the first configuration information includes: based on a preset policy, the physical switch selects to execute a first rule or a second rule, wherein the first rule comprises: when a first data packet in a data stream is received, the first data packet is sent to a virtual switch, and the second rule includes: when a first data packet in a data flow is received, the first data packet is sent to an SDN controller;
a sending module 902, configured to send the first configuration information to a physical switch.
In one embodiment, in the generating module 901, the preset policy includes one of the following content items: the policy is executed in turn, the policy is selected randomly, and the data flow characteristics are selected randomly.
In an embodiment, the optimizing device 900 of the SDN further includes a determining module 903, where the determining module 903 is connected to the sending module 902, and the determining module 903 is configured to determine that a control plane of the physical switch is overloaded, or determine to trigger a first preset condition.
Those skilled in the art will understand that the implementation functions of each module in the optimization apparatus of the SDN shown in fig. 9 may be understood with reference to the related description of the optimization method of the SDN. The functions of each module in the optimizing apparatus of the SDN shown in fig. 9 may be implemented by a program running on a processor, or may be implemented by a specific logic circuit.
Fig. 10 is a schematic structural diagram of an optimizing apparatus of an SDN according to an embodiment of the present invention, where an optimizing apparatus 1000 of the SDN shown in fig. 10 is disposed on the terminal, and includes: at least one processor 1001, a memory 1002, a user interface 1003, at least one network interface 1004. The various components in the optimizing device 1000 of the SDN are coupled together by a bus system 1005. It is appreciated that the bus system 1005 is used to enable connected communications between these components. The bus system 1005 includes a power bus, a control bus, and a status signal bus in addition to the data bus. But for clarity of illustration the various buses are labeled as bus system 1005 in fig. 10.
The user interface 1003 may include, among other things, a display, keyboard, mouse, trackball, click wheel, keys, buttons, touch pad, or touch screen, etc.
The memory 1002 in embodiments of the present invention is used to store various types of data to support the operation of the optimizing device 1000 of the SDN. Examples of such data include: any computer program for operating on the optimizing means 1000 of the SDN, such as an operating system 10021 and application programs 10022; the operating system 10021 includes various system programs, such as a framework layer, a core library layer, a driver layer, and the like, for implementing various basic services and processing hardware-based tasks. The application 10022 may include various applications for implementing various application services. A program for implementing the method according to the embodiment of the present invention may be included in the application 10022.
The method disclosed in the above embodiment of the present invention may be applied to the processor 1001 or implemented by the processor 1001. The processor 1001 may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the above method may be performed by integrated logic circuits of hardware in the processor 1001 or by instructions in the form of software. The processor 1001 may be a general purpose processor, a digital signal processor, or other programmable logic device, discrete gate or transistor logic device, discrete hardware components, or the like. The processor 1001 may implement or execute the methods, steps and logic blocks disclosed in the embodiments of the present invention. The general purpose processor may be a microprocessor or any conventional processor or the like. The steps of the method disclosed in the embodiment of the invention can be directly embodied in the hardware of the decoding processor or can be implemented by combining hardware and software modules in the decoding processor. The software modules may be located in a storage medium in the memory 1002 and the processor 1001 reads information in the memory 1002, in combination with its hardware, to perform the steps of the method as described above.
It is to be appreciated that memory 1002 can be either volatile memory or nonvolatile memory, and can include both volatile and nonvolatile memory. Wherein the nonvolatile Memory may be a Read Only Memory (ROM), a programmable Read Only Memory (PROM, programmable Read-Only Memory), a comment-ready programmable Read Only Memory (EPROM, erasable Programmable Read-Only Memory), an electrically comment-ready programmable Read Only Memory (EEPROM, electrically Erasable Programmable Read-Only Memory), a magnetic random access Memory (FRAM, ferromagnetic random access Memory), a Flash Memory (Flash Memory), a magnetic surface Memory, an optical disk, or a compact disk-Only (CD-ROM, compact Disc Read-Only Memory); the magnetic surface memory may be a disk memory or a tape memory. The volatile memory may be random access memory (RAM, random Access Memory), which acts as external cache memory. By way of example, and not limitation, many forms of RAM are available, such as static random access memory (SRAM, static Random Access Memory), synchronous static random access memory (SSRAM, synchronous Static Random Access Memory), dynamic random access memory (DRAM, dynamic Random Access Memory), synchronous dynamic random access memory (SDRAM, synchronous Dynamic Random Access Memory), double data rate synchronous dynamic random access memory (ddr SDRAM, double Data Rate Synchronous Dynamic Random Access Memory), enhanced synchronous dynamic random access memory (ESDRAM, enhanced Synchronous Dynamic Random Access Memory), synchronous link dynamic random access memory (SLDRAM, syncLink Dynamic Random Access Memory), direct memory bus random access memory (DRRAM, direct Rambus Random Access Memory). The memory 1002 described in embodiments of the present invention is intended to comprise, without being limited to, these and any other suitable types of memory.
Based on the optimization method of SDN provided in the embodiments of the present application, the present application further provides a computer readable storage medium, as shown in fig. 10, where the computer readable storage medium may include: a memory 1002 for storing a computer program executable by the processor 1001 of the optimizing apparatus 1000 of the SDN for performing the steps of the method as described above. The computer readable storage medium may be FRAM, ROM, PROM, EPROM, EEPROM, flash Memory, magnetic surface Memory, optical disk, or CD-ROM.
It should be noted that: the technical schemes described in the embodiments of the present invention may be arbitrarily combined without any collision.
The foregoing description is only of the preferred embodiments of the present invention, and is not intended to limit the scope of the invention, but rather is intended to cover any equivalents of the structures or equivalent processes disclosed herein or in the alternative, which may be employed directly or indirectly in other related arts.

Claims (17)

1. An optimization method of a Software Defined Network (SDN) applied to a physical switch, the method comprising:
when a first data packet in a data stream is received, the first data packet is sent to a virtual switch;
receiving a forwarding rule for the data flow sent by an SDN controller;
forwarding the data flow based on the forwarding rule.
2. An optimization method of an SDN applied to a physical switch, the method comprising:
selecting to execute the first rule or the second rule based on a preset strategy;
wherein the first rule includes: when a first data packet in a data stream is received, the first data packet is sent to a virtual switch;
the second rule includes: when a first data packet in a data flow is received, the first data packet is sent to an SDN controller;
receiving a forwarding rule for the data flow sent by an SDN controller;
forwarding the data flow based on the forwarding rule.
3. The optimization method of SDN of claim 2, wherein the preset policy comprises one of the following:
the policy is executed in turn, the policy is selected randomly, and the data flow characteristics are selected randomly.
4. An optimization method of an SDN, applied to an SDN controller, is characterized in that the method includes:
generating first configuration information, wherein the first configuration information comprises: when a physical switch receives a first data packet in a data stream, the first data packet is sent to a virtual switch;
transmitting the first configuration information to a physical switch;
receiving a packet-in message sent by the virtual switch;
generating a forwarding rule for a data stream corresponding to the packet-in message based on a network condition;
and sending the forwarding rule to the physical switch.
5. The method of optimizing SDN of claim 4, wherein prior to sending the first configuration information to a physical switch, comprising:
and determining that the control plane of the physical switch is overloaded or determining to trigger a first preset condition.
6. An optimization method of an SDN, applied to an SDN controller, is characterized in that the method includes:
generating first configuration information, wherein the first configuration information comprises: based on a preset policy, the physical switch selects to execute a first rule or a second rule, wherein the first rule comprises: when a first data packet in a data stream is received, the first data packet is sent to a virtual switch, and the second rule includes: when a first data packet in a data flow is received, the first data packet is sent to an SDN controller;
transmitting the first configuration information to a physical switch;
receiving a packet-in message sent by the physical switch or the virtual switch;
generating a forwarding rule for a data stream corresponding to the packet-in message based on a network condition;
and sending the forwarding rule to the physical switch.
7. The optimization method of SDN of claim 6, wherein the preset policy includes one of:
the policy is executed in turn, the policy is selected randomly, and the data flow characteristics are selected randomly.
8. The method of optimizing SDN of claim 6, wherein prior to sending the first configuration information to a physical switch, comprising:
and determining that the control plane of the physical switch is overloaded or determining to trigger a first preset condition.
9. An optimizing device of an SDN, characterized in that the device comprises:
the receiving module is used for receiving a first data packet in the data flow and receiving a forwarding rule for the data flow sent by the SDN controller;
and the sending module is used for sending the first data packet to the virtual switch and forwarding the data flow based on the forwarding rule.
10. An optimizing device of an SDN, characterized in that the device comprises:
the selection execution module is used for selecting to execute the first rule or the second rule based on a preset strategy; wherein the first rule includes: when a first data packet in a data stream is received, the first data packet is sent to a virtual switch; the second rule includes: when a first data packet in a data flow is received, the first data packet is sent to an SDN controller; and the data flow forwarding device is also used for receiving forwarding rules for the data flow sent by the SDN controller and forwarding the data flow based on the forwarding rules.
11. The SDN optimization device of claim 10, wherein the preset policy includes one of the following items in the selection execution module:
the policy is executed in turn, the policy is selected randomly, and the data flow characteristics are selected randomly.
12. An optimizing device of an SDN, characterized in that the device comprises:
the generating module is configured to generate first configuration information, where the first configuration information includes: when a physical switch receives a first data packet in a data stream, the first data packet is sent to a virtual switch; the packet-in message forwarding rule is used for receiving the packet-in message sent by the physical switch or the virtual switch and generating a data flow corresponding to the packet-in message based on the network condition; the sending module is used for sending the first configuration information to a physical switch; and is further configured to send the forwarding rule to the physical switch.
13. The optimizing device of SDN of claim 12, further comprising a determining module connected to the sending module,
the determining module is configured to determine that a control plane of the physical switch is overloaded, or determine to trigger a first preset condition.
14. An optimizing device of an SDN, characterized in that the device comprises:
the generating module is configured to generate first configuration information, where the first configuration information includes: based on a preset policy, the physical switch selects to execute a first rule or a second rule, wherein the first rule comprises: when a first data packet in a data stream is received, the first data packet is sent to a virtual switch, and the second rule includes: when a first data packet in a data flow is received, the first data packet is sent to an SDN controller; the packet-in message forwarding rule is used for receiving the packet-in message sent by the physical switch or the virtual switch and generating a data flow corresponding to the packet-in message based on the network condition; the sending module is used for sending the first configuration information to a physical switch; and is further configured to send the forwarding rule to the physical switch.
15. The SDN optimization device of claim 14, wherein the preset policy includes one of the following items in the generation module:
the policy is executed in turn, the policy is selected randomly, and the data flow characteristics are selected randomly.
16. The optimizing device of SDN of claim 14, further comprising a determining module connected to the sending module,
the determining module is configured to determine that a control plane of the physical switch is overloaded, or determine to trigger a first preset condition.
17. A computer readable storage medium having stored thereon a computer program, characterized in that the computer program, when executed by a processor, implements the steps of the optimization method of SDN as claimed in any one of claims 1 to 8.
CN201910000505.0A 2019-01-02 2019-01-02 SDN optimization method and device and computer readable storage medium Active CN111404705B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910000505.0A CN111404705B (en) 2019-01-02 2019-01-02 SDN optimization method and device and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910000505.0A CN111404705B (en) 2019-01-02 2019-01-02 SDN optimization method and device and computer readable storage medium

Publications (2)

Publication Number Publication Date
CN111404705A CN111404705A (en) 2020-07-10
CN111404705B true CN111404705B (en) 2023-05-09

Family

ID=71413091

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910000505.0A Active CN111404705B (en) 2019-01-02 2019-01-02 SDN optimization method and device and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN111404705B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115633197A (en) * 2022-09-15 2023-01-20 海南乾唐视联信息技术有限公司 Service data distribution system, method, device, electronic equipment and medium

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104301129A (en) * 2013-07-16 2015-01-21 上海宽带技术及应用工程研究中心 Dynamic host configuration method and system in software defined network
CN103746892B (en) * 2013-11-27 2016-01-13 北京邮电大学 A kind of SDN virtualization platform uplink signaling flow label processing method based on OpenFlow
CN106034077B (en) * 2015-03-18 2019-06-28 华为技术有限公司 A kind of dynamic route collocating method, apparatus and system
CN105049358B (en) * 2015-06-25 2018-08-28 清华大学 A kind of virtual forwarding platform and its communication means of SDN network
EP3340064B1 (en) * 2016-08-03 2020-12-02 Huawei Technologies Co., Ltd. Network interface card, computer device and data packet processing method
CN106341324B (en) * 2016-09-30 2019-06-14 赛特斯信息科技股份有限公司 The method that SDN and NFV converged network dynamic establishes SDN controller
CN107947977B (en) * 2017-11-21 2019-11-19 北京邮电大学 A kind of configuration method of interchanger, device, electronic equipment and storage medium
CN108183862B (en) * 2018-01-24 2021-02-09 上海宽带技术及应用工程研究中心 Communication method/system of software-defined switching network, readable storage medium and device

Also Published As

Publication number Publication date
CN111404705A (en) 2020-07-10

Similar Documents

Publication Publication Date Title
US11539626B2 (en) Method, apparatus, and system for load balancing of service chain
KR101969194B1 (en) Offloading packet processing for networking device virtualization
CN108270676B (en) Network data processing method and device based on Intel DPDK
CN108768866B (en) Cross-card forwarding method and device for multicast message, network equipment and readable storage medium
CN106878194B (en) Message processing method and device
US10862800B2 (en) Method and system for managing network communications
US20190158403A1 (en) Shared memory communication in software defined networking
US11102133B2 (en) Service packet processing method, apparatus, and system
US10243799B2 (en) Method, apparatus and system for virtualizing a policy and charging rules function
US11165703B2 (en) Prefix-based fat flows
US20180167313A1 (en) Sdn-based arp implementation method and apparatus
CN112887229B (en) Session information synchronization method and device
US20220255831A1 (en) Method and apparatus for detecting link status
US11632288B2 (en) Determining the impact of network events on network applications
WO2012075818A1 (en) Method for parsing packet header, header parsing pre-processing device and network processor
CN113783910A (en) Data forwarding method, device and system
WO2015043679A1 (en) Moving stateful applications
CN111404705B (en) SDN optimization method and device and computer readable storage medium
CN106789671B (en) Service message forwarding method and device
KR101952187B1 (en) Method and apparatus for processing service node ability, service classifier and service controller
Bays et al. Flow based load balancing: Optimizing web servers resource utilization
KR102001487B1 (en) Method for controlling software defined networking and computing device performing the same
CN114793217B (en) Intelligent network card, data forwarding method and device and electronic equipment
CN107113244B (en) Data forwarding method, device and system
Silva et al. Empowering applications with RFC 6897 to manage elephant flows in datacenter networks

Legal Events

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