WO2018137361A1 - 数据转发方法及装置 - Google Patents

数据转发方法及装置 Download PDF

Info

Publication number
WO2018137361A1
WO2018137361A1 PCT/CN2017/105905 CN2017105905W WO2018137361A1 WO 2018137361 A1 WO2018137361 A1 WO 2018137361A1 CN 2017105905 W CN2017105905 W CN 2017105905W WO 2018137361 A1 WO2018137361 A1 WO 2018137361A1
Authority
WO
WIPO (PCT)
Prior art keywords
path
link
attribute
node
attribute value
Prior art date
Application number
PCT/CN2017/105905
Other languages
English (en)
French (fr)
Inventor
盛镇醴
黄荣锋
于璠
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Priority to EP17893551.6A priority Critical patent/EP3565194B1/en
Publication of WO2018137361A1 publication Critical patent/WO2018137361A1/zh
Priority to US16/522,065 priority patent/US11252076B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/123Evaluation of link metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/124Shortest path evaluation using a combination of metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/33Flow control; Congestion control using forward notification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/127Shortest path evaluation based on intermediate node capabilities

Definitions

  • the embodiments of the present invention relate to the field of communications technologies, and in particular, to a data forwarding method and apparatus.
  • SDN Software Defined Networking
  • the core idea of SDN is to separate the control plane of the network from the forwarding plane.
  • the SDN controller on the control plane can uniformly control the forwarding of data in a network on the forwarding plane to achieve flexible deployment of network traffic.
  • the SDN controller may first determine a path set of the nodes in the network, and then based on the path set of the nodes in the network, the source node and the sink node in the network. The business data between the two is forwarded.
  • the path set of a certain node includes a path of the active node to the node, the source node refers to a node that serves as a source to send service data, and the sink node refers to a node that acts as a sink to receive service data.
  • the path set determining step may be iteratively performed to determine a path set of nodes in the network, the path set determining step is: determining, for each link in the network, a path set of the starting node of the link; Each path included in the path set of the start node, when the path and the new path formed by the link meet the quality of service (QoS) constraint, the path and the new path formed by the link are added to the path The path set of the terminating node of the link.
  • QoS constraint condition refers to a condition that can ensure that the path and the new path formed by the link meet the service quality requirement of the service.
  • the path and the new path composed of the link are added to the path set of the terminating node of the link, and therefore, the terminating node
  • the path set includes a large number of paths, resulting in a large amount of memory usage.
  • the path set of some nodes needs to be determined based on the path set of the terminating node, when the path set of the terminating node includes a large number of paths, when the path set of the node is determined based on the path set of the terminating node, The amount of calculation will be larger and the calculation time will be longer.
  • an embodiment of the present invention provides a data forwarding method and apparatus.
  • the technical solution is as follows:
  • a data forwarding method forwards service data between a source node and a sink node in the network based on a path set of nodes in the network, where the path set of the node includes There is a path from the source node to the node, wherein iteratively performing a path set determining step to determine a path set of nodes in the network:
  • the N shortest paths of the termination node of the path to the sink node, the N shortest paths are determined based on the N types of link attributes, and the N is a natural number not less than 1;
  • the N shortest paths are determined based on the N types of link attributes, that is, the N shortest paths are in one-to-one correspondence with the N types of link attributes, and each of the N shortest paths is the shortest.
  • the path is determined based on the corresponding link attribute.
  • a new path composed of the path and the link is added to the path set of the termination node according to the N shortest paths, the path, and the link, thereby ensuring that the added new path is backward.
  • At least one path extending to the sink node can satisfy the service requirement, and eliminates some useless paths that cannot meet the service requirements when continuing to the sink node, reducing the number of paths included in the path set of the terminating node, and reducing the memory.
  • the occupation, and thus the calculation amount when the path set of the other node is determined based on the path set of the termination node is reduced, and the calculation time is shortened.
  • the determining, by using the N shortest paths, the path, and the link, a new path that is configured to add the path and the link to the path set of the terminating node, includes:
  • the attribute value corresponding to the shortest path is an attribute value indicating the link attribute corresponding to the shortest path in the shortest path.
  • the path when the sum of the first attribute value, the second attribute value, and the third attribute value obtained for each link attribute calculation is not greater than a threshold of the link attribute, the path may be determined.
  • a new path consisting of the link continues to the path of the sink node, at least one path can satisfy the service requirement, so it can be determined that the new path composed of the link and the link is added to the path set of the terminating node of the link. in.
  • the specified path is better than the new path formed by the path and the link, so the termination is performed.
  • the path and the chain can be determined. A new path consisting of the road is added to the path set of the terminating node.
  • the iterative execution of the path set determining step includes:
  • the The converged path set is a set of paths that are included after the iteration and that are not identical to the path included after the last iteration.
  • the N types of link attributes include at least one of a cost, a delay, a delay jitter, and a packet loss rate.
  • the N types of link attributes are attributes with additivity, which means that the attribute value of one path is equal to the sum of the attribute values of each link included in the path.
  • a data forwarding device having a function of implementing the behavior of the data forwarding method in the first aspect described above.
  • the data forwarding device includes at least one module, and the at least one module is configured to implement the data forwarding method provided by the first aspect.
  • a data forwarding device in a third aspect, includes a processor and a memory, and the memory is configured to store a program that supports the data forwarding device to perform the data forwarding method provided by the first aspect, And storing data involved in implementing the data forwarding method provided by the first aspect above.
  • the processor is configured to execute a program stored in the memory.
  • the data forwarding device can also include a communication bus for establishing a connection between the processor and the memory.
  • a computer readable storage medium is provided, the instructions being stored in the computer readable storage medium, when executed on a computer, causing the computer to perform the data forwarding method of the first aspect described above.
  • a computer program product comprising instructions for causing a computer to perform the data forwarding method of the first aspect described above when executed on a computer is provided.
  • the technical solution provided by the embodiment of the present invention has the beneficial effects that after the iterative execution path set determining step obtains the path set of the nodes in the network, the source node in the network can be based on the path set of the nodes in the network.
  • the service data between the sink nodes is forwarded.
  • the path set determining step for each link in the network, the N shortest paths from the terminating node to the sink node of the link are first determined, and then determined according to the N shortest paths, the path, and the link.
  • Adding a new path composed of the path and the link to the path set of the terminating node thereby ensuring that at least one path in the path of the added new path to the neighboring node can meet the service requirement, and some After the continuation to the sink node, the useless path that cannot meet the service requirement is reduced, and the path set of the terminating node is reduced.
  • the number of paths reduces the memory usage, thereby reducing the amount of computation when determining the path set of other nodes based on the path set of the terminating node, and shortening the calculation time.
  • FIG. 1A is a schematic diagram of an SDN according to an embodiment of the present invention.
  • FIG. 1B is a schematic structural diagram of an SDN controller according to an embodiment of the present invention.
  • FIG. 2A is a flowchart of a data forwarding method according to an embodiment of the present invention.
  • 2B is a flowchart of a path set determining step according to an embodiment of the present invention.
  • FIG. 3A is a schematic structural diagram of a data forwarding device according to an embodiment of the present invention.
  • FIG. 3B is a schematic structural diagram of an adding module according to an embodiment of the present invention.
  • FIG. 1A is a schematic diagram of an SDN according to an embodiment of the present invention.
  • SDN has three basic characteristics compared with a traditional network: First, the control plane is separated from the forwarding plane: the forwarding plane is composed of controlled network devices, and the forwarding mode and service logic are controlled by an SDN controller on the control plane. . Second, an open interface is provided between the control plane and the forwarding plane: SDN provides an open programmable interface for the control plane. At this time, the SDN controller only needs to pay attention to its own logic, and does not need to pay attention to the implementation details of the underlying layer. Third, logical centralized control: The SDN controller can control multiple network devices, thus obtaining a global network topology and implementing optimal network control according to the network topology.
  • the service path calculation function can be implemented by the path calculation module in the SDN controller. After the path calculation module determines the service path, the SDN controller can send the service path to the network device, so that when the network device receives the service data, the service data can be forwarded according to the service path.
  • a node refers to a network device.
  • the path calculation module determines the service path, it may be determined by constraining a Constrained Bellman-Ford (CBF) algorithm.
  • CBF Constrained Bellman-Ford
  • the CBF algorithm may include the following steps (1)-(5).
  • step (2) may be performed by the path screening maintenance unit in the path calculation module.
  • step (5) can be performed by the service optimal path output unit in the path calculation module.
  • the path set determining step in the data forwarding method provided by the embodiment of the present invention may be applied to the CBF algorithm to improve the CBF algorithm, specifically, the foregoing step (2), that is, screening the path.
  • the path set determination operation in the maintenance unit is improved, and the improved CBF algorithm can be renamed to the CBF* algorithm.
  • the path set determining step in the data forwarding method provided by the embodiment of the present invention may be applied to other algorithms or service scenarios that have a path set determining requirement in an actual application, which is not limited by the embodiment of the present invention.
  • FIG. 1B is a schematic structural diagram of an SDN controller according to an embodiment of the present invention.
  • the SDN controller can be the SDN controller shown in Figure 1A.
  • the SDN controller includes at least one processor 101, a communication bus 102, a memory 103, and at least one communication interface 104.
  • the processor 101 can be a general purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more programs for controlling the execution of the program of the present invention. integrated circuit.
  • CPU central processing unit
  • ASIC application-specific integrated circuit
  • Communication bus 102 can include a path for communicating information between the components described above.
  • the memory 103 can be a read-only memory (ROM) or other type of static storage device that can store static information and instructions, a random access memory (RAM) or other type that can store information and instructions.
  • the dynamic storage device can also be an Electrically Erasable Programmable Read-Only Memory (EEPROM), a Compact Disc Read-Only Memory (CD-ROM) or other optical disc storage, and a disc storage device. (including compact discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or can be used to carry or store desired program code in the form of instructions or data structures and can be Any other medium accessed by the SDN controller, but is not limited thereto.
  • Memory 103 may be present independently and coupled to processor 101 via communication bus 102. The memory 103 can also be integrated with the processor 101.
  • the communication interface 104 uses a device such as any transceiver for communicating with other devices or communication networks, such as Ethernet, radio access network (RAN), Wireless Local Area Networks (WLAN), etc. .
  • a device such as any transceiver for communicating with other devices or communication networks, such as Ethernet, radio access network (RAN), Wireless Local Area Networks (WLAN), etc. .
  • RAN radio access network
  • WLAN Wireless Local Area Networks
  • processor 101 may include one or more CPUs, such as CPU0 and CPU1 shown in FIG. 1B.
  • the SDN controller can include multiple processors, such as processor 101 and processor 105 shown in FIG. 1B.
  • processors can be a single core processor (CPU) or a multi-core processor (multi-CPU).
  • a processor herein may refer to one or more devices, circuits, and/or processing cores for processing data.
  • the memory 103 is used to store program code 110 for executing the solution of the present invention, and the processor 101 is configured to execute the program code 110 stored in the memory 103.
  • the SDN controller can implement the data forwarding method provided by the embodiment of FIG. 2A below through the processor 101 and the program code 110 in the memory 103.
  • FIG. 2A is a flowchart of a data forwarding method according to an embodiment of the present invention, which is used in an SDN controller. Referring to Figure 2A, the method includes:
  • Step 201 Iteratively execute a path set determining step to determine a path set of nodes in the network.
  • the path set determining step may be performed iteratively until there is no unconverged path set in the path set of the nodes in the network, or the number of iterations is equal to the value obtained by subtracting 1 from the number of nodes in the network, and the convergence is not converged.
  • the path set is a set of paths that are included after the iteration and that are not identical to the path included after the last iteration.
  • the path set of the node includes a path from the source node in the network to the node.
  • the path may be composed of at least one link, and the link is a line in which two nodes directly communicate, that is, the link does not pass through other nodes.
  • the nodes in the network after the iteration can be performed.
  • the set of paths is the set of paths for the nodes in the network to be determined.
  • the path set determining step may include the following steps 2011-2012.
  • Step 2011 For each link in the network, obtain a path set of the start node of the link, and determine N shortest paths of the terminating node of the link to the sink node in the network, where N is not less than The natural number of 1.
  • the N shortest paths are determined based on the N types of link attributes, that is, the N shortest paths are in one-to-one correspondence with the N types of link attributes, and each of the N shortest paths is the shortest.
  • the path is determined based on the corresponding link attribute.
  • the N link attributes are attributes with additivity, where the attribute value of one path is equal to the sum of the attribute values of each link included in the path, and the attribute value is a value indicating the link attribute.
  • the N link attributes may include a cost, a delay, a delay jitter, a packet loss rate, and the like, and the cost may be a link length, a current load, or the like.
  • the link attribute is indicated in the shortest path corresponding to the link attribute.
  • the attribute value is the smallest.
  • the operation of determining the N shortest paths of the terminating node of the link to the sink node in the network may be: obtaining the terminating node to the sink node from the N shortest paths of each node in the network to the sink node N shortest paths.
  • the N shortest paths from the node to the sink node in each of the N shortest paths in the network may be determined to determine the shortest N of each node in the network to the sink node. path. Specifically, a network topology of the network and N attribute values of each link in the network may be obtained, each of the N attribute values indicating a link attribute; a network topology based on the network and the The N attribute values of each link in the network determine the N shortest paths from each node to the sink node in the network.
  • determining the operation of the N shortest paths from each node to the sink node in the network may be performed by the path in the SDN controller.
  • the shortest path tree calculation unit in the calculation module is executed.
  • the path attribute based on the network topology of the network and the N attribute values of each link in the network, when determining N shortest paths from each node to the sink node in the network, for each of the N link attributes
  • the path attribute based on the network topology, the attribute value indicating the link attribute in each link in the network is the weight of each link, and each node in the network is determined by the shortest path algorithm to the sink node.
  • the shortest path the determined shortest path corresponding to the link attribute.
  • the N types of link attributes include a cost and a delay
  • the cost of each link in the network may be based on the weight of each link in the network, and the network is determined by a shortest path algorithm.
  • the delay value of each link in the network is the weight of each link, and the shortest path algorithm is used.
  • the shortest path algorithm may be preset, for example, the shortest path algorithm may be a Dijkstra algorithm, a Bellman-Ford algorithm, or the like.
  • the attribute value indicating the link attribute in each link in the network is the weight of each link, and each node in the network is determined to the sink node by the shortest path algorithm.
  • the shortest path For the operation of the shortest path, reference may be made to the related art, which is not elaborated in the embodiment of the present invention.
  • Step 2012 for each path included in the path set of the starting node, determining, according to the N shortest paths, the path and the link, adding a new path composed of the path and the link to the path set of the terminating node in.
  • a new path composed of the path and the link For each path included in the path set of the starting node, according to the N shortest paths, the path, and the link, it may be determined whether a new path composed of the path and the link needs to be added to the path of the terminating node. In the set, when it is determined that a new path composed of the path and the link needs to be added to the path set of the terminating node, a new path composed of the path and the link is added to the path set of the terminating node. operating.
  • the path and the new path composed of the link are added to the path set of the terminating node.
  • the path and the new path composed of the link can satisfy the QoS constraint condition, the path of the new path continuing to the sink node may not satisfy the QoS constraint condition, and the path of the terminating node at this time is not satisfied.
  • the collection will include many useless paths, resulting in a larger number of paths included in the path set of the terminating node, which greatly increases the storage and computational complexity.
  • the N shortest paths from the terminating node to the sink node are first determined, and then the new path composed of the path and the link is added to the terminating according to the N shortest paths, the path, and the link.
  • the path set of the node ensures that at least one path in the path of the added new path to the neighbor node can satisfy the service requirement, and eliminates some useless paths that cannot meet the service requirement when continuing to the sink node, reducing
  • the number of paths included in the path set of the terminating node reduces the memory occupation, thereby reducing the calculation amount when determining the path set of other nodes based on the path set of the terminating node, and shortening the calculation time.
  • the new path composed of the path and the link may be added to the termination according to the N attribute values corresponding to the N shortest paths, the N attribute values of the path, and the N attribute values of the link.
  • the path set of the node may be added to the termination according to the N attribute values corresponding to the N shortest paths, the N attribute values of the path, and the N attribute values of the link.
  • the attribute value corresponding to the shortest path is an attribute value indicating the link attribute corresponding to the shortest path in the shortest path.
  • the operations in the path set can be implemented in the first mode or the second mode as follows.
  • the first method is: calculating, for each link attribute, a first attribute value of the path, a second attribute value of the link, and a third attribute value of the shortest path corresponding to the link attribute, and calculating the first attribute a sum of the value, the second attribute value, and the third attribute value; when the sum of the first attribute value, the second attribute value, and the third attribute value obtained for each link attribute calculation is not greater than a threshold of the link attribute When it is determined, a new path composed of the path and the link is added to the path set of the terminating node.
  • the first attribute value, the second attribute value, and the third attribute value obtained by calculating the link attribute are all indicated by the link attribute, and
  • the third attribute obtained by the link attribute calculation is the minimum value required by the terminating node to the sink node on the link attribute.
  • the first attribute value obtained for the cost attribute calculation is The generation value of the path
  • the second attribute value is the generation value of the link
  • the third attribute value is the generation value of the shortest path corresponding to the cost attribute in the N shortest paths.
  • the operation of determining whether the sum of the first attribute value, the second attribute value, and the third attribute value obtained for each link attribute calculation is not greater than a threshold of the link attribute may include the following steps A-D.
  • Step A determining whether the sum of the first attribute value, the second attribute value, and the third attribute value obtained by calculating the i-th link attribute in the N types of link attributes is not greater than a threshold of the i-th link attribute, i is not less than 1 and not more than N.
  • the threshold of the i-th link attribute may be set in advance, and the threshold of the i-th link attribute may be set according to the QoS constraint of the service in an actual application, which is not limited by the embodiment of the present invention.
  • the N link attributes may be constraint attributes. That is, at this time, as long as the N attribute values of a certain path are not greater than the respective thresholds, the path can be used as the service path. Then, the thresholds of the N types of link attributes can be set to a fixed value.
  • the target attribute exists in the N types of link attributes, and the link attribute except the target attribute may be the constraint attribute. That is, when the value of each constraint attribute of a path satisfies a respective threshold value, and the target attribute value of the path is the smallest target attribute value in the path set of the sink node, the path can be used as the service path.
  • the constraint attribute value indicates the constraint attribute
  • the target attribute value indicates the target attribute.
  • the threshold of the link attribute except the target attribute of the N types of link attributes may be set to a fixed value, and the threshold of the target attribute may be continuously updated based on the path set of the current sink node.
  • the path set of the current sink node may be acquired; when the path set of the current sink node is empty, the threshold of the target attribute is set to an infinite value ( ⁇ ) or a preset larger value; when the path set of the current sink node is When not empty, the target attribute value of each path included in the path set of the current sink node is obtained, and the minimum target attribute value among the acquired target attribute values is determined as the threshold of the target attribute.
  • step B when the sum of the first attribute value, the second attribute value, and the third attribute value obtained for the i-th link attribute calculation is not greater than the threshold of the i-th link attribute, the following step B may be continued. Go to step D to determine whether the sum of the first attribute value, the second attribute value, and the third attribute value obtained for each link attribute calculation is not greater than a threshold of the link attribute; and when for the i-th link.
  • the connection may be directly determined to be obtained for a certain link attribute of the N types of link attributes. The sum of the first attribute value, the second attribute value, and the third attribute value is greater than a threshold of the link attribute.
  • Step B When the sum of the first attribute value, the second attribute value, and the third attribute value obtained for the i-th link attribute is not greater than the threshold of the i-th link attribute, it is determined whether i and N are equal.
  • step C may be further performed to determine whether the sum of the first attribute value, the second attribute value, and the third attribute value obtained for each link attribute calculation is not A threshold greater than the link attribute; when i and N are equal, the following step E may be performed to determine whether the sum of the first attribute value, the second attribute value, and the third attribute value obtained for each link attribute calculation is None of them is greater than the threshold of the link attribute.
  • Step D When i is equal to N, it is determined that the sum of the first attribute value, the second attribute value, and the third attribute value obtained for each link attribute calculation is not greater than a threshold of the link attribute.
  • the second method is: calculating, for each link attribute, a first attribute value of the path, a second attribute value of the link, and a third attribute value of the shortest path corresponding to the link attribute, and calculating the first attribute a sum of the value, the second attribute value, and the third attribute value; when the sum of the first attribute value, the second attribute value, and the third attribute value obtained for each link attribute calculation is not greater than a threshold of the link attribute And if the specified path does not exist in the path set of the terminating node, it is determined that the path and the new path composed of the link are added to the path set of the terminating node.
  • the N attribute values of the specified path are respectively smaller than the N attribute values of the path and the new path composed by the link. That is, for each of the N link attributes, the attribute value indicating the link attribute in the specified path is smaller than the attribute value indicating the link attribute in the new path composed of the path and the link.
  • the specified path is better than the new path formed by the path and the link, so when the terminating node is If the specified path does not exist in the path set, it indicates that there is no better path in the path set of the terminating node than the new path formed by the link, so it can be determined that the path is composed of the link. A new path is added to the path set of the terminating node.
  • the sum of the first attribute value, the second attribute value, and the third attribute value obtained by calculating for each link attribute in the foregoing second manner is not greater than the link attribute.
  • the link is (u, v), the starting node of the link is node u, and the terminating node of the link is node v;
  • the N types of link attributes are cost and delay, and the N shortest paths are The shortest path z1 and the shortest path z2, and the shortest path z1 corresponds to the cost attribute, and the shortest path z2 corresponds to the delay attribute, that is, the generation value of the shortest path z1 is the minimum cost required for the node v to the sink node, and the shortest path z2
  • the delay value is the minimum delay required for the node v to the sink node;
  • the path is the path p in the path set PATH(u) of the node u.
  • the path set of the termination node does not exist.
  • cost(p) is the cost of the path p
  • cost(u,v) is the cost of the link (u,v)
  • cost(z1) is the value of the shortest path z1
  • C is the cost attribute.
  • Threshold value; delay(p) is the delay value of path p
  • delay(u,v) is the delay value of link (u,v)
  • delay(z2) is the delay value of the shortest path z2
  • D is time The threshold of the extended attribute.
  • p+(u,v) is not dominated by PATH(v) means that there is no path q ⁇ PATH(v) such that cost(q) ⁇ cost(p+(u,v)) and delay(q) ⁇ delay( p+(u,v)) is established at the same time.
  • cost(q) is the cost value of path q
  • cost(p+(u,v)) is the value of path p+(u,v)
  • delay(q) is the delay value of path q
  • delay(p+( u, v)) is the delay value of the path p+(u, v).
  • the N-type link attributes are used as a cost and the delay is taken as an example.
  • the above-mentioned dominant concept can also be conveniently extended to the N types of link attributes.
  • the situation at the time of the attribute. E.g, When the N link attributes are delay, cost, and delay jitter, p+(u,v) is not dominated by PATH(v), meaning that there is no path q ⁇ PATH(v) to make cost (q) ⁇ cost(p+(u,v)), delay(q) ⁇ delay(p+(u,v)) and delay jitter(q) ⁇ delay jitter(p+(u,v)) are simultaneously established.
  • the delay jitter (q) is the delay jitter value of the path q
  • the delay jitter (p+(u, v)) is the delay jitter value of the path p+(u, v).
  • Step 202 Forward service data between the source node and the sink node in the network based on the path set of the nodes in the network.
  • the path set of the sink node may be obtained from the path set of the node in the network; the service path is determined from the path included in the path set of the sink node; the service path is sent to the node in the network,
  • the nodes in the network can forward the service data between the source node and the sink node according to the service path.
  • the operation of forwarding the service data between the source node and the sink node in the network may also refer to related technologies, which is not described in detail in the embodiments of the present invention.
  • the service data between the source node and the sink node in the network may be performed based on the path set of the nodes in the network. Forward.
  • the path set determining step for each link in the network, the N shortest paths from the terminating node to the sink node of the link are first determined, and then determined according to the N shortest paths, the path, and the link.
  • Adding a new path composed of the path and the link to the path set of the terminating node thereby ensuring that at least one path in the path of the added new path to the neighboring node can meet the service requirement, and some After the continuation to the sink node, the useless path that cannot meet the service requirement is reduced, the number of paths included in the path set of the terminating node is reduced, the memory occupation is reduced, and the subsequent path set based on the terminating node is determined to determine the path set of other nodes.
  • the amount of calculation reduces the calculation time.
  • FIG. 3A is a schematic structural diagram of a data forwarding device according to an embodiment of the present invention.
  • the data forwarding device may be implemented as part or all of an SDN controller by software, hardware, or a combination of the two.
  • the SDN controller may be FIG. 1B.
  • the device forwards the service data between the source node and the sink node in the network based on the path set of the nodes in the network, and the path set of the node includes the path from the active node to the node.
  • the device iteratively triggers the following determination module 301 and the addition module 302 to determine a path set of nodes in the network:
  • a determining module 301 configured to perform step 2011 in the embodiment of FIG. 2A;
  • the adding module 302 is configured to perform step 2012 in the embodiment of FIG. 2A.
  • the adding module 302 includes an adding unit 3021.
  • the adding unit 3021 is configured to determine, according to the N attribute values corresponding to the N shortest paths, the N attribute values of the path, and the N attribute values of the link, to add a new path composed of the path and the link to the path set of the terminating node. in.
  • the adding unit 3021 is configured to perform the first mode or the second mode in step 2012 in the embodiment of FIG. 2A.
  • the device is further configured to:
  • the iterative trigger determination module 301 and the adding module 302 until there is no unconverged path set in the path set of the nodes in the network, or the number of iterations is equal to the value obtained by subtracting 1 from the number of nodes in the network, and the unconverged path set is The path included after this iteration is not the same set of paths as the path included after the last iteration.
  • the N link attributes include at least one of a cost, a delay, a delay jitter, and a packet loss rate.
  • the iterative execution path set determining step obtains the path set of the nodes in the network
  • the service data between the source node and the sink node in the network is forwarded based on the path set of the nodes in the network.
  • the path set determining step for each link in the network, the N shortest paths from the terminating node to the sink node of the link are first determined, and then determined according to the N shortest paths, the path, and the link.
  • Adding a new path composed of the path and the link to the path set of the terminating node thereby ensuring that at least one path in the path of the added new path to the neighboring node can meet the service requirement, and some After the continuation to the sink node, the useless path that cannot meet the service requirement is reduced, the number of paths included in the path set of the terminating node is reduced, the memory occupation is reduced, and the subsequent path set based on the terminating node is determined to determine the path set of other nodes.
  • the amount of calculation reduces the calculation time.
  • the computer program product includes one or more computer instructions.
  • the computer can be a general purpose computer, a special purpose computer, a computer network, or other programmable device.
  • the computer instructions can be stored in a computer readable storage medium or transferred from one computer readable storage medium to another computer readable storage medium, for example, the computer instructions can be from a website site, computer, server or data center Transfer to another website site, computer, server, or data center by wire (eg, coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (eg, infrared, wireless, microwave, etc.).
  • the computer readable storage medium can be any available media that can be accessed by a computer or a data storage device such as a server, data center, or the like that includes one or more available media.
  • the usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a digital versatile disc (DVD)), or a semiconductor medium (for example, a solid state disk (SSD)). )Wait.
  • a magnetic medium for example, a floppy disk, a hard disk, a magnetic tape
  • an optical medium for example, a digital versatile disc (DVD)
  • DVD digital versatile disc
  • SSD solid state disk

Landscapes

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

Abstract

本发明实施例公开了一种数据转发方法及装置,属于通信技术领域。所述方法基于网络中的节点的路径集合,对网络中的源节点与宿节点之间的业务数据进行转发,其中,迭代执行如下路径集合确定步骤以确定网络中的节点的路径集合:对于网络中的每条链路,获取所述链路的起始节点的路径集合,以及确定所述链路的终止节点到宿节点的N条最短路径;对于所述起始节点的路径集合包括的每条路径,根据所述N条最短路径、所述路径和所述链路确定将所述路径与所述链路组成的新路径添加到所述终止节点的路径集合中。本发明实施例在进行路径添加时,排除了一些往后延续到宿节点时不能满足业务要求的无用路径,从而减少了该终止节点的路径集合包括的路径数量。

Description

数据转发方法及装置
本申请要求于2017年01月25日提交中国专利局、申请号为201710056635.7、发明名称为“数据转发方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明实施例涉及通信技术领域,特别涉及一种数据转发方法及装置。
背景技术
随着通信技术的发展,软件定义网络(Software Defined Networking,SDN)作为一种新型网络架构,受到越来越多的重视。SDN的核心思想是将网络的控制平面与转发平面进行分离,控制平面上的SDN控制器可以统一控制转发平面上某一网络中数据的转发,以实现网络流量的灵活调配。其中,SDN控制器在控制某一网络中数据的转发时,可以先确定该网络中的节点的路径集合,再基于该网络中的节点的路径集合,对该网络中的源节点与宿节点之间的业务数据进行转发。其中,某个节点的路径集合包括有源节点到该节点的路径,源节点是指充当信源发送业务数据的节点,宿节点是指充当信宿接收业务数据的节点。
目前,可以迭代执行路径集合确定步骤来确定网络中的节点的路径集合,该路径集合确定步骤为:对于网络中的每条链路,确定该链路的起始节点的路径集合;对于该起始节点的路径集合包括的每条路径,当该路径与该链路组成的新路径满足服务质量(Quality of Service,QoS)约束条件时,将该路径与该链路组成的新路径添加到该链路的终止节点的路径集合中。其中,QoS约束条件是指能够保证该路径与该链路组成的新路径满足业务的服务质量要求的条件。
由于当该路径与该链路组成的新路径满足QoS约束条件时,即会将该路径与该链路组成的新路径添加到该链路的终止节点的路径集合中,因此,该终止节点的路径集合包括的路径数量较多,从而导致大量的内存占用。另外,由于某些节点的路径集合需要基于该终止节点的路径集合确定,因此,当该终止节点的路径集合包括的路径数量较多时,基于该终止节点的路径集合确定这些节点的路径集合时的计算量将较大,计算时间较长。
发明内容
为了解决相关技术的问题,本发明实施例提供了一种数据转发方法及装置。所述技术方案如下:
第一方面,提供了一种数据转发方法,所述方法基于网络中的节点的路径集合,对所述网络中的源节点与宿节点之间的业务数据进行转发,所述节点的路径集合包括有所述源节点到所述节点的路径,其中,迭代执行如下路径集合确定步骤以确定所述网络中的节点的路径集合:
对于所述网络中的每条链路,获取所述链路的起始节点的路径集合,以及确定所述链 路的终止节点到所述宿节点的N条最短路径,所述N条最短路径基于N种链路属性一一确定得到,所述N为不小于1的自然数;
对于所述起始节点的路径集合包括的每条路径,根据所述N条最短路径、所述路径和所述链路确定将所述路径与所述链路组成的新路径添加到所述终止节点的路径集合中。
需要说明的是,N条最短路径基于N种链路属性一一确定得到,也即是,该N条最短路径与该N种链路属性一一对应,该N条最短路径中的每条最短路径基于对应的链路属性确定得到。
在本发明实施例中,根据N条最短路径、该路径和该链路确定将该路径与该链路组成的新路径添加到该终止节点的路径集合中,从而保证了添加的新路径往后延续到宿节点的路径中至少存在一条路径能够满足业务要求,排除了一些往后延续到宿节点时不能满足业务要求的无用路径,减少了该终止节点的路径集合包括的路径数量,减少了内存占用,进而减少了后续基于该终止节点的路径集合确定其它节点的路径集合时的计算量,缩短了计算时间。
其中,所述根据所述N条最短路径、所述路径和所述链路确定将所述路径与所述链路组成的新路径添加到所述终止节点的路径集合中,包括:
根据所述N条最短路径分别对应的N种属性值、所述路径的N种属性值和所述链路的N种属性值确定将所述路径与所述链路组成的新路径添加到所述终止节点的路径集合中。
需要说明的是,对于该N条最短路径中的每条最短路径,该最短路径对应的属性值即为该最短路径中指示该最短路径对应的链路属性的属性值。
其中,所述根据所述N条最短路径分别对应的N种属性值、所述路径的N种属性值和所述链路的N种属性值确定将所述路径与所述链路组成的新路径添加到所述终止节点的路径集合中,包括:
针对每一种链路属性,计算所述路径的第一属性值、所述链路的第二属性值和所述链路属性对应的最短路径的第三属性值,以及计算所述第一属性值、所述第二属性值与所述第三属性值之和;
当针对每一种链路属性计算获得的所述第一属性值、所述第二属性值与所述第三属性值之和均不大于所述链路属性的阈值时,确定将所述路径和所述链路组成的新路径添加到所述终止节点的路径集合中。
在本发明实施例中,当针对每一种链路属性计算获得的第一属性值、第二属性值与第三属性值之和均不大于该链路属性的阈值时,可以确定该路径与该链路组成的新路径往后延续到宿节点的路径中至少存在一条路径能够满足业务要求,因此可以确定将该路径与该链路组成的新路径添加到该链路的终止节点的路径集合中。
其中,所述根据所述N条最短路径分别对应的N种属性值、所述路径的N种属性值和所述链路的N种属性值确定将所述路径与所述链路组成的新路径添加到所述终止节点的路径集合中,包括:
针对每一种链路属性,计算所述路径的第一属性值、所述链路的第二属性值和所述链路属性对应的最短路径的第三属性值,以及计算所述第一属性值、所述第二属性值与所述第三属性值之和;
当针对每一种链路属性计算获得的所述第一属性值、所述第二属性值与所述第三属性 值之和均不大于所述链路属性的阈值,且所述终止节点的路径集合中不存在指定路径时,确定将所述路径和所述链路组成的新路径添加到所述终止节点的路径集合中,所述指定路径的N种属性值分别小于所述路径与所述链路组成的新路径的N种属性值。
由于指定路径所需的综合资源比该路径与该链路组成的新路径所需的综合资源少,也即是指定路径比该路径与该链路组成的新路径更为优质,所以当该终止节点的路径集合中不存在指定路径时,即是表明该终止节点的路径集合中不存在比该路径与该链路组成的新路径更为优质的路径,因此,可以确定将该路径与该链路组成的新路径添加到该终止节点的路径集合中。
其中,所述迭代执行所述路径集合确定步骤,包括:
迭代执行所述路径集合确定步骤,直至所述网络中的节点的路径集合中不存在未收敛的路径集合,或者迭代次数等于所述网络中的节点个数减1所得的数值为止,所述未收敛的路径集合为本次迭代后包括的路径与上次迭代后包括的路径不全相同的路径集合。
需要说明的是,所述N种链路属性包括代价、时延、时延抖动和丢包率中的至少一种。另外,N种链路属性为具有可加性的属性,该可加性是指一条路径的属性值等于该路径包括的每条链路的属性值之和。
第二方面,提供了一种数据转发装置,所述数据转发装置具有实现上述第一方面中数据转发方法行为的功能。所述数据转发装置包括至少一个模块,所述至少一个模块用于实现上述第一方面所提供的数据转发方法。
第三方面,提供了一种数据转发装置,所述数据转发装置的结构中包括处理器和存储器,所述存储器用于存储支持数据转发装置执行上述第一方面所提供的数据转发方法的程序,以及存储用于实现上述第一方面所提供的数据转发方法所涉及的数据。所述处理器被配置为用于执行所述存储器中存储的程序。所述数据转发装置还可以包括通信总线,所述通信总线用于在所述处理器与所述存储器之间建立连接。
上述第二方面和第三方面所获得的技术效果与上述第一方面中对应的技术手段获得的技术效果近似,在这里不再赘述。
第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面所述的数据转发方法。
第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的数据转发方法。
本发明实施例提供的技术方案带来的有益效果是:迭代执行路径集合确定步骤得到网络中的节点的路径集合后,可以基于该网络中的节点的路径集合,对该网络中的源节点与宿节点之间的业务数据进行转发。在路径集合确定步骤中,对于该网络中的每条链路,会先确定该链路的终止节点到宿节点的N条最短路径,再根据该N条最短路径、该路径和该链路确定将该路径与该链路组成的新路径添加到该终止节点的路径集合中,从而保证了添加的新路径往后延续到宿节点的路径中至少存在一条路径能够满足业务要求,排除了一些往后延续到宿节点时不能满足业务要求的无用路径,减少了该终止节点的路径集合包括的 路径数量,减少了内存占用,进而减少了后续基于该终止节点的路径集合确定其它节点的路径集合时的计算量,缩短了计算时间。
附图说明
图1A是本发明实施例提供的一种SDN的示意图;
图1B是本发明实施例提供的一种SDN控制器的结构示意图;
图2A是本发明实施例提供的一种数据转发方法的流程图;
图2B是本发明实施例提供的一种路径集合确定步骤的流程图;
图3A是本发明实施例提供的一种数据转发装置的结构示意图;
图3B是本发明实施例提供的一种添加模块的结构示意图。
具体实施方式
在对本发明实施例进行详细地解释说明之前,先对本发明实施例的应用场景予以说明。图1A是本发明实施例提供的一种SDN的示意图。参见图1A,SDN与传统网络相比具有三个基本特征:第一、控制平面与转发平面分离:转发平面由受控的网络设备组成,转发方式以及业务逻辑由控制平面上的SDN控制器控制。第二、控制平面与转发平面之间设置有开放接口:SDN为控制平面提供开放可编程接口,此时SDN控制器只需关注自身逻辑,而不需关注底层的实现细节。第三、逻辑上的集中控制:SDN控制器可以控制多个网络设备,因而可以获得全局的网络拓扑,并根据该网络拓扑实现对网络的优化控制。
SDN的控制平面中最基本的一个功能是业务路径计算功能,且该业务路径计算功能可以通过SDN控制器中的路径计算模块实现。该路径计算模块确定业务路径后,SDN控制器可以将该业务路径下发给网络设备,以使网络设备在接收到业务数据时,可以按照该业务路径来对该业务数据进行转发。需要说明的是,在本发明实施例中,节点即是指网络设备。
相关技术中,该路径计算模块确定业务路径时,可以通过约束贝尔曼-福特(Constrained Bellman-Ford,CBF)算法来确定,具体地,该CBF算法可以包括如下步骤(1)-(5)。
(1)、将网络中的每个节点的路径集合PATH初始化为0,并令k=1,k为迭代次数。
(2)、对于该网络中的每条链路(u,v),当(u,v)的起始节点u的路径集合PATH(u)包括的路径p与(u,v)组成的新路径p+(u,v)满足QoS约束条件时,将新路径p+(u,v)添加到(u,v)的终止节点v的路径集合PATH(v)中。
(3)、判断该网络中的节点的路径集合中是否存在未收敛的路径集合,或者判断k是否等于该网络中的节点个数减1所得的数值,未收敛的路径集合为本次迭代后包括的路径与上次迭代后包括的路径不全相同的路径集合。
(4)、当该网络中的节点的路径集合中存在未收敛的路径集合,或者k不等于该网络中的节点个数减1所得的数值时,令k=k+1,返回步骤(2),直至该网络中的节点的路径集合中不存在未收敛的路径集合,或者k等于该网络中的节点个数减1所得的数值为止。
(5)、当该网络中的节点的路径集合中不存在未收敛的路径集合,或者k等于该网络中的节点个数减1所得的数值时,获取该网络中的宿节点的路径集合,从宿节点的路径集合中选择一条最优路径作为业务路径。
需要说明的是,上述步骤(2)可以由该路径计算模块中的路径筛选维护单元来执行, 上述步骤(5)可以由该路径计算模块中的业务最优路径输出单元来执行。
需要说明的是,本发明实施例提供的数据转发方法中的路径集合确定步骤可以应用于上述CBF算法中以对该CBF算法进行改进,具体地可以对上述步骤(2),即对上述路径筛选维护单元中的路径集合确定操作进行改进,改进后的CBF算法可以被重新命名为CBF*算法。当然,本发明实施例提供的数据转发方法中的路径集合确定步骤在实际应用中也可以应用于其它有路径集合确定需求的算法或者业务场景中,本发明实施例对此不作限定。
图1B是本发明实施例提供的一种SDN控制器的结构示意图。该SDN控制器可以是图1A中所示的SDN控制器。参见图1B,该SDN控制器包括至少一个处理器101,通信总线102,存储器103以及至少一个通信接口104。
处理器101可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本发明方案程序执行的集成电路。
通信总线102可包括一通路,在上述组件之间传送信息。
存储器103可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,随机存取存储器(random access memory,RAM)或可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由该SDN控制器存取的任何其它介质,但不限于此。存储器103可以是独立存在,通过通信总线102与处理器101相连接。存储器103也可以和处理器101集成在一起。
通信接口104,使用任何收发器一类的装置,用于与其它设备或通信网络通信,如以太网,无线接入网(radio access network,RAN),无线局域网(Wireless Local Area Networks,WLAN)等。
在具体实现中,作为一种实施例,处理器101可以包括一个或多个CPU,例如图1B中所示的CPU0和CPU1。
在具体实现中,作为一种实施例,该SDN控制器可以包括多个处理器,例如图1B中所示的处理器101和处理器105。这些处理器中的每一个可以是一个单核处理器(single-CPU),也可以是一个多核处理器(multi-CPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据的处理核。
其中,存储器103用于存储执行本发明方案的程序代码110,处理器101用于执行存储器103中存储的程序代码110。该SDN控制器可以通过处理器101以及存储器103中的程序代码110,来实现下文图2A实施例提供的数据转发方法。
图2A是本发明实施例提供的一种数据转发方法流程图,该方法用于SDN控制器中。参见图2A,该方法包括:
步骤201:迭代执行路径集合确定步骤以确定网络中的节点的路径集合。
具体地,可以迭代执行路径集合确定步骤,直至该网络中的节点的路径集合中不存在未收敛的路径集合,或者迭代次数等于该网络中的节点个数减1所得的数值为止,未收敛的路径集合为本次迭代后包括的路径与上次迭代后包括的路径不全相同的路径集合。
需要说明的是,对于该网络中的每个节点,该节点的路径集合包括有该网络中的源节点到该节点的路径。
另外,路径可以由至少一条链路组成,链路为某两个节点直接进行通信的线路,即链路不经过其它节点。
再者,当该网络中的节点的路径集合中不存在未收敛的路径集合,或者迭代次数等于该网络中的节点个数减1所得的数值时,可以将本次迭代后该网络中的节点的路径集合作为所要确定的该网络中的节点的路径集合。
其中,参见图2B,路径集合确定步骤可以包括如下步骤2011-2012。
步骤2011:对于该网络中的每条链路,获取该链路的起始节点的路径集合,以及确定该链路的终止节点到该网络中的宿节点的N条最短路径,N为不小于1的自然数。
需要说明的是,N条最短路径基于N种链路属性一一确定得到,也即是,该N条最短路径与该N种链路属性一一对应,该N条最短路径中的每条最短路径基于对应的链路属性确定得到。
另外,N种链路属性为具有可加性的属性,该可加性是指一条路径的属性值等于该路径包括的每条链路的属性值之和,属性值为指示链路属性的数值。例如,该N种链路属性可以包括代价(cost)、时延(delay)、时延抖动、丢包率等,代价可以为链路长度、当前负载等。
再者,对于N种链路属性中的每种链路属性,在该链路的终止节点到该网络中的宿节点的所有路径中,该链路属性对应的最短路径中指示该链路属性的属性值最小。
其中,确定该链路的终止节点到该网络中的宿节点的N条最短路径的操作可以为:从该网络中每个节点到宿节点的N条最短路径中,获取该终止节点到宿节点的N条最短路径。
进一步地,从该网络中每个节点到宿节点的N条最短路径中,获取该终止节点到宿节点的N条最短路径之前,还可以确定该网络中每个节点到宿节点的N条最短路径。具体地,可以获取该网络的网络拓扑和该网络中每条链路的N种属性值,该N种属性值中的每种属性值指示一种链路属性;基于该网络的网络拓扑和该网络中每条链路的N种属性值,确定该网络中每个节点到宿节点的N条最短路径。
需要说明的是,基于该网络的网络拓扑和该网络中每条链路的N种属性值,确定该网络中每个节点到宿节点的N条最短路径的操作可以由SDN控制器中的路径计算模块中的最短路径树计算单元来执行。
其中,基于该网络的网络拓扑和该网络中每条链路的N种属性值,确定该网络中每个节点到宿节点的N条最短路径时,对于N种链路属性中的每种链路属性,基于该网络拓扑,以该网络中的每条链路中指示该链路属性的属性值为该每条链路的权值,通过最短路径算法确定该网络中每个节点到宿节点的最短路径,该确定的最短路径与该链路属性对应。
例如,该N种链路属性包括代价和时延,则可以基于该网络拓扑,以该网络中的每条链路的代价值为该每条链路的权值,通过最短路径算法确定该网络中的每个节点到宿节点的最短路径。以该网络中的每条链路的时延值为该每条链路的权值,通过最短路径算法确 定该网络中的每个节点到宿节点的最短路径。
需要说明的是,最短路径算法可以预先设置,如最短路径算法可以为狄克斯特拉(Dijkstra)算法、贝尔曼-福特(Bellman-Ford)算法等。
另外,基于该网络拓扑,以该网络中的每条链路中指示该链路属性的属性值为该每条链路的权值,通过最短路径算法确定该网络中的每个节点到宿节点的最短路径的操作可以参考相关技术,本发明实施例对此不进行详细阐述。
步骤2012:对于该起始节点的路径集合包括的每条路径,根据该N条最短路径、该路径和该链路确定将该路径与该链路组成的新路径添加到该终止节点的路径集合中。
对于该起始节点的路径集合包括的每条路径,可以根据该N条最短路径、该路径和该链路,判断是否需要将该路径与该链路组成的新路径添加到该终止节点的路径集合中,当确定需要将该路径与该链路组成的新路径添加到该终止节点的路径集合中时,执行将该路径与该链路组成的新路径添加到该终止节点的路径集合中的操作。
需要说明的是,相关技术中只要该路径与该链路组成的新路径满足QoS约束条件,则会将该路径与该链路组成的新路径添加到该终止节点的路径集合中。然而,实际应用中,即使该路径与该链路组成的新路径能够满足QoS约束条件,该新路径往后延续到宿节点的路径也不一定能够满足QoS约束条件,此时该终止节点的路径集合中将会包括很多无用路径,从而导致该终止节点的路径集合包括的路径数量较多,大大增大了存储和计算复杂度。
而本发明实施例中先确定该终止节点到宿节点的N条最短路径,再根据该N条最短路径、该路径和该链路确定将该路径与该链路组成的新路径添加到该终止节点的路径集合中,从而保证了添加的新路径往后延续到宿节点的路径中至少存在一条路径能够满足业务要求,排除了一些往后延续到宿节点时不能满足业务要求的无用路径,减少了该终止节点的路径集合包括的路径数量,减少了内存占用,进而减少了后续基于该终止节点的路径集合确定其它节点的路径集合时的计算量,缩短了计算时间。
具体地,可以根据该N条最短路径分别对应的N种属性值、该路径的N种属性值和该链路的N种属性值确定将该路径与该链路组成的新路径添加到该终止节点的路径集合中。
需要说明的是,对于该N条最短路径中的每条最短路径,该最短路径对应的属性值即为该最短路径中指示该最短路径对应的链路属性的属性值。
其中,根据该N条最短路径分别对应的N种属性值、该路径的N种属性值和该链路的N种属性值确定将该路径与该链路组成的新路径添加到该终止节点的路径集合中的操作可以通过如下第一种方式或第二种方式实现。
第一种方式:针对每一种链路属性,计算该路径的第一属性值、该链路的第二属性值和该链路属性对应的最短路径的第三属性值,以及计算第一属性值、第二属性值与第三属性值之和;当针对每一种链路属性计算获得的第一属性值、第二属性值与第三属性值之和均不大于该链路属性的阈值时,确定将该路径和该链路组成的新路径添加到该终止节点的路径集合中。
需要说明的是,对于N种链路属性中的每种链路属性,针对该链路属性计算获得的第一属性值、第二属性值和第三属性值均指示该链路属性,且针对该链路属性计算获得的第三属性值为该终止节点到宿节点在该链路属性上所需的最小数值。
例如,该N种链路属性包括代价和时延,则针对代价属性计算获得的第一属性值为该 路径的代价值,第二属性值为该链路的代价值,第三属性值为该N条最短路径中代价属性对应的最短路径的代价值。针对时延属性计算获得的第一属性值该路径的时延值,第二属性值为该链路的时延值,第三属性值为该N条最短路径中时延属性对应的最短路径的时延值。
其中,判断针对每一种链路属性计算获得的第一属性值、第二属性值与第三属性值之和是否均不大于该链路属性的阈值的操作可以包括如下步骤A-D。
步骤A:判断针对该N种链路属性中的第i种链路属性计算获得的第一属性值、第二属性值与第三属性值之和是否不大于第i种链路属性的阈值,i不小于1且不大于N。
需要说明的是,第i种链路属性的阈值可以预先设置,且实际应用中,第i种链路属性的阈值可以根据业务的QoS约束来设置,本发明实施例对此不作限定。
另外,当后续是在宿节点的路径集合中任选一条路径作为业务路径时,该N种链路属性均可以为约束属性。也即是,此时只要某条路径的N种属性值均不大于各自的阈值,即可将该路径作为业务路径。则此时该N种链路属性的阈值均可以设置为固定值。
而当后续是将宿节点的路径集合中的最优路径作为业务路径时,该N种链路属性中存在目标属性,除目标属性之外的链路属性均可以为约束属性。也即是,此时当某条路径的各个约束属性值满足各自的阈值,且该路径的目标属性值为宿节点的路径集合中最小的目标属性值时,即可将该路径作为业务路径,约束属性值指示约束属性,目标属性值指示目标属性。则此时该N种链路属性中除目标属性之外的链路属性的阈值均可以设置为固定值,而目标属性的阈值可以基于当前宿节点的路径集合来不断更新。具体地,可以获取当前宿节点的路径集合;当当前宿节点的路径集合为空时,将目标属性的阈值设置为无穷值(∞)或预设的较大值;当当前宿节点的路径集合不为空时,获取当前宿节点的路径集合包括的每条路径的目标属性值,将获取的目标属性值中最小的目标属性值确定为目标属性的阈值。
需要说明的是,当针对第i种链路属性计算获得的第一属性值、第二属性值与第三属性值之和不大于第i种链路属性的阈值时,可以继续执行如下步骤B至步骤D来判断针对每一种链路属性计算获得的第一属性值、第二属性值与第三属性值之和是否均不大于该链路属性的阈值;而当针对第i种链路属性计算获得的第一属性值、第二属性值与第三属性值之和大于第i种链路属性的阈值时,可以直接确定针对该N种链路属性中的某种链路属性计算获得的第一属性值、第二属性值与第三属性值之和大于该链路属性的阈值。
步骤B:当针对第i种链路属性计算获得的第一属性值、第二属性值与第三属性值之和不大于第i种链路属性的阈值时,判断i与N是否相等。
需要说明的是,当i与N不相等时,可以继续执行如下步骤C来判断针对每一种链路属性计算获得的第一属性值、第二属性值与第三属性值之和是否均不大于该链路属性的阈值;当i与N相等时,可以继续执行如下步骤E来判断针对每一种链路属性计算获得的第一属性值、第二属性值与第三属性值之和是否均不大于该链路属性的阈值。
步骤C:当i与N不相等时,令i=i+1,返回步骤A,直至i与N相等为止。
由于当i与N不相等时,表明针对该N种链路属性中的i种链路属性计算获得的第一属性值、第二属性值与第三属性值之和均不大于各自的阈值,因此,此时需要令i=i+1,并返回步骤A,以继续判断针对该N种链路属性中的第i+1种链路属性计算获得的第一属性值、第二属性值与第三属性值之和是否不大于第i+1种链路属性的阈值。
步骤D:当i与N相等时,确定针对每一种链路属性计算获得的第一属性值、第二属性值与第三属性值之和均不大于该链路属性的阈值。
第二种方式:针对每一种链路属性,计算该路径的第一属性值、该链路的第二属性值和该链路属性对应的最短路径的第三属性值,以及计算第一属性值、第二属性值与第三属性值之和;当针对每一种链路属性计算获得的第一属性值、第二属性值与第三属性值之和均不大于该链路属性的阈值,且该终止节点的路径集合中不存在指定路径时,确定将该路径和该链路组成的新路径添加到该终止节点的路径集合中。
需要说明的是,指定路径的N种属性值分别小于该路径与该链路组成的新路径的N种属性值。也即是,对于N种链路属性中的每种链路属性,指定路径中指示该链路属性的属性值小于该路径与该链路组成的新路径中指示该链路属性的属性值。
由于指定路径所需的综合资源比该路径与该链路组成的新路径所需的综合资源少,指定路径比该路径与该链路组成的新路径更为优质,因此,当该终止节点的路径集合中不存在指定路径时,表明该终止节点的路径集合中不存在比该路径与该链路组成的新路径更为优质的路径,所以此时可以确定将该路径与该链路组成的新路径添加到该终止节点的路径集合中。
进一步地,结合具体的实例来对上述第二种方式中当针对每一种链路属性计算获得的第一属性值、第二属性值与第三属性值之和均不大于该链路属性的阈值,且该终止节点的路径集合中不存在指定路径时,确定将该路径和该链路组成的新路径添加到该终止节点的路径集合中的操作进行说明。其中,该链路为(u,v),该链路的起始节点为节点u,该链路的终止节点为节点v;N种链路属性为代价和时延,该N条最短路径为最短路径z1和最短路径z2,且最短路径z1对应代价属性,最短路径z2对应时延属性,也即是,最短路径z1的代价值即为节点v到宿节点所需的最小代价,最短路径z2的时延值即为节点v到宿节点所需的最小时延;该路径为节点u的路径集合PATH(u)中的路径p。
此时,当针对每一种链路属性计算获得的第一属性值、第二属性值与第三属性值之和均不大于该链路属性的阈值,且该终止节点的路径集合中不存在指定路径时,确定将该路径和该链路组成的新路径添加到该终止节点的路径集合中,也即是,当“cost(p)+cost(u,v)+cost(z1)≤C且delay(p)+delay(u,v)+delay(z2)≤D且p+(u,v)不被PATH(v)中包括的路径占优”成立时,确定将路径p和链路(u,v)组成的新路径p+(u,v)添加到节点v的路径集合PATH(v)中。
需要说明的是,cost(p)为路径p的代价值,cost(u,v)为链路(u,v)的代价值,cost(z1)为最短路径z1的代价值,C为代价属性的阈值;delay(p)为路径p的时延值,delay(u,v)为链路(u,v)的时延值,delay(z2)为最短路径z2的时延值,D为时延属性的阈值。
另外,p+(u,v)不被PATH(v)占优是指不存在路径q∈PATH(v)使得cost(q)<cost(p+(u,v))与delay(q)<delay(p+(u,v))同时成立。其中,cost(q)为路径q的代价值,cost(p+(u,v))为路径p+(u,v)的代价值,delay(q)为路径q的时延值,delay(p+(u,v))为路径p+(u,v)的时延值。
再者,上述说明占优概念时,仅以该N种链路属性为代价和时延为例进行说明,实际应用中,上述占优概念也可以方便地推广到该N种链路属性为其它属性时的情况。例如, 当该N种链路属性为时延、代价和时延抖动(delay jitter)时,p+(u,v)不被PATH(v)占优即是指不存在路径q∈PATH(v)使得cost(q)<cost(p+(u,v))、delay(q)<delay(p+(u,v))与delay jitter(q)<delay jitter(p+(u,v))同时成立。其中,delay jitter(q)为路径q的时延抖动值,delay jitter(p+(u,v))为路径p+(u,v)的时延抖动值。
步骤202:基于该网络中的节点的路径集合,对该网络中的源节点与宿节点之间的业务数据进行转发。
具体地,可以从该网络中的节点的路径集合中,获取宿节点的路径集合;从宿节点的路径集合包括的路径中确定业务路径;将该业务路径下发给该网络中的节点,以使该网络中的节点可以按照该业务路径来对源节点与宿节点之间的业务数据进行转发。
另外,基于该网络中的节点的路径集合,对该网络中的源节点与宿节点之间的业务数据进行转发的操作还可以参考相关技术,本发明实施例对此不再进行详细阐述。
在本发明实施例中,迭代执行路径集合确定步骤得到网络中的节点的路径集合后,可以基于该网络中的节点的路径集合,对该网络中的源节点与宿节点之间的业务数据进行转发。在路径集合确定步骤中,对于该网络中的每条链路,会先确定该链路的终止节点到宿节点的N条最短路径,再根据该N条最短路径、该路径和该链路确定将该路径与该链路组成的新路径添加到该终止节点的路径集合中,从而保证了添加的新路径往后延续到宿节点的路径中至少存在一条路径能够满足业务要求,排除了一些往后延续到宿节点时不能满足业务要求的无用路径,减少了该终止节点的路径集合包括的路径数量,减少了内存占用,进而减少了后续基于该终止节点的路径集合确定其它节点的路径集合时的计算量,缩短了计算时间。
图3A是本发明实施例提供的一种数据转发装置的结构示意图,该数据转发装置可以由软件、硬件或者两者的结合实现成为SDN控制器的部分或者全部,该SDN控制器可以为图1B所示的SDN控制器。该装置基于网络中的节点的路径集合,对网络中的源节点与宿节点之间的业务数据进行转发,节点的路径集合包括有源节点到节点的路径。其中,参见图3A,该装置迭代触发如下确定模块301和添加模块302以确定网络中的节点的路径集合:
确定模块301,用于执行图2A实施例中的步骤2011;
添加模块302,用于执行图2A实施例中的步骤2012。
可选地,参见图3B,添加模块302包括添加单元3021。
添加单元3021,用于根据N条最短路径分别对应的N种属性值、路径的N种属性值和链路的N种属性值确定将路径与链路组成的新路径添加到终止节点的路径集合中。
可选地,添加单元3021用于执行图2A实施例中的步骤2012中的第一种方式或第二种方式。
可选地,该装置还用于:
迭代触发确定模块301和添加模块302,直至网络中的节点的路径集合中不存在未收敛的路径集合,或者迭代次数等于网络中的节点个数减1所得的数值为止,未收敛的路径集合为本次迭代后包括的路径与上次迭代后包括的路径不全相同的路径集合。
可选地,N种链路属性包括代价、时延、时延抖动和丢包率中的至少一种。
在本发明实施例中,迭代执行路径集合确定步骤得到网络中的节点的路径集合后,可 以基于该网络中的节点的路径集合,对该网络中的源节点与宿节点之间的业务数据进行转发。在路径集合确定步骤中,对于该网络中的每条链路,会先确定该链路的终止节点到宿节点的N条最短路径,再根据该N条最短路径、该路径和该链路确定将该路径与该链路组成的新路径添加到该终止节点的路径集合中,从而保证了添加的新路径往后延续到宿节点的路径中至少存在一条路径能够满足业务要求,排除了一些往后延续到宿节点时不能满足业务要求的无用路径,减少了该终止节点的路径集合包括的路径数量,减少了内存占用,进而减少了后续基于该终止节点的路径集合确定其它节点的路径集合时的计算量,缩短了计算时间。
需要说明的是:上述实施例提供的数据转发装置在数据转发时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据转发装置与数据转发方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意结合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如:同轴电缆、光纤、数据用户线(Digital Subscriber Line,DSL))或无线(例如:红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如:软盘、硬盘、磁带)、光介质(例如:数字通用光盘(Digital Versatile Disc,DVD))、或者半导体介质(例如:固态硬盘(Solid State Disk,SSD))等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (15)

  1. 一种数据转发方法,其特征在于,所述方法基于网络中的节点的路径集合,对所述网络中的源节点与宿节点之间的业务数据进行转发,所述节点的路径集合包括有所述源节点到所述节点的路径,其中,迭代执行如下路径集合确定步骤以确定所述网络中的节点的路径集合:
    对于所述网络中的每条链路,获取所述链路的起始节点的路径集合,以及确定所述链路的终止节点到所述宿节点的N条最短路径,所述N条最短路径基于N种链路属性一一确定得到,所述N为不小于1的自然数;
    对于所述起始节点的路径集合包括的每条路径,根据所述N条最短路径、所述路径和所述链路确定将所述路径与所述链路组成的新路径添加到所述终止节点的路径集合中。
  2. 如权利要求1所述的方法,其特征在于,所述根据所述N条最短路径、所述路径和所述链路确定将所述路径与所述链路组成的新路径添加到所述终止节点的路径集合中,包括:
    根据所述N条最短路径分别对应的N种属性值、所述路径的N种属性值和所述链路的N种属性值确定将所述路径与所述链路组成的新路径添加到所述终止节点的路径集合中。
  3. 如权利要求2所述的方法,其特征在于,所述根据所述N条最短路径分别对应的N种属性值、所述路径的N种属性值和所述链路的N种属性值确定将所述路径与所述链路组成的新路径添加到所述终止节点的路径集合中,包括:
    针对每一种链路属性,计算所述路径的第一属性值、所述链路的第二属性值和所述链路属性对应的最短路径的第三属性值,以及计算所述第一属性值、所述第二属性值与所述第三属性值之和;
    当针对每一种链路属性计算获得的所述第一属性值、所述第二属性值与所述第三属性值之和均不大于所述链路属性的阈值时,确定将所述路径和所述链路组成的新路径添加到所述终止节点的路径集合中。
  4. 如权利要求2所述的方法,其特征在于,所述根据所述N条最短路径分别对应的N种属性值、所述路径的N种属性值和所述链路的N种属性值确定将所述路径与所述链路组成的新路径添加到所述终止节点的路径集合中,包括:
    针对每一种链路属性,计算所述路径的第一属性值、所述链路的第二属性值和所述链路属性对应的最短路径的第三属性值,以及计算所述第一属性值、所述第二属性值与所述第三属性值之和;
    当针对每一种链路属性计算获得的所述第一属性值、所述第二属性值与所述第三属性值之和均不大于所述链路属性的阈值,且所述终止节点的路径集合中不存在指定路径时,确定将所述路径和所述链路组成的新路径添加到所述终止节点的路径集合中,所述指定路径的N种属性值分别小于所述路径与所述链路组成的新路径的N种属性值。
  5. 如权利要求3或4所述的方法,其特征在于,所述方法还包括:
    基于所述宿节点的路径集合更新所述N种链路属性中的目标属性的阈值,所述宿节点的路径集合中目标属性值最小的路径为业务路径,所述目标属性值用于指示所述目标属性,所述业务路径为所述源节点与所述宿节点之间的业务数据的转发路径。
  6. 如权利要求1-5任一所述的方法,其特征在于,所述迭代执行所述路径集合确定步骤,包括:
    迭代执行所述路径集合确定步骤,直至所述网络中的节点的路径集合中不存在未收敛的路径集合,或者迭代次数等于所述网络中的节点个数减1所得的数值为止,所述未收敛的路径集合为本次迭代后包括的路径与上次迭代后包括的路径不全相同的路径集合。
  7. 如权利要求1-6任一所述的方法,其特征在于,所述N种链路属性包括代价、时延、时延抖动和丢包率中的至少一种。
  8. 一种数据转发装置,其特征在于,所述装置基于网络中的节点的路径集合,对所述网络中的源节点与宿节点之间的业务数据进行转发,所述节点的路径集合包括有所述源节点到所述节点的路径,其中,所述装置迭代触发如下确定模块和添加模块以确定所述网络中的节点的路径集合:
    确定模块,用于对于所述网络中的每条链路,获取所述链路的起始节点的路径集合,以及确定所述链路的终止节点到所述宿节点的N条最短路径,所述N条最短路径基于N种链路属性一一确定得到,所述N为不小于1的自然数;
    添加模块,用于对于所述起始节点的路径集合包括的每条路径,根据所述N条最短路径、所述路径和所述链路确定将所述路径与所述链路组成的新路径添加到所述终止节点的路径集合中。
  9. 如权利要求8所述的方法,其特征在于,所述添加模块包括:
    添加单元,用于根据所述N条最短路径分别对应的N种属性值、所述路径的N种属性值和所述链路的N种属性值确定将所述路径与所述链路组成的新路径添加到所述终止节点的路径集合中。
  10. 如权利要求9所述的装置,其特征在于,所述添加单元用于:
    针对每一种链路属性,计算所述路径的第一属性值、所述链路的第二属性值和所述链路属性对应的最短路径的第三属性值,以及计算所述第一属性值、所述第二属性值与所述第三属性值之和;
    当针对每一种链路属性计算获得的所述第一属性值、所述第二属性值与所述第三属性值之和均不大于所述链路属性的阈值时,确定将所述路径和所述链路组成的新路径添加到所述终止节点的路径集合中。
  11. 如权利要求9所述的装置,其特征在于,所述添加单元用于:
    针对每一种链路属性,计算所述路径的第一属性值、所述链路的第二属性值和所述链路 属性对应的最短路径的第三属性值,以及计算所述第一属性值、所述第二属性值与所述第三属性值之和;
    当针对每一种链路属性计算获得的所述第一属性值、所述第二属性值与所述第三属性值之和均不大于所述链路属性的阈值,且所述终止节点的路径集合中不存在指定路径时,确定将所述路径和所述链路组成的新路径添加到所述终止节点的路径集合中,所述指定路径的N种属性值分别小于所述路径与所述链路组成的新路径的N种属性值。
  12. 如权利要求10或11所述的装置,其特征在于,所述装置还用于:
    基于所述宿节点的路径集合更新所述N种链路属性中的目标属性的阈值,所述宿节点的路径集合中目标属性值最小的路径为业务路径,所述目标属性值用于指示所述目标属性,所述业务路径为所述源节点与所述宿节点之间的业务数据的转发路径。
  13. 如权利要求8-12任一所述的装置,其特征在于,所述装置还用于:
    迭代触发所述确定模块和所述添加模块,直至所述网络中的节点的路径集合中不存在未收敛的路径集合,或者迭代次数等于所述网络中的节点个数减1所得的数值为止,所述未收敛的路径集合为本次迭代后包括的路径与上次迭代后包括的路径不全相同的路径集合。
  14. 如权利要求8-13任一所述的装置,其特征在于,所述N种链路属性包括代价、时延、时延抖动和丢包率中的至少一种。
  15. 一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-7任一所述的方法。
PCT/CN2017/105905 2017-01-25 2017-10-12 数据转发方法及装置 WO2018137361A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP17893551.6A EP3565194B1 (en) 2017-01-25 2017-10-12 Method and device for forwarding data
US16/522,065 US11252076B2 (en) 2017-01-25 2019-07-25 Data forwarding method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710056635.7 2017-01-25
CN201710056635.7A CN108347377B (zh) 2017-01-25 2017-01-25 数据转发方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/522,065 Continuation US11252076B2 (en) 2017-01-25 2019-07-25 Data forwarding method and apparatus

Publications (1)

Publication Number Publication Date
WO2018137361A1 true WO2018137361A1 (zh) 2018-08-02

Family

ID=62961904

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/105905 WO2018137361A1 (zh) 2017-01-25 2017-10-12 数据转发方法及装置

Country Status (4)

Country Link
US (1) US11252076B2 (zh)
EP (1) EP3565194B1 (zh)
CN (1) CN108347377B (zh)
WO (1) WO2018137361A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109951335B (zh) * 2019-03-24 2022-03-04 西安电子科技大学 基于时间聚合图的卫星网络时延与速率联合保障路由方法
CN111147377B (zh) * 2019-12-05 2020-09-11 连连银通电子支付有限公司 一种业务通道的确定方法、装置、设备和介质
CN112260946B (zh) * 2020-09-10 2024-03-19 视联动力信息技术股份有限公司 一种链路故障的处理方法、装置、终端设备和存储介质
US20220369202A1 (en) * 2021-05-14 2022-11-17 At&T Intellectual Property I, L.P. Facilitation of service integrity detection and self healing to support 5g or other next generation networks

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104270313A (zh) * 2014-09-29 2015-01-07 清华大学 一种网络链路利用率调节方法
CN105515714A (zh) * 2015-11-19 2016-04-20 北京邮电大学 一种网络升级感知的保护方法
CN105897575A (zh) * 2016-06-03 2016-08-24 中国电子科技集团公司第三十研究所 一种sdn下基于多约束路径计算策略的路径计算方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7656857B2 (en) * 2005-10-18 2010-02-02 Cisco Technology, Inc. Directed acyclic graph computation by orienting shortest path links and alternate path links obtained from shortest path computation
CN101374104A (zh) * 2007-08-22 2009-02-25 华为技术有限公司 生成路由的方法、网络控制器和系统
US9253077B2 (en) * 2012-11-30 2016-02-02 International Business Machines Corporation Parallel top-K simple shortest paths discovery
KR20160048079A (ko) * 2013-08-23 2016-05-03 삼성전자주식회사 모바일 소프트웨어 정의 네트워크
EP2916268A1 (en) * 2014-03-05 2015-09-09 Fujitsu Limited A computer-implemented k-shortest path finding method
CN104980351A (zh) * 2014-12-26 2015-10-14 深圳市新格林耐特通信技术有限公司 一种基于sdn网络的快速重路由方法
US9780909B2 (en) * 2014-12-29 2017-10-03 Juniper Networks, Inc. Network topology optimization with feasible optical paths
US9628380B2 (en) * 2015-03-06 2017-04-18 Telefonaktiebolaget L M Ericsson (Publ) Method and system for routing a network function chain
CN105049353B (zh) 2015-07-28 2018-11-16 华为技术有限公司 一种为业务配置路由路径的方法及控制器

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104270313A (zh) * 2014-09-29 2015-01-07 清华大学 一种网络链路利用率调节方法
CN105515714A (zh) * 2015-11-19 2016-04-20 北京邮电大学 一种网络升级感知的保护方法
CN105897575A (zh) * 2016-06-03 2016-08-24 中国电子科技集团公司第三十研究所 一种sdn下基于多约束路径计算策略的路径计算方法

Also Published As

Publication number Publication date
EP3565194A1 (en) 2019-11-06
EP3565194B1 (en) 2021-09-22
CN108347377A (zh) 2018-07-31
EP3565194A4 (en) 2019-12-18
US11252076B2 (en) 2022-02-15
US20190349288A1 (en) 2019-11-14
CN108347377B (zh) 2020-09-11

Similar Documents

Publication Publication Date Title
US11503113B2 (en) Task offloading and routing in mobile edge cloud networks
US10164782B2 (en) Method and system for constructing a loop free multicast tree in a data-center fabric
WO2018137361A1 (zh) 数据转发方法及装置
US10341208B2 (en) File block placement in a distributed network
US9633041B2 (en) File block placement in a distributed file system network
WO2020119648A1 (zh) 一种基于代价优化的计算任务卸载算法
WO2019011338A1 (zh) 一种最短路径确定方法及控制器
US20160112502A1 (en) Distributed computing based on deep packet inspection by network devices along network path to computing device
BR112016005438B1 (pt) Método para instalar serviços em uma rede de provedor de serviços, nó do controlador de rede e meio legível por computador não transitório relacionados
US10404576B2 (en) Constrained shortest path determination in a network
JP2004208297A (ja) ツリートポロジーネットワークのデバイスの高速選択システムおよび方法
US11444840B2 (en) Virtualized networking application and infrastructure
US11082358B2 (en) Network path measurement method, apparatus, and system
WO2022213817A1 (zh) 路由方法和路由装置
US10635774B2 (en) Integrated circuit design
US20150365353A1 (en) Network management device and method
KR101800320B1 (ko) 버스 프로토콜 기반의 네트워크 온 칩 시스템, 그 설계 방법 및 그 설계 방법에 관한 프로그램이 기록된 컴퓨터 판독가능 기록매체
CN113179532A (zh) 多路径路由方法及装置
WO2023093513A1 (zh) 路径感知方法、装置及系统
WO2018232773A1 (zh) 数据处理方法及装置、交换设备
WO2019052363A1 (zh) 修改网络切片实例的方法及装置
US20210203561A1 (en) Method and apparatus for obtaining interior gateway protocol domain through division in network
EP3471351B1 (en) Method and device for acquiring path information about data packet
KR102033339B1 (ko) 다중자원 인프라구조 관리 방법 및 장치
CN116192753B (zh) 一种流量分配方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17893551

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2017893551

Country of ref document: EP

Effective date: 20190802