CN111225070B - Flow control method, device and system and SDN controller - Google Patents

Flow control method, device and system and SDN controller Download PDF

Info

Publication number
CN111225070B
CN111225070B CN201811402952.0A CN201811402952A CN111225070B CN 111225070 B CN111225070 B CN 111225070B CN 201811402952 A CN201811402952 A CN 201811402952A CN 111225070 B CN111225070 B CN 111225070B
Authority
CN
China
Prior art keywords
switch
application server
dns
terminal
tunnel
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
CN201811402952.0A
Other languages
Chinese (zh)
Other versions
CN111225070A (en
Inventor
陈仲华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp 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 China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN201811402952.0A priority Critical patent/CN111225070B/en
Publication of CN111225070A publication Critical patent/CN111225070A/en
Application granted granted Critical
Publication of CN111225070B publication Critical patent/CN111225070B/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
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/825Involving tunnels, e.g. MPLS

Landscapes

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

Abstract

The disclosure relates to a flow control method, a flow control device, a flow control system and an SDN controller, and relates to the technical field of communication. The method of the present disclosure comprises: a Software Defined Network (SDN) controller acquires a Domain Name System (DNS) message; the SDN controller analyzes the DNS message and acquires path information from the terminal to an application server; the application server is positioned in the edge data center; the SDN controller generates a flow table according to path information from a terminal to an application server; the SDN controller sends the flow table to a shunting device and a first switch corresponding to the application server, so that the shunting device and the first switch transmit the interactive flow of the terminal and the application server through a tunnel. According to the scheme, the SDN controller dynamic flow table is adopted to control the shunting device and the first switch corresponding to the application server, the flow of the terminal is led to the application server of the edge data center, the edge data center is used for providing service for the terminal, the optimization of application access is realized, and the access efficiency is improved.

Description

Flow control method, device and system and SDN controller
Technical Field
The present disclosure relates to the field of communications technologies, and in particular, to a flow control method, apparatus, system, and SDN controller.
Background
Recently, based on the CO (Central Office) reconfiguration concept, the industry has gradually developed an architecture for introducing an edge data center at the edge of a metropolitan area network to provide service optimization for users.
Although the research direction of CO reconstruction and the introduction of edge data centers are determined, there is currently no specific solution for how to specifically direct access traffic of terminals into edge data centers.
Disclosure of Invention
One technical problem to be solved by the present disclosure is: how to direct access traffic of the terminal to the edge data center.
According to some embodiments of the present disclosure, there is provided a flow control method including: a Software Defined Network (SDN) controller acquires a Domain Name System (DNS) message; the SDN controller analyzes the DNS message and acquires path information from the terminal to an application server; the application server is positioned in the edge data center; the SDN controller generates a flow table according to path information from a terminal to an application server; the SDN controller sends the flow table to a shunting device and a first switch corresponding to the application server, so that the shunting device and the first switch transmit the interactive flow of the terminal and the application server through a tunnel.
In some embodiments, the transmitting, by the offload device and the first switch, traffic for the terminal to interact with the application server through a tunnel includes: the shunting device sends a message sent to the application server by the terminal to the first switch through the first tunnel according to the flow table, and the message is forwarded to the application server by the first switch according to the flow table; the first switch sends a message sent to the terminal by the application server to the shunting device through the first tunnel according to the flow table, and the message is forwarded to the terminal by the shunting device according to the flow table; wherein, first tunnel sets up between shunting equipment and first switch.
In some embodiments, the acquiring, by the SDN controller, the DNS packet includes: the SDN controller receives a DNS response message sent by a second switch corresponding to the DNS server; the DNS response message is generated by the DNS server according to the DNS request message of the terminal and is sent to the second switch, and the DNS server is located in the edge data center.
In some embodiments, the method further comprises: the method comprises the steps that the shunting equipment receives a DNS request message sent by a terminal; the flow distribution equipment sends the DNS request message to a second switch through a second tunnel according to the address information in the DNS request message so as to be forwarded to the DNS server by the second switch; the second tunnel is arranged between the shunting device and the second switch.
In some embodiments, the acquiring, by the SDN controller, the DNS packet further includes: the SDN controller receives a registration response message sent by the second switch; the registration response message is generated by the DNS server according to the registration request message of the application server and is sent to the second switch.
In some embodiments, the method further comprises: a first switch receives a registration request message sent by an application server; the first switch sends the registration request message to the second switch through the third tunnel according to the address information in the registration request message so as to be forwarded to the DNS server by the second switch; the third tunnel is arranged between the first switch and the second switch.
In some embodiments, the DNS message includes: DNS response message and registration response message; the SDN controller analyzes the DNS message, and the acquiring of the path information from the terminal to the application server comprises the following steps: the SDN controller analyzes the registration response message to obtain address information of the application server and address information of the first switch; the SDN controller analyzes the DNS response message to obtain address information of an application server, address information of a terminal and tunnel address information of the shunting device; and the SDN controller associates the address information of the application server, the address information of the terminal, the tunnel address information of the shunting device and the address information of the first switch according to the address information of the application server, and the address information serves as path information from the terminal to the application server.
In some embodiments, the SDN controller further determines tunnel identification information, and associates address information of the application server, address information of the terminal, tunnel address information of the offloading device, address information of the first switch, and the tunnel identification information as path information from the terminal to the application server.
According to further embodiments of the present disclosure, there is provided a software defined network controller including: the message acquisition module is used for acquiring a Domain Name System (DNS) message; the message analysis module is used for analyzing the DNS message and acquiring the path information from the terminal to the application server; the application server is positioned in the edge data center; the flow table generating module is used for generating a flow table according to the path information from the terminal to the application server; and the flow table issuing module is used for sending the flow table to the shunting device and the first switch corresponding to the application server so that the shunting device and the first switch can transmit the interactive flow of the terminal and the application server through the tunnel.
In some embodiments, the message obtaining module is configured to receive a DNS response message sent by a second switch corresponding to the DNS server; the DNS response message is generated by the DNS server according to the DNS request message of the terminal and is sent to the second switch, and the DNS server is located in the edge data center.
In some embodiments, the message obtaining module is further configured to receive a registration response message sent by the second switch; the registration response message is generated by the DNS server according to the registration request message of the application server and is sent to the second switch.
In some embodiments, the DNS message includes: DNS response message and registration response message; the message analysis module is used for analyzing the registration response message to acquire the address information of the application server and the address information of the first switch; analyzing the DNS response message to obtain address information of the application server, address information of the terminal and tunnel address information of the shunting equipment; and according to the address information of the application server, associating the address information of the application server, the address information of the terminal, the tunnel address information of the shunting device and the address information of the first switch as path information from the terminal to the application server.
In some embodiments, the software defined network controller further comprises: the tunnel determining module is used for determining tunnel identification information; the message analysis module is further configured to associate address information of the application server, address information of the terminal, tunnel address information of the offloading device, address information of the first switch, and tunnel identification information, and use the associated information as path information from the terminal to the application server.
According to still further embodiments of the present disclosure, there is provided a flow control system including: the software defined network controller of any of the preceding embodiments; the shunting equipment and the first switch; a first tunnel is arranged between the shunting equipment and the first switch; the first switch is in communication connection with the application server; the flow distribution device and the first switch are used for receiving a flow table sent by a Software Defined Network (SDN) controller and transmitting interactive flow of the terminal and the application server through a first tunnel.
In some embodiments, the flow splitting device is configured to send, according to the flow table, a packet sent by the terminal to the application server to the first switch through the first tunnel, and receive, through the first tunnel, a packet forwarded by the first switch and sent by the application server to the terminal, and forward, to the terminal according to the flow table; the first switch is used for receiving a message which is forwarded by the shunting device and sent to the application server by the terminal through the first tunnel, and sending the message which is sent to the terminal by the application server to the shunting device through the first tunnel according to the flow table.
In some embodiments, the system further comprises: a second switch, a domain name system, DNS, server; a second tunnel is arranged between the shunting equipment and the second switch; the second switch is in communication connection with the DNS server; the shunting equipment is also used for receiving a DNS request message sent by the terminal and sending the DNS request message to the second switch through the second tunnel; the second switch is used for sending the DNS request message to the DNS server.
In some embodiments, a third tunnel is provided between the first switch and the second switch; the first switch is also used for receiving a registration request message sent by the application server, and sending the registration request message to the second switch through the third tunnel according to the address information in the registration request message; the second switch is further configured to send the registration request message to the DNS server.
According to still further embodiments of the present disclosure, there is provided a flow control device including: a memory; and a processor coupled to the memory, the processor configured to perform a flow control method as in any of the preceding embodiments based on instructions stored in the memory.
According to still further embodiments of the present disclosure, there is provided a computer-readable storage medium having a computer program stored thereon, wherein the program, when executed by a processor, implements the flow control method of any of the foregoing embodiments.
In the disclosure, a Software Defined Network (SDN) is used to analyze a DNS packet to obtain path information from a terminal to an application server of an edge data center, generate a flow table according to the path information, and send the flow table to a distribution device and a first switch corresponding to the application server, so that the distribution device and the first switch transmit a traffic of interaction between the terminal and the application server through a tunnel. According to the scheme, the SDN controller dynamic flow table is adopted to control the shunting device and the first switch corresponding to the application server, the flow of the terminal is led to the application server of the edge data center, the edge data center is used for providing service for the terminal, the optimization of application access is realized, and the access efficiency is improved.
Other features of the present disclosure and advantages thereof will become apparent from the following detailed description of exemplary embodiments thereof, which proceeds with reference to the accompanying drawings.
Drawings
In order to more clearly illustrate the embodiments of the present disclosure or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present disclosure, and other drawings can be obtained by those skilled in the art without creative efforts.
Fig. 1 illustrates a flow diagram of a flow control method of some embodiments of the present disclosure.
Fig. 2 shows a flow diagram of a flow control method of further embodiments of the present disclosure.
Fig. 3 illustrates a schematic structural diagram of a software defined network controller of some embodiments of the present disclosure.
Fig. 4 shows a schematic structural diagram of a flow control system of some embodiments of the present disclosure.
FIG. 5 illustrates a schematic structural view of a flow control device according to some embodiments of the present disclosure.
FIG. 6 illustrates a schematic structural view of a flow control device according to further embodiments of the present disclosure.
Detailed Description
The technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the drawings in the embodiments of the present disclosure, and it is obvious that the described embodiments are only a part of the embodiments of the present disclosure, and not all of the embodiments. The following description of at least one exemplary embodiment is merely illustrative in nature and is in no way intended to limit the disclosure, its application, or uses. All other embodiments, which can be derived by a person skilled in the art from the embodiments disclosed herein without making any creative effort, shall fall within the protection scope of the present disclosure.
The scheme is provided for solving the problem of how to introduce the access flow of the terminal into the edge data center in the CO reconstruction scene. The flow control method of the present disclosure is described below with reference to fig. 1.
Fig. 1 is a flow chart of some embodiments of a flow control method of the present disclosure. As shown in fig. 1, the method of this embodiment includes: steps S102 to S110.
In step S102, the SDN controller acquires a DNS (Domain Name System) packet.
The DNS message includes, for example: the DNS response message may also include a registration response message. The DNS response packet is a response to a DNS request packet sent by the terminal to the DNS server, and generally before the terminal initiates an access request to the application server, the terminal initiates a domain name resolution request, that is, a DNS request packet, to the DNS server, and the DNS response packet may carry information such as an IP address corresponding to the application server. The registration response message is a response to the registration request message sent by the application server to the DNS server. The application server may send a registration request message to the DNS server after deploying the application, and the registration response message is used to notify the application server whether the registration is successful. The application server may deploy the application dynamically or may deploy the fixed application. A DNS server may be provided in the edge data center, and a DNS request message sent by the terminal or a registration request message sent by the application server may be directed to the DNS server in the edge data center. In this case, the IP address of the terminal or the IP address corresponding to the application may use a private network IP address. Because the message can be processed without entering the public Network in the edge data center, the process of NAT (Network Address Translation) of the private Network IP Address is reduced, and the interaction efficiency is improved.
In some embodiments, the SDN controller receives a DNS response message sent by a second switch corresponding to the DNS server. Further, the SDN controller may also receive a registration response message sent by the second switch. The second switch is arranged in the edge data center, the DNS message passes through the second switch corresponding to the DNS server, for example, the DNS response message is generated by the DNS server according to the DNS request message of the terminal and is sent to the second switch; or the registration response message is generated by the DNS server according to the registration request message of the application server and is sent to the second switch. The second switch may then send the DNS message to the SDN controller. For example, the second switch sends the DNS packet to the SDN controller through an OFP packet _ in message.
In step S104, the SDN controller parses the DNS packet to obtain path information from the terminal to the application server.
In some embodiments, the SDN controller parses the registration response packet to obtain address information of the application server and address information of the first switch corresponding to the application server. The registration response message may include address information of the application server and address information of the first switch. The address information is, for example, an IP address. And under the condition that the application server dynamically deploys the application, sending a registration request message to the DNS server after the application is deployed, and replying a registration response message to the DNS server. If the application is fixed and unchangeable, the address information of the application server and the address information of the first switch can be written in the SDN controller, and the two items of address information do not need to be acquired by using a registration response message. By adopting the method of dynamic application deployment (loadable and deletable), the flexible deployment of the application in the CO machine room can be realized, and the flexibility of the service is improved.
The first switch corresponding to the application server can be set in the edge data center, and the interactive messages of the application server all pass through the first switch. A third tunnel may be set between the first switch and the second switch, and a registration request message of the application server may be directed to a DNS server in the edge data center by using a tunneling technique, while a registration response message of the DNS server is transmitted to the application server through the third tunnel. The tunnel is, for example, a VxLAN (Virtual extended local area network) tunnel or an L2TP (Layer 2 Tunneling Protocol) tunnel, and is not limited to the illustrated example. The address information of the application server may be used as the tunnel inner layer address, and the address information of the first switch may be carried in the registration response message as the tunnel inner layer address.
In some embodiments, the SDN controller parses the DNS response packet to obtain address information of the application server, address information of the terminal, and tunnel address information of the offloading device. The DNS response message includes address information of the application server, address information of the terminal, and tunnel address information of the offloading device.
The shunting device can be used for shunting the information interacted with the terminal and guiding the information to an edge data center or a metropolitan area network and the like. The information interacted with the terminal can pass through the shunting device. A first tunnel may be set between the shunting device and the first switch, and a second tunnel may be set between the shunting device and the second switch. The information interacted between the terminal and the application server can be transmitted through the first tunnel, and the information interacted between the terminal and the DNS server can be transmitted through the second tunnel. For example, a DNS response message sent by the DNS server may be sent to the terminal through the second tunnel, and a DNS request message sent by the terminal may be sent to the DNS server through the second tunnel. The address information of the application server, the address information of the terminal and the tunnel address information of the shunting device can be obtained from the DNS response message. The tunnel address information of the offloading device is, for example, a VxLAN address of a port of the offloading device.
The SDN controller associates address information of the application server, address information of the terminal, tunnel address information of the shunting device and address information of the first switch according to the address information of the application server, and then path information from the terminal to the application server can be obtained.
In some embodiments, the SDN controller further determines tunnel identification information, and associates address information of the application server, address information of the terminal, tunnel address information of the offloading device, address information of the first switch, and the tunnel identification information as path information from the terminal to the application server. The tunnel identification information is, for example, VNI (VxLAN Network Identifier). That is, in the case that there are multiple tunnels from the offload device to the first switch, that is, multiple first tunnels, it is necessary to determine tunnel identifiers corresponding to the terminal and the application server.
In step S106, the SDN controller generates a flow table according to the path information of the terminal to the application server.
The SDN controller may use five pieces of information, which are address information of the application server, address information of the terminal, tunnel address information of the offloading device, address information of the first switch, and tunnel identification information, as five parameters in the flow table.
In step S108, the SDN controller sends the flow table to the first switch corresponding to the offloading device and the application server.
And the shunting equipment and the first switch form a forwarding table item according to the received flow table.
In step S110, the offloading device and the first switch transmit the traffic interacted between the terminal and the application server through the tunnel.
In some embodiments, the offloading device sends, according to the flow table, a packet sent by the terminal to the application server to the first switch through the first tunnel, and then the packet is forwarded by the first switch to the application server according to the flow table. Or, the first switch sends the packet sent to the terminal by the application server to the shunting device through the first tunnel according to the flow table, and the message is forwarded to the terminal by the shunting device according to the flow table.
In the method of the embodiment, a Software Defined Network (SDN) is used to analyze a DNS packet to obtain path information from a terminal to an application server of an edge data center, generate a flow table according to the path information, and send the flow table to a distribution device and a first switch corresponding to the application server, so that the distribution device and the first switch transmit traffic interacted between the terminal and the application server through a tunnel. In the scheme of the embodiment, the SDN controller dynamic flow table is used to control the shunting device and the first switch corresponding to the application server, so that the traffic of the terminal is directed to the application server of the edge data center, the edge data center is used to provide service for the terminal, optimization of application access is realized, and access efficiency is improved, for example, access delay is reduced, and bidirectional bandwidth is increased.
A flow chart of further embodiments of the flow control method of the present disclosure is described below in conjunction with fig. 2.
Fig. 2 is a flow chart of other embodiments of a flow control method of the present disclosure. As shown in fig. 1, the method of this embodiment includes: steps S202 to S224.
In step S202, the application server deploys the application and then sends a registration request packet to the DNS server through the third tunnel.
The application server generates a corresponding IP address after deploying the application, and sends the registration request message to the first switch, the first switch can send the registration request message to the second switch through the third tunnel according to the address information in the registration request message, and the second switch forwards the registration request message to the DNS server. The first switch may determine whether to transmit the registration request packet through the third tunnel according to whether the address of the application server is a private network address or according to an address field in which the application server is located. The condition that the first switch utilizes the third tunnel to transmit information may be configured according to actual requirements, and is not limited to the illustrated example.
In step S204, the DNS server sends a registration response message to the application server through the third tunnel.
The registration response message includes a registration result, for example, registration success or failure, address information of the application server, and address information of the first switch corresponding to the application server. And the DNS server sends the registration response message to the second switch, the second switch sends the registration response message to the first switch through the third tunnel, and the first switch sends the registration response message to the application server.
In step S206, the second switch sends a registration response message to the SDN controller.
When the registration response message passes through the second switch, the second switch may copy the message to the SDN controller.
In step S208, the SDN controller parses the registration response packet to obtain the address information of the application server and the address information of the first switch.
And the SDN controller correspondingly stores the address information of the application server and the address information of the first switch to form a record table item.
In step S210, the terminal sends a DNS request packet to the offloading device.
For example, the terminal sends a DNS request message to query an IP address of an application server corresponding to a URL (Uniform Resource Locator) to be accessed.
In step S212, the offloading device sends the DNS request message to the DNS server through the second tunnel according to the address information in the DNS request message.
The shunting device is, for example, an SDN white box or the like. The offloading device may send a DNS request message containing preset address information to the DNS server through the second tunnel. The shunt device sends the DNS request message to the second switch through the second tunnel, and the second switch sends the DNS request message to the DNS server.
In step S214, the DNS server sends the DNS response packet to the offloading device through the second tunnel, and the offloading device sends the DNS response packet to the terminal.
The DNS server sends the DNS response message to the second switch, the second switch sends the DNS response message to the shunting equipment through the second tunnel, and the DNS response message contains address information of the application server, address information of the terminal and tunnel address information of the shunting equipment. And the terminal can acquire the IP address of the application server according to the DNS response message for subsequent access initiation.
In step S216, the second switch sends a DNS response message to the SDN controller.
In step S218, the SDN controller parses the DNS response packet to obtain address information of the application server, address information of the terminal, and tunnel address information of the offloading device.
The SDN controller correspondingly stores the address information of the application server, the address information of the first switch, the address information of the terminal and the tunnel address information of the shunting device to form a record table item.
In step S220, the SDN controller generates a flow table.
The SDN controller is used for controlling the flow distribution equipment to distribute flow according to the address information of the first switch, the address information of the second switch and the address information of the first switch; and generating a flow table by the tunnel identification information.
In step S222, the SDN controller sends the flow table to the first switch corresponding to the offloading device and the application server.
And logical links are arranged among the SDN controller, the first switch, the second switch and the shunting device.
In step S224, the offloading device and the first switch transmit traffic interacted between the terminal and the application server through the first tunnel.
The method of the embodiment can introduce the flow of the terminal accessing the application into the CO edge data center, and realizes the optimization (time delay reduction and bidirectional bandwidth increase) of the application access. The applications in the CO edge data center can adopt a dynamic DNS registration method to register in a public DNS server, and flexible deployment (loading and deleting) of the applications in the CO is realized. The dynamic application can be issued by adopting a private network address in the edge data center, and the public network address of the server side is saved. The terminal side can support the use of private network addresses, and meanwhile, due to the adoption of the tunnel technology, the use of the NAT technology is avoided when a user accesses CO resources, the complexity of equipment is reduced, and the time delay of application access is further reduced. The flow distribution device is controlled in a dynamic flow table mode of the SDN controller, flow distribution is carried out only after application registration, and on-demand access of dynamic deployment application is achieved.
The present disclosure provides a Software Defined Network (SDN) controller, described below in conjunction with fig. 3.
Fig. 3 is a block diagram of some embodiments of an SDN controller of the present disclosure. As shown in fig. 3, the SDN controller 30 of this embodiment includes: the system comprises a message acquisition module 302, a message analysis module 304, a flow table generation module 306 and a flow table issuing module 308.
A message obtaining module 302, configured to obtain a domain name system DNS message.
In some embodiments, the message obtaining module 302 is configured to receive a DNS response message sent by a second switch corresponding to a DNS server; the DNS response message is generated by the DNS server according to the DNS request message of the terminal and is sent to the second switch, and the DNS server is located in the edge data center.
In some embodiments, the message obtaining module 302 is further configured to receive a registration response message sent by the second switch; the registration response message is generated by the DNS server according to the registration request message of the application server and is sent to the second switch.
The message analysis module 304 is configured to analyze the DNS message and obtain path information from the terminal to the application server; the application server is located in an edge data center.
In some embodiments, the DNS message includes: a DNS response message and a registration response message. The message analysis module 304 is configured to analyze the registration response message to obtain address information of the application server and address information of the first switch; analyzing the DNS response message to obtain address information of the application server, address information of the terminal and tunnel address information of the shunting equipment; and according to the address information of the application server, associating the address information of the application server, the address information of the terminal, the tunnel address information of the shunting device and the address information of the first switch as path information from the terminal to the application server.
In some embodiments, the SDN controller 30 further comprises: a tunnel determining module 305, configured to determine tunnel identification information. The message parsing module 304 is further configured to associate address information of the application server, address information of the terminal, tunnel address information of the offloading device, address information of the first switch, and tunnel identification information, as path information from the terminal to the application server.
And a flow table generating module 306, configured to generate a flow table according to the path information from the terminal to the application server.
And the flow table issuing module 308 is configured to send the flow table to the first switch corresponding to the offloading device and the application server, so that the offloading device and the first switch transmit the interactive flow between the terminal and the application server through the tunnel.
A schematic of the flow control system of the present disclosure is described below in conjunction with fig. 4.
Fig. 4 is a block diagram of some embodiments of the flow control system of the present disclosure. As shown in fig. 4, the flow control system 4 of this embodiment includes: the SDN controller 30 of any of the preceding embodiments; as well as a breakout device 42 and a first switch 44.
A first tunnel is arranged between the shunting device 42 and the first switch 44; the first switch 44 is communicatively coupled to the application server.
The offloading device 42 and the first switch 44 are configured to receive a flow table sent by the SDN controller 30, and transmit traffic of a terminal interacting with an application server through a first tunnel.
In some embodiments, the offloading device 42 is configured to send, according to the flow table, a packet sent by the terminal to the application server to the first switch 44 through the first tunnel, and forward, according to the flow table, a packet sent by the application server and forwarded to the terminal by the first switch, where the packet is received by the first tunnel and forwarded 44 by the first switch. The first switch 44 is configured to receive, through the first tunnel, a message that is forwarded by the offloading device 42 and sent by the terminal to the application server, and send, according to the flow table, the message that is sent by the application server to the terminal to the offloading device 42 through the first tunnel.
In some embodiments, the flow control system 4 further comprises: a second switch 46, a domain name system DNS server 48. A second tunnel is arranged between the shunting device 42 and the second switch 46; the second switch 46 is communicatively coupled to a DNS server 48.
The shunting device 42 is further configured to receive a DNS request message sent by the terminal, and send the DNS request message to the second switch 46 through the second tunnel; the second switch 46 is configured to send a DNS request message to the DNS server 48.
In some embodiments, a third tunnel is provided between the first switch 44 and the second switch 46.
The first switch 44 is further configured to receive a registration request message sent by the application server, and send the registration request message to the second switch 46 through the third tunnel according to address information in the registration request message;
the second switch 46 is also configured to send a registration request message to the DNS server 48.
In some embodiments, the first switch, the application server, and the second switch, the DNS server, and the SDN controller may be disposed in a CO room.
The flow control devices in the embodiments of the present disclosure, for example, the SDN controller, the offloading device, the first switch, the second switch, and the like, may be implemented by various computing devices or computer systems, and are described below with reference to fig. 5 and 6.
FIG. 5 is a block diagram of some embodiments of flow control devices of the present disclosure. As shown in fig. 5, the apparatus 50 of this embodiment includes: a memory 510 and a processor 520 coupled to the memory 510, the processor 520 configured to perform a flow control method in any of the embodiments of the disclosure based on instructions stored in the memory 510.
Memory 510 may include, for example, system memory, fixed non-volatile storage media, and the like. The system memory stores, for example, an operating system, an application program, a Boot Loader (Boot Loader), a database, and other programs.
FIG. 6 is a block diagram of further embodiments of flow control devices of the present disclosure. As shown in fig. 6, the apparatus 60 of this embodiment includes: memory 610 and processor 620 are similar to memory 510 and processor 520, respectively. An input output interface 630, a network interface 640, a storage interface 650, and the like may also be included. These interfaces 630, 640, 650 and the connections between the memory 610 and the processor 620 may be, for example, via a bus 660. The input/output interface 630 provides a connection interface for input/output devices such as a display, a mouse, a keyboard, and a touch screen. The network interface 640 provides a connection interface for various networking devices, such as a database server or a cloud storage server. The storage interface 650 provides a connection interface for external storage devices such as an SD card and a usb disk.
As will be appreciated by one skilled in the art, embodiments of the present disclosure may be provided as a method, system, or computer program product. Accordingly, the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present disclosure may take the form of a computer program product embodied on one or more computer-usable non-transitory storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present disclosure is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the disclosure. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
The above description is only exemplary of the present disclosure and is not intended to limit the present disclosure, so that any modification, equivalent replacement, or improvement made within the spirit and principle of the present disclosure should be included in the scope of the present disclosure.

Claims (17)

1. A method of flow control, comprising:
a Software Defined Network (SDN) controller acquires a Domain Name System (DNS) message;
the SDN controller analyzes the DNS message and acquires path information from a terminal to an application server; the application server is positioned in an edge data center;
the SDN controller generates a flow table according to the path information from the terminal to an application server;
the SDN controller sends the flow table to a shunting device and a first switch corresponding to the application server, so that the shunting device and the first switch transmit the interactive flow of the terminal and the application server through a tunnel;
the SDN controller acquiring the DNS message comprises the following steps:
the SDN controller receives a DNS response message sent by a second switch corresponding to a DNS server;
the DNS response message is generated by the DNS server according to the DNS request message of the terminal and is sent to the second switch, and the DNS server is located in an edge data center.
2. The flow control method according to claim 1,
the step of transmitting the traffic interacted between the terminal and the application server by the shunting device and the first switch through a tunnel comprises the following steps:
the shunting device sends a message sent by the terminal to the application server to the first switch through a first tunnel according to the flow table, and the message is forwarded to the application server by the first switch according to the flow table;
the first switch sends a message sent by the application server to the terminal to the shunting device through a first tunnel according to the flow table, and the shunting device forwards the message to the terminal according to the flow table;
wherein the first tunnel is disposed between the shunting device and the first switch.
3. The flow control method according to claim 2, further comprising:
the shunting equipment receives a DNS request message sent by the terminal;
the shunting equipment sends the DNS request message to a second switch through a second tunnel according to the address information in the DNS request message so as to be forwarded to a DNS server by the second switch;
the second tunnel is arranged between the shunt equipment and the second switch.
4. The flow control method according to claim 1,
the SDN controller obtaining the DNS message further comprises:
the SDN controller receives a registration response message sent by the second switch;
and the registration response message is generated by the DNS server according to the registration request message of the application server and is sent to the second switch.
5. The flow control method according to claim 4, further comprising:
the first switch receives the registration request message sent by the application server;
the first switch sends the registration request message to the second switch through a third tunnel according to the address information in the registration request message so as to be forwarded to the DNS server by the second switch;
the third tunnel is disposed between the first switch and the second switch.
6. The flow control method according to claim 1,
the DNS packet includes: DNS response message and registration response message;
the SDN controller analyzes the DNS message, and the obtaining of the path information from the terminal to the application server comprises the following steps:
the SDN controller analyzes the registration response message to obtain address information of the application server and address information of the first switch;
the SDN controller analyzes the DNS response message to obtain address information of the application server, address information of the terminal and tunnel address information of the shunting equipment;
the SDN controller associates address information of the application server, address information of the terminal, tunnel address information of the shunting device and address information of the first switch according to the address information of the application server, and the address information serves as path information from the terminal to the application server.
7. The flow control method according to claim 6,
the SDN controller further determines tunnel identification information, and associates address information of the application server, address information of the terminal, tunnel address information of the distribution device, address information of the first switch and the tunnel identification information to serve as path information from the terminal to the application server.
8. A software defined network controller comprising:
the message acquisition module is used for acquiring a Domain Name System (DNS) message;
the message analysis module is used for analyzing the DNS message and acquiring the path information from the terminal to the application server; the application server is positioned in an edge data center;
the flow table generating module is used for generating a flow table according to the path information from the terminal to the application server;
the flow table issuing module is used for sending the flow table to a shunting device and a first switch corresponding to the application server so that the shunting device and the first switch can transmit the interactive flow of the terminal and the application server through a tunnel;
the message acquisition module is used for receiving a DNS response message sent by a second switch corresponding to the DNS server;
the DNS response message is generated by the DNS server according to the DNS request message of the terminal and is sent to the second switch, and the DNS server is located in an edge data center.
9. The software defined network controller of claim 8 wherein,
the message acquisition module is also used for receiving a registration response message sent by the second switch;
and the registration response message is generated by the DNS server according to the registration request message of the application server and is sent to the second switch.
10. The software defined network controller of claim 8 wherein,
the DNS packet includes: DNS response message and registration response message;
the message analysis module is used for analyzing the registration response message to acquire the address information of the application server and the address information of the first switch; analyzing the DNS response message to obtain the address information of the application server, the address information of the terminal and the tunnel address information of the shunting equipment; and according to the address information of the application server, associating the address information of the application server, the address information of the terminal, the tunnel address information of the shunting equipment and the address information of the first switch to be used as path information from the terminal to the application server.
11. The software defined network controller of claim 10, further comprising:
the tunnel determining module is used for determining tunnel identification information;
the message analysis module is further configured to associate address information of the application server, address information of the terminal, tunnel address information of the offloading device, address information of the first switch, and the tunnel identifier information, as path information from the terminal to the application server.
12. A flow control system, comprising:
the software defined network controller of any one of claims 8-11;
the shunting equipment and the first switch;
a first tunnel is arranged between the shunting equipment and the first switch; the first switch is in communication connection with an application server;
the shunting device and the first switch are used for receiving a flow table sent by the SDN controller and transmitting the interactive flow of the terminal and the application server through the first tunnel.
13. The flow control system of claim 12,
the shunting device is used for sending a message sent by the terminal to the application server to the first switch through a first tunnel according to the flow table, and receiving the message sent by the application server to the terminal and forwarded by the first switch through the first tunnel and forwarding the message to the terminal according to the flow table;
the first switch is used for receiving the messages which are forwarded by the shunting equipment and sent to the application server by the terminal through the first tunnel, and sending the messages which are received and sent to the terminal by the application server to the shunting equipment through the first tunnel according to the flow table.
14. The flow control system of claim 12, further comprising: a second switch, a domain name system, DNS, server;
a second tunnel is arranged between the shunting equipment and the second switch; the second switch is in communication connection with the DNS server;
the shunting device is further configured to receive the DNS request packet sent by the terminal, and send the DNS request packet to the second switch through a second tunnel;
and the second switch is used for sending the DNS request message to the DNS server.
15. The flow control system of claim 14,
a third tunnel is arranged between the first switch and the second switch;
the first switch is further configured to receive a registration request message sent by the application server, and send the registration request message to the second switch through the third tunnel according to address information in the registration request message;
the second switch is further configured to send the registration request message to the DNS server.
16. A flow control device comprising:
a memory; and
a processor coupled to the memory, the processor configured to perform the flow control method of any of claims 1-7 based on instructions stored in the memory.
17. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the steps of the method according to any one of claims 1 to 7.
CN201811402952.0A 2018-11-23 2018-11-23 Flow control method, device and system and SDN controller Active CN111225070B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811402952.0A CN111225070B (en) 2018-11-23 2018-11-23 Flow control method, device and system and SDN controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811402952.0A CN111225070B (en) 2018-11-23 2018-11-23 Flow control method, device and system and SDN controller

Publications (2)

Publication Number Publication Date
CN111225070A CN111225070A (en) 2020-06-02
CN111225070B true CN111225070B (en) 2022-05-03

Family

ID=70828579

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811402952.0A Active CN111225070B (en) 2018-11-23 2018-11-23 Flow control method, device and system and SDN controller

Country Status (1)

Country Link
CN (1) CN111225070B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111935666A (en) * 2020-08-13 2020-11-13 山东超越数控电子股份有限公司 Wearable communication system
CN113067815B (en) * 2021-03-17 2023-01-06 牙木科技股份有限公司 DNS log analysis method, DNS log analysis system and computer readable storage medium
CN113285995B (en) * 2021-05-18 2023-06-13 中国人民解放军陆军工程大学 Micro-service request self-adaptive mapping distribution system and method based on SDN
CN118476311A (en) * 2022-02-18 2024-08-09 中兴通讯股份有限公司 Method for edge computation

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106161158A (en) * 2016-07-21 2016-11-23 网宿科技股份有限公司 The methods, devices and systems of value-added service are provided
CN106488508A (en) * 2015-08-31 2017-03-08 大唐移动通信设备有限公司 A kind of data transmission method, apparatus and system
CN106878193A (en) * 2017-02-10 2017-06-20 新华三技术有限公司 A kind of load sharing method and device
EP3208976A1 (en) * 2014-11-19 2017-08-23 Nippon Telegraph and Telephone Corporation Control device, border router, control method and control program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3208976A1 (en) * 2014-11-19 2017-08-23 Nippon Telegraph and Telephone Corporation Control device, border router, control method and control program
CN106488508A (en) * 2015-08-31 2017-03-08 大唐移动通信设备有限公司 A kind of data transmission method, apparatus and system
CN106161158A (en) * 2016-07-21 2016-11-23 网宿科技股份有限公司 The methods, devices and systems of value-added service are provided
CN106878193A (en) * 2017-02-10 2017-06-20 新华三技术有限公司 A kind of load sharing method and device

Also Published As

Publication number Publication date
CN111225070A (en) 2020-06-02

Similar Documents

Publication Publication Date Title
CN111225070B (en) Flow control method, device and system and SDN controller
US20210029077A1 (en) Managing network connectivity between cloud computing service endpoints and virtual machines
CN104219127B (en) A kind of creation method and equipment of virtual network example
CN111193773B (en) Load balancing method, device, equipment and storage medium
CN108833565B (en) Method and device for monitoring server, server and storage medium
CN113839995B (en) Cross-domain resource nano-tube system, method, equipment and storage medium
CN109324908B (en) Container isolation method and device for Netlik resources
CN108039968B (en) Network optimization method, device and computer readable storage medium
CN114422350B (en) Public cloud container instance creation method
CN111404628B (en) Time synchronization method and device
CN115118585B (en) Service deployment method, device and system
CN112583655B (en) Data transmission method and device, electronic equipment and readable storage medium
CN114070822A (en) Kubernetes Overlay IP address management method
CN111338758A (en) Resource management method and device and electronic equipment
CN107659930A (en) A kind of AP connection control methods and device
CN104065688B (en) A kind of method and device for calling underlying services
CN107483628B (en) DPDK-based one-way proxy method and system
CN110597783A (en) Database management method, device, equipment and storage medium
CN114157668B (en) Multi-tenant cross-cluster networking method, communication system and readable storage medium
CN111953749A (en) Message distribution method and device for distributed equipment
CN106803804B (en) Method and device for transmitting message
CN115412527A (en) Method and communication device for one-way communication between virtual private networks
CN115225482A (en) Method and device for configuring Pod network based on Kubernetes
CN114528114B (en) Data processing method, device and equipment
CN114979128A (en) Cross-region communication method and device 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