A satellite communication network traffic adaptation method
The satellite communication network traffic adaptation method addresses the challenge of network congestion by predicting and adapting to potential bottlenecks, ensuring efficient and reliable data transmission in high-speed satellite communication networks by utilizing real-time network state awareness and dynamic traffic adjustments.
Patent Information
- Application Number
- CN202410805732.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-21
- Publication Date
- 2025-03-18
- Estimated Expiration
- 2044-06-21
AI Technical Summary
In high-speed satellite communication networks, existing methods fail to adapt to rapid changes in traffic flow, leading to network congestion due to unstable link quality and limited resources, making it difficult to maintain efficient and reliable network control.
A method for satellite communication network traffic adaptation that involves initializing and updating network state information, predicting data transmission needs, and adjusting data packet strategies based on link and node conditions to prevent congestion by identifying and adapting to potential bottlenecks before they occur.
This approach allows for real-time network state awareness and proactive congestion prevention, ensuring efficient and reliable data transmission by dynamically adjusting traffic flow based on current network conditions, thereby preventing sudden rate differences that cause network congestion.
Smart Images

Figure CN118826831B_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the field of space communication, and in particular relates to a satellite communication network flow adaptation method. Background Art
[0002] With the rapid development of aerospace technology and communication technology, space communication has been widely used in today's society. However, due to the instability of space network links, the link quality fluctuates with the change of inter-satellite distance, and the link capacity also changes accordingly. When the high-speed data stream reaches a certain node, the next hop cannot maintain high-speed transmission due to the change of link quality, which will cause network congestion. The available resources of the space network are severely limited, and the links are unstable. How to achieve efficient and reliable network control is an important problem that needs to be solved. However, in large-bandwidth, ultra-high-speed satellite communication networks, existing methods cannot adapt to large-capacity and ultra-high-speed traffic transmission, and cannot cope with sudden network congestion and real-time dynamic changes in space networks.
[0003] Therefore, it is necessary to design an efficient rate adaptation strategy for multi-point collaboration to solve the traffic adaptation problem of “high speed to low speed”. Summary of the invention
[0004] The technical problem to be solved by the present invention is to provide a satellite communication network traffic adaptation method, which can predict network congestion in advance, realize rapid adaptation of traffic, and avoid sudden network congestion caused by rate difference.
[0005] In order to solve the above technical problems, an embodiment of the present invention discloses a satellite communication network traffic adaptation method, the method comprising:
[0006] S1, initializing network status information of the satellite communication network; the network status information includes link flow information, node flow information and feasible link information;
[0007] The satellite communication network includes more than one communication node;
[0008] The link flow information includes the total number of data packets M of the satellite communication network, and the current node of each data packet, the size of the data packet, the service type of the data packet and the number of routing nodes currently flowing through;
[0009] The node traffic information includes the node cache value and the number of node data packets of each communication node;
[0010] The feasible link information includes more than one feasible link and the link topology duration corresponding to each of the feasible links; the feasible link includes a source communication node and a destination communication node;
[0011] S2, sensing the state of the satellite communication network and updating the network state information;
[0012] S3, performing prediction processing based on the network status information to obtain a data transmission volume demand value;
[0013] S4, comparing the data transmission volume requirement value with a preset link load threshold;
[0014] When the data transmission volume requirement value is less than or equal to the link load threshold, executing S2;
[0015] When the data transmission volume requirement value is greater than the link load threshold, executing S5;
[0016] S5, based on the feasible link information, obtaining a link state value set and a feasible routing path set;
[0017] The link state value set includes a link state value of each of the feasible links in the feasible link information;
[0018] S6, processing the link state value set, the feasible routing path set and the network state information to obtain a set of data packet policy sets, and sending the set to the corresponding communication node;
[0019] S7, each of the communication nodes performs data packet processing based on the received data packet strategy set to achieve traffic adaptation of the satellite communication network.
[0020] As an optional implementation manner, in the embodiment of the present invention, sensing the state of the satellite communication network and updating the network state information includes:
[0021] S21, using a preset network node traffic probe to perform traffic sensing on the satellite communication network to obtain current link traffic information and current node traffic information;
[0022] S22, using a preset ground measurement and control station to monitor the topology of the satellite communication network and obtain current feasible link information;
[0023] S23, repeatedly executing S21 to S22 until the link flow information of the network state information is different from the current link flow information, the node flow information of the network state information is different from the current node flow information, or the feasible link information of the network state information is different from the current feasible link information;
[0024] S24, updating the link flow information, the node flow information and the feasible link information of the network status information to the current link flow information, the current node flow information and the current feasible link information, respectively, to obtain the updated network status information.
[0025] As an optional implementation manner, in an embodiment of the present invention, acquiring a link state value set and a feasible routing path set based on the feasible link information includes:
[0026] S51, initializing the set of paths to be selected as an empty set;
[0027] S52, determining the link topology duration of each of the feasible links in the feasible link information in turn;
[0028] When the link topology duration is greater than the preset data frame transmission time, the link state value of the corresponding feasible link in the link state value set is set to 1, and the corresponding feasible link is added to the candidate path set;
[0029] When the link topology duration is less than or equal to the data frame transmission time, the link state value of the corresponding feasible link in the link state value set is set to 0, and the corresponding feasible link is not added to the candidate path set;
[0030] S53: Determine the feasible routing path set as the candidate path set.
[0031] As an optional implementation manner, in an embodiment of the present invention, the processing of the link state value set, the feasible routing path set and the network state information to obtain a set of data packet policy sets and sending them to the corresponding communication node includes:
[0032] S61, initializing the global optimal system utility value and the current iteration number to 0;
[0033] S62, processing the feasible routing path set and the current nodes of the M data packets to obtain a global optimal position and n individual current positions, and a cache state value set and a sending state value set corresponding to each individual current position; n is a preset number of groups;
[0034] The cache state value set and the sending state value set respectively include the cache state value and the sending state value of each data packet;
[0035] S63, processing the network state information and the link state value set, as well as the cache state value set and the sending state value set of each current position of the individual, to obtain a link load constraint judgment value, a node cache constraint judgment value and an individual current system utility value corresponding to each current position of the individual;
[0036] S64, determining the global optimal system utility value and the global optimal position setting based on the link load constraint judgment value and the node cache constraint judgment value;
[0037] S65, updating n individual current positions based on the current number of iterations, the individual current system utility value and the global optimal position;
[0038] S66, adding 1 to the current number of iterations;
[0039] S67, repeatedly executing S62 to S66 until a preset maximum number of iterations is reached, or the absolute value of the difference between the global optimal system utility values obtained twice in succession is less than a preset system utility convergence threshold;
[0040] S68, based on the global optimal position, obtaining the data packet strategy set and sending it to the corresponding communication node.
[0041] As an optional implementation, in an embodiment of the present invention, the set of feasible routing paths and the nodes where the M data packets are currently located are processed to obtain a global optimal position and n individual current positions, and a cache state value set and a sending state value set corresponding to each individual current position, including:
[0042] S621, initializing the data packet index p to 1;
[0043] S622, randomly setting the cache status value of the pth data packet to 0 or 1;
[0044] S623, randomly selecting one of the feasible links from the set of feasible routing paths as an initial feasible link; the source communication node of the initial feasible link is the same as the current node of the pth data packet;
[0045] S624, determining the sending state value of the pth data packet as the destination communication node of the initial feasible link;
[0046] S625, determining the cache status value of the p-th data packet to obtain the data packet position of the p-th data packet;
[0047] When the cache state value of the p-th data packet is 0, determining the data packet position of the p-th data packet to be 0;
[0048] When the cache status value of the p-th data packet is 1, determining the data packet position of the p-th data packet as the sending status value of the p-th data packet;
[0049] S626, adding 1 to the data packet index p, and repeating S622 to S625 M times to obtain the data packet positions of the M data packets;
[0050] S627, determining the current position of the individual, which is a vector formed by the positions of the M data packets;
[0051] S628, repeat S621 to S627 n times to obtain n individual current positions, and the cache state value set and the sending state value set corresponding to each individual current position;
[0052] S629, initializing the global optimal position to any one of the individual current positions.
[0053] As an optional implementation manner, in an embodiment of the present invention, the processing of the network state information and the link state value set, and the cache state value set and the sending state value set of each individual current position to obtain a link load constraint judgment value, a node cache constraint judgment value, and an individual current system utility value corresponding to each individual current position includes:
[0054] S631, presetting a maximum link load rate of each of the feasible links;
[0055] S632, processing the cache state value set, the sending state value set, the link state value set and the data packet size to obtain a link data packet transmission volume of each of the feasible links;
[0056] S633, multiplying the link maximum load rate of each of the feasible links by the corresponding link topology duration to obtain a link maximum load flow value of each of the feasible links;
[0057] S634, comparing the link data packet transmission volume of each of the feasible links with the link maximum load flow value to obtain a link load constraint judgment value;
[0058] When the data packet transmission volume of each link is less than or equal to the corresponding maximum load flow value of the link, determining the link load constraint judgment value to be 1;
[0059] When the data packet transmission amounts of all the links are not all less than or equal to the corresponding maximum flow load value of the link, determining that the link load constraint judgment value is 0;
[0060] S635, processing the link data packet transmission amount, the node cache value and the link state value set to obtain a node cache update value of each of the communication nodes;
[0061] S636, judging each of the node cache update values in turn to obtain a node cache constraint judgment value;
[0062] When all the node cache update values are less than or equal to the node cache threshold of the corresponding communication node, determining that the node cache constraint judgment value is 1;
[0063] When all the node cache update values are not all less than or equal to the node cache threshold of the corresponding communication node, determining that the node cache constraint judgment value is 0;
[0064] S637, process the data packet service type, the number of routing nodes currently flowing through, the data packet size, the cache status value set and the sending status value set to obtain the individual current system utility value.
[0065] As an optional implementation manner, in an embodiment of the present invention, the processing of the cache state value set, the sending state value set, the link state value set, and the data packet size to obtain the link data packet transmission volume of each of the feasible links includes:
[0066] S6321, using an outflow rate calculation model, processing the data packet size, the buffer status value, and the sending status value to obtain an outflow rate;
[0067] The outflow rate calculation model is:
[0068]
[0069] In the formula, The outflow rate of the kth data packet arriving at the ith communication node to the jth communication node; p k,i and a k,i are the data packet size and the cache status value of the kth data packet arriving at the i-th communication node respectively; b i,j is the sending status value of the ith data packet arriving at the jth communication node;
[0070] S6322, using a link data packet transmission volume calculation model, processing the outflow rate and the link state value to obtain the link data packet transmission volume of each of the feasible links;
[0071] The link data packet transmission volume calculation model is:
[0072]
[0073] In the formula, K iis the number of node data packets arriving at the i-th communication node, R i,j and l i,j They are respectively the link data packet transmission volume and the link status value of the feasible link where the source communication node is the i-th communication node and the destination communication node is the j-th communication node.
[0074] As an optional implementation manner, in an embodiment of the present invention, the processing of the link data packet transmission amount, the node cache value and the link state value set to obtain the node cache update value of each of the communication nodes includes:
[0075] S6351, using a node data packet transmission amount calculation model, processing the link data packet transmission amount to obtain a node data packet transmission amount of each of the communication nodes;
[0076] The node data packet transmission amount calculation model is:
[0077]
[0078] Where V is the set of all the communication nodes. is the node data packet sending amount of the i-th communication node, R i,j The link data packet transmission volume of the feasible link where the source communication node is the i-th communication node and the destination communication node is the j-th communication node;
[0079] S6352, using a node data packet reception amount calculation model, processing the link data packet transmission amount to obtain a node data packet reception amount of each of the communication nodes;
[0080] The calculation model of the node data packet reception amount is:
[0081]
[0082] In the formula, is the node data packet reception amount of the i-th communication node, R k,j The link data packet transmission volume of the feasible link where the source communication node is the kth communication node and the destination communication node is the jth communication node;
[0083] S6353, using a node cache update value calculation model, processing the node cache value, the node data packet sending amount, and the node data packet receiving amount to obtain the node cache update value;
[0084] The node cache update value calculation model is:
[0085]
[0086] In the formula, max means taking the maximum value, T i is the node cache update value of the i-th communication node, Q i A node cache value for the i-th communication node.
[0087] As an optional implementation manner, in an embodiment of the present invention, the processing of the data packet service type, the number of routing nodes currently flowing through, the data packet size, the cache state value set, and the sending state value set to obtain the individual current system utility value includes:
[0088] S6371, using the data packet service type of each of the data packets, searching a preset service content priority table to obtain the priority of each of the data packets; the service content priority table includes the priorities corresponding to all the data packet service types;
[0089] S6372, using a data packet rate attenuation coefficient model, processing the priority and the number of routing nodes currently flowing through to obtain a data packet rate attenuation coefficient;
[0090] The data packet rate attenuation coefficient model is:
[0091]
[0092] In the formula, γ k,i and β k,i are the data packet rate attenuation coefficient and the priority of the kth data packet arriving at the i-th communication node, respectively; i is the number of routing nodes currently passed by the i-th communication node;
[0093] S6373, using a system utility calculation model, processing the data packet rate attenuation coefficient, the data packet size, the cache state value, and the sending state value to obtain the individual current system utility value;
[0094] The system utility calculation model is:
[0095]
[0096] Where E is the current system utility value of the individual, p k,i and a k,i are the data packet size and the cache status value of the kth data packet arriving at the i-th communication node respectively; b i,j is the sending status value of the ith data packet arriving at the jth communication node.
[0097] Compared with the prior art, the embodiments of the present invention have the following beneficial effects:
[0098] (1) It can sense the status of the satellite communication network in real time, predict network congestion before data packet transmission, and then determine whether traffic adaptation is needed.
[0099] (2) The network status information of all communication nodes is collaboratively considered to obtain the data packet strategy of each communication node. The algorithm is simple and can achieve rapid adaptation of traffic. BRIEF DESCRIPTION OF THE DRAWINGS
[0100] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0101] Figure 1 The present invention discloses a flow chart of a satellite communication network traffic adaptation method. DETAILED DESCRIPTION
[0102] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0103] The terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish different objects, rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, device, product or equipment that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units that are not listed, or may optionally include other steps or units that are inherent to these processes, methods, products or equipment.
[0104] Reference to "embodiments" herein means that a particular feature, structure, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present invention. The appearance of the phrase in various places in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.
[0105] Embodiment 1
[0106] See also Figure 1 , Figure 1 1 is a flow chart of a satellite communication network traffic adaptation method disclosed in an embodiment of the present invention. Figure 1 The satellite communication network traffic adaptation method described is applied to the field of space communication, such as satellite network communication in the terahertz frequency band, and the embodiments of the present invention are not limited thereto. Figure 1 As shown, the satellite communication network traffic adaptation method may include the following operations:
[0107] S1, initializing network status information of the satellite communication network; the network status information includes link flow information, node flow information and feasible link information;
[0108] The satellite communication network includes more than one communication node;
[0109] Optionally, the communication node is a ground tracking and control station, a satellite or an aircraft;
[0110] The link traffic information includes the total number of data packets M in the satellite communication network, the current node of each data packet, the size of the data packet, the service type of the data packet and the number of routing nodes currently flowing through;
[0111] The above node traffic information includes the node cache value and the number of node data packets of each communication node;
[0112] The feasible link information includes more than one feasible link and the link topology duration corresponding to each feasible link; the feasible link includes a source communication node and a destination communication node;
[0113] It should be noted that the above-mentioned source communication node and destination communication node are respectively the communication node where the data packet is currently located and the communication node to be delivered in the corresponding feasible link;
[0114] Optionally, the link flow information, node flow information and feasible link information of the above network status information are all initialized to empty;
[0115] S2, senses the status of the satellite communication network and updates the network status information;
[0116] S3, performing prediction processing based on network status information to obtain a data transmission volume demand value;
[0117] S4, comparing the data transmission volume requirement value with a preset link load threshold;
[0118] When the data transmission demand value is less than or equal to the link load threshold, execute S2;
[0119] When the data transmission demand value is greater than the link load threshold, execute S5;
[0120] It should be noted that when the data transmission demand value is greater than the link load threshold, it indicates that the satellite communication network is congested, otherwise, no congestion occurs;
[0121] S5, based on the feasible link information, obtaining a link state value set and a feasible routing path set;
[0122] The link state value set includes the link state value of each feasible link in the feasible link information;
[0123] S6, processing the link state value set, the feasible routing path set and the network state information to obtain a set of data packet policies, and sending them to the corresponding communication node;
[0124] S7, each communication node performs data packet processing based on the received data packet strategy set to achieve traffic adaptation of the satellite communication network.
[0125] It should be noted that, during the operation of the above-mentioned satellite communication network, continuous adaptation of the satellite communication network traffic is achieved through repeated execution of steps S2 to S7.
[0126] In an optional embodiment, the sensing of the state of the satellite communication network and updating of the network state information include:
[0127] S21, using a preset network node traffic probe to sense the traffic of the satellite communication network, and obtain current link traffic information and current node traffic information;
[0128] S22, using a preset ground measurement and control station, monitoring the topology of the satellite communication network to obtain current feasible link information;
[0129] S23, repeatedly executing S21 to S22 until the link flow information of the network state information is different from the current link flow information, the node flow information of the network state information is different from the current node flow information, or the feasible link information of the network state information is different from the current feasible link information;
[0130] S24, updating the link flow information, node flow information and feasible link information of the network state information to the current link flow information, the current node flow information and the current feasible link information, respectively, to obtain the updated network state information.
[0131] In another optional embodiment, the above-mentioned prediction processing based on the network status information to obtain the data transmission volume requirement value includes:
[0132] S31, obtaining the current nodes of all data packets in the link flow information of the network status information to obtain a node set;
[0133] S32, obtaining all feasible links in the feasible link information of the network state information to obtain an edge set;
[0134] S33, combining the node set and the edge set into a network topology graph;
[0135] S34, using the traffic prediction model, processing the network topology map to obtain a data transmission demand value.
[0136] Optionally, the traffic prediction model includes a graph convolutional neural network (GCN) layer, a gated recurrent unit (GRU) layer and a self-attention mechanism layer; the input end of the GCN layer receives a network topology map; the output end of the GCN layer is connected to the input end of the GRU layer; the output end of the GRU layer is connected to the input end of the self-attention layer; the output end of the self-attention layer outputs a data transmission demand value.
[0137] It should be noted that the above-mentioned GCN layer reconstructs the spatial features of the network topology map, and inputs the spatially reconstructed data into the GRU layer for temporal feature update. Finally, the self-attention mechanism layer is used for integration and weighted average operation to achieve data fusion and output the predicted data transmission demand value.
[0138] In yet another optional embodiment, the acquiring of the link state value set and the feasible routing path set based on the feasible link information includes:
[0139] S51, initializing the set of paths to be selected to an empty set;
[0140] S52, determining the link topology duration of each feasible link in the feasible link information in turn;
[0141] When the link topology duration is greater than the preset data frame transmission time, the link state value of the corresponding feasible link in the link state value set is set to 1, and the corresponding feasible link is added to the candidate path set;
[0142] When the link topology duration is less than or equal to the data frame transmission time, the link state value of the corresponding feasible link in the link state value set is set to 0, and the corresponding feasible link is not added to the candidate path set;
[0143] S53: Determine a feasible routing path set as a candidate path set.
[0144] In this optional embodiment, as an optional implementation, the link state value set, the feasible routing path set and the network state information are processed to obtain a set of data packet policy sets, and sent to the corresponding communication node, including:
[0145] S61, initializing the global optimal system utility value and the current iteration number to 0;
[0146] S62, processing the feasible routing path set and the nodes where the M data packets are currently located, obtaining the global optimal position and n individual current positions, and a cache state value set and a sending state value set corresponding to each individual current position; n is a preset number of groups;
[0147] The above-mentioned cache state value set and sending state value set respectively include the cache state value and sending state value of each data packet;
[0148] S63, processing the network state information and the link state value set, as well as the cache state value set and the sending state value set of each individual's current position, to obtain the link load constraint judgment value, the node cache constraint judgment value and the individual's current system utility value corresponding to each individual's current position;
[0149] S64, determining a global optimal system utility value and a global optimal position setting based on the link load constraint judgment value and the node cache constraint judgment value;
[0150] S65, based on the current number of iterations, the individual current system utility value and the global best position, updating the current positions of n individuals;
[0151] S66, adding 1 to the current number of iterations;
[0152] S67, repeatedly executing S62 to S66 until a preset maximum number of iterations is reached, or the absolute value of the difference between two consecutive global optimal system utility values is less than a preset system utility convergence threshold;
[0153] S68, based on the global optimal position, obtain a data packet strategy set and send it to the corresponding communication node.
[0154] In this optional embodiment, as an optional implementation, the above processing of the feasible routing path set and the current nodes of the M data packets to obtain the global optimal position and n individual current positions, and the cache state value set and the sending state value set corresponding to each individual current position, including:
[0155] S621, initializing the data packet index p to 1;
[0156] S622, randomly set the cache status value of the pth data packet to 0 or 1;
[0157] S623, randomly selecting a feasible link from the feasible routing path set as an initial feasible link; the source communication node of the initial feasible link is the same as the current node of the pth data packet;
[0158] S624, determining the sending state value of the pth data packet as the destination communication node of the initial feasible link;
[0159] S625, judging the cache status value of the p-th data packet to obtain the data packet position of the p-th data packet;
[0160] When the cache state value of the p-th data packet is 0, the data packet position of the p-th data packet is determined to be 0;
[0161] When the cache state value of the p-th data packet is 1, the data packet position of the p-th data packet is determined as the sending state value of the p-th data packet;
[0162] S626, adding 1 to the data packet index p, and repeating S622 to S625 M times to obtain the data packet positions of the M data packets;
[0163] S627, determining the current position of the individual, which is a vector formed by the positions of M data packets;
[0164] S628, repeat S621 to S627 n times to obtain n individual current positions, and a cache state value set and a sending state value set corresponding to each individual current position;
[0165] It should be noted that the order of the above data packet positions in the individual current position remains consistent in each cycle;
[0166] S629, initializing the global optimal position to the current position of any individual.
[0167] In another optional embodiment, the network state information and link state value set, as well as the cache state value set and the transmission state value set of each individual current position are processed to obtain the link load constraint judgment value, the node cache constraint judgment value and the individual current system utility value corresponding to each individual current position, including:
[0168] S631, presetting the maximum link load rate of each feasible link;
[0169] S632, processing the cache state value set, the sending state value set, the link state value set and the data packet size to obtain the link data packet transmission volume of each feasible link;
[0170] S633, multiplying the link maximum load rate of each feasible link by the corresponding link topology duration to obtain the link maximum load flow value of each feasible link;
[0171] S634, comparing the link data packet transmission volume of each feasible link with the link maximum load flow value to obtain a link load constraint judgment value;
[0172] When the data packet transmission volume of each link is less than or equal to the corresponding link maximum load flow value, the link load constraint judgment value is determined to be 1;
[0173] When the transmission amount of all link data packets is not less than or equal to the corresponding link maximum flow load value, the link load constraint judgment value is determined to be 0;
[0174] S635, processing the link data packet transmission amount, the node cache value and the link state value set to obtain a node cache update value of each communication node;
[0175] S636, judging each node cache update value in turn to obtain a node cache constraint judgment value;
[0176] When all node cache update values are less than or equal to the node cache threshold of the corresponding communication node, the node cache constraint judgment value is determined to be 1;
[0177] When all node cache update values are not all less than or equal to the node cache threshold of the corresponding communication node, the node cache constraint judgment value is determined to be 0;
[0178] It should be noted that the node cache threshold of each communication node mentioned above is a preset value;
[0179] S637, process the data packet service type, the number of routing nodes currently flowing through, the data packet size, the cache state value set and the sending state value set to obtain the individual current system utility value.
[0180] In yet another optional embodiment, the cache state value set, the sending state value set, the link state value set and the data packet size are processed to obtain the link data packet transmission volume of each feasible link, including:
[0181] S6321, using an outflow rate calculation model, processing the data packet size, the cache state value, and the sending state value to obtain an outflow rate;
[0182] The above outflow rate calculation model is:
[0183]
[0184] In the formula, is the outflow rate of the kth data packet arriving at the ith communication node to the jth communication node; p k,i and a k,i are the packet size and cache status value of the kth packet arriving at the i-th communication node; b i,j is the sending status value of the i-th data packet arriving at the j-th communication node;
[0185] S6322, using a link data packet transmission volume calculation model, processing the outflow rate and the link state value to obtain a link data packet transmission volume of each feasible link;
[0186] The calculation model of the above link data packet transmission volume is:
[0187]
[0188] In the formula, K i is the number of node data packets arriving at the i-th communication node, R i,j and l i,j They are respectively the link data packet transmission volume and link state value of the feasible link whose source communication node is the i-th communication node and whose destination communication node is the j-th communication node.
[0189] In yet another optional embodiment, the above processing of the link data packet transmission amount, the node cache value and the link state value set to obtain the node cache update value of each communication node includes:
[0190] S6351, using a node data packet sending amount calculation model, processing the link data packet transmission amount to obtain a node data packet sending amount of each communication node;
[0191] The calculation model of the above node data packet sending volume is:
[0192]
[0193] In the formula, V is the set of all communication nodes, is the node data packet sending amount of the i-th communication node, R i,j is the link data packet transmission volume of the feasible link whose source communication node is the i-th communication node and whose destination communication node is the j-th communication node;
[0194] S6352, using a node data packet reception amount calculation model, processing the link data packet transmission amount to obtain a node data packet reception amount of each communication node;
[0195] The calculation model of the above node data packet reception volume is:
[0196]
[0197] In the formula, is the node data packet reception amount of the i-th communication node, R k,j is the link data packet transmission volume of the feasible link whose source communication node is the kth communication node and whose destination communication node is the jth communication node;
[0198] S6353, using a node cache update value calculation model, processing the node cache value, the node data packet sending amount, and the node data packet receiving amount to obtain a node cache update value;
[0199] The calculation model of the above node cache update value is:
[0200]
[0201] In the formula, max means taking the maximum value, T i Update the node cache value of the i-th communication node, Q i Node cache value for the i-th communicating node.
[0202] In yet another optional embodiment, the above processing of the data packet service type, the number of routing nodes currently flowing through, the data packet size, the cache state value set and the sending state value set to obtain the individual current system utility value includes:
[0203] S6371, using the data packet service type of each data packet, searching a preset service content priority table to obtain the priority of each data packet; the service content priority table includes priorities corresponding to all data packet service types;
[0204] S6372, using a data packet rate attenuation coefficient model, processing the priority and the number of routing nodes currently flowing through to obtain a data packet rate attenuation coefficient;
[0205] The above packet rate attenuation coefficient model is:
[0206]
[0207] In the formula, γ k,i and β k,i are the packet rate attenuation coefficient and priority of the kth packet arriving at the i-th communication node; h i is the number of routing nodes currently passed by the i-th communication node;
[0208] S6373, using a system utility calculation model, processing the packet rate attenuation coefficient, the packet size, the cache state value, and the sending state value to obtain an individual current system utility value;
[0209] The utility calculation model of the above system is:
[0210]
[0211] In the formula, E is the individual's current system utility value, p k,i and a k,i are the packet size and cache status value of the kth packet arriving at the i-th communication node; b i,j is the sending status value of the i-th data packet arriving at the j-th communication node.
[0212] In yet another optional embodiment, the determining of the global optimal system utility value and the global optimal location setting based on the link load constraint judgment value and the node cache constraint judgment value includes:
[0213] S641, initializing the number of determinations mm to 0;
[0214] S642, judging the link load constraint judgment value and the node cache constraint judgment value corresponding to the current position of the mth individual;
[0215] When the link load constraint judgment value and the node cache constraint judgment value are both 1, the global optimal system utility value is determined to be the individual current system utility value, and the global optimal position is determined to be set to the mmth individual current position; the end flag is determined to be yes; and S644 is executed;
[0216] When the link load constraint judgment value and the node cache constraint judgment value are not all 1, the global optimal system utility value and the global optimal position remain unchanged; the end flag is determined to be no;
[0217] S643, adding 1 to the number of determinations mm;
[0218] S644, repeat S642 to S643 until the end flag is yes, or mm is equal to n.
[0219] In yet another optional embodiment, the above updating of n individual current positions based on the current number of iterations, the individual current system utility value and the global optimal position includes:
[0220] S651, judging the current number of iterations;
[0221] When the current number of iterations is 0, the best positions of n individuals and the best system utility values of n individuals are initialized to the current positions of n individuals and the current system utility values of n individuals, respectively, and the speeds of n individuals are initialized to 0;
[0222] When the current number of iterations is not 0, the best positions of n individuals, the best system utility values of n individuals, and the speeds of n individuals remain unchanged;
[0223] It should be noted that the individual best position, the individual best system utility value and the individual current system utility value all correspond to the individual current position one by one, that is, the n1th individual best position, the individual best system utility value and the individual current system utility value all correspond to the n1th individual current position; the above n1 is greater than 1 and less than n;
[0224] S652, setting the first coefficient ξ and the second coefficient η to random values;
[0225] S653, respectively comparing each individual current system utility value with the corresponding individual optimal system utility value, and updating the corresponding individual optimal position and individual optimal system utility value;
[0226] When the individual current system utility value is greater than the corresponding individual optimal system utility value, the corresponding individual optimal position and individual optimal system utility value are updated to the corresponding individual current position and individual current system utility value respectively;
[0227] When the individual current system utility value is less than or equal to the corresponding individual optimal system utility value, the corresponding individual optimal position and individual optimal system utility value remain unchanged;
[0228] S654, using the individual speed update model, processing the individual current position, the individual best position and the global best position, and updating n individual speeds respectively;
[0229] The above individual speed update model is:
[0230]
[0231] In the formula, v q and are the qth individual speeds before and after the update, respectively; x q is the current position of the qth individual; pbest q is the qth individual optimal system utility value; gbest is the global optimal position, ω, c1 and c2 are the preset inertia weight, the first acceleration and the second acceleration respectively;
[0232] S656, using the position update model, respectively updating the current positions of n individuals;
[0233] The above position update model is:
[0234]
[0235] In the formula, x q and are the current positions of the qth individual before and after the update, respectively, and [] is a rounding operation.
[0236] In yet another optional embodiment, the above-mentioned obtaining a data packet strategy set based on the global optimal position and sending it to a corresponding communication node includes:
[0237] S681, based on the current node of the corresponding data packet, merge all data packet positions at the global optimal position to obtain M1 target strategies;
[0238] It should be noted that the above M1 is the number of different current nodes of the M data packets; the above target strategy includes the current node and a data packet strategy set; the above data packet strategy set includes a group of data packet strategies; the above data packet strategy includes a data packet number and a data packet target position; the above data packet target position is the data packet position corresponding to the data packet numbered as the above data packet number in the global optimal position;
[0239] S682, sending the data packet policy sets of M1 target policies to the communication nodes numbered as the corresponding current node numbers respectively.
[0240] It should be noted that the above M1 is less than or equal to M, that is, not all communication nodes will receive the corresponding data packet policy set.
[0241] In yet another optional embodiment, each of the above communication nodes performs data packet processing based on the received data packet policy set, including:
[0242] S71, initializing the number of loops n2 to 1;
[0243] S72, respectively obtaining the data packet number and the data packet target position of the n2th data packet policy in the data packet policy set, and obtaining the current number and the current target position;
[0244] S73, determining the current target position;
[0245] When the current target position is 0, the communication node caches the data packet numbered as the current number;
[0246] When the current target position is not 0, the communication node sends the data packet numbered as the current number to the communication node numbered as the current target position;
[0247] S74, increase the number of loops n2 by 1;
[0248] S75, repeat S72 to S74 until the number of loops n2 is greater than the number of elements in the data packet policy set.
[0249] It should be noted that a communication node that has not received the data packet policy set does not need to process the data packet.
[0250] It can be seen that the implementation of the satellite communication network traffic adaptation method described in the embodiment of the present invention can perceive the status of the satellite communication network in real time in a dynamically changing satellite communication network, predict network congestion before data packet transmission, and then determine whether traffic adaptation is needed; in addition, the method proposed in the present invention collaboratively considers the network status information of all communication nodes, obtains the data packet strategy of each communication node, has a simple algorithm, can achieve rapid adaptation of traffic, and avoid sudden network congestion caused by rate differences.
[0251] The embodiments described above are only illustrative, wherein the modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules, i.e., they may be located in one place, or they may be distributed on multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Those of ordinary skill in the art may understand and implement it without paying creative labor.
[0252] Through the specific description of the above embodiments, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, it can also be implemented by hardware. Based on such an understanding, the above technical solution can be essentially or partly contributed to the prior art in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, and the storage medium includes a read-only memory (ROM), a random access memory (RAM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), a one-time programmable read-only memory (OTPROM), an electronically erasable rewritable read-only memory (EEPROM), a compact disc (CD-ROM) or other optical disc storage, a magnetic disk storage, a magnetic tape storage, or any other computer-readable medium that can be used to carry or store data.
[0253] Finally, it should be noted that the satellite communication network traffic adaptation method disclosed in the embodiment of the present invention discloses only a preferred embodiment of the present invention, which is only used to illustrate the technical solution of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that the technical solutions described in the aforementioned embodiments can still be modified, or some of the technical features therein can be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present invention.
Claims
1. A satellite communication network traffic adaptation method, characterized in that: include: S1, initializing network status information of the satellite communication network; The network status information includes link flow information, node flow information and feasible link information; The satellite communication network includes more than one communication node; The link flow information includes the total number of data packets M of the satellite communication network, and the current node of each data packet, the size of the data packet, the service type of the data packet and the number of routing nodes currently flowing through; The node traffic information includes the node cache value and the number of node data packets of each communication node; The feasible link information includes more than one feasible link and a link topology duration corresponding to each feasible link; The feasible link includes a source communication node and a destination communication node; S2, sensing the state of the satellite communication network and updating the network state information; S3, performing prediction processing based on the network status information to obtain a data transmission volume demand value; S4, comparing the data transmission volume requirement value with a preset link load threshold; When the data transmission volume requirement value is less than or equal to the link load threshold, executing S2; When the data transmission volume requirement value is greater than the link load threshold, executing S5; S5, based on the feasible link information, obtaining a link state value set and a feasible routing path set; The link state value set includes a link state value of each of the feasible links in the feasible link information; S6, processing the link state value set, the feasible routing path set and the network state information to obtain a set of data packet policy sets, and sending the set to the corresponding communication node; S7, each of the communication nodes performs data packet processing based on the received data packet strategy set to achieve traffic adaptation of the satellite communication network.
2. The satellite communication network traffic adaptation method according to claim 1, characterized in that: The sensing of the state of the satellite communication network and updating of the network state information comprises: S21, using a preset network node traffic probe to sense the traffic of the satellite communication network to obtain current link traffic information and current node traffic information; S22, using a preset ground measurement and control station to monitor the topology of the satellite communication network and obtain current feasible link information; S23, repeatedly executing S21 to S22 until the link flow information of the network state information is different from the current link flow information, the node flow information of the network state information is different from the current node flow information, or the feasible link information of the network state information is different from the current feasible link information; S24, updating the link flow information, the node flow information and the feasible link information of the network status information to the current link flow information, the current node flow information and the current feasible link information, respectively, to obtain the updated network status information.
3. The satellite communication network traffic adaptation method according to claim 1, characterized in that: The acquiring, based on the feasible link information, a link state value set and a feasible routing path set comprises: S51, initializing the set of paths to be selected to an empty set; S52, determining the link topology duration of each of the feasible links in the feasible link information in turn; When the link topology duration is greater than the preset data frame transmission time, the link state value of the corresponding feasible link in the link state value set is set to 1, and the corresponding feasible link is added to the candidate path set; When the link topology duration is less than or equal to the data frame transmission time, the link state value of the corresponding feasible link in the link state value set is set to 0, and the corresponding feasible link is not added to the candidate path set; S53: Determine the feasible routing path set as the candidate path set.
4. The satellite communication network traffic adaptation method according to claim 1, characterized in that: The processing of the link state value set, the feasible routing path set and the network state information to obtain a set of data packet policy sets and sending the set of data packet policy sets to the corresponding communication nodes includes: S61, initializing the global optimal system utility value and the current iteration number to 0; S62, processing the feasible routing path set and the current nodes of the M data packets to obtain a global optimal position and n individual current positions, and a cache state value set and a sending state value set corresponding to each individual current position; n is a preset number of groups; The cache state value set and the sending state value set respectively include the cache state value and the sending state value of each data packet; S63, processing the network state information and the link state value set, as well as the cache state value set and the sending state value set of each current position of the individual, to obtain a link load constraint judgment value, a node cache constraint judgment value and an individual current system utility value corresponding to each current position of the individual; S64, determining the global optimal system utility value and the global optimal position setting based on the link load constraint judgment value and the node cache constraint judgment value; S65, updating n individual current positions based on the current number of iterations, the individual current system utility value and the global optimal position; S66, adding 1 to the current number of iterations; S67, repeatedly executing S62 to S66 until a preset maximum number of iterations is reached, or the absolute value of the difference between the global optimal system utility values obtained twice in succession is less than a preset system utility convergence threshold; S68, based on the global optimal position, obtaining the data packet strategy set and sending it to the corresponding communication node.
5. The satellite communication network traffic adaptation method according to claim 4, characterized in that: The processing of the feasible routing path set and the current nodes of the M data packets to obtain a global optimal position and n individual current positions, and a cache state value set and a sending state value set corresponding to each individual current position includes: S621, initializing the data packet index p to 1; S622, randomly setting the cache status value of the pth data packet to 0 or 1; S623, randomly selecting one of the feasible links from the set of feasible routing paths as an initial feasible link; the source communication node of the initial feasible link is the same as the current node of the pth data packet; S624, determining the sending state value of the pth data packet as the destination communication node of the initial feasible link; S625, determining the cache status value of the p-th data packet to obtain the data packet position of the p-th data packet; When the cache state value of the p-th data packet is 0, determining the data packet position of the p-th data packet to be 0; When the cache status value of the p-th data packet is 1, determining the data packet position of the p-th data packet as the sending status value of the p-th data packet; S626, adding 1 to the data packet index p, and repeating S622 to S625 M times to obtain the data packet positions of the M data packets; S627, determining the current position of the individual, which is a vector formed by the positions of the M data packets; S628, repeat S621 to S627 n times to obtain n individual current positions, and the cache state value set and the sending state value set corresponding to each individual current position; S629, initializing the global optimal position to any one of the individual current positions.
6. The satellite communication network traffic adaptation method according to claim 4, characterized in that: The processing of the network state information and the link state value set, and the cache state value set and the sending state value set of each individual current position to obtain a link load constraint judgment value, a node cache constraint judgment value and an individual current system utility value corresponding to each individual current position includes: S631, presetting a maximum link load rate of each of the feasible links; S632, processing the cache state value set, the sending state value set, the link state value set and the data packet size to obtain a link data packet transmission volume of each of the feasible links; S633, multiplying the link maximum load rate of each of the feasible links by the corresponding link topology duration to obtain a link maximum load flow value of each of the feasible links; S634, comparing the link data packet transmission volume of each of the feasible links with the link maximum load flow value to obtain a link load constraint judgment value; When the data packet transmission volume of each link is less than or equal to the corresponding maximum load flow value of the link, determining the link load constraint judgment value to be 1; When the data packet transmission amounts of all the links are not all less than or equal to the corresponding maximum flow load value of the link, determining that the link load constraint judgment value is 0; S635, processing the link data packet transmission amount, the node cache value and the link state value set to obtain a node cache update value of each of the communication nodes; S636, judging each of the node cache update values in turn to obtain a node cache constraint judgment value; When all the node cache update values are less than or equal to the node cache threshold of the corresponding communication node, determining that the node cache constraint judgment value is 1; When all the node cache update values are not all less than or equal to the node cache threshold of the corresponding communication node, determining that the node cache constraint judgment value is 0; S637, process the data packet service type, the number of routing nodes currently flowing through, the data packet size, the cache status value set and the sending status value set to obtain the individual current system utility value.
7. The satellite communication network traffic adaptation method according to claim 6, characterized in that: The step of processing the cache state value set, the sending state value set, the link state value set, and the data packet size to obtain a link data packet transmission amount of each of the feasible links includes: S6321, using an outflow rate calculation model, processing the data packet size, the buffer status value, and the sending status value to obtain an outflow rate; The outflow rate calculation model is: In the formula, The outflow rate of the kth data packet arriving at the ith communication node to the jth communication node; p k,i and a k,i are the data packet size and the cache status value of the kth data packet arriving at the i-th communication node respectively; b i,j is the sending status value of the ith data packet arriving at the jth communication node; S6322, using a link data packet transmission volume calculation model, processing the outflow rate and the link state value to obtain the link data packet transmission volume of each of the feasible links; The link data packet transmission volume calculation model is: In the formula, K i is the number of node data packets arriving at the i-th communication node, R i,j and l i,j They are respectively the link data packet transmission volume and the link status value of the feasible link where the source communication node is the i-th communication node and the destination communication node is the j-th communication node.
8. The satellite communication network traffic adaptation method according to claim 6, characterized in that: The processing of the link data packet transmission amount, the node cache value and the link state value set to obtain a node cache update value of each communication node includes: S6351, using a node data packet transmission amount calculation model, processing the link data packet transmission amount to obtain a node data packet transmission amount of each of the communication nodes; The node data packet transmission amount calculation model is: Where V is the set of all the communication nodes. is the node data packet sending amount of the i-th communication node, R i,j The link data packet transmission volume of the feasible link where the source communication node is the i-th communication node and the destination communication node is the j-th communication node; S6352, using a node data packet reception amount calculation model, processing the link data packet transmission amount to obtain a node data packet reception amount of each of the communication nodes; The calculation model of the node data packet reception amount is: In the formula, is the node data packet reception amount of the i-th communication node, R k,j The link data packet transmission volume of the feasible link where the source communication node is the kth communication node and the destination communication node is the jth communication node; S6353, using a node cache update value calculation model, processing the node cache value, the node data packet sending amount, and the node data packet receiving amount to obtain the node cache update value; The node cache update value calculation model is: In the formula, max means taking the maximum value, T i is the node cache update value of the i-th communication node, Q i A node cache value for the i-th communication node.
9. The satellite communication network traffic adaptation method according to claim 6, characterized in that: The processing of the data packet service type, the number of routing nodes currently flowing through, the data packet size, the cache state value set, and the sending state value set to obtain the individual current system utility value includes: S6371, using the data packet service type of each of the data packets, searching a preset service content priority table to obtain the priority of each of the data packets; the service content priority table includes the priorities corresponding to all the data packet service types; S6372, using a data packet rate attenuation coefficient model, processing the priority and the number of routing nodes currently flowing through to obtain a data packet rate attenuation coefficient; The data packet rate attenuation coefficient model is: In the formula, γ k,i and β k,i are the data packet rate attenuation coefficient and the priority of the kth data packet arriving at the i-th communication node, respectively; i is the number of routing nodes currently passed by the i-th communication node; S6373, using a system utility calculation model, processing the data packet rate attenuation coefficient, the data packet size, the cache state value, and the sending state value to obtain the individual current system utility value; The system utility calculation model is: Where E is the current system utility value of the individual, p k,i and a k,i are the data packet size and the cache status value of the kth data packet arriving at the i-th communication node respectively; b i,j is the sending status value of the ith data packet arriving at the jth communication node.
Citation Information
Patent Citations
Flow scheduling method and device, server and storage medium
CN111432247A
Satellite network adaptive traffic scheduling method based on deep supervised learning
CN114629543A