A path determination method, a communication device and a storage medium
By utilizing concavity, additive, and multiplicative parameters in audio and video systems to generate various network topologies, the problem that path planning in existing technologies cannot meet the requirements of multiple parameters is solved, achieving more accurate and practical path selection, applicable to various audio and video service scenarios.
Patent Information
- Application Number
- CN202310622100.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-05-29
- Publication Date
- 2025-10-17
- Estimated Expiration
- 2043-05-29
AI Technical Summary
Existing path planning technologies are typically based on a single synthesis parameter, which is insufficient to meet the needs of real-time audio and video communication services for multiple independent parameters. As a result, the limitations of path planning cannot meet the requirements of high concurrency, low latency, and high-definition, smooth audio and video services.
By acquiring the network topology of the audio and video system, a second network topology that satisfies the concave parameter constraints is generated using concave, additive, and multiplicative parameters. A third network topology is then generated based on key parameters. Multiple candidate paths are determined, and finally, the target path that satisfies the path selection constraints is selected.
It achieves more accurate path planning, is applicable to a variety of business scenarios, improves the practicality and accuracy of path planning, and can meet the multi-parameter requirements of different audio and video services.
Smart Images

Figure CN119052884B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of audio and video communications, and in particular to a path determination method, a communication device, and a storage medium. Background Art
[0002] With the popularization of mobile Internet and the commercialization of the fifth-generation mobile communication technology (5G), users' demand for low-latency, highly reliable audio and video applications is growing. At present, Real-Time Communication (RTC), relying on its long-term technical accumulation in the field of video services, quickly provides the industry with high concurrency, low latency, high-definition smoothness, security and reliability in all scenarios, full interaction, and real-time audio and video services. It is suitable for various application scenarios such as online education, cloud conferencing, social entertainment, etc. Among them, path planning is the core technology of Real-Time Network (RTN). Path planning refers to planning the optimal transmission path between edge nodes by aggregating and calculating edge data.
[0003] However, current path planning usually determines the transmission path based on a composite parameter of the link or one of its independent parameters, which has great limitations and cannot meet the multi-parameter requirements of RTC business applications. Summary of the Invention
[0004] The embodiments of the present application provide a path determination method, a communication device, and a storage medium, so that path planning can meet the business needs of multi-parameter constraints.
[0005] In order to achieve the above objectives, this application adopts the following technical solutions:
[0006] In one aspect, a path determination method is provided, the method comprising:
[0007] Acquire a first network topology of the audio and video system, where attribute information of a link in the first network topology includes transmission parameters of the link, and the transmission parameters of the link include a concave parameter, an additive parameter, and a multiplicative parameter;
[0008] Determining links that satisfy the concavity parameter constraint condition from the first network topology, and generating a second network topology based on the links that satisfy the concavity parameter constraint condition;
[0009] Generating a third network topology based on key parameters of the links in the second network topology; wherein the key parameters are the parameters that have the greatest impact on the target service type among the additive parameters and the multiplicative parameters; and the attribute information of the links in the third network topology includes a quantized score determined by the key parameters;
[0010] determining a plurality of candidate paths based on the third network topology;
[0011] Determine a target path that meets the path selection constraints from multiple candidate paths.
[0012] On the other hand, a path determination device is provided, which includes: an acquisition module and a processing module.
[0013] An acquisition module, configured to acquire a first network topology of the audio and video system, wherein the attribute information of the link in the first network topology includes transmission parameters of the link, and the transmission parameters of the link include concave parameters, additive parameters, and multiplicative parameters;
[0014] a processing module, configured to determine links satisfying a concave parameter constraint condition from the first network topology, and generate a second network topology based on the links satisfying the concave parameter constraint condition;
[0015] The processing module is further configured to generate a third network topology based on key parameters of the links in the second network topology; wherein the key parameters are the parameters that have the greatest impact on the target service type among the additive parameters and the multiplicative parameters; and the attribute information of the links in the third network topology includes a quantized score determined by the key parameters;
[0016] The processing module is further configured to determine a plurality of candidate paths based on the third network topology; and determine a target path that satisfies the path selection constraint condition from the plurality of candidate paths.
[0017] On the other hand, a communication device is provided, comprising: a processor and a memory; the memory stores instructions executable by the processor; when the processor is configured to execute the instructions, the communication device implements any one of the methods provided in the first aspect above.
[0018] On the other hand, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and when the computer instructions are executed on a computer, the computer executes any one of the methods provided in the first aspect.
[0019] In yet another aspect, a computer program product comprising computer instructions is provided. When the computer instructions are executed on a computer, the computer is caused to execute any one of the methods provided in the first aspect.
[0020] Based on the above embodiment, this method can first simplify the network topology based on concavity parameters, and then determine a third network topology based on key parameters of different services to facilitate the determination of candidate paths. Furthermore, it can more accurately reflect the various parameters of each candidate path and, based on the parameters of the candidate paths, determine the path among the candidate paths that meets the various parameter requirements of the service. This allows for more accurate path planning. Furthermore, it can also make path planning applicable to a variety of service scenarios, improving the practicality of path planning. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] The accompanying drawings are used to provide a further understanding of the technical solution of the present invention and constitute a part of the specification. Together with the embodiments of the present application, they are used to explain the technical solution of the present invention and do not constitute a limitation on the technical solution of the present invention.
[0022] Figure 1 A schematic diagram of an audio and video system architecture provided in an embodiment of the present application;
[0023] Figure 2 A flow chart of a path determination method provided in an embodiment of the present application;
[0024] Figure 3 A schematic diagram of a network topology provided in an embodiment of the present application;
[0025] Figure 4 A schematic diagram of another network topology provided in an embodiment of the present application;
[0026] Figure 5 A schematic diagram of a candidate path provided in an embodiment of the present application;
[0027] Figure 6 A schematic diagram of the composition of a path determination device provided in an embodiment of the present application;
[0028] Figure 7 A schematic diagram of the structure of a path determination device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0029] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0030] In the description of this application, unless otherwise specified, " / " means "or", for example, A / B can mean A or B. "And / or" in this article is merely a description of the association relationship of associated objects, indicating that three relationships can exist. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In addition, "at least one" means one or more, and "a plurality" means two or more. Words such as "first" and "second" do not limit the quantity and execution order, and words such as "first" and "second" do not limit them to be necessarily different.
[0031] It should be noted that, in this application, words such as "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design described in this application as "exemplary" or "for example" should not be construed as being preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete manner.
[0032] Currently, RTN path planning technology typically uses a composite parameter to represent the characteristics of multiple parameters, constructs a function mapping model using these parameters as function variables, and uses the function value as the path planning criterion. However, this path planning approach still has significant limitations.
[0033] In practice, real-time audio and video communication services typically rely on RTN systems to achieve high-speed, high-quality data transmission. These applications may require multiple independent parameters, such as network latency, packet loss rate, and bandwidth. Therefore, the aforementioned path planning method cannot guarantee that every path parameter meets service requirements.
[0034] In view of this, an embodiment of the present application provides a path determination method, which specifically includes: first obtaining a first network topology of an audio and video system, wherein the attribute information of the link in the first network topology includes the transmission parameters of the link, and the transmission parameters of the link include concave parameters, additive parameters, and multiplicative parameters. Then, a link that satisfies the concave parameter constraint is determined from the first network topology, and a second network topology is generated based on the link that satisfies the concave parameter constraint. Then, based on the key parameters of the link in the second network topology, a third network topology is generated; wherein the key parameter is the parameter with the highest degree of influence on the target business type among the additive parameter and the multiplicative parameter; the attribute information of the link in the third network topology includes a quantitative score determined by the key parameter. Based on the third network topology, multiple candidate paths are determined; and a target path that satisfies the path selection constraint is determined from the multiple candidate paths. In this way, path planning can be applied to a variety of business scenarios, thereby improving the practicality and accuracy of path planning.
[0035] Figure 1FIG. 1 shows an audio and video system architecture provided by an embodiment of the present application. Figure 1 As shown, the audio and video system may include a control node 110 and an edge node 120 .
[0036] In some embodiments, the audio and video system may include an audio and video cloud network, which can be used to implement distributed deployment of edge computing infrastructure resources and to centrally manage these resources. Among them, the deployment point with more resources and concentrated locations is called the central cloud, and the deployment point with fewer resources and widely distributed locations is called the edge cloud (also called the edge cloud node). Since the edge cloud is more widely distributed, the edge cloud is closer to the terminal device used by the user. That is, the edge cloud can be understood as a cloud computing platform close to the terminal device, and the central cloud can be understood as a cloud platform that uniformly manages multiple edge clouds.
[0037] The control node 110 is deployed in the aforementioned central cloud and is responsible for controlling and managing media nodes. It can receive and process node information and link quality information reported by media nodes. In some embodiments, the control node 110 may include a module responsible for controlling and scheduling edge nodes 120 in the audio and video system and managing system data. In some embodiments, the control node 110 may include a network perception module, a simplification module, a quantization module, a calculation module, and a matching module.
[0038] Edge nodes 120 are also deployed in the aforementioned edge cloud. Data transmission paths can consist of multiple edge nodes 120 and links between them. Edge nodes 120 can be composed of multiple small nodes distributed over a wide area. Edge nodes 120 can be used to forward service data in the RTN network at high speed and quality.
[0039] In some embodiments, the audio and video system may further include a client connected to the edge node 120. The client 130 may be a physical device or software application that supports the generation, transmission, and display of audio and video data. For example, a mobile phone application (Application, App), a Software Development Kit (SDK), or a terminal device. For example, a mobile phone, tablet computer, desktop, laptop, handheld computer, notebook computer, ultra-mobile personal computer (UMPC), netbook, as well as cellular phones, personal digital assistants (PDAs), augmented reality (AR) and virtual reality (VR) devices.
[0040] It is understandable that Figure 1The system architecture shown in the figure does not constitute a limitation on the embodiments of the present application. It may include more or fewer components than shown in the figure, or a combination of certain components, or a different arrangement of components.
[0041] The method provided in this application is described in detail below with reference to the accompanying drawings.
[0042] like Figure 2 As shown, an embodiment of the present application provides a path determination method, which includes the following steps:
[0043] S101: Obtain a first network topology of an audio and video system.
[0044] The attribute information of the link in the first network topology includes transmission parameters of the link, and the transmission parameters of the link include concave parameters, additive parameters, and multiplicative parameters.
[0045] In some embodiments, the concave parameter includes bandwidth, the additive parameter includes cost and / or delay, and the multiplicative parameter includes packet loss rate. In some embodiments, the additive parameter may also include possible parameters such as jitter and node hop count.
[0046] In some embodiments, for a path between any two nodes in the first network topology, the value of the concavity parameter of the path is equal to the minimum value of the concavity parameters of all links constituting the path.
[0047] For example, taking bandwidth as an example, define G = (V, E) to represent the first network topology, where V represents the set of nodes and E represents the set of links connecting the nodes. Define P (s, d) as the set of transmission paths in the first network topology, where s∈V represents the source node and d∈V represents the destination node. The bandwidth of path p can be determined based on the following formula (1):
[0048] width(p)=min{B(e)},e∈p Formula (1)
[0049] Wherein, width(p) is the bandwidth of the path p, B(e) is the bandwidth of the links constituting the path, e is a link in the first network topology, e∈E, p∈P.
[0050] In some embodiments, for a path between any two nodes in the first network topology, the value of the additive parameter of the path is obtained by adding the values of the additive parameters of all links constituting the path.
[0051] For example, the cost of path p can be determined based on the following formula (2): :
[0052]
[0053] Wherein, cost(p) is the cost of the path p, C(e) is the cost of the links constituting the path, e is a link in the first network topology, e∈E, p∈P.
[0054] For example, the delay of path p can be determined based on the following formula (3): :
[0055]
[0056] Wherein, delay(p) is the delay of the path p, D(e) is the delay of the links constituting the path, e is a link in the first network topology, e∈E, p∈P.
[0057] In some embodiments, for a path between any two nodes in the first network topology, the value of the multiplicative parameter of the path is obtained by multiplying the values of the multiplicative parameters of all links constituting the path.
[0058] For example, the packet loss rate of path p can be determined based on the following formula (4): Certainly:
[0059]
[0060] Wherein, loss(p) is the packet loss rate of the path p, L(e) is the packet loss rate of the links constituting the path, e is a link in the first network topology, e∈E, p∈P.
[0061] In some embodiments, the control node of the audio and video system can perform data perception in real time at a preset frequency to obtain the real-time network topology of the audio and video system.
[0062] In some embodiments, the aforementioned network awareness can be implemented through scheduled tasks. The control node can analyze the relationships between edge nodes through a network awareness module, initiate network detection requests to each node in the edge cloud, and drive the edge nodes to perform network detection on connected nodes based on the preset frequency to obtain detection data such as packet loss rate, latency, jitter, and bandwidth usage of the links between the edge nodes.
[0063] In some embodiments, the control node may also obtain and record inherent data of each node, such as the node IP address, node identity document (ID), node hardware parameters (such as CPU or memory, etc.), etc.
[0064] In some embodiments, after the control node performs network perception to obtain data, it can perform exception processing on the received data, such as detecting whether the data is returned in a standard format, whether the data is out of bounds, etc. to determine whether the data is abnormal, and process the detected abnormal data.
[0065] In some embodiments, when the network topology of the audio and video system changes, such as when nodes or connected edges are added or deleted, the control node can again perform network perception based on the real-time network topology. For example, the control node can initiate new network detection requests and data collection requests to each edge node to obtain new data, and then update the first network topology based on the obtained new data.
[0066] S102: Determine links that satisfy concavity parameter constraints from the first network topology, and generate a second network topology based on the links that satisfy the concavity parameter constraints.
[0067] In some embodiments, when the concavity parameter includes bandwidth, the concavity parameter preset condition includes that the bandwidth is less than a preset threshold. That is, the control node can delete the links that do not meet the condition in the first network topology based on the concavity parameter preset condition to simplify the network topology and obtain the second network topology. Figure 1 Taking the control node 110 in FIG. 1 as an example, the control node 110 may simplify the first network topology of the audio and video system through a simplification module to obtain a second network topology.
[0068] The preset threshold value can be a bandwidth value that is pre-set or determined in real time based on the actual network topology, or a value representing the ratio of the real-time bandwidth to the total available bandwidth of the link. If the bandwidth of a link is greater than or equal to the preset threshold value, it indicates that the link is about to be saturated and no more traffic can be allocated. Therefore, the control node can delete the link in the second network topology.
[0069] In some embodiments, the control node may perform a simplification operation on the first network topology based on the simplified model to generate a second network topology.
[0070] Exemplarily, the simplified model includes the aforementioned concavity parameter constraint, such as a bandwidth less than a preset threshold. The control node may input the bandwidth of the first network topology and the links between all nodes in the first network topology into the simplified model. The simplified model may dynamically delete the links with the concavity parameter constraint in the first network topology, thereby obtaining the aforementioned second network topology.
[0071] For example, Figure 3 As shown in FIG, the nodes in the first network topology obtained by the control node through network perception include node A, node B, node C, node D, node E, and node F. Among them, the concavity parameter preset condition includes that the bandwidth is less than 90% of the total bandwidth available for the link. If the real-time bandwidth of the link from node B to node E is 2.7Gbps, and the total bandwidth available for the link is 3Gbps, reaching 90% of the total bandwidth available for the link, then Figure 3 As shown, the control node can temporarily delete the link in the network topology diagram to obtain a second network topology.
[0072] In some embodiments, the control node may update the second network topology in real time based on network-aware data. If subsequent network-aware data indicates that the bandwidth of the deleted link satisfies the concavity parameter constraint, the control node may update the second network topology based on new network-aware data to dynamically restore the link in the updated second network topology.
[0073] S103: Generate a third network topology based on key parameters of links in the second network topology.
[0074] The key parameter is the parameter with the highest degree of influence on the target service type among the additive parameter and the multiplicative parameter. The attribute information of the link in the third network topology includes a quantized score determined by the key parameter.
[0075] In some embodiments, the control node may determine key parameters of the target service type based on service requirements corresponding to the target service type to which the target service belongs.
[0076] Exemplarily, target services may include cloud computers, interactive whiteboards, video conferencing, video IoT, interactive live broadcasting, Extended Reality (XR), and other possible services.
[0077] In one example, if the target service is a cloud computer, interactive whiteboard or other service, which has a very low tolerance for delay and can tolerate a small amount of packet loss, the control node can determine that the target service type is a delay-priority service, that is, the key parameter of the target service type is delay. In another example, if the target service is compressed data file transmission or other services that prioritize packet loss rate over delay or other requirements. The control node can determine that the target service type is a packet loss rate-priority service, that is, the key parameter of the target service type is packet loss rate. In addition, the target service type in the embodiment of the present application may also include other possible service types, which are not listed here one by one.
[0078] In some embodiments, the control node may obtain a quantitative score of the link based on the key parameters of the link, and generate a third network topology using the structure of the second network topology as the structure of the third network topology and the quantitative score of the link as attribute information of the link in the third network topology.
[0079] The quantitative score of the link is used to represent the reliability of the link in transmitting service data of the service type.
[0080] As an example, the quantization score can be negatively correlated with reliability. That is, the smaller the quantization score of a link, the higher the reliability of the link for transmitting service data of the service type. Conversely, the larger the quantization score of a link, the lower the reliability of the link for transmitting service data of the service type.
[0081] As another example, the quantization score can be positively correlated with the reliability. It should be understood that the relationship between the quantization score and the reliability depends mainly on the algorithm for determining the quantization score. The following mainly uses the example of the negative correlation between the quantization score and the reliability.
[0082] In some embodiments, the control node can obtain the third network topology based on the key parameters of the target service type and the quantitative model. The quantitative model can map the key parameters of the link into specific values according to a preset mathematical conversion relationship, and the value represents the quantitative score of the link. Figure 1 Taking the control node 110 in FIG. 1 as an example, the quantization model of the control node 110 may be preset with the quantization model, which may determine the third network topology through the quantization module.
[0083] Exemplarily, the control node may input the second network topology and key parameters of links between all nodes of the second network topology into the quantitative model, thereby obtaining the third network topology.
[0084] Figure 4 The third network topology is shown with delay, packet loss rate and cost as key parameters. Figure 4 As shown, the third network topology includes nodes A, B, C, ..., and F. Taking the third network topology with latency as the key parameter as an example, the quantization score of link AB between node A and node B is 6, the quantization score of link AC is 3, the quantization score of link BD is 5, the quantization score of link BC is 3, the quantization score of link CE is 4, the quantization score of link CD is 3, the quantization score of link DE is 2, the quantization score of link DF is 3, and the quantization score of link EF is 6.
[0085] In one implementation, the control node can preset and determine the quantized network topologies corresponding to multiple possible key parameters, and then select the quantized network topology corresponding to the target business type based on the business type to which the target business belongs, that is, the third network topology mentioned above.
[0086] In another implementation, the control node may first determine the target service type, and then determine the third network topology based on the service requirements corresponding to the target service type and the second network topology of the audio and video system.
[0087] It should be noted that the above technical solution can classify the parameters in the audio and video system through a path planning method based on key parameters, first simplifying the network topology using concave parameters to obtain a first network topology. Then, based on the differences between different services and the key parameters that most affect the target service, a third network topology is determined, thereby determining candidate paths in the third network topology. In this way, the third network topology corresponding to different service types can be calculated based on different key parameters, without the need for parameter synthesis, that is, without the need to determine the function mapping model of the synthesized parameters, which can reduce the complexity of the calculation and improve the feasibility of path planning.
[0088] S104: Determine multiple candidate paths based on the third network topology.
[0089] In some embodiments, the control node may determine, based on a third network topology, multiple paths between a first node and a second node, and determine a path score for each of the multiple paths. The path score for each path is derived based on a quantized score of all links comprising the path. The first node and the second node are any two nodes in the third network topology.
[0090] Similar to the quantitative score of a link, the path score of a path represents the reliability of that path for transmitting service data of that service type. Furthermore, the path score can be negatively correlated with reliability. Alternatively, the path score can be positively correlated with reliability. It should be understood that the relationship between the path score and reliability depends primarily on the algorithm used to determine the path score. The following example primarily illustrates the negative correlation between the path score and reliability.
[0091] Furthermore, the control node may determine the top N paths with the smallest path scores from the multiple paths as multiple candidate paths between the second node and the first node, where N is a positive integer greater than 1. Figure 1 Taking the control node 110 in FIG. 1 as an example, it can determine the above-mentioned multiple candidate paths through a calculation module.
[0092] In some embodiments, the multiple paths between the first node and the second node include a first path and a second path, where the first path is the shortest path from the first node to the second node. The second path is composed of the shortest path from the first node to a third node and the next shortest path from the third node to the second node, where the third node is any node in the first path other than the first node and the second node.
[0093] In the third network topology, the shortest path from the first node to the second node can be understood as a path with the smallest path score from the first node to the second node in the third network topology.
[0094] Exemplarily, the process of the control node determining multiple candidate paths may be specifically implemented as follows:
[0095] S1. The control node determines a first node (source node) and a second node (destination node) in a third network topology.
[0096] For example, the control node can define G = (V, E) to represent the first network topology, where V represents a set of nodes. E represents a set of links connecting the nodes. The control node denotes the first node as s, s∈V, and the second node as d, d∈V. The i-th candidate path from node s to node d can be denote as p i (s, d), then the multipath set can be recorded as P n (s, d) = {p1 (s, d), p2 (s, d), ..., p n (s, d)}.
[0097] S2. The control node calculates the shortest path from the first node s to the second node d, that is, the path with the smallest path score in the third network topology. In addition, the control node may record the shortest path as p1(s, d).
[0098] S3. The control node determines all nodes except the second node on p1(s, d) as deviation nodes, and records them in the deviation node set as D={d1, d2, ...d x}. There are x deviation nodes in total.
[0099] S4, control node according to the deviation node d i (i=1, 2, ...x), determine the deviation from node d i To the target node s d The shortest path, that is, the path with the smallest quantization score, can be used as a candidate path.
[0100] S5, the control node is based on the first node in p1 (s, d) to the deviation node d i The path of d determined in step S4 i The shortest path to the second node is determined by the path between the first node and the second node, and is recorded in the second path set C(s, d).
[0101] S6, traverse D = {d1, d2, ...d x After finding all the deviation nodes in the set, the control node can determine the path with the smallest path score in C(s, d) and record this path as p2(s, d). Then, the control node can move the nodes from the set C(s, d) to the set P n (s,d). p2(s,
[0102] d) is the second shortest path between the first node and the second node, which can be used as a candidate path.
[0103] S7. The control node can update the set of deviation nodes based on the determination method shown in steps S3-S6 and determine a new candidate path until the set P is n The number of paths in (s, d) reaches N.
[0104] For example, Figure 5 As shown, candidate paths from source node A to destination node F are determined in a third network topology with latency as a key parameter, if N is 4. Furthermore, based on the third network topology, the control node can determine candidate paths A→C→D→F with a path score of 9, candidate paths A→C→E→D→F with a path score of 12, candidate paths A→C→E→F with a path score of 13, and candidate paths A→C→B→D→F with a path score of 13.
[0105] In some embodiments, the control node may calculate candidate paths between any two nodes in the third network topology, and then determine multiple candidate paths between the source node and the destination node from all candidate paths in the third network topology based on the source node and the destination node of the target service.
[0106] S105: Determine a target path that meets the path selection constraint conditions from multiple candidate paths.
[0107] In some embodiments, the control node may obtain transmission parameters of all links constituting the candidate path, and determine the transmission parameters of the candidate path based on the transmission parameters of all links constituting the candidate path.
[0108] In one example, for the concavity parameter, the value of the concavity parameter of the candidate path is equal to the minimum value of the concavity parameters of all links constituting the candidate path. For example, the bandwidth value of the candidate path can be determined based on the above formula (1).
[0109] In another example, for additive parameters, the value of the additive parameter of the candidate path is obtained by adding the values of the additive parameters of all links constituting the candidate path. For example, the cost of the candidate path can be determined based on the above formula (2), and the delay of the candidate path can be determined based on the above formula (3).
[0110] In another example, for the multiplicative parameter, the value of the multiplicative parameter of the candidate path is obtained by multiplying the values of the multiplicative parameters of all links constituting the path. For example, the packet loss rate of the candidate path can be determined based on the above formula (4).
[0111] In some embodiments, the control node may further express the transmission parameters of the candidate paths using parameter expressions.
[0112] For example, taking the third network topology with latency as the key parameter, if the path information is "A→C→D→F", the latency of link A→C is 30ms, the packet loss rate is 1%, the jitter is 10ms, and the cost is 1. The latency of link C→D is 40ms, the packet loss rate is 1%, the jitter is 10ms, and the cost is 2. The latency of link D→F is 30ms, the packet loss rate is 1%, the jitter is 10ms, and the cost is 3. Then the latency of the path A→C→D→F is 100ms, the packet loss rate is 3%, the jitter is 4ms, and the cost is 6. Therefore, the parameter expression of the candidate path can be expressed as: "type=1,path='ACD-F',score=9,delay=100,jitter=30,lost=3,hop=4,cost=6". Among them, type=1 represents the service type, that is, the service type with latency priority.
[0113] Therefore, the control node can determine a path that meets the path selection constraint condition from the multiple candidate paths based on the transmission parameters of the multiple candidate paths and determine it as the target path.
[0114] Path selection constraints are used to constrain the transmission parameters of the target path. It should be noted that path selection constraints are determined based on the parameter requirements of the target service. If the target service has constraints on multiple transmission parameters, the path selection constraints are used to constrain multiple transmission parameters of the target path. Alternatively, if the target service has constraints on only one transmission parameter, the path selection constraints are used to constrain that single transmission parameter of the target path.
[0115] In some embodiments, path selection constraints may include multiplicative and / or additive parameters of the path's transmission parameters. For example, latency, packet loss rate, jitter, and number of node hops. Furthermore, path selection constraints may include concavity parameters of the path's transmission parameters. In some embodiments, path selection constraints may also include service information of the target service, such as the target service's service type, source node, and destination node.
[0116] In some embodiments, the control node can also express the path selection constraint conditions of the target service in a multi-constraint logic expression. The way of expressing the transmission parameters in the path selection constraint conditions indicated in the multi-constraint logic expression should be consistent with the above parameter expression, for example, including the source node
[0117] (src), destination node (dest), delay (delay), packet loss rate (loss), jitter (jitter), node hop count (hop), etc. In addition, the control node can combine the specific constraints of each parameter in the path selection constraint with operators to form a multi-constraint logic expression.
[0118] If the path selection constraints include: source node A, destination node F, and service type cloud computing, and the transmission delay of the entire link is less than 350ms or jitter is less than 50ms, the packet loss rate is less than 5%, and the number of node hops is less than 5, the control node can determine the multi-constraint logic expression as: "src = 'A' and dest = 'F' and type = '1' and delay < 350 or jitter < 50 and lost < 5 and hop < 5".
[0119] Furthermore, the control node can match the multi-constraint logic expression representing the path selection constraint condition with the parameter expression of each candidate path to determine the target path. Figure 1 Taking the control node 110 in FIG. 1 as an example, it can match the path selection constraint conditions of the service with the transmission parameters of the candidate paths through a matching module.
[0120] For example, if the parameter expressions of multiple candidate paths include: "type=1,path='ACD-F',delay=100,jitter=30,lost=3,hop=4,cost=6", "type=1,path='ACED-F',delay=200,jitter=30,lost=6,hop=5,cost=10", "type=1,path='ACE-F',delay=300,jitter=40,lost=4,hop=4,cost=15" and "type=1,path='ACBD-F',delay=400,jitter=40,lost=4,hop=5,cost=13". Based on the above multi-constraint logical expression, it can be determined that the parameter expressions that match the multi-constraint logical expression include "type=1,path='ACD-F',delay=100,jitter=30,lost=3,hop=4,cost=6" and "type=1,path='ACE-F',delay=300,jitter=40,lost=4,hop=4,cost=15", so that the path corresponding to the matching parameter expression can be determined as the target path.
[0121] Based on the above embodiment, this method can first simplify the network topology based on concavity parameters, and then determine a third network topology based on key parameters of different services to facilitate the determination of candidate paths. Furthermore, it can more accurately reflect the various parameters of each candidate path and, based on the parameters of the candidate paths, determine the path among the candidate paths that meets the various parameter requirements of the service. This allows for more accurate path planning. Furthermore, it can also make path planning applicable to a variety of service scenarios, improving the practicality of path planning.
[0122] The above mainly introduces the solution provided by the present application from the perspective of the interaction between each node. It is understandable that each node, such as a device or equipment, includes a hardware structure and / or software module corresponding to the execution of each function in order to realize the above functions. Those skilled in the art should easily realize that, in combination with the algorithm steps of each example described in the embodiments disclosed herein, the present invention can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present invention.
[0123] Figure 6 This is a schematic diagram of the composition of a path determination device provided in an embodiment of the present application, which is applied to a first node. Figure 6 As shown, the path determination device 60 includes an acquisition module 601 and a processing module 602 .
[0124] In some embodiments, an acquisition module 601 is used to acquire a first network topology of an audio and video system, wherein the attribute information of a link in the first network topology includes the transmission parameters of the link, and the transmission parameters of the link include a concave parameter, an additive parameter, and a multiplicative parameter. A processing module 602 is used to determine a link that satisfies a concave parameter constraint from the first network topology, and to generate a second network topology based on the link that satisfies the concave parameter constraint. The processing module 602 is also used to generate a third network topology based on key parameters of the link in the second network topology; wherein the key parameter is the parameter with the highest degree of influence on the target service type among the additive parameter and the multiplicative parameter; and the attribute information of the link in the third network topology includes a quantized score determined by the key parameter. The processing module 602 is also used to determine multiple candidate paths based on the third network topology, and to determine a target path that satisfies the path selection constraint from the multiple candidate paths.
[0125] In some embodiments, the concave parameter includes bandwidth; the additive parameter includes cost and / or delay; and the multiplicative parameter includes packet loss rate.
[0126] In some embodiments, when the concavity parameter includes bandwidth, the concavity parameter preset condition includes that the bandwidth is less than a preset threshold.
[0127] In some embodiments, the processing module 602 is specifically used to: obtain a quantitative score of the link based on the key parameters of the link, use the structure of the second network topology as the structure of the third network topology, and use the quantitative score of the link as the attribute information of the link in the third network topology to generate a third network topology.
[0128] In some embodiments, processing module 602 is specifically configured to: determine, based on a third network topology, multiple paths between a first node and a second node, and determine a path score for each of the multiple paths; the path score of each path is obtained based on the quantized scores of all links constituting the path; the first node and the second node are any two nodes in the third network topology; and determine, from the multiple paths, top N paths with the lowest path scores as the multiple candidate paths between the second node and the first node, where N is a positive integer greater than 1.
[0129] In some embodiments, the multiple paths between the first node and the second node include a first path and a second path, the first path is the shortest path from the first node to the second node; the second path is composed of the shortest path from the first node to the third node and the second shortest path from the third node to the second node, and the third node is any node in the first path except the first node and the second node.
[0130] In some embodiments, the acquisition module 601 is specifically configured to acquire the transmission parameters of all links constituting the candidate path and determine the transmission parameters of the candidate path based on the transmission parameters of all links constituting the candidate path. The processing module 602 is specifically configured to determine a target path that satisfies the path selection constraints from the multiple candidate paths based on the transmission parameters of each of the multiple candidate paths.
[0131] In some embodiments, for the concavity parameter, the value of the concavity parameter of the candidate path is equal to the minimum value of the concavity parameters of all links constituting the candidate path; for the additive parameter, the value of the additive parameter of the candidate path is obtained by adding the values of the additive parameters of all links constituting the candidate path; for the multiplicative parameter, the value of the multiplicative parameter of the candidate path is obtained by multiplying the values of the multiplicative parameters of all links constituting the candidate path.
[0132] It should be noted that Figure 6 The modules in can also be called units, for example, the acquisition module can be called an acquisition unit. Figure 6 In the illustrated embodiment, the names of the modules may not be the names shown in the figure. For example, the acquisition module may also be called a communication module.
[0133] Figure 6 If the various units in the embodiment are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiment of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor (processor) to execute all or part of the steps of the various embodiments of the present application. The storage medium for storing computer software products includes: various media that can store program codes, such as a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0134] In the case of implementing the functions of the above-mentioned integrated modules in the form of hardware, the embodiment of the present application also provides a structural diagram of a path determination device. Figure 7 As shown, the path determination device 70 includes: a processor 702 , a communication interface 703 , and a bus 704 . Optionally, the data transmission device 70 may further include a memory 701 .
[0135] Processor 702 may implement or execute the various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of this application. Processor 702 may be a central processing unit, a general-purpose processor, a digital signal processor, an application-specific integrated circuit, a field-programmable gate array, or other programmable logic device, a transistor logic device, a hardware component, or any combination thereof. It may implement or execute the various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of this application. Processor 702 may also be a combination that implements computing functions, such as a combination of one or more microprocessors, or a combination of a DSP and a microprocessor.
[0136] The communication interface 703 is used to connect to other devices via a communication network, such as Ethernet, wireless access network, wireless local area network (WLAN), etc.
[0137] The memory 701 may 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 of dynamic storage device that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto.
[0138] As a possible implementation, the memory 701 can exist independently of the processor 702. The memory 701 can be connected to the processor 702 via a bus 704 to store instructions or program codes. When the processor 702 calls and executes the instructions or program codes stored in the memory 701, the information processing method determination method provided in the embodiment of the present application can be implemented.
[0139] In another possible implementation, the memory 701 and the processor 702 may also be integrated together.
[0140] The bus 704 may be an extended industry standard architecture (EISA) bus, etc. The bus 704 may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 7 Only one thick line is used in the diagram, but this does not mean that there is only one bus or one type of bus.
[0141] Through the description of the above implementation methods, technical personnel in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional modules is used as an example. In actual applications, the above-mentioned functions can be distributed and completed by different functional modules as needed, that is, the internal structure of the equipment or device is divided into different functional modules to complete all or part of the functions described above.
[0142] The embodiment of the present application also provides a computer-readable storage medium. All or part of the processes in the above-mentioned method embodiment can be completed by computer instructions to instruct the relevant hardware, and the program can be stored in the above-mentioned computer-readable storage medium. When the program is executed, it may include the processes of the above-mentioned method embodiments. The computer-readable storage medium can be the memory or memory of any of the aforementioned embodiments. The above-mentioned computer-readable storage medium can also be an external storage device of the above-mentioned device or apparatus, such as a plug-in hard disk, a smart memory card (smart media card, SMC), a secure digital (secure digital, SD) card, a flash card (flash card), etc. equipped on the above-mentioned device or apparatus. Further, the above-mentioned computer-readable storage medium can also include both the internal storage unit of the above-mentioned device or apparatus and an external storage device. The above-mentioned computer-readable storage medium is used to store the above-mentioned computer program and other programs and data required by the above-mentioned device or apparatus. The above-mentioned computer-readable storage medium can also be used to temporarily store data that has been output or is to be output.
[0143] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program product runs on a computer, it enables the computer to execute any one of the information processing mode determination methods provided in the above embodiments.
[0144] Although the present application is described herein in conjunction with various embodiments, in the process of implementing the claimed application, those skilled in the art may understand and implement other variations of the disclosed embodiments by reviewing the drawings, the disclosure, and the appended claims. In the claims, the word "comprising" does not exclude other components or steps, and "one" or "an" does not exclude multiple components. A single processor or other unit may implement several functions listed in the claims. Certain measures are recorded in different dependent claims, but this does not mean that these measures cannot be combined to produce good results.
[0145] Although the present application has been described with reference to specific features and embodiments thereof, it is apparent that various modifications and combinations may be made thereto without departing from the spirit and scope of the present application. Accordingly, this specification and the drawings are merely illustrative of the present application as defined by the appended claims and are deemed to cover any and all modifications, variations, combinations or equivalents within the scope of the present application. Obviously, those skilled in the art may make various modifications and variations to the present application without departing from the spirit and scope of the present application. Thus, the present application is intended to include such modifications and variations as fall within the scope of the claims of the present application and their equivalents.
[0146] The above is only a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or replacements within the technical scope disclosed in the present application should be included in the scope of protection of the present application. Therefore, the scope of protection of the present application should be based on the scope of protection of the claims.
Claims
1. A path determination method, characterized in that: The method comprises: Acquire a first network topology of the audio and video system, where attribute information of a link in the first network topology includes transmission parameters of the link, and the transmission parameters of the link include a concave parameter, an additive parameter, and a multiplicative parameter; Determining links that satisfy concavity parameter constraints from the first network topology, and generating a second network topology using the links that satisfy the concavity parameter constraints; the second network topology is a simplified version of the first network topology based on the simplified model; Generating a third network topology based on key parameters of the links in the second network topology; wherein the key parameters are the parameters that have the greatest impact on the target service type between the additive parameters and the multiplicative parameters; and the attribute information of the links in the third network topology includes a quantized score determined by the key parameters; Based on the third network topology, determining a plurality of candidate paths; A target path that meets the path selection constraint condition is determined from the multiple candidate paths.
2. The method according to claim 1, characterized in that The concave parameter includes bandwidth; the additive parameter includes cost and / or delay; and the multiplicative parameter includes packet loss rate.
3. The method according to claim 1, characterized in that In a case where the concavity parameter includes a bandwidth, the concavity parameter preset condition includes that the bandwidth is less than a preset threshold.
4. The method according to claim 1, characterized in that Generating a third network topology based on key parameters of links in the second network topology includes: Obtaining a quantitative score of the link based on key parameters of the link; The third network topology is generated by using the structure of the second network topology as the structure of the third network topology and using the quantized scores of the links as the attribute information of the links in the third network topology.
5. The method according to claim 1, characterized in that: The determining of a plurality of candidate paths based on the third network topology includes: Based on the third network topology, determining multiple paths between a first node and a second node, and determining a path score for each of the multiple paths; the path score for each path is obtained based on a quantized score of all links constituting the path; the first node and the second node are any two nodes in the third network topology; Determine top N paths with the smallest path scores from the multiple paths as multiple candidate paths between the second node and the first node, where N is a positive integer greater than 1.
6. The method according to claim 5, characterized in that The multiple paths between the first node and the second node include a first path, which is a shortest path from the first node to the second node.
7. The method according to claim 6, characterized in that The multiple paths between the first node and the second node also include a second path, which is composed of a path from the first node to a deviated node and a shortest path from the deviated node to the second node. The deviated node is any node in the first path except the first node and the second node.
8. The method according to claim 1, characterized in that The determining of a target path satisfying the path selection constraint condition from the multiple candidate paths includes: Acquire transmission parameters of all links constituting the candidate path, and determine the transmission parameters of the candidate path based on the transmission parameters of all links constituting the candidate path; Based on the transmission parameters of the plurality of candidate paths, a target path that meets the path selection constraint condition is determined from the plurality of candidate paths.
9. The method according to claim 8, characterized in that For the concavity parameter, the value of the concavity parameter of the candidate path is equal to the minimum value of the concavity parameters of all links constituting the candidate path; For the additive parameter, the value of the additive parameter of the candidate path is obtained by adding the values of the additive parameters of all links constituting the candidate path; As for the multiplicative parameter, the value of the multiplicative parameter of the candidate path is obtained by multiplying the values of the multiplicative parameters of all links constituting the candidate path.
10. A communication device, characterized in that: include: memory and processor; Memory and processor coupling; The memory is used to store instructions executable by the processor; When the processor executes the instructions, the method according to any one of claims 1 to 9 is performed.
11. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer instructions, and when the computer instructions are executed on a communication device, the communication device is caused to execute the method according to any one of claims 1 to 9.
Citation Information
Patent Citations
Data packet routing method and device, computer equipment and storage medium
CN115987885A