A network path control method and device, electronic equipment and storage medium

By building virtual paths in the overlay network and utilizing the status information and geographic location information of virtual nodes, the high cost problem of hardware upgrade required for network path scheduling in the existing technology is solved, and efficient network path scheduling is achieved.

CN115733868BActive Publication Date: 2025-10-24CHINA MOBILEHANGZHOUINFORMATION TECH CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110993580.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-08-27
Publication Date
2025-10-24
Estimated Expiration
2041-08-27

AI Technical Summary

Technical Problem

In the existing technology, network path scheduling requires upgrading routing equipment on physical lines, resulting in high costs and long modification cycles.

Method used

By receiving the IP addresses of the sender and receiver, the geographic location information is determined, and the virtual nodes in the overlay network are used to build a virtual path to achieve network path scheduling, avoiding the modification of the underlying physical network hardware equipment.

Benefits of technology

The cost of network path scheduling is reduced, the scheduling cycle is shortened, and efficient scheduling of network paths is achieved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115733868B_ABST
    Figure CN115733868B_ABST
Patent Text Reader

Abstract

The application provides a network path control method and device, electronic equipment and computer storage medium. The method comprises the following steps: receiving a scheduling request for a network path, wherein the scheduling request comprises IP addresses of a sending end and a receiving end; determining geographical position information of the sending end and the receiving end according to the IP addresses of the sending end and the receiving end; determining at least one virtual node satisfying a target path strategy according to the geographical position information of the sending end and the receiving end and state information of each virtual node in a superimposed network; constructing a virtual path based on the at least one virtual node; and realizing scheduling of the network path by using the virtual path.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the network technical field, and particularly relates to a network path control method and device, electronic equipment and computer storage medium. BACKGROUND

[0002] In most cases, physical network transmission is transparent to the upper layer terminal application, and the terminal application does not care how the data is scheduled on the physical network; after the application terminal sends out the data, the routing device in the physical network forwards the data according to the algorithm; in this way, the terminal application cannot perceive the network state, and has no power to deal with the network congestion of the data transmission.

[0003] In the related art, in order to further improve the network performance and avoid or reduce the delay caused by network congestion, a scheduling method of software defined network (SDN) is usually used to control the network path; specifically, the method needs to deploy ODL (OpenDayLight), ONOS and other controllers and SDN routing devices, and the controller centrally controls the SDN routing device nodes on the network to realize the modification and scheduling of the network path; since the routing device of the ordinary network generally does not support the SDN network scheduling, the above scheduling method needs to upgrade the routing device on the physical line to realize the matching of the controller and the routing device, so that the reconstruction and upgrading engineering is large and the cost is high. SUMMARY

[0004] The present application provides a network path control method, device, electronic equipment and computer storage medium; which can solve the problem of high cost caused by the need to transform hardware devices in the related art when scheduling the network path.

[0005] The technical solution of the present application is implemented as follows:

[0006] The present application provides a network path control method, which comprises:

[0007] receiving a scheduling request for a network path, the scheduling request comprising: Internet Protocol (IP) addresses of a sending end and a receiving end; determining geographical location information of the sending end and the receiving end according to the IP addresses of the sending end and the receiving end;

[0008] determining at least one virtual node satisfying a target path strategy according to the geographical location information of the sending end and the receiving end and state information of each virtual node in the overlay network;

[0009] constructing a virtual path based on the at least one virtual node; and scheduling the network path by using the virtual path.

[0010] In some embodiments, the determining at least one virtual node satisfying the target path policy according to the geographical position information of the sending end and the receiving end and the state information of each virtual node in the overlay network comprises:

[0011] According to the geographical position information of the sending end and the receiving end, it is judged whether the sending end and the receiving end are in the same set area, and a judgment result is obtained.

[0012] When the judgment result is yes, one virtual node satisfying the target path policy is determined according to the state information of each virtual node of the overlay network in the same set area.

[0013] When the judgment result is no, a virtual node list satisfying the target path policy is determined according to the state information of each virtual node in the overlay network; the virtual node list includes at least two virtual nodes.

[0014] In some embodiments, the method further comprises:

[0015] According to the service type of the scheduling request, the target path policy is determined; the target path policy includes any one of the following: delay priority policy, packet loss priority policy, minimum hop priority policy, default node priority policy.

[0016] In some embodiments, the method further comprises:

[0017] The state information of each virtual node in the network is updated every timing time, and the state information includes at least one of the following: delay, packet loss rate, central processing unit (CPU) usage state, memory usage state.

[0018] In some embodiments, the constructing a virtual path based on the at least one virtual node comprises:

[0019] Using a private protocol, channel information corresponding to the at least one virtual node is generated.

[0020] The channel information is issued to each virtual node in the at least one virtual node, and the construction of the virtual path is completed.

[0021] In some embodiments, the method further comprises:

[0022] Before generating the channel information corresponding to the at least one virtual node, a unique serial number corresponding to the at least one virtual node is obtained.

[0023] In some embodiments, the method further comprises:

[0024] The scheduling for the network path is implemented based on a micro-service architecture.

[0025] The present application provides a network path control device, the device comprising a first determination module, a second determination module and a scheduling module, wherein,

[0026] The first determination module is configured to receive a scheduling request for a network path, the scheduling request comprising IP addresses of a sending end and a receiving end; and determine geographical location information of the sending end and the receiving end according to the IP addresses of the sending end and the receiving end.

[0027] The second determination module is configured to determine at least one virtual node satisfying a target path policy according to the geographical location information of the sending end and the receiving end and state information of each virtual node in an overlay network.

[0028] The scheduling module is configured to construct a virtual path based on the at least one virtual node; and implement the scheduling of the network path by using the virtual path.

[0029] The present application provides an electronic device, the device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, the processor implementing the network path control method provided by one or more of the preceding technical solutions when executing the program.

[0030] The present application provides a computer storage medium, the computer storage medium storing a computer program; the computer program being executable to implement the network path control method provided by one or more of the preceding technical solutions.

[0031] The present application provides a network path control method, device, electronic device and computer storage medium, the method comprising: receiving a scheduling request for a network path, the scheduling request comprising IP addresses of a sending end and a receiving end; determining geographical location information of the sending end and the receiving end according to the IP addresses of the sending end and the receiving end; determining at least one virtual node satisfying a target path policy according to the geographical location information of the sending end and the receiving end and state information of each virtual node in an overlay network; constructing a virtual path based on the at least one virtual node; and implementing the scheduling of the network path by using the virtual path.

[0032] It can be seen that, after obtaining the geographical position information of the sending end and the receiving end, the embodiment of the application realizes the scheduling of the network path according to the geographical position information and the state information of each virtual node in the overlay network. Since the embodiment of the application is directed to the virtual nodes in the overlay network, and the overlay network is a virtual network constructed without any modification of the physical network, and is not the hardware device in the underlying physical network, the embodiment of the application can realize the scheduling of the network path without upgrading the hardware device in the underlying physical network, thereby reducing the investment cost and shortening the scheduling period. It can be seen that the embodiment of the application can solve the problem of high cost caused by the need to modify the hardware device when scheduling the network path in the related art. BRIEF DESCRIPTION OF DRAWINGS

[0033] Figure 1A A flowchart of a network path control method according to an embodiment of the application;

[0034] Figure 1B A structural diagram of generating a unique serial number by using a snowflake id algorithm;

[0035] Figure 2 A flowchart of another network path control method according to an embodiment of the application;

[0036] Figure 3 A structural diagram of a network path control device according to an embodiment of the application;

[0037] Figure 4 A structural diagram of an electronic device according to an embodiment of the application. DETAILED DESCRIPTION

[0038] The technical solutions in the application will be described clearly and completely in the application in combination with the accompanying drawings.

[0039] The application will be further described in detail in combination with the accompanying drawings and embodiments. It should be understood that the embodiments provided herein are only used to explain the application, and are not used to limit the application. In addition, the embodiments provided below are used to implement some embodiments of the application, and the technical solutions described in the application can be implemented in any combined manner without conflict.

[0040] It should be noted that, in the present application, the terms "comprising", "containing" or any other variant thereof are intended to cover a non-exclusive inclusion, such that a process or an apparatus that comprises a list of elements does not only include those elements, but can also include other elements that are not expressly listed, or other elements that are inherent in the process or the apparatus. Without more limitations, the element defined by the phrase "comprising a" does not exclude the presence of another related element (for example, a step in a method or a unit in an apparatus, such as a unit of a processor, a part of a program or software, etc.) in the process or the apparatus that includes the element.

[0041] The term "and / or" herein is only a description of the association relationship of the associated objects, which means that there can be three relationships, for example, A and / or B, which can represent the three cases of A alone, A and B together, and B alone. In addition, the term "at least one" herein means any one of a plurality or any combination of at least two of a plurality, for example, including at least one of A, B and C, which can mean including any one or more elements selected from the set consisting of A, B and C.

[0042] For example, the network path control method provided by the present application includes a series of steps, but the network path control method provided by the present application is not limited to the steps described, and similarly, the network path control device provided by the present application includes a series of modules, but the network path control device provided by the present application is not limited to including the modules described, and can also include modules required for obtaining relevant information or processing based on information.

[0043] The present application can be implemented based on an electronic device, where the electronic device can be a thin client, a thick client, a handheld or laptop device, a microprocessor-based system, a set-top box, a programmable consumer electronics, a network personal computer, a small computer system, etc.

[0044] The electronic device can implement corresponding functions through the execution of program modules. Generally, program modules can include routines, programs, object programs, components, logic, data structures, etc. They perform specific tasks or implement specific abstract data types. The computer system can be implemented in a distributed cloud computing environment, in which tasks are performed by remote processing devices linked through a communication network. In a distributed cloud computing environment, program modules can be located on local or remote computing system storage media, including storage devices.

[0045] In the related art, in addition to the need to upgrade the routing device on the physical line, the SDN scheduling method also needs the controller to control and adjust the SDN routing device through a standard protocol; upgrading the underlying routing device will result in high investment cost and long change cycle; in addition, since the southbound scheduling interface of the controller used by the scheduling method is mainly for two-layer and three-layer network scheduling, the standard protocol needs to be compatible with multiple routing devices, thereby increasing the complexity of the interface.

[0046] To solve the above problems, the following embodiments are proposed.

[0047] In some embodiments of the present application, the network path control method can be implemented by using a processor in a network path control device, and the processor can be at least one of an Application Specific Integrated Circuit (ASIC), a Digital Signal Processor (DSP), a Digital Signal Processing Device (DSPD), a Programmable Logic Device (PLD), a Field Programmable Gate Array (FPGA), a CPU, a controller, a microcontroller, and a microprocessor.

[0048] Figure 1A A flowchart of a network path control method according to an embodiment of the present application is shown in FIG. 1, which can include the following steps: Figure 1A

[0049] Step 100: receiving a scheduling request for a network path, the scheduling request including: IP addresses of a sending end and a receiving end; determining geographical location information of the sending end and the receiving end according to the IP addresses of the sending end and the receiving end.

[0050] In the embodiments of the present application, the network path control method can be applied to a network controller; for example, the network controller can include an address resource service, a network path calculation service, a network state service, a network regulation service, and a unique serial number service. The network regulation service is the scheduling center of the network controller, which realizes the output of the control capability by providing an external interface.

[0051] ​Exemplarily, the external platform or terminal application sends a scheduling request for a network path to the network regulation service, and the network regulation service receives the scheduling request; since the IP addresses of the sending terminal and the receiving terminal are included in the scheduling request, the network regulation service can obtain the IP addresses of the sending terminal and the receiving terminal according to the scheduling request after receiving the scheduling request; here, the sending terminal and the receiving terminal can represent two different terminal devices, and the terminal application described above corresponds to the sending terminal.

[0052] In the embodiment of the application, after the network regulation service obtains the IP addresses of the sending terminal and the receiving terminal, the network regulation service accesses the address resource service carrying the IP addresses of the sending terminal and the receiving terminal. Exemplarily, the address resource service is used to be responsible for the management, query, update and the like of IP address resources; the address resource service maintains an IP address table of different geographical areas; the service assists the network regulation service to complete the scheduling request by providing an internal remote procedure call (RPC) interface; in the following, part of the fields included in the address resource service and the corresponding explanations are listed in Table 1.

[0053]

[0054] Table 1

[0055] It should be noted that the fields included in the address resource service can be flexibly changed, and the specific fields can be determined according to the actual scene, and the embodiment of the application does not limit this, for example, the field "area" can be added in Table 1, and the corresponding explanation of the field is "state".

[0056] Exemplarily, when the network regulation service accesses the address resource service carrying the IP addresses of the sending terminal and the receiving terminal, the address resource service queries the corresponding address resources by using the IP addresses, determines the geographical location information of the sending terminal and the receiving terminal according to the address resources respectively, and returns the geographical location information to the network regulation service.

[0057] Step 101: determining at least one virtual node satisfying the target path strategy according to the geographical location information of the sending terminal and the receiving terminal and the state information of each virtual node in the overlay network.

[0058] Here, the overlay network corresponds to the physical network (underlay); the overlay network is a network virtually generated by technical means without any modification of the physical network, which shields the underlying physical network; compared with the physical network, the overlay network realizes the separation of control and forwarding.

[0059] Exemplarily, each virtual node of the overlay network is a set of software services which not only has a routing and forwarding function, but also has a network access function; for example, the virtual node can be a point of presence (PoP) which has a routing and forwarding function.

[0060] In the embodiments of the present application, the state information of each virtual node in the overlay network can be obtained through a network state service; here, the network state service is an information center of the network controller, which is responsible for managing, collecting and updating the state information of each virtual node in the network.

[0061] Exemplarily, the state information of the virtual node can include at least one of the following: latency, packet loss rate, CPU usage state, memory usage state; the network state service can implement packet loss and delay detection between virtual nodes through the Internet Control Message Protocol (ICMP) to obtain the latency and packet loss rate of each virtual node; in addition, the network state service is also responsible for collecting memory consumption and CPU usage state, and monitoring the usage state of local CPU and memory after the network state service is started; hereinafter, part of the fields included in the network state service and the corresponding contents and descriptions of the part of the fields are listed in Table 2.

[0062]

[0063] Table 2

[0064] Exemplarily, a timing time can be set in the network state service, and then the state information of each virtual node in the network is updated every timing time, and the updated state information is stored in the cache table; that is, the network state service reacquires the state information of each virtual node in the network every timing time, and uses the state information to dynamically refresh the cache table, and then the network state service can report the state information of the virtual node stored in the cache table to the network control service.

[0065] In the embodiments of the present application, the value of the timing time is not limited and is set according to the actual situation; it can be seen that through the timing update detection mechanism, the dynamic refreshing of the state information of each virtual node in the network can be guaranteed.

[0066] In some embodiments, the above method can further include: determining a target path strategy according to the service type of the scheduling request; the target path strategy can include any one of the following: a delay priority strategy, a packet loss priority strategy, a minimum hop priority strategy, and a default node priority strategy.

[0067] Exemplarily, in order to meet the individualized needs of the upper-layer application, various path strategies such as delay priority, packet loss priority, minimum hop priority, and default node priority can be formulated in advance according to different service types; in this way, after the network regulation service obtains the scheduling request, the target path strategy corresponding to the service type of the scheduling request is directly selected from the pre-formulated strategies.

[0068] In some embodiments, determining at least one virtual node satisfying the target path strategy according to the geographical location information of the sending end and the receiving end and the state information of each virtual node in the overlay network can include: judging whether the sending end and the receiving end are in the same set area according to the geographical location information of the sending end and the receiving end, to obtain a judgment result; when the judgment result is yes, determining one virtual node satisfying the target path strategy according to the state information of each virtual node in the same set area in the overlay network; when the judgment result is no, determining a virtual node list satisfying the target path strategy according to the state information of each virtual node in the overlay network; the virtual node list includes at least two virtual nodes.

[0069] Here, the value range of the set area is not limited, and can be set according to actual conditions; for example, it can be the geographical area range corresponding to a province or a city.

[0070] In some embodiments, if the network regulation service determines that the sending end and the receiving end are in the same set area according to the geographical location information of the sending end and the receiving end, all available virtual nodes in the set area are obtained; and one virtual node satisfying the target path strategy is selected from all available virtual nodes according to the state information of each available virtual node. Exemplarily, assuming that the target path strategy is a delay priority strategy, the virtual node with the minimum delay is determined from all available virtual nodes according to the state information of each available virtual node, and the virtual node is taken as one virtual node satisfying the target path strategy; if the number of virtual nodes with the minimum delay is multiple, one virtual node is randomly selected from them as one virtual node satisfying the target path strategy.

[0071] In some embodiments, if the network regulation service determines that the sending end and the receiving end are not in the same set area according to the geographical location information of the sending end and the receiving end, a virtual node list satisfying the target path strategy is determined through a network path calculation service; here, the path calculation service can provide internal capability output through an RPC interface to assist the network regulation service to jointly complete the construction of the virtual path.

[0072] Exemplarily, after the network path computing service is started, information related to the target path policy is obtained from the state information of each virtual node in the network reported by the network state service according to the network state; exemplarily, assuming that the target path policy is a delay priority policy, delay information of each virtual node is obtained, and the path topology structure of each virtual node is constructed by using the delay information; and the shortest path between the virtual nodes adjacent to the sending end and the receiving end in the overlay network is determined by using the shortest path algorithm, and the shortest path indicates that the delay between the virtual nodes is the smallest; exemplarily, assuming that the target path policy is a packet loss priority policy, the shortest path between the virtual nodes is determined by using the shortest path algorithm, and the shortest path indicates that the packet loss rate between the virtual nodes is the smallest; here, the virtual node list includes all the virtual nodes in the shortest path.

[0073] Exemplarily, the type of the above shortest path algorithm is not limited, for example, it can be a floyd algorithm, or other types of path algorithms; the shortest paths between P1 to P5 five virtual nodes determined by using the floyd algorithm are listed in Table 3.

[0074]

[0075] Table 3

[0076] Exemplarily, the path topology structure of each virtual node can also be dynamically refreshed according to the timing time set in the network state service, and then the shortest paths between the virtual nodes are re-determined.

[0077] Exemplarily, after the shortest paths between each virtual node in the overlay network are determined each time, the high-speed virtual node path query can be realized by using the cache mechanism.

[0078] Step 102: constructing a virtual path based on at least one virtual node; and realizing the scheduling of the network path by using the virtual path.

[0079] Exemplarily, according to step 101, if the sending end and the receiving end are in the same set area, it is determined that the at least one virtual node is a virtual node satisfying the target path policy; otherwise, if the sending end and the receiving end are not in the same set area, it is determined that the at least one virtual node is a virtual node list satisfying the target path policy.

[0080] Exemplarily, in the case that the at least one virtual node is a virtual node, a virtual path from the sending end to the receiving end is constructed based on the virtual node; in the case that the at least one virtual node is a virtual node list, a virtual path from the sending end to the receiving end is constructed based on the virtual nodes included in the virtual node list.

[0081] Exemplarily, in order to ensure the uniqueness of the virtual path naming, to realize fast record saving, query and update and the like; after at least one virtual node meeting the target path strategy is determined, a unique sequence number service can be used to generate a unique sequence number corresponding to the at least one virtual node; then, the network regulation service can access the unique sequence number service to obtain the unique sequence number corresponding to the at least one virtual node.

[0082] Exemplarily, the unique sequence number service can generate the unique sequence number corresponding to the at least one virtual node by using an identity document (ID) generation algorithm. Here, the type of the ID generation algorithm is not limited, for example, it can be a snowflake id algorithm or other types of ID generation algorithms.

[0083] Exemplarily, in the case where the unique ID generation algorithm is the snowflake id algorithm, the unique sequence number service can generate a Globally Unique Identifier (GUID) by using the snowflake id algorithm; here, the GUID corresponds to the unique sequence number. The snowflake id algorithm has the characteristics of high efficiency, and a single service can generate 26W ordered IDs per second.

[0084] Figure 1B A structure diagram for generating the unique sequence number by using the snowflake id algorithm is shown in FIG. 8. Figure 1B The snowflake id algorithm is an 8-byte (64-bit) id generation strategy; the 8 bytes can be divided into four fields, the first 1 bit is a sign bit, which ensures that the generated sequence number is positive; the middle 41 bits are the current time, with a precision of milliseconds; then 10 bits are the work machine Id, which can support 1024 servers to run simultaneously; and the last 12 bits are the unique sequence number generation, which supports 4096 self-increasing IDs per millisecond.

[0085] In some embodiments, based on the at least one virtual node, the virtual path can be constructed, which can include: generating channel information corresponding to the at least one virtual node by using a private protocol; and delivering the channel information to each virtual node in the at least one virtual node to complete the construction of the virtual path.

[0086] In the embodiments of this application, after the network regulation service obtains at least one virtual node and a unique sequence number of a virtual path determined according to the at least one virtual node, the network regulation service can find the corresponding virtual path according to the unique sequence number; then, according to the fields included in the private protocol, the channel information corresponding to the virtual path is generated, and the channel information is encapsulated, and then the encapsulated channel information is issued to each virtual node in the virtual path through the TCP mode, and the transmission of the control command is completed; at this time, the virtual path is constructed.

[0087] Exemplarily, the fields included in the private protocol are predefined; part of the fields included in the private protocol are listed in Table 4; exemplarily, referring to Table 4, the field actions of the private protocol can include creating a channel (create), updating a channel (update) and destroying a channel (release); it should be noted that the fields shown in Table 4 are only an example, and the type of the fields included in the private protocol is not limited in the embodiments of this application.

[0088]

[0089] Table 4

[0090] It can be seen that, compared with the construction of the virtual path using the third-party standard protocol with complex content in the related art, the embodiments of this application effectively simplify the protocol fields by using the private protocol mode, and reduce the complexity of the interface.

[0091] Exemplarily, after the transmission of the control command is completed, the network regulation service saves the generated channel information in a database, and constructs a virtual path access information table according to the channel information to reply to the external platform or the terminal application; in this way, the external platform or the terminal application can obtain the access addresses of the sending end and the receiving end according to the virtual path access information table, and complete the access of the terminal devices corresponding to the sending end and the receiving end according to the access addresses, and then, the network path between the sending end and the receiving end is scheduled. Hereinafter, part of the fields included in the virtual path access information table are listed in Table 5, wherein the terminal ue1 and the terminal ue2 represent the terminal devices corresponding to the sending end and the receiving end respectively.

[0092]

[0093] Table 5

[0094] In some embodiments, the scheduling of the network path is implemented based on a micro-service architecture, here, the micro-service architecture can be a distributed micro-service or a micro-service cluster, and the embodiments of this application do not limit this.

[0095] Exemplarily, the five services of the network controller are all constructed by microservices; that is, the scheduling service of the network path is completed by mutual calling among the five microservices; here, the mutual calling among the microservices is implemented by the RPC mode; since the groups of microservices are decoupled by resources, the characteristics of quick upgrade, quick deployment and quick function expansion can be realized, thereby facilitating the iterative upgrade of the network controller.

[0096] The embodiment of the application provides a network path control method and device, electronic equipment and computer storage medium, and the method comprises the steps of: receiving a scheduling request for a network path, wherein the scheduling request comprises IP addresses of a sending end and a receiving end; determining geographical position information of the sending end and the receiving end according to the IP addresses of the sending end and the receiving end; determining at least one virtual node meeting a target path strategy according to the geographical position information of the sending end and the receiving end and state information of each virtual node in a superimposed network; constructing a virtual path based on the at least one virtual node; and implementing scheduling of the network path by using the virtual path. It can be seen that, after obtaining the geographical position information of the sending end and the receiving end, the embodiment of the application implements the scheduling of the network path according to the geographical position information and the state information of each virtual node in the superimposed network; since the embodiment of the application is directed to the virtual nodes in the superimposed network, and the superimposed network is a virtual network constructed without any modification of a physical network, and is not a hardware device in the underlying physical network; in this way, the embodiment of the application can implement the scheduling of the network path without upgrading the hardware device in the underlying physical network, thereby reducing the investment cost and shortening the scheduling period; it can be seen that the embodiment of the application can solve the problem of high cost caused by the modification of the hardware device in the related art when the network path is scheduled.

[0097] In order to better reflect the purpose of the application, further description is made on the basis of the above-mentioned embodiment of the application.

[0098] Figure 2 The flowchart of another network path control method of the embodiment of the application is shown in Figure 2 , and the flowchart can comprise the following steps:

[0099] Step A1: An external platform or terminal application sends a scheduling request to a network regulation service.

[0100] Exemplarily, the scheduling request comprises IP addresses of a sending end and a receiving end.

[0101] Step A2: The network regulation service queries geographical position information of the sending end and the receiving end by an address resource service.

[0102] Exemplarily, the network regulation service accesses the address resource service according to the IP addresses of the sending end and the receiving end carried in the scheduling request, and can obtain the geographic location information of the sending end and the receiving end.

[0103] Step A3: judging whether the sending end and the receiving end are in the same area.

[0104] Exemplarily, the same area refers to the same set area as described above; here, whether the sending end and the receiving end are in the same area is judged according to the geographic location information of the two. If the judgment result is yes, step A4 is executed in turn, otherwise, if the judgment result is no, step A4' and step A5' are executed in turn.

[0105] Step A4: querying available virtual nodes and returning to the network regulation service.

[0106] Exemplarily, the available virtual nodes in the same area are queried, and the state information of each available virtual node is returned to the network regulation service.

[0107] Step A4': determining the shortest path through the network path calculation service.

[0108] Exemplarily, the shortest path refers to the shortest path between the virtual nodes adjacent to the sending end and the receiving end; before the network path calculation service determines the shortest path, the state information of each virtual node in the network reported by the network state service needs to be obtained first.

[0109] Step A5': the network path calculation service returns the virtual node list to the network regulation service.

[0110] Exemplarily, the virtual node list includes all virtual nodes in the shortest path.

[0111] Step A6: the network regulation service generates a unique sequence number by accessing the unique sequence number service.

[0112] Step A7: after obtaining the virtual node information and the unique sequence number, the network regulation service constructs the channel information through a private protocol.

[0113] Exemplarily, the virtual node information includes available virtual nodes or a virtual node list; after the channel information is constructed, it is issued to the corresponding virtual nodes in turn.

[0114] Step A8: returning the construction result of the channel information.

[0115] Step A9: the network regulation service saves the construction result of the channel information in the database, constructs a virtual path access information table, and replies to the external platform or terminal application.

[0116] Exemplarily, the external platform or terminal application can acquire the access addresses of the sending end and the receiving end according to the virtual path access information table, and complete the access of the terminal devices corresponding to the sending end and the receiving end according to the access addresses, and then realize the scheduling of the network path between the sending end and the receiving end.

[0117] Figure 3 A schematic diagram of a network path control device according to an embodiment of the present application is shown in FIG. 3, which includes a first determining module 300, a second determining module 301 and a scheduling module 302, wherein: Figure 3

[0118] The first determining module 300 is configured to receive a scheduling request for a network path, the scheduling request including IP addresses of a sending end and a receiving end, and determine geographical location information of the sending end and the receiving end according to the IP addresses of the sending end and the receiving end.

[0119] The second determining module 301 is configured to determine at least one virtual node satisfying a target path policy according to the geographical location information of the sending end and the receiving end and state information of each virtual node in an overlay network.

[0120] The scheduling module 302 is configured to construct a virtual path based on the at least one virtual node, and realize the scheduling of the network path by using the virtual path.

[0121] In some embodiments, the second determining module 301 is configured to determine at least one virtual node satisfying a target path policy according to the geographical location information of the sending end and the receiving end and state information of each virtual node in an overlay network, including:

[0122] determining whether the sending end and the receiving end are in a same set region according to the geographical location information of the sending end and the receiving end, to obtain a determination result;

[0123] when the determination result is yes, determining one virtual node satisfying a target path policy according to state information of each virtual node in the same set region of the overlay network;

[0124] when the determination result is no, determining a virtual node list satisfying a target path policy according to state information of each virtual node in the overlay network, the virtual node list including at least two virtual nodes.

[0125] In some embodiments, the second determining module 301 is further configured to:

[0126] ​The target path strategy is determined according to a service type of the scheduling request, and the target path strategy includes any one of the following: a delay priority strategy, a packet loss priority strategy, a minimum hop priority strategy, and a default node priority strategy.

[0127] In some embodiments, the apparatus further includes an updating module configured to:

[0128] The state information of each virtual node in the network is updated every timing time, and the state information includes at least one of the following: a time delay, a packet loss rate, a CPU usage state, and a memory usage state.

[0129] In some embodiments, the scheduling module 302 is configured to construct a virtual path based on the at least one virtual node, including:

[0130] The channel information corresponding to the at least one virtual node is generated by using a private protocol.

[0131] The channel information is sent to each virtual node in the at least one virtual node to complete the construction of the virtual path.

[0132] In some embodiments, the scheduling module 302 is further configured to:

[0133] Before the channel information corresponding to the at least one virtual node is generated, a unique sequence number corresponding to the at least one virtual node is obtained.

[0134] In some embodiments, the scheduling for the network path is implemented based on a micro-service architecture.

[0135] In actual applications, the first obtaining module 300, the second obtaining module 301, the determining module 302, and the updating module can be implemented by a processor in an electronic device, which can be at least one of an ASIC, a DSP, a DSPD, a PLD, an FPGA, a CPU, a controller, a microcontroller, and a microprocessor.

[0136] In addition, each functional module in the embodiment can be integrated in one processing unit, or each unit can exist physically independently, or two or more units can be integrated in one unit. The integrated unit can be implemented in the form of hardware or in the form of a software functional module.

[0137] If the integrated unit is implemented in the form of a software function module and is not sold or used as an independent product, it can be stored in a computer readable storage medium based on such understanding. The technical solutions of the embodiments essentially or the parts that make contributions to the related art or the whole or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a number of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to execute all or part of the steps of the embodiments. The aforementioned storage medium includes a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and various media that can store program codes.

[0138] Specifically, the computer program instructions corresponding to the network path control method in the embodiments can be stored on a storage medium such as an optical disc, a hard disk, a U disk, etc. When the computer program instructions corresponding to the network path control method in the embodiments are read by an electronic device or executed, any network path control method in the foregoing embodiments is implemented.

[0139] Based on the same technical concept as the foregoing embodiments, refer to Figure 4 which shows the electronic device 400 provided by the embodiments of the present application, which can include a memory 401 and a processor 402; wherein,

[0140] The memory 401 is configured to store computer programs and data.

[0141] The processor 402 is configured to execute the computer programs stored in the memory to implement any network path control method in the foregoing embodiments.

[0142] In actual applications, the memory 401 can be a volatile memory (volatile memory) such as RAM, or a non-volatile memory (non-volatile memory) such as ROM, flash memory, hard disk (Hard Disk Drive, HDD) or solid state disk (Solid-State Drive, SSD), or a combination of the above types of memories, and provides instructions and data to the processor 402.

[0143] The processor 402 can be at least one of an ASIC, a DSP, a DSPD, a PLD, an FPGA, a CPU, a controller, a microcontroller, and a microprocessor. It can be understood that, for different model training devices, the electronic device used to implement the functions of the processor can also be other electronic devices, and the embodiments of the present application are not limited in this regard.

[0144] In some embodiments, the device provided by the embodiments of the present application has functions or includes modules that can be used to execute the methods described in the above method embodiments, and the specific implementation can refer to the description of the above method embodiments. For brevity, details are not repeated here.

[0145] The above description of various embodiments tends to emphasize the differences between various embodiments, and the same or similar parts can be mutually referred to. For brevity, details are not repeated here.

[0146] The methods disclosed in the various method embodiments provided by the present application can be combined in any manner without conflict, to obtain new method embodiments.

[0147] The features disclosed in the various product embodiments provided by the present application can be combined in any manner without conflict, to obtain new product embodiments.

[0148] The features disclosed in the various method or device embodiments provided by the present application can be combined in any manner without conflict, to obtain new method embodiments or device embodiments.

[0149] Those skilled in the art will appreciate that embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can take the form of hardware embodiments, software embodiments, or embodiments combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage and optical storage, etc.) containing computer-usable program code.

[0150] The present application is described with reference to flowcharts and / or block diagrams according to the methods, devices (systems), and computer program products of the embodiments of the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and the combination of flows and / or blocks in the flowcharts and / or block diagrams can be implemented by computer program instructions. These computer program instructions can be provided to a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing devices produce a device that implements the functions specified in one or more flows in the flowcharts and / or one or more blocks in the block diagrams.

[0151] These computer program instructions can also be loaded into a computer or other programmable data processing devices, so that a series of operation steps are performed on the computer or other programmable devices to generate computer-implemented processes, thus the instructions executed on the computer or other programmable devices provide steps for implementing the functions specified in one or more flows in the flowchart and / or one or more blocks in the block diagram.

[0152] The above merely provides the preferred embodiment of the present application, but not for limiting the protection scope of the present application.

Claims

1. A network path control method characterized by, The method comprises: receiving a scheduling request for a network path, the scheduling request comprising: IP addresses of a sending end and a receiving end; determining geographical location information of the sending end and the receiving end according to the IP addresses of the sending end and the receiving end; determining at least one virtual node satisfying a target path strategy according to the geographical location information of the sending end and the receiving end and state information of each virtual node in an overlay network; constructing a virtual path based on the at least one virtual node; and implementing scheduling of the network path by using the virtual path; The method further comprises: determining the target path strategy according to a service type of the scheduling request; the target path strategy comprising any one of the following: a delay priority strategy, a packet loss priority strategy, a minimum hop priority strategy, and a default node priority strategy. The method further comprises: updating the state information of each virtual node in the network every fixed timing time; the state information comprising at least one of the following: a time delay, a packet loss rate, a CPU usage state, and a memory usage state.

2. The method of claim 1, wherein, The method further comprises: generating channel information corresponding to the at least one virtual node by using a private protocol before the constructing of the virtual path; 3. The method of claim 1, wherein, downloading the channel information to each virtual node in the at least one virtual node to complete the construction of the virtual path. The method further comprises:

4. The method according to claim 1, wherein obtaining a unique sequence number corresponding to the at least one virtual node before the generating of the channel information corresponding to the at least one virtual node. The method further comprises: The scheduling for the network path is implemented based on a micro-service architecture.

5. The method of claim 4, wherein, The apparatus comprises: a first determining module configured to receive a scheduling request for a network path, the scheduling request comprising: IP addresses of a sending end and a receiving end; and determine geographical location information of the sending end and the receiving end according to the IP addresses of the sending end and the receiving end; 6. The method of claim 1, wherein, a second determining module configured to determine at least one virtual node satisfying a target path strategy according to the geographical location information of the sending end and the receiving end and state information of each virtual node in an overlay network; a scheduling module configured to construct a virtual path based on the at least one virtual node; and implement scheduling of the network path by using the virtual path.

7. A network path control apparatus characterized by comprising: ​ ​ ​ ​ The second determining module is further configured to determine whether the sending end and the receiving end are in a same set region according to geographical position information of the sending end and the receiving end, and obtain a determination result; when the determination result is yes, determining one virtual node satisfying a target path policy according to state information of each virtual node of the overlay network in the same set region; when the determination result is no, determining a virtual node list satisfying the target path policy according to state information of each virtual node of the overlay network; the virtual node list includes at least two virtual nodes.

8. An electronic device, comprising: The device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor implements the method of any one of claims 1 to 6 when executing the program.

9. A computer storage medium having stored thereon a computer program, characterized in that The computer program is executed by the processor to implement the method of any one of claims 1 to 6.

Citation Information

Patent Citations

  • Method and device for selecting forward nodes

    CN101562569A

  • Overlay network routing method and system, and equipment

    CN108111413A