A communication scheduling method, device and storage medium
Through periodic message transmission and mapping relationship management between nodes in B5G and 6G networks, the problem that traditional IP forwarding cannot meet the deterministic service requirements is solved, and the deterministic scheduling and transmission of messages in the network is realized.
Patent Information
- Application Number
- CN202011147238.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-10-23
- Publication Date
- 2025-02-25
- Estimated Expiration
- 2040-10-23
AI Technical Summary
In the future, in the fifth generation of mobile communications (B5G) and sixth generation of mobile communications (6G), the deterministic service capability requirements are difficult to achieve through traditional IP forwarding, especially in industrial control, telemedicine and other scenarios, traditional IP forwarding cannot meet the strict Deterministic service requirements.
By periodically sending and receiving specific messages between nodes, including periodic information and mapping modes, the periodic mapping relationship is managed and maintained to ensure deterministic transmission of messages in the network.
It realizes deterministic scheduling and transmission of packets in B5G and 6G networks, meets strict service level agreement (SLA) requirements, and improves the reliability and stability of the network.
Smart Images

Figure CN114500163B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of networks, and in particular to a communication scheduling method, device, communication equipment and storage medium. Background Art
[0002] In specific scenarios of the future fifth-generation mobile communications (B5G, Beyond5thGeneration) / sixth-generation mobile communications (6G, 6thGeneration), such as industrial control, telemedicine, and holographic communications, strict deterministic service capability requirements are put forward, which cannot be met by traditional IP forwarding. Therefore, the Deterministic Internet Protocol (DIP, Deterministic IP) network has become an important development trend of future networks, and the above-mentioned deterministic service capability requirements have also put forward new requirements for the message scheduling of the DIP network. Summary of the invention
[0003] In view of this, the main purpose of the present invention is to provide a communication scheduling method, apparatus, communication equipment and storage medium.
[0004] To achieve the above object, the technical solution of the present invention is achieved as follows:
[0005] An embodiment of the present invention provides a communication scheduling method, which is applied to a first node. The method includes:
[0006] A first message is sent periodically; the first message is at least used to identify the start of a corresponding period of the first node.
[0007] In the above solution, the first message includes first cycle information; the first cycle information includes at least one of the following:
[0008] First cycle quantity, first cycle identifier, first cycle length, first mapping mode, second mapping mode, reserved field, cycle sequence number, and maximum transmission unit (MTU) message limit.
[0009] In the above solution, the first message is an extended protocol message or a specific virtual local area network (VLAN, Virtual Local Area Network) message.
[0010] The embodiment of the present invention further provides a communication scheduling method, which is applied to a second node, and the method includes:
[0011] A first message is periodically received from a first node; the first message is at least used to identify the start of a corresponding period of the first node.
[0012] In the above solution, the first message includes first period information corresponding to the first node; the first period information includes at least one of the following:
[0013] First cycle quantity, first cycle identifier, first cycle length, first mapping mode, second mapping mode, reserved field, cycle sequence number, and limited MTU message;
[0014] The second node has cycle-related information; the cycle-related information includes at least one of the following:
[0015] Second cycle number, second cycle length, third mapping mode, reserved field.
[0016] In the above scheme, the method further includes:
[0017] When the second node has the first mapping relationship, determining that the first period information corresponds to period related information of the second node, and determining that the information can be correctly transmitted;
[0018] Corresponding to the second node not having the first mapping relationship, determining the first mapping relationship of the second node based on the first cycle identifier and the cycle of receiving the first message;
[0019] The first mapping relationship represents the relationship between a sending period of a second node sending a message and a sending period of a first node upstream along a specific link sending a message.
[0020] In the above solution, the first period information corresponds to the period related information of the second node, and includes at least one of the following:
[0021] The first cycle quantity is consistent with the second cycle quantity;
[0022] The first cycle length is consistent with the second cycle length;
[0023] The first mapping mode in the first cycle information is consistent with the third mapping mode in the cycle related information;
[0024] The cycle sequence numbers in the first cycle information are continuous.
[0025] In the above scheme, the method further includes:
[0026] Corresponding to the second node having the first mapping relationship, receiving a data message; the data message carries a period identifier of the data message;
[0027] Determine a sending period of the data message based on a period identifier of the data message and a first mapping relationship between the second node;
[0028] The sending period represents a period at which the second node sends the data message.
[0029] In the above scheme, the period of receiving the first message includes: completing a first receiving period of receiving data messages related to the first message and starting a second receiving period of receiving the first message; the related data message represents a data message sent by the first node that sends the first message in the corresponding sending period;
[0030] The determining, based on the first cycle information and the cycle of receiving the first message, a first mapping relationship and a sending cycle includes:
[0031] Using a period after the first receiving period as the sending period; or using a period at least one period after the second receiving period as the sending period;
[0032] A first mapping relationship is established between the determined sending cycle and the first cycle identifier.
[0033] In the above solution, the method further includes: updating the first mapping relationship in response to satisfying a periodic update condition;
[0034] The periodic update condition includes at least one of the following:
[0035] The receiving period corresponding to at least one second message is different from the first receiving period corresponding to the first message; the second message represents a subsequent message periodically sent from the first node after the first message is sent;
[0036] The first message or the second message is not received in at least one receiving period;
[0037] The interface of the second node is disconnected.
[0038] The first message is received for the first time.
[0039] In the above solution, the corresponding message is an extended protocol message or a specific VLAN message.
[0040] An embodiment of the present invention provides a communication scheduling device, which includes: a first sending module, which is used to periodically send a first message; the first message is at least used to identify the start of a corresponding period of a first node.
[0041] In the above solution, the first message includes first cycle information; the first cycle information includes at least one of the following:
[0042] First cycle quantity, first cycle identifier, first cycle length, first mapping mode, second mapping mode, reserved field, cycle sequence number, and limited MTU message.
[0043] In the above solution, the first message is an extended protocol message or a specific VLAN message.
[0044] An embodiment of the present invention provides a communication scheduling device, characterized in that the device includes: a first receiving module, used to periodically receive a first message from a first node; the first message is at least used to identify the start of a corresponding period of the first node.
[0045] In the above solution, the first message includes first period information corresponding to the first node; the first period information includes at least one of the following:
[0046] First cycle quantity, first cycle identifier, first cycle length, first mapping mode, second mapping mode, reserved field, cycle sequence number, and limited MTU message;
[0047] The second node has cycle-related information; the cycle-related information includes at least one of the following:
[0048] Second cycle number, second cycle length, third mapping mode, reserved field.
[0049] In the above scheme, the device further includes: a second processing module; the second processing module is used to determine that the first period information corresponds to the period related information of the second node when the second node has the first mapping relationship, and determine that it can be correctly transmitted;
[0050] Corresponding to the second node not having the first mapping relationship, determining the first mapping relationship of the second node based on the first cycle identifier and the cycle of receiving the first message;
[0051] The first mapping relationship represents the relationship between a sending period of a second node sending a message and a sending period of a first node upstream along a specific link sending a message.
[0052] In the above solution, the first period information corresponds to the period related information of the second node, and includes at least one of the following:
[0053] The first cycle quantity is consistent with the second cycle quantity;
[0054] The first cycle length is consistent with the second cycle length;
[0055] The first mapping mode in the first cycle information is consistent with the third mapping mode in the cycle related information;
[0056] The cycle sequence numbers in the first cycle information are continuous.
[0057] In the above solution, the first receiving module is further used to receive a data message when the second node has the first mapping relationship; the data message carries a period identifier of the data message;
[0058] The second processing module is used to determine the sending period of the data message based on the period identifier of the data message and the first mapping relationship between the second node;
[0059] The sending period represents a period at which the second node sends the data message.
[0060] In the above scheme, the period of receiving the first message includes: completing a first receiving period of receiving data messages related to the first message and starting a second receiving period of receiving the first message; the related data message represents a data message sent by the first node that sends the first message in the corresponding sending period;
[0061] The second processing module is configured to use a period after the first receiving period as the sending period; or use a period at least one period after the second receiving period as the sending period;
[0062] A first mapping relationship is established between the determined sending cycle and the first cycle identifier.
[0063] In the above solution, the second processing module is further used to update the first mapping relationship in response to satisfying the periodic update condition;
[0064] The periodic update condition includes at least one of the following:
[0065] The receiving period corresponding to at least one second message is different from the first receiving period corresponding to the first message; the second message represents a subsequent message periodically sent from the first node after the first message is sent;
[0066] The first message or the second message is not received in at least one receiving period;
[0067] The interface of the second node is disconnected.
[0068] The first message is received for the first time.
[0069] In the above solution, the corresponding message is an extended protocol message or a specific VLAN message.
[0070] An embodiment of the present invention provides a communication device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the steps of the communication scheduling method on the first node side of any one of the above items are implemented; or,
[0071] When the processor executes the program, the steps of any one of the above communication scheduling methods on the second node side are implemented.
[0072] An embodiment of the present invention further provides a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the steps of the communication scheduling method on the first node side of any one of the above items are implemented; or,
[0073] When the computer program is executed by a processor, the steps of any one of the above communication scheduling methods on the second node side are implemented.
[0074] A communication scheduling method, device and storage medium provided by an embodiment of the present invention include: a first node periodically sends a first message; the first message is at least used to identify the start of a corresponding cycle of the first node; accordingly, a second node periodically receives a first message from the first node; the first message is at least used to identify the start of a corresponding cycle of the first node; in this way, a clear mark is given for the start of each cycle to facilitate management and operation of the cycle mapping relationship. BRIEF DESCRIPTION OF THE DRAWINGS
[0075] Figure 1 is a schematic diagram of a CQF scheduling method;
[0076] Figure 2 This is a CQF forwarding delay effect diagram;
[0077] Figure 3 is a schematic diagram of a DIP mechanism;
[0078] Figure 4 A schematic diagram of a self-learning method for a periodic mapping relationship;
[0079] Figure 5 A flow chart of a communication scheduling method provided by an embodiment of the present invention;
[0080] Figure 6 A flow chart of another communication scheduling method provided by an embodiment of the present invention;
[0081] Figure 7 A schematic diagram of the structure of a first message provided by an embodiment of the present invention;
[0082] Figure 8 A schematic diagram of information included in a first message provided in an embodiment of the present invention;
[0083] Fig. 9 A schematic diagram of a scenario for relearning a mapping relationship provided for the implementation of the present invention;
[0084] Fig.10A schematic diagram of the structure of a communication scheduling device provided by an embodiment of the present invention;
[0085] Fig.11 A schematic diagram of the structure of another communication scheduling device provided by an embodiment of the present invention;
[0086] Fig.12 A schematic diagram of the structure of a communication device provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0087] The present invention is further described in detail below with reference to the embodiments.
[0088] As mentioned above, DIP network is an important development trend of future network. Because traditional IP packets are based on statistical multiplexing and best efforts, service level agreement (SLA) indicators such as latency, bandwidth, and packet loss cannot be guaranteed; for specific scenarios of 5G / 6G, strict deterministic service capability requirements are proposed, which cannot be met by traditional IP forwarding. For example: telemedicine requires end-to-end latency less than 50ms and jitter less than 200us; in smart grid scenarios, to ensure the accuracy of relay protection, the one-way time difference needs to be less than 200us and the jitter less than 50us.
[0089] Among the related technologies, the Time Sensitive Networking (TSN) technology standardized by the Institute of Electrical and Electronics Engineers (IEEE) provides a series of congestion control and queue scheduling standards. However, it is designed according to the Ethernet local area network. Some prerequisites such as time synchronization and flow identification are not realistic on the large network. Scalability and maintainability are the biggest challenges to the determinism of the three-layer (L3) network.
[0090] To this end, a DIP idea based on periodic scheduling has been proposed in the relevant technology in the hope of providing certainty for large-scale backbone networks. However, there is a lack of deployment practice and there are some problems in terms of maintenance convenience.
[0091] To explain the DIP mechanism in the prior art, the following first explains Cyclic Queuing and Forwarding (CQF) in the related art. CQF is a queue management method applied to deterministic networks in the related art.
[0092] CQF inherits the idea of time-aware shaping (TAS) gating and introduces a circular queue mechanism for processing data flows with strict latency requirements (critical flows). Figure 1 As shown in the schematic diagram of the CQF scheduling method in , for example, two queues are used, namely queue 2 and queue 3; queue 2 and queue 3 are opened and closed alternately, that is, when queue 2 is opened to transmit data, queue 3 will be closed and receive data, then queue 3 is opened to transmit data, and queue 2 is closed and receives data. In this mechanism, the frames of the critical flow are sent one by one (or one cycle at a time), such as the white frames in the figure. They must arrive in a certain time window and enter a specific queue (queue 2 or queue 4 in the figure). In the same time window, queue 3 or queue 5 needs to complete the transmission, so that the entire mechanism can operate normally. If the link delay and processing delay are negligible relative to the cycle length, then for a specific deterministic network, this mechanism can use two buffers (for example, only queue 2 and queue 3 in the figure), otherwise this mechanism needs to use more queues. If all devices in the network support CQF, then the critical flow packets can enter a cycle at the network edge node, and then stay for about one cycle at each intermediate node. Therefore, the critical flow packets can be forwarded deterministically and arrive at the peer network edge node in a fixed cycle. In the CQF mechanism, from the perspective of each packet, the stay time at each hop is about one cycle (the shortest is close to 0, and the longest is close to two cycles), but from the perspective of the entire CQF system, the overall delay of a set of packets in an entry cycle at each node is one cycle. It can be combined with Figure 2 As shown, Figure 2 Schematic diagram of the forwarding delay effect of CQF.
[0093] The above solution has problems: it requires that all network devices be time synchronized, and the distance between two nodes cannot be too long (i.e., the link delay must be short).
[0094] The following is an explanation of the DIP scheduling scheme in the related technology. Regarding DIP scheduling, it is no longer assumed that the time of the entire network is synchronized, but that the frequency of the entire network is synchronized, and all support the DIP scheduling mechanism. Because the fiber delay cannot be ignored for large-scale, long-distance networks, more queues are set, such as 3 queues. Unlike the CQF queue that rotates between sending and receiving, two cycles are used here to ensure that the messages of a cycle are received before sending, that is, the three queues cooperate in the cycle. For example, the red, green, and yellow cycles are set as follows:
[0095] Red cycle: queue1 sending status, queue2 receiving status, queue3 receiving status;
[0096] Green cycle: queue1 receiving status, queue2 sending status, queue3 receiving status;
[0097] Yellow cycle: queue1 receiving status, queue2 receiving status, queue3 sending status;
[0098] The cycle continues.
[0099] When applied, the message enters a cycle at the network edge node, and then stays at an intermediate node for about two cycles. In this way, the critical flow message can be forwarded deterministically and arrive at the peer network edge node in a fixed cycle.
[0100] like Figure 3 As shown, Figure 3 Represents the control flow of the control plane and the data plane in the DIP mechanism; in the DIP mechanism, the data plane supports the convergence of critical flows, that is, after different critical flows enter the DIP node, if the outgoing interface and the outgoing cycle are the same, then the different critical flows at the node are delayed by about 2T (assuming T represents a cycle time) and then sent to the next hop. The DIP node only needs to process the label / destination address to find the outgoing interface, and process the cycle mapping table to match the appropriate outgoing cycle, without identifying each service flow. Each critical flow should comply with the relevant traffic bandwidth restrictions, such as Figure 4 The formula is limited. For a critical flow (flowi in the figure), the amount of data sent should be the sum of the traffic corresponding to its reserved bandwidth and the burst traffic. The sender's deterministic request can be submitted to the network through the user network interface (UNI, User Network Interface) interface. The network should also provide an operation, management and maintenance (OAM, Administration and Maintenance) toolset to provide performance monitoring of deterministic related functions.
[0101] The following is an explanation of the learning mechanism of the DIP mechanism in the related technology. The existing DIP mechanism is an improvement on the traditional CQF. It is still in the early stage of technology as a whole. It only provides some basic core mechanisms and still has problems in specific deployment and maintenance operations. For example, there is a problem: periodic mapping of neighbor nodes.
[0102] In a deterministic network (such as the DIP network mentioned above), there is a stable periodic mapping relationship between each pair of neighboring nodes (such as neighboring routers). This periodic mapping relationship guides the packet forwarding behavior of subsequent routers. The construction of the periodic mapping relationship can be centrally configured by the software defined network (SDN) controller, or it can be obtained through distributed learning in an adaptive manner.
[0103] In the existing method, the DIP node is required to ensure that the message from a certain period of the upstream is sent after all the messages are received in the node's sending period. When the delay between the two nodes changes due to link switching and other scenarios, the period mapping relationship should be relearned. At the same time, when the DIP node is just online, it is also necessary to learn the period mapping relationship with the neighboring DIP node. Regarding the learning of the period mapping relationship, such as Figure 4 As shown, the upstream node A and the downstream node B cyclically number their respective cycles from 0 to 2. The upstream node A sends a learning message from the beginning of a cycle (for example, cycle 1). The learning message is transmitted through the link to reach the downstream node B. The downstream node B records the moment when the first bit is received (assuming that this moment falls in cycle 0 of node B). The downstream node B pushes back a cycle length T from the moment the first bit is received. The obtained moment value means that all data packets sent from the upstream node A in cycle 1 have arrived at the downstream node B. The time point when the data packet transmission is completed corresponds to the time when the last 1 bit of the upstream node A arrives at the downstream node B at the latest. Figure 4 In the example, this time point falls within cycle 1 of downstream node B. From this time point, look for the first complete cycle, which corresponds to cycle 2 in this example, and build a cycle mapping relationship 1→2 between upstream node A and downstream node B (this cycle mapping relationship means that the data message sent by upstream node A in cycle 1 is completely forwarded in cycle 2 of downstream node B). Similarly, the message sent by upstream node A in cycle 2 needs to be forwarded by downstream node B in the local cycle 3, and so on. According to this cycle mapping relationship, the data message only needs to carry the current cycle number of the sending device before each hop is sent. After receiving the data message, the downstream node can determine in which local cycle the received message needs to be forwarded again based on the locally maintained cycle mapping relationship table.
[0104] However, the DIP mechanism in the related technology does not provide a specific process for relearning the periodic mapping relationship. If DIP is used in a large-scale network scenario with more services, the impact will be relatively large.
[0105] Based on the above description, it can be understood that the DIP mechanism in the relevant technology still has the following problems: the maintenance method of the periodic mapping relationship is complicated; the upstream node will send a learning message only when it determines that the downstream has just started and there is no periodic mapping relationship or the periodic mapping relationship changes due to a link failure, and the triggering conditions and learning mechanism are relatively complicated.
[0106] Based on this, in the method provided by the embodiment of the present invention, the first node periodically sends a first message; the first message is at least used to identify the start of the corresponding period of the first node. Correspondingly, the second node periodically receives the first message from the first node; the first message is at least used to identify the start of the corresponding period of the first node.
[0107] The present invention will be further described in detail below in conjunction with the embodiments.
[0108] Figure 5 A flow chart of a communication scheduling method provided by an embodiment of the present invention; Figure 5 As shown, the method is applied to a first node, and the method includes:
[0109] Step 501: periodically send a first message; the first message is at least used to identify the start of a corresponding period of the first node.
[0110] The first node is a node in the DIP network, for example, may be a router used in the DIP network.
[0111] The first message is a data flow with strict delay requirements (called a critical flow).
[0112] Here, the first message includes first cycle information;
[0113] The first cycle information includes at least one of the following:
[0114] First cycle quantity, first cycle identifier, first cycle length, first mapping mode, second mapping mode, reserved field, cycle sequence number, and maximum transmission unit (MTU) message limit.
[0115] The first cycle number represents the number of cycles corresponding to the first node, such as three cycles. Considering the jitter Δ, it can be expanded on the basis of three cycles, that is, the first cycle number can also be four cycles, and the principle remains unchanged.
[0116] The first cycle identifier represents a cycle corresponding to the first message currently being sent.
[0117] The first cycle length represents the length of the cycle corresponding to the first message currently being sent; for example, 10 us.
[0118] The first mapping mode represents the mapping mode adopted by the downstream along a specific link known by itself (i.e., the first node), and the downstream may be a second node (the second node is a node in the DIP network, for example, it may be a router adopted in the DIP network). The first mapping mode may be obtained after being sent by the second node to the first node; the mapping mode may be used to determine the sending period corresponding to the receiving period.
[0119] Specifically, the second node can also periodically send a third message to the first node. Assuming that the third message and the first message are on the same path but in opposite directions, the second node will put its mapping mode in the direction of the first message in the second mapping mode of the third message and notify the first node, and vice versa.
[0120] On the first node, the second mapping mode represents the mapping mode of the third message direction of itself (ie, the first node). The second mapping mode can also be sent to the opposite end (ie, the second node) so that the second node can understand the mapping mode of the first node upstream of it on the same link.
[0121] The corresponding mapping modes include: add-one mapping, add-two mapping, add-three mapping (for scenarios using three cycles); or include: add-one mapping, add-two mapping, add-three mapping, add-four mapping (for scenarios using four cycles).
[0122] That is, the method of the embodiment of the present invention is applicable to scenarios of three cycles and four cycles;
[0123] When applied to a three-cycle scenario (i.e., the first node and the second node interact using three cycles), the mapping modes include: plus-one mapping, plus-two mapping, and plus-three mapping;
[0124] When applied to a scenario of four cycles (ie, the first node and the second node interact with each other in four cycles), the mapping modes include: plus-one mapping, plus-two mapping, plus-three mapping, and plus-four mapping.
[0125] The setting of the four-cycle scenario takes into account the possible jitter on the chip and link. If the jitter is not large (that is, the jitter cannot be ignored relative to the time of one cycle), the downstream sending cycle can be moved back accordingly. That is, if the downstream cannot guarantee to receive the upstream message of cycle 1 in two cycles, for example, three cycles are required, the downstream needs to use four queues to cooperate. The entire DIP network is designed and configured with four cycles.
[0126] The reserved field is used as an extension field and can be used to send some information that needs to be informed to downstream nodes.
[0127] The cycle sequence number represents the cycle sequence number corresponding to the first message currently being sent. Generally, each time the first node sends a first message, the corresponding cycle sequence number can be increased by 1, so that the cycle sequence numbers carried by each first message should be continuous. Different from the above-mentioned first cycle identifier, the first cycle identifier represents the cycle identifier corresponding to the current cycle. For example, in an application scenario of three cycles, the cycle identifier is used to identify the first cycle, the second cycle, and the third cycle; and the cycle sequence number can be increased by one after each message is sent, so that the second node can determine whether there is a lost message based on whether the cycle sequence number is continuous with the cycle sequence number of the previous message.
[0128] The first message is an extended protocol message for periodic information comparison or a specific virtual local area network (VLAN, Virtual Local Area Network) message.
[0129] The protocol message refers to a new protocol type, for example, a corresponding new type value may be carried in the type field of the Ethernet message, pointing to the protocol to which the periodic information is compared;
[0130] The specific VLAN message refers to a specific exclusive VLAN allocated by a network administrator for use by the first message.
[0131] By sending the first message identifying the start of the corresponding cycle of the first node, a clear start identifier is given for the start of each cycle of the DIP link; at the same time, some DIP-related information can also be notified to the downstream node (such as the second node described below) through the first message, which facilitates the management and operation of the DIP.
[0132] The method further includes: Step 502, sending a data message. The data message may carry a period identifier of a corresponding period.
[0133] Accordingly, an embodiment of the present invention further provides another communication scheduling method, which is applied to a second node. The first node and the second node can communicate with each other. The first node can be a first router; and the second node can be a second router.
[0134] Figure 6 A flow chart of a communication scheduling method provided by an embodiment of the present invention; Figure 6 As shown, the method is applied to the second node, and the method includes:
[0135] Step 601: Periodically receive a first message from a first node; the first message is at least used to identify the start of a corresponding period of the first node.
[0136] In one embodiment, the first message includes first cycle information corresponding to the first node; the first cycle information includes at least one of the following:
[0137] First cycle number, first cycle identifier, first cycle length, first mapping mode (referring to the mapping mode of the second node known by the first node), second mapping mode (referring to the mapping mode of the first node in the reverse direction of the first message), reserved field, cycle sequence number, and limited MTU message;
[0138] The second node has cycle-related information; the cycle-related information includes at least one of the following:
[0139] Second cycle number, second cycle length, third mapping mode, reserved field.
[0140] Here, the first mapping mode represents the mapping mode adopted downstream along a specific link as known by itself (i.e., the first node); taking the upstream first node and the downstream second node as an example, the first mapping mode of the first node represents the mapping mode that the second node should have in the first message direction as known by the first node itself; the second mapping mode represents the mapping mode adopted by itself in the third message direction (i.e., the direction in which the second node sends messages to the first node).
[0141] The first node may obtain the third mapping mode (ie, the second mapping mode of the second node mentioned above) sent by the second node to the first node as the first mapping mode of the opposite end saved by itself.
[0142] Initially, the first node is unaware of the mapping mode of the interface corresponding to the link on the second node, and the first mapping mode on the first node side can be set to empty.
[0143] After the second node determines its own mapping mode (that is, the third mapping mode), the information of its third mapping mode may be carried in a third message that the second node periodically sends to the first node along the link and sent to the second node;
[0144] The limited MTU message means that the first node can encapsulate a limited MTU message in a TLV (a data encoding format, the format is (Type type, Length length, Value value)) and send it to the second node; after decapsulating the TLV, the second node continues to process and forward the message according to the message header; when forwarding, the message can continue to be encapsulated in a periodic message sent by the second node to a more downstream node.
[0145] The meaning of limiting the MTU is that the size of the first message is limited (for example, 64 bytes), so the message that can be encapsulated is relatively small.
[0146] In one embodiment, the method further comprises:
[0147] When the second node has the first mapping relationship, determining that the first period information corresponds to period related information of the second node, and determining that the information can be correctly transmitted;
[0148] Corresponding to the second node not having the first mapping relationship, determining the first mapping relationship of the second node based on the first cycle identifier and the cycle of receiving the first message;
[0149] The first mapping relationship represents the relationship between the sending period of the second node sending the message and the sending period of the first node sending the message upstream along the specific link. In other words, the first mapping relationship actually reflects the mapping mode, that is, the first mapping relationship can be plus one mapping, plus two mapping, plus three mapping or plus four mapping.
[0150] Here, the first cycle information corresponds to the cycle related information of the second node, including at least one of the following:
[0151] The first cycle quantity is consistent with the second cycle quantity;
[0152] The first cycle length is consistent with the second cycle length;
[0153] The second mapping mode in the first cycle information is consistent with the third mapping mode in the cycle related information;
[0154] The cycle sequence numbers in the first cycle information are continuous.
[0155] For example, the second node detects whether the transmission is correct, for example, by matching the first mapping mode included in the first message (that is, the second node sends its own third mapping mode to the first node, which is saved by the first node as the first mapping mode of the first node) with its own third mapping mode, and reporting an error if they do not match.
[0156] The first mapping mode of the first node actually refers to the third mapping mode of the second node, specifically refers to the periodic mapping rule at the ingress port of the second node downstream of the specific link known by the first node. For example, the first sending period of the first node is mapped to the second sending period of the second node. The specific link refers to the link connecting the first node and the second node through which the first message passes.
[0157] In one embodiment, the method further comprises:
[0158] Corresponding to the second node having the first mapping relationship, receiving a data message; the data message carries a period identifier of the data message;
[0159] Determine a sending period of the data message based on a period identifier of the data message and a first mapping relationship between the second node;
[0160] The sending period represents a period at which the second node sends the data message.
[0161] For the first message and the data message, the first message is a protocol message (generally an important message, but the message does not carry data), which only needs to be sent at both ends of the link and reaches the second node without further forwarding. After the first message, there will be a data message (a critical message, which belongs to this cycle). These data messages can be data messages with low latency requirements and need to be further forwarded. The above data messages will also carry the identification of the sending cycle of the first node.
[0162] In one embodiment, the period of receiving the first message includes: completing a first receiving period of receiving data messages related to the first message and starting a second receiving period of receiving the first message; the related data message represents a data message sent by the first node that sends the first message in a corresponding sending period;
[0163] The determining, based on the first cycle information and the cycle of receiving the first message, a first mapping relationship and a sending cycle includes:
[0164] Using a period after the first receiving period as the sending period; or using a period at least one period after the second receiving period as the sending period;
[0165] A mapping relationship is established between the determined sending cycle and the first cycle identifier.
[0166] Specifically, the first message is a message used to inform the other end of the start of a cycle. After sending the first message, related data messages can continue to be sent. Therefore, the first message and the data message can be understood as a whole and sent in the same cycle. However, since the number of data messages varies, they may not be completely received by the other end in the same cycle. Therefore, it is necessary to determine the first receiving cycle for completing the reception of data messages related to the first message.
[0167] Here, when the application scenario is a scenario including three cycles, the cycle after at least one cycle may specifically be a cycle after one cycle after the second receiving cycle, as the sending cycle;
[0168] When the application scenario includes four cycles, the cycle after at least one cycle can be a cycle after two cycles after the second receiving cycle. It should be noted that the scenario of using four cycles takes into account the possible problem of network jitter; here, one more cycle is added on the basis of three cycles to solve the impact of jitter on cycle determination.
[0169] In one embodiment, the method further includes: updating the first mapping relationship in response to satisfying a periodic update condition;
[0170] The periodic update condition includes at least one of the following:
[0171] The receiving period corresponding to at least one second message is different from the first receiving period corresponding to the first message; the second message represents a subsequent message periodically sent from the first node after the first message is sent;
[0172] The first message or the second message is not received in at least one receiving period;
[0173] The interface of the second node is disconnected temporarily (for example, the interface board of the second node is restarted, causing a short disconnection, and the problem of not receiving messages may occur in all cycles, that is, the first message or the second message is not received in at least one receiving cycle);
[0174] The first message is received for the first time (such as just started).
[0175] Specifically, the second node detects that it has not received any messages for a period of time and / or the periodic sequence number (which can be recorded as Seq.No.) corresponding to the received messages is discontinuous, and it is considered that the underlying link has switched, and then checks whether the mapping relationship has changed. If it has changed, the mapping relationship is automatically relearned, forwarded to the downstream node, and the reserved bandwidth is triggered to update (here, considering that the change in the mapping relationship will cause the change of the resources previously reserved for a certain period). In addition, according to the periodic sequence number, it can be specifically stated how many periods of messages have been lost.
[0176] In one embodiment, the corresponding message is an extended protocol message or a specific VLAN message.
[0177] Here, the first message may be a new layer 2 message, which is sent at the head of each cycle to indicate the start of the corresponding cycle of the first node.
[0178] The size of the message can be fixed, for example, it can be the smallest Ethernet message (size is 64 bytes); if the size of the information carried is not enough, padding can be used (pad in Ethernet technology).
[0179] In this way, if the protection switching of dense wavelength multiplexing (DWDM) is completed, after the first message reaches the second node downstream, the second node can directly obtain the current periodic mapping relationship (equivalent to the above-mentioned first mapping relationship) through the first message, thereby quickly restoring the cycling forwarding of the message.
[0180] The first message may be an extended protocol message or a specific VLAN message. The extended protocol message may be a message of a new L3 type (L3 type is used to mark the message type, such as 0x88BB) applied for, or an exclusive VLAN controlled by an operator to identify the message (VLAN number is used to mark the message type, such as 4000). Figure 7 is a schematic diagram of a first message format; Figure 7 As shown in the figure, all the fields are standard fields of Ethernet. For the type part, corresponding extensions can be made. The first part is the preamble and the frame start symbol (SFD, Start-of-Frame Delimiter), followed by the destination media access control address (MAC Address, Media Access Control Address) and the source MAC address, then the length field and the type field, followed by the data and padding fields, and finally the checksum.
[0181] Figure 8 A schematic diagram of information included in a first message provided in an embodiment of the present invention; Figure 8 As shown, the information includes:
[0182] Version number (version), cycle number (cycle num), cycle identifier (cycle No.), first mapping mode (mode), reverse second mapping mode (reverse mode), reserved field (resv.);
[0183] It may also include:
[0184] The cycle length of the current cycle (e.g. 10us);
[0185] The cycle sequence number of the current message (Seq.No, which records the number of cycles that have passed, for example, a value that increases from 1);
[0186] The reserved bandwidth for the current period (a bandwidth value);
[0187] A limited MTU message (such as an IP message with a small MTU encapsulated by a type-length value (TLV, TypeLengthValue) (such as an IP message used for management)).
[0188] In the above, the first mapping mode is the mapping mode of the second node sent by the second node (downstream node) to the first node (upstream node of the second node) so that the first node can understand the mapping mode of the second node.
[0189] Of course, in actual applications, other fields can be expanded based on needs to be used for synchronization of other information and functions.
[0190] The method provided by the embodiment of the present invention, on the one hand, makes the boundary of each cycle clearer through the extended first message. Compared with the existing scheme, the start of the cycle is judged by the first appearance of each data message containing an identifier (such as a flag), which may cause the problem of no message in a certain cycle or the message not being in the head of the cycle. The scheme provided by the embodiment of the present invention can support the downstream node to learn the cycle mapping relationship of the link more conveniently through the message with clear boundaries, and because the first message is sent frequently, as long as a new first message is received, the mapping relationship can be checked to be correct, and the packet loss situation can be reported.
[0191] On the other hand, the first message can also be used for information exchange between upstream nodes (such as the first node mentioned above) and downstream nodes (such as the second node mentioned above) in the DIP network; and, it can also be used for consistency check of the configuration of upstream nodes and downstream nodes in the DIP network, for example, checking the number of cycles (for example, 3) and the mapping relationship of the cycles (flag x--->flag x+1, the so-called plus-one mapping, for example, the upstream sending cycle 1 is mapped to the downstream sending cycle 2).
[0192] On the other hand, the first message also carries the periodic sequence number (Seq.No) of the current message, so that protection switching occurs in the underlying optical network link. In addition to relearning the period, the loss of the link message can also be counted.
[0193] Finally, by defining new TLVs, more information can be carried to downstream nodes. For example, some relatively small control messages can be carried to do some status notification / synchronization, occupying this part of the bandwidth and forwarding quickly (two messages can be sent simultaneously on this channel and the normal data channel to ensure the notification as soon as possible), or an OAM channel can be made to check the network status without affecting the existing network traffic.
[0194] The embodiment of the present invention further provides another communication scheduling method; the method comprises:
[0195] After the DIP device (such as the first node and the second node) pre-configures the number of cycles, cycle length, etc., at the beginning of each cycle, the first node sends a cycle_start message (equivalent to a Figure 5 and Figure 6 The first message in the method shown), the mapping relationship (mode) is initially set to empty.
[0196] After the downstream DIP device (such as the second node mentioned above) receives the first message from the upstream DIP device (such as the first node mentioned above), the downstream DIP device parses the first message to determine the mapping relationship between the upstream DIP device and the downstream DIP device; that is, the message sent by the upstream No.X (a specific cycle identifier) is received in two cycles of its own and sent in the next cycle, such as No.Y; according to the mapping relationship between X and Y, it is determined whether the mapping mode is the plus one mode, the plus two mode, or the plus three mode (if applied to a scenario of four cycles, it may also be the plus four mode), and the downstream DIP device can send the cycle mapping mode (reverse mode) determined by itself to the upstream DIP device, so that the upstream DIP device can understand the mapping relationship of the downstream DIP device and fill in the mapping mode (mode) field.
[0197] The downstream DIP device can record this information and check according to the cycle sequence number Seq.No whether the first message of each cycle arrives successfully.
[0198] An embodiment of the present invention provides a method for learning a periodic mapping relationship, including:
[0199] Step 01, two adjacent DIP nodes are pre-configured with DIP;
[0200] The two adjacent DIP nodes may be the first node and the second node described above;
[0201] The first node may be an upstream router A; the second node may be a downstream router B relative to router A;
[0202] The relevant configuration includes: enabling periodic scheduling on the port, the number of periodic scheduling cycles, the cycle length, etc.
[0203] Step 02: Router A sends a cycle_start message (equivalent to the first message mentioned above) to router B at the beginning of each of its cycles.
[0204] It should be noted that router B also performs similar operations on its downstream routers (such as router C). Here, the message sending between router A and router B is taken as an example for explanation.
[0205] The cycle_start message includes: the cycle information configured by router A, specifically including: the number of cycles, the cycle identification number of the current cycle, the cycle length, etc.
[0206] Step 03: Router B receives the cycle_start message, parses the cycle_start message, and performs corresponding processing according to the parsing result. Specifically, it includes:
[0207] On the one hand, core information is compared, for example, the number of cycles and cycle length included in the cycle_start message sent by router A are compared to see if they are consistent with the number of cycles and cycle length configured by itself; if they are consistent, it is considered that correct mapping can be performed; if they are inconsistent, error information needs to be reported to the network management.
[0208] On the other hand, router B determines that it does not have information about the periodic mapping relationship related to router A (such as an uncertain mapping mode), and then learns the periodic mapping relationship (equivalent to the first mapping relationship mentioned above).
[0209] The learning of the periodic mapping relationship includes:
[0210] At least one cycle after the first receiving cycle in which router B completes receiving the cycle_start message is used as the sending cycle; and a mapping relationship is established between the determined sending cycle and the first cycle identifier.
[0211] For example, the interface of a DIP link of router B currently does not have a cycle mapping relationship between upstream and downstream. When router B receives the cycle identifier in the cycle_start message (indicating the cycle identifier of the upstream node, i.e., the current cycle of router A); for example, the cycle identifier is 1 (indicating the first cycle), router B can determine that the messages of the cycle (referring to data messages) can be received in the third cycle and the first cycle (taking three cycles as an example, due to the three-cycle cycle, the first cycle here represents the first cycle of the next cycle) according to the mechanism of DIP according to the receiving time (for example, receiving in the third cycle of router B), and then send it in the second cycle of router B, then record the mapping relationship as plus one mapping. The cycle identifier of the message is modified. The cycle identifier (flag) of the previous message is 1. After entering router B, the cycle identifier is modified to 2 (i.e., flag=2).
[0212] The cycle_start messages received subsequently can be used to verify this mapping relationship. If several consecutive cycle_start messages are mapped with plus one, the record is considered stable. After the record is stable, if a cycle_start message appears in the wrong cycle, it is considered an error; for example, if a cycle_start message sent in the first cycle appears in the second cycle of the downstream node, it is considered an error and can be reported to the network management.
[0213] Furthermore, an embodiment of the present invention also provides a method for relearning a periodic mapping relationship. Specifically, the method further includes:
[0214] Step 04: Determine whether the cycle mapping relationship has changed, and update the cycle mapping relationship according to the cycle_start message.
[0215] The arrival period of the cycle_start message may change; for example, the original upstream cycle_start message 1 (flag = 1, indicating that it is sent in the first cycle of the upstream, that is, the cycle identifier is 1) arrives at router B in the third cycle, and router B also records the corresponding relationship, but the subsequent arrival time does not meet expectations. This can be divided into two situations:
[0216] Case 1: If the cycle_start message is not received in several consecutive cycles, it can be determined that there is a problem with the link, and the cycle mapping relationship may change (if a link switch occurs, some messages will be lost, generally within 50ms). At this time, if the cycle_start message is received again, for example, the received cycle_start message 2 (assuming flag = 2, representing the second cycle sent upstream), according to the original mapping relationship, it should be received in the first cycle, can be collected in the second cycle, and then sent in the third cycle, the cycle mapping relationship is plus one mapping, but because of the underlying network protection to switch, cycle_start message 2 is received in the second cycle, then the mapping relationship of the interface is updated to plus two mapping, that is, it is considered that the message of this cycle will be received in the second and third cycles, and then sent in the first cycle, thereby realizing the rapid re-learning of the mapping cycle.
[0217] In addition, if there are no cycle_start messages for several consecutive cycles, but the upstream cycle_start2 message that should have arrived in the first cycle arrives in the second cycle, an error is directly reported and rapid relearning is not triggered.
[0218] In case 2, if the interface of the downstream router B is disconnected, the periodic mapping relationship will also be lost, triggering rapid re-learning of the mapping relationship.
[0219] The embodiment of the present invention also provides a method for recording a mapping relationship, including:
[0220] Step 11, two adjacent DIP nodes (such as the above-mentioned router A and router B) are pre-configured with DIP;
[0221] The relevant configuration includes: enabling periodic scheduling on the port of the DIP node, the number of periods of periodic scheduling, the length of the period, etc.
[0222] Step 12: Router A (as the upstream DIP node) sends a cycle start message (equivalent to the first message mentioned above, which can be recorded as a cycle_start message) to router B (as the downstream DIP node of router A) at the beginning of each cycle of itself.
[0223] The cycle start message includes the following information: the first cycle information configured by router A, such as the number of cycles, the cycle identifier of the current cycle, the cycle length, etc.
[0224] It can also include: the periodic mapping relationship of the downstream, for example: the xth period of the upstream corresponds to the x+1th period of the downstream (the upstream selects a starting time by itself and starts to cycle according to the first period, the second period, and the third period (if in a four-period scenario, it cycles according to four periods), and the downstream is similar).
[0225] The method provided in the embodiment of the present invention can be applied to a three-cycle or four-cycle DIP network; taking the three-cycle DIP scheduling method as an example, there can be three mapping relationships. For example:
[0226] The first type is 1->1, 2->2, 3->3, which is the addition of three mappings;
[0227] The second type is 1->3, 2->1, 3->2, which is the plus-two mapping;
[0228] The third type is 1->2, 2->3, 3->1, which is the plus-one mapping.
[0229] Initially, the mapping relationship is set to 0 (equivalent to the first mapping mode being empty), indicating that the specific first mapping mode is unclear. The reverse mapping relationship is also set to 0 (equivalent to the second mapping mode being empty), indicating that the specific second mapping mode is unclear.
[0230] Step 13: Router B receives the cycle_start message and parses it. It compares some core information, for example, comparing the number of cycles and cycle length of router A with its own number of cycles and cycle length. If they are not consistent, it needs to report error information to the network management. If they are consistent, it is considered that the mapping is correct.
[0231] Afterwards, when router B sends cycle_start to A, it will record reverse mode as 1 (downstream mapping relationship, that is, determining the first mapping mode);
[0232] Step 14: Router A receives the above cycle_start message, records the reverse mode information, and sets the mode to 1 in the subsequent cycle_start messages it sends.
[0233] Fig. 9 A schematic diagram of a scenario for relearning a mapping relationship provided for the implementation of the present invention; Fig. 9 As shown, after the underlying network is switched, the DIP network routers (ie, router A and router B) can relearn the mapping relationship through the first message.
[0234] The method provided by the embodiment of the present invention is faster in configuration recovery speed than the configuration mode of the control plane in the prior art, and does not require the process of reporting and sending, and the data plane is directly configured. Compared with the existing mechanism of learning messages, it is more powerful in function, and can refer to the overhead management channel of FlexE, and supports upstream and downstream configuration checks at startup, supports rapid learning of periodic mapping relationships within nodes, and supports the construction of a small MTU slice in the network for the transmission of some key messages, such as OAM messages.
[0235] Fig.10 A schematic diagram of the structure of a communication scheduling device provided by an embodiment of the present invention; Fig.10 As shown, the device is applied to a first node, and the device includes:
[0236] The first sending module is used to periodically send a first message; the first message is at least used to identify the start of a corresponding period of the first node.
[0237] The first message includes first cycle information; the first cycle information includes at least one of the following:
[0238] First cycle quantity, first cycle identifier, first cycle length, first mapping mode of the first node, second mapping mode of the second node, reserved field, cycle sequence number, and limited MTU message.
[0239] The first message is an extended protocol message or a specific VLAN message;
[0240] In one embodiment, the device further includes: a first processing module, at least used to complete operations related to determining the first message.
[0241] It should be noted that: the communication scheduling device provided in the above embodiment only uses the division of the above program modules as an example when implementing the corresponding communication scheduling method. In actual applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the server is divided into different program modules to complete all or part of the processing described above. In addition, the device provided in the above embodiment and the embodiment of the corresponding method belong to the same concept, and the specific implementation process is detailed in the method embodiment, which will not be repeated here.
[0242] Fig.11 A schematic diagram of the structure of a communication scheduling device provided by an embodiment of the present invention; Fig.11 As shown, the device is applied to a second node, and the device includes:
[0243] The first receiving module is used to periodically receive a first message from a first node; the first message is at least used to identify the start of a corresponding period of the first node.
[0244] Specifically, the first message includes first cycle information corresponding to the first node; the first cycle information includes at least one of the following:
[0245] First cycle quantity, first cycle identifier, first cycle length, first mapping mode, second mapping mode, reserved field, cycle sequence number, and limited MTU message;
[0246] The second node has cycle-related information; the cycle-related information includes at least one of the following:
[0247] Second cycle number, second cycle length, third mapping mode, reserved field.
[0248] Specifically, the device further includes: a second processing module, configured to determine that the first period information corresponds to period-related information of the second node when the second node has a first mapping relationship, and determine that the first period information can be correctly transmitted;
[0249] Corresponding to the second node not having the first mapping relationship, determining the first mapping relationship of the second node based on the first cycle identifier and the cycle of receiving the first message;
[0250] The first mapping relationship represents the relationship between a sending period of a second node sending a message and a sending period of a first node upstream along a specific link sending a message.
[0251] Specifically, the first cycle information corresponds to the cycle related information of the second node, including at least one of the following:
[0252] The first cycle quantity is consistent with the second cycle quantity;
[0253] The first cycle length is consistent with the second cycle length;
[0254] The first mapping mode in the first cycle information is consistent with the third mapping mode in the cycle related information;
[0255] The cycle sequence numbers in the first cycle information are continuous.
[0256] Specifically, the first receiving module is further used to receive a data message when the second node has a first mapping relationship; the data message carries a period identifier of the data message;
[0257] The second processing module is used to determine the sending period of the data message based on the period identifier of the data message and the first mapping relationship between the second node;
[0258] The sending period represents a period at which the second node sends the data message.
[0259] Specifically, the period of receiving the first message includes: completing a first receiving period of receiving data messages related to the first message, and starting a second receiving period of receiving the first message; the related data message represents a data message sent by the first node that sends the first message within a corresponding sending period;
[0260] The second processing module is configured to use a period after the first receiving period as the sending period; or use a period at least one period after the second receiving period as the sending period;
[0261] A first mapping relationship is established between the determined sending cycle and the first cycle identifier.
[0262] Specifically, the second processing module is further configured to update the first mapping relationship in response to satisfying a periodic update condition;
[0263] The periodic update condition includes at least one of the following:
[0264] The receiving period corresponding to at least one second message is different from the first receiving period corresponding to the first message; the second message represents a subsequent message periodically sent from the first node after the first message is sent;
[0265] The first message or the second message is not received in at least one receiving period;
[0266] The interface of the second node is disconnected.
[0267] The first message is received for the first time.
[0268] Specifically, the corresponding message is an extended protocol message or a specific VLAN message.
[0269] It should be noted that: the communication scheduling device provided in the above embodiment only uses the division of the above program modules as an example when implementing the corresponding communication scheduling method. In actual applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the server is divided into different program modules to complete all or part of the processing described above. In addition, the device provided in the above embodiment and the embodiment of the corresponding method belong to the same concept, and the specific implementation process is detailed in the method embodiment, which will not be repeated here.
[0270] Fig.12 A schematic diagram of the structure of a communication device provided by an embodiment of the present invention, such as Fig.12 As shown, the communication device 120 includes: a processor 1201 and a memory 1202 for storing a computer program that can be run on the processor;
[0271] Corresponding to when the communication device is applied to the first node, when the processor 1201 is used to run the computer program, it executes: periodically sending a first message; the first message is at least used to identify the start of the corresponding period of the first node.
[0272] When the processor runs the computer program, the corresponding processes of the first node in each method of the embodiment of the present invention are implemented, which will not be described in detail here for the sake of brevity.
[0273] Corresponding to when the communication device is applied to the first node, when the processor 1201 is used to run the computer program, it executes: periodically receiving a first message from the first node; the first message is at least used to identify the start of the corresponding period of the first node.
[0274] When the processor runs the computer program, the corresponding processes of the second node in each method of the embodiment of the present invention are implemented, which will not be described here for the sake of brevity.
[0275] In actual application, the communication device 120 may further include: at least one network interface 1203. The various components in the communication device 120 are coupled together via a bus system 1204. It is understood that the bus system 1204 is used to realize the connection and communication between these components. In addition to the data bus, the bus system 1204 also includes a power bus, a control bus, and a status signal bus. However, for the sake of clarity, Fig.12 In the figure, various buses are marked as bus system 1204. There may be at least one processor 1201. The network interface 1203 is used for wired or wireless communication between the communication device 120 and other devices.
[0276] The memory 1202 in the embodiment of the present invention is used to store various types of data to support the operation of the communication device 120 .
[0277] The method disclosed in the above embodiment of the present invention can be applied to the processor 1201, or implemented by the processor 1201. The processor 1201 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the hardware integrated logic circuit in the processor 1201 or the instruction in the form of software. The above processor 1201 may be a general processor, a digital signal processor (DSP, DiGital Signal Processor), or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. The processor 1201 can implement or execute the methods, steps and logic block diagrams disclosed in the embodiment of the present invention. The general processor can be a microprocessor or any conventional processor, etc. In combination with the steps of the method disclosed in the embodiment of the present invention, it can be directly embodied as a hardware decoding processor to execute, or it can be executed by a combination of hardware and software modules in the decoding processor. The software module can be located in a storage medium, which is located in the memory 1202. The processor 1201 reads the information in the memory 1202 and completes the steps of the above method in combination with its hardware.
[0278] In an exemplary embodiment, the communication device 120 may be implemented by one or more application specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), field programmable gate arrays (FPGAs), general-purpose processors, controllers, microcontrollers (MCUs), microprocessors, or other electronic components to execute the aforementioned method.
[0279] An embodiment of the present invention further provides a computer-readable storage medium having a computer program stored thereon;
[0280] Corresponding to the storage of a computer program applied to a first node, when the computer program is executed by a processor, the following is performed: periodically sending a first message; the first message is at least used to identify the start of a corresponding period of the first node.
[0281] When the computer program is executed by the processor, the corresponding processes implemented by the first node in the various methods of the embodiments of the present invention are implemented, which will not be described in detail here for the sake of brevity.
[0282] Corresponding to the computer program being stored and applied to the second node, when the computer program is executed by the processor, the following is performed: periodically receiving a first message from the first node; the first message is at least used to identify the start of a corresponding period of the first node.
[0283] When the computer program is executed by the processor, the corresponding processes implemented by the second node in the various methods of the embodiments of the present invention are implemented, which will not be described in detail here for the sake of brevity.
[0284] In the several embodiments provided in the present application, it should be understood that the disclosed apparatus and method can be implemented in other ways. The device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as: multiple units or components can be combined, or can be integrated into another system, or some features can be ignored, or not executed. In addition, the coupling, direct coupling, or communication connection between the components shown or discussed can be through some interfaces, and the indirect coupling or communication connection of the devices or units can be electrical, mechanical or other forms.
[0285] The units described above as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units; some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.
[0286] In addition, all functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may be separately used as a unit, or two or more units may be integrated into one unit; the above-mentioned integrated units may be implemented in the form of hardware or in the form of hardware plus software functional units.
[0287] A person skilled in the art can understand that: all or part of the steps of implementing the above method embodiment can be completed by hardware related to program instructions, and the aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it executes the steps of the above method embodiment; and the aforementioned storage medium includes: mobile storage devices, read-only memories (ROM, Read-Only Memory), random access memories (RAM, Random Access Memory), disks or optical disks, etc. Various media that can store program codes.
[0288] Alternatively, if the above-mentioned integrated unit of the present invention is implemented in the form of a software function module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiment of the present invention can be essentially or partly reflected in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the methods described in each embodiment of the present invention. The aforementioned storage medium includes: various media that can store program codes, such as mobile storage devices, ROM, RAM, magnetic disks or optical disks.
[0289] It should be noted that: "first", "second", etc. are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.
[0290] In addition, the technical solutions described in the embodiments of the present application can be combined arbitrarily without conflict.
[0291] The above is only a specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art who is familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed by the present invention, which should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention should be based on the protection scope of the claims.
Claims
1. A communication scheduling method, characterized in that: Applied to the first node, the method comprises: Periodically sending a first message; the first message is at least used to identify the start of a corresponding period of the first node; the first message is sent at the beginning of each period; The first message is a protocol message that does not need to be further forwarded or a specific virtual local area network VLAN message.
2. The method according to claim 1, characterized in that The first message includes first cycle information; the first cycle information includes at least one of the following: First cycle quantity, first cycle identifier, first cycle length, first mapping mode, second mapping mode, reserved field, cycle sequence number, and maximum transmission unit MTU message.
3. The method according to claim 1, characterized in that The first message is an extended protocol message.
4. A communication scheduling method, characterized in that: Applied to the second node, the method comprises: Periodically receiving a first message from a first node; the first message is at least used to identify the start of a corresponding cycle of the first node; the first message is sent at the start of each cycle; The first message is a protocol message or a specific VLAN message that does not need to be further forwarded.
5. The method according to claim 4, characterized in that The first message includes first period information corresponding to the first node; the first period information includes at least one of the following: First cycle quantity, first cycle identifier, first cycle length, first mapping mode, second mapping mode, reserved field, cycle sequence number, and limited MTU message; The second node has cycle-related information; the cycle-related information includes at least one of the following: Second cycle number, second cycle length, third mapping mode, reserved field.
6. The method according to claim 5, characterized in that The method further comprises: When the second node has the first mapping relationship, determining that the first period information corresponds to period related information of the second node, and determining that the information can be correctly transmitted; Corresponding to the second node not having the first mapping relationship, determining the first mapping relationship of the second node based on the first cycle identifier and the cycle of receiving the first message; The first mapping relationship represents the relationship between a sending period of a second node sending a message and a sending period of a first node upstream along a specific link sending a message.
7. The method according to claim 5, characterized in that The first cycle information corresponds to cycle related information of the second node, and includes at least one of the following: The first cycle quantity is consistent with the second cycle quantity; The first cycle length is consistent with the second cycle length; The first mapping mode in the first cycle information is consistent with the third mapping mode in the cycle related information; The cycle sequence numbers in the first cycle information are continuous.
8. The method according to claim 5, characterized in that The method further comprises: Corresponding to the second node having the first mapping relationship, receiving a data message; the data message carries a period identifier of the data message; Determine a sending period of the data message based on a period identifier of the data message and a first mapping relationship between the second node; The sending period represents a period at which the second node sends the data message.
9. The method according to claim 6, characterized in that The period of receiving the first message includes: completing a first receiving period of receiving data messages related to the first message and starting a second receiving period of receiving the first message; the related data messages represent data messages sent by the first node sending the first message in the corresponding sending period; The determining, based on the first period identifier and a period of receiving the first message, a first mapping relationship of the second node includes: Using a period after the first receiving period as the sending period; or using a period at least one period after the second receiving period as the sending period; A first mapping relationship is established between the determined sending cycle and the first cycle identifier.
10. The method according to claim 9, characterized in that The method further comprises: in response to satisfying a periodic update condition, updating the first mapping relationship; The periodic update condition includes at least one of the following: The receiving period corresponding to at least one second message is different from the first receiving period corresponding to the first message; the second message represents a subsequent message periodically sent from the first node after sending the first message; The first message or the second message is not received in at least one receiving period; The interface of the second node is disconnected. The first message is received for the first time.
11. The method according to any one of claims 4 to 10, characterized in that: The first message is an extended protocol message.
12. A communication scheduling device, characterized in that: The device comprises: a first sending module, used for periodically sending a first message; the first message is at least used for identifying the start of a corresponding period of the first node; the first message is sent at the start of each period; The first message is a protocol message or a specific VLAN message that does not need to be further forwarded.
13. A communication scheduling device, characterized in that: The device comprises: a first receiving module, used for periodically receiving a first message from a first node; the first message is at least used for identifying the start of a corresponding cycle of the first node; the first message is sent at the start of each cycle; The first message is a protocol message or a specific VLAN message that does not need to be further forwarded.
14. A communication device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the steps of the method according to any one of claims 1 to 3 are implemented; or, When the processor executes the program, the steps of the method according to any one of claims 4 to 11 are implemented.
15. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 3 are implemented; or When the computer program is executed by a processor, the steps of the method according to any one of claims 4 to 11 are implemented.
Citation Information
Patent Citations
Network quality detection method and device
CN107547300A
Periodic mapping method and network equipment
CN110868363A