CN106850803B - SDN-based weighted polling system and algorithm - Google Patents

SDN-based weighted polling system and algorithm Download PDF

Info

Publication number
CN106850803B
CN106850803B CN201710065812.8A CN201710065812A CN106850803B CN 106850803 B CN106850803 B CN 106850803B CN 201710065812 A CN201710065812 A CN 201710065812A CN 106850803 B CN106850803 B CN 106850803B
Authority
CN
China
Prior art keywords
unit
server
sdn
message
flow
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
CN201710065812.8A
Other languages
Chinese (zh)
Other versions
CN106850803A (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.)
GLOBAL TONE COMMUNICATION TECHNOLOGY Co.,Ltd.
Original Assignee
Global Tone Communication Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Global Tone Communication Technology Co ltd filed Critical Global Tone Communication Technology Co ltd
Priority to CN201710065812.8A priority Critical patent/CN106850803B/en
Publication of CN106850803A publication Critical patent/CN106850803A/en
Application granted granted Critical
Publication of CN106850803B publication Critical patent/CN106850803B/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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload

Landscapes

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

Abstract

The invention relates to a weighted polling system and algorithm based on an SDN. The system comprises a client module, a client module and a client module, wherein the client module is used for sending a client request; the server module is used for receiving and processing the client request sent by the client module; the SDN switch module is used for dynamically detecting the server module and reporting the detection result to the SDN controller module; and the SDN controller module is used for generating a weighted polling strategy table according to the detection result reported by the SDN switch module, allocating a server to the client request of the client module according to the weighted polling strategy table, and issuing a flow table to the SDN switch module according to the server allocation result. All configurations of the invention are centralized in the controller, and the SDN switch can automatically sense the server and inform the controller, the configuration is convenient and simple, the configuration is uniformly controlled by the controller, and the controller formulates a weighted polling strategy according to the reported server information and issues a flow table, thereby realizing the load sharing function.

Description

SDN-based weighted polling system and algorithm
Technical Field
The invention relates to the technical field of mobile communication, in particular to a weighted polling system and algorithm based on an SDN (software defined network).
Background
Software Defined Networking (SDN), which is a novel network innovation architecture of an Emulex network, is an implementation manner of network virtualization, and its core technology OpenFlow separates a control plane and a data plane of a network device, thereby implementing flexible control of network traffic and making the network become more intelligent as a pipeline. In a network in a traditional IT architecture, after the network is deployed and brought online according to service requirements, if the service requirements change, IT is a very tedious matter to modify the configuration on corresponding network devices (routers, switches, firewalls) again. In the service environment of the internet/mobile internet, the high stability and the high performance of the network are not enough to meet the service requirement, and the flexibility and the agility are more critical. What SDN does is to separate the control rights on the network devices, manage them by a centralized controller, and shield the differences from the underlying network devices without relying on the underlying network devices (routers, switches, firewalls). The control right is completely open, and the user can customize any network routing and transmission rule strategy to be realized, so that the method is more flexible and intelligent.
SDN is a representative of the design of next-generation IP network management architecture, and this approach emphasizes splitting the control and forwarding planes, replacing "packet switching" with "flow switching", and replacing individual configuration with "centralized management". OpenFlow is a protocol for replacing a network device routing table (RIB) with a flow table (FlowTable, which is more commonly referred to as NIB, i.e., NetworkInformationBase) of a network centralized management platform when realizing such a concept.
The SDN network includes an SDNController (SDN controller) and an SDN switch. An SDN controller is an application in a Software Defined Network (SDN) responsible for traffic control to ensure an intelligent network. SDN controllers are based on protocols such as OpenFlow, allowing servers to tell switches where to send packets. The SDN controller is a control center of the whole SDN network, and the SDN switch transmits messages by issuing various flow tables through the SDN controller through an OpenFlow protocol. In the SDN network, the SDN interaction machine supporting OpenFlow performs service forwarding by means of flow tables, and the flow tables in the SDN interaction machine are generated by an SDN controller and are issued to the SDN interaction machine one by one.
With the rapid increase of access flow and the continuous increase of service volume, the server often works in an overload state, so that the user cannot obtain uninterrupted availability and faster system response time. The existing solution is to centralize the traditional load balancing in one load balancing device through a load balancing technology, and the load balancing device is responsible for distributing the user request in the server group according to the configured balancing strategy. The control granularity is set based on the ports of the load balancing devices, so that the control granularity is too large, the whole configuration is distributed (a plurality of load balancing devices exist in the whole network), the configuration is complex and is easy to make mistakes. When a large number of user services are provided, the SDN controller generates a large number of flow entries, and the flow table configuring the SDN switch is configured at a relatively low speed through a flow table issuing mechanism of the OpenFlow protocol, so that the generated flow tables are large, the flow table issuing speed is low, the service completely takes effect for a long time, and user experience is affected.
Disclosure of Invention
The invention provides a weighted polling system and algorithm based on SDN (software defined network), aiming at the problems in the prior art, all configurations are centralized in a controller, an SDN switch can automatically sense a server and inform the controller, the configuration is convenient and simple, the configuration is uniformly controlled by the controller, the controller formulates a weighted polling strategy according to reported server information and issues a flow table, and therefore the load sharing function is realized.
The technical scheme adopted by the invention for solving the technical problems is as follows:
an SDN-based weighted polling system, comprising:
the client module is used for sending a client request;
the server module is used for receiving and processing the client request sent by the client module;
the SDN switch module is used for dynamically detecting the server module and reporting the detection result to the SDN controller module;
and the SDN controller module is used for generating a weighted polling strategy table according to the detection result reported by the SDN switch module, allocating a server to the client request of the client module according to the weighted polling strategy table, and issuing a flow table to the SDN switch module according to the server allocation result.
Preferably, the SDN switch module includes:
a PING message sending unit, configured to send a PING message to an interface to obtain an IP address of an active server;
the FTP request message constructing unit is used for constructing an FTP request message to acquire an active FTP server address;
the HTTP request message constructing unit is used for constructing an HTTP request message to acquire an active WEB server address;
and the message reporting unit is used for reporting the server information acquired by the PING message sending unit, the FTP request message constructing unit and the HTTP request message constructing unit to the SDN controller module in an Experimenter message form.
Preferably, the SDN controller module includes:
a message receiving unit, configured to receive an Experimenter message reported by the SDN switch module;
the message analysis unit is used for analyzing the Experimenter message received by the message receiving unit to acquire server information;
a weighted polling policy table generating unit, configured to generate a weighted polling policy table according to the server information acquired by the message analyzing unit;
the server distribution unit is used for obtaining the weight and the use times of each server according to the weighted polling strategy table and distributing a client for the corresponding server according to the weight and the use times of each server;
and the flow table issuing unit is used for calculating a forwarding path according to the server allocation result of the server allocation unit and issuing a flow table to the SDN switch module according to the forwarding path.
Preferably, the SDN controller module further comprises:
a threshold setting unit, configured to set a threshold of the flow table entry;
a threshold detection unit, connected to the threshold setting unit, configured to detect whether the number of flow entries generated by the SDN controller exceeds a preset threshold;
a flow file unit, connected to the threshold detection unit, configured to generate a flow file including the flow entry when the number of flow entries generated by the SDN controller exceeds a preset threshold;
and the flow table information sending unit is connected with the flow file unit and used for sending the flow table information containing the flow file information to the SDN switch.
Preferably, the SDN controller further includes:
and the feedback information receiving unit is used for judging that feedback information which is fed back by the SDN switch and used for confirming that a flow table item is acquired and a flow table is issued is received within preset time.
A weighted polling algorithm adopting the system comprises the following steps:
1) sending a client request through a client module;
2) dynamically detecting a server module through an SDN switch module, and reporting a detection result to an SDN controller module;
3) generating a weighted polling policy table according to a detection result reported by the SDN switch module through an SDN controller module, allocating a server to a client request of the client module according to the weighted polling policy table, and issuing a flow table to the SDN switch module according to a server allocation result;
4) and receiving and processing the client request sent by the client module through the server module.
Preferably, the step 2) specifically comprises:
21) sending a PING message to an interface through a PING message sending unit to acquire the IP address of an active server;
22) constructing an FTP request message through an FTP request message constructing unit to acquire an active FTP server address;
23) constructing an HTTP request message through an HTTP request message constructing unit to acquire an active WEB server address;
24) and reporting the server information acquired by the PING message sending unit, the FTP request message constructing unit and the HTTP request message constructing unit to the SDN controller module in an Experimenter message form through a message reporting unit.
Preferably, the step 3) specifically includes:
31) receiving an Experimenter message reported by the SDN switch module through a message receiving unit;
32) analyzing the Experimenter message received by the message receiving unit through a message analyzing unit to acquire server information;
33) generating a weighted polling strategy table according to the server information acquired by the message analysis unit by a weighted polling strategy table generation unit;
34) obtaining the weight and the use times of each server through a server distribution unit according to the weighted polling strategy table, and distributing a client for the corresponding server according to the weight and the use times of each server;
35) and calculating a forwarding path according to the server distribution result of the server distribution unit by a flow table issuing unit, and issuing a flow table to the SDN switch module according to the forwarding path.
Preferably, the weighted polling algorithm of the SDN controller further includes the following steps:
41) setting a threshold value of a flow table entry through a threshold value setting unit;
42) detecting whether the number of flow table entries generated by the SDN controller exceeds a preset threshold value through a threshold value detection unit;
43) the flow file unit is used for generating a flow file containing the flow entries when the number of the flow entries generated by the SDN controller exceeds a preset threshold;
44) and sending a flow table message containing the flow file information to the SDN switch through a flow table information sending unit.
Preferably, the weighted polling algorithm of the SDN controller further includes the following steps:
judging that feedback information fed back by the SDN switch and used for confirming that a flow table item is acquired and a flow table is issued within preset time through a feedback information receiving unit;
when the feedback information fed back by the SDN switch is not received within a preset time, the flow table issuing unit issues a flow table containing the flow table entry to the SDN switch.
The invention has the beneficial effects that:
based on an SDN framework, a weighted polling strategy is based on the whole network, end-to-end service is provided, an SDN switch has the function of sensing a server at regular time and reports the server to an SDN controller through an Experimenter message, and the controller formulates a weighted polling strategy according to reported server information and issues a flow table, so that the load sharing function is realized.
Drawings
Fig. 1 is a schematic structural diagram of a SDN-based weighted polling system according to the present invention;
figure 2 is a schematic diagram of an SDN based weighted round robin algorithm of the present invention;
figure 3 is a general flow chart of the SDN based weighted round robin algorithm of the present invention;
figure 4 is a schematic process flow diagram of an SDN switch module of the present invention;
fig. 5 is a schematic processing flow diagram of an SDN controller module according to the present invention;
fig. 6 is a diagram illustrating weighted polling of an SDN controller module according to the present invention.
Detailed Description
The following are specific embodiments of the present invention and are further described with reference to the drawings, but the present invention is not limited to these embodiments.
As shown in fig. 1-2, a weighted polling system based on SDN comprises:
the client module is used for sending a client request and comprises a plurality of client devices.
And the server module is used for receiving and processing the client request sent by the client module. The system comprises a plurality of servers, wherein a plurality of servers form a group and are connected through network equipment, and the servers provide the same or similar network services.
As shown in fig. 4, the SDN switch module is configured to dynamically detect the server module, and report a detection result to the SDN controller module. The SDN switch module comprises a PING message sending unit, a receiving unit and a sending unit, wherein the PING message sending unit is used for sending a PING message to an interface so as to acquire the IP address of an active server; the FTP request message constructing unit is used for constructing an FTP request message to acquire an active FTP server address; the HTTP request message constructing unit is used for constructing an HTTP request message to acquire an active WEB server address; and the message reporting unit is used for reporting the server information acquired by the PING message sending unit, the FTP request message constructing unit and the HTTP request message constructing unit to the SDN controller module in an Experimenter message form.
As shown in fig. 5 to 6, the SDN controller module is configured to generate a weighted polling policy table according to a detection result reported by the SDN switch module, allocate a server to a client request of the client module according to the weighted polling policy table, and issue a flow table to the SDN switch module according to a server allocation result. And sensing the server group through the controller, distributing the user request in the server group according to a weighted polling strategy, providing service for the user, and maintaining the availability of the server. The SDN switch has the function of sensing the server at regular time and reports the server to the SDN controller through an Experimenter message, and the controller formulates a weighted polling strategy according to the reported server information and issues a flow table, so that the load sharing function is realized.
The controller should support a control plane hardware current limiting configuration task sequence based on the SDN, and should include: and switching on or off a hardware current limiting function based on a control plane of the SDN, and a hardware current limiting strategy table. The configuration item comprises a weighted polling function based on the SDN, and is used for turning on or turning off the weighted polling function based on the SDN and a weighted polling strategy table, wherein the weighted polling strategy table is created by a reported Experimenter message, and the configuration can be statically modified by a user.
The field of the Experimenter message comprises a server IP address, and the field defines the server IP address; the server type is defined in the field, 1 is an FTP server, and 2 is a WEB server; a switch ID, this field specifying the switch ID of the connection server; a switch port, this field specifying a port of a switch to which the server is connected; a weight, this field specifying the weight of the server; number of uses, this field specifies the number of times the server is used.
In the format of a private extended expermer message from the SDN switch module to the SDN controller module, an expermer value of 255 needs to be applied to the ONF organization, and an expermer type value of 1 indicates a direction from the SDN switch to the controller. And after the detection of the server is finished, reporting the private extended Experimenter message to the controller by the SDN switch. The server information comprises a server IP address and a server type.
The SDN controller module comprises a message receiving unit used for receiving an Experimenter message reported by the SDN switch module; the message analysis unit is used for analyzing the Experimenter message received by the message receiving unit to acquire server information; a weighted polling policy table generating unit, configured to generate a weighted polling policy table according to the server information acquired by the message analyzing unit; the server distribution unit is used for obtaining the weight and the use times of each server according to the weighted polling strategy table and distributing a client for the corresponding server according to the weight and the use times of each server; and the flow table issuing unit is used for calculating a forwarding path according to the server allocation result of the server allocation unit and issuing a flow table to the SDN switch module according to the forwarding path.
When a lot of user services are available, the SDN controller module generates a lot of flow entries, and the flow table configuring the SDN switch module is configured at a relatively low speed through a flow table issuing mechanism of the OpenFlow protocol, so that a lot of flow tables are generated, the flow table issuing speed is low, the service takes a long time to take effect completely, and user experience is affected. Therefore, the SDN controller module further includes a threshold setting unit, configured to set a threshold of the flow entry, where the threshold of the flow entry may be set according to a network load capacity, a network speed, and the like. And the flow table is issued to the SDN switch module through the SDN controller module, so that the distribution efficiency of the server is further improved.
And detecting a threshold, connected to the threshold setting unit, for detecting whether the number of flow entries generated by the SDN controller exceeds a preset threshold. When the number of the flow table entries does not exceed the threshold value, the SDN controller module continues to send the flow table to the SDN switch module in a conventional flow table issuing manner, that is, the SDN controller module generates the flow table and issues the flow table to the SDN switch module one by one. When the number of flow entries generated by the SDN controller module exceeds a preset threshold of the flow entries, the flow file unit generates a flow file including the flow entries.
And the flow file unit is connected with the threshold detection unit and used for generating a flow file containing the flow entries when the number of the flow entries generated by the SDN controller exceeds a preset threshold. And the flow table information sending unit is connected with the flow file unit and used for sending the flow table information containing the flow file information to the SDN switch. After generating the flow file containing the flow entry, the flow table information sending unit sends a flow table message containing the flow file information to the SDN switch, where the flow table information at least includes a flow file identifier and a name of the flow file.
The SDN switch module further comprises: the flow table information receiving unit, the flow table item acquiring unit and the configuration issuing unit. The flow table information receiving unit is used for receiving flow table information containing flow file information from an SDN controller module; the flow table entry obtaining unit is connected to the flow table information receiving unit, and configured to obtain a flow table entry in the flow file from the SDN controller module in a preset network access manner according to the received flow table message.
Furthermore, after sending the flow table message containing the flow file information to the SDN switch module, to ensure that the SDN switch module has acquired the flow entries in the flow files, the SDN controller module sends an inquiry message asking the SDN switch module whether the SDN switch module has acquired the flow entries in the flow files. Therefore, the SDN switch module further comprises: and the feedback information sending unit is connected with the configuration issuing unit and used for sending feedback information for confirming that the flow table item is acquired and the flow table is issued to the SDN controller module. The SDN controller further comprises a feedback information receiving unit used for judging that feedback information fed back by the SDN switch and used for confirming that a flow table item is acquired and a flow table is issued is received within preset time. When the feedback information receiving unit does not receive the feedback information fed back by the SDN interaction machine within the preset time, the flow table issuing unit issues a flow table containing the flow table entry to the SDN switch module. That is to say, when the feedback information receiving unit does not receive the feedback information, which is fed back by the feedback information sending unit and used for confirming that the flow table item has been acquired and the flow table has been issued, within the preset time, the SDN controller module continues to issue the flow table to the SDN switch module in a conventional flow table issuing manner, that is, the SDN controller module generates the flow table and issues the flow table to the SDN switch module one by one.
As shown in fig. 3, a weighted round robin algorithm includes the following steps:
1) sending a client request through a client module;
2) and dynamically detecting the server module through the SDN switch module, and reporting the detection result to the SDN controller module. The step 2) specifically comprises the steps of 21) sending a PING message to an interface through a PING message sending unit so as to obtain the IP address of the active server; 22) constructing an FTP request message through an FTP request message constructing unit to acquire an active FTP server address; 23) constructing an HTTP request message through an HTTP request message constructing unit to acquire an active WEB server address; 24) and reporting the server information acquired by the PING message sending unit, the FTP request message constructing unit and the HTTP request message constructing unit to the SDN controller module in an Experimenter message form through a message reporting unit.
3) And generating a weighted polling strategy table according to the detection result reported by the SDN switch module through an SDN controller module, allocating a server to the client request of the client module according to the weighted polling strategy table, and issuing a flow table to the SDN switch module according to the server allocation result.
The step 3) specifically includes that 31) an Experimenter message reported by the SDN switch module is received through a message receiving unit; 32) analyzing the Experimenter message received by the message receiving unit through a message analyzing unit to acquire server information; 33) generating a weighted polling strategy table according to the server information acquired by the message analysis unit by a weighted polling strategy table generation unit; 34) obtaining the weight and the use times of each server through a server distribution unit according to the weighted polling strategy table, and distributing a client for the corresponding server according to the weight and the use times of each server; 35) and calculating a forwarding path according to the server distribution result of the server distribution unit by a flow table issuing unit, and issuing a flow table to the SDN switch module according to the forwarding path.
4) And receiving and processing the client request sent by the client module through the server module.
The weighted polling algorithm of the SDN controller further comprises the following steps, 41) setting a threshold value of a flow table entry through a threshold value setting unit; 42) detecting whether the number of flow table entries generated by the SDN controller exceeds a preset threshold value through a threshold value detection unit; 43) the flow file unit is used for generating a flow file containing the flow entries when the number of the flow entries generated by the SDN controller exceeds a preset threshold; 44) and sending a flow table message containing the flow file information to the SDN switch through a flow table information sending unit.
The weighted polling algorithm of the SDN controller further comprises the following steps of judging that feedback information which is fed back by the SDN switch and used for confirming that a flow table item is acquired and a flow table is issued is received within preset time through a feedback information receiving unit; when the feedback information fed back by the SDN switch is not received within a preset time, the flow table issuing unit issues a flow table containing the flow table entry to the SDN switch. That is to say, when the SDN controller module does not receive feedback information, which is fed back by the SDN switch module and used for confirming that the flow table entry has been acquired and the flow table has been issued, within a preset time, the SDN controller module continues to issue the flow table to the SDN switch module in a conventional flow table issuing manner, that is, the SDN controller module generates the flow table and issues the flow table to the SDN switch module one by one.
The SDN controller module is responsible for centralized control of the whole SDN Network (Software Defined Network), and plays a very important role in mastering a full Network resource view and improving Network resource delivery quality. A single controller cannot cope with SDN network problems across multiple zones; a distributed cluster formed by a plurality of controllers is needed, and the problems of reliability, expansibility, performance and the like caused by a single controller node are avoided.
Accordingly, the SDN switch module further comprises a communication processing unit, the SDN controller module comprising: the system comprises a first SDN controller, at least one second SDN controller and a configuration management unit. The first SDN controller is used for establishing a main connection with a communication processing unit of the SDN switch module; the second SDN controller is used for establishing an auxiliary connection with a communication processing unit of the SDN switch module; the configuration management unit is configured to select a new primary connection from the secondary connections of the SDN switch module if the primary connection fails. Data synchronization is maintained between the SDN controller of the new master connection and the SDN controller of the old master connection, and the load of the SDN controller losing activity (for example, the master connection fails due to a fault) in the SDN controller module is evenly distributed to other active SDN controllers according to a preset load sharing algorithm.
In order for an SDN switch module to be able to switch from an old master connection to a new master connection, there needs to be a corresponding communication interaction between the SDN switch module and the SDN controller module. Specifically, the configuring a new primary connection of the management unit, which is selected from the secondary connections of the SDN switch module, includes: receiving a first Experimenter message containing the MAC address of the SDN switch, calculating according to the IP address of the SDN controller module and the MAC address to determine the connection type of each SDN controller and the SDN switch module, wherein the connection type is the main connection or the auxiliary connection, and then sending second Experimenter messages to the SDN switch module, wherein each second Experimenter message contains the IP address and the connection type of one SDN controller in the SDN controller module.
The SDN controllers are synchronized into real-time synchronization and periodic synchronization, the real-time synchronization is incremental synchronization, and the factors causing the real-time synchronization comprise four points: statistical information change, composer change, northbound application change, OF message change, and the like; the periodic synchronization is the synchronization of the whole database, and needs to be processed in the background because the time is long. In addition to connection state information, the data content in the databases of the respective SDN controllers may remain completely consistent.
The specific embodiments described herein are merely illustrative of the spirit of the invention. Various modifications or additions may be made to the described embodiments or alternatives may be employed by those skilled in the art without departing from the spirit or ambit of the invention as defined in the appended claims.

Claims (8)

1. A weighted polling system based on SDN, characterized by: comprises the steps of (a) preparing a mixture of a plurality of raw materials,
the client is used for sending a client request;
the server is used for receiving and processing the client request sent by the client;
the SDN switch is used for dynamically detecting the server and reporting the detection result to the SDN controller;
the SDN controller is used for generating a weighted polling strategy table according to the detection result reported by the SDN switch, allocating a server for the client request of the client according to the weighted polling strategy table, and issuing a flow table to the SDN switch according to the server allocation result;
the SDN controller further comprises a first module for receiving the SDN control signal,
a message receiving unit, configured to receive an Experimenter message reported by the SDN switch;
the message analysis unit is used for analyzing the Experimenter message received by the message receiving unit to acquire server information;
a weighted polling policy table generating unit, configured to generate a weighted polling policy table according to the server information acquired by the message analyzing unit;
the server distribution unit is used for obtaining the weight and the use times of each server according to the weighted polling strategy table and distributing a client for the corresponding server according to the weight and the use times of each server;
and the flow table issuing unit is used for calculating a forwarding path according to the server allocation result of the server allocation unit and issuing a flow table to the SDN switch according to the forwarding path.
2. The SDN based weighted polling system of claim 1, wherein: the SDN switch comprises a network interface module and a network interface module,
a PING message sending unit, configured to send a PING message to an interface to obtain an IP address of an active server;
the FTP request message constructing unit is used for constructing an FTP request message to acquire an active FTP server address;
the HTTP request message constructing unit is used for constructing an HTTP request message to acquire an active WEB server address;
and the message reporting unit is used for reporting the server information acquired by the PING message sending unit, the FTP request message constructing unit and the HTTP request message constructing unit to the SDN controller in an Experimenter message form.
3. The SDN based weighted polling system of claim 1, wherein: the SDN controller further comprises a first module for receiving the SDN control signal,
a threshold setting unit, configured to set a threshold of the flow table entry;
a threshold detection unit, connected to the threshold setting unit, configured to detect whether the number of flow entries generated by the SDN controller exceeds a preset threshold;
a flow file unit, connected to the threshold detection unit, configured to generate a flow file including the flow entry when the number of flow entries generated by the SDN controller exceeds a preset threshold;
and the flow table information sending unit is connected with the flow file unit and used for sending the flow table information containing the flow file information to the SDN switch.
4. The SDN based weighted polling system of claim 3, wherein: also included in the SDN controller is a network interface,
and the feedback information receiving unit is used for judging that feedback information which is fed back by the SDN switch and used for confirming that a flow table item is acquired and a flow table is issued is received within preset time.
5. A weighted round robin algorithm using the system of any one of claims 1-4 wherein: comprises the following steps of (a) carrying out,
1) sending a client request through a client;
2) dynamically detecting a server through an SDN switch, and reporting a detection result to an SDN controller;
3) generating a weighted polling policy table according to a detection result reported by the SDN switch through an SDN controller, allocating a server for a client request of the client according to the weighted polling policy table, and issuing a flow table to the SDN switch according to a server allocation result;
4) receiving and processing a client request sent by the client through a server;
the step 3) specifically comprises the following steps of,
31) receiving an Experimenter message reported by the SDN switch through a message receiving unit;
32) analyzing the Experimenter message received by the message receiving unit through a message analyzing unit to acquire server information;
33) generating a weighted polling strategy table according to the server information acquired by the message analysis unit by a weighted polling strategy table generation unit;
34) obtaining the weight and the use times of each server through a server distribution unit according to the weighted polling strategy table, and distributing a client for the corresponding server according to the weight and the use times of each server;
35) and calculating a forwarding path according to the server distribution result of the server distribution unit by a flow table issuing unit, and issuing a flow table to the SDN switch according to the forwarding path.
6. The weighted round robin algorithm of claim 5, wherein: the step 2) specifically comprises the following steps of,
21) sending a PING message to an interface through a PING message sending unit to acquire the IP address of an active server;
22) constructing an FTP request message through an FTP request message constructing unit to acquire an active FTP server address;
23) constructing an HTTP request message through an HTTP request message constructing unit to acquire an active WEB server address;
24) and reporting the server information acquired by the PING message sending unit, the FTP request message constructing unit and the HTTP request message constructing unit to the SDN controller in an Experimenter message form through a message reporting unit.
7. The weighted round robin algorithm of claim 5, wherein: the weighted round robin algorithm of the SDN controller further comprises the steps of,
41) setting a threshold value of a flow table entry through a threshold value setting unit;
42) detecting whether the number of flow table entries generated by the SDN controller exceeds a preset threshold value through a threshold value detection unit;
43) the flow file unit is used for generating a flow file containing the flow entries when the number of the flow entries generated by the SDN controller exceeds a preset threshold;
44) and sending a flow table message containing the flow file information to the SDN switch through a flow table information sending unit.
8. The weighted round robin algorithm of claim 7, wherein: the weighted round robin algorithm of the SDN controller further comprises the steps of,
judging that feedback information fed back by the SDN switch and used for confirming that a flow table item is acquired and a flow table is issued within preset time through a feedback information receiving unit;
when the feedback information fed back by the SDN switch is not received within a preset time, the flow table issuing unit issues a flow table containing the flow table entry to the SDN switch.
CN201710065812.8A 2017-02-06 2017-02-06 SDN-based weighted polling system and algorithm Active CN106850803B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710065812.8A CN106850803B (en) 2017-02-06 2017-02-06 SDN-based weighted polling system and algorithm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710065812.8A CN106850803B (en) 2017-02-06 2017-02-06 SDN-based weighted polling system and algorithm

Publications (2)

Publication Number Publication Date
CN106850803A CN106850803A (en) 2017-06-13
CN106850803B true CN106850803B (en) 2020-06-26

Family

ID=59122056

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710065812.8A Active CN106850803B (en) 2017-02-06 2017-02-06 SDN-based weighted polling system and algorithm

Country Status (1)

Country Link
CN (1) CN106850803B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11593291B2 (en) 2018-09-10 2023-02-28 GigaIO Networks, Inc. Methods and apparatus for high-speed data bus connection and fabric management
CN109960586B (en) * 2019-02-19 2021-02-12 北京邮电大学 Server state sensible four-layer load balancer and balancing method
US20210075745A1 (en) * 2019-09-10 2021-03-11 GigaIO Networks, Inc. Methods and apparatus for improved polling efficiency in network interface fabrics
US11593288B2 (en) 2019-10-02 2023-02-28 GigalO Networks, Inc. Methods and apparatus for fabric interface polling

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104158758A (en) * 2014-08-26 2014-11-19 上海斐讯数据通信技术有限公司 Load balancing processing method and system based on user message time feedback in SDN network
CN104301247A (en) * 2014-10-29 2015-01-21 杭州华三通信技术有限公司 Method and device for load balancing of PPPOE access equipment
CN104486246A (en) * 2014-12-23 2015-04-01 上海斐讯数据通信技术有限公司 SDN (software defined networking) architecture based method for realizing QoS (quality of service) mechanism of VXLAN (virtual extensible LAN)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103795805B (en) * 2014-02-27 2017-08-25 中国科学技术大学苏州研究院 Distributed server load-balancing method based on SDN
WO2015187946A1 (en) * 2014-06-05 2015-12-10 KEMP Technologies Inc. Adaptive load balancer and methods for intelligent data traffic steering
CN104917678B (en) * 2015-06-02 2018-07-06 上海斐讯数据通信技术有限公司 Link aggregation method based on SDN
CN105357117B (en) * 2015-10-21 2019-12-13 上海斐讯数据通信技术有限公司 Flow table issuing method and system, SDN controller and SDN switch
CN105721577B (en) * 2016-02-15 2018-12-14 安徽大学 A kind of software-oriented defines the server load balancing method of network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104158758A (en) * 2014-08-26 2014-11-19 上海斐讯数据通信技术有限公司 Load balancing processing method and system based on user message time feedback in SDN network
CN104301247A (en) * 2014-10-29 2015-01-21 杭州华三通信技术有限公司 Method and device for load balancing of PPPOE access equipment
CN104486246A (en) * 2014-12-23 2015-04-01 上海斐讯数据通信技术有限公司 SDN (software defined networking) architecture based method for realizing QoS (quality of service) mechanism of VXLAN (virtual extensible LAN)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Kandoo 架构的SDN 网络负载均衡算法研究.;张开东.;《山西电子技术》;20160229(第1期);全文 *

Also Published As

Publication number Publication date
CN106850803A (en) 2017-06-13

Similar Documents

Publication Publication Date Title
RU2651149C2 (en) Sdn-controller, data processing center system and the routed connection method
TWI724106B (en) Business flow control method, device and system between data centers
US9806983B2 (en) System and method for control flow management in software defined networks
Fu et al. Orion: A hybrid hierarchical control plane of software-defined networking for large-scale networks
CN104780096B (en) A kind of system controlling virtual network and Virtual Network Controller node
EP2989545B1 (en) Defining interdependent virtualized network functions for service level orchestration
EP3016316B1 (en) Network control method and apparatus
CN106850803B (en) SDN-based weighted polling system and algorithm
US9461877B1 (en) Aggregating network resource allocation information and network resource configuration information
US20150172115A1 (en) Mapping virtual network elements to physical resources in a telco cloud environment
Zhang et al. SDN-based load balancing strategy for server cluster
WO2021007963A1 (en) Route distribution method and controller, information routing method and network node device
US9088477B2 (en) Distributed fabric management protocol
US20140280864A1 (en) Methods of Representing Software Defined Networking-Based Multiple Layer Network Topology Views
CN103825975A (en) Cdn node distribution server and system
EP3132567B1 (en) Event processing in a network management system
CN109660441A (en) The method and device of multicast replication in Overlay network
CN111478793B (en) Service request processing method and device, terminal equipment and storage medium
CN108011907B (en) Resource allocation method and device for power distribution and utilization communication network
WO2015058705A1 (en) Data distribution method and apparatus
WO2018041101A1 (en) Data query method and apparatus and data query processing method and apparatus
CN101355521B (en) Control method for equalizing load, communication apparatus and communication system
CN113300957A (en) Intelligent backbone network management scheduling system and method based on segment routing
Wang et al. A multi-domain SDN scalability architecture implementation based on the coordinate controller
CN108512811A (en) A kind of virtual network partition method and SDN controllers based on SDN

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200519

Address after: High tech Zone 266000 in Shandong province Qingdao city wide Shing Road No. 69 west two or three, four floor and three floor North building area

Applicant after: GLOBAL TONE COMMUNICATION TECHNOLOGY Co.,Ltd.

Address before: 201616 Shanghai city Songjiang District Sixian Road No. 3666

Applicant before: Phicomm (Shanghai) Co.,Ltd.

GR01 Patent grant
GR01 Patent grant