CN113347089B - Software Defined Network (SDN) system, network configuration method, device and equipment - Google Patents

Software Defined Network (SDN) system, network configuration method, device and equipment Download PDF

Info

Publication number
CN113347089B
CN113347089B CN202110756427.4A CN202110756427A CN113347089B CN 113347089 B CN113347089 B CN 113347089B CN 202110756427 A CN202110756427 A CN 202110756427A CN 113347089 B CN113347089 B CN 113347089B
Authority
CN
China
Prior art keywords
network
plane server
server
control plane
optional
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
CN202110756427.4A
Other languages
Chinese (zh)
Other versions
CN113347089A (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.)
Beijing Zitiao Network Technology Co Ltd
Original Assignee
Beijing Zitiao Network 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 Beijing Zitiao Network Technology Co Ltd filed Critical Beijing Zitiao Network Technology Co Ltd
Priority to CN202110756427.4A priority Critical patent/CN113347089B/en
Publication of CN113347089A publication Critical patent/CN113347089A/en
Application granted granted Critical
Publication of CN113347089B publication Critical patent/CN113347089B/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery

Abstract

The embodiment of the disclosure discloses a Software Defined Network (SDN) system, a network configuration method, a device, an electronic device and a storage medium, comprising: a data plane server, a control plane server and a proxy server; a target network exists between the proxy server and the control plane server, and the target network does not exist between the data plane server and the control plane server; a first optional network between the data plane server and the proxy server and a target network between the proxy server and the control plane server form a proxy network between the data plane server and the control plane server; the data plane server is further used for respectively determining the communication quality of each second optional network between the data plane server and the control plane server, and adjusting the first network which is currently configured to be in communication connection with the control plane server based on the communication quality, so that the stability and the usability of the network connection between the data plane server and the control plane server are improved.

Description

Software Defined Network (SDN) system, network configuration method, device and equipment
Technical Field
The present disclosure relates to the field of communications technologies, and in particular, to a software defined network SDN system, a network configuration method, an apparatus, an electronic device, and a storage medium.
Background
SDN (Software Defined Networking) is a new network architecture that is Software programmable. The SDN adopts a centralized control plane and a distributed data plane, the two planes are separated from each other, and the control plane issues a flow table to the data plane through a related protocol (such as an OpenFlow protocol) to change a forwarding route of the data plane. The control plane utilizes a control-forwarding communication interface for centralized control of network devices on the data plane and provides flexible programmability. The control plane controls the data plane uniformly, can acquire the network equipment information on the data plane easily, and presents a uniform network view for the application/user, wherein the network view comprises a switch, a router, a virtual machine, a virtual subnet and a virtual gateway for communication between the virtual subnets. The user can configure the IP address of the virtual machine, the subnet and the routing rule among the subnets according to the own network planning. The open customization and centralized control characteristics of the SDN solve the problem of internet rigidity to a certain extent, endow users with the capability of customizing a network system and a network protocol, and the users can develop and control own applications and hardware platforms to a certain extent according to own requirements and independently and flexibly construct private networks.
In the prior art, when a network between a control plane and a data plane is interrupted or a packet loss rate between the control plane and the data plane is high, whether the control plane or the data plane needs to wait for a preset timeout to determine that the network is disconnected, network conditions between the control plane and the data plane cannot be sensed sensitively, and a scheme for maintaining a stable link between the control plane and the data plane is not provided after the network is determined to be disconnected, so that the stable connection between the control plane and the data plane cannot be ensured.
Disclosure of Invention
In order to solve the technical problem or at least partially solve the technical problem, embodiments of the present disclosure provide a Software Defined Network (SDN) system, a network configuration method, an apparatus, an electronic device, and a storage medium, which improve stability and availability of a network connection between a data plane server and a control plane server.
In a first aspect, an embodiment of the present disclosure provides a software defined network SDN system, where the system includes:
the system comprises a data plane server and a control plane server, wherein the data plane server is used for forwarding a message, and the control plane server is used for sending a flow table to the data plane server so as to indicate a forwarding path of the message; the SDN system further comprises: a proxy server;
Wherein a target network exists between the proxy server and the control plane server, and the target network does not exist between the data plane server and the control plane server;
a first optional network between the data plane server and the proxy server and the target network between the proxy server and the control plane server constitute a proxy network between the data plane server and the control plane server;
the data plane server is further configured to determine communication quality of each second optional network between the data plane server and the control plane server, and adjust a first network currently configured to be in communication connection with the control plane server based on the communication quality of each second optional network, so as to be in communication connection with the control plane server through an optional network whose communication quality meets a set condition; wherein each of the second selectable networks comprises the proxy network.
In a second aspect, an embodiment of the present disclosure further provides a network configuration method, where the method includes:
respectively determining the communication quality of each second optional network for communication connection with the target end;
and according to the communication quality of each second optional network, adjusting the first network which is configured to be in communication connection with the target end at present so as to be in communication connection with the target end through the optional networks with the communication quality meeting set conditions.
In a third aspect, an embodiment of the present disclosure further provides a network configuration apparatus, where the apparatus includes:
the communication quality determining module is used for respectively determining the communication quality of each second optional network for communication connection with the target end;
and the configuration module is used for adjusting the first network which is currently configured to be in communication connection with the target end according to the communication quality of each second optional network so as to be in communication connection with the target end through the optional networks with the communication quality meeting set conditions.
In a fourth aspect, an embodiment of the present disclosure further provides an electronic device, where the electronic device includes:
one or more processors;
storage means for storing one or more programs;
when executed by the one or more processors, cause the one or more processors to implement a network configuration method as described above.
In a fifth aspect, the disclosed embodiments also provide a computer-readable storage medium, on which a computer program is stored, which when executed by a processor implements the network configuration method as described above.
In a sixth aspect, the disclosed embodiments also provide a computer program product comprising a computer program or instructions which, when executed by a processor, implement the network configuration method as described above.
Compared with the prior art, the technical scheme provided by the embodiment of the disclosure has at least the following advantages:
in the SDN system provided by the embodiments of the present disclosure, when there is no target network between the area where the data plane server is located and the area where the control plane server is located, by providing a proxy server in a first region where a target network is located between the control plane server and the region where the target network is located, a first alternative network between the data plane server and the proxy server, and the target network between the proxy server and the control plane server constitutes a proxy network between the data plane server and the control plane server, so that when the communication quality of the other optional network between the data plane server and the control plane server is not good, the communication between the data plane server and the control plane server is realized through the proxy network, the network communication path between the data plane server and the control plane server is increased, thereby improving the stability and availability of the network connection between the data plane server and the control plane server.
Drawings
The above and other features, advantages and aspects of various embodiments of the present disclosure will become more apparent by referring to the following detailed description when taken in conjunction with the accompanying drawings. Throughout the drawings, the same or similar reference numbers refer to the same or similar elements. It should be understood that the drawings are schematic and that elements and features are not necessarily drawn to scale.
Fig. 1 is a schematic structural diagram of a software defined network SDN system in an embodiment of the present disclosure;
fig. 2 is a schematic structural diagram of another SDN system in an embodiment of the present disclosure;
fig. 3 is a schematic flow chart of an optimal network selection method in the embodiment of the present disclosure;
fig. 4 is a schematic flow chart of a network configuration method in an embodiment of the present disclosure;
fig. 5 is a schematic structural diagram of a network configuration apparatus in an embodiment of the present disclosure;
fig. 6 is a schematic structural diagram of an electronic device in an embodiment of the present disclosure.
Detailed Description
Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present disclosure are shown in the drawings, it is to be understood that the present disclosure may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but rather are provided for a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the disclosure are for illustration purposes only and are not intended to limit the scope of the disclosure.
It should be understood that the various steps recited in the method embodiments of the present disclosure may be performed in a different order, and/or performed in parallel. Moreover, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present disclosure is not limited in this respect.
The term "include" and variations thereof as used herein are open-ended, i.e., "including but not limited to". The term "based on" is "based, at least in part, on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Relevant definitions for other terms will be given in the following description.
It should be noted that the terms "first", "second", and the like in the present disclosure are only used for distinguishing different devices, modules or units, and are not used for limiting the order or interdependence relationship of the functions performed by the devices, modules or units.
It is noted that references to "a", "an", and "the" modifications in this disclosure are intended to be illustrative rather than limiting, and that those skilled in the art will recognize that "one or more" may be used unless the context clearly dictates otherwise.
The names of messages or information exchanged between devices in the embodiments of the present disclosure are for illustrative purposes only, and are not intended to limit the scope of the messages or information.
Fig. 1 is a schematic structural diagram of a software defined network SDN system in an embodiment of the present disclosure. As shown in fig. 1, the system includes: a data plane server 110, a control plane server 120, and a proxy server 130.
The data plane server 110 is configured to forward a packet, and the control plane server 120 is configured to send a flow table to the data plane server 110, so as to indicate a forwarding path of the packet. The proxy server 130 is arranged in a first region where a target network is configured between the first region and the control plane server 120, the target network does not exist between the region where the data plane server 110 is located and the region where the control plane server 120 is located, in other words, the target network exists between the proxy server 130 and the control plane server 120, the target network is an optional network between the proxy server 130 and the control plane server 120, and the proxy server 130 and the control plane server 120 can be in communication connection through the target network; the target network does not exist between the data plane server 110 and the control plane server 120, that is, the data plane server 110 and the control plane server 120 cannot be connected through the target network. The first optional network between the data plane server 110 and the proxy server 130 and the target network between the proxy server 130 and the control plane server 120 constitute a proxy network between the data plane server 110 and the control plane server 120, that is, a new type of optional network is added, specifically, an optional network for the data plane server 110 and the control plane server 120 to communicate with each other is added, so as to provide a network resource base for improving the stability and availability of the network connection between the data plane server 110 and the control plane server 120.
The data plane server 110 is further configured to determine communication qualities of the second optional networks between the control plane server 120 and the data plane server 110, and adjust the first network currently configured to be in communication connection with the control plane server 120 based on the communication qualities of the second optional networks, so as to be in communication connection with the control plane server 120 through the optional networks whose communication qualities meet the set conditions; wherein each of the second selectable networks comprises the proxy network. By adopting the optional network with the communication quality meeting the set conditions to perform the communication between the data plane server 110 and the control plane server 120, the stability and the availability of the network connection between the data plane server 110 and the control plane server 120 are improved.
Illustratively, each of the second selectable networks further includes at least one of: private networks, VPN (Virtual Private Network), and public networks. A private network refers to a private network, for example, a private network of enterprise Y serves only enterprise Y, and data packets related to enterprise Y can be transmitted through the private network, while data packets related to other enterprises cannot be transmitted through the private network. The public network refers to a network serving all users, including each enterprise, that is, a data message of each user can be transmitted through the public network. Therefore, in general, the transmission quality of the public network is not as good as that of the private network. The transmission quality may be evaluated by the transmission speed and/or the transmission stability. The VPN belongs to a remote access technology, and is a private network established based on a public network, and generally, the transmission quality of the VPN is inferior to that of a private network.
In one embodiment, referring to an architecture diagram of another SDN system as shown in fig. 2, the SDN system includes: the data plane server 210, the control plane server 220 and the proxy server 230, wherein there is no private network between the data plane server 210 and the control plane server 220, and there is only a public network, so that the data plane server 210 and the control plane server 220 can only perform network connection through the public network, that is, the second optional network between the data plane server 210 and the control plane server 220 is only one of the public network, and the data plane server 210 and the control plane server 220 can only transmit messages through the public network, but cannot transmit messages through the private network. However, as is known, the packet loss rate of the public network direct connection is high, and the stability and the availability of the network connection between the data plane server 210 and the control plane server 220 cannot be well guaranteed through the public network direct connection. Therefore, the proxy server 230 is installed in a region where a private network is established with the control plane server 220, that is, the proxy server 230 is installed in a first region where a target network (private network) is located between the control plane server 220 and the region where the data plane server 110 is located and the control plane server 120 is located. A public network between the data plane server 210 and the proxy server 230, and a private network (i.e., a target network) between the proxy server 230 and the control plane server 220 constitute a proxy network between the data plane server 210 and the control plane server 220, in this case, the second optional network between the data plane server 210 and the control plane server 220 includes two types, one is a public network, and the other is a proxy network, that is, a new type of second optional network is added, so as to provide a network resource basis for improving the stability and availability of the network connection between the data plane server 110 and the control plane server 120. If the communication quality of the public network directly connected between the data plane server 210 and the control plane server 220 is poor, the network connection between the data plane server 210 and the control plane server 220 can be realized through the proxy network. It is understood that the public network is configured as a first network in which the data plane server 210 is in communication connection with the control plane server 220, and if the communication quality of the first network is not good, the first network may be replaced by a proxy network, that is, the first network currently configured to be in communication connection with the control plane server 220 is adjusted to be in communication connection with the control plane server 220 through an optional network (i.e., a proxy network) whose communication quality meets a set condition.
When a private network does not exist between the area where the data plane server 210 is located and the area where the control plane server 220 is located, the proxy server 230 is arranged in the first area where the private network is configured between the area where the control plane server 220 is located, the public network between the data plane server 210 and the proxy server 230, and the private network between the proxy server 230 and the control plane server 220 form the proxy network between the data plane server 210 and the control plane server 220, so that a new type of optional network is added, and a network resource basis is provided for improving the stability and the availability of network connection between the data plane server 210 and the control plane server 220. When the quality of the public network communication between the data plane server 210 and the control plane server 220 is not good, the data plane server 210 and the control plane server 220 communicate with each other through the proxy network, and a network communication path between the data plane server 210 and the control plane server 220 is increased, so that the stability and the availability of the network connection between the data plane server 210 and the control plane server 220 are improved. In the process of communication between the data plane server and the control plane server through the proxy network, the proxy server periodically reports the health degree of the proxy server to the control plane server (the specific form can be that preset messages are sent to the control plane server), if the proxy server reports the health degree failure to the control plane server (when the private network between the proxy server and the control plane server is normal, the control plane server receives the health degree reported by the proxy server and then feeds back response information which is successfully received to the proxy server, if the proxy server does not receive the response information returned by the control plane server within overtime or the returned response information is not successful, then the failure of reporting the health degree is judged to reach the preset value, then the private network between the proxy server and the control plane server is represented as unhealthy, at this moment, the proxy server rejects the detection request of the data plane server, when the detection request of the data plane server is rejected, the data plane server can sense that the communication quality of the proxy network is lower than that of the public network, and the data plane server switches the connection from the proxy network to the public network.
In another embodiment, since there is no VPN network between the data plane server 210 and the control plane server 220, the proxy server 230, the public network between the data plane server 210 and the proxy server 230, and the VPN network between the proxy server 230 and the control plane server 220 may be set up in a region where a VPN network is established with the control plane server 220 to constitute a proxy network between the data plane server 210 and the control plane server 220. If the communication quality of the public network directly connected between the data plane server 210 and the control plane server 220 is poor, the network connection between the data plane server 210 and the control plane server 220 can be realized through the proxy network. When there is no VPN network between the area where the data plane server 210 is located and the area where the control plane server 220 is located, a proxy server 230 is provided in a first area where the VPN network is located between the area where the control plane server 220 is located, a public network between the data plane server 210 and the proxy server 230, and a VPN network between the proxy server 230 and the control plane server 220 constitute a proxy network between the data plane server 210 and the control plane server 220, so that a new type of optional network is added, and a network resource basis is provided for improving stability and availability of network connection between the data plane server 210 and the control plane server 220. When the quality of the public network communication between the data plane server 210 and the control plane server 220 is not good, the data plane server 210 and the control plane server 220 communicate with each other through the proxy network, and a network communication path between the data plane server 210 and the control plane server 220 is increased, so that the stability and the availability of the network connection between the data plane server 210 and the control plane server 220 are improved.
In another embodiment, if two types of networks, namely a public network and a VPN, exist between the data plane server and the proxy server, and a private network exists between the proxy server and the control plane server, there are two types of proxy networks, one of them is: a network consisting of a public network between the data plane server and the proxy server and a private line between the proxy server and the control plane server; the other is as follows: VPN network between data plane server and proxy server, and network composed of special line between proxy server and control plane server. Thus, in determining the communication quality of each alternative network between the data plane server and the control plane server, the communication quality of each proxy network is determined separately.
In one embodiment, the determining, by the data plane server, the communication quality of each second optional network with the control plane server includes:
and respectively determining the evaluation scores of the second optional networks in the set detection period based on the corresponding packet loss rates and/or delay times of the second optional networks in the set detection period, wherein the evaluation scores are used for representing the quality of the communication quality, and generally, the higher the evaluation score is, the better the communication quality of the network is.
Specifically, in a set detection period, it is assumed that the data plane server sends a preset message to the control plane server through the public network at a certain frequency, and the control plane server returns a response message to the data plane server every time the control plane server receives the preset message, so as to inform the data plane server that the preset message sent by the data plane server has been received. Therefore, optionally, the packet loss rate is 1 — the number of response messages received/the number of preset messages transmitted. The delay time of a single message (the time point of receiving the response message-the time point of sending the preset message)/2, and the overall delay time in the set detection period may be an average value of the delay times of all the single messages. According to the packet loss rate and/or the delay time, determining the evaluation score of the public network in the set detection period may be:
when the packet loss rate is greater than the packet loss threshold, the evaluation score is corresponding to 0, and when the packet loss rate is less than the packet loss threshold, the corresponding evaluation score is M x (1-packet loss rate), and M can be set according to the actual service condition. Or, when the delay time is greater than the delay threshold, the evaluation score is corresponding to 0, and when the delay time is less than the delay threshold, the evaluation score is corresponding to N (delay threshold — delay time), where N may be set according to an actual traffic situation. Or when the delay time is greater than the delay threshold or the packet loss rate is greater than the packet loss threshold, the evaluation score is corresponding to 0, otherwise, the evaluation score is corresponding to M (1-packet loss rate) + N (threshold-delay).
In another embodiment, determining the evaluation score of each agent network in a set probing period comprises:
respectively sending a first preset message to the proxy server by using each second optional network between the data plane server and the proxy server in a set detection period, and receiving first response information aiming at the first preset message returned by the proxy server;
determining a first packet loss rate and/or a first delay time corresponding to each second optional network between the proxy server and the proxy server in a set detection period according to the first response information;
sending a second preset message to the control plane server by using each second optional network between the proxy server and the control plane server in a set detection period, and receiving second response information aiming at the second preset message returned by the control plane server;
determining a second packet loss rate and/or a second delay time corresponding to each second optional network between the control plane server and the control plane server within a set detection period according to the second response information;
and determining the evaluation score of the proxy network in the set detection period based on the first packet loss rate and/or the first delay time and the second packet loss rate and/or the second delay time.
Specifically, if two types of networks, namely a public network and a VPN, exist between the data plane server and the proxy server, and a private network exists between the proxy server and the control plane server, there are two types of proxy networks, one of which is: a first proxy network consisting of a public network between the data plane server and the proxy server and a private line between the proxy server and the control plane server; the other is as follows: a VPN network between the data plane server and the proxy server, and a second proxy network composed of a private line between the proxy server and the control plane server.
The step of determining the evaluation score of the first proxy network between the data plane server and the control plane server in the set probing period specifically includes the following steps:
the data plane server sends a first preset message to the proxy server through the public network in a set detection period, and receives first response information which is returned by the proxy server and aims at the first preset message; determining a first packet loss rate and/or a first delay time corresponding to a public network between a data plane server and a proxy server in a set detection period according to the first response information; and determining a first score corresponding to the public network between the data plane server and the proxy server in a set detection period according to the first packet loss rate and/or the first delay time. The proxy server sends a second preset message to the control plane server through a private network between the proxy server and the control plane server in a set detection period, and receives second response information which is returned by the control plane server and aims at the second preset message; determining a second packet loss rate and/or a second delay time corresponding to the private network between the control plane server and the control plane server within a set detection period according to the second response message; and determining a second score corresponding to the private network between the proxy server and the control plane server in the set detection period according to the second packet loss rate and/or the second delay time, and determining an evaluation score corresponding to the first proxy network according to the first score and the second score.
Similarly, determining the evaluation score of the second proxy network between the data plane server and the control plane server in the set probing period specifically includes the following steps:
the data plane server sends a first preset message to the proxy server through the VPN network in a set detection period, and receives first response information which is returned by the proxy server and aims at the first preset message; determining a first packet loss rate and/or a first delay time corresponding to VPN between the data plane server and the proxy server in a set detection period according to the first response information; and determining a first score corresponding to the VPN network between the data plane server and the proxy server in a set detection period according to the first packet loss rate and/or the first delay time. The proxy server sends a second preset message to the control plane server through a private network between the proxy server and the control plane server in a set detection period, and receives second response information which is returned by the control plane server and aims at the second preset message; determining a second packet loss rate and/or a second delay time corresponding to the private network between the control plane server and the control plane server within a set detection period according to the second response message; and determining a second score corresponding to the private network between the proxy server and the control plane server in the set detection period according to the second packet loss rate and/or the second delay time, and determining an evaluation score corresponding to the second proxy network according to the first score and the second score.
After obtaining the evaluation score of each second optional network, the optional network with the highest evaluation score can be configured as the network which is in communication connection with the control plane server currently.
In one embodiment, in order to prevent frequent switching of the long connection caused by network jitter, that is, to avoid frequent switching of the network currently in communication connection with the control plane server, further, the evaluation score corresponding to each second selectable network may be weighted, and it may be determined whether to adjust the first network currently configured to be in communication connection with the control plane server based on the obtained weighted evaluation score.
Specifically, the determining the communication quality of each second optional network with the control plane server respectively further includes:
and weighting the evaluation scores of the current second selectable networks according to the evaluation scores of the second selectable networks in the set detection period based on the weights corresponding to the current second selectable networks to obtain the weighted evaluation scores of the current second selectable networks in the set detection period.
And determining the weight corresponding to the current second optional network based on the historical communication quality of the current second optional network. For example, the second optional networks between the data plane server and the control plane server are respectively: a public network and a proxy network. In the first set detection period, the evaluation scores corresponding to the public network and the proxy network are respectively 10 and 9, that is, the evaluation score corresponding to the public network is 10, and the evaluation score corresponding to the proxy network is 9. In a second set detection period, the corresponding evaluation scores of the public network and the proxy network are respectively (9, 10). In a third set detection period, the corresponding evaluation scores of the public network and the proxy network are respectively (10, 9). Assuming that the first network currently configured to be in communication connection with the control plane server is a public network, the first network should be switched from the public network to the proxy network after the second probing period, and the first network should be switched from the proxy network to the public network after the third probing period, which requires two times of switching. If the weighted evaluation scores corresponding to the public network and the proxy network obtained by weighting the evaluation scores based on a certain rule are respectively [ 12, 9 ], [ 11, 10 ] and [ 12, 9 ], the weighted evaluation scores corresponding to the public network in each set detection period are all the highest, so that the first network (namely the public network) does not need to be switched. Therefore, the evaluation score is weighted according to a certain rule, and whether the first network which is currently configured to be in communication connection with the control plane server is switched or not is determined based on the weighted evaluation score obtained after weighting, so that the aim of reducing the switching frequency can be fulfilled, and the stability of network connection can be ensured.
Optionally, the processing mode of performing weighting processing on the evaluation scores of the second optional networks may be:
[S1,S2,…,Sn]=[S1+(n-1)*K,S2+(n-2)*K,…,Sn]
wherein, S1 represents the evaluation score of the optional network 1, and S1+ (n-1) × K represents the weighted evaluation score of the optional network 1, that is, the weight corresponding to the optional network 1 is (n-1) × K; s2 represents the evaluation score of the selectable network 2, S2+ (n-2) × K represents the weighted evaluation score of the selectable network 2, i.e., the weight corresponding to the selectable network 2 is (n-2) × K; sn denotes the evaluation score of the selectable network n, and the weighted evaluation score of the selectable network n is also Sn, that is, the weight corresponding to the selectable network n is 0. The historical communication quality of the selectable networks 1 to n is poor in sequence, namely the historical communication quality of the selectable network 1 is the best, and the historical communication quality of the selectable network n is the worst.
In one embodiment, in order to further reduce the switching frequency of the first network currently in communication connection with the control plane server, the number of times of obtaining the highest score based on the weighted evaluation score of each second optional network in a preset time period may be determined. Specifically, adjusting the first network currently configured to be in communication connection with the control plane server based on the communication quality of each second optional network includes:
Determining the times of obtaining the highest weighted evaluation score of each second selectable network in a preset time period based on the weighted evaluation score of each second selectable network in a set detection period, wherein the preset time period comprises at least one set detection period; the first network is adjusted based on the second alternative network that has the highest number of times to obtain the highest weighted rating score.
Illustratively, adjusting the first network based on the second alternative network that has obtained the highest weighted evaluation score the most number of times includes: and if the second optional network with the highest number of times of obtaining the highest weighted evaluation score is different from the first network, configuring the second optional network with the highest number of times of obtaining the highest weighted evaluation score as a second network in communication connection with the control plane server so as to be in communication connection with the control plane server through the second network. Or, if the maximum reaches a threshold number of times and the second optional network with the maximum number of times of obtaining the highest weighted evaluation score is different from the first network, the second optional network with the maximum number of times of obtaining the highest weighted evaluation score is configured as a second network in communication connection with the control plane server, so as to be in communication connection with the control plane server through the second network. For example, each second optional network includes a public network, a private network, and a proxy network, the preset time period includes 3 set probing cycles, the network currently configured to perform communication connection with the control plane server is a proxy network, the weighted evaluation scores corresponding to the public network, the private network, and the proxy network determined in the first set probing cycle are 9, 10, and 9, the weighted evaluation scores corresponding to the public network, the private network, and the proxy network determined in the second set probing cycle are 8, 10, and 9, respectively, and the weighted evaluation scores corresponding to the public network, the private network, and the proxy network determined in the third set probing cycle are 9, 10, and 9, respectively. The number of times that the public network obtains the highest weighted evaluation score is 0, the number of times that the private network obtains the highest weighted evaluation score is 3, and the number of times that the proxy network obtains the highest weighted evaluation score is 0, and the network currently configured to be in communication connection with the control plane server can be switched from the proxy network to the private network.
In one embodiment, referring to a flowchart of an optimal network selecting method shown in fig. 3, the method includes the following steps:
and ordering the IP of different optional networks according to the priority: [ IP1, PI2, …, IPn ], wherein the priority of the selectable network corresponding to IP1 is the highest, the priority of the selectable network corresponding to IPn is the lowest, and the historical communication quality of the selectable network corresponding to IP1 is the best, for example, a private network, when a communication network is selected, if the selectable network corresponding to IP1 exists in a communication section, the selectable network corresponding to IP1 is preferentially adopted for communication, and the historical communication quality of the selectable network corresponding to IPn is the worst, for example, a public network, when no other selectable network exists, the selectable network corresponding to IPn is selected for communication, and the corresponding priority is the lowest. And the data plane server respectively detects the communication quality of each second optional network and calculates to obtain the evaluation score of each second optional network. Weighting on the basis of the evaluation scores, selecting the IPm of the optimal network according to the weighted evaluation scores and the priority, and updating the optimal network count:
Figure BDA0003147748100000141
if the IP serial number of the optional network with the highest weighted evaluation score is m in one detection period, the optional network corresponding to the IPm obtains the numerical value with the highest weighted evaluation score plus one. If the optional network corresponding to the IPm obtains the secondary value Cm with the highest weighted evaluation score which is not less than T (the secondary threshold), judging whether the optional network corresponding to the IPm is currently configured, namely judging whether the optional network corresponding to the IPm is a first network currently configured to be in communication connection with the control plane server, and if not, switching the optional network corresponding to the IPm to the current configuration.
The data plane server and the control plane server can be interconnected through IP through various networks (such as several networks in a private network, a VPN and a public network), and a proxy network is built on the basis of the network resources to provide more network options. And the data plane server actively detects the communication quality of each second selectable network, selects an optimal network according to the packet loss rate and/or the delay time, compares the optimal network with the current connection if the optimal network selected within a period of time is the same, keeps the current connection unchanged if the optimal network selected within the period of time is the same, and replaces the current connection with the selected optimal network if the optimal network selected within the period of time is not the same.
The SDN system provided by the embodiment of the disclosure provides a realization scheme of a proxy network between a control plane server and a data plane server, and a scheme of realizing high availability of connection between the data plane server and the control plane server by using different optional networks, makes full use of different network resources, finds network faults in time, obtains an optional network with optimal communication quality, switches communication connection into a network with optimal communication quality, and ensures stability and availability of connection between the data plane server and the control plane server in the SDN.
Fig. 4 is a schematic flow chart of a network configuration method according to an embodiment of the present disclosure, where the present embodiment is applicable to a network configuration situation at a network configuration end, the method may be executed by a network configuration device, the device may be implemented in a software and/or hardware manner, the device may be configured in an electronic device, such as a server or a terminal, and the terminal specifically includes but is not limited to a smart phone, a palm computer, a tablet computer, a wearable device with a display screen, a desktop computer, a notebook computer, an all-in-one machine, a smart home device, and the like. Typically, the network configuration method provided by the embodiment of the present disclosure may be applied to the data plane server described in the above embodiments, and is used to configure the network connection with the control plane server.
As shown in fig. 4, the network configuration method includes the following steps:
and step 410, respectively determining the communication quality of each second optional network for the communication connection with the target end.
The target end may typically be the control plane server described in the above embodiments.
Each second alternative network comprises at least one of: private networks, virtual private networks VPN, public networks and proxy networks. The definition of the proxy network may refer to the definition and implementation of the proxy network between the data plane server and the control plane server described in the above embodiments.
Illustratively, the determining the communication quality of each second optional network for the communication connection with the target end includes:
and respectively determining the evaluation scores of the second optional networks in the set detection period based on the corresponding packet loss rate and/or delay time of the second optional networks in the set detection period, wherein the level of the evaluation scores is used for representing the quality of the communication. Generally, a higher evaluation score indicates better communication quality of the network.
Further, before determining the evaluation scores of the second optional networks in the set probing period based on the packet loss rates and/or the delay times of the second optional networks in the set probing period, determining the communication quality of the second optional networks for performing communication connection with the target end, respectively, further includes:
respectively using each second optional network to send a preset message to the target terminal in a set detection period;
receiving response information aiming at the preset message, which is returned through each second optional network;
and respectively determining the corresponding packet loss rate and/or delay time of each second optional network in the set detection period according to the response information.
Specifically, in a set detection period, it is assumed that the network configuration end sends a preset message to the target end through the public network at a certain frequency, and the target end returns a response message to the network configuration end every time the target end receives the preset message, so as to inform the network configuration end that the preset message sent by the target end has been received. Therefore, optionally, the packet loss rate is 1 — the number of response messages received/the number of preset messages transmitted. The delay time of a single message (the time point of receiving the response message-the time point of sending the preset message)/2, and the overall delay time in the set detection period may be an average value of the delay times of all the single messages. According to the packet loss rate and/or the delay time, determining the evaluation score of the public network in the set detection period may be:
When the packet loss rate is greater than the packet loss threshold, the evaluation score is corresponding to 0, and when the packet loss rate is less than the packet loss threshold, the corresponding evaluation score is M x (1-packet loss rate), and M can be set according to the actual service condition. Or, when the delay time is greater than the delay threshold, the evaluation score is corresponding to 0, and when the delay time is less than the delay threshold, the evaluation score is corresponding to N (delay threshold — delay time), where N may be set according to an actual traffic situation. Or when the delay time is greater than the delay threshold or the packet loss rate is greater than the packet loss threshold, the evaluation score is corresponding to 0, otherwise, the evaluation score is corresponding to M (1-packet loss rate) + N (threshold-delay).
In one embodiment, in order to prevent frequent switching of the long connection caused by network jitter, further, the evaluation scores corresponding to the second selectable networks may be weighted, and whether to adjust the first network currently configured to be in communication connection with the target end may be determined based on the obtained weighted evaluation scores.
Specifically, the determining the communication quality of each second selectable network used for performing communication connection with the target end respectively further includes:
weighting the evaluation scores of the current second selectable networks according to the evaluation scores of the second selectable networks in the set detection period based on the weights corresponding to the current second selectable networks to obtain the weighted evaluation scores of the current second selectable networks in the set detection period; and determining the weight corresponding to the current second optional network based on the historical communication quality of the current second optional network. For example, each second selectable network between the network configuration end and the target end is: a public network and a proxy network. In the first set detection period, the evaluation scores corresponding to the public network and the proxy network are respectively 10 and 9, that is, the evaluation score corresponding to the public network is 10, and the evaluation score corresponding to the proxy network is 9. In a second set detection period, the corresponding evaluation scores of the public network and the proxy network are respectively (9, 10). In the third set detection period, the corresponding evaluation scores of the public network and the proxy network are respectively (10, 9). Assuming that the first network currently configured to be in communication connection with the target is a public network, the first network should be switched from the public network to the proxy network after the second probing period, and the first network should be switched from the proxy network to the public network after the third probing period, which requires two times of switching. If the weighted evaluation scores corresponding to the public network and the proxy network obtained by weighting the evaluation scores based on a certain rule are respectively [ 12, 9 ], [ 11, 10 ], and [ 12, 9 ], the weighted evaluation score corresponding to the public network is the highest in each set detection period, so that the first network (namely the public network) does not need to be switched. Therefore, the evaluation score is weighted according to a certain rule, and whether the first network which is currently configured to be in communication connection with the target end is switched or not is determined based on the weighted evaluation score obtained after weighting, so that the aim of reducing the switching frequency can be fulfilled, and the stability of network connection can be ensured.
Optionally, the processing mode of performing weighting processing on the evaluation scores of the second optional networks may be:
[S1,S2,…,Sn]=[S1+(n-1)*K,S2+(n-2)*K,…,Sn]
wherein, S1 represents the evaluation score of the optional network 1, and S1+ (n-1) × K represents the weighted evaluation score of the optional network 1, that is, the corresponding weight of the optional network 1 is (n-1) × K; s2 represents the evaluation score of the optional network 2, and S2+ (n-2) × K represents the weighted evaluation score of the optional network 2, that is, the weight corresponding to the optional network 2 is (n-2) × K; sn denotes the evaluation score of the selectable network n, and the weighted evaluation score of the selectable network n is also Sn, that is, the weight corresponding to the selectable network n is 0. The historical communication quality of the selectable networks 1 to n is poor in sequence, namely the historical communication quality of the selectable network 1 is the best, and the historical communication quality of the selectable network n is the worst.
Step 420, according to the communication quality of each second optional network, adjusting the first network currently configured to be in communication connection with the target end, so as to be in communication connection with the target end through the optional network whose communication quality meets the set condition.
In one embodiment, in order to further reduce the switching frequency of the first network currently in communication connection with the target end, the number of times of obtaining the highest score based on the weighted evaluation score of each second optional network in a preset time period may be determined. Specifically, adjusting the first network currently configured to be in communication connection with the target according to the communication quality of each second optional network includes: determining the number of times of obtaining the highest weighted evaluation score of each second selectable network in a preset time period based on the weighted evaluation score of each second selectable network in a set detection period, wherein the preset time period comprises at least one set detection period; the first network is adjusted based on the second alternative network that has the highest number of times to obtain the highest weighted rating score.
In one embodiment, adjusting the first network based on the second alternative network that has the highest number of times the highest weighted rating score is obtained includes: if the second optional network with the highest number of times of obtaining the highest weighted evaluation score is different from the first network, configuring the second optional network with the highest number of times of obtaining the highest weighted evaluation score as a second network in communication connection with the target end so as to be in communication connection with the target end through the second network;
in another embodiment, adjusting the first network based on the second alternative network that has the highest number of times to obtain the highest weighted rating score comprises: and if the maximum reaches the frequency threshold value and the second optional network with the maximum frequency of obtaining the highest weighted evaluation score is different from the first network, configuring the second optional network with the maximum frequency of obtaining the highest weighted evaluation score as a second network in communication connection with the target end so as to be in communication connection with the target end through the second network.
The network configuration method provided by the embodiment of the disclosure provides a scheme for realizing high availability of connection with a target end by using different optional networks, fully utilizes different network resources, finds network faults in time, obtains the optional network with the optimal communication quality, switches the communication connection into the network with the optimal communication quality, and ensures the stability and availability of connection with the target end.
Fig. 5 is a schematic structural diagram of a network configuration apparatus in an embodiment of the present disclosure. The apparatus provided in the embodiments of the present disclosure may be configured in a network configuration end, for example, the data plane server described in the above embodiments. As shown in fig. 5, the apparatus specifically includes: a communication quality determining module 510, configured to determine communication qualities of the second optional networks for performing communication connection with the target end respectively; a configuration module 520, configured to adjust, according to the communication quality of each second optional network, the first network currently configured to be in communication connection with the target end, so as to be in communication connection with the target end through the optional network whose communication quality meets a set condition.
In accordance with one or more embodiments of the present disclosure, in the network configuration apparatus provided by the present disclosure, the communication quality determining module 510 includes: and an evaluation score determining unit, configured to determine, based on a packet loss rate and/or a delay time corresponding to each second optional network in a set probing period, an evaluation score of each second optional network in the set probing period, where the level of the evaluation score is used to represent the quality of communication.
In accordance with one or more embodiments of the present disclosure, in the network configuration apparatus provided by the present disclosure, the communication quality determination module 510 further includes: a sending unit, configured to send a preset message to the target end by using each of the second optional networks in the set detection period, respectively; a receiving unit, configured to receive response information for the preset packet, where the response information is returned through each of the second optional networks; and a packet loss rate and/or delay time determining unit, configured to determine, according to the response information, a corresponding packet loss rate and/or delay time of each second optional network in the set probing period, respectively.
In accordance with one or more embodiments of the present disclosure, in the network configuration apparatus provided by the present disclosure, the communication quality determination module 510 further includes: the weighting processing unit is used for weighting the evaluation scores of the current second selectable networks in the set detection period based on the weights corresponding to the current second selectable networks aiming at the evaluation scores of the second selectable networks in the set detection period to obtain the weighted evaluation scores of the current second selectable networks in the set detection period; wherein the weight corresponding to the current second selectable network is determined based on the historical communication quality of the current second selectable network.
In accordance with one or more embodiments of the present disclosure, in the network configuration device provided by the present disclosure, the configuration module 520 includes: a determining unit, configured to determine, based on the weighted evaluation scores of the second optional networks in the set detection periods, a number of times that the second optional networks obtain a highest weighted evaluation score in a preset time period, where the preset time period includes at least one set detection period; and the configuration unit is used for configuring the second optional network with the highest frequency of obtaining the highest weighted evaluation score as the second network in communication connection with the target end if the second optional network with the highest frequency of obtaining the highest weighted evaluation score is different from the first network, so as to be in communication connection with the target end through the second network.
According to one or more embodiments of the present disclosure, in the network configuration apparatus provided by the present disclosure, each of the second selectable networks includes at least one of: private networks, virtual private networks VPN, public networks and proxy networks.
According to one or more embodiments of the present disclosure, in a network configuration device provided by the present disclosure, the network connection configuration end includes a data plane of a software defined network SDN, and the target end includes a control plane in the SDN.
The apparatus provided in the embodiment of the present disclosure may perform the steps in the method provided in the embodiment of the present disclosure, and the steps and the advantageous effects are not described herein again.
Fig. 6 is a schematic structural diagram of an electronic device in an embodiment of the present disclosure. Referring now specifically to fig. 6, a schematic block diagram of an electronic device 500 suitable for use in implementing embodiments of the present disclosure is shown. The electronic device 500 in the embodiments of the present disclosure may include, but is not limited to, mobile terminals such as a mobile phone, a notebook computer, a digital broadcast receiver, a PDA (personal digital assistant), a PAD (tablet), a PMP (portable multimedia player), a vehicle-mounted terminal (e.g., a car navigation terminal), a wearable electronic device, and the like, and fixed terminals such as a digital TV, a desktop computer, a smart home device, and the like. The electronic device shown in fig. 6 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present disclosure.
As shown in fig. 6, the electronic device 500 may include a processing means (e.g., a central processing unit, a graphic processor, etc.) 501, which may perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM)502 or a program loaded from a storage means 508 into a Random Access Memory (RAM)503 to implement the network configuration method of the embodiments as described in the present disclosure. In the RAM 503, various programs and data necessary for the operation of the electronic apparatus 500 are also stored. The processing device 501, the ROM 502, and the RAM 503 are connected to each other through a bus 504. An input/output (I/O) interface 505 is also connected to bus 504.
Generally, the following devices may be connected to the I/O interface 505: input devices 506 including, for example, a touch screen, touch pad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; output devices 507 including, for example, a Liquid Crystal Display (LCD), speakers, vibrators, and the like; storage devices 508 including, for example, magnetic tape, hard disk, etc.; and a communication device 509. The communication means 509 may allow the electronic device 500 to communicate with other devices wirelessly or by wire to exchange data. While fig. 6 illustrates an electronic device 500 having various means, it is to be understood that not all illustrated means are required to be implemented or provided. More or fewer devices may alternatively be implemented or provided.
In particular, the processes described above with reference to the flow diagrams may be implemented as computer software programs, according to embodiments of the present disclosure. For example, embodiments of the present disclosure include a computer program product comprising a computer program carried on a non-transitory computer readable medium, the computer program containing program code for performing the method illustrated by the flow chart, thereby implementing the network configuration method as described above. In such an embodiment, the computer program may be downloaded and installed from a network via the communication means 509, or installed from the storage means 508, or installed from the ROM 502. The computer program performs the above-described functions defined in the methods of the embodiments of the present disclosure when executed by the processing device 501.
It should be noted that the computer readable medium in the present disclosure can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In contrast, in the present disclosure, a computer readable signal medium may comprise a propagated data signal with computer readable program code embodied therein, either in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, optical cables, RF (radio frequency), etc., or any suitable combination of the foregoing.
In some embodiments, the clients, servers may communicate using any currently known or future developed network Protocol, such as HTTP (HyperText Transfer Protocol), and may interconnect with any form or medium of digital data communication (e.g., a communications network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), the Internet (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed network.
The computer readable medium may be embodied in the electronic device; or may exist separately without being assembled into the electronic device.
The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to: respectively determining the communication quality of each second optional network for communication connection with the target end; and according to the communication quality of each second optional network, adjusting the first network which is configured to be in communication connection with the target end at present so as to be in communication connection with the target end through the optional networks with the communication quality meeting set conditions.
Optionally, when the one or more programs are executed by the electronic device, the electronic device may further perform other steps described in the above embodiments.
Computer program code for carrying out operations for the present disclosure may be written in any combination of one or more programming languages, including but not limited to an object oriented programming language such as Java, Smalltalk, C + +, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present disclosure may be implemented by software or hardware. Where the name of an element does not in some cases constitute a limitation on the element itself.
The functions described herein above may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), systems on a chip (SOCs), Complex Programmable Logic Devices (CPLDs), and the like.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
In accordance with one or more embodiments of the present disclosure, there is provided a software defined network, SDN, system comprising: the system comprises a data plane server and a control plane server, wherein the data plane server is used for forwarding a message, and the control plane server is used for sending a flow table to the data plane server so as to indicate a forwarding path of the message; the SDN system further comprises: a proxy server; wherein a target network exists between the proxy server and the control plane server, and the target network does not exist between the data plane server and the control plane server; a first optional network between the data plane server and the proxy server and the target network between the proxy server and the control plane server constitute a proxy network between the data plane server and the control plane server; the data plane server is further configured to determine communication quality of each second optional network between the data plane server and the control plane server, and adjust a first network currently configured to be in communication connection with the control plane server based on the communication quality of each second optional network, so as to be in communication connection with the control plane server through an optional network whose communication quality meets a set condition; wherein each of the second selectable networks comprises the proxy network.
According to one or more embodiments of the present disclosure, in an SDN system provided by the present disclosure, respectively determining communication quality of each second optional network with the control plane server includes:
and respectively determining the evaluation scores of the second optional networks in a set detection period based on the corresponding packet loss rates and/or delay times of the second optional networks in the set detection period, wherein the evaluation scores are used for representing the quality of communication.
In accordance with one or more embodiments of the present disclosure, in the SDN system provided by the present disclosure, when the second optional networks are the proxy networks, before determining the evaluation scores of the second optional networks in a set probing period based on the packet loss rates and/or the delay times of the second optional networks in the set probing period, the determining the communication quality of the second optional networks with the control plane server further includes:
sending a first preset message to the proxy server by the data plane server in the set detection period by using each second optional network between the data plane server and the proxy server respectively, and receiving first response information which is returned by the proxy server and aims at the first preset message;
Determining a first packet loss rate and/or a first delay time corresponding to each second optional network between the proxy server and the proxy server in the set detection period according to the first response information;
sending a second preset message to the control plane server by using each second optional network between the proxy server and the control plane server in the set detection period, and receiving second response information which is returned by the control plane server and aims at the second preset message;
determining a second packet loss rate and/or a second delay time corresponding to each second optional network between the control plane server and the control plane server within the set detection period according to the second response information;
correspondingly, the determining the evaluation scores of the second optional networks in the set detection period based on the packet loss rates and/or the delay times of the second optional networks in the set detection period respectively includes:
and determining the evaluation score of the proxy network in the set detection period based on the first packet loss rate and/or the first delay time and the second packet loss rate and/or the second delay time.
According to one or more embodiments of the present disclosure, in the SDN system provided by the present disclosure, the respectively determining communication quality of each second optional network with the control plane server further includes:
weighting the evaluation scores of the current second selectable networks according to the evaluation scores of the second selectable networks in the set detection period based on the weights corresponding to the current second selectable networks to obtain the weighted evaluation scores of the current second selectable networks in the set detection period;
wherein the weight corresponding to the current second optional network is determined based on the historical communication quality of the current second optional network.
According to one or more embodiments of the present disclosure, in an SDN system provided by the present disclosure,
the adjusting the first network currently configured to be in communication connection with the control plane server based on the communication quality of the second optional networks comprises:
determining the number of times of obtaining the highest weighted evaluation score of each second selectable network in a preset time period based on the weighted evaluation score of each second selectable network in the set detection period, wherein the preset time period comprises at least one set detection period;
The first network is adjusted based on the second alternative network that has the highest number of times to obtain the highest weighted rating score.
In accordance with one or more embodiments of the present disclosure, in an SDN system provided by the present disclosure, the adjusting the first network based on the second optional network with the highest number of times of obtaining the highest weighted evaluation score includes:
if the second optional network with the highest number of times of obtaining the highest weighted evaluation score is different from the first network, configuring the second optional network with the highest number of times of obtaining the highest weighted evaluation score as a second network in communication connection with the control plane server so as to be in communication connection with the control plane server through the second network;
or, if the maximum reaches a threshold number of times and the second optional network with the maximum number of times of obtaining the highest weighted evaluation score is different from the first network, the second optional network with the maximum number of times of obtaining the highest weighted evaluation score is configured as a second network in communication connection with the control plane server, so as to be in communication connection with the control plane server through the second network.
In accordance with one or more embodiments of the present disclosure, in the SDN system provided by the present disclosure, each of the second optional networks further includes at least one of: private networks, virtual private networks VPN, and public networks.
According to one or more embodiments of the present disclosure, there is provided a network configuration method including: respectively determining the communication quality of each second optional network for communication connection with the target end;
and according to the communication quality of each second optional network, adjusting the first network which is currently configured to be in communication connection with the target end so as to be in communication connection with the target end through the optional network of which the communication quality meets the set condition.
According to one or more embodiments of the present disclosure, in the network configuration method provided by the present disclosure, the determining the communication quality of each second optional network used for performing communication connection with the target respectively includes:
and respectively determining the evaluation scores of the second optional networks in a set detection period based on the corresponding packet loss rates and/or delay times of the second optional networks in the set detection period, wherein the evaluation scores are used for representing the quality of communication.
According to one or more embodiments of the present disclosure, in the network configuration method provided by the present disclosure, before determining the evaluation scores of the second optional networks in a set probing period based on the packet loss ratios and/or the delay times of the second optional networks in the set probing period, the determining the communication quality of the second optional networks for performing communication connection with a target end further includes:
Respectively using the second optional networks to send preset messages to the target end in the set detection period;
receiving response information aiming at the preset message, which is returned through the second optional networks respectively;
and respectively determining the corresponding packet loss rate and/or delay time of each second optional network in the set detection period according to the response information.
According to one or more embodiments of the present disclosure, in the network configuration method provided by the present disclosure, the determining the communication quality of each second optional network used for performing communication connection with the target respectively further includes:
weighting the evaluation scores of the current second selectable networks according to the evaluation scores of the second selectable networks in the set detection period based on the weights corresponding to the current second selectable networks to obtain the weighted evaluation scores of the current second selectable networks in the set detection period;
wherein the weight corresponding to the current second selectable network is determined based on the historical communication quality of the current second selectable network.
According to one or more embodiments of the present disclosure, in the network configuration method provided by the present disclosure, adjusting a first network currently configured to be in communication connection with the target according to the communication quality of each second selectable network includes:
Determining the number of times of obtaining the highest weighted evaluation score of each second selectable network in a preset time period based on the weighted evaluation score of each second selectable network in the set detection period, wherein the preset time period comprises at least one set detection period;
the first network is adjusted based on the second alternative network that has the highest number of times to obtain the highest weighted rating score.
According to one or more embodiments of the present disclosure, in a network configuration method provided by the present disclosure, the adjusting the first network based on the second optional network with the highest number of times of obtaining the highest weighted evaluation score includes:
if the second optional network with the highest number of times of obtaining the highest weighted evaluation score is different from the first network, configuring the second optional network with the highest number of times of obtaining the highest weighted evaluation score as a second network in communication connection with the target end so as to be in communication connection with the target end through the second network;
or, if the largest one reaches a threshold of times and the second optional network with the largest number of times of obtaining the highest weighted evaluation score is different from the first network, the second optional network with the largest number of times of obtaining the highest weighted evaluation score is configured as a second network in communication connection with the control plane server, so as to be in communication connection with the control plane server through the second network.
According to one or more embodiments of the present disclosure, in a network configuration method provided by the present disclosure, each of the second selectable networks includes at least one of: private networks, virtual private networks VPN, public networks and proxy networks.
According to one or more embodiments of the present disclosure, in a network configuration method provided by the present disclosure, the network connection configuration end includes a data plane of a software defined network SDN, and the target end includes a control plane in the SDN.
According to one or more embodiments of the present disclosure, there is provided a network configuration apparatus including:
the communication quality determining module is used for respectively determining the communication quality of each second optional network for communication connection with the target end;
and the configuration module is used for adjusting the first network which is currently configured to be in communication connection with the target end according to the communication quality of each second optional network so as to be in communication connection with the target end through the optional networks with the communication quality meeting set conditions.
According to one or more embodiments of the present disclosure, in a network configuration device provided by the present disclosure, a communication quality determination module includes:
and an evaluation score determining unit, configured to determine, based on a packet loss rate and/or a delay time corresponding to each second optional network in a set probing period, an evaluation score of each second optional network in the set probing period, where the level of the evaluation score is used to represent the quality of communication.
According to one or more embodiments of the present disclosure, in the network configuration apparatus provided by the present disclosure, the communication quality determination module further includes:
a sending unit, configured to send a preset message to the target end by using each of the second optional networks in the set detection period, respectively;
a receiving unit, configured to receive response information for the preset packet, where the response information is returned through each of the second optional networks;
and a packet loss rate and/or delay time determining unit, configured to determine, according to the response information, a corresponding packet loss rate and/or delay time of each second optional network in the set probing period, respectively.
According to one or more embodiments of the present disclosure, in the network configuration apparatus provided by the present disclosure, the communication quality determination module further includes:
the weighting processing unit is used for weighting the evaluation scores of the current second selectable networks in the set detection period based on the weights corresponding to the current second selectable networks aiming at the evaluation scores of the second selectable networks in the set detection period to obtain the weighted evaluation scores of the current second selectable networks in the set detection period;
wherein the weight corresponding to the current second selectable network is determined based on the historical communication quality of the current second selectable network.
In accordance with one or more embodiments of the present disclosure, in a network configuration device provided by the present disclosure, a configuration module includes:
a determining unit, configured to determine, based on the weighted evaluation scores of the second optional networks in the set detection periods, a number of times that the second optional networks obtain a highest weighted evaluation score in a preset time period, where the preset time period includes at least one set detection period;
and the adjusting unit is used for adjusting the first network based on the second optional network with the highest number of times of obtaining the highest weighted evaluation score.
According to one or more embodiments of the present disclosure, in the network configuration apparatus provided in the present disclosure, the adjusting unit is specifically configured to:
if the second optional network with the highest number of times of obtaining the highest weighted evaluation score is different from the first network, configuring the second optional network with the highest number of times of obtaining the highest weighted evaluation score as a second network in communication connection with the target end so as to be in communication connection with the target end through the second network;
or, if the largest one reaches a threshold of times and the second optional network with the largest number of times of obtaining the highest weighted evaluation score is different from the first network, the second optional network with the largest number of times of obtaining the highest weighted evaluation score is configured as a second network in communication connection with the control plane server, so as to be in communication connection with the control plane server through the second network.
According to one or more embodiments of the present disclosure, in the network configuration apparatus provided by the present disclosure, each of the second selectable networks includes at least one of: private networks, virtual private networks VPN, public networks and proxy networks.
According to one or more embodiments of the present disclosure, in a network configuration device provided by the present disclosure, the network connection configuration end includes a data plane of a software defined network SDN, and the target end includes a control plane in the SDN.
In accordance with one or more embodiments of the present disclosure, there is provided an electronic device including:
one or more processors;
a memory for storing one or more programs;
when executed by the one or more processors, cause the one or more processors to implement any of the network configuration methods provided by the present disclosure.
According to one or more embodiments of the present disclosure, there is provided a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements a network configuration method as any one of the methods provided by the present disclosure.
Embodiments of the present disclosure also provide a computer program product comprising a computer program or instructions which, when executed by a processor, implement the network configuration method as described above.
The foregoing description is only exemplary of the preferred embodiments of the disclosure and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the disclosure herein is not limited to the particular combination of features described above, but also encompasses other embodiments in which any combination of the features described above or their equivalents does not depart from the spirit of the disclosure. For example, the above features and (but not limited to) the features disclosed in this disclosure having similar functions are replaced with each other to form the technical solution.
Further, while operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order. Under certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are included in the above discussion, these should not be construed as limitations on the scope of the disclosure. Certain features that are described in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

Claims (7)

1. A software defined network, SDN, system comprising: the system comprises a data plane server and a control plane server, wherein the data plane server is used for forwarding a message, and the control plane server is used for sending a flow table to the data plane server so as to indicate a forwarding path of the message; wherein the SDN system further comprises: a proxy server;
wherein a target network exists between the proxy server and the control plane server, and the target network does not exist between the data plane server and the control plane server;
a first optional network between the data plane server and the proxy server and the target network between the proxy server and the control plane server constitute a proxy network between the data plane server and the control plane server;
The data plane server is further used for respectively determining the communication quality of a second optional network between the data plane server and the control plane server, and adjusting a first network which is currently configured to be in communication connection with the control plane server based on the communication quality of the second optional network, so as to be in communication connection with the control plane server through the optional network of which the communication quality meets a set condition; wherein the second selectable network comprises the proxy network.
2. The system of claim 1, wherein the separately determining the communication quality of the second alternative network with the control plane server comprises:
and respectively determining the evaluation scores of the second optional networks in the set detection period based on the corresponding packet loss rate and/or delay time of the second optional networks in the set detection period.
3. The system according to claim 2, wherein when the second optional network is the proxy network, before determining the evaluation scores of the second optional networks in the set probing period based on the packet loss ratios and/or the delay times of the second optional networks in the set probing period, the determining the communication quality of the second optional networks with the control plane server further comprises:
Sending a first preset message to the proxy server by the data plane server in the set detection period by using each second optional network between the data plane server and the proxy server respectively, and receiving first response information which is returned by the proxy server and aims at the first preset message;
determining a first packet loss rate and/or a first delay time corresponding to each second optional network between the proxy server and the proxy server within the set detection period according to the first response information;
sending a second preset message to the control plane server by using each second optional network between the proxy server and the control plane server in the set detection period, and receiving second response information which is returned by the control plane server and aims at the second preset message;
determining a second packet loss rate and/or a second delay time corresponding to each second optional network between the control plane server and the control plane server within the set detection period according to the second response information;
correspondingly, the determining the evaluation scores of the second optional networks in the set detection period based on the packet loss rates and/or the delay times of the second optional networks in the set detection period respectively includes:
And determining the evaluation score of the proxy network in the set detection period based on the first packet loss rate and/or the first delay time and the second packet loss rate and/or the second delay time.
4. The system of claim 2, wherein the separately determining the communication quality of the second optional network with the control plane server further comprises:
weighting the evaluation scores of the current second selectable networks according to the evaluation scores of the second selectable networks in the set detection period based on the weights corresponding to the current second selectable networks to obtain the weighted evaluation scores of the current second selectable networks in the set detection period;
wherein the weight corresponding to the current second optional network is determined based on the historical communication quality of the current second optional network.
5. The system of claim 4, wherein the adjusting the first network currently configured for communicative connection with the control plane server based on the communication quality of the second alternative network comprises:
determining the number of times of obtaining the highest weighted evaluation score of each second selectable network in a preset time period based on the weighted evaluation score of each second selectable network in the set detection period, wherein the preset time period comprises at least one set detection period;
The first network is adjusted based on the second alternative network that has the highest number of times to obtain the highest weighted rating score.
6. The system of claim 5, wherein the adjusting the first network based on the second alternative network that has the highest number of times to obtain the highest weighted rating score comprises:
if the second optional network with the highest weighted evaluation score is different from the first network, configuring the second optional network with the highest weighted evaluation score as a second network in communication connection with the control plane server so as to be in communication connection with the control plane server through the second network;
or, if the maximum one of the times of obtaining the highest weighted evaluation score reaches the threshold of times and the second optional network with the highest number of times of obtaining the highest weighted evaluation score is different from the first network, the second optional network with the highest number of times of obtaining the highest weighted evaluation score is configured as a second network in communication connection with the control plane server, so as to be in communication connection with the control plane server through the second network.
7. The system of claim 1, wherein the second selectable network further comprises at least one of: virtual private networks VPN and public networks.
CN202110756427.4A 2021-07-05 2021-07-05 Software Defined Network (SDN) system, network configuration method, device and equipment Active CN113347089B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110756427.4A CN113347089B (en) 2021-07-05 2021-07-05 Software Defined Network (SDN) system, network configuration method, device and equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110756427.4A CN113347089B (en) 2021-07-05 2021-07-05 Software Defined Network (SDN) system, network configuration method, device and equipment

Publications (2)

Publication Number Publication Date
CN113347089A CN113347089A (en) 2021-09-03
CN113347089B true CN113347089B (en) 2022-09-09

Family

ID=77482477

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110756427.4A Active CN113347089B (en) 2021-07-05 2021-07-05 Software Defined Network (SDN) system, network configuration method, device and equipment

Country Status (1)

Country Link
CN (1) CN113347089B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114615178B (en) * 2022-03-16 2024-02-13 北京轻网科技股份有限公司 Link quality detection method and device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105745886A (en) * 2013-09-23 2016-07-06 迈克菲股份有限公司 Providing a fast path between two entities
CN107682411A (en) * 2017-09-14 2018-02-09 广州西麦科技股份有限公司 A kind of extensive SDN controllers cluster and network system
CN109302346A (en) * 2018-10-25 2019-02-01 网宿科技股份有限公司 A kind of method and apparatus of transmitting data stream amount
CN110290178A (en) * 2019-05-30 2019-09-27 厦门网宿有限公司 A kind of dispatching method of data flow, electronic equipment and storage medium
CN110944408A (en) * 2019-10-31 2020-03-31 维沃移动通信有限公司 Data transmission method and electronic equipment
CN111835639A (en) * 2020-07-06 2020-10-27 杭州网银互联科技股份有限公司 SD-WAN network intelligent link selection method based on cloud computing

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140112142A1 (en) * 2012-10-22 2014-04-24 Electronics And Telecommunications Research Institute Method of forwarding packet and apparatus thereof
US9917769B2 (en) * 2014-11-17 2018-03-13 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for virtualizing flow tables in a software-defined networking (SDN) system
US10505870B2 (en) * 2016-11-07 2019-12-10 At&T Intellectual Property I, L.P. Method and apparatus for a responsive software defined network
US20190207844A1 (en) * 2018-01-03 2019-07-04 Hewlett Packard Enterprise Development Lp Determining routing decisions in a software-defined wide area network

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105745886A (en) * 2013-09-23 2016-07-06 迈克菲股份有限公司 Providing a fast path between two entities
CN107682411A (en) * 2017-09-14 2018-02-09 广州西麦科技股份有限公司 A kind of extensive SDN controllers cluster and network system
CN109302346A (en) * 2018-10-25 2019-02-01 网宿科技股份有限公司 A kind of method and apparatus of transmitting data stream amount
CN110290178A (en) * 2019-05-30 2019-09-27 厦门网宿有限公司 A kind of dispatching method of data flow, electronic equipment and storage medium
CN110944408A (en) * 2019-10-31 2020-03-31 维沃移动通信有限公司 Data transmission method and electronic equipment
CN111835639A (en) * 2020-07-06 2020-10-27 杭州网银互联科技股份有限公司 SD-WAN network intelligent link selection method based on cloud computing

Also Published As

Publication number Publication date
CN113347089A (en) 2021-09-03

Similar Documents

Publication Publication Date Title
CN111200846B (en) Time delay sensitive network communication method and device thereof
US9860138B2 (en) Bandwidth on demand in SDN networks
CN110912723A (en) Communication method and device
US11489769B2 (en) Virtualized radio access network architecture for applications requiring a time sensitive network
CN111787069A (en) Method, device and equipment for processing service access request and computer storage medium
CN116547958A (en) Method, system and computer readable medium for ranking process of network function selection
CN108355350B (en) Application service access method and device based on mobile edge computing
CN109802997B (en) Node equipment selection method and related equipment thereof
KR20160146857A (en) Session-based device configuration
US20180242383A1 (en) Multipath Control of Data Streams
CN113347089B (en) Software Defined Network (SDN) system, network configuration method, device and equipment
CN114466226B (en) Bandwidth duration duty cycle determination method, device, equipment and computer readable medium
JP2012134753A (en) Radio relay device and radio relay method
US20150026333A1 (en) Network system, network management apparatus and application management apparatus
US9693282B2 (en) Control method, controller and packet processing method for software-defined network
CN111385298B (en) Data transmission method, medium, device and computing equipment
CN115462118A (en) Load balancing and service selection in a mobile network
US9692685B2 (en) Heterogeneous network system, network apparatus, and rendezvous path selection method thereof
CN114827007A (en) Routing method and device for computing power perception, routing node and client equipment
Teymoori et al. A fair and efficient resource allocation scheme for multi-server distributed systems and networks
KR100810016B1 (en) Electronic device connection resource management
JP2011114632A (en) Band control system, load distribution device, and band control device
CN111418174A (en) First node and second node and method of operating first node and second node
JPWO2007074679A1 (en) Communication control method, communication monitoring method, communication system, access point, and program
CN114024968A (en) Message sending method and device based on intermediate equipment and electronic equipment

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