A time delay measurement method and related equipment
By acquiring and exchanging the timestamps of OAM code blocks in the communication device, the problem of blind spots in delay measurement is solved, the accuracy of delay measurement and communication quality are improved, and the probability of service interruption is reduced.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2022-04-24
- Publication Date
- 2026-05-26
AI Technical Summary
Existing latency measurement methods have measurement blind spots, resulting in inaccurate latency measurements, which affects communication quality and increases the probability of service interruption.
By acquiring and recording the timestamp of the inserted OAM code block in the communication device, calculating the delay measurement information, and exchanging the delay measurement information between the communication devices, the detection blind zone is reduced and the accuracy of delay measurement is improved.
It reduces the detection blind zone in unidirectional and bidirectional delay measurements, improves the accuracy of delay measurements, reduces the probability of service interruption, and improves communication quality.
Smart Images

Figure CN116980324B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to a delay measurement method and related equipment. Background Technology
[0002] Small-granularity technology is a finer-grained circuit switching technology based on the ITU-T metrotransport network (MTN) standard. It refines the granularity of the MTN hard pipe from 5 gigabits per second (Gbps) to 10 megabits per second (Mbps) to meet the differentiated service carrying requirements of low bandwidth, high isolation, and high security in scenarios such as 5G+ vertical industry applications and leased line services.
[0003] In small-granularity technology, the first small-granularity service is carried through a fine granularity unit (FGU). Small-granularity technology employs time-division multiplexing (TDM) to cyclically transmit FGU basic frames at fixed intervals. The number and position of time slots in each frame are strictly fixed, thus the transmission period of each time slot is also deterministic. To support a larger number of smaller-granularity time slot channels and improve bandwidth utilization, the FGU scheme uses multiframes to divide the 5Gbps granularity of the SPN channel layer into time slots. One multiframe contains 20 FGU basic frames, each FGU basic frame supports 24 time slots, and one 5Gbps granularity of the SPN channel layer supports 480 time slots.
[0004] A slice channel in a Slicing Packet Network (SPN) is a transmission path between source and destination nodes in an SPN network. It provides end-to-end Ethernet slice connections within the network, featuring low latency, transparent transmission, and hard isolation. It employs Ethernet 66B block-based sequence cross-connection technology, a Metropolitan Transport Network (MTN) Path layer frame structure, and a Metropolitan Transport Network (MTN) Section layer frame structure, along with their operation, administration, and maintenance (OAM) overhead. Client-layer services are mapped to an MTN Client at the source node. Intermediate nodes in the network perform cross-connections based on Ethernet 66B block sequences. At the destination node, client-layer services are demapped from the MTN Client. This enables functions such as client data access / recovery, adding / deleting OAM information, cross-connection of data streams, and channel monitoring and protection.
[0005] The delay measurements supported by the OAM code blocks in the MTN Path layer include one-way delay measurement (1DM) and two-way delay measurement (2DM). OAM code blocks used for 1DM are also called 1DM code blocks, and those used for 2DM are also called 2DM code blocks. Specifically, taking the source node in the FGU network as an example: When the source node receives the service bitstream carrying small-granularity services, it first slices the service bitstream to generate multiple service slices. Next, the source node encapsulates the service slices to obtain service containers, and processes the service containers to obtain a code block stream. The code block stream includes I code blocks, S code blocks, T code blocks, and D code blocks corresponding to the service containers. Then, the code block stream is mapped to the egress time slot location. Specifically, it is sliced according to the time slot payload length to obtain multiple low-order time slot payloads. Next, the source node encapsulates the low-order time slot payload to obtain an FGU baseframe. Each FGU baseframe payload contains M / X low-order time slots, where M is a positive integer and X is a positive integer. Finally, the source node sends the X FGU baseframes to the next-hop node as an FGU multiframe. When performing latency measurement, during the process of encapsulating the sliced traffic flow and mapping it to the egress time slot location, the source node determines idle code blocks between two adjacent sliced traffic flows. Then, it inserts either a 1DM or 2DM code block: replacing the idle code block with a 1DM or 2DM code block. The source node fills the timestamp field of the 1DM or 2DM code block with the timestamp of the first 1DM or 2DM code block it sent.
[0006] The applicant's research found that the above-mentioned delay measurement process has a measurement blind spot, therefore a more accurate delay measurement method is needed. Summary of the Invention
[0007] In a first aspect, embodiments of this application propose a time delay measurement method, characterized in that it includes:
[0008] The first communication device acquires the first moment.
[0009] The first moment is the timestamp for the first communication device to insert, operate, manage, and maintain the OAM code block.
[0010] Wherein, the first time is greater than or equal to the time when the first communication device receives the first service bit stream, and the first time is less than the time when the first communication device inserts a one-way delay measurement 1DM message or a two-way delay measurement 2DM message into the first code block stream, the first service bit stream carries the first small-granular service, and the first code block stream is obtained based on the first service bit stream.
[0011] The first communication device sends first delay measurement information to the second communication device. The first delay measurement information carries the first time. The first delay measurement information is used to measure the delay between the first communication device and the second communication device.
[0012] In this embodiment, the first communication device acquires a first time point, which is the timestamp for the first communication device to insert operations, management, and maintenance of OAM code blocks. The first time point is greater than or equal to the time when the first communication device receives the first service bit stream, and less than the time when the first communication device inserts a one-way delay measurement 1DM message into the first code block stream. The first service bit stream carries a first small-granularity service, and the first code block stream is obtained based on the first service bit stream. The first communication device sends first delay measurement information to the second communication device, the first delay measurement information carrying the first time point. The first delay measurement information is used to measure the delay between the first communication device and the second communication device. This method reduces the detection blind zone in one-way delay measurement, improves the accuracy of delay measurement, thereby improving communication quality and reducing the probability of service interruption.
[0013] In one possible implementation of the first aspect, the first communication device acquires the first moment, including:
[0014] The first communication device acquires a first sub-time point, which is the time when the first communication device receives the first service bit stream. For example, the first sub-time point is the time when the first communication device receives a specific bit in the first service bit stream.
[0015] The first communication device acquires a second sub-time point, which is the time when the first communication device maps the service container corresponding to the first service bit stream to the first code block stream. For example, during the process of the first communication device mapping a service container carrying specific bits to the first code block stream, when the first communication device maps the service container corresponding to the first service bit stream to the code block position carrying the service container in the first code block stream, the mapping time is recorded as the second sub-time point.
[0016] The first communication device acquires a third sub-time point, which is the time when the first communication device maps a 1DM message or a 2DM message to the first code block stream. For example, when the first communication device processes the first service bit stream to obtain the first code block stream and then maps the first code block stream to the exit time slot position, the first communication device records the time when the 1DM code block is inserted into the first code block stream as the third sub-time point.
[0017] The first communication device calculates the first moment in the following way:
[0018] T1 = t3 - (t2 - t1);
[0019] Wherein, T1 is the first time point, t3 is the third sub-time point, t2 is the second sub-time point, and t1 is the first sub-time point.
[0020] One possible implementation of the first aspect also includes:
[0021] The first communication device receives second delay measurement information from the second communication device. The second delay measurement information includes loopback time information, which indicates the time elapsed between the second communication device transmitting the second service bit stream and receiving the third service bit stream.
[0022] The second service bitstream carries the first small-granular service, and the third service bitstream carries the second small-granular service. The first small-granular service and the second small-granular service are associated. The first small-granular service is the first direction service of the second small-granular service, and the first direction indicates from the first communication device to the second communication device. The second small-granular service is the second direction service of the first small-granular service, and the second direction indicates from the second communication device to the first communication device.
[0023] The first communication device acquires a second time, which is the timestamp of the first communication device extracting the OAM code block. The second time is less than or equal to the time when the first communication device sends the fourth service bit stream, and greater than the time when the first communication device extracts the bidirectional delay measurement response (2DMR) message from the fourth code block stream. The fourth service bit stream is obtained based on the processing of the fourth code block stream, and the fourth service bit stream carries the second small-granular service.
[0024] The first communication device determines the bidirectional time delay between the first communication device and the second communication device based on the first time, the second time, and the loopback time information.
[0025] In this embodiment, a first communication device acquires a first time point, which is the timestamp for the first communication device to insert operations, management, and maintenance of OAM code blocks. The first time point is greater than or equal to the time when the first communication device receives the first service bit stream, and less than the time when the first communication device inserts a bidirectional delay measurement message (2DMM) into the first code block stream. The first service bit stream carries a first small-granularity service. The first communication device sends first delay measurement information to a second communication device, which carries the first time point and is used to measure the delay between the first and second communication devices. Then, the second communication device sends second delay measurement information to the first communication device, which carries loopback time information. This loopback time information indicates the time interval from sending the second service bit stream to receiving the third service bit stream, where the third service bit stream carries the second small-granularity service, which is associated with the first small-granularity service. The first communication device acquires a second time, which is the timestamp of the OAM code block extracted by the first communication device. The second time is less than or equal to the time when the first communication device sends the fourth service bit stream, and greater than the time when the first communication device extracts the bidirectional delay measurement response (2DMR) message from the fourth code block stream. The fourth service bit stream is obtained based on the fourth code block stream and carries the second small-granularity service. Finally, the first communication device determines the bidirectional delay between itself and the second communication device based on the first time, the second time, and the loopback time information. This method reduces the detection blind spot in the bidirectional delay measurement process, improves the accuracy of delay measurement, thereby improving communication quality and reducing the probability of service interruption.
[0026] In one possible implementation of the first aspect, the first communication device acquires the second moment, including:
[0027] The first communication device acquires the tenth sub-time point, which is the time when the first communication device extracts the bidirectional delay measurement response (2DMR) message from the fourth code block stream. For example, the first communication device demaps the FGU time slot data to obtain the fourth code block stream. When the first communication device extracts the 2DMR message from the fourth code block stream, the time of extraction of the 2DMR message is recorded as the tenth sub-time point.
[0028] The first communication device acquires the eleventh sub-time, which is the time when the first communication device sends the second service bit stream. For example, the eleventh sub-time may be the time when the first communication device sends a specific bit in the fourth service bit stream, such as the 1st bit, 100th bit, 200th bit, 500th bit, and / or 1000th bit of the fourth service bit stream.
[0029] The first communication device acquires the twelfth sub-time point, which is the time when the first communication device demaps the service container from the fourth code block stream. For example, the first communication device demaps the FGU time slot data in the ingress time slot position to the fourth code block stream, which corresponds to the second small-granularity service. Then, during the processing of the fourth code block stream, when the first communication device performs demapping processing on the code block position carrying the service container in the fourth code block stream, it records this time as the twelfth sub-time point. The first communication device can obtain the corresponding service container by performing demapping processing on the code block position corresponding to the service container in the fourth code block stream.
[0030] The first communication device calculates the second moment in the following manner:
[0031] T2 = t10 + (t11 - t12);
[0032] Wherein, T2 is the second time point, t10 is the tenth sub-time point, t11 is the eleventh sub-time point, and t12 is the twelfth sub-time point.
[0033] In one possible implementation of the first aspect, the loopback time information includes:
[0034] The third time and the fourth time, wherein the third time is greater than the time when the second communication device extracts the bidirectional delay measurement message 2DMM message from the second code block stream, and less than or equal to the time when the second communication device sends the second service bit stream, the second code block stream carries the first small-granular service, and the second service bit stream is generated based on the second code block stream;
[0035] The fourth time is greater than or equal to the time when the second communication device receives the third service bit stream, and less than the time when the second communication device inserts a bidirectional delay measurement response (2DMR) message into the third code block stream. The third code block stream is generated based on the third service bit stream.
[0036] Alternatively, the loopback time information includes a loopback time period, which is obtained by subtracting the third time period from the fourth time period.
[0037] In one possible implementation of the first aspect, when the loopback time information is the loopback time period;
[0038] The first communication device determines the bidirectional time delay between the first communication device and the second communication device based on the first time, the loopback time information, and the second time, including:
[0039] The first communication device calculates the bidirectional time delay between itself and the second communication device using the following method:
[0040] Two_way_delay = T2 - T1 - Δ;
[0041] Wherein, Two_way_delay is the bidirectional delay between the first communication device and the second communication device, T2 is the second time moment, T1 is the first time moment, and Δ is the loopback time period.
[0042] In one possible implementation of the first aspect, the loopback time information is the third time moment and the fourth time moment;
[0043] The first communication device determines the bidirectional time delay between the first communication device and the second communication device based on the first time, the loopback time information, and the second time, including:
[0044] The first communication device calculates the bidirectional time delay between itself and the second communication device using the following method:
[0045] Two_way_delay= (T2-T1)-(T4-T3);
[0046] Wherein, Two_way_delay is the bidirectional delay between the first communication device and the second communication device, T4 is the fourth time, T1 is the first time, T3 is the third time, and T2 is the second time.
[0047] In one possible implementation of the first aspect, the second delay measurement information carries the identification information; further comprising:
[0048] The first communication device stores the first time and the identification information in the memory of the first communication device, and the first time corresponds one-to-one with the identification information;
[0049] The first communication device determines the first moment from its memory based on the identification information in the second delay measurement information.
[0050] For example, a set of serial numbers with identification information as "01", "02", ..., "xxx" is assigned a unique serial number in the first communication device for each first moment. When the first communication device acquires the first moment, it carries the corresponding serial number in the corresponding first delay measurement information, which serves as the identification information. The first communication device associates this identification information with the first moment and stores it in its memory. After receiving the first delay measurement information, the second communication device extracts this identification information. Then, it carries the same identification information in the second delay measurement information sent from the second communication device to the first communication device. After receiving the second delay measurement information from the second communication device, the first communication device determines the first moment corresponding to the second delay measurement information from its memory based on the identification information carried in the second delay measurement information. Furthermore, the first communication device determines the bidirectional delay between the first and second communication devices based on the loopback time information carried in the second delay measurement information, the first moment, and the second moment.
[0051] In one possible implementation of the first aspect, the first small-granular service is a fixed bit rate (CBR) service.
[0052] Secondly, embodiments of this application propose a time delay measurement method, characterized in that it includes:
[0053] The second communication device acquires a third time point, which is the timestamp used by the second communication device to extract, manage, and maintain OAM code blocks.
[0054] Wherein, the third time is greater than the time when the second communication device extracts the one-way delay measurement 1DM message or the two-way delay measurement 2DM message from the second code block stream, and less than or equal to the time when the second communication device sends the second service bit stream, the second code block stream carries the first small-granular service, the second service bit stream is generated based on the second code block stream, and the second service bit stream carries the first small-granular service;
[0055] The second communication device receives first delay measurement information from the first communication device. The first delay measurement information carries a first time point, which is the timestamp of the first communication device inserting the OAM code block.
[0056] The second communication device determines the one-way time delay between the first communication device and the second communication device based on the first time and the third time.
[0057] Alternatively, the second communication device sends second delay measurement information to the first communication device. The second delay measurement information is obtained from the third time point and is used to instruct the first communication device to determine the bidirectional delay between the first communication device and the second communication device.
[0058] In this embodiment, the first communication device acquires a first time point, which is the timestamp for the first communication device to insert operations, management, and maintenance of OAM code blocks. The first time point is greater than or equal to the time when the first communication device receives the first service bit stream, and less than the time when the first communication device inserts a one-way delay measurement 1DM message into the first code block stream. The first service bit stream carries a first small-granularity service, and the first code block stream is obtained based on the first service bit stream. The first communication device sends first delay measurement information to the second communication device, the first delay measurement information carrying the first time point. The first delay measurement information is used to measure the delay between the first communication device and the second communication device. This method reduces the detection blind zone in one-way or two-way delay measurement, improves the accuracy of delay measurement, thereby improving communication quality and reducing the probability of service interruption.
[0059] In one possible implementation, in conjunction with the first or second aspect, the second delay measurement information is carried in a second service container, and the second service container carries a service slice obtained by the second communication device through slicing processing based on the third service bit stream.
[0060] The third service bitstream carries a second small-granular service, which is associated with the first small-granular service. The first small-granular service is a first-direction service of the second small-granular service, with the first direction indicating from the first communication device to the second communication device. The second small-granular service is a second-direction service of the first small-granular service, with the second direction indicating from the second communication device to the first communication device.
[0061] After receiving the FGU timeslot data, the first communication device performs demapping processing on the FGU timeslot data to obtain the corresponding service container. When the first communication device discovers that the service container carries second delay measurement information, the first communication device records a second time. This service container (carrying the second delay measurement information) is called the second service container.
[0062] The second moment can be the moment when the first communication device extracts the second delay measurement information (loopback time information) from the second service container. The second moment can also be the moment when the first communication device reassembles the service slice corresponding to the second service container into a service bit stream (i.e., the fourth service bit stream) and sends it. This application embodiment does not limit this.
[0063] In one possible implementation, in conjunction with the first or second aspect, the second delay measurement information is carried in a two-way delay measurement response (2DMR) message.
[0064] Specifically, since the 2DMR message includes a timestamp field, the second communication device can replace the time recorded in the timestamp field of the original 2DMR message with loopback time information. The 2DMR is then considered to carry the second delay measurement information. It should be noted that this embodiment does not limit the number of OAM code blocks included in the 2DMR message; for example, the second delay measurement information can be carried in one or more OAM code blocks (i.e., 2DMR code blocks). After the second communication device generates the second delay measurement information, it maps the second delay measurement information to an exit timeslot location and then sends the exit timeslot location through an Ethernet interface or a FlexE Client interface. The exit timeslot location arrives at the first communication device after being transmitted through Q intermediate nodes. The second communication device is used as the source node.
[0065] Optionally, when the second delay measurement information is carried in a 2DMR message, the second delay measurement information also includes a first time point. Specifically, after receiving the first delay measurement information, the second communication device saves the first time point from the first delay measurement information. Then, when the second communication device sends the second delay measurement information to the first communication device, it carries the first time point in the second delay measurement information. At this time, the second delay measurement information includes: the first time point and loopback time information (e.g., a third time point and a fourth time point). The first time point can be carried in the timestamp field of the 2DMR message.
[0066] It is understood that the second latency measurement information in the embodiments of this application may include first time and / or loopback time information generated based on a small-granularity service, or it may include multiple first time and / or loopback time information generated based on multiple small-granularity services. For example, the second service container includes: F1 (first time and loopback time information of the first small-granularity service), F3 (first time and loopback time information of the third small-granularity service), and F5 (first time and loopback time information of the fifth small-granularity service). In other words, the first time and / or loopback time information measured based on multiple small-granularity services in the second communication device is transmitted in the same service container. For another example, the 2DMR message includes F1, F3, and F5. In other words, the first time and / or loopback time information measured based on multiple small-granularity services in the second communication device is transmitted in the same 2DMR message.
[0067] In one possible implementation, in conjunction with the first or second aspect, the first delay measurement information is carried in a first service container, and the first service container carries a service slice obtained by the first communication device through slicing processing based on the first service bit stream.
[0068] The first delay measurement information is carried in the first service container, which carries the service slice obtained by the first communication device through slicing the first service bit stream.
[0069] Specifically, in this embodiment, the service container carrying the first latency measurement information is referred to as the first service container. The service container includes one or more of the following information (or fields): payload (the payload is used to carry the service slice), ESQ sequence number (optional), frequency synchronization message (timestamp), payload length (optional), padding (optional), and checksum (optional).
[0070] In conjunction with the first or second aspect, in one possible implementation, the first delay measurement information is carried in a 1DM message, or the first delay measurement information is carried in a bidirectional delay measurement message 2DMM message;
[0071] The first time point is carried in the timestamp field of the 1DM message or the 2DMM message.
[0072] Specifically, since the 1DM message includes a timestamp field, the first communication device can replace the time recorded in the timestamp field of the original 1DM message with the first time. Then, the 1DM message is considered to carry the first delay measurement information. It should be noted that this embodiment does not limit the number of OAM code blocks included in the 1DM message; for example, the first delay measurement information can be carried in one or more OAM code blocks (i.e., 1DM code blocks). After the first communication device generates the first delay measurement information, it maps the first code block stream including the first delay measurement information to the exit timeslot location, and then sends FGU timeslot data at that exit timeslot location via an Ethernet interface or a FlexE Client interface. This FGU timeslot data includes the first delay measurement information and consists of one or more sub-timeslots. After being transmitted through Q intermediate nodes, the FGU timeslot data arrives at the second communication device, where Q is a positive integer. The second communication device is used as the destination node.
[0073] It is understood that the first latency measurement information in the embodiments of this application may include a first moment generated based on a small-granularity service, or it may include multiple first moments generated based on multiple small-granularity services. For example, the first service container includes: R1 (the first moment of the first small-granularity service), R3 (the first moment of the third small-granularity service), and R5 (the first moment of the fifth small-granularity service). In other words, the first moments measured in the first communication device based on multiple small-granularity services are transmitted in the same service container. Another example: the 1DM message includes R1, R3, and R5. In other words, the first moments measured in the first communication device based on multiple small-granularity services are transmitted in the same 1DM message.
[0074] Specifically, since the 2DMM message includes a timestamp field, the first communication device can replace the time recorded in the timestamp field of the original 2DMM message with the first time. The 2DMM message is then considered to carry the first delay measurement information. It should be noted that this embodiment does not limit the number of OAM code blocks included in the 2DMM message; for example, the first delay measurement information can be carried in one or more OAM code blocks (i.e., 2DMM code blocks). After the first communication device generates the first delay measurement information, it maps the first delay measurement information to the exit timeslot location and then sends FGU timeslot data (including the first delay measurement information) at the exit timeslot location via an Ethernet interface or a FlexE Client interface. This FGU timeslot data (including the first delay measurement information) arrives at the second communication device after being transmitted through Q intermediate nodes, allowing the second communication device to obtain the first delay measurement information. The second communication device is used as the destination node.
[0075] In one possible implementation of the second aspect, the second communication device sends the second delay measurement information to the first communication device, including:
[0076] The second communication device acquires a fourth time, which is the timestamp of the second communication device inserting the OAM code block. The fourth time is greater than or equal to the time when the second communication device receives the third service bit stream, and less than the time when the second communication device inserts the bidirectional delay measurement response 2DMR message into the third code block stream. The third code block stream is generated based on the third service bit stream.
[0077] The second communication device acquires loopback time information, which is determined based on the third time and the fourth time. The loopback time information indicates the time interval from when the second communication device sends the second service bit stream to when it receives the third service bit stream.
[0078] The second communication device sends the second delay measurement information to the first communication device, and the second delay measurement information carries the loopback time information.
[0079] In one possible implementation of the second aspect, the loopback time information includes: the third time point and the fourth time point;
[0080] Alternatively, the loopback time information includes a loopback time period, which is obtained by subtracting the third time period from the fourth time period.
[0081] In one possible implementation of the second aspect, the second communication device acquires the third moment, including:
[0082] The second communication device acquires a fourth sub-time, which is the time when the second communication device sends the second service bit stream. For example, the fourth sub-time may be the time when the second communication device sends a specific bit in the second service bit stream, such as the 1st bit, 100th bit, 200th bit, 500th bit, and / or 1000th bit of the second service bit stream.
[0083] The second communication device acquires a fifth sub-time point, which is the time when the second communication device demaps the service container from the second code block stream. For example, the second communication device demaps the FGU time slot data in the ingress time slot to the second code block stream, which corresponds to the first small-granularity service. Then, during the processing of the second code block stream, when the second communication device performs demapping processing on the code block position carrying the service container in the second code block stream, it records this time as the fifth sub-time point. The second communication device can obtain the corresponding service container by performing demapping processing on the code block position corresponding to the service container in the second code block stream.
[0084] The second communication device acquires the sixth sub-time point, which is the time when the second communication device extracts the 1DM message from the second code block stream. For example, the second communication device demaps the FGU time slot data to obtain the second code block stream. When the second communication device extracts the 1DM message from the second code block stream, it records the time of extraction as the sixth sub-time point.
[0085] The second communication device calculates the third moment in the following manner:
[0086] T3 = t6 + (t4 - t5);
[0087] Wherein, T3 is the third time point, t6 is the sixth sub-time point, t4 is the fourth sub-time point, and t5 is the fifth sub-time point.
[0088] In one possible implementation of the second aspect, the second communication device acquires the fourth moment, including:
[0089] The second communication device acquires a seventh sub-time point, which is the time when the second communication device receives the third service bit stream, and the third service bit stream carries the second small-granularity service. For example, the seventh sub-time point can be the time when the second communication device receives a specific bit in the third service bit stream, such as the 1st bit, the 100th bit, the 200th bit, the 500th bit, and / or the 1000th bit of the third service bit stream.
[0090] The second communication device acquires the eighth sub-time point, which is the time when the second communication device maps the service container corresponding to the third service bit stream to the third code block stream. For example, during the process of the second communication device mapping a service container carrying specific bits to the third code block stream, when the second communication device maps the service container corresponding to the third service bit stream to the code block position carrying the service container in the third code block stream, the mapping time is recorded as the eighth sub-time point.
[0091] The second communication device acquires the ninth sub-time point, which is the time when the second communication device inserts the 2DMR message into the third code block stream. For example, when the second communication device processes the third service bit stream to obtain the third code block stream and then maps the third code block stream to the exit time slot position, the second communication device records the time when the 2DMR code block is inserted into the third code block stream as the ninth sub-time point.
[0092] The second communication device calculates the fourth moment in the following manner:
[0093] T4 = t9 - (t8 - t7);
[0094] Wherein, T4 is the fourth time point, t9 is the ninth sub-time point, t8 is the eighth sub-time point, and t7 is the seventh sub-time point.
[0095] In one possible implementation of the second aspect, the second communication device determines the one-way time delay between the first communication device and the second communication device based on the first time and the third time, including:
[0096] The second communication device calculates the one-way delay between the first communication device and the second communication device using the following method:
[0097] One_way_delay=T3-T1;
[0098] Wherein, One_way_delay is the one-way delay between the first communication device and the second communication device, T3 is the third time point, and T1 is the first time point.
[0099] In one possible implementation of the second aspect, the second small-granular service is a fixed bit rate (CBR) service.
[0100] Thirdly, embodiments of this application provide a communication device, which serves as a first communication device, comprising:
[0101] The transceiver module is used to perform the receiving and / or sending related operations performed by the first communication device in the first aspect mentioned above;
[0102] The processing module is used to perform other operations besides the receiving and / or sending related operations performed by the first communication device in the first aspect mentioned above.
[0103] It should be noted that the communication device mentioned in the embodiments of this application can be, for example, a network device such as a switch or router, or a component of a network device, such as a single board or line card on the network device, or a functional module on the network device, or a chip used to implement the method of this application. The embodiments of this application do not impose specific limitations. When the communication device is a chip, the transceiver module used to implement the method can be, for example, the chip's interface circuit, and the processing module can be a processing circuit with processing functions within the chip. Communication devices can be directly connected, for example, but not limited to, via Ethernet cables or optical fibers.
[0104] For example, the communication device includes:
[0105] The transceiver module is used to obtain the first-moment data.
[0106] The first moment is the timestamp for the first communication device to insert, operate, manage, and maintain the OAM code block.
[0107] Wherein, the first time is greater than or equal to the time when the first communication device receives the first service bit stream, and the first time is less than the time when the first communication device inserts a one-way delay measurement 1DM message or a two-way delay measurement 2DM message into the first code block stream, the first service bit stream carries the first small-granular service, and the first code block stream is obtained based on the first service bit stream.
[0108] The transceiver module is further configured to send first delay measurement information to the second communication device, the first delay measurement information carrying the first time, and the first delay measurement information being used to measure the delay between the first communication device and the second communication device.
[0109] In one possible implementation, the first latency measurement information is carried in a first service container, and the first service container carries a service slice obtained by the first communication device through slicing processing based on the first service bit stream.
[0110] In one possible implementation, the first delay measurement information is carried in a 1DM message, or the first delay measurement information is carried in a bidirectional delay measurement message (2DMM message).
[0111] The first time point is carried in the timestamp field of the 1DM message or the 2DMM message.
[0112] In one possible implementation, the transceiver module is further configured to acquire a first sub-time, which is the time when the first communication device receives the first service bit stream;
[0113] The transceiver module is further configured to acquire a second sub-time point, which is the time when the first communication device maps the service container corresponding to the first service bit stream to the first code block stream.
[0114] The transceiver module is further configured to acquire a third sub-time, which is the time when the first communication device maps a 1DM message or a 2DM message to the first code block stream;
[0115] The processing module is used to calculate the first moment in the following manner:
[0116] T1 = t3 - (t2 - t1);
[0117] Wherein, T1 is the first time point, t3 is the third sub-time point, t2 is the second sub-time point, and t1 is the first sub-time point.
[0118] In one possible implementation, the transceiver module is further configured to receive second delay measurement information from the second communication device, the second delay measurement information including loopback time information, the loopback time information indicating the time elapsed between the second communication device transmitting the second service bit stream and receiving the third service bit stream.
[0119] The second service bitstream carries the first small-granular service, and the third service bitstream carries the second small-granular service. The first small-granular service and the second small-granular service are associated. The first small-granular service is the first direction service of the second small-granular service, and the first direction indicates from the first communication device to the second communication device. The second small-granular service is the second direction service of the first small-granular service, and the second direction indicates from the second communication device to the first communication device.
[0120] The transceiver module is further configured to acquire a second time, which is the timestamp of the first communication device extracting the OAM code block. The second time is less than or equal to the time when the first communication device sends the fourth service bit stream, and greater than the time when the first communication device extracts the bidirectional delay measurement response (2DMR) message from the fourth code block stream. The fourth service bit stream is obtained based on the processing of the fourth code block stream, and the fourth service bit stream carries the second small-granular service.
[0121] The processing module is further configured to determine the bidirectional time delay between the first communication device and the second communication device based on the first time, the second time, and the loopback time information.
[0122] In one possible implementation, the second delay measurement information is carried in a second service container, which carries a service slice obtained by the second communication device through slicing the third service bit stream.
[0123] The third service bitstream carries a second small-granular service, which is associated with the first small-granular service. The first small-granular service is a first-direction service of the second small-granular service, with the first direction indicating from the first communication device to the second communication device. The second small-granular service is a second-direction service of the first small-granular service, with the second direction indicating from the second communication device to the first communication device.
[0124] In one possible implementation, the second delay measurement information is carried in a two-way delay measurement response (2DMR) message.
[0125] In one possible implementation, the transceiver module is further configured to acquire the tenth sub-time, which is the time when the first communication device extracts the bidirectional delay measurement response (2DMR) message from the fourth code block stream;
[0126] The transceiver module is also used to obtain the eleventh sub-time, which is the time when the first communication device sends the second service bit stream;
[0127] The transceiver module is also used to obtain the twelfth sub-time, which is the time when the first communication device demaps from the fourth code block stream to obtain the service container;
[0128] The processing module is further configured to calculate the second moment in the following manner:
[0129] T2 = t10 + (t11 - t12);
[0130] Wherein, T2 is the second time point, t10 is the tenth sub-time point, t11 is the eleventh sub-time point, and t12 is the twelfth sub-time point.
[0131] In one possible implementation, the loopback time information includes:
[0132] The third time and the fourth time, wherein the third time is greater than the time when the second communication device extracts the bidirectional delay measurement message 2DMM message from the second code block stream, and less than or equal to the time when the second communication device sends the second service bit stream, the second code block stream carries the first small-granular service, and the second service bit stream is generated based on the second code block stream;
[0133] The fourth time is greater than or equal to the time when the second communication device receives the third service bit stream, and less than the time when the second communication device inserts a bidirectional delay measurement response (2DMR) message into the third code block stream. The third code block stream is generated based on the third service bit stream.
[0134] Alternatively, the loopback time information includes a loopback time period, which is obtained by subtracting the third time period from the fourth time period.
[0135] In one possible implementation, when the loopback time information is the loopback time period;
[0136] The processing module is further configured to calculate the bidirectional delay between the first communication device and the second communication device using the following method:
[0137] Two_way_delay = T2 - T1 - Δ;
[0138] Wherein, Two_way_delay is the bidirectional delay between the first communication device and the second communication device, T2 is the second time moment, T1 is the first time moment, and Δ is the loopback time period.
[0139] In one possible implementation, the loopback time information is the third time point and the fourth time point;
[0140] The processing module is further configured to calculate the bidirectional delay between the first communication device and the second communication device using the following method:
[0141] Two_way_delay= (T2-T1)-(T4-T3);
[0142] Wherein, Two_way_delay is the bidirectional delay between the first communication device and the second communication device, T4 is the fourth time, T1 is the first time, T3 is the third time, and T2 is the second time.
[0143] In one possible implementation, the first delay measurement information carries identification information;
[0144] The second delay measurement information carries the identification information;
[0145] The processing module is further configured to store the first time and the identification information in the memory of the first communication device, wherein the first time corresponds one-to-one with the identification information;
[0146] The processing module is further configured to determine the first time from the memory of the first communication device based on the identification information in the second delay measurement information.
[0147] In one possible implementation, the first small-granular service is a fixed bit rate (CBR) service.
[0148] Fourthly, embodiments of this application provide a communication device, which serves as a second communication device, comprising:
[0149] The transceiver module is used to perform the receiving and / or sending related operations performed by the second communication device in the second aspect mentioned above;
[0150] The processing module is used to perform operations other than the receiving and / or sending related operations performed by the second communication device in the second aspect described above.
[0151] It should be noted that the communication device mentioned in the embodiments of this application can be, for example, a network device such as a switch or router, or a component of a network device, such as a single board or line card on the network device, or a functional module on the network device, or a chip used to implement the method of this application. The embodiments of this application do not impose specific limitations. When the communication device is a chip, the transceiver module used to implement the method can be, for example, the chip's interface circuit, and the processing module can be a processing circuit with processing functions within the chip. Communication devices can be directly connected, for example, but not limited to, via Ethernet cables or optical fibers.
[0152] For example, the communication device includes: a transceiver module, configured to acquire a third time point, wherein the third time point is a timestamp used by the second communication device to extract, manage, and maintain OAM code blocks.
[0153] Wherein, the third time is greater than the time when the second communication device extracts the one-way delay measurement 1DM message or the two-way delay measurement 2DM message from the second code block stream, and less than or equal to the time when the second communication device sends the second service bit stream, the second code block stream carries the first small-granular service, the second service bit stream is generated based on the second code block stream, and the second service bit stream carries the first small-granular service;
[0154] The transceiver module is further configured to receive first delay measurement information from the first communication device, wherein the first delay measurement information carries a first time point, and the first time point is the timestamp of the first communication device inserting the OAM code block;
[0155] The processing module is configured to determine the one-way delay between the first communication device and the second communication device based on the first time point and the third time point.
[0156] Alternatively, the transceiver module is further configured to send second delay measurement information to the first communication device, the second delay measurement information being obtained from the third time point, the second delay measurement information being used to instruct the first communication device to determine the bidirectional delay between the first communication device and the second communication device.
[0157] In one possible implementation, the second delay measurement information is carried in a second service container, which carries a service slice obtained by the second communication device through slicing the third service bit stream.
[0158] The third service bitstream carries a second small-granular service, which is associated with the first small-granular service.
[0159] In one possible implementation, the second delay measurement information is carried in a two-way delay measurement response (2DMR) message.
[0160] In one possible implementation, the first moment is carried in the first time delay measurement information.
[0161] The first delay measurement information carries a first time point, which is greater than or equal to the time when the first communication device receives the first service bit stream, and the first time point is less than the time when the first communication device inserts a one-way delay measurement 1DM message or a two-way delay measurement 2DM message into the first code block stream. The first service bit stream carries a first small-granularity service, and the first code block stream is obtained based on the first service bit stream.
[0162] In one possible implementation, the first latency measurement information is carried in a first service container, and the first service container carries a service slice obtained by the first communication device through slicing processing based on the first service bit stream.
[0163] In one possible implementation, the first delay measurement information is carried in a 1DM message, or the first delay measurement information is carried in a bidirectional delay measurement message (2DMM message).
[0164] The first time point is carried in the timestamp field of the 1DM message or the 2DMM message.
[0165] In one possible implementation, the transceiver module is further configured to acquire a fourth time, which is the timestamp of the second communication device inserting the OAM code block. The fourth time is greater than or equal to the time when the second communication device receives the third service bit stream, and less than the time when the second communication device inserts a bidirectional delay measurement response (2DMR) message into the third code block stream. The third code block stream is generated based on the third service bit stream.
[0166] The transceiver module is further configured to acquire loopback time information, which is determined based on the third time and the fourth time, and the loopback time information indicates the time interval between the second communication device sending the second service bit stream and receiving the third service bit stream;
[0167] The transceiver module is further configured to send the second delay measurement information to the first communication device, wherein the second delay measurement information carries the loopback time information.
[0168] In one possible implementation, the loopback time information includes: the third time point and the fourth time point;
[0169] Alternatively, the loopback time information includes a loopback time period, which is obtained by subtracting the third time period from the fourth time period.
[0170] In one possible implementation, the transceiver module is further configured to acquire a fourth sub-time, which is the time when the second communication device sends the second service bit stream;
[0171] The transceiver module is further configured to acquire a fifth sub-time point, which is the time when the second communication device demaps from the second code block stream to obtain the service container;
[0172] The transceiver module is also used to obtain a sixth sub-time, which is the time when the second communication device extracts a 1DM message or a 2DM message from the second code block stream;
[0173] The processing module is further configured to calculate the third moment in the following manner:
[0174] T3 = t6 + (t4 - t5);
[0175] Wherein, T3 is the third time point, t6 is the sixth sub-time point, t4 is the fourth sub-time point, and t5 is the fifth sub-time point.
[0176] In one possible implementation, the transceiver module is further configured to acquire a seventh sub-time, which is the time when the second communication device receives the third service bit stream;
[0177] The transceiver module is further configured to acquire the eighth sub-time, which is the time when the second communication device maps the service container corresponding to the third service bit stream to the third code block stream;
[0178] The transceiver module is also used to acquire the ninth sub-time, which is the time when the second communication device inserts the 2DMR message into the third code block stream;
[0179] The processing module is further configured to calculate the fourth moment in the following manner:
[0180] T4 = t9 - (t8 - t7);
[0181] Wherein, T4 is the fourth time point, t9 is the ninth sub-time point, t8 is the eighth sub-time point, and t7 is the seventh sub-time point.
[0182] In one possible implementation, the processing module is further configured to calculate the one-way delay between the first communication device and the second communication device using the following method:
[0183] One_way_delay=T3-T1;
[0184] Wherein, One_way_delay is the one-way delay between the first communication device and the second communication device, T3 is the third time point, and T1 is the first time point.
[0185] In one possible implementation, the second small-granularity service is a fixed bit rate (CBR) service. Fifthly, embodiments of this application provide a network device, characterized in that the network device is used in a first communication device, the network device comprising:
[0186] Transceiver, used to acquire first-moment information.
[0187] The first moment is the timestamp for the first communication device to insert, operate, manage, and maintain the OAM code block.
[0188] Wherein, the first time is greater than or equal to the time when the first communication device receives the first service bit stream, and the first time is less than the time when the first communication device inserts a one-way delay measurement 1DM message or a two-way delay measurement 2DM message into the first code block stream, the first service bit stream carries the first small-granular service, and the first code block stream is obtained based on the first service bit stream.
[0189] The transceiver is further configured to send first delay measurement information to the second communication device, the first delay measurement information carrying the first time, and the first delay measurement information being used to measure the delay between the first communication device and the second communication device.
[0190] In one possible implementation, the first latency measurement information is carried in a first service container, and the first service container carries a service slice obtained by the first communication device through slicing processing based on the first service bit stream.
[0191] In one possible implementation, the first delay measurement information is carried in a 1DM message, or the first delay measurement information is carried in a bidirectional delay measurement message (2DMM message).
[0192] The first time point is carried in the timestamp field of the 1DM message or the 2DMM message.
[0193] In one possible implementation, the transceiver is further configured to acquire a first sub-time, which is the time when the first communication device receives the first service bit stream;
[0194] The transceiver is further configured to acquire a second sub-time point, which is the time when the first communication device maps the service container corresponding to the first service bit stream to the first code block stream.
[0195] The transceiver is also used to acquire a third sub-time, which is the time when the first communication device maps a 1DM message or a 2DM message to the first code block stream;
[0196] The processor is configured to calculate the first moment in the following manner:
[0197] T1 = t3 - (t2 - t1);
[0198] Wherein, T1 is the first time point, t3 is the third sub-time point, t2 is the second sub-time point, and t1 is the first sub-time point.
[0199] In one possible implementation, the transceiver is further configured to receive second delay measurement information from the second communication device, the second delay measurement information including loopback time information, the loopback time information indicating the time elapsed between the second communication device transmitting the second service bit stream and receiving the third service bit stream.
[0200] The second service bitstream carries the first small-granular service, and the third service bitstream carries the second small-granular service. The first small-granular service and the second small-granular service are associated. The first small-granular service is the first direction service of the second small-granular service, and the first direction indicates from the first communication device to the second communication device. The second small-granular service is the second direction service of the first small-granular service, and the second direction indicates from the second communication device to the first communication device.
[0201] The transceiver is also used to acquire a second time, which is the timestamp of the first communication device extracting the OAM code block. The second time is less than or equal to the time when the first communication device sends the fourth service bit stream, and greater than the time when the first communication device extracts the bidirectional delay measurement response (2DMR) message from the fourth code block stream. The fourth service bit stream is obtained based on the processing of the fourth code block stream, and the fourth service bit stream carries the second small-granular service.
[0202] The processor is further configured to determine the bidirectional time delay between the first communication device and the second communication device based on the first time, the second time and the loopback time information.
[0203] In one possible implementation, the second delay measurement information is carried in a second service container, which carries a service slice obtained by the second communication device through slicing the third service bit stream.
[0204] The third service bitstream carries a second small-granular service, which is associated with the first small-granular service. The first small-granular service is a first-direction service of the second small-granular service, with the first direction indicating from the first communication device to the second communication device. The second small-granular service is a second-direction service of the first small-granular service, with the second direction indicating from the second communication device to the first communication device.
[0205] In one possible implementation, the second delay measurement information is carried in a two-way delay measurement response (2DMR) message.
[0206] In one possible implementation, the transceiver is further configured to acquire the tenth sub-time, which is the time when the first communication device extracts the bidirectional delay measurement response (2DMR) message from the fourth code block stream;
[0207] The transceiver is also used to acquire the eleventh sub-time, which is the time when the first communication device sends the second service bit stream;
[0208] The transceiver is also used to acquire the twelfth sub-time, which is the time when the first communication device demaps from the fourth code block stream to obtain the service container;
[0209] The processor is further configured to calculate the second moment in the following manner:
[0210] T2 = t10 + (t11 - t12);
[0211] Wherein, T2 is the second time point, t10 is the tenth sub-time point, t11 is the eleventh sub-time point, and t12 is the twelfth sub-time point.
[0212] In one possible implementation, the loopback time information includes:
[0213] The third time and the fourth time, wherein the third time is greater than the time when the second communication device extracts the bidirectional delay measurement message 2DMM message from the second code block stream, and less than or equal to the time when the second communication device sends the second service bit stream, the second code block stream carries the first small-granular service, and the second service bit stream is generated based on the second code block stream;
[0214] The fourth time is greater than or equal to the time when the second communication device receives the third service bit stream, and less than the time when the second communication device inserts a bidirectional delay measurement response (2DMR) message into the third code block stream. The third code block stream is generated based on the third service bit stream.
[0215] Alternatively, the loopback time information includes a loopback time period, which is obtained by subtracting the third time period from the fourth time period.
[0216] In one possible implementation, when the loopback time information is the loopback time period;
[0217] The processor is further configured to calculate the bidirectional delay between the first communication device and the second communication device using the following method:
[0218] Two_way_delay = T2 - T1 - Δ;
[0219] Wherein, Two_way_delay is the bidirectional delay between the first communication device and the second communication device, T2 is the second time moment, T1 is the first time moment, and Δ is the loopback time period.
[0220] In one possible implementation, the loopback time information is the third time point and the fourth time point;
[0221] The processor is further configured to calculate the bidirectional delay between the first communication device and the second communication device using the following method:
[0222] Two_way_delay= (T2-T1)-(T4-T3);
[0223] Wherein, Two_way_delay is the bidirectional delay between the first communication device and the second communication device, T4 is the fourth time, T1 is the first time, T3 is the third time, and T2 is the second time.
[0224] In one possible implementation, the first delay measurement information carries identification information;
[0225] The second delay measurement information carries the identification information;
[0226] The processor is further configured to store the first time and the identification information in the memory of the first communication device, wherein the first time corresponds one-to-one with the identification information;
[0227] The processor is further configured to determine the first moment from the memory of the first communication device based on the identification information in the second delay measurement information.
[0228] In one possible implementation, the first small-granular service is a fixed bit rate (CBR) service.
[0229] Sixthly, embodiments of this application provide a network device for use in a second communication device, the network device comprising:
[0230] The transceiver is used to acquire a third time point, which is the timestamp used by the second communication device to extract, manage, and maintain OAM code blocks.
[0231] Wherein, the third time is greater than the time when the second communication device extracts the one-way delay measurement 1DM message or the two-way delay measurement 2DM message from the second code block stream, and less than or equal to the time when the second communication device sends the second service bit stream, the second code block stream carries the first small-granular service, the second service bit stream is generated based on the second code block stream, and the second service bit stream carries the first small-granular service;
[0232] The transceiver is further configured to receive first delay measurement information from the first communication device, the first delay measurement information carrying a first time point, the first time point being the timestamp of the first communication device inserting the OAM code block;
[0233] The processor is configured to determine the one-way delay between the first communication device and the second communication device based on the first time point and the third time point.
[0234] Alternatively, the transceiver may also be configured to send second delay measurement information to the first communication device, the second delay measurement information being obtained from the third time point, the second delay measurement information being used to instruct the first communication device to determine the bidirectional delay between the first communication device and the second communication device.
[0235] In one possible implementation, the second delay measurement information is carried in a second service container, which carries a service slice obtained by the second communication device through slicing the third service bit stream.
[0236] The third service bitstream carries a second small-granular service, which is associated with the first small-granular service.
[0237] In one possible implementation, the second delay measurement information is carried in a two-way delay measurement response (2DMR) message.
[0238] In one possible implementation, the first moment is carried in the first time delay measurement information.
[0239] The first delay measurement information carries a first time point, which is greater than or equal to the time when the first communication device receives the first service bit stream, and the first time point is less than the time when the first communication device inserts a one-way delay measurement 1DM message or a two-way delay measurement 2DM message into the first code block stream. The first service bit stream carries a first small-granularity service, and the first code block stream is obtained based on the first service bit stream.
[0240] In one possible implementation, the first latency measurement information is carried in a first service container, and the first service container carries a service slice obtained by the first communication device through slicing processing based on the first service bit stream.
[0241] In one possible implementation, the first delay measurement information is carried in a 1DM message, or the first delay measurement information is carried in a bidirectional delay measurement message (2DMM message).
[0242] The first time point is carried in the timestamp field of the 1DM message or the 2DMM message.
[0243] In one possible implementation, the transceiver is further configured to acquire a fourth time, which is the timestamp of the second communication device inserting the OAM code block. The fourth time is greater than or equal to the time when the second communication device receives the third service bit stream, and less than the time when the second communication device inserts a bidirectional delay measurement response (2DMR) message into the third code block stream. The third code block stream is generated based on the third service bit stream.
[0244] The transceiver is also configured to acquire loopback time information, which is determined based on the third time and the fourth time, and the loopback time information indicates the time interval between the second communication device sending the second service bit stream and receiving the third service bit stream;
[0245] The transceiver is further configured to send the second delay measurement information to the first communication device, the second delay measurement information carrying the loopback time information.
[0246] In one possible implementation, the loopback time information includes: the third time point and the fourth time point;
[0247] Alternatively, the loopback time information includes a loopback time period, which is obtained by subtracting the third time period from the fourth time period.
[0248] In one possible implementation, the transceiver is further configured to acquire a fourth sub-time, which is the time when the second communication device sends the second service bit stream;
[0249] The transceiver is also used to acquire a fifth sub-time, which is the time when the second communication device demaps from the second code block stream to obtain the service container;
[0250] The transceiver is also used to acquire a sixth sub-time, which is the time when the second communication device extracts a 1DM message or a 2DM message from the second code block stream;
[0251] The processor is further configured to calculate the third moment in the following manner:
[0252] T3 = t6 + (t4 - t5);
[0253] Wherein, T3 is the third time point, t6 is the sixth sub-time point, t4 is the fourth sub-time point, and t5 is the fifth sub-time point.
[0254] In one possible implementation, the transceiver is further configured to acquire a seventh sub-time, which is the time when the second communication device receives the third service bit stream;
[0255] The transceiver is also used to acquire an eighth sub-time, which is the time when the second communication device maps the service container corresponding to the third service bit stream to the third code block stream;
[0256] The transceiver is also used to acquire the ninth sub-time, which is the time when the second communication device inserts the 2DMR message into the third code block stream;
[0257] The processor is further configured to calculate the fourth time step in the following manner:
[0258] T4 = t9 - (t8 - t7);
[0259] Wherein, T4 is the fourth time point, t9 is the ninth sub-time point, t8 is the eighth sub-time point, and t7 is the seventh sub-time point.
[0260] In one possible implementation, the processor is further configured to calculate the one-way delay between the first communication device and the second communication device using the following method:
[0261] One_way_delay=T3-T1;
[0262] Wherein, One_way_delay is the one-way delay between the first communication device and the second communication device, T3 is the third time point, and T1 is the first time point.
[0263] In one possible implementation, the second small-granular service is a fixed bit rate (CBR) service.
[0264] In a seventh aspect, a communication system is provided, the communication system including network devices as described in the third or fourth aspect.
[0265] The eighth aspect of this application provides a computer storage medium that may be non-volatile; the computer storage medium stores computer-readable instructions that, when executed by a processor, implement the method in any one of the first or second aspects.
[0266] The ninth aspect of this application provides a computer program product containing instructions that, when run on a computer, causes the computer to perform the method in any one of the implementations of the first or second aspect.
[0267] This application's tenth aspect provides a chip system including a processor and interface circuitry for supporting network devices in implementing the functions involved in the foregoing aspects, such as transmitting or processing data and / or information involved in the foregoing methods. In one possible design, the chip system further includes a memory for storing necessary program instructions and data for the network device. This chip system may be composed of chips or may include chips and other discrete devices.
[0268] The eleventh aspect of this application provides a network device, which serves as a first communication device, and the network device includes: a communication interface;
[0269] A processor connected to the communication interface causes the first communication device to perform the method described in the first aspect above, based on the communication interface and the processor.
[0270] A twelfth aspect of this application provides a network device, which serves as a second communication device, the network device comprising: a communication interface;
[0271] A processor connected to the communication interface causes the second communication device to perform the method described in the second aspect above, based on the communication interface and the processor. Attached Figure Description
[0272] Figure 1 A schematic diagram illustrating the application scenarios of small particle technology in smart grids;
[0273] Figure 2 This is a schematic diagram of the FGU baseframe structure;
[0274] Figure 3a This is a schematic diagram of the structure of an FGU multiframe;
[0275] Figure 3b A schematic diagram of FGU baseframe overhead;
[0276] Figure 4 This is a schematic diagram of the CRB service processing flow;
[0277] Figure 5 This is a schematic diagram of the base frame payload;
[0278] Figure 6 This is a schematic diagram of small-granularity service multiframes in an embodiment of this application;
[0279] Figure 7 This is a schematic diagram of a network scenario in an embodiment of this application;
[0280] Figure 8 This is a schematic diagram of the 1DM process;
[0281] Figure 9This is a schematic diagram of the 2DM process;
[0282] Figure 10 This is a schematic diagram of an embodiment of a time delay measurement method in this application;
[0283] Figure 11 This is a schematic diagram of yet another embodiment of a time delay measurement method according to the present application.
[0284] Figure 12 This is a schematic diagram of an application scenario in the embodiments of this application;
[0285] Figure 13 This is a schematic diagram illustrating yet another application scenario in the embodiments of this application;
[0286] Figure 14 This is a schematic diagram of an application scenario in the embodiments of this application;
[0287] Figure 15 This is a schematic diagram illustrating yet another application scenario in the embodiments of this application;
[0288] Figure 16 This is a schematic diagram illustrating yet another application scenario in the embodiments of this application;
[0289] Figure 17 This is a schematic diagram of the extended service container in the embodiments of this application;
[0290] Figure 18 A schematic diagram of the structure of a communication device 1800 provided in an embodiment of this application;
[0291] Figure 19 This is a schematic diagram of the structure of a communication device 1900 provided in an embodiment of this application;
[0292] Figure 20 This is a schematic diagram of the structure of a communication device 2000 provided in an embodiment of this application;
[0293] Figure 21 This is a schematic diagram of a network system 2100 proposed in an embodiment of this application;
[0294] Figure 22 This is a schematic diagram of a network system 2200 proposed in an embodiment of this application. Detailed Implementation
[0295] The embodiments of this application are described below. Obviously, the described embodiments are merely some, and not all, of the embodiments of this application. Those skilled in the art will recognize that, with the emergence of new application scenarios, the technical solutions provided by the embodiments of this application are also applicable to similar technical problems.
[0296] The terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such descriptions can be used interchangeably where appropriate to allow embodiments to be implemented in a sequence other than that illustrated or described in this application. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or device that includes a series of steps or modules is not necessarily limited to those explicitly listed, but may include other steps or modules not explicitly listed or inherent to such processes, methods, products, or devices. The naming or numbering of steps appearing in this application does not imply that the steps in the method flow must be performed in the chronological / logical order indicated by the naming or numbering. The execution order of named or numbered process steps can be changed according to the desired technical purpose, as long as the same or similar technical effect is achieved. The division of units in this application is a logical division. In practical applications, there may be other division methods. For example, multiple units may be combined or integrated into another system, or some features may be ignored or not executed. In addition, the shown or discussed mutual coupling, direct coupling, or communication connection may be through some interface, and the indirect coupling or communication connection between units may be electrical or other similar forms, none of which are limited in this application. Furthermore, the units or sub-units described as separate components may or may not be physically separated, may or may not be physical units, or may be distributed among multiple circuit units. Some or all of the units can be selected to achieve the purpose of the solution in this application according to actual needs.
[0297] First, some technical concepts involved in the embodiments of this application will be introduced.
[0298] (1) Small particle technology.
[0299] In small-granularity technology, small-granularity services are carried through fine granularity units (FGUs). Inheriting the high-efficiency Ethernet core of slice packet networks (SPN), FGU integrates fine-granularity slicing technology into the overall SPN architecture, providing a low-cost, refined, and hard-isolated small-granularity transport pipeline. FGUs refine the granularity of hard slicing from 5 gigabits per second (Gbps) to 10 megabits per second (Mbps), meeting the differentiated service transport requirements of low bandwidth, high isolation, and high security in scenarios such as 5G+ vertical industry applications and leased line services.
[0300] The following section, with reference to the accompanying diagrams, illustrates application scenarios of small particle technology. For example... Figure 1 The scene shown is as follows. Figure 1 This diagram illustrates an application scenario of small-particle technology in smart grids. A smart grid consists of many components, including: smart substations, smart distribution networks, smart meters, smart interactive terminals, smart dispatching, smart home appliances, smart buildings, smart city power grids, smart power generation systems, and / or, new energy storage systems.
[0301] A smart grid is the organic integration of information technology, sensor technology, automatic control technology, and power grid infrastructure. It acquires comprehensive information about the power grid, enabling timely detection and prediction of potential faults. When a fault occurs, the grid can quickly isolate it and achieve self-recovery, thus avoiding large-scale power outages. The widespread application of technologies such as flexible AC / DC transmission, grid-plant coordination, intelligent dispatching, energy storage, and distribution automation in smart grids makes grid operation and control more flexible and economical, and can accommodate the integration of numerous distributed power sources, microgrids, and electric vehicle charging and discharging facilities. The integrated application of communication, information, and modern management technologies will significantly improve the efficiency of power equipment utilization, reduce energy losses, and make grid operation more economical and efficient. It achieves a high degree of integration, sharing, and utilization of real-time and non-real-time information, providing a comprehensive, complete, and detailed picture of the power grid's operational status for operation management, while also providing corresponding auxiliary decision support, control implementation plans, and contingency plans. A two-way interactive service model is established in the smart grid, allowing users to understand power supply capacity, power quality, electricity prices, and power outage information in real time, and to rationally plan the use of electrical appliances; power companies can obtain detailed electricity consumption information from users and provide them with more value-added services.
[0302] Based on the above requirements, smart grid services have high demands for real-time performance and security. These services typically require bandwidth no greater than 20 Mbps, end-to-end one-way latency of less than 20 milliseconds (ms), and high reliability and security to ensure that power supply failures do not occur due to communication issues. They exhibit typical characteristics of low bandwidth, deterministic low latency, high reliability, and high security. Small-granularity service scenarios can include various terminal and network devices, such as Power Management Units (PMUs) or data transfer units (DTUs) at various levels. Alternatively, they may include various smart meters or smart switches.
[0303] In smart grid scenarios, slices can be divided into multiple types according to their purpose. For example, small-granularity hard slices are used for production-related services such as transmission networks (Area I) and dispatch data networks (Area II); MTN interface group slices are used for management-related services such as integrated data networks (Area III) and Zone IV; and MTN interface group slices are used for public services.
[0304] Understandably, small particle technology can also be applied to a variety of scenarios, including but not limited to: medical, port, railway, or dedicated line business, etc., without any restrictions.
[0305] (2) Small particle unit frame.
[0306] The specific frame structure of the fine granularity unit (FGU) is described below. FGU frames, also known as small granularity unit (FGU) frames, employ time-division multiplexing (TDM) to cyclically transmit FGU frames at a fixed period. The number and location of time slots in each frame are strictly fixed, thus the transmission period for each time slot is deterministic. This is done to support a larger number of smaller granularity time slot channels while improving bandwidth utilization. For example, the FGU service solution uses multiframes to divide the SPN channel layer into 5Gbps or 1Gbps granularities for time slot division, etc.
[0307] The SPN channel layer is located in the IEEE 802.3 physical coding sublayer (PCS) and adopts the IEEE 802.3 PCS64 / 66B coding format. The small-granularity unit frame adopts the same 64 / 66B coding format as the SPN channel layer, encapsulating the overhead and payload containing multiple time slots into a fixed-length S-block + D-block + T-block sequence.
[0308] For example, a small-granularity unit frame includes an FGU basic unit frame (also known as an FGU base frame, FGU base frame, base frame, or single frame). The FGU base frame has a fixed length, containing one start block (S0), 195 data blocks (D), and one end block (T7), totaling 197 66B blocks. The 195 data blocks and one end (T7) block of the FGU single frame provide 1567 (195×8+7) bytes of data content, including 7 bytes of overhead and 1560 bytes of payload. The payload is divided into 24 sub-slots of equal size. 66B blocks from the service are compressed from 66B to 65B and then filled into the sub-slot payload. Each sub-slot is 65 bytes and can carry eight 65-bit blocks. For details, please refer to [link to relevant documentation]. Figure 2 , Figure 2 This is a schematic diagram of the FGU base frame. For information on FGU multiframes, please refer to [link / reference]. Figure 3a , Figure 3a This is a schematic diagram of the FGU multiframe structure. An FGU multiframe contains 20 FGU basic frames, each supporting 24 time slots. A single SPN channel layer 5Gbps granularity supports 480 time slots. Each FGU basic frame includes base frame overhead (OH) and base frame payload. In this embodiment, the base frame overhead is also referred to as overhead or OH. It should be noted that the FGU basic frame may also include other content, and this embodiment does not limit this.
[0309] Each FGU basic frame includes an overhead length of 56 bits; please refer to [link to relevant documentation]. Figure 3b , Figure 3b This is a diagram illustrating the FGU baseframe overhead. The overhead includes: Multiframe Indicator (MFI), Flag field, Reserved (RES) field, and overhead information area. Details are as follows:
[0310] The multiframe indicator (MFI) is 6 bits long and is used to indicate the number of each base frame in an FGU multiframe. For the first base frame in a multiframe, the MFI value is 0. For each base frame after the first base frame, the MFI value is incremented by 1.
[0311] The Flag field indicates the purpose of the bit position following the CA field in this overhead. This Flag field is also known as the overhead channel usage indicator field.
[0312] The overhead information area includes: slot increase adjustment notice (S field), slot activation indication (C field), change answer (CA) field (CA field is also known as slot adjustment response field), change request (CR) field (CR field is also known as slot adjustment request field), general communication channel (GCC), client ID, sub-slot ID, and cyclic redundancy check (CRC).
[0313] (3) From service bit stream to small-granular service multiframe.
[0314] The following example uses a constant bit rate (CBR) service as an example to illustrate how a node processes the received service bitstream to obtain small-granularity service multiframes. It is understood that the small-granularity service involved in this application embodiment can also be other services transmitted based on small-granularity technology, such as Ethernet services, and this application embodiment does not limit this.
[0315] Please see Figure 4 , Figure 4 This is a schematic diagram of the CBR (Continuous Reception Board) service processing flow. The CBR service processing flow includes:
[0316] S1, Business Slice.
[0317] In step S1, the node receives a service bitstream carrying CBR (Continuous Business Frame) services. Specifically, the service bitstream includes j CBR service frames, where j is a positive integer greater than 1. After receiving the j CBR service frames, the node slices the service data to obtain corresponding service slices. Specific slicing schemes include: a bit-transparent slicing mode, which does not identify the specific content of the service frames but slices them according to a fixed number of bits, for example, every i bits sliced yields one service slice, where i is a positive integer greater than 1; and a frame slicing model, which identifies the specific frame format and then slices it according to a fixed number of frames, for example, every j frame slices yields one service slice, where j is a positive integer greater than 1.
[0318] S2, Slice Packaging.
[0319] In step S2, after the node slices the service bitstream to obtain the corresponding service slice, it encapsulates the service slice to obtain the corresponding service container. Specifically, overhead is added to the service slice, and the length of the overhead-added service slice is the same as the length of the low-order timeslot payload, for example, both are Y bits, where Y is a positive integer greater than 1. The specific encapsulation process is as follows: one or more of the following information are added to the service slice: Expand Sequence (ESQ), frequency synchronization message (e.g., timestamp), payload length, and padding or check field. Among them, the ESQ sequence number is used for lossless protection or loss detection of the service slice; the frequency synchronization message is used to transmit service-related clock information; when the length of the service slice is less than the length of the low-order timeslot payload, the payload length or padding needs to be encapsulated, and this payload length or padding is used to identify the valid payload length; the check field is used to perform bit error checking on the service slice.
[0320] After adding overhead to a service slice, the node further encapsulates the service slice with added overhead to obtain a service container. Specifically, frame boundaries and frame intervals are added to the service slice with added overhead to obtain the service container.
[0321] Then, the node converts the service container into a 64B / 66B code block stream, in other words, maps the service container to the corresponding I code block, S code block, T code block and D code block.
[0322] S3, Insert Operation, Administration and Maintenance (OAM) code block.
[0323] In step S3, the node inserts an OAM code block into the code block stream. In this embodiment, the OAM code block is also referred to as an OAM message.
[0324] S4, Transcoded and compressed data.
[0325] Step S4 is an optional step. In order to improve the carrying efficiency of the data channel, the 64B / 66B code block stream with inserted OAM code blocks is transcoded and compressed. The specific transcoding algorithm can be a 64B / 65B transcoding algorithm or a 256B / 257B transcoding algorithm. This application embodiment does not limit this.
[0326] S5, data slices are low-order time slot payloads.
[0327] In step S5, the node slices the transcoded data stream according to a certain bit length, for example, slicing it according to the payload length per time slot (Y bits, where Y is a positive integer greater than 1), where the payload length per time slot is equal to the length of the payload in the lower-order time slots. For another example, the payload length per time slot can be Z code blocks, which can be 64B / 66B code blocks, transcoded 64B / 65B code blocks, or 256B / 257B code blocks; this embodiment does not impose any limitations on this.
[0328] Once a node receives the low-order time slot payload, it loads the low-order time slot payload into the base frame payload. Please refer to [link / reference] for details. Figure 5 , Figure 5 This is a schematic diagram of the baseframe payload. The encapsulation process of the small-granularity service baseframe (hereinafter referred to as the baseframe in this embodiment) is as follows: The FGU baseframe is encapsulated using S-blocks (also known as / S / blocks), D-blocks (also known as / D / blocks), and T-blocks (also known as / T / blocks). The data fields in the block stream together constitute the payload field of the baseframe. Among them, the data fields in the S-block are optional fields, and the T-block can be any one of the seven blocks from T0 to T7. The baseframe payload field is used to load (M / X) low-order time slot payloads and low-order time slot overhead (OH). The (M / X) low-order time slot payload fields load different low-order channel (sub-Client) data according to the time slot table, where M is a positive integer greater than 1 and X is a positive integer greater than 1; the low-order time slot overhead fields include base frame sequence number, low-order channel time slot allocation table, management message channel (management message channel is optional) and overhead verification (overhead verification is optional), etc.
[0329] Once a node receives the base frame, it sends it out as a small-granularity service multiframe. In other words, it maps the small-granularity service multiframe to the egress time slot and then sends it out. For details, please refer to [link to relevant documentation]. Figure 6 , Figure 6 This is a schematic diagram of small-granularity service multiframes in an embodiment of this application. The node has a bandwidth of N. Within a 5 Gbps Flexible Ethernet (FlexE) client interface or a standard Ethernet (ETH) port, M low-order time slots are divided for cyclic transmission. Each cycle is defined as a multiframe, which is further divided into X fixed-length base frames, where N is a positive integer greater than 1. Each base frame's payload carries (M / X) low-order time slots. The base frames are encapsulated using S-blocks, T-blocks, and I-blocks (i.e., idle blocks) to define the boundaries of each base frame. Each base frame header carries some low-order overhead; X base frame overheads constitute a multiframe overhead used to transmit low-channel time slot configuration and management messages.
[0330] (4) Delay measurement of small particle services.
[0331] First, the network scenarios involved in the embodiments of this application are introduced. Please refer to... Figure 7 , Figure 7 This is a schematic diagram of a network scenario in an embodiment of this application. The Small Granularity Service Network (FGU network) includes edge node 1, edge node 2, and intermediate nodes. Edge node 1 is considered the source node, edge node 2 is considered the destination node, and the intermediate nodes include Q nodes, where Q is an integer greater than 1. There is a bidirectional service flow (also called a service bit stream) between the source and destination nodes, carrying small granular services. In this embodiment, the direction of the service flow from the source node to the destination node is called the first direction, also known as the forward direction; the direction of the service flow from the destination node to the source node is called the second direction, also known as the backward direction. The aforementioned nodes can also be called network devices, including but not limited to: switches, routers, or packet transport network (PTN) devices.
[0332] Based on the network scenarios described above, the latency measurements currently supported by FGU networks include: One-way Delay Measurement (1DM) and Two-way Delay Measurement (2DM), which are explained below:
[0333] One-way delay measurement:
[0334] For easier understanding, please refer to Figure 8 , Figure 8This is a schematic diagram of the 1DM process. Currently, after the source node receives the service bitstream carrying small-granularity services, it slices the service bitstream to obtain corresponding service slices. Then, the service slices are encapsulated to obtain corresponding service containers and converted into code block streams. Between the code block streams corresponding to two adjacent service slices, the source node identifies idle code blocks and replaces them with 1DM code blocks. This process is also called inserting 1DM code blocks (or inserting 1DM messages, where a 1DM message includes one or more 1DM code blocks). At this time, the source node records the time of inserting the 1DM code block as H1. H1 serves as the time of sending the 1DM code block (specifically, it can be the time of sending the first block in the 1DM message), and H1 is written into the timestamp field of the 1DM message. Then, the source node maps the code block stream including the 1DM code blocks to the egress timeslot location. Since the data sent at this egress timeslot location carries small-granularity services, the timeslot sent at this egress timeslot location is also called Small-Granularity Unit (FGU) timeslot data. Finally, the source node sends the FGU timeslot data via the Ethernet interface or the Flexible Ethernet Client (FlexE Client) interface.
[0335] In this application embodiment, the resource granularity of FGU time slot data can be: time slot, sub-time slot, frame, subframe, or multiframe, etc., and this application embodiment does not limit this. For ease of description, this application embodiment takes the example of the resource granularity of FGU time slot data being a sub-time slot.
[0336] After receiving FGU timeslot data at the ingress timeslot location, the intermediate node transmits FGU timeslot data at the egress timeslot location. The mapping relationship between the ingress and egress timeslot locations is indicated by the timeslot cross-configuration table.
[0337] For the destination node, it receives FGU timeslot data from the intermediate node at the ingress timeslot location via an Ethernet interface or a flexible Ethernet client (FlexE Client) interface. First, the destination node demaps the FGU timeslot data to obtain the corresponding code block stream, and then obtains one or more corresponding service containers. At this time, the destination node records the time H3 when it extracts the 1DM code block from the code block stream; H3 serves as the time of receiving the 1DM code block (specifically, it could be the time of receiving the first block in the 1DM message). Then, the destination node further decapsulates the service containers to obtain the corresponding service slices. After extracting the time H1 for sending the 1DM code block from the 1DM code block, the destination node calculates the one-way delay based on H1 and H3. Based on the calculated one-way delay, the destination node reassembles multiple service slices to obtain the service bit stream. Finally, the destination node sends out the service bit stream.
[0338] For details on the format of the OAM code block in 1DM messages, please refer to Table 1:
[0339] Table 1
[0340] For explanations of the fields illustrated in Table 1, please refer to Table 2:
[0341] Table 2
[0342]
[0343] Bidirectional delay measurement:
[0344] For easier understanding, please refer to Figure 9 , Figure 9 This is a schematic diagram of the 2DM process. Regarding 2DM messages, based on the location of the node sending the message in the network, they are specifically divided into: two-way delay measurement messages (2DMM) and two-way delay measurement replies (2DMR). In this embodiment, for ease of description, the OAM code block of a 2DM message is referred to as a 2DM code block. Since a 2DM message includes both 2DMM and 2DMR messages, the OAM code block of a 2DMM message is referred to as a 2DMM code block, and the OAM code block of a 2DMR message is referred to as a 2DMR code block. A 2DM message includes one or more 2DM code blocks, a 2DMR message includes one or more 2DMR code blocks, and a 2DMM message includes one or more 2DMM code blocks.
[0345] by Figure 9Taking this example, the source node acts as the initiator of the delay measurement (or the node that initiates the delay measurement), and the destination node acts as the reflector of the delay measurement. Therefore, when the source node sends FGU timeslot data to the destination node, the inserted 2DM message is a 2DMM message; when the destination node replies to the source node with FGU timeslot data, the inserted 2DM message is a 2DMR message.
[0346] Currently, after receiving the service bitstream carrying small-granularity services, the source node slices the service bitstream to obtain corresponding service slices. For ease of distinction, the small-granularity service carried by the service bitstream sent by the source node is referred to as small-granularity service A. Then, the service slice is encapsulated to obtain the corresponding service container and converted into a code block stream. The source node determines the idle code block between the code block streams corresponding to two adjacent service slices, and then replaces the idle code block with the OAM code block of the 2DMM message. This process is also called inserting a 2DMM code block (or inserting a 2DMM message, which includes one or more 2DMM code blocks). At this time, the source node records the time of inserting the 2DMM message as H1. H1 is written into the timestamp field of the 2DMM message as the time of sending the 2DMM message. Then, the source node maps the code block stream including the 2DMM message to the egress timeslot position, which carries the FGU timeslot data of small-granularity service A. Finally, the source node encapsulates the FGU timeslot data into the Ethernet interface or FlexE Client interface for transmission.
[0347] After receiving the FGU timeslot data carrying small-granularity service A at the ingress timeslot position, the intermediate node cross-maps the ingress timeslot position to the egress timeslot position according to the timeslot cross-configuration table. The intermediate node then transmits the FGU timeslot data carrying small-granularity service A at the egress timeslot position.
[0348] For the destination node, after receiving FGU timeslot data from the intermediate node via an Ethernet interface or a FlexE Client interface at the ingress timeslot location, the destination node first performs demapping processing on the FGU timeslot data to obtain the corresponding code block stream, and further obtains the corresponding multiple service containers. At this time, the destination node records the time H3 when the 2DMM message is extracted from the code block stream; H3 is used as the time of receiving the 2DMM message. Then, the destination node further decapsulates the service containers to obtain the corresponding service slices. The destination node reassembles the multiple service slices to obtain the service bit stream carrying the small-granularity service A. Finally, the destination node sends this service bit stream.
[0349] When the destination node receives the service bitstream of small-granularity service B corresponding to small-granularity service A, it slices the service bitstream to obtain the corresponding service slice. Then, it encapsulates the service slice to obtain the corresponding service container and converts it into a code block stream. The destination node identifies idle code blocks between adjacent service slices in the code block stream and replaces these idle code blocks with OAM code blocks of the 2DMR message. This process is also called inserting a 2DMR message (or inserting a 2DMR code block). At this time, the destination node records the insertion time of the 2DMR message as H4. H4 is written into the timestamp field of the 2DMR message as the time of transmission. H1 and H3 are also written into the timestamp field of the 2DMR message. Then, the destination node maps the code block stream including the 2DMR message to the egress timeslot location, which carries the FGU timeslot data of small-granularity service B. Finally, the destination node encapsulates the FGU timeslot data (small-granularity service B) into an Ethernet interface or a FlexE Client interface for transmission.
[0350] After receiving the time slot carrying FGU time slot data (small-granularity service B) at the ingress time slot position, the intermediate node cross-maps the ingress time slot position to the egress time slot position according to the time slot cross-configuration table. The intermediate node then transmits the FGU time slot data carrying small-granularity service B at the egress time slot position.
[0351] After receiving FGU timeslot data carrying small-granularity service B from the intermediate node at the ingress timeslot location via an Ethernet interface or FlexE Client interface, the source node first performs demapping processing on the FGU timeslot data to obtain the corresponding code block stream, and further obtains the corresponding multiple service containers. At this time, the source node records the time H2 when extracting the 2DMR message from the code block stream; H2 is used as the time of receiving the 2DMR message. The source node further extracts H1, H3, and H4 from the 2DMR message. Then, the source node performs further decapsulation processing on the service containers to obtain the corresponding service slices. After extracting the times H1, H3, and H4 from the 2DMR message, the source node calculates the bidirectional delay based on H1, H2, H3, and H4. The source node reassembles the multiple service slices to obtain the service bit stream. Finally, the source node sends out the service bit stream after delay compensation processing.
[0352] For details on the format of OAM code blocks in 2DMM messages, please refer to Table 3:
[0353] Table 3
[0354] For an explanation of the fields illustrated in Table 3, please refer to Table 4:
[0355] Table 4
[0356]
[0357] After studying the aforementioned one-way and two-way delay measurement procedures, the applicant discovered detection blind spots in the current procedures. Specifically, in one-way delay measurement, the time interval from the source node receiving the service bit stream to inserting the 1DM message is not included in the delay calculation, nor is the time interval from the destination node extracting the 1DM message from the code block stream. In two-way delay measurement, firstly, in the first direction, the time interval from the source node receiving the service bit stream to inserting the 2DMM message is not included in the delay calculation, nor is the time interval from the destination node extracting the 2DMM message from the code block stream to sending the service bit stream; secondly, the time interval from the source node extracting the 2DMR message from the ingress timeslot to sending the service bit stream is not included in the delay calculation.
[0358] Based on this, this application proposes a latency measurement method. A first communication device acquires a first time, which is the timestamp of the first communication device inserting an operation, management, and maintenance OAM code block. The first time is greater than or equal to the time when the first communication device receives a first service bit stream, and less than the time when the first communication device inserts a one-way latency measurement 1DM message or a two-way latency measurement 2DM message into the first code block stream. The first service bit stream carries a first small-granularity service, and the first code block stream is obtained by processing the first service bit stream. The first communication device sends first latency measurement information to a second communication device, the first latency measurement information carrying the first time. The first latency measurement information is used to measure the latency between the first communication device and the second communication device. This method reduces the detection blind spots in the one-way and two-way latency measurement processes, improves the accuracy of latency measurement, thereby improving communication quality and reducing the probability of service interruption.
[0359] It should be noted that the small-granularity service in this application embodiment can be a constant bit rate (CBR) service, or other small-granularity services; this application embodiment does not impose any restrictions on this. In this application embodiment, the small-granularity service (i.e., the first small-granularity service and / or the second small-granularity service) is used as an example for illustration.
[0360] The embodiments of this application are described in detail below with reference to the accompanying drawings. These embodiments can be categorized according to the time delay measurement scenario:
[0361] (1) One-way time delay measurement.
[0362] (2) Two-way delay measurement.
[0363] Based on the method of transmitting time delay measurement information, it can be further subdivided into:
[0364] (a) Latency measurement information is carried in the business container.
[0365] (b) Delay measurement information is carried in a one-way delay measurement 1DM message or a two-way delay measurement 2DM message.
[0366] First, we will introduce (1) one-way delay measurement. Please refer to [link / reference]. Figure 10 , Figure 10 This is a schematic diagram of an embodiment of a time delay measurement method according to this application. The time delay measurement method proposed in this application includes:
[0367] 1001. Obtain the first time point. The first time point is the timestamp of the first communication device inserting the OAM code block. The first time point is greater than or equal to the time when the first communication device receives the first service bit stream. Moreover, the first time point is less than the time when the first communication device inserts the unidirectional delay measurement 1DM code block or the bidirectional delay measurement 2DM code block in the exit time slot. The first service bit stream carries the first small-granularity service, and the exit time slot carries the first small-granularity service.
[0368] In this embodiment, the first communication device acquires a first time, which is the timestamp of the first communication device inserting the OAM code block. The first time is greater than or equal to the time when the first communication device receives the first service bit stream, and the first time is less than the time when the first communication device inserts the one-way delay measurement 1DM message into the first code block stream. The first service bit stream carries the first small-granular service, and the first code block stream is obtained by processing the first service bit stream.
[0369] Specifically, with Figure 7 The following is an example scenario. The first communication device is used as the source node. After receiving the first service bit stream, the first communication device processes the first service bit stream. The specific processing flow is similar to... Figures 4-5 The scenario is illustrated below. First, the first communication device slices the first service bitstream to obtain a service slice corresponding to the first service bitstream, which is also called the service slice corresponding to the first small-granularity service.
[0370] Then, the first communication device encapsulates the service slice to obtain a service container. Specifically, one or more of the following information are added to the service slice: Expand Sequence (ESQ), frequency synchronization message (e.g., timestamp), payload length, and padding or checksum field. The ESQ sequence number is used for lossless protection or loss detection of the service slice; the frequency synchronization message is used to transmit service-related clock information; when the length of the service slice is less than the lower-order timeslot payload length, the payload length needs to be encapsulated or padded, which is used to identify the valid payload length; the checksum field is used for error checking of the service slice.
[0371] After adding overhead to the service slice, the first communication device further encapsulates the service slice with added overhead to obtain a service container. Specifically, frame boundaries and frame intervals are added to the service slice with added overhead to obtain the service container.
[0372] Then, the first communication device converts the service container into a 64B / 66B code block stream, in other words, maps the service container to the corresponding I code block, S code block, T code block and D code block.
[0373] Then, the first communication device inserts operation, administration and maintenance (OAM) code blocks into the aforementioned code block stream.
[0374] Then, the first communication device maps the code block stream with the OAM code block inserted above to the exit time slot position of the first communication device. The data of the code block stream mapped to the exit time slot position is called FGU time slot data.
[0375] Finally, the first communication device transmits FGU time slot data at the egress time slot location via the Ethernet interface or the Flexible Ethernet Client (FlexE Client) interface.
[0376] In the above process, the first communication device acquires the first moment.
[0377] For example, with Figure 7 The following scenario is used as an example for illustration. The first communication device is used as the source node. After receiving the first service bit stream, the first communication device first obtains the first moment. The small-granularity service carried by the first service bit stream is called the first small-granularity service. Specific methods for recording the first moment include:
[0378] A. The moment when the first communication device receives a specific bit in the first service bit stream, for example: the specific bit may be the 1st bit, the 100th bit, the 200th bit, the 500th bit, and / or the 1000th bit of the service bit stream.
[0379] B. The first communication device periodically records the reception time according to the number of bits in the received service bit stream, and this reception time is regarded as the first time. For example, the first communication device records the reception time once every 1000 bits received (such as the reception time of the 1001st bit), and this reception time is regarded as the first time.
[0380] C. When the first communication device receives the service bit stream, it records the reception time once for each bit or more. Then, it periodically selects a reception time as the first time. For example, the first communication device records the reception time once for each bit received. The first communication device determines one time as the first time every 1000 reception times.
[0381] In one-way delay measurement scenarios, delay measurement information is carried in a one-way delay measurement 1DM message. Methods for recording the first moment also include:
[0382] First, the first communication device acquires a first sub-time point, which is the time when the first communication device receives the first service bit stream. For example, the first sub-time point is the time when the first communication device receives a specific bit in the first service bit stream.
[0383] The first communication device acquires a second sub-time point, which is the time when the first communication device maps the service container corresponding to the first service bit stream to the first code block stream. For example, during the process of the first communication device mapping a service container carrying specific bits to the first code block stream, when the first communication device maps the service container corresponding to the first service bit stream to the code block position carrying the service container in the first code block stream, the mapping time is recorded as the second sub-time point.
[0384] The first communication device acquires a third sub-time point, which is the time when the first communication device inserts the 1DM message into the first code block stream. For example: during the process of the first communication device processing the first service bit stream to obtain the first code block stream, and then mapping the first code block stream to the exit time slot position (i.e. Figures 4-5 (Illustrated processing flow) The first communication device records the moment when the 1DM code block is inserted into the first code block stream as the third sub-moment.
[0385] For example, the first communication device calculates the first moment in the following way:
[0386] T1 = t3 - (t2 - t1);
[0387] Wherein, T1 is the first time point, t3 is the third sub-time point, t2 is the second sub-time point, and t1 is the first sub-time point.
[0388] The above method ensures that the first moment satisfies the following characteristics: the first moment is greater than or equal to the moment when the first communication device receives the first service bit stream, and the first moment is less than the moment when the first communication device inserts the one-way delay measurement 1DM message into the first code block stream.
[0389] 1002. The first communication device sends first time delay measurement information to the second communication device, and the first time delay measurement information carries the first time.
[0390] In this embodiment, after the first communication device acquires the first time, in a one-way delay measurement scenario, the first communication device needs to notify the second communication device of the first time. In this embodiment, the first communication device sends first delay measurement information to the second communication device, and this first delay measurement information carries the first time.
[0391] Specifically, the first latency measurement information can be carried in the service container, or it can be carried in the 1DM message. These will be explained separately below:
[0392] (aa) The first delay measurement information is carried in the first service container, and the first service container carries the service slice obtained by the first communication device through slicing processing of the first service bit stream.
[0393] Specifically, in this embodiment, the service container carrying the first latency measurement information is referred to as the first service container. The service container includes one or more of the following information (or fields): payload (the payload is used to carry the service slice), ESQ sequence number (optional), frequency synchronization message (timestamp), payload length (optional), padding (optional), and checksum (optional).
[0394] In one optional implementation, the fields included in the business container are expanded to include a first field. For easier understanding, please refer to [link to relevant documentation]. Figure 17 , Figure 17 This is a schematic diagram of the extended service container in an embodiment of this application. The extended service container is as follows: Figure 17 As shown, a new first field has been added. This first field carries the first time delay measurement information. For example, the first field records the first moment.
[0395] In another alternative implementation, the first latency measurement information is carried in other fields of the service container. For example, the first latency measurement information is carried in the fill field of the service container, that is, the first moment is recorded in the fill field of the service container. Another example is that some blank bits are reserved in the service slice field of the service container, and the first moment is recorded in these blank bits.
[0396] Optionally, in addition to including the first time point, the first time delay measurement information may also include indication information, which indicates that the first time point is used for time delay measurement. For example: Figure 17 The illustrated service container also includes a second field. The first and second fields together carry the first latency measurement information. The first field carries the first time interval, and the second field carries indication information indicating whether the first field in the service container is used for latency measurement. For example: A first communication device generates multiple service containers based on a first service bitstream. The first field of each service container records the reception time carried by that service container. The first communication device selects one or more service containers to carry the first latency measurement information. In the selected service containers used to carry the first latency measurement information, the second field is filled with indication information indicating that the reception time carried by the first field in the corresponding service container is the first time interval. For example, as shown in Table 5:
[0397] Table 5
[0398]
[0399] (bb) The first delay measurement information is carried in the 1DM message.
[0400] Specifically, since the 1DM message includes a timestamp field, the first communication device can replace the time recorded in the timestamp field of the original 1DM message with the first time. Then, the 1DM message is considered to carry the first delay measurement information. It should be noted that this embodiment does not limit the number of OAM code blocks included in the 1DM message; for example, the first delay measurement information can be carried in one or more OAM code blocks (i.e., 1DM code blocks). After the first communication device generates the first delay measurement information, it maps the first code block stream including the first delay measurement information to the exit timeslot location, and then sends FGU timeslot data at that exit timeslot location via an Ethernet interface or a FlexE Client interface. This FGU timeslot data includes the first delay measurement information and consists of one or more sub-time slots. After being transmitted through Q intermediate nodes, the FGU timeslot data arrives at the second communication device. The second communication device is used as the destination node.
[0401] It is understood that the first latency measurement information in the embodiments of this application may include a first moment generated based on a small-granularity service, or it may include multiple first moments generated based on multiple small-granularity services. For example, the first service container includes: R1 (the first moment of the first small-granularity service), R3 (the first moment of the third small-granularity service), and R5 (the first moment of the fifth small-granularity service). In other words, the first moments measured in the first communication device based on multiple small-granularity services are transmitted in the same service container. Another example: the 1DM message includes R1, R3, and R5. In other words, the first moments measured in the first communication device based on multiple small-granularity services are transmitted in the same 1DM message.
[0402] 1003. The second communication device acquires the third time, which is the timestamp for the second communication device to extract the OAM code block.
[0403] In this embodiment, the second communication device acquires a third time point, which is the timestamp of the second communication device extracting the OAM code block.
[0404] Specifically, with Figure 7 The following scenario is used as an example for illustration. The second communication device is used as the destination node. When the second communication device receives FGU timeslot data at the ingress timeslot location via an Ethernet interface or a FlexE Clien interface, this FGU timeslot data carries the first small-granularity service. Therefore, the above process is also called the destination node receiving FGU timeslot data. Then, the second communication device processes the FGU timeslot data, and the specific processing flow is similar. Figures 4-5 The scenario is illustrated below. First, the second communication device demaps the FGU time slot data from the ingress time slot to obtain a code block stream (e.g., a 64B / 66B code block stream), which is referred to as the second code block stream. Then, data is extracted from this second code block stream, for example, OAM code blocks are extracted.
[0405] Then, the second communication device decapsulates the second code block stream to obtain the corresponding service container. Next, the second communication device further decapsulates the service container to obtain the corresponding service slice. Then, the second communication device reassembles multiple service slices to obtain the corresponding service bit stream. Finally, the second communication device transmits this service bit stream. For ease of distinction, the service bit stream transmitted by the second communication device is referred to as the second service bit stream, which carries the first small-granularity service.
[0406] In the above process, the second communication device acquires the third moment. For example, using... Figure 7The following scenario is used as an example for illustration. The second communication device is used for the destination node. After the first communication device sends the first delay measurement information to the second communication device, the second communication device receives the FGU time slot data carrying the first delay measurement information through an Ethernet interface or a FlexE Client interface at the entry time slot position.
[0407] Optionally, for different methods of carrying the first time delay measurement information, the second communication device can acquire the third time using multiple methods:
[0408] (aa) When the first delay measurement information is carried in the first service container.
[0409] After receiving the FGU timeslot data, the second communication device performs demapping processing on the FGU timeslot data to obtain the corresponding service container. When the second communication device detects that the service container carries first delay measurement information, the second communication device records a third time. This service container carrying the first delay measurement information is called the first service container.
[0410] The third moment can be the moment when the second communication device extracts the first delay measurement information (first moment) from the first service container. The third moment can also be the moment when the second communication device reassembles the service slice corresponding to the first service container into a service bit stream (i.e., the second service bit stream) and sends it. This application embodiment does not limit this.
[0411] (bb) The first delay measurement information is carried in the 1DM code block.
[0412] After receiving the FGU timeslot data, the second communication device performs demapping processing on the FGU timeslot data to obtain the corresponding second code block stream. The second communication device obtains the third time point as follows:
[0413] The second communication device acquires a fourth sub-time, which is the time when the second communication device sends the second service bit stream. For example, the fourth sub-time may be the time when the second communication device sends a specific bit in the second service bit stream, such as the 1st bit, 100th bit, 200th bit, 500th bit, and / or 1000th bit of the second service bit stream.
[0414] The second communication device acquires a fifth sub-time point, which is the time when the second communication device demaps the service container from the second code block stream. For example, the second communication device demaps the FGU time slot data in the ingress time slot to the second code block stream, which corresponds to the first small-granularity service. Then, during the processing of the second code block stream, when the second communication device performs demapping processing on the code block position carrying the service container in the second code block stream, it records this time as the fifth sub-time point. The second communication device can obtain the corresponding service container by performing demapping processing on the code block position corresponding to the service container in the second code block stream.
[0415] The second communication device acquires the sixth sub-time point, which is the time when the second communication device extracts the 1DM message from the second code block stream. For example, the second communication device demaps the FGU time slot data to obtain the second code block stream. When the second communication device extracts the 1DM message from the second code block stream, it records the time of extraction as the sixth sub-time point.
[0416] The second communication device calculates the third moment in the following manner:
[0417] T3 = t6 + (t4 - t5);
[0418] Wherein, T3 is the third time point, t6 is the sixth sub-time point, t4 is the fourth sub-time point, and t5 is the fifth sub-time point.
[0419] The above method ensures that the third time satisfies the following characteristics: the third time is greater than the time when the second communication device extracts the one-way delay measurement 1DM message from the second code block stream, and the third time is less than or equal to the time when the second communication device sends the second service bit stream, the second service bit stream is obtained based on the second code block stream, and the second service bit stream carries the first small-granular service.
[0420] 1004. The second communication device determines the one-way time delay between the first communication device and the second communication device based on the first time and the third time.
[0421] In this embodiment, after the second communication device acquires the first time and the third time, it determines the one-way delay between the first and second communication devices based on these two times. Specifically, the second communication device calculates the one-way delay between the first and second communication devices using the following method:
[0422] One_way_delay=T3-T1;
[0423] Wherein, One_way_delay is the one-way delay between the first communication device and the second communication device, T3 is the third time point, and T1 is the first time point.
[0424] In this embodiment, the first communication device acquires a first time point, which is the timestamp for the first communication device to insert operations, management, and maintenance of OAM code blocks. The first time point is greater than or equal to the time when the first communication device receives the first service bit stream, and less than the time when the first communication device inserts a one-way delay measurement 1DM message into the first code block stream. The first service bit stream carries a first small-granularity service, and the first code block stream is obtained based on the first service bit stream. The first communication device sends first delay measurement information to the second communication device, the first delay measurement information carrying the first time point. The first delay measurement information is used to measure the delay between the first communication device and the second communication device. This method reduces the detection blind zone in one-way delay measurement, improves the accuracy of delay measurement, thereby improving communication quality and reducing the probability of service interruption.
[0425] exist Figure 10 Based on the illustrated embodiment, the following section first introduces (a1) the scenario of unidirectional latency measurement, where latency measurement information is carried in the service container. Please refer to [link / reference]. Figure 12 , Figure 12 This is a schematic diagram of an application scenario in an embodiment of this application.
[0426] The source node receives a first service bitstream, corresponding to a first small-granularity service. After receiving the first service bitstream, the source node slices it to obtain multiple service slices. Then, the source node encapsulates these service slices to obtain corresponding service containers. During this process, the source node acquires a first time point, which is the timestamp for inserting the OAM code block. Then, the source node inserts first delay measurement information (including the first time point) into the encapsulated service container. The service container carrying the first delay measurement information is called the first service container.
[0427] After the source node converts multiple service containers into a first code block stream, it maps the first code block stream to an egress timeslot location. The data transmitted in this egress timeslot location carries small-granularity services and is therefore also called FGU timeslot data. Finally, the source node sends the FGU timeslot data to the next-hop node (i.e., the intermediate node) on the physical interface.
[0428] After receiving FGU timeslot data at the ingress timeslot location via the physical interface, the intermediate node maps the ingress timeslot location to the egress timeslot location according to the timeslot cross-configuration table. The timeslot cross-configuration table indicates the mapping rules from the ingress timeslot location to the egress timeslot location in the intermediate node. Then, the intermediate node transmits FGU timeslot data at the egress timeslot location via the physical interface.
[0429] The destination node receives FGU timeslot data at the ingress timeslot location via a physical interface. Then, the destination node demaps the FGU timeslot data to obtain the corresponding service container. Further, the destination node decapsulates the service container to obtain the corresponding service slice and first latency measurement information. The destination node reassembles multiple service slices to obtain a second service bitstream. The destination node transmits this second service bitstream via the physical interface. In the above process, the destination node extracts the first time point from the first latency measurement information. The destination node records the third time point, which is the timestamp for the OAM code block extracted by the destination node.
[0430] Finally, the destination node calculates the one-way delay from the source node to the destination node based on the first and third time points. The first time point satisfies the following conditions: it is greater than or equal to the time when the first communication device receives the first service bit stream, and it is less than the time when the first communication device inserts the one-way delay measurement 1DM message into the first code block stream. The first code block stream is processed based on the first service bit stream. The third time point satisfies the following conditions: it is greater than the time when the second communication device demaps from the second code block stream to obtain the one-way delay measurement 1DM message, and it is less than or equal to the time when the second communication device sends the second service bit stream. Therefore, the detection blind spot in the one-way delay measurement process is reduced, the accuracy of delay measurement is improved, and thus the communication quality is improved, reducing the probability of service interruption.
[0431] Secondly, in Figure 10 Based on the illustrated embodiment, (a2) is introduced, in the unidirectional delay measurement scenario, delay measurement information is carried in the unidirectional delay measurement 1DM message. Please refer to [link / reference]. Figure 13 , Figure 13 This is a schematic diagram of another application scenario in the embodiments of this application.
[0432] The source node receives the first service bitstream, which corresponds to the first small-granularity service. After receiving the first service bitstream, the source node slices it to obtain multiple service slices. Then, the source node encapsulates the service slices to obtain the corresponding service containers.
[0433] In the above process, the source node acquires a first time point, which is the timestamp of the source node inserting the OAM code block. Optionally, one method for acquiring the first time point is as follows: the first communication device acquires a first sub-time point, which is the time when the first communication device receives the first service bit stream; the first communication device acquires a second sub-time point, which is the time when the first communication device maps the service container corresponding to the first service bit stream to the first code block stream. The first communication device acquires a third sub-time point, which is the time when the first communication device inserts the 1DM message into the first code block stream. Finally, the first communication device calculates the first time point as follows: T1 = t3 - (t2 - t1); where T1 is the first time point, t3 is the third sub-time point, t2 is the second sub-time point, and t1 is the first sub-time point. Through the above method, the first time point satisfies the following characteristics: the first time point is greater than or equal to the time when the first communication device receives the first service bit stream, and the first time point is less than the time when the first communication device inserts the one-way delay measurement 1DM message into the first code block stream.
[0434] After further encapsulating multiple service containers, the source node maps them to the egress timeslot location. The data carried in this egress timeslot location is called FGU timeslot data. Specifically, the source node inserts a 1DM message carrying first delay measurement information into the first code block stream obtained by mapping multiple service containers. Then, the source node maps the first code block stream (including the 1DM message carrying the first delay measurement information) to the egress timeslot location. Finally, the source node sends the FGU timeslot data to the next hop (i.e., the intermediate node) at the egress timeslot location through the physical interface.
[0435] After receiving FGU timeslot data at the ingress timeslot location via the physical interface, the intermediate node maps the ingress timeslot location to the egress timeslot location according to the timeslot cross-configuration table. The timeslot cross-configuration table indicates the mapping rules from the intermediate node's ingress timeslot location to the egress timeslot location. Then, the intermediate node transmits the FGU timeslot data (i.e., the FGU timeslot data received by the intermediate node at the ingress timeslot location) at the egress timeslot location via the physical interface.
[0436] The destination node receives FGU timeslot data at the ingress timeslot location via a physical interface. Then, the destination node demaps the FGU timeslot data to obtain the corresponding service container and 1DM message.
[0437] Specifically, the destination node demaps the FGU timeslot data to obtain the corresponding second code block stream. When the destination node processes the code block position corresponding to the service container in the second code block stream, it records this processing time as the fifth sub-time. Then, the destination node decapsulates the demapped service container to obtain the corresponding service slice.
[0438] The destination node records the time when it extracts the 1DM message from the second code block stream as the sixth sub-time. For example, when the destination node demaps the FGU time slot data to the second code block stream, the time when the second communication device extracts the 1DM message from the second code block stream is recorded as the sixth sub-time.
[0439] After the destination node decapsulates one or more service containers, it then reassembles the resulting service slices into a second service bitstream. The destination node then transmits this second service bitstream over its physical interface.
[0440] In the above process, the destination node acquires the fourth, fifth, and sixth sub-times. Then, the destination node calculates the third time based on the fourth, fifth, and sixth sub-times, which is the timestamp for the OAM code block extracted by the destination node. The second communication device calculates the third time as follows: T3 = t6 + (t4 - t5); where T3 is the third time, t6 is the sixth sub-time, t4 is the fourth sub-time, and t5 is the fifth sub-time. Through the above method, the third time satisfies the following characteristics: the third time is greater than the time when the second communication device demaps from the second code block stream to obtain the one-way delay measurement 1DM message, and the third time is less than or equal to the time when the second communication device sends the second service bit stream, which carries the first small-granularity service.
[0441] Finally, the destination node calculates the one-way delay from the source node to the destination node based on the first and third time points. This method reduces the detection blind spots in the one-way delay measurement process, improves the accuracy of delay measurement, thereby enhancing communication quality and reducing the probability of service interruptions.
[0442] Secondly, we will introduce (2) bidirectional time delay measurement. Please refer to [link / reference]. Figure 11 , Figure 11 This is a schematic diagram of another embodiment of a time delay measurement method according to the present application. The time delay measurement method proposed in this application includes:
[0443] 1101. The first communication device acquires the first moment, which is the timestamp of the first communication device inserting the OAM code block.
[0444] In this embodiment, the first communication device acquires a first time, which is the timestamp of the first communication device inserting the OAM code block. The first time is greater than or equal to the time when the first communication device receives the first service bit stream, and the first time is less than the time when the first communication device inserts the bidirectional delay measurement message (2DMM) message into the first code block stream. The first service bit stream carries the first small-granular service, and the first code block stream is obtained by processing the first service bit stream.
[0445] The method for obtaining the first moment is similar to step 1001 mentioned above, and will not be repeated here.
[0446] For bidirectional delay measurement scenarios, delay measurement information is carried in bidirectional delay measurement 2DM messages. Methods for recording the first moment also include:
[0447] First, the first communication device acquires a first sub-time point, which is the time when the first communication device receives the first service bit stream. For example, the first sub-time point is the time when the first communication device receives a specific bit in the first service bit stream.
[0448] The first communication device acquires a second sub-time point, which is the time when the first communication device maps the service container corresponding to the first service bit stream to the first code block stream. For example, during the process of the first communication device mapping a service container carrying specific bits to the first code block stream, when the first communication device maps the service container corresponding to the first service bit stream to the code block position carrying the service container in the first code block stream, the mapping time is recorded as the second sub-time point.
[0449] The first communication device acquires a third sub-time point, which is the time when the first communication device inserts the 1DM message into the first code block stream. For example: during the process of the first communication device processing the first service bit stream to obtain the first code block stream, and then mapping the first code block stream to the exit time slot position (i.e. Figures 4-5 (Illustrated processing flow) The first communication device records the moment when the 1DM code block is inserted into the first code block stream as the third sub-moment.
[0450] For example, the first communication device calculates the first moment in the following way:
[0451] T1 = t3 - (t2 - t1);
[0452] Wherein, T1 is the first time point, t3 is the third sub-time point, t2 is the second sub-time point, and t1 is the first sub-time point.
[0453] The above method ensures that the first moment satisfies the following characteristics: the first moment is greater than or equal to the moment when the first communication device receives the first service bit stream, and the first moment is less than the moment when the first communication device inserts the bidirectional delay measurement message (2DMM) into the first code block stream.
[0454] Step 1101 is similar to the aforementioned step 1001, and will not be repeated here.
[0455] 1102. The first communication device sends first time delay measurement information to the second communication device, and the first time delay measurement information carries the first time.
[0456] Similar to step 1002 above, the first latency measurement information can be carried in a service container, or it can be carried in a 2DMM message. These will be explained below:
[0457] (aa) The first delay measurement information is carried in the first service container, which carries the service slice obtained by the first communication device through slicing the first service bitstream. This scheme is similar to the aforementioned step 1002, and will not be described in detail here.
[0458] Optionally, the first delay measurement information carries identification information, in which case the first time point may not be included in the first delay measurement information. The first communication device stores the first time point and the identification information in the memory of the first communication device, with the first time point and the identification information corresponding one-to-one.
[0459] For example, a set of serial numbers with identification information as "01", "02", ..., "xxx" is assigned a unique serial number in the first communication device for each first moment. When the first communication device acquires the first moment, it carries the corresponding serial number in the corresponding first delay measurement information, which serves as the identification information. The first communication device associates this identification information with the first moment and stores it in its memory. After receiving the first delay measurement information, the second communication device extracts this identification information. Then, it carries the same identification information in the second delay measurement information sent from the second communication device to the first communication device. After receiving the second delay measurement information from the second communication device, the first communication device determines the first moment corresponding to the second delay measurement information from its memory based on the identification information carried in the second delay measurement information. Furthermore, the first communication device determines the bidirectional delay between the first and second communication devices based on the loopback time information carried in the second delay measurement information, the first moment, and the second moment.
[0460] For example, the memory of the first communication device records the first moment and identification information as shown in Table 6:
[0461] Table 6
[0462]
[0463] (bb) The first delay measurement information is carried in the 2DMM message.
[0464] Specifically, since the 2DMM message includes a timestamp field, the first communication device can replace the time recorded in the timestamp field of the original 2DMM message with the first time. The 2DMM message is then considered to carry the first delay measurement information. It should be noted that this embodiment does not limit the number of OAM code blocks included in the 2DMM message; for example, the first delay measurement information can be carried in one or more OAM code blocks (i.e., 2DMM code blocks). After the first communication device generates the first delay measurement information, it maps the first delay measurement information to the exit timeslot location and then sends FGU timeslot data (including the first delay measurement information) at the exit timeslot location via an Ethernet interface or a FlexE Client interface. This FGU timeslot data (including the first delay measurement information) arrives at the second communication device after being transmitted through Q intermediate nodes, allowing the second communication device to obtain the first delay measurement information. The second communication device is used as the destination node.
[0465] 1103. The second communication device acquires the third time, which is the timestamp of the second communication device extracting the OAM code block.
[0466] Similar to step 1003 above, the second communication device acquires the third time point using various methods depending on the different ways the first time delay measurement information is carried:
[0467] (aa) When the first latency measurement information is carried in the first service container. This scheme is similar to the aforementioned step 1003, and will not be described in detail here.
[0468] (bb) The first delay measurement information is carried in the 2DMM message.
[0469] After receiving the FGU timeslot data, the second communication device performs demapping processing on the FGU timeslot data to obtain the corresponding code block stream. The second communication device obtains the third time point as follows:
[0470] The second communication device acquires a fourth sub-time, which is the time when the second communication device sends the second service bit stream. For example, the fourth sub-time may be the time when the second communication device sends a specific bit in the second service bit stream, such as the 1st bit, 100th bit, 200th bit, 500th bit, and / or 1000th bit of the second service bit stream.
[0471] The second communication device acquires a fifth sub-time point, which is the time when the second communication device demaps the service container from the second code block stream. For example, the second communication device demaps the FGU time slot data in the ingress time slot to the second code block stream, which corresponds to the first small-granularity service. Then, during the processing of the second code block stream, when the second communication device performs demapping processing on the code block position carrying the service container in the second code block stream, it records this time as the fifth sub-time point. The second communication device can obtain the corresponding service container by performing demapping processing on the code block position corresponding to the service container in the second code block stream.
[0472] The second communication device acquires the sixth sub-time point, which is the time when the second communication device extracts the 2DMM message from the second code block stream. For example, the second communication device demaps the FGU time slot data to obtain the second code block stream. When the second communication device extracts the 2DMM message from the second code block stream, the time of extraction is recorded as the sixth sub-time point.
[0473] The second communication device calculates the third moment in the following manner:
[0474] T3 = t6 + (t4 - t5);
[0475] Wherein, T3 is the third time point, t6 is the sixth sub-time point, t4 is the fourth sub-time point, and t5 is the fifth sub-time point.
[0476] The above method ensures that the third time satisfies the following characteristics: the third time is greater than the time when the second communication device extracts the bidirectional delay measurement message (2DMM) from the second code block stream, and the third time is less than or equal to the time when the second communication device sends the second service bit stream, wherein the second service bit stream carries the first small-granular service.
[0477] 1104. The second communication device acquires loopback time information, which indicates the time interval between the second communication device sending the second service bit stream and receiving the third service bit stream, wherein the third service bit stream carries the second small-granular service, and the second small-granular service is associated with the first small-granular service.
[0478] In this embodiment, after the second communication device sends the second service bit stream, completing the service processing flow in the first direction (from the first communication device to the second communication device), the second communication device enters the service processing flow in the second direction (from the second communication device to the first communication device). It should be noted that the service in the first direction can continue to be processed at this time; for example, the first communication device can continue to send FGU timeslot data to the second communication device. At this time, the second communication device continues to execute step 1103.
[0479] In the second direction, the specific business processing flow is as follows:
[0480] The second communication device receives a third service bitstream in the second direction. This third service bitstream carries a second small-granularity service, which is associated with the first small-granularity service. The second communication device then processes the third service bitstream; the specific processing flow is similar to... Figures 4-5 The scene is illustrated.
[0481] First, the second communication device slices the third service bitstream to obtain a service slice corresponding to the third service bitstream, which is also called the service slice corresponding to the second small-granular service.
[0482] Then, the second communication device encapsulates the service slice to obtain a service container. Specifically, one or more of the following information are added to the service slice: Expand Sequence (ESQ), frequency synchronization message (e.g., timestamp), payload length, and padding or checksum field. The ESQ sequence number is used for lossless protection or loss detection of the service slice; the frequency synchronization message is used to transmit service-related clock information; when the length of the service slice is less than the lower-order timeslot payload length, the payload length needs to be encapsulated or padded, which is used to identify the valid payload length; the checksum field is used for error checking of the service slice.
[0483] After adding overhead to the service slice, the second communication device further encapsulates the service slice with added overhead to obtain a service container. Specifically, frame boundaries and frame intervals are added to the service slice with added overhead to obtain the service container.
[0484] Then, the second communication device converts the service container into a 64B / 66B code block stream, in other words, maps the service container to the corresponding I code block, S code block, T code block and D code block.
[0485] Then, the second communication device inserts operation, administration and maintenance (OAM) code blocks into the aforementioned code block stream.
[0486] Then, the second communication device maps the code block stream with the OAM code block inserted above to the exit time slot position of the second communication device. The data of the code block stream mapped to the exit time slot position is called FGU time slot data.
[0487] Finally, the second communication device transmits FGU time slot data at the egress time slot location via an Ethernet interface or a flexible Ethernet client (FlexE Client) interface.
[0488] In the above process, the second communication device acquires the fourth moment.
[0489] For example, with Figure 7 The following scenario illustrates the concept. The second communication device is used as the destination node. After receiving the third service bitstream, the second communication device first acquires the fourth timeframe. The small-granularity service carried by the third service bitstream is called the second small-granularity service. Specific methods for recording the fourth timeframe include:
[0490] A. The timing at which the second communication device receives a specific bit in the third service bit stream, for example: the specific bit could be the 1st bit, the 100th bit, the 200th bit, the 500th bit, and / or the 1000th bit of the service bit stream.
[0491] B. The second communication device periodically records the reception time according to the number of bits in the received service bit stream, and this reception time is regarded as the fourth time. For example, the second communication device records the reception time once every 1000 bits received (such as the reception time of the 1001st bit), and this reception time is regarded as the fourth time.
[0492] C. When the second communication device receives the service bit stream, it records the reception time once for each one or more bits. Then, it periodically selects a reception time as the fourth time. For example, the second communication device records a reception time every time it receives one bit. The second communication device determines one time as the fourth time every 1000 reception times.
[0493] D. The second communication device slices the service bitstream to obtain service slices. It then encapsulates the service slices carrying specific bits to obtain service containers carrying those specific bits. At this point, the second communication device records the encapsulation time as the fourth time point.
[0494] For bidirectional delay measurement scenarios, the delay measurement information is carried in the bidirectional delay measurement 2DM message scheme. Other methods for recording the fourth moment include:
[0495] The second communication device acquires a seventh sub-time point, which is the time when the second communication device receives the third service bit stream, and the third service bit stream carries the second small-granularity service. For example, the seventh sub-time point can be the time when the second communication device receives a specific bit in the third service bit stream, such as the 1st bit, the 100th bit, the 200th bit, the 500th bit, and / or the 1000th bit of the third service bit stream.
[0496] The second communication device acquires the eighth sub-time point, which is the time when the second communication device maps the service container corresponding to the third service bit stream to the third code block stream. For example, during the process of the second communication device mapping a service container carrying specific bits to the third code block stream, when the second communication device maps the service container corresponding to the third service bit stream to the code block position carrying the service container in the third code block stream, the mapping time is recorded as the eighth sub-time point.
[0497] The second communication device acquires the ninth sub-time point, which is the time when the second communication device inserts the 2DMR message into the third code block stream. For example: during the process of the second communication device processing the third service bit stream to obtain the third code block stream, and then mapping the third code block stream to the exit time slot position (i.e. Figures 4-5 (Illustrated processing flow), the second communication device records the time when the 2DMR code block is inserted into the third code block stream as the ninth sub-time.
[0498] The second communication device calculates the fourth moment in the following manner:
[0499] T4 = t9 - (t8 - t7);
[0500] Wherein, T4 is the fourth time point, t9 is the ninth sub-time point, t8 is the eighth sub-time point, and t7 is the seventh sub-time point.
[0501] Optionally, the fourth time point can also be the reception time of the first K service slices corresponding to the P data code blocks preceding the 2DMR message in the code block stream, where P is a positive integer and K is a positive integer. For example, the fourth time point generates the corresponding code block stream based on the third service bit stream. In the time domain, code block P1 before the 2DMR message corresponds to service slice K1, and code block P2 after the 2DMR message corresponds to service slice K2. The second communication device selects the reception time of service slice K1 as the fourth time point recorded in the timestamp field of the 2DMR message. This 2DMR message serves as the second delay measurement information.
[0502] The above method ensures that the fourth time satisfies the following characteristics: the fourth time is greater than or equal to the time when the second communication device receives the third service bit stream, and the fourth time is less than the time when the second communication device inserts the bidirectional delay measurement response 2DMR message into the third code block stream.
[0503] After acquiring the third and fourth time points, the second communication device determines the loopback time information based on the third and fourth time points. The loopback time information indicates the time interval between the second communication device sending the second service bit stream and receiving the third service bit stream.
[0504] Specifically, the loopback time information includes: the third time point and the fourth time point;
[0505] Alternatively, the loopback time information includes a loopback time period, which is obtained by subtracting the third time period from the fourth time period.
[0506] 1105. The second communication device sends second delay measurement information to the first communication device, the second delay measurement information carrying loopback time information.
[0507] In this embodiment, after the second communication device acquires the loopback time information, in a bidirectional delay measurement scenario, the second communication device needs to notify the first communication device of the loopback time information. In this embodiment, the second communication device sends second delay measurement information to the first communication device, and this second delay measurement information carries the loopback time information.
[0508] Specifically, the second latency measurement information can be carried in a service container or in a 2DM message. These will be explained below:
[0509] (cc) The second delay measurement information is carried in the second service container, which carries the service slice obtained by the second communication device through slicing the third service bit stream.
[0510] Similar to step 1002 above, specifically, in this embodiment of the application, the service container carrying the second latency measurement information is referred to as the second service container. The service container includes one or more of the following information (or fields): payload (the payload is used to carry the service slice), ESQ sequence number (optional), frequency synchronization message (timestamp), payload length (optional), padding (optional), and checksum (optional).
[0511] Taking the loopback time information as an example, where the loopback time period is the case:
[0512] In one optional implementation, the fields included in the business container are expanded to include a first field. For easier understanding, please refer to [link to relevant documentation]. Figure 17 , Figure 17 This is a schematic diagram of the extended service container in an embodiment of this application. The extended service container is as follows: Figure 17 As shown, a new first field has been added. This first field carries the second time delay measurement information. For example, the first field records the loopback time period.
[0513] In another alternative implementation, the second latency measurement information is carried in other fields of the service container. For example, the fill field in the service container carries the second latency measurement information; that is, the loopback time period is recorded in the fill field of the service container. Another example is that some blank bits are reserved in the service slice field of the service container, and these blank bits record the loopback time period.
[0514] Optionally, the second delay measurement information may include, in addition to the loopback time period, identification information (see the identification information illustrated in step 1102), which is consistent with the identification information in the first delay measurement information. Specifically, after receiving the first delay measurement information, the second communication device extracts the identification information. When the service bitstream received by the second communication device corresponds to a second small-granularity service, and this second small-granularity service is associated with the first small-granularity service corresponding to the first delay measurement information, the second communication device adds identification information to the second delay measurement information. This identification information indicates that the loopback time information in the second delay measurement information is associated with the first time. The first communication device can use the loopback time information in the second delay measurement information and the first and second times to determine the bidirectional delay between the first and second communication devices.
[0515] (dd) The second time delay measurement information is carried in the 2DMR message.
[0516] Specifically, since the 2DMR message includes a timestamp field, the second communication device can replace the time recorded in the timestamp field of the original 2DMR message with loopback time information. The 2DMR is then considered to carry the second delay measurement information. It should be noted that this embodiment does not limit the number of OAM code blocks included in the 2DMR message; for example, the second delay measurement information can be carried in one or more OAM code blocks (i.e., 2DMR code blocks). After the second communication device generates the second delay measurement information, it maps the second delay measurement information to an exit timeslot location and then sends the exit timeslot location through an Ethernet interface or a FlexE Client interface. The exit timeslot location arrives at the first communication device after being transmitted through Q intermediate nodes. The second communication device is used as the source node.
[0517] Optionally, when the second delay measurement information is carried in a 2DMR message, the second delay measurement information also includes a first time point. Specifically, after receiving the first delay measurement information, the second communication device saves the first time point from the first delay measurement information. Then, when the second communication device sends the second delay measurement information to the first communication device, it carries the first time point in the second delay measurement information. At this time, the second delay measurement information includes: the first time point and loopback time information (e.g., a third time point and a fourth time point). The first time point can be carried in the timestamp field of the 2DMR message.
[0518] It is understood that the second latency measurement information in the embodiments of this application may include first time and / or loopback time information generated based on a small-granularity service, or it may include multiple first time and / or loopback time information generated based on multiple small-granularity services. For example, the second service container includes: F1 (first time and loopback time information of the first small-granularity service), F3 (first time and loopback time information of the third small-granularity service), and F5 (first time and loopback time information of the fifth small-granularity service). In other words, the first time and / or loopback time information measured based on multiple small-granularity services in the second communication device is transmitted in the same service container. For another example, the 2DMR message includes F1, F3, and F5. In other words, the first time and / or loopback time information measured based on multiple small-granularity services in the second communication device is transmitted in the same 2DMR message.
[0519] 1106. The first communication device acquires the second time, which is the timestamp of the first communication device extracting the OAM code block.
[0520] In this embodiment, the first communication device receives FGU timeslot data (corresponding to the second small-granularity service) sent from the second communication device in the second direction. The first communication device then demaps the FGU timeslot data to obtain a fourth code block stream, and then demaps the fourth code block stream to obtain the corresponding service container. The first communication device decapsulates the service container to obtain the corresponding service slice. The first communication device reassembles the service based on multiple service slices to obtain the corresponding service bit stream, which is called the fourth service bit stream. The small-granularity service carried in the fourth service bit stream is the second small-granularity service. During the above process, the first communication device acquires a second time point.
[0521] Specifically, with Figure 7The following scenario is used as an example for illustration. The first communication device is used as the source node. When the first communication device receives FGU timeslot data at the ingress timeslot location via an Ethernet interface or a FlexE Clien interface, this FGU timeslot data carries the second small-granularity service. Therefore, the above process is also called the source node receiving FGU timeslot data. Then, the first communication device processes the FGU timeslot data carrying the second small-granularity service, and the specific processing flow is similar. Figures 4-5 The scenario is illustrated below. First, the first communication device demaps the FGU timeslot data to obtain a code block stream (e.g., a 64B / 66B code block stream). Then, it extracts data from this code block stream, such as extracting OAM code blocks.
[0522] Then, the first communication device demaps the code block stream to obtain the corresponding service container. Next, the first communication device decapsulates the service container to obtain the corresponding service slice. Then, the first communication device reassembles multiple service slices to obtain the corresponding service bitstream. Finally, the first communication device sends this service bitstream. For ease of distinction, the service bitstream sent by the first communication device is referred to as the fourth service bitstream, which carries the second small-granularity service.
[0523] Optionally, for different bearer methods of the second time delay measurement information, the first communication device can acquire the second time using multiple methods:
[0524] (cc) When the second delay measurement information is carried in the second service container.
[0525] After receiving the FGU timeslot data, the first communication device performs demapping processing on the FGU timeslot data to obtain the corresponding service container. When the first communication device discovers that the service container carries second delay measurement information, the first communication device records a second time. This service container (carrying the second delay measurement information) is called the second service container.
[0526] The second moment can be the moment when the first communication device extracts the second delay measurement information (loopback time information) from the second service container. The second moment can also be the moment when the first communication device reassembles the service slice corresponding to the second service container into a service bit stream (i.e., the fourth service bit stream) and sends it. This application embodiment does not limit this.
[0527] (dd) The second delay measurement information is carried in the 2DMR code block.
[0528] After receiving the FGU timeslot data, the first communication device performs demapping processing on the FGU timeslot data to obtain the corresponding fourth code block stream. The first communication device obtains the second time point as follows:
[0529] The first communication device acquires the tenth sub-time point, which is the time when the first communication device extracts the bidirectional delay measurement response (2DMR) message from the fourth code block stream. For example, the first communication device demaps the FGU time slot data to obtain the fourth code block stream. When the first communication device extracts the 2DMR message from the fourth code block stream, the time of extraction of the 2DMR message is recorded as the tenth sub-time point.
[0530] The first communication device acquires the eleventh sub-time, which is the time when the first communication device sends the second service bit stream. For example, the eleventh sub-time may be the time when the first communication device sends a specific bit in the fourth service bit stream, such as the 1st bit, 100th bit, 200th bit, 500th bit, and / or 1000th bit of the fourth service bit stream.
[0531] The first communication device acquires the twelfth sub-time point, which is the time when the first communication device demaps the service container from the fourth code block stream. For example, the first communication device demaps the FGU time slot data in the ingress time slot to the fourth code block stream, which corresponds to the second small-granularity service. Then, during the processing of the fourth code block stream, when the first communication device performs demapping processing on the code block position carrying the service container in the fourth code block stream, it records this time as the twelfth sub-time point. The first communication device can obtain the corresponding service container by performing demapping processing on the code block position corresponding to the service container in the fourth code block stream.
[0532] The first communication device calculates the second moment in the following manner:
[0533] T2 = t10 + (t11 - t12);
[0534] Wherein, T2 is the second time point, t10 is the tenth sub-time point, t11 is the eleventh sub-time point, and t12 is the twelfth sub-time point.
[0535] The above method ensures that the second time satisfies the following characteristics: the second time is less than or equal to the time when the first communication device sends the fourth service bit stream, and greater than the time when the first communication device extracts the bidirectional delay measurement response (2DMR) message from the fourth code block stream. The fourth service bit stream is obtained based on the processing of the fourth code block stream, and the fourth service bit stream carries the second small-granular service.
[0536] 1107. The first communication device determines the bidirectional time delay between the first communication device and the second communication device based on the first time, the second time and the loopback time information.
[0537] In this embodiment, after receiving the second delay measurement information, the first communication device obtains the loopback time information based on the second delay measurement information.
[0538] Optionally, when the second time delay measurement information includes identification information, the first communication device determines the first time from the memory of the first communication device based on the identification information.
[0539] Optionally, when the second time delay measurement information includes the first moment, the first communication device directly obtains the first moment from the second time delay measurement information.
[0540] Then, the first communication device determines the bidirectional time delay between the first communication device and the second communication device based on the first time (from the memory of the first communication device or the second time delay measurement information), the second time (measured by the first communication device), and the loopback time information (from the second time delay measurement information).
[0541] For example, the first communication device calculates the bidirectional delay between the first communication device and the second communication device using the following method:
[0542] Two_way_delay = T2 - T1 - Δ;
[0543] Wherein, Two_way_delay is the bidirectional delay between the first communication device and the second communication device, T2 is the second time moment, T1 is the first time moment, and Δ is the loopback time period.
[0544] For example, the first communication device calculates the bidirectional time delay between the first communication device and the second communication device using the following method:
[0545] Two_way_delay= (T2-T1)-(T4-T3);
[0546] Wherein, Two_way_delay is the bidirectional delay between the first communication device and the second communication device, T4 is the fourth time, T1 is the first time, T3 is the third time, and T2 is the second time.
[0547] In this embodiment, a first communication device acquires a first time point, which is the timestamp for the first communication device to insert operations, management, and maintenance of OAM code blocks. The first time point is greater than or equal to the time when the first communication device receives the first service bit stream, and less than the time when the first communication device inserts a bidirectional delay measurement message (2DMM) into the first code block stream. The first service bit stream carries a first small-granularity service. The first communication device sends first delay measurement information to a second communication device, which carries the first time point and is used to measure the delay between the first and second communication devices. Then, the second communication device sends second delay measurement information to the first communication device, which carries loopback time information. This loopback time information indicates the time interval from sending the second service bit stream to receiving the third service bit stream, where the third service bit stream carries the second small-granularity service, which is associated with the first small-granularity service. The first communication device acquires a second time, which is the timestamp of the OAM code block extracted by the first communication device. The second time is less than or equal to the time when the first communication device sends the fourth service bit stream, and greater than the time when the first communication device extracts the bidirectional delay measurement response (2DMR) message from the fourth code block stream. The fourth service bit stream is obtained based on the fourth code block stream and carries the second small-granularity service. Finally, the first communication device determines the bidirectional delay between itself and the second communication device based on the first time, the second time, and the loopback time information. This method reduces the detection blind spot in the bidirectional delay measurement process, improves the accuracy of delay measurement, thereby improving communication quality and reducing the probability of service interruption.
[0548] exist Figure 11 Based on the illustrated embodiment, the following section first introduces (b1) the scenario of bidirectional latency measurement, where latency measurement information is carried within the service container. Please refer to [link to relevant documentation]. Figure 14 , Figure 14 This is a schematic diagram of an application scenario in an embodiment of this application.
[0549] First, describe the first direction (from the source node to the destination node):
[0550] The source node receives the first service bitstream, which corresponds to the first small-granularity service. After receiving the first service bitstream, the source node slices it to obtain multiple service slices. Then, the source node encapsulates the service slices to obtain the corresponding service containers. In the above process, the source node obtains the first time point, which is the timestamp where the source node inserts the OAM code block.
[0551] Optionally, the source node assigns a unique identifier for the first time step. The source node then stores the first time step and the associated identifier in memory. The source node inserts the first latency measurement information (which includes the identifier) into the service container; this service container carrying the first latency measurement information is called the first service container.
[0552] Optionally, the source node uses the first time step and the associated identification information together as the first latency measurement information, and then inserts the first latency measurement information into the first service container.
[0553] The source node further encapsulates multiple service containers (including the first latency measurement information) and maps them to the exit timeslot location in the first direction. The data carried in this exit timeslot location is called FGU timeslot data. Finally, the source node sends the FGU timeslot data to the next-hop node (i.e., the intermediate node) through the physical interface at this exit timeslot location.
[0554] After receiving FGU timeslot data at the ingress timeslot location via the physical interface, the intermediate node maps the ingress timeslot location to the egress timeslot location according to the timeslot cross-configuration table. The timeslot cross-configuration table indicates the mapping rules from the ingress timeslot location to the egress timeslot location in the intermediate node. Then, the intermediate node transmits FGU timeslot data at the egress timeslot location via the physical interface.
[0555] The destination node receives FGU timeslot data at the ingress timeslot location via a physical interface. Then, the destination node demaps the FGU timeslot data to obtain the corresponding service container. Further, the destination node decapsulates the service container to obtain the corresponding service slice and first latency measurement information. The destination node reassembles multiple service slices to obtain a second service bitstream. The destination node transmits this second service bitstream via the physical interface. In the above process, the destination node extracts the first time point from the first latency measurement information. The destination node records the third time point, which is the timestamp for the OAM code block extracted by the destination node.
[0556] After the destination node sends the second service bit stream, it enters the service flow in the second direction. The service flow in the second direction is described below:
[0557] First, the destination node receives the third service bitstream, which is the service bitstream corresponding to the second small-granularity service. The second small-granularity service is associated with the first small-granularity service. For example, the second small-granularity service and the first small-granularity service belong to the same small-granularity service.
[0558] Then, the destination node processes the third service bitstream and maps it to the exit timeslot location in the second direction. The data carried in this exit timeslot location is called FGU timeslot data. For specific processing methods, please refer to the preceding section. Figure 11The method described will not be elaborated here. Specifically, the destination node extracts the first time step and identification information from the first delay measurement information. Then, the destination node performs slicing processing on the third service bitstream to obtain service slices.
[0559] The destination node obtains the fourth time point. Then, based on the third and fourth time points, the destination node calculates the loopback time period, which indicates the time elapsed between the second communication device sending the second service bit stream and receiving the third service bit stream.
[0560] The destination node encapsulates the service slice to obtain a service container. The destination node inserts the loopback time period into the overhead of the service container. This service container is called the second service container, and it carries the second latency measurement information (loopback time period).
[0561] Optionally, the destination node uses the service slice as the payload of the service container, and inserts identification information into the overhead of the service container. This identification information indicates that the loopback time is associated with the first time step.
[0562] Then, the destination node maps the other service containers corresponding to the second service container and the third service bitstream to the exit timeslot position in the second direction. The destination node sends this exit timeslot position (i.e., sends FGU timeslot data) through the physical interface.
[0563] The FGU timeslot data sent by the destination node reaches the source node after transmission through intermediate nodes. In the second direction, the source node receives the FGU timeslot data sent from the destination node. Then, the source node performs demapping and decapsulation processing on the FGU timeslot data to obtain the corresponding service bitstream, which is called the fourth service bitstream. The small-granularity services carried in the fourth service bitstream are the second small-granularity services. During the above process, the source node acquires the second time step.
[0564] Optionally, the source node determines the corresponding first time point from its memory based on the identification information carried in the second time delay measurement information.
[0565] Finally, the source node calculates the bidirectional delay from the source node to the destination node based on the first time point, the second time point, and the loopback time period extracted from the second delay measurement information.
[0566] The first time satisfies the following conditions: the first time is greater than or equal to the time when the first communication device receives the first service bit stream, and the first time is less than the time when the first communication device inserts a bidirectional delay measurement message (2DMM) into the first code block stream. The third time satisfies the following characteristics: the third time is greater than the time when the second communication device extracts the bidirectional delay measurement message (2DMM) from the second code block stream, and the third time is less than or equal to the time when the second communication device sends the second service bit stream, which carries the first small-granularity service. The second time satisfies the following characteristics: the second time is less than or equal to the time when the first communication device sends the fourth service bit stream, and greater than the time when the first communication device extracts a bidirectional delay measurement response (2DMR) message from the fourth code block stream, which is obtained based on the fourth code block stream and carries the second small-granularity service. The fourth time satisfies the following characteristics: the fourth time is greater than or equal to the time when the second communication device receives the third service bit stream, and the fourth time is less than the time when the second communication device inserts the bidirectional delay measurement response (2DMR) message into the third code block stream. Therefore, reducing the detection blind spots in the two-way delay measurement process and improving the accuracy of delay measurement can improve communication quality and reduce the probability of service interruption.
[0567] Secondly, in Figure 11 Based on the illustrated embodiment, (b2) is introduced, in the dual-delay measurement scenario, delay measurement information is carried in a bidirectional delay measurement 2DM message. Please refer to [link / reference]. Figure 15 , Figure 15 This is a schematic diagram of another application scenario in the embodiments of this application.
[0568] First, describe the first direction (from the source node to the destination node):
[0569] The source node receives the first service bitstream, which corresponds to the first small-granularity service. After receiving the first service bitstream, the source node slices it to obtain multiple service slices. Then, the source node encapsulates the service slices to obtain the corresponding service containers. In the above process, the source node obtains the first time point, which is the timestamp where the source node inserts the OAM code block.
[0570] The source node inserts the first time step into the 2DMM code block. In other words, the source node uses the first time step to update the time of the 2DMM message, for example, by replacing the original time step in the timestamp field of the 2DMM message with the first time step. The 2DMM message carrying the first time step serves as the first delay measurement information.
[0571] The source node further encapsulates multiple service containers (including the first latency measurement information) and maps them to the exit timeslot location in the first direction. The data carried in this exit timeslot location is called FGU timeslot data. Finally, the source node sends the FGU timeslot data to the next-hop node (i.e., the intermediate node) through the physical interface at this exit timeslot location.
[0572] After receiving FGU timeslot data at the ingress timeslot location via the physical interface, the intermediate node maps the ingress timeslot location to the egress timeslot location according to the timeslot cross-configuration table. The timeslot cross-configuration table indicates the mapping rules from the ingress timeslot location to the egress timeslot location in the intermediate node. Then, the intermediate node transmits FGU timeslot data at the egress timeslot location via the physical interface.
[0573] The destination node receives FGU timeslot data at the ingress timeslot location via a physical interface. Then, the destination node demaps the FGU timeslot data to obtain a second code block stream. The destination node demaps the second code block stream, extracting the 2DMM messages and demapping to obtain a service container. Further, the destination node decapsulates the service container to obtain the corresponding service slice. The destination node reassembles multiple service slices to obtain a second service bit stream. The destination node transmits this second service bit stream via the physical interface. In the above process, the destination node extracts the first time step from the first delay measurement information. The destination node records the third time step, which is the timestamp for the OAM code block extraction.
[0574] After the destination node sends the second service bit stream, it enters the service flow in the second direction. The service flow in the second direction is described below:
[0575] First, the destination node receives the third service bitstream, which is the service bitstream corresponding to the second small-granularity service. The second small-granularity service is associated with the first small-granularity service. For example, the second small-granularity service and the first small-granularity service belong to the same small-granularity service.
[0576] Then, the destination node processes the third service bitstream and maps it to the exit time slot location in the second direction. For details on the processing method, please refer to the preceding section. Figure 11The described method will not be elaborated here. In this process, the destination node records the third and fourth timestamps, and then uses these timestamps as loopback time information. This loopback time information indicates the time elapsed between the second communication device sending the second service bitstream and receiving the third service bitstream. The destination node inserts the first timetamp (from the first delay measurement information), the third timetamp, and the fourth timetamp into the 2DMR message. In other words, the destination node updates the timestamps of the 2DMR message using the first, third, and fourth timestamps, for example, by replacing the original timestamp recorded in the timestamp field of the 2DMR message with the first, third, and fourth timestamps. The 2DMR message carrying the first, third, and fourth timestamps serves as the second delay measurement information.
[0577] Then, the destination node maps the second delay measurement information and the other service containers corresponding to the third service bitstream to the exit timeslot position in the second direction. The destination node sends FGU timeslot data (including the second delay measurement information and the other service containers corresponding to the third service bitstream) at the exit timeslot position through the physical interface.
[0578] The FGU timeslot data sent by the destination node reaches the source node after transmission through intermediate nodes. In the second direction, the source node receives the FGU timeslot data sent from the destination node (this FGU timeslot data corresponds to the second small-granularity service). The source node then performs demapping and decapsulation processing on the FGU timeslot data to obtain the corresponding service bitstream, which is called the fourth service bitstream. The small-granularity service carried in the fourth service bitstream is the second small-granularity service. During the above process, the source node acquires the second time step.
[0579] Finally, the source node calculates the bidirectional time delay from the source node to the destination node based on the first time, the second time, and the third and fourth time extracted from the second time delay measurement information.
[0580] The first time satisfies the following conditions: the first time is greater than or equal to the time when the first communication device receives the first service bit stream, and the first time is less than the time when the first communication device inserts a bidirectional delay measurement message (2DMM) into the first code block stream. The third time satisfies the following characteristics: the third time is greater than the time when the second communication device extracts the bidirectional delay measurement message (2DMM) from the second code block stream, and the third time is less than or equal to the time when the second communication device sends the second service bit stream, which carries the first small-granularity service. The second time satisfies the following characteristics: the second time is less than or equal to the time when the first communication device sends the fourth service bit stream, and greater than the time when the first communication device extracts a bidirectional delay measurement response (2DMR) message from the fourth code block stream, which is obtained based on the fourth code block stream and carries the second small-granularity service. The fourth time satisfies the following characteristics: the fourth time is greater than or equal to the time when the second communication device receives the third service bit stream, and the fourth time is less than the time when the second communication device inserts the bidirectional delay measurement response (2DMR) message into the third code block stream. Therefore, reducing the detection blind spots in the two-way delay measurement process and improving the accuracy of delay measurement can improve communication quality and reduce the probability of service interruption.
[0581] In conjunction with the foregoing embodiments, this application also proposes a delay compensation method based on delay measurement information. For details, please refer to... Figure 16 , Figure 16 This is a schematic diagram of another application scenario in the embodiments of this application.
[0582] After receiving the first service bitstream, the source node records the first time point. Then, the source node inserts this first time point into the service container, for example, into the service container's overhead. The source node maps this service container and other service containers corresponding to the first service bitstream to the exit timeslot location. Since the first service bitstream corresponds to the first small-granularity service, the data carried at this exit timeslot location is called FGU timeslot data. The source node then sends the FGU timeslot data to the intermediate nodes.
[0583] After transmission through intermediate nodes, the destination node receives FGU timeslot data at the ingress timeslot location. Then, the destination node demaps the FGU timeslot data to obtain one or more corresponding service containers. The destination node further decapsulates the service containers to obtain the first time point recorded in the service container's overhead. During the above process, the destination node records the third time point. Based on the first and third time points, the destination node calculates the one-way delay from the source node to the destination node.
[0584] During the decapsulation process of FGU timeslot data, the destination node stores the decapsulated service slices into memory and waits for latency compensation.
[0585] Then, the destination node obtains the target latency, which is greater than or equal to the larger of the following two transmission latency values: the service transmission latency value in a first direction or the service transmission latency value in a second direction, wherein the first direction is from the source node to the destination node; and the second direction is from the destination node to the source node. The second communication device determines a latency compensation value based on the target latency and the one-way latency between the first communication device and the second communication device.
[0586] After obtaining the delay compensation value, when the residence time of the service slice corresponding to the first small-granularity service in the memory reaches the delay compensation value, the second communication device extracts the service slice corresponding to the first small-granularity service from the memory; the second communication device reassembles the service slice corresponding to the first small-granularity service to obtain the second service bit stream; the second communication device sends the second service bit stream.
[0587] The above method enables unidirectional latency compensation in small-granularity service scenarios, ensuring that the latency of the service bitstream in the first direction is consistent with the latency of the service bitstream in the second direction.
[0588] In conjunction with the foregoing embodiments, the latency measurement method proposed in this application can also be applied to scenarios where CBR services are carried by large-granularity time-slot data (hereinafter referred to as large-granularity time slots). The resource granularity of large-granularity time-slot data can be E. 1Gbps, or E 5Gbps, this application embodiment does not limit this, where E is a positive integer. The specific service processing flow is as follows: the source node encapsulates the CBR service bitstream into a service container and maps it to a large-granularity time slot; the intermediate node cross-interleaves the large-granularity time slot and then sends the large-granularity time slot at the exit time slot position; the destination node demaps from the large-granularity time slot to obtain the service container, and then decapsulates it according to the service container to obtain the CBR service stream. Finally, the destination node sends the CBR service stream at the service port. The specific delay measurement method for CBR service carried in the large-granularity time slot is similar to the delay measurement method proposed in the aforementioned embodiment, and will not be repeated here. The above mainly introduces the solution provided by the embodiments of this application from the perspective of method. It can be understood that in order to achieve the above functions, the network device includes the corresponding hardware structure and / or software module to perform each function. Those skilled in the art should readily realize that, in conjunction with the modules and algorithm steps of the various examples described in the embodiments disclosed herein, this application can be implemented in hardware or a combination of hardware and computer software. Whether a certain function is executed by hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Skilled professionals may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0589] This application embodiment can divide the network device into functional modules according to the above method example. For example, each function can be divided into its own functional module, or two or more functions can be integrated into one processing module. The integrated module can be implemented in hardware or as a software functional module. It should be noted that the module division in this application embodiment is illustrative and only represents one logical functional division. In actual implementation, there may be other division methods.
[0590] The following describes a network device according to an embodiment of this application. The network device described below has any function of the first communication device or the second communication device in the above method embodiments.
[0591] Figure 18 This is a schematic diagram of the structure of a communication device 1800 provided in an embodiment of this application, as shown below. Figure 18 As shown, the communication device 1800 includes: a transceiver module 1801, used to execute step 1002 or 1003; and a processing module 1802, used to execute step 1001 or 1004.
[0592] For example, the transceiver module 1801 is used to execute steps 1101, 1102, 1103, 1104, 1105 or 1106; the processing module 1802 is used to execute step 1107.
[0593] For example, the communication device 1800 is used in a first communication device, the communication device 1800 comprising:
[0594] The communication device 1800 may correspond to the first communication device or the second communication device in the above method embodiments. Each unit in the communication device 1800 and the other operations and / or functions described above are for implementing various steps and methods implemented by the first communication device or the second communication device in the method embodiments. For specific details, please refer to the above method embodiments. For the sake of brevity, they will not be repeated here.
[0595] The communication device 1800's processing of data blocks is illustrated using the above-described functional module division as an example. In practical applications, the functions described above can be assigned to different functional modules as needed, that is, the internal structure of the communication device 1800 can be divided into different functional modules to complete all or part of the functions described above. Furthermore, the communication device 1800 provided in the above embodiment is similar to the one described above... Figure 10 or Figure 11 The corresponding implementation methods belong to the same concept, and their specific implementation process can be found in the above method implementations, which will not be repeated here.
[0596] It should be noted that the communication device mentioned in the embodiments of this application can be, for example, a network device such as a switch or router, or a component of a network device, such as a single board or line card on the network device, or a functional module on the network device, or a chip used to implement the method of this application. The embodiments of this application do not impose specific limitations. When the communication device is a chip, the transceiver module used to implement the method can be, for example, the chip's interface circuit, and the processing module can be a processing circuit with processing functions within the chip. Communication devices can be directly connected, for example, but not limited to, via Ethernet cables or optical fibers.
[0597] To implement the above embodiments, this application also provides a network device. See also... Figure 19 , Figure 19 This is a schematic diagram of the structure of a communication device 1900 provided in an embodiment of this application.
[0598] Figure 19 Although the communication device 1900 shown has certain specific features, those skilled in the art will realize from the embodiments of this application that, for the sake of brevity, Figure 19Various other features are not shown to avoid obscuring more relevant aspects of the implementation methods disclosed in this application. Therefore, as an example, in some implementations, the communication device 1900 includes one or more processing units (e.g., CPU) 1901, a network interface 1902, a programming interface 1903, a memory 1904, and one or more communication buses 1905 for interconnecting various components. In other implementations, the communication device 1900 may omit or add some functional components or units based on the above examples.
[0599] In some implementations, network interface 1902 is used to connect to one or more other network devices / servers in a network system. In some implementations, communication bus 1905 includes circuitry for interconnecting and controlling communication between system components. Memory 1904 may include non-volatile memory, such as read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Memory 1904 may also include volatile memory, which may be random access memory (RAM) used as an external cache.
[0600] In some implementations, memory 1904 or a non-transitory computer-readable storage medium of memory 1904 stores programs, modules, and data structures, or subsets thereof, including, for example, a transceiver unit (not shown), an acquisition unit 19041, and a processing unit 19042.
[0601] In one possible embodiment, the communication device 1900 may have the above-described features. Figure 10 or Figure 11 Any function of the first or second communication device in the corresponding method embodiment.
[0602] It should be understood that the communication device 1900 corresponds to the first communication device or the second communication device in the above method embodiments. The modules in the communication device 1900 and the other operations and / or functions described above are respectively for implementing various steps and methods of the first communication device or the second communication device in the above method embodiments. For specific details, please refer to the above... Figure 10 or Figure 11 For the sake of brevity, the corresponding method implementations will not be described in detail here.
[0603] It should be understood that the data transmission and reception operations in this application can be performed by the network interface 1902 on the communication device 1900, or the processor can call the program code in the memory and cooperate with the network interface 1902 to realize the function of the transceiver unit when needed.
[0604] In various implementations, the communication device 1900 is used to execute a delay compensation method provided in the embodiments of this application, such as executing the above-described method. Figure 10 or Figure 11 The embodiment shown corresponds to a time delay compensation method.
[0605] This application Figure 19 The specific structure of the network device can be as follows: Figure 20 As shown.
[0606] Figure 20 This is a schematic diagram of the structure of a communication device 2000 provided in an embodiment of this application. The communication device 2000 includes a main control board 2020 and an interface board 2030.
[0607] The main control board 2020, also known as the main processing unit (MPU) or route processor, is used to control and manage the various components in the communication device 2000, including routing calculation, device management, device maintenance, and protocol processing functions. The main control board 2020 includes a central processing unit 2011 and a memory 2012.
[0608] The interface board 2030, also known as a line processing unit (LPU), linecard, or service board, provides various service interfaces and enables packet forwarding. Service interfaces include, but are not limited to, Ethernet interfaces and POS (Packet over SONET / SDH) interfaces. The interface board 2030 includes: a central processing unit 2031, a network processor 2032, a forwarding table entry memory 2034, and a physical interface card (PIC) 2033.
[0609] The central processing unit 2031 on the interface board 2030 is used to control and manage the interface board 2030 and communicate with the central processing unit 2011 on the main control board 2020.
[0610] The network processor 2032 is used to implement packet forwarding. The network processor 2032 can be in the form of a forwarding chip.
[0611] The physical interface card 2033 is used to implement physical layer interfacing functions. Raw traffic enters the interface board 2030 through this card, and processed packets are sent out from the physical interface card 2033. The physical interface card 2033 includes at least one physical interface, also called a physical port, which can be a Flexible Ethernet (FlexE) physical interface. The physical interface card 2033, also called a daughter card, can be installed on the interface board 2030 and is responsible for converting photoelectric signals into packets, performing validity checks on the packets, and forwarding them to the network processor 2032 for processing. In some embodiments, the central processing unit 2031 of the interface board 2030 can also perform the functions of the network processor 2032, such as implementing software forwarding based on a general-purpose CPU, thus eliminating the need for the network processor 2032 in the interface board 2030.
[0612] Optionally, the communication device 2000 includes multiple interface boards. For example, the communication device 2000 also includes an interface board 2040, which includes a central processing unit 2041, a network processor 2042, a forwarding table entry memory 2044, and a physical interface card 2043.
[0613] Optionally, the communication device 2000 also includes a switching fabric board 2022. The switching fabric board 2022 can also be referred to as a switch fabric unit (SFU). When the network device has multiple interface boards 2030, the switching fabric board 2022 is used to complete data exchange between the interface boards. For example, interface boards 2030 and 2040 can communicate via the switching fabric board 2022.
[0614] The main control board 2020 and the interface board are coupled. For example, the main control board 2020, interface boards 2030 and 2040, and the switching network board 2022 are interconnected via a system bus and / or a system backplane. In one possible implementation, an inter-process communication (IPC) channel is established between the main control board 2020 and the interface board 2030, and the main control board 2020 and the interface board 2030 communicate with each other through the IPC channel.
[0615] Logically, the communication device 2000 includes a control plane and a forwarding plane. The control plane includes a main control board 2020 and a central processing unit 2031, while the forwarding plane includes various components that perform forwarding, such as a forwarding table entry memory 2034, a physical interface card 2033, and a network processor 2032. The control plane performs functions such as publishing routes, generating forwarding tables, processing signaling and protocol messages, and configuring and maintaining the status of the device. The control plane distributes the generated forwarding table to the forwarding plane. In the forwarding plane, the network processor 2032 forwards messages received by the physical interface card 2033 based on the forwarding table distributed by the control plane. The forwarding table distributed by the control plane can be stored in the forwarding table entry memory 2034. In some embodiments, the control plane and the forwarding plane can be completely separated and not on the same device.
[0616] It should be understood that the transceiver unit in the communication device 1900 can be equivalent to the physical interface card 2033 or the physical interface card 2043 in the communication device 2000; the acquisition unit 19041 and the processing unit 19042 in the communication device 1900 can be equivalent to the central processing unit 2011 or the central processing unit 2031 in the communication device 2000, or they can be equivalent to the program code or instructions stored in the memory 2012.
[0617] It should be understood that the operation on interface board 2040 in this embodiment is consistent with the operation on interface board 2030, and will not be described again for the sake of simplicity. It should be understood that the communication device 2000 in this embodiment can correspond to the first communication device or the second communication device in the above-described method embodiments. The main control board 2020, interface board 2030 and / or interface board 2040 in the communication device 2000 can implement the functions and / or various steps implemented by the first communication device or the second communication device in the above-described method embodiments, and will not be described again for the sake of simplicity.
[0618] It's worth noting that a network device may have one or more main control boards, including a primary and a backup main control board. It may also have one or more interface boards; the stronger the network device's data processing capabilities, the more interface boards it provides. Each interface board may also have one or more physical interface cards. A switching board may or may not exist; multiple switching boards can share load and provide redundancy. In a centralized forwarding architecture, the network device may not need a switching board, with the interface boards handling the entire system's business data processing. In a distributed forwarding architecture, the network device can have at least one switching board, enabling data exchange between multiple interface boards and providing high-capacity data exchange and processing capabilities. Optionally, the network device can also consist of only one board, without a switching board, integrating the functions of the interface boards and the main control board onto this single board. In this case, the central processing unit (CPU) on the interface board and the CPU on the main control board can be combined into a single CPU, executing the combined functions of both. The specific architecture adopted depends on the specific network deployment scenario and is not a single, definitive choice.
[0619] In some possible embodiments, the first or second communication device described above can be implemented as a virtualization device. A virtualization device can be a virtual machine (VM) running a program for sending messages, a virtual router, or a virtual switch. The virtualization device is deployed on hardware (e.g., a physical server). For example, the first network device can be implemented based on a general-purpose physical server combined with network functions virtualization (NFV) technology.
[0620] It should be understood that the network devices of the various product forms described above each have any of the functions of the first communication device or the second communication device in the above method embodiments, which will not be elaborated here.
[0621] This application embodiment also provides a network device, the network device including: a communication interface;
[0622] A processor connected to the communication interface, based on the communication interface and the processor.
[0623] In one possible implementation, the network device is used for the first communication device, causing the first communication device to perform as described above. Figure 10 or Figure 11 The method in the illustrated embodiment.
[0624] In another possible implementation, the second communication device performs the functions described above. Figure 10 or Figure 11 The method in the illustrated embodiment.
[0625] This application also provides a computer-readable storage medium including instructions that, when executed on a computer, cause the computer to control a network device to perform any of the implementations shown in the foregoing method embodiments.
[0626] This application also provides a computer program product, which includes computer program code. When the computer program code is run on a computer, it causes the computer to execute any of the implementation methods shown in the foregoing method embodiments.
[0627] Furthermore, embodiments of this application also provide a computer program product that, when run on a network device, causes the network device to perform the aforementioned... Figure 10 or Figure 11 The method executed by the first communication device or the second communication device in the corresponding method embodiment.
[0628] This application also provides a chip system including a processor and an interface circuit. The interface circuit is used to receive instructions and transmit them to the processor. The processor is used to implement the methods in any of the above method embodiments. In one specific implementation, the chip system further includes a memory.
[0629] The chip system can have one or more processors. These processors can be implemented in hardware or software. When implemented in hardware, the processor can be a logic circuit, an integrated circuit, etc. When implemented in software, the processor can be a general-purpose processor that implements the methods in any of the above method embodiments by reading software code stored in memory.
[0630] In a specific implementation, the chip system may contain one or more memories. These memories may be integrated with the processor or separated from it; this application does not limit this. For example, the memory may be a non-transient processor, such as a read-only memory (ROM), which may be integrated with the processor on the same chip or disposed on different chips. This application does not specifically limit the type of memory or the arrangement of the memory and processor.
[0631] Please see Figure 21 , Figure 21 This is a schematic diagram of a network system 2100 according to an embodiment of this application. The network system 2100 includes a first communication device 2101 and a second communication device 2102. The first communication device 2101 and the second communication device 2102 can be physical devices such as routers, switches, or gateways, or virtual devices that support route publishing and message forwarding. This embodiment does not limit the specific types of the first communication device 2101 and the second communication device 2102.
[0632] Optionally, the network system 2100 further includes a controller 2103, which may be a server managing the first communication device 2101 and the second communication device 2102. Optionally, the first communication device 2101 may be communication device 1800, communication device 1900, or communication device 2000. Optionally, the second communication device 2102 may be communication device 1800, communication device 1900, or communication device 2000. Optionally, the controller 2103 may be communication device 1800, communication device 1900, or communication device 2000.
[0633] Please see Figure 22 , Figure 22 This is a schematic diagram of a network system 2200 according to an embodiment of this application. The network system 2200 includes a first communication device 2201, a second communication device 2202, and a third communication device 2203. The first communication device 2201, the second communication device 2202, and the third communication device 2203 can be physical devices such as routers, switches, or gateways, or virtual devices that support route publishing and packet forwarding. This embodiment does not limit the specific types of the first communication device 2201, the second network device 2202, and the third network device 2203.
[0634] For example, network system 2200 is applied to Figure 7 In the scenario shown, the first communication device 2201 can be an edge node 1, one or more of the second communication devices 2202 can be intermediate nodes, and the third communication device 2203 can be an edge node 2.
[0635] Optional, Figure 22 The illustrated network system 2200 also includes a controller 2204. The controller 2204 in... Figure 7 The scene shown is not shown.
[0636] The network devices of the various product forms described above each have any of the functions of the first communication device or the second communication device in the above method embodiments, which will not be elaborated here.
[0637] The embodiments of this application have been described in detail above. The steps in the method of the embodiments of this application can be scheduled, merged or deleted in sequence according to actual needs; the modules in the device of the embodiments of this application can be divided, merged or deleted according to actual needs.
[0638] It should be understood that the phrase "an embodiment" or "one embodiment" throughout the specification means that a specific feature, structure, or characteristic related to the embodiment is included in at least one embodiment of this application. Therefore, "in one embodiment" or "in one embodiment" appearing throughout the specification does not necessarily refer to the same embodiment. Furthermore, these specific features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. It should be understood that in the various embodiments of this application, the sequence number of the above-described processes does not imply a sequential 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 this application.
[0639] In this article, the term "and / or" is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Additionally, the character " / " in this article generally indicates that the preceding and following related objects have an "or" relationship.
[0640] It should be understood that in the embodiments of this application, "B corresponding to A" means that B is associated with A, and B can be determined based on A. However, it should also be understood that determining B based on A does not mean that B is determined solely based on A; B can also be determined based on A and / or other information.
[0641] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0642] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces, or indirect coupling or communication connection between apparatuses or units, and may be electrical, mechanical, or other forms.
[0643] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0644] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
Claims
1. A method of measuring a time delay, characterized by, include: The first communication device acquires the first moment. The first time point is the time corresponding to the timestamp of the first communication device inserting, managing, and maintaining the OAM code block. Wherein, the first time is greater than or equal to the time when the first communication device receives the first service bit stream, and the first time is less than the time when the first communication device inserts a one-way delay measurement 1DM message or a two-way delay measurement 2DM message into the first code block stream, the first service bit stream carries the first small-granular service, and the first code block stream is obtained based on the first service bit stream. The first communication device sends first delay measurement information to the second communication device. The first delay measurement information carries the first time. The first delay measurement information is used to measure the delay between the first communication device and the second communication device.
2. The method according to claim 1, characterized in that, The first latency measurement information is carried in the first service container, which carries the service slice obtained by the first communication device through slicing the first service bit stream.
3. The method according to claim 1, characterized in that, The first delay measurement information is carried in a 1DM message, or the first delay measurement information is carried in a bidirectional delay measurement message 2DMM message; The first time point is carried in the timestamp field of the 1DM message or the 2DMM message.
4. The method according to claim 3, characterized in that, The first communication device acquires the first moment, including: The first communication device acquires a first sub-time, which is the time when the first communication device receives the first service bit stream; The first communication device acquires a second sub-time point, which is the time when the first communication device maps the service container corresponding to the first service bit stream to the first code block stream. The first communication device acquires a third sub-time, which is the time when the first communication device maps a 1DM message or a 2DM message to the first code block stream; The first communication device calculates the first moment in the following way: T1 = t3 - (t2 - t1); Wherein, T1 is the first time point, t3 is the third sub-time point, t2 is the second sub-time point, and t1 is the first sub-time point.
5. The method according to claim 1, characterized in that, The method further includes: The first communication device receives second delay measurement information from the second communication device. The second delay measurement information includes loopback time information, which indicates the time elapsed between the second communication device transmitting the second service bit stream and receiving the third service bit stream. The second service bitstream carries the first small-granular service, and the third service bitstream carries the second small-granular service. The first small-granular service and the second small-granular service are associated. The first small-granular service is the first direction service of the second small-granular service, and the first direction indicates from the first communication device to the second communication device. The second small-granular service is the second direction service of the first small-granular service, and the second direction indicates from the second communication device to the first communication device. The first communication device acquires a second time, which is the time corresponding to the timestamp of the OAM code block extracted by the first communication device. The second time is less than or equal to the time when the first communication device sends the fourth service bit stream, and greater than the time when the first communication device extracts the bidirectional delay measurement response 2DMR message from the fourth code block stream. The fourth service bit stream is obtained based on the processing of the fourth code block stream, and the fourth service bit stream carries the second small-granular service. The first communication device determines the bidirectional time delay between the first communication device and the second communication device based on the first time, the second time, and the loopback time information.
6. The method according to claim 5, characterized in that, The second delay measurement information is carried in the second service container, which carries the service slice obtained by the second communication device through slicing the third service bit stream. The third service bitstream carries a second small-granular service, which is associated with the first small-granular service. The first small-granular service is a first-direction service of the second small-granular service, with the first direction indicating from the first communication device to the second communication device. The second small-granular service is a second-direction service of the first small-granular service, with the second direction indicating from the second communication device to the first communication device.
7. The method according to claim 5, characterized in that, The second delay measurement information is carried in the bidirectional delay measurement response (2DMR) message.
8. The method according to claim 7, characterized in that, The first communication device acquires the second time, including: The first communication device acquires the tenth sub-time, which is the time when the first communication device extracts the bidirectional delay measurement response (2DMR) message from the fourth code block stream; The first communication device acquires the eleventh sub-time, which is the time when the first communication device sends the second service bit stream; The first communication device acquires the twelfth sub-time point, which is the time when the first communication device demaps from the fourth code block stream to obtain the service container; The first communication device calculates the second moment in the following manner: T2 = t10 + (t11 - t12); Wherein, T2 is the second time point, t10 is the tenth sub-time point, t11 is the eleventh sub-time point, and t12 is the twelfth sub-time point.
9. The method according to claim 5, characterized in that, The loopback time information includes: The third time and the fourth time, wherein the third time is greater than the time when the second communication device extracts the bidirectional delay measurement message 2DMM message from the second code block stream, and less than or equal to the time when the second communication device sends the second service bit stream, the second code block stream carries the first small-granular service, and the second service bit stream is generated based on the second code block stream; The fourth time is greater than or equal to the time when the second communication device receives the third service bit stream, and less than the time when the second communication device inserts a bidirectional delay measurement response (2DMR) message into the third code block stream. The third code block stream is generated based on the third service bit stream. Alternatively, the loopback time information includes a loopback time period, which is obtained by subtracting the third time period from the fourth time period.
10. The method according to claim 9, characterized in that, When the loopback time information is the loopback time period; The first communication device determines the bidirectional time delay between the first communication device and the second communication device based on the first time, the loopback time information, and the second time, including: The first communication device calculates the bidirectional time delay between itself and the second communication device using the following method: Two_way_delay = T2 - T1 - Δ; Wherein, Two_way_delay is the bidirectional delay between the first communication device and the second communication device, T2 is the second time moment, T1 is the first time moment, and Δ is the loopback time period.
11. The method according to claim 9, characterized in that, When the loopback time information is the third time and the fourth time; The first communication device determines the bidirectional time delay between the first communication device and the second communication device based on the first time, the loopback time information, and the second time, including: The first communication device calculates the bidirectional time delay between itself and the second communication device using the following method: Two_way_delay= (T2-T1)-(T4-T3); Wherein, Two_way_delay is the bidirectional delay between the first communication device and the second communication device, T4 is the fourth time, T1 is the first time, T3 is the third time, and T2 is the second time.
12. The method according to claim 5, characterized in that, The first time delay measurement information carries identification information; The second delay measurement information carries the identification information; The method further includes: The first communication device stores the first time and the identification information in the memory of the first communication device, and the first time corresponds one-to-one with the identification information; The first communication device determines the first moment from its memory based on the identification information in the second delay measurement information.
13. The method according to any one of claims 1-12, characterized in that, The first small-granular service is a fixed bit rate (CBR) service.
14. A time delay measurement method, characterized in that, include: The second communication device acquires a third time point, which is the time point corresponding to the timestamp of the operation, management, and maintenance of the OAM code block extracted by the second communication device. Wherein, the third time is greater than the time when the second communication device extracts the one-way delay measurement 1DM message or the two-way delay measurement 2DM message from the second code block stream, and less than or equal to the time when the second communication device sends the second service bit stream, the second code block stream carries the first small-granular service, the second service bit stream is generated based on the second code block stream, and the second service bit stream carries the first small-granular service; The second communication device receives first delay measurement information from the first communication device. The first delay measurement information carries a first time point, which is the time point corresponding to the timestamp of the OAM code block inserted by the first communication device. The second communication device determines the one-way time delay between the first communication device and the second communication device based on the first time and the third time. Alternatively, the second communication device sends second delay measurement information to the first communication device. The second delay measurement information is obtained from the third time point and is used to instruct the first communication device to determine the bidirectional delay between the first communication device and the second communication device.
15. The method according to claim 14, characterized in that, The second delay measurement information is carried in the second service container, which carries the service slice obtained by the second communication device through slicing the third service bit stream. The third service bitstream carries a second small-granular service, which is associated with the first small-granular service.
16. The method according to claim 14, characterized in that, The second delay measurement information is carried in the bidirectional delay measurement response (2DMR) message.
17. The method according to claim 14, characterized in that, The first moment is carried by the first time delay measurement information. The first delay measurement information carries a first time point, which is greater than or equal to the time when the first communication device receives the first service bit stream, and the first time point is less than the time when the first communication device inserts a one-way delay measurement 1DM message or a two-way delay measurement 2DM message into the first code block stream. The first service bit stream carries a first small-granularity service, and the first code block stream is obtained based on the first service bit stream.
18. The method according to claim 17, characterized in that, The first latency measurement information is carried in the first service container, which carries the service slice obtained by the first communication device through slicing the first service bit stream.
19. The method according to claim 17, characterized in that, The first delay measurement information is carried in a 1DM message, or the first delay measurement information is carried in a bidirectional delay measurement message 2DMM message; The first time point is carried in the timestamp field of the 1DM message or the 2DMM message.
20. The method according to claim 15, characterized in that, The second communication device sends the second delay measurement information to the first communication device, including: The second communication device acquires a fourth time, which is the time corresponding to the timestamp of the OAM code block inserted by the second communication device. The fourth time is greater than or equal to the time when the second communication device receives the third service bit stream, and less than the time when the second communication device inserts a bidirectional delay measurement response (2DMR) message into the third code block stream. The third code block stream is generated based on the third service bit stream. The second communication device acquires loopback time information, which is determined based on the third time and the fourth time. The loopback time information indicates the time interval from when the second communication device sends the second service bit stream to when it receives the third service bit stream. The second communication device sends the second delay measurement information to the first communication device, and the second delay measurement information carries the loopback time information.
21. The method according to claim 20, characterized in that, The loopback time information includes: the third time point and the fourth time point; Alternatively, the loopback time information includes a loopback time period, which is obtained by subtracting the third time period from the fourth time period.
22. The method according to claim 14, characterized in that, The second communication device acquires the third moment, including: The second communication device acquires a fourth sub-time, which is the time when the second communication device sends the second service bit stream; The second communication device acquires the fifth sub-time point, which is the time when the second communication device demaps from the second code block stream to obtain the service container; The second communication device acquires the sixth sub-time, which is the time when the second communication device extracts a 1DM message or a 2DM message from the second code block stream; The second communication device calculates the third moment in the following manner: T3 = t6 + (t4 - t5); Wherein, T3 is the third time point, t6 is the sixth sub-time point, t4 is the fourth sub-time point, and t5 is the fifth sub-time point.
23. The method according to claim 22, characterized in that, The method further includes: The second communication device acquires the seventh sub-time, which is the time when the second communication device receives the third service bit stream; The second communication device acquires the eighth sub-time, which is the time when the second communication device maps the service container corresponding to the third service bit stream to the third code block stream; The second communication device acquires the ninth sub-time, which is the time when the second communication device inserts the 2DMR message into the third code block stream; The second communication device calculates the fourth moment in the following manner: T4 = t9 - (t8 - t7); Wherein, T4 is the fourth time point, t9 is the ninth sub-time point, t8 is the eighth sub-time point, and t7 is the seventh sub-time point.
24. The method according to claim 14, characterized in that, The second communication device determines the one-way time delay between the first communication device and the second communication device based on the first time and the third time, including: The second communication device calculates the one-way delay between the first communication device and the second communication device using the following method: One_way_delay=T3-T1; Wherein, One_way_delay is the one-way delay between the first communication device and the second communication device, T3 is the third time point, and T1 is the first time point.
25. The method according to claim 15, characterized in that, The second small-granular service is a fixed bit rate (CBR) service.
26. A communication device, characterized in that, Used as a first communication device, comprising: A transceiver module is configured to perform the receiving and / or sending related operations performed by the first communication device in the method according to any one of claims 1-13; The processing module is configured to perform operations other than the receiving and / or transmitting related operations performed by the first communication device in the method according to any one of claims 1-13.
27. A communication device, characterized in that, As a second communication device, it includes: A transceiver module is used to perform the receiving and / or sending related operations performed by the second communication device in the method according to any one of claims 14-25; The processing module is configured to perform operations other than the receiving and / or transmitting related operations performed by the second communication device in the method of any one of claims 14-25.
28. A network device, used as a first communication device, characterized in that, include; Communication interface; A processor connected to the communication interface, based on the communication interface and the processor, causes the first communication device to perform the method as described in any one of claims 1-13.
29. A network device used as a second communication device, characterized in that, include: Communication interface; A processor connected to the communication interface, based on the communication interface and the processor, causes the second communication device to perform the method as described in any one of claims 14-25.
30. A communication system, characterized in that, The communication system includes a first communication device and a second communication device, wherein the first communication device is used to perform the method according to any one of claims 1-13, and the second communication device is used to perform the method according to any one of claims 14-25.
31. A computer-readable storage medium comprising instructions, characterized in that, When the instructions are executed by the processor, the method described in any one of claims 1-25 is implemented.
32. A computer program product, comprising a program, characterized in that, When the program is executed by a processor, it implements the method according to any one of claims 1-25.