Clock determination method, device, equipment, system and storage medium
By carrying clock deviation information in the data frame of the CBR service, the problem that sink nodes in the TDM network are difficult to recover the transmission service clock, and accurate clock determination and correct transmission of CBR service are achieved under different clock sources.
Patent Information
- Application Number
- CN202311094856.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-26
- Publication Date
- 2025-02-28
AI Technical Summary
In time division multiplexing (TDM) network transmission of constant bit rate (CBR) services, the bit stream of the CBR services will arrive at the receiving end at different time delays after multiplexing and switching, making it difficult for the sink node to recover the service clock of the sending end.
By carrying clock deviation information in the data frame, the sink node can determine the clock of the source node based on the received clock deviation information. The clock deviation information may indicate the deviation between the clock of the sink node and the clock of the source node through the frequency deviation corresponding to the code block difference value or the frequency deviation corresponding to the code block difference value.
In the absence of a common clock source, the sink node is allowed to accurately determine the clock of the source node, ensuring that CBR services can be transmitted and received correctly.
Smart Images

Figure CN119544435A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to a clock determination method, device, equipment, system and storage medium. Background Art
[0002] With the development of communication technology, the transmission scenarios of constant bit rate (CBR) services are becoming more and more common. The sender of the CBR service sends the bit stream of the CBR service based on the service clock, and the receiver of the CBR service needs to receive the bit stream based on the same service clock to ensure that the CBR service can be transmitted correctly. When the CBR service is carried on a time-division multiplexing (TDM) network, since the TDM network implements multiplexing transmission of multiple services, the bit stream of the CBR service will arrive at the receiving end with different delays after multiplexing and switching. In addition, it is necessary to restore the service clock of the CBR service at the destination node of the CBR service, so that the destination node sends the bit stream of the CBR service to the receiving end of the CBR service based on the service clock, so that the receiving end can correctly receive the bit stream of the CBR service.
[0003] In the related art, the source node of the CBR service periodically records the clock frequency deviation between the service clock of the sender of the CBR service and the clock of the source node of the CBR service, and carries the clock frequency deviation in the data frame where the CBR service is located and sends it to the sink node of the CBR service. When the clock of the sink node of the CBR service is synchronized with the clock of the source node of the CBR service, the sink node can restore the service clock of the sender of the CBR service according to the clock of the sink node and the received clock deviation.
[0004] That is to say, in order to enable the sink node to recover the service clock of the sender of the CBR service, it is necessary to ensure that the clocks of the source node of the CBR service and the sink node of the CBR service are synchronized. Therefore, when there is no common clock source between the source node of the CBR service and the sink node of the CBR service, how the sink node of the CBR service determines the clock of the source node of the CBR service is an urgent problem to be solved. Summary of the invention
[0005] The present application provides a clock determination method, apparatus, device, system and storage medium, which are used for a sink node of a CBR service to determine the clock of a source node of the CBR service.
[0006] In a first aspect, a clock determination method is provided. Taking a first device executing the method as an example, the first device is a destination node of a CBR service. The method includes: the first device receives a first data frame carrying the CBR service, the first data frame carries first clock deviation information, the first clock deviation information indicates the deviation between the clock of the second device and the clock of the third device, the second device is the previous node of the destination node, the third device is the source node of the CBR service, the first clock deviation information includes a code block difference between the first data frame and a second data frame sent by the third device, or the first clock deviation information includes a frequency deviation corresponding to the code block difference between the first data frame and the second data frame, and the second data frame corresponds to the first data frame; based on the first clock deviation information and the clock of the first device, the first device determines the clock of the third device.
[0007] The method carries the first clock deviation information in the first data frame, so that when there is no common clock source between the sink node and the source node, the sink node can determine the clock of the source node through the first clock deviation information carried in the first data frame, thereby simplifying the requirement for the sink node to determine the clock of the source node. Wherein, the second device is the previous node of the sink node, and the first data frame received by the first device is the first data frame sent by the second device. The first clock deviation information indicates the deviation between the clock of the second device and the clock of the third device through the code block difference between the second data frame and the first data frame or the frequency deviation corresponding to the code block difference, so that the first clock deviation information can more accurately indicate the clock deviation.
[0008] In a possible implementation, the clock of the third device is determined based on the first clock deviation information and the clock of the first device, including: performing rate adaptation processing on the first data frame to obtain the third data frame; obtaining the second clock deviation information according to the code block difference between the third data frame and the first data frame, the second clock deviation information indicating the deviation between the clock of the first device and the clock of the second device; and determining the clock of the third device based on the first clock deviation information, the second clock deviation information and the clock of the first device. The second clock deviation information is obtained by rate adaptation, which improves the accuracy of obtaining the second clock deviation information.
[0009] In a possible implementation manner, a fourth device is included between the second device and the third device, and the intermediate node of the CBR service includes the fourth device and the second device; in a case where the first clock deviation information includes a code block difference between the first data frame and the second data frame sent by the third device, the code block difference between the first data frame and the second data frame is an accumulated value of the first code block difference and the second code block difference, the first code block difference is a code block difference between the first data frame and the fourth data frame sent by the fourth device, and the second code block difference is a code block difference between the fourth data frame and the second data frame;
[0010] In the case where the first clock deviation information includes a frequency deviation corresponding to a code block difference between a first data frame and a second data frame, the frequency deviation corresponding to the code block difference between the first data frame and the second data frame is a cumulative value of the first frequency deviation and the second frequency deviation, the first frequency deviation is the frequency deviation corresponding to the code block difference between the first data frame and the fourth data frame, and the second frequency deviation is the frequency deviation corresponding to the code block difference between the fourth data frame and the second data frame.
[0011] When there are at least two intermediate nodes, the first clock deviation information includes the cumulative value of the clock deviation between the last hop intermediate node and the source node. By carrying the cumulative value of the clock deviation, the byte position occupied by the first data frame carrying the first clock deviation information can be saved.
[0012] That is to say, the first-hop intermediate node of the CBR service will obtain the clock deviation information 1 between the first-hop intermediate node and the source node, and carry the clock deviation information 1 in the data frame for transmission; each hop intermediate node of the CBR service except the first-hop intermediate node will receive the data frame carrying the clock deviation information 2 between the previous hop intermediate node and the source node. For example, the second-hop intermediate node of the CBR service will receive the data frame carrying the clock deviation information 1 sent by the first-hop intermediate node, and the clock deviation information 2 is the clock deviation information 1 at this time; then each hop intermediate node will also obtain the clock deviation information 3 between each hop intermediate node and the previous hop intermediate node, and then carry the accumulated value of the clock deviation information 2 and the clock deviation information 3 in the data frame as the clock deviation information between each hop intermediate node and the source node for transmission.
[0013] In one possible implementation, the first data frame is a metro transport network section (MTNS) frame, and the first clock deviation information is carried in an overhead area of a fine grain multiplexed unit (fgMU) frame contained in the MTNS frame. Alternatively, the first clock deviation information is carried in an operation, administration and maintenance (OAM) code block contained in the MTNS frame. For example, the OAM code block can be a basic (B) code block, an automatic protection switching (A) code block, or a low priority (L) code block. As a result, the first clock deviation information can be flexibly carried in different positions of the MTNS frame, thereby improving the stability of the data frame in carrying the first clock deviation information.
[0014] In a possible implementation, the first data frame also carries transmission information of the CBR service. After determining the clock of the third device, the clock of the CBR service can be restored according to the clock of the third device and the transmission information. The transmission information of the CBR service indicates the deviation between the clock of the third device and the clock of the CBR service, and then the clock of the CBR service can be restored on the basis of determining the clock of the third device. This enables the first device to send the data stream of the CBR service based on the clock of the CBR service, and then enables the receiving end of the CBR service to receive the data stream of the CBR service with the clock of the CBR service, thereby ensuring that the CBR service can be correctly received.
[0015] In a possible implementation, the transmission information of the CBR service may also include the number of bits of the CBR service included in the first data frame. The transmission information can indicate the deviation between the clock of the third device and the clock of the CBR service, thereby improving the flexibility of recovering the clock of the CBR service based on the transmission information.
[0016] In a possible implementation, taking the first data frame as an MTNS frame as an example, when the transmission information of the CBR service includes the number of bits of the CBR service included in the first data frame, the number of bits can be carried in the overhead area of the fine grain metro transport network packet (fgMTNP) frame included in the MTNS frame, or the number of bits can also be carried in the overhead area of the CBR container included in the MTNS frame. The transmission information can be flexibly carried in different positions of the data frame, which improves the stability of the data frame in carrying the transmission information.
[0017] In a second aspect, a clock determination method is provided. Taking the second device executing the method as an example, the second device is an intermediate node of the CBR service. The method includes: the second device obtains a fifth data frame carrying the CBR service, the fifth data frame carries first clock deviation information, the first clock deviation information indicates the deviation between the clock of the second device and the clock of the third device, the third device is the source node of the CBR service, the first clock deviation information includes the code block difference between the fifth data frame and the second data frame sent by the third device, or the first clock deviation information includes the frequency deviation corresponding to the code block difference between the fifth data frame and the second data frame; sending the fifth data frame.
[0018] In the method, the second device carries the first clock deviation information in the fifth data frame, and sends the fifth data frame carrying the first clock deviation information. If the second device is the previous intermediate node of the destination node, after receiving the fifth data frame, the destination node can determine the clock of the source node according to the first clock deviation information carried in the fifth data frame when there is no common clock source between the destination node and the source node, thereby providing a guarantee for the destination node to determine the clock of the source node. If the second device is not the previous intermediate node of the destination node, the intermediate node receiving the fifth data frame can determine the deviation between the clock of the second device and the clock of the source node according to the first clock deviation information carried in the fifth data frame.
[0019] In a possible implementation, obtaining a fifth data frame carrying a CBR service includes: receiving a sixth data frame carrying a CBR service; performing rate adaptation processing on the sixth data frame to obtain a seventh data frame; obtaining first clock deviation information according to a code block difference between the sixth data frame and the seventh data frame; and adding the first clock deviation information to the seventh data frame to obtain a fifth data frame. The first clock deviation information is obtained by rate adaptation, thereby improving the accuracy of obtaining the first clock deviation information.
[0020] In a possible implementation, a fourth device is included between the second device and the third device, and the sixth data frame also carries third clock deviation information, the third clock deviation information indicates the deviation between the clock of the fourth device and the clock of the third device, and the fourth device is the previous node of the second device; then, according to the code block difference between the sixth data frame and the seventh data frame, the first clock deviation information is obtained, including: according to the code block difference between the sixth data frame and the seventh data frame, the fourth clock deviation information is determined, the fourth clock deviation indicates the deviation between the clock of the second device and the clock of the fourth device; the cumulative value of the fourth clock deviation information and the third clock deviation information is used as the first clock deviation information. By carrying the cumulative value of the clock deviation, the byte position occupied by the fifth data frame carrying the first clock deviation information can be saved.
[0021] In a possible implementation, taking the fifth data frame as an MTNS frame as an example, the first clock deviation information is carried in the overhead area of the fgMU frame contained in the MTNS frame, or the first clock deviation information is carried in the OAM code block contained in the MTNS frame. The first clock deviation information can be flexibly carried in different positions of the MTNS frame, which improves the stability of the data frame being able to carry the first clock deviation information.
[0022] In any possible implementation manner of the first aspect and the second aspect, the code block difference is a difference of idle code blocks.
[0023] According to a third aspect, a clock determination method is provided. Taking a third device executing the method as an example, the third device is a source node of a CBR service. The method includes: the third device receives a data stream of the CBR service, obtains transmission information of the CBR service, and the transmission information is used by a destination node of the CBR service to restore the clock of the CBR service; encapsulates the data stream of the CBR service into a second data frame, and the second data frame carries the transmission information of the CBR service; and sends the second data frame.
[0024] In this method, the source node carries the transmission information of the CBR service in the second data frame and sends the second data frame carrying the transmission information of the CBR service, so that the sink node can obtain the transmission information of the CBR service, and then the sink node can restore the clock of the CBR service according to the transmission information of the CBR service, which provides a guarantee for the sink node to restore the clock of the CBR service.
[0025] In a possible implementation, the transmission information of the CBR service may also include the number of bits of the CBR service included in the first data frame. Different transmission information can indicate the deviation between the clock of the third device and the clock of the CBR service, thereby improving the flexibility of recovering the clock of the CBR service based on the transmission information.
[0026] In a possible implementation, taking the second data frame as an MTNS frame as an example, when the transmission information of the CBR service includes the number of bits of the CBR service included in the second data frame, the number of bits can be carried in the overhead area of the fgMTNP frame included in the MTNS frame, or the number of bits can also be carried in the overhead area of the CBR container included in the MTNS frame. The transmission information can be flexibly carried in different positions of the data frame, which improves the stability of the data frame in carrying the transmission information.
[0027] In any possible implementation of the first to third aspects above, the clock determination method can be applied to a TDM network, which can be a metro transport network (MTN), a slicing packet network (SPN) or an optical transmission network (OTN). The method can be flexibly applied to various TDM network scenarios, thereby improving the universal applicability of the method.
[0028] In a fourth aspect, a clock determination device is provided, which is applied to a first device, where the first device is a host node of a CBR service, and the device includes: a transceiver module, used to perform reception and / or transmission related operations performed by the first device in the first aspect or any possible implementation of the first aspect; a processing module, used to perform other operations other than the reception and / or transmission related operations performed by the first device in the first aspect or any possible implementation of the first aspect.
[0029] In a possible implementation, the transceiver module includes a receiving module and / or a sending module. The receiving module is used to perform reception-related operations, and the sending module is used to perform sending-related operations.
[0030] In one possible implementation, a transceiver module is used to receive a first data frame carrying a CBR service, the first data frame carries first clock deviation information, the first clock deviation information indicates a deviation between a clock of a second device and a clock of a third device, the second device is a previous node of a destination node, the third device is a source node of the CBR service, the first clock deviation information includes a code block difference between the first data frame and a second data frame sent by the third device, or the first clock deviation information includes a frequency deviation corresponding to a code block difference between the first data frame and the second data frame, and the second data frame corresponds to the first data frame; a processing module is used to determine the clock of the third device based on the first clock deviation information and the clock of the first device.
[0031] In one possible implementation, a processing module is used to perform rate adaptation processing on a first data frame to obtain a third data frame; obtain second clock deviation information based on a code block difference between the third data frame and the first data frame, the second clock deviation information indicating a deviation between a clock of the first device and a clock of the second device; and determine the clock of the third device based on the first clock deviation information, the second clock deviation information and the clock of the first device.
[0032] In a possible implementation, a fourth device is included between the second device and the third device; when the first clock deviation information includes a code block difference between the first data frame and the second data frame sent by the third device, the code block difference between the first data frame and the second data frame is an accumulated value of the first code block difference and the second code block difference, the first code block difference is a code block difference between the first data frame and a fourth data frame sent by the fourth device, and the second code block difference is a code block difference between the fourth data frame and the second data frame;
[0033] In the case where the first clock deviation information includes a frequency deviation corresponding to a code block difference between a first data frame and a second data frame, the frequency deviation corresponding to the code block difference between the first data frame and the second data frame is a cumulative value of the first frequency deviation and the second frequency deviation, the first frequency deviation is the frequency deviation corresponding to the code block difference between the first data frame and the fourth data frame, and the second frequency deviation is the frequency deviation corresponding to the code block difference between the fourth data frame and the second data frame.
[0034] In a possible implementation, the first data frame is an MTNS frame, and the first clock deviation information is carried in an overhead area of an fgMU frame included in the MTNS frame, or the first clock deviation information is carried in an OAM code block included in the MTNS frame.
[0035] In a possible implementation manner, the first data frame also carries transmission information of the CBR service, and the processing module is further configured to restore the clock of the CBR service according to the clock of the third device and the transmission information.
[0036] In one possible implementation, the first data frame is an MTNS frame, and the transmission information includes the number of bits of the CBR service included in the first data frame, and the number of bits is carried in the overhead area of the fgMTNP frame contained in the MTNS frame; or, the transmission information includes the number of bits of the CBR service included in the first data frame, and the number of bits is carried in the overhead area of the CBR container contained in the MTNS frame.
[0037] In a fifth aspect, a clock determination device is provided, which is applied to a second device, where the second device is an intermediate node of a CBR service, and the device includes: a transceiver module, used to perform operations related to receiving and / or sending performed by the second device in the second aspect or any possible implementation of the second aspect; and a processing module, used to perform other operations other than the operations related to receiving and / or sending performed by the second device in the second aspect or any possible implementation of the second aspect.
[0038] In a possible implementation, the transceiver module includes a receiving module and / or a sending module. The receiving module is used to perform reception-related operations, and the sending module is used to perform sending-related operations.
[0039] In one possible implementation, a processing module is used to obtain a fifth data frame carrying a CBR service, the fifth data frame carries first clock deviation information, the first clock deviation information indicates a deviation between a clock of a second device and a clock of a third device, the third device is a source node of the CBR service, the first clock deviation information includes a code block difference between the fifth data frame and a second data frame sent by the third device, or the first clock deviation information includes a frequency deviation corresponding to the code block difference between the fifth data frame and the second data frame; a transceiver module is used to send the fifth data frame.
[0040] In one possible implementation, a processing module is used to receive a sixth data frame carrying a CBR service; perform rate adaptation processing on the sixth data frame to obtain a seventh data frame; obtain first clock deviation information based on a code block difference between the sixth data frame and the seventh data frame; and add the first clock deviation information to the seventh data frame to obtain a fifth data frame.
[0041] In one possible implementation, a fourth device is included between the second device and the third device, and the sixth data frame also carries third clock deviation information, the third clock deviation information indicates the deviation between the clock of the fourth device and the clock of the third device, and the fourth device is the previous node of the second device; a processing module is used to determine the fourth clock deviation information based on the code block difference between the sixth data frame and the seventh data frame, the fourth clock deviation indicates the deviation between the clock of the second device and the clock of the fourth device; and the cumulative value of the fourth clock deviation information and the third clock deviation information is used as the first clock deviation information.
[0042] In a possible implementation, the fifth data frame is an MTNS frame, and the first clock deviation information is carried in an overhead area of an fgMU frame included in the MTNS frame, or the first clock deviation information is carried in an OAM code block included in the MTNS frame.
[0043] In any possible implementation manner of the fourth aspect and the fifth aspect, the code block difference is a difference of idle code blocks.
[0044] In a sixth aspect, a clock determination device is provided, which is applied to a third device, and the third device is a source node of a CBR service. The device includes: a transceiver module, used to perform reception and / or transmission related operations performed by the third device in the third aspect or any possible implementation of the third aspect; a processing module, used to perform other operations in addition to the reception and / or transmission related operations performed by the third device in the third aspect or any possible implementation of the third aspect.
[0045] In a possible implementation, the transceiver module includes a receiving module and / or a sending module. The receiving module is used to perform reception-related operations, and the sending module is used to perform sending-related operations.
[0046] In a possible implementation, the transceiver module is used to receive the data stream of the CBR service; the processing module is used to obtain the transmission information of the CBR service, and the transmission information is used by the host node of the CBR service to restore the clock of the CBR service; the data stream of the CBR service is encapsulated into a second data frame, and the second data frame carries the transmission information of the CBR service; the transceiver module is also used to send the second data frame.
[0047] In one possible implementation, the second data frame is an MTNS frame, and the transmission information includes the number of bits of the CBR service carried in the second data frame, and the number of bits is carried in the overhead area of the fgMTNP frame contained in the MTNS frame; or, the transmission information includes the number of bits of the CBR service carried in the second data frame, and the number of bits is carried in the overhead area of the CBR container contained in the MTNS frame.
[0048] In any possible implementation manner of the fourth to sixth aspects above, the clock determination device is applied to a TDM network, and the TDM network is an MTN, an SPN or an OTN.
[0049] In the seventh aspect, a network device is provided, comprising: a processor, the processor being coupled to a memory, the memory storing at least one program instruction or code, the at least one program instruction or code being loaded and executed by the processor so that the network device implements the clock determination method as described in any one of the first aspect, the second aspect or the third aspect above.
[0050] Optionally, the number of the processors is one or more, and the number of the memories is one or more.
[0051] Optionally, the memory may be integrated with the processor, or the memory may be provided separately from the processor.
[0052] In the specific implementation process, the memory can be a non-transitory memory, such as a read-only memory (ROM), which can be integrated with the processor on the same chip or can be set on different chips. This application does not limit the type of memory and the setting method of the memory and the processor.
[0053] In an eighth aspect, a clock determination system is provided, the clock determination system comprising a first device, a second device and a third device; the first device is used to execute the method described in the first aspect or any possible implementation of the first aspect, the second device is used to execute the method described in the second aspect or any possible implementation of the second aspect, and the third device is used to execute the method described in the third aspect or any possible implementation of the third aspect.
[0054] In the ninth aspect, a computer-readable storage medium is provided, wherein the storage medium stores at least one instruction, and the instruction is loaded and executed by a processor to enable a computer to implement the method in the above-mentioned first aspect or any possible implementation of the first aspect, or to implement the method in the above-mentioned second aspect or any possible implementation of the second aspect, or to implement the above-mentioned third aspect or any possible implementation of the third aspect.
[0055] In a tenth aspect, a computer program (product) is provided, wherein the computer program (product) comprises: a computer program code, and when the computer program code is executed by a computer, the computer executes the methods in the above aspects.
[0056] In an eleventh aspect, a chip is provided, comprising a processor for calling and executing instructions stored in a memory from the memory, so that a communication device equipped with the chip executes the methods in the above aspects.
[0057] In the twelfth aspect, another chip is provided, comprising: an input interface, an output interface, a processor and a memory, wherein the input interface, the output interface, the processor and the memory are connected via an internal connection path, and the processor is used to execute the code in the memory. When the code is executed, the processor is used to execute the methods in the above aspects.
[0058] It should be understood that the beneficial effects achieved by the technical solutions of the fourth to twelfth aspects of the present application and the corresponding possible implementation methods can be referred to the technical effects of the first to third aspects and their corresponding possible implementation methods mentioned above, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0059] Figure 1 A networking structure for carrying CBR services provided in an embodiment of the present application;
[0060] Figure 2 Another networking structure for carrying CBR services provided in an embodiment of the present application;
[0061] Figure 3 Another networking structure for carrying CBR services provided in the embodiment of the present application;
[0062] Figure 4 A flowchart of a clock determination method provided in an embodiment of the present application;
[0063] Figure 5 A schematic diagram of a bit stream format of an MTNS frame provided in an embodiment of the present application;
[0064] Figure 6 A schematic diagram of a bit stream format of an MTNS frame after rate adaptation processing provided in an embodiment of the present application;
[0065] Figure 7 A schematic diagram of a frame format of an fgMU frame provided in an embodiment of the present application;
[0066] Figure 8 A schematic diagram of the frame format of an fgMTNP frame provided in an embodiment of the present application;
[0067] Fig. 9 A schematic diagram of the structure of a first device provided in an embodiment of the present application;
[0068] Fig.10 A flowchart of another clock determination method provided in an embodiment of the present application;
[0069] Fig.11 A schematic diagram of the structure of a second device provided in an embodiment of the present application;
[0070] Fig.12 A flowchart of another clock determination method provided in an embodiment of the present application;
[0071] Fig.13 A schematic diagram of the structure of a third device provided in an embodiment of the present application;
[0072] Fig.14 An interactive schematic diagram of a clock determination method provided in an embodiment of the present application;
[0073] Fig.15 A schematic diagram of the structure of a clock determination device provided in an embodiment of the present application;
[0074] Fig.16 A schematic diagram of the structure of a network device provided in an embodiment of the present application;
[0075] Fig.17 A schematic diagram of the structure of another network device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0076] In order to make the objectives, technical solutions and advantages of the present application clearer, the implementation methods of the present application will be further described in detail below in conjunction with the accompanying drawings.
[0077] With the development of communication technology, CBR services are increasingly carried in TDM networks, which can be MTN, SPN or OTN. Taking MTN as an example, MTN has been defined in the International Telecommunication Union (ITU) standard, see ITU-TG.8312 standard. In addition, fine grain MTN (fgMTN) is developing rapidly, so that CBR services can be carried in fgMTN.
[0078] For example, the networking structure of MTN carrying CBR service can be as follows: Figure 1 As shown. Among them, the customer edge (CE) 1 device and the CE2 device are client devices, and the network element (NE) A device, NEB device, NEC device and NED device are network devices in MTN, referred to as MTN devices. The CE1 device is the sender of the CBR service; the NEA device is the source node of the CBR service, that is, the NEA device is the first node of the CBR service in MTN; the NEB device and the NEC device are the intermediate nodes of the CBR service, that is, the NEB device and the NEC device are the nodes between the first node and the last node of the CBR service in MTN; the NED device is the sink node of the CBR service, that is, the NED device is the last node of the CBR service in MTN; the CE2 device is the receiver of the CBR service. The CBR service is sent by the CE1 device and transmitted to the CE2 device via the NEA device, NEB device, NEC device and NED device in MTN.
[0079] CE1 device sends the data stream of CBR service. NEA device first encapsulates the data stream of CBR service sent by CE1 device into CBR container, then encapsulates CBR container into fgMTNP frame, then multiplexes fgMTNP frame into fgMU frame, then encapsulates fgMU frame into MTNP frame, then encapsulates MTNP frame into MTNS frame. NEA device sends the MTNS frame to NEB device. NEB device parses the received MTNS frame, obtains fgMTNP frame in MTNS frame, then multiplexes fgMTNP frame into fgMU frame, then encapsulates fgMU frame into MTNP frame, then encapsulates MTNP frame into MTNS frame. NEB device sends the MTNS frame to NEC device. NEC device then sends MTNS frame to NED device after similar processing as NEB device. After NED device parses fgMTNP frame, it parses out the data stream of CBR service in fgMTNP frame and sends the data stream of CBR service to CE2 device.
[0080] The data stream of the CBR service may be a bit stream of the CBR service. The NED device needs to send the data stream of the CBR service to the CE2 device using the clock of the CBR service transmitter CE1 to ensure that the CE2 device can correctly receive the data stream of the CBR service. That is, the destination node of the CBR service needs to recover the clock of the CBR service transmitter CE1. In the case where the destination node of the CBR service and the source node of the CBR service do not have a common clock source, there may be a deviation between the clocks of the destination node of the CBR service and the source node of the CBR service. Therefore, if the destination node of the CBR service wants to recover the clock of the CBR service, it is necessary to first determine the clock of the source node of the CBR service.
[0081] An embodiment of the present application provides a clock determination method, which is used for enabling a sink node of a CBR service to determine the clock of a source node of the CBR service in the absence of a common clock source, so that the sink node of the CBR service can recover the clock of the CBR service based on the clock of the source node of the CBR service, and then send a data stream of the CBR service to a receiving end of the CBR service based on the clock of the CBR service.
[0082] The implementation environment of the clock determination method is not limited in the present application embodiment, and can be applied to any TDM network networking structure. For example, the TDM network can be MTN, SPN, OTN or fgMTN. For example, the clock determination method can be applied to Figure 1 In the network structure shown, Figure 1 In the figure, four MTN devices are used as an example. Figure 1 The number of MTN devices in the MTN may be more or less, which is not limited in the embodiment of the present application. Optionally, the transmission path of the CBR service includes a source node and a sink node, and the transmission path of the CBR service may not include an intermediate node. For example, the clock determination method may be applied to Figure 2 Alternatively, the transmission path of the CBR service includes a source node and a sink node, and may also include at least one intermediate node. For example, the clock determination method can be applied to Figure 3 In the networking structure shown, the NEA device and the NED device are connected via the NEB device. In this embodiment of the application, the number of the at least one intermediate node is not limited, and the operation of the clock determination method performed by each of the at least one intermediate node is the same.
[0083] Take the sink node of CBR service as an example to execute this method, see Figure 4 , Figure 4 A flowchart of a clock determination method provided in an embodiment of the present application. The method can be applied to Figure 1-Figure 3In any of the network structures shown, optionally, the sink node of the CBR service is Figure 1-Figure 3 Any NED device shown. Figure 4 As shown, the sink node of the CBR service is called the first device, and the clock determination method includes but is not limited to the following S401 and S402.
[0084] S401, a first device receives a first data frame carrying a CBR service, the first data frame carrying first clock deviation information, the first clock deviation information indicating a deviation between a clock of a second device and a clock of a third device, the second device being a node preceding a destination node, the third device being a source node of the CBR service, the first clock deviation information including a code block difference between the first data frame and a second data frame sent by the third device, or the first clock deviation information including a frequency deviation corresponding to a code block difference between the first data frame and the second data frame, and the second data frame corresponds to the first data frame.
[0085] In the embodiment of the present application, the second device is a node preceding the sink node. For example, the second device may be Figure 1 The NEC device shown, or the second device may be Figure 2 The NEA device shown, or the second device may be Figure 3 That is, the first data frame received by the first device is sent by the second device, and the first clock deviation information carried in the first data frame is added by the second device. The third device is the source node of the CBR service. For example, the third device can be Figure 1-Figure 3 Any NEA device shown.
[0086] The embodiment of the present application does not limit the content of the first clock deviation information, and it is sufficient that it can indicate the deviation between the clock of the second device and the clock of the third device. Among them, the clock of the device may refer to the local clock of the device, or it may refer to the clock after the local clock of the device is synchronized. For two adjacent network devices, the network device that sends data frames is called a sending device, and the network device that receives data frames is called a receiving device. In the process of receiving data frames, the receiving device will perform rate adaptation processing on the received data frames due to the deviation between the clock of the receiving device and the clock of the sending device. Among them, the rate adaptation processing may refer to deleting or adding control code blocks in the received data frames so that the sending rate of the sending device is adapted to the receiving rate of the receiving device. Optionally, the control code block may be an idle code block.
[0087] If the sending rate of the sending device is faster than the receiving rate of the receiving device, the buffer data writing rate of the receiving device will be faster than the reading rate, which will cause buffer overflow in the long run. Therefore, the receiving device needs to avoid buffer overflow of the receiving device by deleting control code blocks. If the sending rate of the sending device is slower than the sending rate of the receiving device, the buffer data writing rate of the receiving device will be slower than the reading rate, which will cause buffer empty reading in the long run. Therefore, the receiving device needs to avoid buffer empty reading of the receiving device by adding control code blocks. Taking the sending rate of the sending device as an example, the sending rate is faster than the sending rate of the receiving device. In the process of sending data frames based on the clock of the sending device, the sending device sends 10 code blocks in 1 second, and in the process of receiving data frames based on the clock of the receiving device, the receiving device receives 9 code blocks in 1 second. The receiving device can add an idle code block to the 9 received code blocks through rate adaptation processing, so that the number of code blocks received by the receiving device in 1 second matches the number of code blocks sent by the sending device in 1 second.
[0088] That is to say, the difference between the data frames before and after the rate adaptation process is that the number of control code blocks included is different, but the CBR services carried are the same. In an embodiment of the present application, the second data frame sent by the third device corresponds to the first data frame sent by the second device, that is, the data frame carrying the same CBR service is called the second data frame when sent by the third device, the first data frame when sent by the second device, and the first data frame when received by the first device. That is, the number of control code blocks included between the second data frame and the first data frame may be different, but the CBR services carried are the same. Therefore, the code block difference between the first data frame and the second data frame can be used to indicate the deviation between the clock of the second device and the clock of the third device, or the frequency deviation corresponding to the code block difference between the first data frame and the second data frame can be used to indicate the deviation between the clock of the second device and the clock of the third device.
[0089] The second device is Figure 1 The NEC device shown, the third device is Figure 1 Taking the NEA device shown in FIG. 1 as an example, the first clock deviation information indicates the deviation between the clock of the NEC device and the clock of the NEA device. In this scenario, a fourth device is included between the second device and the third device, and the fourth device is Figure 1 The NEB device receives the second data frame sent by the NEA device, performs rate adaptation processing on the second data frame to obtain a fourth data frame, and the NEB device sends the fourth data frame to the NEC device; the NEC device performs rate adaptation processing on the received fourth data frame to obtain a first data frame, and the NEC device sends the first data frame to the NED device.
[0090] In the case where the first clock deviation information includes a code block difference between the first data frame and the second data frame sent by the third device, the code block difference between the first data frame and the second data frame is two code block differences, namely, the first code block difference and the second code block difference, or the code block difference between the first data frame and the second data frame is the cumulative value of the first code block difference and the second code block difference. The first code block difference is the code block difference between the first data frame and the fourth data frame sent by the fourth device, and the second code block difference is the code block difference between the fourth data frame and the second data frame.
[0091] In the case where the first clock deviation information includes a frequency deviation corresponding to a code block difference between the first data frame and the second data frame sent by the third device, the frequency deviation corresponding to the code block difference between the first data frame and the second data frame is the first frequency deviation and the second frequency deviation, or the frequency deviation corresponding to the code block difference between the first data frame and the second data frame is the cumulative value of the first frequency deviation and the second frequency deviation. The first frequency deviation is the frequency deviation corresponding to the code block difference between the first data frame and the fourth data frame, and the second frequency deviation is the frequency deviation corresponding to the code block difference between the fourth data frame and the second data frame.
[0092] In the case where there are at least two intermediate nodes, the first clock deviation information includes the cumulative value of the clock deviation between the last hop intermediate node and the source node. By carrying the cumulative value of the clock deviation, the byte position occupied by the first data frame carrying the first clock deviation information can be saved. That is to say, the first hop intermediate node of the CBR service will obtain the clock deviation information 1 between the first hop intermediate node and the source node, and carry the clock deviation information 1 in the data frame for transmission; each hop intermediate node of the CBR service except the first hop intermediate node will receive the data frame carrying the clock deviation information 2 between the previous hop intermediate node and the source node. For example, the second hop intermediate node of the CBR service will receive the data frame carrying the clock deviation information 1 sent by the first hop intermediate node, and the clock deviation information 2 is the clock deviation information 1 at this time; then each hop intermediate node will also obtain the clock deviation information 3 between each hop intermediate node and the previous hop intermediate node, and then carry the clock deviation information 2 and the cumulative value of the clock deviation information 3 as the clock deviation information between each hop intermediate node and the source node in the data frame for transmission.
[0093] The second device and the third device are Figure 2 Taking the NEA device shown as an example, the first clock deviation information indicates the deviation between the clock of the NEA device and the clock of the NEA device. If there is no deviation between the clocks of the same device, the value of the first clock deviation information can be zero or empty. In this scenario, the NEA device sends a first data frame to the NED device.
[0094] The second device is Figure 3 The NEB device shown, the third device is Figure 3 Taking the NEA device shown in the figure as an example, the first clock deviation information indicates the deviation between the clock of the NEB device and the clock of the NEA device. In this scenario, the NEB device receives the second data frame sent by the NEA device, performs rate adaptation processing on the second data frame, obtains the first data frame, and the NEB device sends the first data frame to the NED device. For example, the second data frame sent by the third device is an MTNS frame, see Figure 5 Schematic diagram of the bit stream format of the MTNS frame shown in FIG. The second data frame includes two O code blocks, three I code blocks and four fgMU code blocks. The O code block represents the OAM code block in MTN, including 66 bits; the I code block represents the idle code block, including 66 bits, and both the O code block and the I code block are control code blocks; the fgMU code block represents the fgMU frame, including 992*66 bits, which is used to carry CBR services.
[0095] In the embodiment of the present application, the number of bits between two O code blocks is fixed, for example, 32768*66 bits are included between two O code blocks. In addition, the number of I code blocks is also fixed, for example, the number of I code blocks is 31. When the NEB device receives the MTNS frame, due to the deviation between the clock of the NEB device and the clock of the NEA device, after the rate adaptation process, the NEB device will add idle code blocks to the received bit stream or delete idle code blocks.
[0096] Taking the clock deviation as an example, the NEB device deletes one idle code block. The second data frame after the NEB device rate adaptation processing can be as follows: Figure 6 In this case, the first clock deviation information indicating the deviation between the clock of the NEB device and the clock of the NEA device can be expressed as ΔI(NEA, NEB)=-1, that is, Figure 6 The data frame shown is similar to Figure 5 The code block difference between the data frames shown is negative 1. Alternatively, the first clock deviation information indicating the deviation between the clock of the NEB device and the clock of the NEA device can be expressed as Δf(NEA, NEB)=(66bit) / 32768*66bit=1 / 32768, that is, Figure 6 The data frame shown is similar to Figure 5 The frequency deviation corresponding to the code block difference between the data frames shown is 1 / 32768.
[0097] In the following, the first data frame is taken as an example to illustrate the position where the first clock deviation information is carried in the first data frame. Optionally, the first clock deviation information can be carried in the overhead area of the fgMU frame included in the MTNS frame. For example, see Figure 7 The frame format diagram of the fgMU frame is shown in FIG. Figure 7 In the , each line is 66 bits, the first 2 bits "10" or "01" are the synchronization header bits, and the last 64 bits are the payload bits, which can be used to carry payload data, etc. The code block corresponding to the synchronization header bit "10" can be a control code block, which can include a control block type field (controlblock type field). For example, the control block type field S0 of the first line is 0x78, and the control code block corresponding to S0 is the start code block; the control block type field T7 of the 992nd line is 0xFF, and the control code block corresponding to T7 is the end code block. The first 7 bytes (bytes) of the second line are the overhead (OH) area, which is used to carry the overhead OH information. The 7920-byte payload area starting from the 8th byte of the second line is the payload (payload), which is used to carry CBR services. Therefore, the first clock deviation information can be carried in Figure 7 The OH region of the fgMU frame is shown.
[0098] Alternatively, the first clock deviation information may also be carried in the OAM code block of the fgMTNP frame included in the MTNS frame. Figure 8 The frame format diagram of the fgMTNP frame is shown in FIG. Figure 8 In the example, an OAM code block is inserted every k*512 code blocks, k can be any positive integer between 1 and 480, and the OAM code block can be a basic (B) code block, an automatic protection switching (A) code block, or a low priority (L) code block. Therefore, the first clock deviation information can be carried in Figure 8 In the B code block, A code block or L code block of the fgMTNP frame shown.
[0099] S402: The first device determines the clock of the third device based on the first clock deviation information and the clock of the first device.
[0100] In the embodiment of the present application, since the first data frame carries the first clock deviation indicating the difference between the clock of the second device and the clock of the third device, the first device can determine the clock of the third device based on the first clock deviation information. Optionally, the clock of the third device is determined based on the first clock deviation information and the clock of the first device, including: performing rate adaptation processing on the first data frame to obtain a third data frame; obtaining second clock deviation information based on the code block difference between the third data frame and the first data frame, the second clock deviation information indicating the deviation between the clock of the first device and the clock of the second device; and determining the clock of the third device based on the first clock deviation information, the second clock deviation information and the clock of the first device.
[0101] For the implementation method of the rate adaptation processing performed by the first device on the first data frame, please refer to the relevant description of the rate adaptation processing in S401, which will not be repeated here. In the case where the first clock deviation information includes the code block difference between the first data frame and the second data frame sent by the third device, the code block difference between the third data frame and the first data frame is used as the second clock deviation information; then, based on the first clock deviation information, the second clock deviation information and the clock of the first device, the clock of the third device is determined by accumulating the first clock deviation information and the second clock deviation information to obtain the accumulated code block difference, obtaining the accumulated frequency deviation corresponding to the accumulated code block difference, and determining the clock of the third device in combination with the clock of the first device and the accumulated frequency deviation.
[0102] For example, Figure 1 Taking the networking structure shown as an example, the first clock deviation information is ΔI(NEA, NEC), the second clock deviation information is ΔI(NEC, NED), the first clock deviation information and the second clock deviation information are accumulated to obtain the accumulated code block difference ΔI(NEA, NED), and the accumulated frequency deviation corresponding to the accumulated code block difference is Δf(NEA, NED)=ΔI(NEA, NED) / 32768. Taking T1 as the clock of the first device and T3 as the clock of the third device as an example, T3=T1*(1+Δf)=T1+T1*Δf.
[0103] In the case where the first clock deviation information includes the frequency deviation corresponding to the code block difference between the first data frame and the second data frame sent by the third device, the frequency deviation corresponding to the code block difference between the third data frame and the first data frame is used as the second clock deviation information; further, based on the first clock deviation information, the second clock deviation information and the clock of the first device, the clock of the third device is determined by accumulating the first clock deviation information and the second clock deviation information to obtain the cumulative frequency deviation, and combining the clock of the first device and the cumulative frequency deviation to determine the clock of the third device. Exemplarily, still with Figure 1 Taking the network structure shown as an example, the first clock deviation information is Δf(NEA, NEC), the second clock deviation information is Δf(NEC, NED), and the cumulative frequency deviation is Δf(NEA, NED) = Δf(NEA, NEC) + Δf(NEC, NED). Then the clock of the third device is T3 = T1*(1+Δf) = T1+T1*Δf.
[0104] In the embodiment of the present application, compared with using the frequency deviation corresponding to the code block difference as the clock deviation information, the method of using the code block difference as the clock deviation information saves the calculation overhead because there is no need for the intermediate node to calculate the frequency deviation corresponding to different code block differences hop by hop. And because the calculation process of calculating the frequency deviation includes a division operation, the division will reduce the calculation accuracy if the division is not complete, and then the calculation of the frequency deviation hop by hop will reduce the accuracy of the accumulated frequency deviation obtained, so that the code block difference is used as the clock deviation information to be carried in the data frame, and the host node calculates the accumulated frequency deviation corresponding to the accumulated code block difference, and only one division operation needs to be performed, which can improve the accuracy of the accumulated frequency deviation.
[0105] In a possible implementation, based on the sink node determining the clock of the source node, the clock of the CBR service can also be restored based on the clock of the source node. Optionally, the first data frame also carries the transmission information of the CBR service, and after determining the clock of the third device, the clock of the CBR service is restored based on the clock of the third device and the transmission information. Furthermore, the first device can send the data stream of the CBR service to the receiving end of the CBR service based on the clock of the CBR service.
[0106] The embodiments of the present application do not limit the content included in the transmission information of the CBR service, and it can be used for the host node of the CBR service to recover the clock of the CBR service. For example, the transmission information of the CBR service is information indicating the deviation between the clock of the CBR service and the clock of the third device, and the host node of the CBR service can recover the clock of the CBR service based on the deviation between the clock of the third device and the clock of the CBR service. For example, the transmission information may include the number of bits of the CBR service included in the first data frame. Since the second data frame corresponds to the first data frame, the number of bits of the CBR service included in the second data frame is the number of bits of the CBR service included in the first data frame. Through this transmission information, the deviation between the clock of the third device and the clock of the CBR service can be indicated, which improves the flexibility of recovering the clock of the CBR service based on the transmission information.
[0107] Optionally, determining the clock of the CBR service based on the clock of the third device and the transmission information includes: determining the deviation between the clock of the CBR service and the clock of the third device based on the transmission information, and determining the clock of the CBR service based on the deviation between the clock of the CBR service and the clock of the third device and the clock of the third device. The embodiment of the present application does not limit the carrying position of the transmission information of the CBR service in the first data frame. Taking the first data frame as an MTNS frame as an example, the number of bits can be carried in the overhead area of the CBR container contained in the MTNS frame. In addition, the number of bits can also be carried in the overhead area of the fgMTNP frame contained in the MTNS frame.
[0108] Among them, the transmission information of the CBR service can be added by the third device. For example, after the third device receives the data stream of the CBR service sent by the sender, the data stream of the CBR service is written into the overhead area of the fgMTNP frame by using the generic mapping procedure (GMP) mapping method. At the same time, the third device calculates the number of bits of the CBR service carried by each fgMTNP frame, and puts the number of bits into the overhead area of the fgMTNP frame or the overhead area of the CBR container. The implementation process of the GMP mapping method can be found in the relevant description in the ITU-TG.709 standard, and the embodiments of this application will not be repeated. Taking Cn as an example to represent the actual number of bits carried by the fgMTNP frame, and Pserver as the number of CBR service bits that the fgMTNP frame can theoretically carry, the deviation between the clock of the CBR service and the clock of the third device is Δf', Δf'=(Pserver-Cn) / Pserver, then the clock of the CBR service is T', T'=T3*(1+Δf')=T3+T3*Δf', and T3 is the clock of the third device.
[0109] The clock determination method provided by the embodiment of the present application carries the first clock deviation information in the first data frame, so that when there is no common clock source between the sink node and the source node, the sink node can determine the clock of the source node through the first clock deviation information carried in the first data frame, thereby improving the stability of the sink node determining the clock of the source node. In addition, the first clock deviation information indicates the deviation between the clock of the second device and the clock of the third device through the code block difference between the second data frame and the first data frame or the frequency deviation corresponding to the code block difference, so that the first clock deviation information can more accurately indicate the clock deviation.
[0110] See also Fig. 9 , Fig. 9 A schematic diagram of the structure of a first device provided in an embodiment of the present application. The first device includes a line side board and a client side board, wherein port 2 of the line side board is connected to a network device for receiving a first data frame, and port 1 of the client side board is connected to a client device for sending a data stream of a CBR service. Fig. 9 In the figure, the first data frame is taken as an example where the MTNS frame is used.
[0111] Exemplarily, after receiving the MTNS frame through port 2 of the line side board, the MTNS frame is demapped through the MTN demapping module based on the clock of the first device to obtain the MTNP frame; then, based on the clock of the first device, the MTNP frame is decapsulated through the MTNP decapsulation module to obtain the fgMU frame; after multiple fgMU frames are crossed through the cross board through the time slot, they are sent to the client side board; still based on the clock of the first device, the fgMU frame is demapped through the fgMTN demapping module of the client side board to obtain the fgMTNP frame; then, based on the clock of the first device, the fgMTNP frame is demapped through the CBR demapping module to obtain the data stream of the CBR service. Among them, the method of the embodiment of the present application is also executed through the CBR demapping module to recover the clock of the CBR service, so as to use the clock of the CBR service to send the data stream of the CBR service to the client device through port 1 of the client side board.
[0112] in, Fig. 9 The modules shown, such as the MTN demapping module, the MTNP decapsulation module, the fgMTN demapping module, and the CBR demapping module, can be deployed at any position of the client side board, the cross board, and the line side board, and are not limited in the embodiments of the present application. Fig. 9 The deployment positions shown are for exemplary purposes only.
[0113] Take the method executed by the intermediate node of CBR service as an example, see Fig.10 , Fig.10 A flowchart of a clock determination method provided in an embodiment of the present application. The method can be applied to Figure 1 or Figure 3 In the network structure shown, optionally, the intermediate node of the CBR service is Figure 1 The NEB device or NEC device shown, or the intermediate node of the CBR service is Figure 3 NEB equipment shown. Fig.10 As shown, the intermediate node of the CBR service is called the second device, and the clock determination method includes but is not limited to the following S1001 and S1002.
[0114] S1001, the second device obtains the fifth data frame carrying the CBR service, the fifth data frame carries first clock deviation information, the first clock deviation information indicates the deviation between the clock of the second device and the clock of the third device, the third device is the source node of the CBR service, the first clock deviation information includes the code block difference between the fifth data frame and the second data frame sent by the third device, or the first clock deviation information includes the frequency deviation corresponding to the code block difference between the fifth data frame and the second data frame.
[0115] In the embodiment of the present application, the third device can be Figure 1 or Figure 3 The NEA device shown. The implementation method of the first clock deviation information can refer to the relevant description of the first clock deviation information in S401, which will not be repeated here. In this scenario, the first clock deviation information is obtained by the second device and added. Optionally, the second device obtains the fifth data frame carrying the CBR service, including: receiving the sixth data frame carrying the CBR service; performing rate adaptation processing on the sixth data frame to obtain the seventh data frame; obtaining the first clock deviation information according to the code block difference between the sixth data frame and the seventh data frame; adding the first clock deviation information to the seventh data frame to obtain the fifth data frame. The implementation method of the rate adaptation processing can refer to the relevant description in S401, which will not be repeated here.
[0116] On the second device Figure 1 or Figure 3 In the case of the NEB device shown in FIG. 1 , according to the code block difference between the sixth data frame and the seventh data frame, the first clock deviation information is obtained by using the code block difference between the sixth data frame and the seventh data frame as the first clock deviation information, or using the frequency deviation corresponding to the code block difference between the sixth data frame and the seventh data frame as the first clock deviation information. In this case, the sixth data frame is Figure 4 The second data frame in the method shown.
[0117] On the second device Figure 1 In the case of the NEC device shown in FIG. 1 , a fourth device is included between the second device and the third device, and the fourth device is a node preceding the second device, that is, the fourth device is Figure 1 The NEB device shown. The sixth data frame also carries the third clock deviation information, which indicates the deviation between the clock of the fourth device and the clock of the third device; then according to the code block difference between the sixth data frame and the seventh data frame, the first clock deviation information is obtained by determining the fourth clock deviation information according to the code block difference between the sixth data frame and the seventh data frame, and the fourth clock deviation indicates the deviation between the clock of the second device and the clock of the fourth device; the cumulative value of the fourth clock deviation information and the third clock deviation information is used as the first clock deviation information. In this case, the sixth data frame is Figure 4 The fourth data frame in the method shown.
[0118] For the location where the first clock deviation information is carried in the fifth data frame, refer to the relevant description in S401. Taking the fifth data frame as an MTNS frame as an example, the first clock deviation information is carried in the overhead area of the fgMU frame included in the MTNS frame, or the first clock deviation information is carried in the OAM code block included in the MTNS frame.
[0119] S1002, the second device sends a fifth data frame.
[0120] In an embodiment of the present application, the second device sends a fifth data frame to the next intermediate node or the sink node. The clock determination method provided in the embodiment of the present application enables the intermediate node to carry clock deviation information in the data frame and send it to the sink node, so that the sink node can determine the clock of the source node according to the clock deviation information carried in the data frame, thereby providing a guarantee for the sink node to determine the clock of the source node.
[0121] See also Fig.11 , Fig.11 A schematic diagram of the structure of a second device provided in an embodiment of the present application. The second device includes two line-side boards, port 1 of any line-side board is connected to the network device of the previous hop for receiving the sixth data frame; port 2 of the other line-side board is connected to the network device of the next hop for sending the fifth data frame. Fig.11 In the figure, the fifth data frame is taken as the first MTNS frame and the sixth data frame is taken as the second MTNS frame as an example.
[0122] Exemplarily, after receiving the MTNS frame through port 1 of any line-side board, the MTNS frame is demapped through the MTN demapping module based on the clock of the second device to obtain the MTNP frame; then, based on the clock of the second device, the MTNP frame is decapsulated through the MTNP decapsulation module to obtain the fgMU frame; after multiple fgMU frames are crossed through the cross board through time slots, they are sent to the other line-side board; still based on the clock of the second device, the fgMU frame is encapsulated through the MTNP encapsulation module of the other line-side board to obtain the MTNP frame, and optionally, the clock deviation information is also encapsulated through the MTNP encapsulation module; then, based on the clock of the second device, the MTNP frame is mapped through the MTN mapping module to obtain the MTNS frame; and the MTNS frame is sent through port 2 of the other line-side board.
[0123] in, Fig.11 The modules shown, such as the MTN demapping module, the MTNP decapsulation module, the MTNP encapsulation module and the MTN mapping module, can be deployed at any position of the cross-connect board and the line-side board, and are not limited in the embodiments of the present application. Fig.11 The deployment positions shown are for exemplary purposes only.
[0124] Take the source node of CBR service to execute this method as an example, see Fig.12 , Fig.12 A flowchart of a clock determination method provided in an embodiment of the present application. The method can be applied to Figure 1-Figure 3 In the network structure shown, optionally, the source node of the CBR service is Figure 1-Figure 3 NEA equipment shown. Fig.12As shown, the source node of the CBR service is called the third device, and the clock determination method includes but is not limited to the following S1201-S1203.
[0125] S1201: A third device receives a data stream of a CBR service and obtains transmission information of the CBR service. The transmission information is used by a sink node of the CBR service to restore a clock of the CBR service.
[0126] In a possible implementation, the transmission information of the CBR service may include the number of bits of the CBR service included in the first data frame. Different transmission information can indicate the deviation between the clock of the third device and the clock of the CBR service, thereby improving the flexibility of recovering the clock of the CBR service based on the transmission information. The implementation method of the third device obtaining the transmission information of the CBR service can refer to the relevant description in S402, which will not be repeated here.
[0127] S1202: The third device encapsulates the data stream of the CBR service into a second data frame, where the second data frame carries transmission information of the CBR service.
[0128] In a possible implementation, taking the second data frame as an MTNS frame as an example, when the transmission information of the CBR service includes the number of bits of the CBR service included in the second data frame, the number of bits can be carried in the overhead area of the fgMTNP frame included in the MTNS frame, or the number of bits can also be carried in the overhead area of the CBR container included in the MTNS frame. The transmission information can be flexibly carried in different positions of the data frame, which improves the stability of the data frame in carrying the transmission information.
[0129] S1203, the third device sends a second data frame.
[0130] In an embodiment of the present application, the third device sends a second data frame to the next intermediate node or the sink node. In the clock determination method provided in the embodiment of the present application, the source node carries the transmission information of the CBR service in the second data frame and sends the second data frame carrying the transmission information of the CBR service. This enables the sink node to obtain the transmission information of the CBR service, and then enables the sink node to restore the clock of the CBR service according to the transmission information of the CBR service, thereby providing a guarantee for the sink node to restore the clock of the CBR service.
[0131] See also Fig.13 , Fig.13 A schematic diagram of the structure of a third device provided in an embodiment of the present application. The third device includes a client-side board and a line-side board, wherein port 1 of the client-side board is connected to the transmitting end of the CBR service for receiving the data stream of the CBR service; port 2 of the line-side board is connected to the network device of the next hop for sending a second data frame. Fig.13In the figure, the second data frame is taken as an example where the MTNS frame is used.
[0132] Exemplarily, after receiving the data stream of the CBR service through port 1 of the line side board, based on the clock of the third device, the data stream of the CBR service is loaded into the CBR container and then into the fgMTNP frame through the CBR mapping module, wherein the transmission information of the CBR service is also carried to the overhead area of the CBR container through the CBR mapping module to obtain the fgMTNP frame; then based on the clock of the third device, the fgMTNP frame is mapped through the fgMTN mapping module to obtain the fgMU frame; after the multiple fgMU frames are crossed through the time slots through the cross board, they are sent to the line side board; still based on the clock of the third device, the fgMU frame is encapsulated through the MTNP encapsulation module of the line side board to obtain the MTNP frame; then based on the clock of the third device, the MTNP frame is mapped through the MTN mapping module to obtain the MTNS frame; the MTNS frame is sent through port 2 of the line side board.
[0133] in, Fig.13 The CBR mapping module, fgMTN mapping module, MTNP encapsulation module, and MTN mapping module shown in the figure can be deployed at any position of the client side board, the cross board, and the line side board, and the embodiment of the present application is not limited thereto. Fig.13 The deployment positions shown are for exemplary purposes only.
[0134] Take the source node, intermediate node and sink node of CBR service interactively executing this method as an example, see Fig.14 , Fig.14 The following is an interactive diagram of a clock determination method provided in an embodiment of the present application. Figure 3 The network structure shown in the figure is used as an example to illustrate that the source node of the CBR service is Figure 3 The NEA equipment shown in the figure has an intermediate node for CBR service. Figure 3 The NEB equipment shown in the figure has a sink node for CBR services. Figure 3 The NED device shown. Fig.14 The clock determination method shown includes but is not limited to the following S1401-S1406.
[0135] S1401, a source node of a CBR service receives a data stream of the CBR service and obtains transmission information of the CBR service. The transmission information is used by a sink node of the CBR service to restore a clock of the CBR service.
[0136] S1402: The source node of the CBR service encapsulates the data stream of the CBR service into a second data frame, where the second data frame carries transmission information of the CBR service.
[0137] S1403: The source node of the CBR service sends a second data frame to the intermediate node of the CBR service.
[0138] S1404, the intermediate node of the CBR service performs rate adaptation processing on the received second data frame to obtain a fourth data frame; obtains first clock deviation information based on the code block difference between the fourth data frame and the second data frame; and adds the first clock deviation information to the fourth data frame to obtain the first data frame.
[0139] S1405: The intermediate node of the CBR service sends a first data frame to the destination node of the CBR service.
[0140] S1406, the destination node of the CBR service performs rate adaptation processing on the received first data frame to obtain a third data frame; obtains second clock deviation information based on the code block difference between the third data frame and the first data frame; determines the clock of the source node of the CBR service based on the first clock deviation information and the second clock deviation information carried in the first data frame; and restores the clock of the CBR service based on the clock of the source node and the transmission information carried in the first data frame.
[0141] In the embodiments of the present application, the implementation of S1401-S1406 can be found in Figure 4 , Fig.10 and Fig.12 The relevant description in the method shown will not be repeated here.
[0142] The above describes the clock determination method of the embodiment of the present application. Corresponding to the above method, the embodiment of the present application also provides a clock determination device. Fig.15 is a schematic diagram of a clock determination device provided in an embodiment of the present application, based on Fig.15 As shown in the following multiple modules, the Fig.15 The clock determination device shown is capable of performing Figure 4 All or part of the operations performed by the first device in the method shown, or the Fig.15 The clock determination device shown is capable of performing Fig.10 All or part of the operations performed by the second device in the method shown, or the Fig.15 The clock determination device shown is capable of performing Fig.12 All or part of the operations performed by the third device in the method shown. It should be understood that the device may include more additional modules than the modules shown or omit some of the modules shown, and the embodiments of the present application are not limited to this.
[0143] exist Fig.15 When the apparatus is applied to a first device, the first device is a sink node of a CBR service. For example, the first device is the above-mentioned Figure 1-3 The NED device shown. Fig.15 As shown, the device includes: a transceiver module 1501, which is used to execute Figure 4 The receiving and / or sending related operations performed by the first device in the clock determination method shown in FIG. 15; the processing module 1502 is used to perform Figure 4 Other operations besides the receiving and / or sending related operations performed by the first device in the clock determination method shown.
[0144] In a possible implementation, the transceiver module includes a receiving module and / or a sending module. The receiving module is used to perform reception-related operations, and the sending module is used to perform sending-related operations.
[0145] In one possible implementation, the transceiver module 1501 is used to receive a first data frame carrying a CBR service, the first data frame carrying first clock deviation information, the first clock deviation information indicating the deviation between the clock of the second device and the clock of the third device, the second device is the previous node of the destination node, the third device is the source node of the CBR service, the first clock deviation information includes the code block difference between the first data frame and the second data frame sent by the third device, or the first clock deviation information includes the frequency deviation corresponding to the code block difference between the first data frame and the second data frame, and the second data frame corresponds to the first data frame; the processing module 1502 is used to determine the clock of the third device based on the first clock deviation information and the clock of the first device.
[0146] In one possible implementation, the processing module 1502 is used to perform rate adaptation processing on the first data frame to obtain a third data frame; obtain second clock deviation information based on the code block difference between the third data frame and the first data frame, and the second clock deviation information indicates the deviation between the clock of the first device and the clock of the second device; determine the clock of the third device based on the first clock deviation information, the second clock deviation information and the clock of the first device.
[0147] In a possible implementation, a fourth device is included between the second device and the third device; when the first clock deviation information includes a code block difference between the first data frame and the second data frame sent by the third device, the code block difference between the first data frame and the second data frame is an accumulated value of the first code block difference and the second code block difference, the first code block difference is a code block difference between the first data frame and a fourth data frame sent by the fourth device, and the second code block difference is a code block difference between the fourth data frame and the second data frame;
[0148] In the case where the first clock deviation information includes a frequency deviation corresponding to a code block difference between a first data frame and a second data frame, the frequency deviation corresponding to the code block difference between the first data frame and the second data frame is a cumulative value of the first frequency deviation and the second frequency deviation, the first frequency deviation is the frequency deviation corresponding to the code block difference between the first data frame and the fourth data frame, and the second frequency deviation is the frequency deviation corresponding to the code block difference between the fourth data frame and the second data frame.
[0149] In a possible implementation, the first data frame is an MTNS frame, and the first clock deviation information is carried in an overhead area of an fgMU frame included in the MTNS frame, or, alternatively, the first clock deviation information is carried in an OAM code block included in the MTNS frame.
[0150] In a possible implementation manner, the first data frame also carries transmission information of the CBR service, and the processing module 1502 is further configured to restore the clock of the CBR service according to the clock of the third device and the transmission information.
[0151] In one possible implementation, the first data frame is an MTNS frame, and the transmission information includes the number of bits of the CBR service included in the first data frame, and the number of bits is carried in the overhead area of the fgMTNP frame contained in the MTNS frame; or, the transmission information includes the number of bits of the CBR service included in the first data frame, and the number of bits is carried in the overhead area of the CBR container contained in the MTNS frame.
[0152] In a possible implementation manner, the code block difference is a difference of idle code blocks.
[0153] exist Fig.15 When the apparatus is applied to a second device, the second device is an intermediate node of a CBR service. For example, the second device is the above-mentioned Figure 1 The NEB device or NEC device shown, or the second device is the above Figure 3 NEB equipment shown. Fig.15 As shown, the device includes: a transceiver module 1501, which is used to execute Fig.10 The receiving and / or sending related operations performed by the second device in the clock determination method shown in FIG. 15; the processing module 1502 is used to perform Fig.10 Other operations besides the receiving and / or sending related operations performed by the second device in the clock determination method shown.
[0154] In a possible implementation, the transceiver module includes a receiving module and / or a sending module. The receiving module is used to perform reception-related operations, and the sending module is used to perform sending-related operations.
[0155] In one possible implementation, the processing module 1502 is used to obtain a fifth data frame carrying a CBR service, the fifth data frame carries first clock deviation information, the first clock deviation information indicates a deviation between a clock of a second device and a clock of a third device, the third device is a source node of the CBR service, the first clock deviation information includes a code block difference between the fifth data frame and a second data frame sent by the third device, or the first clock deviation information includes a frequency deviation corresponding to the code block difference between the fifth data frame and the second data frame; the transceiver module 1501 is used to send the fifth data frame.
[0156] In one possible implementation, the processing module 1502 is used to receive a sixth data frame carrying a CBR service; perform rate adaptation processing on the sixth data frame to obtain a seventh data frame; obtain first clock deviation information based on a code block difference between the sixth data frame and the seventh data frame; and add the first clock deviation information to the seventh data frame to obtain a fifth data frame.
[0157] In one possible implementation, a fourth device is included between the second device and the third device, and the sixth data frame also carries third clock deviation information, the third clock deviation information indicates the deviation between the clock of the fourth device and the clock of the third device, and the fourth device is the previous node of the second device; the processing module 1502 is used to determine the fourth clock deviation information based on the code block difference between the sixth data frame and the seventh data frame, the fourth clock deviation indicates the deviation between the clock of the second device and the clock of the fourth device; and the cumulative value of the fourth clock deviation information and the third clock deviation information is used as the first clock deviation information.
[0158] In a possible implementation, the fifth data frame is an MTNS frame, and the first clock deviation information is carried in an overhead area of an fgMU frame included in the MTNS frame, or the first clock deviation information is carried in an OAM code block included in the MTNS frame.
[0159] In a possible implementation manner, the code block difference is a difference of idle code blocks.
[0160] exist Fig.15 When the apparatus is applied to a third device, the third device is a source node of a CBR service. For example, the third device is the above-mentioned Figure 1-Figure 3 NEA equipment shown. Fig.15 As shown, the device includes: a transceiver module 1501, which is used to execute Fig.12 The receiving and / or sending related operations performed by the third device in the clock determination method shown in FIG. 15; the processing module 1502 is used to perform Fig.12 Other operations besides the receiving and / or sending related operations performed by the third device in the clock determination method shown.
[0161] In a possible implementation, the transceiver module includes a receiving module and / or a sending module. The receiving module is used to perform reception-related operations, and the sending module is used to perform sending-related operations.
[0162] In a possible implementation, the transceiver module 1501 is used to receive the data stream of the CBR service; the processing module 1502 is used to obtain the transmission information of the CBR service, and the transmission information is used by the host node of the CBR service to restore the clock of the CBR service; the data stream of the CBR service is encapsulated into a second data frame, and the second data frame carries the transmission information of the CBR service; the transceiver module 1501 is also used to send the second data frame.
[0163] In one possible implementation, the second data frame is an MTNS frame, and the transmission information includes the number of bits of the CBR service included in the second data frame, and the number of bits is carried in the overhead area of the fgMTNP frame contained in the MTNS frame; or, the transmission information includes the number of bits of the CBR service included in the second data frame, and the number of bits is carried in the overhead area of the CBR container contained in the MTNS frame.
[0164] Fig.15 The clock determination device shown can be applied to a TDM network, which is an MTN, SPN or OTN.
[0165] It should be understood that the above Fig.15 When the device provided realizes its functions, only the division of the above-mentioned functional modules is used as an example for illustration. In practical applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the device and method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process is detailed in the method embodiment, which will not be repeated here. Fig.15 The beneficial effects of the device shown can be seen in the above Figure 4 , Fig.10 or Fig.12 The beneficial effects of the method shown will not be described in detail here.
[0166] See also Fig.16 , Fig.16 A schematic diagram of the structure of a network device 2000 provided by an exemplary embodiment of the present application is shown. Fig.16 The network device 2000 shown is used to perform the above Figure 4 , Fig.10 or Fig.12 The operations involved in the clock determination method shown. The network device 2000 is, for example, a switch, a router, etc. The network device 2000 can be implemented by a general bus architecture.
[0167] like Fig.16 As shown, the network device 2000 includes at least one processor 2001 , a memory 2003 , and at least one communication interface 2004 .
[0168] The processor 2001 is, for example, a general-purpose central processing unit (CPU), a digital signal processor (DSP), a network processor (NP), a graphics processing unit (GPU), a neural-network processing units (NPU), a data processing unit (DPU), a microprocessor, or one or more integrated circuits for implementing the solution of the present application. For example, the processor 2001 includes an application-specific integrated circuit (ASIC), a programmable logic device (PLD) or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. The PLD is, for example, a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof. It can implement or execute various logic blocks, modules, and circuits described in conjunction with the disclosure of the embodiments of the present invention. The processor can also be a combination that implements a computing function, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and the like.
[0169] Optionally, the network device 2000 further includes a bus. The bus is used to transmit information between the components of the network device 2000. The bus may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Fig.16 The fact that only one line is used in the diagram does not mean that there is only one bus or only one type of bus.
[0170] The memory 2003 is, for example, a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, or a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory 2003 is, for example, independent and connected to the processor 2001 via a bus. The memory 2003 can also be integrated with the processor 2001.
[0171] The communication interface 2004 uses any transceiver type device for communicating with other devices or communication networks, and the communication network can be Ethernet, radio access network (radio access network, RAN) or wireless local area network (wireless local area networks, WLAN) and the like. The communication interface 2004 can include a wired communication interface and can also include a wireless communication interface. Specifically, the communication interface 2004 can be an Ethernet interface, a Fast Ethernet (Fast Ethernet, FE) interface, a Gigabit Ethernet (Gigabit Ethernet, GE) interface, an Asynchronous Transfer Mode (Asynchronous Transfer Mode, ATM) interface, a wireless local area network (wireless local area networks, WLAN) interface, a cellular network communication interface or a combination thereof. The Ethernet interface can be an optical interface, an electrical interface or a combination thereof. In an embodiment of the present application, the communication interface 2004 can be used for the network device 2000 to communicate with other devices.
[0172] In a specific implementation, as an embodiment, the processor 2001 may include one or more CPUs, such as Fig.160 and CPU1 shown in FIG. Each of these processors may be a single-core CPU processor or a multi-core CPU processor. A processor herein may refer to one or more devices, circuits, and / or processing cores for processing data (e.g., computer program instructions).
[0173] In a specific implementation, as an embodiment, the network device 2000 may include multiple processors, such as Fig.16 2001 and 2005 are shown in FIG. Each of these processors may be a single-core CPU or a multi-core CPU. A processor herein may refer to one or more devices, circuits, and / or processing cores for processing data (such as computer program instructions).
[0174] In a specific implementation, as an embodiment, the network device 2000 may further include an output device and an input device. The output device communicates with the processor 2001 and may display information in a variety of ways. For example, the output device may be a liquid crystal display (LCD), a light emitting diode (LED) display device, a cathode ray tube (CRT) display device, or a projector. The input device communicates with the processor 2001 and may receive user input in a variety of ways. For example, the input device may be a mouse, a keyboard, a touch screen device, or a sensor device.
[0175] In some embodiments, the memory 2003 is used to store the program code 2010 for executing the solution of the present application, and the processor 2001 can execute the program code 2010 stored in the memory 2003. That is, the network device 2000 can implement the clock determination method provided by the method embodiment through the processor 2001 and the program code 2010 in the memory 2003. The program code 2010 may include one or more software modules. Optionally, the processor 2001 itself can also store the program code or instruction for executing the solution of the present application.
[0176] In a specific embodiment, the network device 2000 of the embodiment of the present application may correspond to the first device in each of the above-mentioned method embodiments, and the processor 2001 in the network device 2000 reads the instruction in the memory 2003, so that Fig.16 The illustrated network device 2000 is capable of performing all or part of the operations performed by the first device.
[0177] Specifically, processor 2001 is used to receive a first data frame carrying a CBR service, the first data frame carrying first clock deviation information, the first clock deviation information indicating the deviation between the clock of the second device and the clock of the third device, the second device is the previous node of the destination node, the third device is the source node of the CBR service, the first clock deviation information includes the code block difference between the first data frame and the second data frame sent by the third device, or the first clock deviation information includes the frequency deviation corresponding to the code block difference between the first data frame and the second data frame, and the second data frame corresponds to the first data frame; based on the first clock deviation information and the clock of the first device, the clock of the third device is determined.
[0178] For the sake of brevity, other optional implementations are not described here in detail.
[0179] For another example, the network device 2000 in the embodiment of the present application may correspond to the second device in each of the above method embodiments, and the processor 2001 in the network device 2000 reads the instruction in the memory 2003, so that Fig.16 The illustrated network device 2000 is capable of performing all or part of the operations performed by the second device.
[0180] Specifically, processor 2001 is used to obtain a fifth data frame carrying a CBR service, the fifth data frame carrying first clock deviation information, the first clock deviation information indicating the deviation between the clock of the second device and the clock of the third device, the third device being the source node of the CBR service, the first clock deviation information including the code block difference between the fifth data frame and the second data frame sent by the third device, or the first clock deviation information including the frequency deviation corresponding to the code block difference between the fifth data frame and the second data frame.
[0181] For the sake of brevity, other optional implementations are not described here in detail.
[0182] For another example, the network device 2000 in the embodiment of the present application may correspond to the third device in each of the above method embodiments, and the processor 2001 in the network device 2000 reads the instruction in the memory 2003, so that Fig.16 The illustrated network device 2000 is capable of performing all or part of the operations performed by the third device.
[0183] Specifically, the processor 2001 is used to obtain transmission information of the CBR service, which is used by the sink node of the CBR service to restore the clock of the CBR service; encapsulate the data stream of the CBR service into a second data frame, which carries the transmission information of the CBR service.
[0184] For the sake of brevity, other optional implementations are not described here in detail.
[0185] The network device 2000 may also correspond to the above Fig.15 In the clock determination device shown, each functional module in the clock determination device is implemented by software of the network device 2000. In other words, the functional modules included in the clock determination device are generated after the processor 2001 of the network device 2000 reads the program code 2010 stored in the memory 2003.
[0186] in, Figure 4 , Fig.10 or Fig.12 Each step of the clock determination method shown is completed by an integrated logic circuit of hardware or software instructions in the processor of the network device 2000. The steps of the method disclosed in conjunction with the embodiment of the present application can be directly embodied as a hardware processor, or a combination of hardware and software modules in the processor. The software module can be located in a mature storage medium in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory, and the processor reads the information in the memory, and completes the steps of the above method in conjunction with its hardware. To avoid repetition, it is not described in detail here.
[0187] See also Fig.17 , Fig.17 FIG. 2 shows a schematic diagram of the structure of a network device 2100 provided by another exemplary embodiment of the present application. Fig.17 The network device 2100 shown is used to perform the above Figure 4 , Fig.10 or Fig.12 All or part of the operations involved in the clock determination method shown. The network device 2100 is, for example, a switch, a router, etc. The network device 2100 can be implemented by a general bus architecture.
[0188] like Fig.17 As shown, the network device 2100 includes: a main control board 2110 and an interface board 2130 .
[0189] The main control board is also called a main processing unit (MPU) or a route processor card. The main control board 2110 is used to control and manage various components in the network device 2100, including routing calculation, device management, device maintenance, and protocol processing functions. The main control board 2110 includes: a central processing unit 2111 and a memory 2112.
[0190] The interface board 2130 is also called a line processing unit (LPU), a line card (linecard) or a service board. The interface board 2130 is used to provide various service interfaces and realize the forwarding of data packets. The service interface includes but is not limited to an Ethernet interface, a POS (Packet over SONET / SDH) interface, etc., and the Ethernet interface is, for example, a Flexible Ethernet Service Interface (Flexible Ethernet Clients, FlexE Clients). The interface board 2130 includes: a central processing unit 2131, a network processor 2132, a forwarding table entry memory 2134 and a physical interface card (physical interface card, PIC) 2133.
[0191] The central processor 2131 on the interface board 2130 is used to control and manage the interface board 2130 and communicate with the central processor 2111 on the main control board 2110 .
[0192] The network processor 2132 is used to implement the forwarding processing of the message. The network processor 2132 can be in the form of a forwarding chip. The forwarding chip can be a network processor (NP). In some embodiments, the forwarding chip can be implemented by an application-specific integrated circuit (ASIC) or a field programmable gate array (FPGA). Specifically, the network processor 2132 is used to forward the received message based on the forwarding table stored in the forwarding table entry memory 2134. If the destination address of the message is the address of the network device 2100, the message is sent to the CPU (such as the central processor 2131) for processing; if the destination address of the message is not the address of the network device 2100, the next hop and the output interface corresponding to the destination address are found from the forwarding table according to the destination address, and the message is forwarded to the output interface corresponding to the destination address. Among them, the processing of the uplink message may include: processing of the message input interface, forwarding table search; the processing of the downlink message may include: forwarding table search, etc. In some embodiments, the central processor can also perform the function of the forwarding chip, such as implementing software forwarding based on a general-purpose CPU, so that the forwarding chip is not required in the interface board.
[0193] The physical interface card 2133 is used to implement the physical layer docking function, whereby the original traffic enters the interface board 2130, and the processed message is sent out from the physical interface card 2133. The physical interface card 2133, also called a daughter card, can be installed on the interface board 2130, and is responsible for converting the photoelectric signal into a message and forwarding the message to the network processor 2132 for processing after checking the legitimacy of the message. In some embodiments, the central processor 2131 can also perform the functions of the network processor 2132, such as implementing software forwarding based on a general-purpose CPU, so that the network processor 2132 is not required in the physical interface card 2133.
[0194] Optionally, the network device 2100 includes multiple interface boards, for example, the network device 2100 further includes an interface board 2140, and the interface board 2140 includes: a central processor 2141, a network processor 2142, a forwarding table entry memory 2144, and a physical interface card 2143. The functions and implementation methods of the components in the interface board 2140 are the same or similar to those of the interface board 2130, and are not described in detail here.
[0195] Optionally, the network device 2100 further includes a switching fabric board 2120. The switching fabric board 2120 may also be referred to as a switch fabric unit (SFU). When the network device 2100 has multiple interface boards, the switching fabric board 2120 is used to complete data exchange between the interface boards. For example, the interface board 2130 and the interface board 2140 may communicate via the switching fabric board 2120.
[0196] The main control board 2110 is coupled to the interface board. For example, the main control board 2110, the interface board 2130, the interface board 2140, and the switching network board 2120 are connected to the system backplane through the system bus to achieve intercommunication. In a possible implementation, an inter-process communication (IPC) channel is established between the main control board 2110 and the interface board 2130 and the interface board 2140, and the main control board 2110 and the interface board 2130 and the interface board 2140 communicate through the IPC channel.
[0197] Logically, the network device 2100 includes a control plane and a forwarding plane. The control plane includes a main control board 2110 and a central processing unit 2111. The forwarding plane includes various components for performing forwarding, such as a forwarding table entry memory 2134, a physical interface card 2133, and a network processor 2132. The control plane performs functions such as a router, generating a forwarding table, processing signaling and protocol messages, and configuring and maintaining the status of the network device. The control plane sends the generated forwarding table to the forwarding plane. On the forwarding plane, the network processor 2132 forwards the message received by the physical interface card 2133 based on the forwarding table sent by the control plane. The forwarding table sent by the control plane can be stored in the forwarding table entry memory 2134. In some embodiments, the control plane and the forwarding plane can be completely separated and not on the same network device.
[0198] It is worth noting that there may be one or more main control boards, and when there are multiple boards, they may include a primary main control board and a backup main control board. There may be one or more interface boards. The stronger the data processing capability of the network device, the more interface boards are provided. There may also be one or more physical interface cards on the interface board. There may be no switching network board, or there may be one or more switching network boards. When there are multiple switching network boards, they can jointly realize load sharing and redundant backup. In a centralized forwarding architecture, network devices may not need switching network boards, and the interface board is responsible for processing the service data of the entire system. In a distributed forwarding architecture, network devices may have at least one switching network board, and data exchange between multiple interface boards is realized through the switching network board, providing large-capacity data exchange and processing capabilities. Therefore, the data access and processing capabilities of network devices with distributed architectures are greater than those of network devices with centralized architectures. Optionally, the network device may have only one board, that is, no switching board, and the functions of the interface board and the main control board are integrated on the board. In this case, the central processor on the interface board and the central processor on the main control board can be combined into one central processor on the board to perform the functions of the two. This type of network device has low data exchange and processing capabilities (for example, low-end switches or routers and other network devices). The specific architecture to be adopted depends on the specific networking deployment scenario, and no limitation is made here.
[0199] In a specific embodiment, the network device 2100 corresponds to the above Fig.15 In some embodiments, Fig.15 The transceiver module 1501 in the clock determination apparatus shown is equivalent to the physical interface card 2133 in the network device 2100 , and the processing module 1502 is equivalent to the central processor 2111 or the network processor 2132 in the network device 2100 .
[0200] The embodiment of the present application also provides a clock determination system, the processing system comprising: a first device, a second device and a third device. For example, the first device is Fig.16The network device 2000 or Fig.17 The network device 2100 shown in FIG. Fig.16 The network device 2000 or Fig.17 The network device 2100 shown in FIG. Fig.16 The network device 2000 or Fig.17 The network device 2100 shown in FIG. 2100. The clock determination method performed by the first device, the second device, and the third device can refer to the above Figure 4 , Fig.10 or Fig.12 The relevant description of the illustrated embodiment will not be repeated here.
[0201] It should be understood that the processor may be a CPU, or other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor, etc. It is worth noting that the processor may be a processor supporting the advanced reduced instruction set machine (ARM) architecture.
[0202] Further, in an optional embodiment, the memory may include a read-only memory and a random access memory, and provide instructions and data to the processor. The memory may also include a non-volatile random access memory. For example, the memory may also store information about the device type.
[0203] The memory may be a volatile memory or a nonvolatile memory, or may include both volatile and nonvolatile memory. Among them, the nonvolatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example but not limitation, many forms of RAM are available. For example, static RAM (SRAM), dynamic random access memory (DRAM), synchronous DRAM (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link DRAM (SLDRAM) and direct memory bus random access memory (DR RAM).
[0204] An embodiment of the present application also provides a computer-readable storage medium, in which at least one instruction is stored. The instruction is loaded and executed by a processor so that a computer implements any of the above clock determination methods.
[0205] The embodiments of the present application also provide a computer program (product), which, when executed by a computer, can enable a processor or a computer to execute the corresponding steps and / or processes in the above method embodiments.
[0206] An embodiment of the present application also provides a chip, including a processor, for calling and executing instructions stored in the memory from the memory, so that a communication device equipped with the chip executes any of the above clock determination methods.
[0207] An embodiment of the present application also provides another chip, including: an input interface, an output interface, a processor and a memory, wherein the input interface, the output interface, the processor and the memory are connected via an internal connection path, and the processor is used to execute the code in the memory. When the code is executed, the processor is used to execute any of the above clock determination methods.
[0208] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function according to the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website site, a computer, a server or a data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or a data center that includes one or more available media integration. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid state drive (solid state disk)), etc.
[0209] Those of ordinary skill in the art will appreciate that, in conjunction with the various method steps and modules described in the embodiments disclosed herein, they can be implemented in software, hardware, firmware, or any combination thereof. In order to clearly illustrate the interchangeability of hardware and software, the steps and components of each embodiment have been generally described in terms of function in the above description. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Those of ordinary skill in the art may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0210] A person skilled in the art will understand that all or part of the steps to implement the above embodiments may be accomplished by hardware or by instructing related hardware through a program, and the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a disk or an optical disk, etc.
[0211] When software is used for implementation, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer program instructions. As an example, the method of the embodiment of the present application can be described in the context of a machine executable instruction, and the machine executable instruction is such as included in the program module executed in the device on the real or virtual processor of the target. Generally speaking, a program module includes a routine, a program, a library, an object, a class, a component, a data structure, etc., which performs a specific task or realizes a specific abstract data structure. In various embodiments, the function of the program module can be merged or divided between the described program modules. The machine executable instruction for the program module can be executed in a local or distributed device. In a distributed device, the program module can be located in both a local and a remote storage medium.
[0212] The computer program code for realizing the method for the embodiment of the present application can be written in one or more programming languages. These computer program codes can be provided to the processor of a general-purpose computer, a special-purpose computer or other programmable data processing device, so that the program code, when executed by a computer or other programmable data processing device, causes the function / operation specified in the flow chart and / or block diagram to be implemented. The program code can be executed completely on a computer, partially on a computer, as an independent software package, partially on a computer and partially on a remote computer or completely on a remote computer or server.
[0213] In the context of the embodiments of the present application, computer program codes or related data may be carried by any appropriate carrier to enable a device, apparatus or processor to perform the various processes and operations described above. Examples of carriers include signals, computer readable media, and the like.
[0214] Examples of signals may include electrical, optical, radio, acoustic or other forms of propagated signals, such as carrier waves, infrared signals, etc.
[0215] A machine-readable medium may be any tangible medium that contains or stores a program for or related to an instruction execution system, apparatus, or device. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination thereof. More detailed examples of machine-readable storage media include an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical storage device, a magnetic storage device, or any suitable combination thereof.
[0216] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and modules described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0217] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the module is only a logical function division. There may be other division methods in actual implementation, such as multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or modules, or it can be an electrical, mechanical or other form of connection.
[0218] 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, that is, they may be located in one place or distributed on multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the embodiments of the present application.
[0219] In addition, each functional module in each embodiment of the present application can be integrated into one processing module, or each module can exist physically separately, or two or more modules can be integrated into one module. The above integrated modules can be implemented in the form of hardware or software functional modules.
[0220] If the integrated module is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program code.
[0221] In the present application, the terms "first", "second", etc. are used to distinguish between identical or similar items having substantially the same effects and functions. It should be understood that there is no logical or temporal dependency between "first", "second", and "nth", nor is there a limitation on quantity and execution order. It should also be understood that although the following description uses the terms first, second, etc. to describe various elements, these elements should not be limited by the terms. These terms are only used to distinguish one element from another. For example, without departing from the scope of various examples, a first image may be referred to as a second image, and similarly, a second image may be referred to as a first image. Both the first image and the second image may be images, and in some cases, may be separate and different images.
[0222] It should also be understood that in the various embodiments of the present application, the size of the serial number of each process does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0223] The term "at least one" in this application means one or more, and the term "multiple" in this application means two or more, for example, multiple second messages means two or more second messages. The terms "system" and "network" are often used interchangeably herein.
[0224] It should be understood that the terms used in the description of the various examples herein are only for describing specific examples and are not intended to be limiting. As used in the description of the various examples and the appended claims, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise.
[0225] It should also be understood that the term "and / or" used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items. The term "and / or" is a description of the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this application generally indicates that the associated objects before and after are in an "or" relationship.
[0226] It should also be understood that the term “comprise” (also known as “includes,” “including,” “comprises” and / or “comprising”) when used in this specification specifies the presence of stated features, integers, steps, operations, elements, and / or components, but does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0227] It should also be understood that the terms "if" and "if" may be interpreted to mean "when" or "upon" or "in response to determining" or "in response to detecting." Similarly, the phrases "if it is determined that ..." or "if [a stated condition or event] is detected" may be interpreted to mean "upon determining that ..." or "in response to determining that ..." or "upon detecting [a stated condition or event]" or "in response to detecting [a stated condition or event]," depending on the context.
[0228] It should be understood that determining B based on A does not mean determining B only based on A. B can also be determined based on A and / or other information.
[0229] It should also be understood that the references to "one embodiment", "an embodiment", or "a possible implementation" throughout the specification mean that specific features, structures, or characteristics related to the embodiment or implementation are included in at least one embodiment of the present application. Therefore, the references to "in one embodiment" or "in an embodiment", or "a possible implementation" throughout the specification do not necessarily refer to the same embodiment. In addition, these specific features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0230] The above description is only an optional embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the principles of the present application should be included in the protection scope of the present application.
Claims
1. A clock determination method, characterized in that: The method is applied to a first device, where the first device is a sink node of a constant bit rate CBR service, and the method includes: Receive a first data frame carrying the CBR service, the first data frame carrying first clock deviation information, the first clock deviation information indicating a deviation between a clock of a second device and a clock of a third device, the second device being a previous node of the sink node, the third device being a source node of the CBR service, the first clock deviation information including a code block difference between the first data frame and a second data frame sent by the third device, or the first clock deviation information including a frequency deviation corresponding to a code block difference between the first data frame and the second data frame, and the second data frame corresponds to the first data frame; The clock of the third device is determined based on the first clock deviation information and the clock of the first device.
2. The method according to claim 1, characterized in that The determining the clock of the third device based on the first clock deviation information and the clock of the first device includes: Performing rate adaptation processing on the first data frame to obtain a third data frame; Acquire second clock deviation information according to a code block difference between the third data frame and the first data frame, where the second clock deviation information indicates a deviation between a clock of the first device and a clock of the second device; The clock of the third device is determined based on the first clock deviation information, the second clock deviation information, and the clock of the first device.
3. The method according to claim 1 or 2, characterized in that: A fourth device is included between the second device and the third device; in a case where the first clock deviation information includes a code block difference between the first data frame and a second data frame sent by the third device, the code block difference between the first data frame and the second data frame is an accumulated value of the first code block difference and the second code block difference, the first code block difference is a code block difference between the first data frame and a fourth data frame sent by the fourth device, and the second code block difference is a code block difference between the fourth data frame and the second data frame; In the case where the first clock deviation information includes a frequency deviation corresponding to a code block difference between the first data frame and the second data frame, the frequency deviation corresponding to the code block difference between the first data frame and the second data frame is a cumulative value of the first frequency deviation and the second frequency deviation, the first frequency deviation is the frequency deviation corresponding to the code block difference between the first data frame and the fourth data frame, and the second frequency deviation is the frequency deviation corresponding to the code block difference between the fourth data frame and the second data frame.
4. The method according to any one of claims 1 to 3, characterized in that: The first data frame is a metropolitan area transport network segment MTNS frame, and the first clock deviation information is carried in an overhead area of a fine granularity multiplexing unit fgMU frame included in the MTNS frame.
5. The method according to any one of claims 1 to 3, characterized in that: The first data frame is a metropolitan area transmission network segment MTNS frame, and the first clock deviation information is carried in an operation, administration, and maintenance OAM code block included in the MTNS frame.
6. The method according to any one of claims 1 to 5, characterized in that: The first data frame also carries transmission information of the CBR service. After determining the clock of the third device, the method further includes: The clock of the CBR service is restored according to the clock of the third device and the transmission information.
7. The method according to any one of claims 1 to 5, characterized in that: The transmission information includes the number of bits of the CBR service included in the first data frame, the first data frame is a metropolitan transport network segment MTNS frame, and the number of bits is carried in the overhead area of the fine-grained metropolitan transport network packet fgMTNP frame contained in the MTNS frame.
8. The method according to any one of claims 1 to 5, characterized in that: The transmission information includes the number of bits of the CBR service included in the first data frame, the first data frame is a metropolitan area transport network segment MTNS frame, and the number of bits is carried in an overhead area of a CBR container included in the MTNS frame.
9. A clock determination method, characterized in that: The method is applied to a second device, where the second device is an intermediate node of a constant bit rate CBR service, and the method includes: Acquire a fifth data frame carrying the CBR service, where the fifth data frame carries first clock deviation information, where the first clock deviation information indicates a deviation between a clock of the second device and a clock of a third device, where the third device is a source node of the CBR service, and the first clock deviation information includes a code block difference between the fifth data frame and a second data frame sent by the third device, or the first clock deviation information includes a frequency deviation corresponding to the code block difference between the fifth data frame and the second data frame; The fifth data frame is sent.
10. The method according to claim 9, characterized in that The obtaining of the fifth data frame carrying the CBR service includes: Receiving a sixth data frame carrying the CBR service; Performing rate adaptation processing on the sixth data frame to obtain a seventh data frame; Acquire the first clock deviation information according to a code block difference between the sixth data frame and the seventh data frame; The first clock deviation information is added to the seventh data frame to obtain the fifth data frame.
11. The method according to claim 10, characterized in that A fourth device is included between the second device and the third device, the sixth data frame further carries third clock deviation information, the third clock deviation information indicates a deviation between a clock of the fourth device and a clock of the third device, and the fourth device is a previous node of the second device; The acquiring the first clock deviation information according to the code block difference between the sixth data frame and the seventh data frame includes: Determine fourth clock deviation information according to a code block difference between the sixth data frame and the seventh data frame, where the fourth clock deviation indicates a deviation between a clock of the second device and a clock of the fourth device; An accumulated value of the fourth clock deviation information and the third clock deviation information is used as the first clock deviation information.
12. The method according to any one of claims 9 to 11, characterized in that: The fifth data frame is a metropolitan area transport network segment MTNS frame, and the first clock deviation information is carried in an overhead area of a fine granularity multiplexing unit fgMU frame included in the MTNS frame.
13. The method according to any one of claims 9 to 11, characterized in that: The fifth data frame is a metropolitan area transmission network segment MTNS frame, and the first clock deviation information is carried in an operation, administration, and maintenance OAM code block included in the MTNS frame.
14. The method according to any one of claims 1 to 13, characterized in that: The code block difference is the difference of idle code blocks.
15. A clock determination method, characterized in that: The method is applied to a third device, where the third device is a source node of a constant bit rate (CBR) service, and the method includes: receiving a data stream of the CBR service and acquiring transmission information of the CBR service, where the transmission information is used by a sink node of the CBR service to recover a clock of the CBR service; Encapsulating the data stream of the CBR service into a second data frame, wherein the second data frame carries transmission information of the CBR service; The second data frame is sent.
16. The method according to claim 15, characterized in that The transmission information includes the number of bits of the CBR service included in the second data frame, the second data frame is a metropolitan transport network segment MTNS frame, and the number of bits is carried in the overhead area of the fine-grained metropolitan transport network packet fgMTNP frame contained in the MTNS frame.
17. The method according to claim 15, characterized in that The transmission information includes the number of bits of the CBR service included in the second data frame, where the second data frame is a metropolitan area transport network segment MTNS frame, and the number of bits is carried in an overhead area of a CBR container included in the MTNS frame.
18. The method according to any one of claims 1-3, 9-11, 14 or 15, characterized in that: The method is applied to a time division multiplexing TDM network, where the TDM network is a metropolitan area transmission network MTN, a slice packet network SPN or an optical transmission network OTN.
19. A clock determination device, characterized in that: The apparatus is applied to a first device, where the first device is a source node of a constant bit rate CBR service, and the apparatus includes: A transceiver module, used to perform the receiving and / or sending related operations performed by the method described in any one of claims 1-8, 14, and 18; A processing module, used to perform other operations besides the receiving and / or sending related operations performed by the method described in any one of claims 1-8, 14, and 18.
20. A clock determination device, characterized in that: The apparatus is applied to a second device, where the second device is an intermediate node of a constant bit rate CBR service, and the apparatus includes: A transceiver module, used to perform the receiving and / or sending related operations performed by the method described in any one of claims 9 to 14 and 18; A processing module, used to perform other operations besides the receiving and / or sending related operations performed by the method described in any one of claims 9-14 and 18.
21. A clock determination device, characterized in that: The apparatus is applied to a third device, the third device is a source node of a constant bit rate CBR service, and the apparatus includes: A transceiver module, used to perform the reception and / or transmission related operations performed by the method described in any one of claims 15 to 18; A processing module, used to perform other operations besides the receiving and / or sending related operations performed by the method described in any one of claims 15-18.
22. A network device, characterized in that: The network device includes: a processor, the processor is coupled to a memory, the memory stores at least one program instruction or code, the at least one program instruction or code is loaded and executed by the processor, so that the network device implements the clock determination method described in any one of claims 1-8, 14, and 18, or, so that the network device implements the clock determination method described in any one of claims 9-14 and 18, or, so that the network device implements the clock determination method described in any one of claims 15-18.
23. A clock determination system, characterized in that: The clock determination system includes a first device, a second device and a third device; The first device is used to execute the clock determination method described in any one of claims 1-8, 14, and 18, the second device is used to execute the clock determination method described in any one of claims 9-14 and 18, and the third device is used to execute the clock determination method described in any one of claims 15-18.
24. A computer-readable storage medium, characterized in that: The computer storage medium stores at least one instruction, and the at least one instruction is loaded and executed by the processor so that the computer implements the clock determination method as described in any one of claims 1-18.
25. A computer program product, characterized in that The computer program product comprises: a computer program code, wherein the computer program code is loaded and executed by a computer so as to enable the computer to implement the clock determination method according to any one of claims 1 to 18.