Methods, apparatus and computer-readable media for measuring stream interruption time during path switching

CN116800632BActive Publication Date: 2026-08-14ALCATEL LUCENT SHANGHAI BELL CO LTD +1
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-03-16
Publication Date
2026-08-14

AI Technical Summary

Technical Problem

这种方法是离线的并且对被测设备的网络服务造成干扰(因为它用测试仪表取代了用户流),而且通常仅可在实验室环境中使用

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116800632B_ABST
    Figure CN116800632B_ABST
Patent Text Reader

Abstract

Embodiments of this disclosure relate to a method, apparatus, and computer-readable medium for measuring streaming interruption time during path switching. The method is performed at a first device and includes: sending an Operation Management and Maintenance (OAM) frame having a sequential sequence number to a second device; receiving a responding OAM frame from the second device; determining a streaming interruption start time and a streaming interruption end time based on the received OAM frame; detecting the occurrence of a path switching and determining that the path switching was completed before the streaming interruption end time; and in response to determining that the path switching was completed before the streaming interruption end time, calculating the streaming interruption time based at least on the streaming interruption start time and the streaming interruption end time.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of this disclosure relate to the field of communications, and more specifically to methods, apparatus, and computer-readable media for automatically and in-service measuring streaming interruption time during path switching. Background Technology

[0002] Optical or packet transmission systems typically implement protection mechanisms to protect network entities such as ports, Optical Path Data Unit (ODUk) containers (in the case of Optical Transport Networks (OTNs), Ethernet services / Virtual Local Area Networks (VLANs) (in the case of Ethernet), or Label Switched Paths (LSPs) or Pseudowires (PWs) (in the case of Multiprotocol Label Switching (MPLS)). When measuring flow interruption time during Ethernet protection switching, an offline method using test instruments is commonly employed. The principle of the test is to connect the device under test (DUT) to the test instrument, which generates a stream of frames with a fixed size and period, and then measure the number of frames lost during the switching operation. The flow interruption time can be derived from the number of lost frames and the frame period. This method is offline and interferes with the network service of the DUT (because it replaces the user flow with the test instrument), and is generally only suitable for laboratory environments.

[0003] The problem with the above method is that it is an active test (which generates interference) and requires service interruption. However, there is a need to measure the user flow interruption time during protection switching in the service, i.e., a method that can be used when the service is up and running. For example, requiring the network unit (NE) itself to perform measurements performed by traditional external test instruments, calculate switching time and report it, allows the network service provider to verify the compliance of the Service Level Specification (SLS). Summary of the Invention

[0004] In general, embodiments of this disclosure relate to methods, apparatus, and computer-readable media for automatically and in-service measuring streaming interruption times during path switching.

[0005] In a first aspect of this disclosure, a method for measuring the duration of a stream interruption during a path switching event is provided. The method is executed at a first device and includes: sending an Operation Management and Maintenance (OAM) frame with a sequential sequence number to a second device; receiving a responding OAM frame from the second device; determining a stream interruption start time and a stream interruption end time based on the received OAM frame; detecting the occurrence of a path switching event and determining that the path switching was completed before the stream interruption end time; and in response to determining that the path switching was completed before the stream interruption end time, calculating the stream interruption duration based at least on the stream interruption start time and the stream interruption end time.

[0006] In a second aspect of this disclosure, a method for measuring the duration of a stream interruption during a path switching event is provided. The method is executed at a first device and includes: receiving an Operation Management and Maintenance (OAM) frame having a consecutive sequence number from a second device; determining a stream interruption start time and a stream interruption end time based on the received OAM frame; detecting the occurrence of a path switching event and determining that the path switching was completed before the stream interruption end time; and, in response to determining that the path switching was completed before the stream interruption end time, calculating the stream interruption duration based at least on the stream interruption start time and the stream interruption end time.

[0007] In a third aspect of this disclosure, a first device is provided for measuring the duration of a stream interruption during a path switching, comprising: at least one processor; and at least one memory including computer program code, wherein the at least one memory and the computer program code are configured, together with the at least one processor, to cause the first device to: send an Operation Management and Maintenance (OAM) frame having a sequential sequence number to a second device; receive a corresponding OAM frame from the second device; determine a stream interruption start time and a stream interruption end time based on the received OAM frame; detect the occurrence of a path switching and determine that the path switching was completed before the stream interruption end time; and in response to determining that the path switching was completed before the stream interruption end time, calculate the stream interruption time based at least on the stream interruption start time and the stream interruption end time.

[0008] In a fourth aspect of this disclosure, a first device is provided for measuring a streaming interruption time during a path switching, comprising: at least one processor; and at least one memory including computer program code, wherein the at least one memory and the computer program code are configured, together with the at least one processor, to enable the first device to: receive an Operation Management and Maintenance (OAM) frame having a sequential sequence number from a second device; determine a streaming interruption start time and a streaming interruption end time based on the received OAM frame; detect the occurrence of a path switching and determine that the path switching was completed before the streaming interruption end time; and, in response to determining that the path switching was completed before the streaming interruption end time, calculate the streaming interruption time based at least on the streaming interruption start time and the streaming interruption end time.

[0009] In a fifth aspect of this disclosure, a method for measuring path switching time is provided, the method being executed at a first node, comprising: receiving an indication of a path switching state machine from at least a second node; filtering the indication using a sliding window of duration P, wherein P is configurable; determining a start time and a completion time of the path switching based on the filtering result of the indication; and calculating the path switching time based on the start time and the completion time of the path switching.

[0010] In a sixth aspect of this disclosure, a first node for measuring path switching time is provided, comprising: at least one processor; and at least one memory including computer program code, wherein the at least one memory and the computer program code are configured, together with the at least one processor, to enable the first node to: receive an indication of a path switching state machine from at least a second node; filter the indication using a sliding window of duration P, wherein P is configurable; determine a start time and a completion time of the path switching based on the filtering result of the indication; and calculate the path switching time based on the start time and the completion time of the path switching.

[0011] In a seventh aspect of this disclosure, a computer-readable storage medium is provided having program code stored thereon, the program code being configured to cause an apparatus to perform the method according to any one of the first, second, or fifth aspects described above when executed.

[0012] It should be understood that the description in the Summary of the Invention is not intended to limit the key or essential features of the embodiments of this disclosure, nor is it intended to restrict the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0013] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. In the drawings, the same or similar reference numerals denote the same or similar elements, wherein:

[0014] Figure 1 A schematic diagram illustrating the path switching of service streams and OAM streams during protection switching according to an embodiment of the present disclosure is shown;

[0015] Figure 2 Example diagrams illustrating the sending and receiving of user service streams according to embodiments of the present disclosure are shown;

[0016] Figure 3 Example diagrams illustrating the transmission and reception of OAM streams according to embodiments of the present disclosure are shown;

[0017] Figure 4 An example diagram is shown illustrating the use of OAM frames to detect the start and end times of a flow interruption during protection switching, according to an embodiment of this disclosure.

[0018] Figure 5 An example diagram is shown illustrating the use of single-ended synthetic packet loss measurement (SLM) to measure the flow interruption time of protection switching according to an embodiment of the present disclosure;

[0019] Figure 6 An example diagram is shown illustrating the use of a two-terminal SLM to measure the flow interruption time of protection switching according to an embodiment of the present disclosure;

[0020] Figure 7 Another example diagram is shown, illustrating the use of a single-ended SLM to measure the flow interruption time of protection switching according to an embodiment of the present disclosure, wherein the OAM frame has a timestamp field;

[0021] Figure 8 An example diagram showing the measurement path switching time according to an embodiment of the present disclosure is illustrated;

[0022] Figure 9 Another example diagram showing the measurement path switching time according to an embodiment of the present disclosure is shown;

[0023] Figure 10 A flowchart illustrating an example method according to an embodiment of the present disclosure is shown;

[0024] Figure 11 A flowchart illustrating another example method according to an embodiment of the present disclosure is shown; and

[0025] Figure 12 A flowchart illustrating another example method according to an embodiment of the present disclosure is shown. Detailed Implementation

[0026] The principles and spirit of this disclosure will now be described with reference to several exemplary embodiments illustrated in the accompanying drawings. It should be understood that these specific embodiments are described only to enable those skilled in the art to better understand and implement this disclosure, and are not intended to limit the scope of this disclosure in any way.

[0027] As used herein, the term "comprising" and similar expressions should be understood as open-ended inclusion, i.e., "including but not limited to". The term "based on" should be understood as "at least partially based on". The term "an embodiment" or "the embodiment" should be understood as "at least one embodiment". The terms "first", "second", etc., may refer to different or the same objects. Other explicit and implicit definitions may also be included below.

[0028] As used herein, the term "determine" encompasses a wide variety of actions. For example, "determine" can include calculation, computation, processing, derivation, investigation, searching (e.g., looking in a table, database, or other data structure), ascertainment, etc. Furthermore, "determine" can include receiving (e.g., receiving information), accessing (e.g., accessing data in memory), etc. Additionally, "determine" can include parsing, selecting, choosing, building, etc.

[0029] As used herein, the term "circuit" refers to one or more of the following: (a) a hardware circuit implementation (such as an implementation of analog and / or digital circuits only); and (b) a combination of hardware circuits and software, such as (if applicable): (i) a combination of analog and / or digital hardware circuits with software / firmware; and (ii) any part of a hardware processor with software (including digital signal processors, software, and memory that work together to enable devices such as optical receivers or other computing devices to perform various functions); and (c) a hardware circuit and / or processor, such as a microprocessor or a part of a microprocessor, which requires software (e.g., firmware) for operation, but may be without software when it is not required for operation.

[0030] The definition of "circuit" applies to all uses of this term in this application (including any claim). As another example, the term "circuit" as used herein also covers a hardware circuit or processor (or processors), or a portion thereof, or an implementation thereof with accompanying software or firmware. For instance, if applicable to a particular claim element, the term "circuit" also covers a baseband integrated circuit or processor integrated circuit, or a similar integrated circuit in an optical receiver or other computing device.

[0031] As mentioned above, when measuring flow interruption time during Ethernet protection switching, an offline method using test instruments is typically employed. Consider an end-to-end carrier Ethernet service defined by the MEF, provided by Ethernet ETH switches A and B, carrying user data flows called “service frames.” Redundancy is provided between customer equipment (CE) A and CE B on the network side using Ethernet protection mechanisms (such as ITU-T G.8032 Ethernet Ring Protection (ERP) or ITU-T G.8031 Ethernet Linear Protection (ELP), allowing user data flows to switch from the working path to the protected path and vice versa. During the switching process, frames may be lost; the time from detecting a fault on one path to starting transmission on the other path is called flow interruption time.

[0032] The International Telecommunication Union (ITU-T) G.808.1 defines different time periods from the occurrence of network damage to the complete recovery of protected flows. ITU-T G.8031 ELP and ITU-T G.8032 ERP require that the time elapsed from the start to the completion of a protection switching operation should be less than 50 ms. However, service providers are most concerned with the recovery time of protected flows, i.e., the flow interruption time experienced by user data flows. Traditional methods require disabling network services, using external test instruments to generate a stream of frames with fixed sizes and periods, and then measuring the number of frames lost during the switching operation. The flow interruption time is then derived from the number of lost frames and the frame period. However, traditional methods interfere with the network services of the device under test and are typically only usable in laboratory environments.

[0033] To address this, embodiments of this disclosure propose a method for automatically and in-service measurement of flow interruption time during path switching, which can be performed while the service is up and running. The basic principle is to enable an ETH OAM tool on the maintenance endpoint (MEP) of the CE's User Network Interface (UNI) to monitor user data flow in one or both directions, and this ETH OAM tool should send a sequence of OAM frames with a fixed period (or both a fixed period and a fixed size). Upon a protection switch (i.e., a switch from the working path to the protection path or vice versa), the start and end times of the flow interruption are determined based on the sequence number and / or timestamp information in the received ETH OAM frames, thereby calculating the flow interruption time.

[0034] Figure 1 This is a schematic diagram 100 illustrating the path switching of service flows and OAM flows between CEA and CEA during protection switching according to an embodiment of this disclosure. Figure 1As shown, there is an end-to-end service flow working path 130 between CE A101 and CE B102 via client port 105, network port 107, Ethernet 120 of ETH switch A103, network port 108 of ETH switch B104, and client port 106, and an end-to-end service flow protection path 140 via client port 105, network port 109, Ethernet 120 of ETH switch A103, network port 110 of ETH switch B, and client port 106. After enabling the ETH OAM tool on the UNI's MEP of the CE, there is also an ETH OAM flow working path 150 between client ports 105 and 106 via network port 107, Ethernet 120 of ETH switch A103, network port 108 of ETH switch B, and client port 106, and an ETH OAM flow protection path 160 via network port 109, Ethernet 120 of ETH switch A103, and network port 110 of ETH switch B.

[0035] Since the user service flow path from CE A 101 to CE B 102 and the OAM flow path from the OAM sender to the OAM receiver both cover the switching path between the network ports of ETH switch A and ETH switch B, the flow interruption time experienced by the user service flow is almost equal to that experienced by the OAM flow. Because the user service flow is bursty and has variable frame size, if long user frames exist at the switching time boundary, the flow interruption time experienced by the user service flow may be longer than the OAM flow interruption time. The maximum time increment = 2 x MTU time (i.e., maximum transmission unit time, which refers to the time for online transmission of an Ethernet frame with the maximum transmission unit size).

[0036] Figure 2 Example Figure 200 illustrates the transmission and reception of a user service stream according to an embodiment of this disclosure. Port 201 of CE A transmits data frames of varying size and period to port 202 of CE B. However, due to potential loss of data frames during transmission caused by protection switching or other reasons, one or more stream interruptions may occur in the data frames received at port 202 of CE B. Figure 2 The user flow interruption time 1 and the user flow interruption time 2 for protection switching are shown.

[0037] Figure 3 An embodiment of the present disclosure is shown embedded in... Figure 2Figure 300 illustrates an example of OAM stream transmission and reception in a user service flow. The OAM frames transmitted from the OAM transmitter (OAM Tx) 301 to the OAM receiver (OAM Rx) 302 have a fixed period. The OAM frames received by OAM Rx 302 contain... Figure 2 The user stream interrupt time 1 shown corresponds to the OAM stream interrupt time 1, and is related to... Figure 2 The user stream interruption time 2 shown corresponds to the OAM stream interruption time 2 for protection switching. It should be noted that in some embodiments, the OAM frames sent by OAM Tx 301 to OAM Rx 302 may have a fixed period and a fixed size, and this disclosure does not impose any limitations in this regard.

[0038] The following will combine Figures 1 to 3 This invention describes a method for measuring the flow interruption time between CEA and CEB during protection switching, according to some embodiments of the present disclosure, using OAM flow.

[0039] To measure the flow interruption time from CEA to CEB, the following prerequisites must be in effect:

[0040] • Enables the service to carry user data streams;

[0041] • Enable Ethernet protection mechanisms to provide redundant paths for services. Ethernet protection mechanisms include, but are not limited to: ERP, ELP, Spanning Tree Protocol, and other suitable Ethernet protection mechanisms that can provide path protection.

[0042] According to some embodiments of this disclosure, the flow interruption time from CEA to CEB during protection switching is measured by performing the following functions.

[0043] 1. Enable ETH OAM Tx 301 on ETH switch A 103 and ETHOAM Rx 302 on ETH switch B 104 to monitor network services. The sent OAM frames have:

[0044] 1) Fixed cycle;

[0045] 2) Sequence number (starting from 1, incrementing by 1 for each subsequent OAM frame);

[0046] 3) (Optional) Fixed size;

[0047] 4) (Optional) Timestamp (the time when the OAM was sent from the node).

[0048] 2. Continuously monitor the sequence number in the received OAM frames and count the received OAM frames to detect the start and end times of the stream interruption.

[0049] The start time of the stream interruption is based on one of the following methods:

[0050] 1) M-Filter Method: When a configurable number of M consecutive OAM frames are lost (M is an integer and M≥1), the first frame among the M consecutive OAM frames is used as the start time of the stream interruption; or

[0051] 2) X / Y Filter Method: Since actual faults may cause chatter, a sliding window filter can be used to cover the time from when the fault is not yet stable until it stabilizes. Here, X = the total number of OAM frames sent within the window, and Y = the total number of lost OAM frames within the window, where both X and Y are configurable positive integers. If Y out of X sent OAM frames are lost, the first of the Y lost OAM frames is used as the start time of the stream interruption.

[0052] The end time of the stream interruption is based on the following method:

[0053] 1) N-filter method: When a configurable number of N consecutive OAM frames are successfully received (N is an integer and N≥1), the first frame among the N consecutive OAM frames is assigned as the end time of the stream interruption.

[0054] Please note that the M-filter, X / Y-filter, and N-filter should be carefully designed to capture real faults / recoveries and filter out false faults / recoveries.

[0055] According to some embodiments of this disclosure, the method for implementing the above-mentioned filter based on the sequence number of the OAM frame includes at least the following:

[0056] - The number of lost OAM frames can only be calculated after the OAM frames are received, that is, after the stream is partially restored;

[0057] -Then, refer to Figure 3The OAM frame loss is determined to be either continuous or non-continuous based on TxSeqNum and RxSeqNum, where TxSeqNum is the sequence number of the OAM frame sent by OAM Tx 301 (carried in the OAM frame), and RxSeqNum is the sequence number of the OAM frame received by OAM Rx 302 (counted by OAM Rx). For each received OAM frame (numbered i), OAM Rx 302 will obtain TxSeqNum(i) and RxSeqNum(i). Therefore, if RxSeqNum(i+1)-RxSeqNum(i)=1 but TxSeqNum(i+1)-TxSeqNum(i)>1, it means that TxSeqNum(i+1)-TxSeqNum(i)–1 consecutive OAM frames are lost; if there are k pairs of TxSeqNum and RxSeqNum, where RxSeqNum(i+1)-RxSeqNum(i)=1 and TxSeqNum(i+1)-TxSeqNum(i)=1, it means that k consecutive correct OAM frames have been successfully received.

[0058] 3. Detecting the occurrence of Ethernet protection switching. In some embodiments of this disclosure, the occurrence of Ethernet protection switching can be detected by changes in the state of the Ethernet protection group.

[0059] 1) If the flow interruption time in step 2 ends before the Ethernet protection switchover, no operation is performed;

[0060] 2) If the flow interruption time in step 2 has not yet ended, proceed to step 4.

[0061] 4. Wait for the stream interruption time in step 2 to end, and save the sequence number and / or timestamp of the first OAM frame corresponding to the start and end times of the stream interruption time.

[0062] 5. According to some embodiments of this disclosure, the flow interruption time in the CEA to CEB direction is calculated based on at least one of the following methods:

[0063] 1) Stream interruption time = number of lost OAM frames x OAM frame period = (SequenceNumber) _stop –SequenceNumber _start The period of the OAM frame, where SequenceNumber is ) x. _stop The sequence number is the OAM frame corresponding to the end time of the stream interruption, and SequenceNumber is... _start The sequence number of the OAM frame corresponding to the start time of the stream interruption;

[0064] 2) Stream interruption time = Number of lost OAM frames x OAM frame period + 2 x MTU time = (SequenceNumber) _stop –SequenceNumber _start ) x OAM frame period + 2 x MTU time;

[0065] 3) Stream interruption time = Timestamp _stop –Timestamp _start Among them, Timestamp _stop The timestamp of the OAM frame corresponding to the end time of the stream interruption, and the Timestamp _start The timestamp of the OAM frame corresponding to the start time of the stream interruption; or

[0066] 4) Stream interruption time = Timestamp _stop –Timestamp _start +2x MTU time.

[0067] It should be noted that although the operations of the methods according to some embodiments of this disclosure have been described in a specific order, this does not require or imply that these operations must be performed in that specific order, or that all of the operations shown must be performed to achieve the desired result. Rather, the described steps may be performed in a different order. Additionally or alternatively, certain steps may be omitted, multiple steps may be combined into one step, and / or one step may be broken down into multiple steps. For example, in an embodiment addressing flow interruption caused by non-Ethernet protection switching, step 3 above may be omitted.

[0068] Figure 4 Example Figure 400 illustrates an embodiment of the present disclosure using OAM frames to detect the start and end times of a stream interruption during protection switching. Dark blocks represent lost OAM frames, while light blocks represent OAM frames successfully received by the OAM Rx.

[0069] according to Figure 4 For example, in the M-filter and N-filter methods of step 2 above, if M = N = 3, the start time of the stream interruption corresponds to frame 26, and the end time of the stream interruption corresponds to frame 38. For the X / Y-filter and N-filter methods of step 2 above, if X = 4, Y = 3, and N = 3, the start time of the stream interruption corresponds to frame 21, and the end time of the stream interruption corresponds to frame 38.

[0070] The methods according to embodiments of this disclosure can be implemented using various OAM tools, including but not limited to the following: single-ended SLMs, such as the single-ended SLM defined in ITU-T Y.1731 / G.8013; double-ended SLMs, such as the double-ended SLM defined in ITU-T Y.1731 / G.8013; single-ended SLMs with additional type-length-value (TLV) carrying timestamps; double-ended SLMs with additional TLV carrying timestamps; single-ended delay measurement (DM) with additional TLV carrying sequence numbers; double-ended DM with additional TLV carrying sequence numbers; and newly proposed OAM tools with sequence numbers and timestamps.

[0071] Of these OAM tools, the first two can be used for the sequence number-based stream interruption time calculation method in step 5, while the remaining OAM tools can be used for the timestamp-based stream interruption time calculation method in step 5.

[0072] The following describes, by way of example, a method for implementing embodiments of this disclosure using some of the OAM tools described above. It should be noted that the methods of the embodiments of this disclosure are not limited to the OAM tools described above or below, but any OAM tool with a serial number and / or timestamp can be used according to the methods of the embodiments of this disclosure and is within the scope of protection of this disclosure.

[0073] Figure 5 An example figure 500 illustrates an embodiment of this disclosure using a single-ended SLM-based OAM tool to measure the flow interruption time during protection switching. In single-ended SLM, SLM initiator 501 sends an SLM frame (i.e., an OAM frame) to SLM responder 502, who responds to each received SLM frame using a Synthetic Loss Response (SLR) frame (i.e., an OAM frame), and SLM frame loss calculation is performed only at SLM initiator 501. The SLM / SLR protocol frame carries three counters: TxFCf, RxFCf, and TxFCb, and the SLM initiator / responder takes a local snapshot of RxFCf.

[0074] in,

[0075] TxFCf: The total number of SLM frames sent in the remote direction when this SLM frame is sent;

[0076] RxFCf: The total number of SLM frames received in the far-end direction when this SLM frame is received;

[0077] TxFCb: The total number of SLR frames sent in the near-end direction when this SLR frame is sent;

[0078] RxFCl: The total number of SLR frames received in the near-end direction when this SLR frame is received.

[0079] The SLM initiator can calculate far-end frame loss and near-end frame loss based on the counters carried in the received SLR, for example, in the following ways:

[0080] Remote frame loss = |TxFCf[n] - TxFCf[n-1]| - |RxFCf[n] - RxFCf[n-1]|,

[0081] Near-end frame loss = |TxFCb[n]-TxFCb[n-1]|-|RxFCl[n]-RxFCl[n-1]|.

[0082] However, there are limitations to using this single-ended SLM in some situations. For example: 1) Since the SLM responder only generates the SLR when it receives the SLM, if the SLM frame is lost, the SLR frame may not be generated within a fixed period in the near-end direction from B to A. Therefore, during the period when the SLR is not generated, frame loss in the near-end direction cannot be detected, and the stream interruption time may always be zero or much less than the actual interruption time. 2) The SLM initiator only calculates frame loss when it receives the SLR, but if the SLR is lost in the near-end direction, the far-end counters (TxFCf and RxFCf) cannot be continuously received, which may affect the determination of the start / end time of the stream interruption time in the far-end direction.

[0083] Therefore, one solution is to use this type of single-ended SLM to calculate the bidirectional flow interruption time (i.e., the time from the interruption of flow in any direction to the resumption of bidirectional flow). In this case, TxFCf can be regarded as TxSeqNum, and RxFCl can be regarded as RxSeqNum.

[0084] Another solution is to calculate the unidirectional flow interruption time, i.e., to measure the flow interruption time from CEA to CEB and from CEB to CEA respectively. TxFCf can be considered as TxSeqNum, and RxFCf as RxSeqNum. This requires enabling an additional pair of SLM initiators and responders: enabling the SLM initiator on CEB and the SLM responder on CEA. Then, the functionality on CEB operates as described in steps 1 through 5 above.

[0085] Figure 6 Example Figure 600 illustrates an embodiment of the present disclosure of measuring the flow interruption time of protection switching using a dual-ended SLM-based OAM tool.

[0086] In a two-ended SLM, the SLM sender (i.e., SLM Tx_1 601 or SLM Tx_2 603) sends a 1SL frame (i.e., an OAM frame) to the SLM receiver (i.e., SLM Rx_1 602 or SLM Rx_2 604). When a 1SL frame is received, the SLM receiver calculates the flow interruption time in the far-end direction (i.e., the A-to-B direction) based on the received 1SL frame. The 1SL frame carries a counter: TxFCf, which counts from 1 for each transmitted 1SL frame, and the SLM receiver takes a local snapshot RxFCl.

[0087] in,

[0088] TxFCf: The total number of 1SL frames sent in the remote direction when this 1SL frame is sent;

[0089] RxFCl: The total number of 1SL frames received in the near-end direction when receiving this 1SL frame.

[0090] The SLM receiver calculates near-end frame loss based on the counter carried in the received 1SL. That is, frame loss in the A-to-B direction can be calculated by SLM Rx_1 602, while frame loss in the B-to-A direction can be calculated by SLM Rx_2 604.

[0091] Near-end frame loss = |Txfcf[n] - Txfcf[n-1]| - |RxFCf[n] - RxFCf[n-1]|

[0092] To calculate the unidirectional flow interruption time, TxFCf can be considered as TxSeqNum, and RxFCf can be considered as RxSeqNum.

[0093] Figure 7 Another example diagram illustrating the use of a single-ended SLM-based OAM tool to measure the flow interruption time during protection switching, according to an embodiment of this disclosure, is shown, where the OAM frame has a timestamp field. In this diagram, SLM initiator 701 sends SLM frames to SLM responder 702, SLM responder 702 utilizes an SLR frame for each received SLM frame, and SLM frame loss calculation is performed only at SLM initiator 701.

[0094] In a single-ended SLM with timestamps, the start and end times of the stream interruption are still determined based on the sequence number, but the stream interruption time can be calculated based on the timestamp method in step 5 above.

[0095] The methods for measuring stream interruption time according to embodiments of this disclosure have been described above by way of example using OAM tools based on single-ended SLM, dual-ended SLM, and single-ended SLM with timestamps. However, this disclosure is not limited thereto, and any other mechanism may be used to send service frames / messages with fixed periods / sizes, sequence numbers, and / or timestamps, all of which are within the scope of this disclosure.

[0096] When using these OAM tools, the shorter the OAM frame period, the higher the accuracy. The transmission time for Ethernet protection switching is typically around 50ms. Therefore, if an OAM frame period of approximately 100 microseconds is used, the measured flow interruption time can reach an accuracy of 1 millisecond. Alternatively, if an OAM frame period of 3.33ms or 10ms is used, the accuracy will be approximately tens or hundreds of milliseconds.

[0097] Furthermore, detecting the start / end time of stream interruptions may also involve big data and artificial intelligence / machine learning technologies. For example, the status of each OAM frame in the OAM stream (such as received or dropped) is stored in memory as historical data, just like big data. Then, artificial intelligence / machine learning models can be further trained and analyzed based on this historical data to predict or determine the time of failure that can trigger protection and help recommend values ​​for M, N, X, and Y to simplify user configuration.

[0098] According to some embodiments, this disclosure also provides a method for automatically and in-service measuring path switching time by listening to the state machine of Ethernet protection switching. The method monitors the inputs, outputs, and states of the state machine of an Ethernet protection mechanism (e.g., Ethernet linear protection in ITU-T G.8031, Ethernet ring protection in ITU-T G.8032, and / or spanning tree protocol mechanisms, etc.) as indications of protection switching actions, records the time each time this indication changes, and then uses a sliding window of P milliseconds (P is a configurable integer, with a default value of 100 ms) to filter the changes in the indication. The path switching time is: change stop time - change start time.

[0099] According to some embodiments of this disclosure, the indication of a protection switching action includes at least one of the following: a change in protection state; a condition that triggers the change in protection state (e.g., a local fault, a local external annotation, a received protocol message, or a timer); a condition that triggers a filter database (FDB) flushing action (e.g., a local fault, a local external switching command, a received protocol message, or a timer); the start / completion of bridge configuration (in Ethernet linear protection); the start / completion of selector configuration (in Ethernet linear protection); the start / completion of FDB flushing action (in Ethernet ring network protection); and the blocking / unblocking of ring network ports (in Ethernet ring network protection).

[0100] The above instructions are described by way of example only. The methods according to embodiments of this disclosure are not limited to the above instructions, and other instructions such as the inputs, outputs, or states of the protection switching algorithm may also be used, and these instructions are all within the scope of this disclosure.

[0101] According to some embodiments of this disclosure, the Ethernet linear protection algorithm may include the Ethernet linear protection algorithm in the ITU-T G.8031 / Y.1342 specification, and the Ethernet ring network protection algorithm may include the Ethernet ring protection algorithm in the ITU-T G.8032 / Y.1344 specification. However, this disclosure is not limited to these. Rather, the methods of this disclosure can be implemented based on any Ethernet network protection algorithm, and all such algorithms are within the scope of this disclosure.

[0102] According to some embodiments of this disclosure, the start / completion time of path switching can be detected by the following method: if one of the above indications occurs, and no indication occurs within a time period P prior to the occurrence of the indication, the timestamp of the frame corresponding to the indication is determined as the start time of path switching. If no state machine indication occurs within a time period P after the last indication, the timestamp of the frame corresponding to the last indication is determined as the completion time of path switching.

[0103] Figure 8 An example diagram 800 illustrating the measurement of path switching time according to an embodiment of the present disclosure is shown. In this example, the following indications appear sequentially on node B:

[0104] 1) Receive R-APS(SF) from node C and start FDB flushing action at time E;

[0105] 2) Receive R-APS(SF) from node D and start the FDB flushing action at time F;

[0106] 3) The FDB flushing action is completed at time F'.

[0107] Therefore, the path switching time of node B = time F' - time E.

[0108] Figure 9 Another example figure 900 shows the measurement path switching time according to an embodiment of the present disclosure. In this example, the following indications appear sequentially on node B:

[0109] 1) Receive R-APS(NR) from nodes C and D at time D;

[0110] 2) Receive R-APS(NR,RB) from node G and start the FDB flushing action at time G;

[0111] 3) The FDB flushing action is completed at time G'.

[0112] Therefore, the path switching time of node B = time G' - time D.

[0113] Figure 10 The illustration shows a flowchart of an example method 1000 implemented at the SLM initiator according to an embodiment of the present disclosure.

[0114] Method 1000 can be used in, for example Figure 5 The SLM initiator 501 and as shown Figure 7 The SLM initiator 701 shown is implemented here. For discussion purposes, method 1000 will be referred to. Figure 7 It is described herein. It should be understood that method 1000 may include additional actions not shown in the figures and / or the actions shown may be omitted, and the scope of this disclosure is not limited thereto.

[0115] At 1010, an Operation Management and Maintenance (OAM) frame with a consecutive sequence number is sent to the SLM responder 702.

[0116] At 1020, the OAM frame of response is received from the SLM responder 702.

[0117] At 1030, the start time and end time of the stream interruption are determined based on the received OAM frame.

[0118] At 1040, the occurrence of a path switch is detected, and it is determined that the path switch was completed before the end time of the stream interruption.

[0119] In 1050, in response to determining that the path switching is completed before the end time of the stream interruption, the stream interruption time is calculated based at least on the start time and end time of the stream interruption.

[0120] In some embodiments, receiving a response OAM frame from the SLM responder 702 includes: an order value of the OAM frames received by the SLM initiator 701 snapshot, the order value corresponding to the number of OAM frames received at the SLM initiator 701 when the corresponding OAM frame is received at the SLM initiator 701.

[0121] In some embodiments, determining the stream interruption start time includes: determining that there are M consecutive lost OAM frames based on the sequence number and order value of the received OAM frames, where M is a configurable positive integer, and the first frame among the M consecutive OAM frames corresponds to the stream interruption start time.

[0122] In some embodiments, determining the stream interruption start time includes: determining that Y OAM frames are lost out of X transmitted OAM frames based on the sequence number and order value of the received OAM frames, where X and Y are configurable positive integers, and the first frame out of the Y OAM frames corresponds to the stream interruption start time.

[0123] In some embodiments, determining the stream interruption end time includes: determining that N consecutive OAM frames have been received based on the sequence number of the received OAM frames, where N is a configurable positive integer, and the last frame among the N consecutive OAM frames corresponds to the stream interruption end time.

[0124] In some embodiments, method 1000 further includes: after determining the end time of the stream interruption, saving the sequence number of the frame corresponding to the start time of the stream interruption and the sequence number of the frame corresponding to the end time of the stream interruption.

[0125] In some embodiments, the OAM frame has a fixed period, and the calculation of the stream interruption time includes one of the following: calculating the number of lost frames based on the sequence number of the frame corresponding to the start time of the stream interruption and the sequence number of the frame corresponding to the end time of the stream interruption, and calculating the stream interruption time based on the number of lost frames and the period of the OAM frame; or calculating the stream interruption time based on the number of lost frames, the period of the OAM frame and the maximum transmission unit (MTU) time of the OAM frame.

[0126] In some embodiments, the OAM frame has a timestamp, and method 1000 further includes: after determining the end time of the stream interruption, saving the timestamp of the frame corresponding to the start time of the stream interruption and the timestamp of the frame corresponding to the end time of the stream interruption.

[0127] In some embodiments, determining the stream interruption time includes one of the following: calculating the stream interruption time based on the timestamp of the frame corresponding to the stream interruption end time and the timestamp of the frame corresponding to the stream interruption start time; and calculating the stream interruption time based on the timestamp of the frame corresponding to the stream interruption end time, the timestamp of the frame corresponding to the stream interruption start time, and the maximum transmission unit (MTU) time of the OAM frame.

[0128] In some embodiments, the SLM initiator 701 detects path switching by monitoring changes in the state of the protection group.

[0129] In some embodiments, method 1000 further includes: storing the state of each OAM frame in the OAM frame in a memory as historical data, and using an artificial intelligence / machine learning model to use the historical data to perform at least one of the following: predicting or determining when a path switching will be triggered; and generating values ​​for M, X, Y, and N.

[0130] Figure 11A flowchart illustrating an example method 1100 implemented at the SLM receiver according to an embodiment of the present disclosure is shown.

[0131] Method 1100 can be used in, for example Figure 6 This is implemented at the SLM receiver shown (i.e., SLM Rx_1 602 or SLM Rx_2 604). For discussion purposes, method 1100 will be referred to... Figure 6 It is described herein. It should be understood that method 1100 may include additional actions not shown in the figures and / or the actions shown may be omitted, and the scope of this disclosure is not limited thereto.

[0132] At 1110, receive Operation Management and Maintenance (OAM) frames with consecutive sequence numbers from the SLM sender.

[0133] At 1120, based on the received OAM frame, the start time and end time of the stream interruption are determined.

[0134] At 1130, the occurrence of a path switch is detected, and it is determined that the path switch was completed before the end time of the stream interruption.

[0135] At 1140, in response to determining that the path switching is completed before the end time of the stream interruption, the stream interruption time is calculated based at least on the start time and end time of the stream interruption.

[0136] In some embodiments, receiving an OAM frame from an SLM sender includes: an order value of OAM frames received by an SLM receiver snapshot, the order value corresponding to the number of OAM frames received at the SLM receiver when the corresponding OAM frame is received at the SLM receiver.

[0137] In some embodiments, determining the stream interruption start time includes: determining that there are M consecutive lost OAM frames based on the sequence number and order value of the received OAM frames, where M is a configurable positive integer, and the first frame among the M consecutive OAM frames corresponds to the stream interruption start time.

[0138] In some embodiments, determining the stream interruption start time includes: determining that Y OAM frames are lost out of X OAM frames based on the sequence number and order value of the received OAM frames, where X and Y are configurable positive integers, and the first frame out of the Y OAM frames corresponds to the stream interruption start time.

[0139] In some embodiments, determining the stream interruption end time includes: determining that N consecutive OAM frames have been received based on the sequence number of the received OAM frames, where N is a configurable positive integer, and the last frame among the N consecutive OAM frames corresponds to the stream interruption end time.

[0140] In some embodiments, method 1100 further includes: after determining the end time of the stream interruption, saving the sequence number of the frame corresponding to the start time of the stream interruption and the sequence number of the frame corresponding to the end time of the stream interruption.

[0141] In some embodiments, the OAM frame has a fixed period, and the calculation of the stream interruption time includes one of the following: calculating the number of lost frames based on the sequence number of the frame corresponding to the start time of the stream interruption and the sequence number of the frame corresponding to the end time of the stream interruption, and calculating the stream interruption time based on the number of lost frames and the period of the OAM frame; or calculating the stream interruption time based on the number of lost frames, the period of the OAM frame and the maximum transmission unit (MTU) time of the OAM frame.

[0142] In some embodiments, the OAM frame has a timestamp, and method 1100 further includes: after determining the end time of the stream interruption, saving the timestamp of the frame corresponding to the start time of the stream interruption and the timestamp of the frame corresponding to the end time of the stream interruption.

[0143] In some embodiments, determining the stream interruption time includes one of the following: calculating the stream interruption time based on the timestamp of the frame corresponding to the stream interruption end time and the timestamp of the frame corresponding to the stream interruption start time; and calculating the stream interruption time based on the timestamp of the frame corresponding to the stream interruption end time, the timestamp of the frame corresponding to the stream interruption start time, and the maximum transmission unit (MTU) time of the OAM frame.

[0144] In some embodiments, the SLM receiver detects path switching by monitoring changes in the state of the protection group.

[0145] In some embodiments, method 1100 further includes: storing the state of each OAM frame in the OAM frame in a memory as historical data, and using the historical data with an artificial intelligence / machine learning model to perform at least one of the following: predicting or determining when a path switching will be triggered; and generating values ​​for M, X, Y, and N.

[0146] Figure 12 The illustration shows a flowchart of an example method 1200 implemented at node B according to an embodiment of the present disclosure.

[0147] Method 1200 can be used in, for example Figure 8 This is implemented at node B, as shown. For discussion purposes, method 1200 will refer to... Figure 8 It is described herein. It should be understood that method 1200 may include additional actions not shown in the figures and / or the actions shown may be omitted, and the scope of this disclosure is not limited thereto.

[0148] At 1210, receive the state machine indication for path switching from node C and / or node D.

[0149] In 1220, a sliding window filtering indicator of duration P is used, where P is configurable.

[0150] At 1230, based on the indicated filtering results, the start and end times of the path switching are determined.

[0151] In step 1240, the path switching time is calculated based on the start and end times of the path switching.

[0152] In some embodiments, the indication includes at least one of the following: a change in protection status; a condition that triggers a change in protection status; a condition that triggers a filter database (FDB) flushing action; the start / end of bridge settings; the start / end of selector settings; the start / end of an FDB flushing action; and the blocking / unblocking of a ring network port.

[0153] In some embodiments, determining the start time of path switching includes: if an indication is filtered into the indications and no indication of the state machine occurs within a time period P prior to the occurrence of the indication, then the timestamp of the frame corresponding to the indication is determined as the start time of path switching.

[0154] In some embodiments, determining the completion time of the path switching includes: if no state machine indication occurs within a duration of P after the last indication in the filtered indications, then the timestamp of the frame corresponding to the last indication is determined as the completion time of the path switching.

[0155] In some embodiments, path switching is based on at least one of the following mechanisms: Ethernet linear protection; Ethernet ring protection; and / or spanning tree protocol.

[0156] Compared with traditional offline testing methods, the OAM-based measurement and eavesdropping measurement methods provided in the embodiments of this disclosure have several significant advantages. For example:

[0157]

[0158]

[0159] Generally, the various embodiments of this disclosure can be implemented in hardware or dedicated circuitry, software, logic, or any combination thereof. Some aspects can be implemented in hardware, while others can be implemented in firmware or software, which can be executed by a controller, microprocessor, or other computing device. Although various aspects of the embodiments of this disclosure are shown and described as block diagrams, flowcharts, or represented using some other illustration, it should be understood that the blocks, apparatuses, systems, techniques, or methods described herein can be implemented as, as non-limiting examples, in hardware, software, firmware, dedicated circuitry or logic, general-purpose hardware or controllers or other computing devices, or some combination thereof.

[0160] This disclosure also provides at least one computer program product tangibly stored on a non-transitory computer-readable storage medium. The computer program product includes computer-executable instructions, such as instructions included in program modules, which execute in a device on a target's real or virtual processor to perform the above-referenced... Figures 10 to 12 The method involves... Typically, a program module includes routines, programs, libraries, objects, classes, components, data structures, etc., that perform specific tasks or implement specific abstract data types. In various embodiments, the functionality of program modules can be combined or divided as needed. The machine-executable instructions for a program module can execute on a local or distributed device. In a distributed device, program modules can reside on both local and remote storage media.

[0161] Computer program code used to implement the methods of this disclosure may be written in one or more programming languages. This computer program code may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus, such that when executed by the computer or other programmable data processing apparatus, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be performed. The program code may be executed entirely on a computer, partially on a computer, as a stand-alone software package, partially on a computer and partially on a remote computer, or entirely on a remote computer or server.

[0162] In the context of this disclosure, computer program code or related data may be carried on any suitable carrier to enable a device, apparatus, or processor to perform the various processes and operations described above. Examples of carriers include signals, computer-readable media, and the like. Examples of signals may include electrical, optical, radio, sound, or other forms of propagation signals, such as carrier waves, infrared signals, etc.

[0163] A computer-readable medium can be any tangible medium that contains or stores a program for or relating to an instruction execution system, apparatus, or device. A computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. A computer-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. More detailed examples of computer-readable storage media include electrical connections with one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0164] Furthermore, although the operation of the methods of this disclosure is described in a specific order in the accompanying drawings, this does not require or imply that these operations must be performed in that specific order, or that all of the operations shown must be performed to achieve the desired result. Rather, the steps depicted in the flowcharts may be performed in a different order. Additionally or alternatively, certain steps may be omitted, multiple steps may be combined into one step, and / or one step may be broken down into multiple steps. It should also be noted that the features and functions of two or more devices according to this disclosure may be embodied in one device. Conversely, the features and functions of one device described above may be further divided and embodied by multiple devices.

[0165] While this disclosure has been described with reference to several specific embodiments, it should be understood that this disclosure is not limited to the specific embodiments disclosed. This disclosure is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.

Claims

1. A method for measuring stream interruption time during path switching, wherein the stream interruption time characterizes the time between when a fault is detected on a first path and when a stream begins to transmit on a second path, wherein the method is performed at a first device and includes: Send an Operation Management and Maintenance (OAM) frame with a continuous sequence number to the second device; Receive the OAM frame in response from the second device; Based on the received OAM frame, determine the stream interruption start time and stream interruption end time; The occurrence of the path switching is detected, and it is determined that the path switching is completed before the end time of the stream interruption; as well as In response to determining that the path switching was completed before the end time of the stream interruption, the stream interruption time is calculated based at least on the start time and the end time of the stream interruption.

2. The method of claim 1, wherein receiving the OAM frame in response from the second device comprises: The order value of the OAM frames received by the first device snapshot, the order value corresponding to the number of OAM frames received at the first device when the corresponding OAM frame is received at the first device.

3. The method according to claim 2, wherein determining the flow interruption start time includes: Based on the sequence number and order value of the received OAM frames, it is determined that there are M consecutive lost OAM frames, where M is a configurable positive integer, and the first frame among the M consecutive OAM frames corresponds to the stream interruption start time.

4. The method of claim 2, wherein determining the flow interruption start time comprises: Based on the sequence number and order value of the received OAM frames, it is determined that Y OAM frames are lost out of the X transmitted OAM frames, where X and Y are configurable positive integers, and the first frame among the Y OAM frames corresponds to the stream interruption start time.

5. The method according to claim 3 or 4, wherein determining the flow interruption end time comprises: Based on the sequence number of the received OAM frame, it is determined that N consecutive OAM frames have been received, where N is a configurable positive integer, and the first frame among the N consecutive OAM frames corresponds to the stream interruption end time.

6. The method according to claim 5, further comprising: After determining the end time of the stream interruption, the sequence number of the frame corresponding to the start time of the stream interruption and the sequence number of the frame corresponding to the end time of the stream interruption are saved.

7. The method of claim 6, wherein the OAM frame has a fixed period, and calculating the stream interruption time includes one of the following: Based on the sequence number of the frame corresponding to the start time of the stream interruption and the sequence number of the frame corresponding to the end time of the stream interruption, the number of lost frames is calculated, and based on the number of lost frames and the period of the OAM frame, the stream interruption time is calculated; or The stream interruption time is calculated based on the number of lost frames, the period of the OAM frame, and the maximum transmission unit (MTU) time of the OAM frame.

8. The method of claim 5, wherein the OAM frame has a timestamp, the method further comprising: After determining the end time of the stream interruption, the timestamps of the frames corresponding to the start time of the stream interruption and the end time of the stream interruption are saved.

9. The method of claim 8, wherein determining the stream interruption time comprises one of the following: The stream interruption time is calculated based on the timestamp of the frame corresponding to the stream interruption end time and the timestamp of the frame corresponding to the stream interruption start time; and The stream interruption time is calculated based on the timestamp of the frame corresponding to the end time of the stream interruption, the timestamp of the frame corresponding to the start time of the stream interruption, and the maximum transmission unit (MTU) time of the OAM frame.

10. The method of claim 5, further comprising: The state of each OAM frame in the OAM frames is stored in memory as historical data, and the historical data is used by an artificial intelligence / machine learning model to perform at least one of the following: Predict or determine when the path switching will be triggered; and Generate values ​​for M, X, Y, and N.

11. A method for measuring stream interruption time during path switching, wherein the stream interruption time characterizes the time between when a fault is detected on a first path and when a stream begins to be transmitted on a second path, wherein the method is performed at a first device and includes: Receive Operation Management and Maintenance (OAM) frames with consecutive sequence numbers from the second device; Based on the received OAM frame, determine the stream interruption start time and stream interruption end time; The occurrence of the path switching is detected, and it is determined that the path switching is completed before the end time of the stream interruption; as well as In response to determining that the path switching was completed before the end time of the stream interruption, the stream interruption time is calculated based at least on the start time and the end time of the stream interruption.

12. The method of claim 11, wherein receiving the OAM frame from the second device comprises: The order value of the OAM frames received by the first device snapshot, the order value corresponding to the number of OAM frames received at the first device when the corresponding OAM frame is received at the first device.

13. The method of claim 12, wherein determining the flow interruption start time comprises: Based on the sequence number and order value of the received OAM frames, it is determined that there are M consecutive lost OAM frames, where M is a configurable positive integer, and the first frame among the M consecutive OAM frames corresponds to the stream interruption start time.

14. The method of claim 12, wherein determining the flow interruption start time comprises: Based on the sequence number and order value of the received OAM frames, it is determined that Y OAM frames are lost out of X OAM frames, where X and Y are configurable positive integers, and the first frame among the Y OAM frames corresponds to the stream interruption start time.

15. The method of claim 13 or 14, wherein determining the stream interruption end time comprises: Based on the sequence number of the received OAM frame, it is determined that N consecutive OAM frames have been received, where N is a configurable positive integer, and the first frame among the N consecutive OAM frames corresponds to the stream interruption end time.

16. The method of claim 15, further comprising: After determining the end time of the stream interruption, the sequence number of the frame corresponding to the start time of the stream interruption and the sequence number of the frame corresponding to the end time of the stream interruption are saved.

17. The method of claim 16, wherein the OAM frame has a fixed period, and calculating the stream interruption time includes one of the following: Based on the sequence number of the frame corresponding to the start time of the stream interruption and the sequence number of the frame corresponding to the end time of the stream interruption, the number of lost frames is calculated, and based on the number of lost frames and the period of the OAM frame, the stream interruption time is calculated; or The stream interruption time is calculated based on the number of lost frames, the period of the OAM frame, and the maximum transmission unit (MTU) time of the OAM frame.

18. The method of claim 15, wherein the OAM frame has a timestamp, the method further comprising: After determining the end time of the stream interruption, the timestamps of the frames corresponding to the start time of the stream interruption and the end time of the stream interruption are saved.

19. The method of claim 18, wherein determining the stream interruption time comprises one of the following: The stream interruption time is calculated based on the timestamp of the frame corresponding to the stream interruption end time and the timestamp of the frame corresponding to the stream interruption start time; and The stream interruption time is calculated based on the timestamp of the frame corresponding to the end time of the stream interruption, the timestamp of the frame corresponding to the start time of the stream interruption, and the maximum transmission unit (MTU) time of the OAM frame.

20. The method of claim 15, further comprising: The state of each OAM frame in the OAM frames is stored in memory as historical data, and the historical data is used by an artificial intelligence / machine learning model to perform at least one of the following: Predict or determine when the path switching will be triggered; and Generate values ​​for M, X, Y, and N.

21. A first device for measuring the time of stream interruption during path switching, wherein the time of stream interruption characterizes the time from when a fault is detected on a first path to when a stream begins to be transmitted on a second path, comprising: At least one processor; as well as At least one memory, including computer program code, The at least one memory and the computer program code are configured to, together with the at least one processor, enable the first device: Send an Operation Management and Maintenance (OAM) frame with a continuous sequence number to the second device; Receive the OAM frame in response from the second device; Based on the received OAM frame, determine the stream interruption start time and stream interruption end time; The occurrence of the path switching is detected, and it is determined that the path switching is completed before the end time of the stream interruption; as well as In response to determining that the path switching was completed before the end time of the stream interruption, the stream interruption time is calculated based at least on the start time and the end time of the stream interruption.

22. The first device of claim 21, wherein the at least one memory and the computer program code are configured, together with the at least one processor, to cause the first device to receive the OAM frame in response from the second device, comprising: The order value of the OAM frames received by the first device snapshot, the order value corresponding to the number of OAM frames received at the first device when the corresponding OAM frame is received at the first device.

23. The first device of claim 22, wherein the at least one memory and the computer program code are configured, together with the at least one processor, to cause the first device to determine the stream interrupt start time by: Based on the sequence number and order value of the received OAM frames, it is determined that there are M consecutive lost OAM frames, where M is a configurable positive integer, and the first frame among the M consecutive OAM frames corresponds to the stream interruption start time.

24. The first device of claim 22, wherein the at least one memory and the computer program code are configured, together with the at least one processor, to cause the first device to determine the stream interrupt start time by: Based on the sequence number and order value of the received OAM frames, it is determined that Y OAM frames are lost out of the X transmitted OAM frames, where X and Y are configurable positive integers, and the first frame among the Y OAM frames corresponds to the stream interruption start time.

25. The first device according to claim 23 or 24, wherein the at least one memory and the computer program code are configured, together with the at least one processor, to cause the first device to determine the stream interruption end time by: Based on the sequence number of the received OAM frame, it is determined that N consecutive OAM frames have been received, where N is configurable, and the first frame among the N consecutive OAM frames corresponds to the stream interruption end time.

26. The first device of claim 25, wherein the at least one memory and the computer program code are further configured to, together with the at least one processor, enable the first device to: After determining the end time of the stream interruption, the sequence number of the frame corresponding to the start time of the stream interruption and the sequence number of the frame corresponding to the end time of the stream interruption are saved.

27. The first device of claim 26, wherein the OAM frames have a fixed period, and the at least one memory and the computer program code are configured, together with the at least one processor, to cause the first device to calculate the stream interruption time by one of the following: Based on the sequence number of the frame corresponding to the start time of the stream interruption and the sequence number of the frame corresponding to the end time of the stream interruption, the number of lost frames is calculated, and based on the number of lost frames and the period of the OAM frame, the stream interruption time is calculated; or The stream interruption time is calculated based on the number of lost frames, the period of the OAM frame, and the maximum transmission unit (MTU) time of the OAM frame.

28. The first device of claim 25, wherein the OAM frame has a timestamp, and the at least one memory and the computer program code are further configured to, together with the at least one processor, enable the first device to: After determining the end time of the stream interruption, the timestamps of the frames corresponding to the start time of the stream interruption and the end time of the stream interruption are saved.

29. The first device of claim 28, wherein the at least one memory and the computer program code are configured, together with the at least one processor, to cause the first device to determine the stream interruption time by one of the following: The stream interruption time is calculated based on the timestamp of the frame corresponding to the stream interruption end time and the timestamp of the frame corresponding to the stream interruption start time; and The stream interruption time is calculated based on the timestamp of the frame corresponding to the end time of the stream interruption, the timestamp of the frame corresponding to the start time of the stream interruption, and the maximum transmission unit (MTU) time of the OAM frame.

30. The first device of claim 25, wherein the at least one memory and the computer program code are further configured to, together with the at least one processor, enable the first device to: The state of each OAM frame in the OAM frames is stored in memory as historical data, and the historical data is used by an artificial intelligence / machine learning model to perform at least one of the following: Predict or determine when the path switching will be triggered; and Generate values ​​for M, X, Y, and N.

31. A first device for measuring the duration of a stream interruption during a path switching event, wherein the duration of the stream interruption characterizes the time from when a fault is detected on a first path to when a stream begins to be transmitted on a second path, comprising: At least one processor; as well as At least one memory, including computer program code, The at least one memory and the computer program code are configured to, together with the at least one processor, enable the first device: Receive Operation Management and Maintenance (OAM) frames with consecutive sequence numbers from the second device; Based on the received OAM frame, determine the stream interruption start time and stream interruption end time; The occurrence of the path switching is detected, and it is determined that the path switching is completed before the end time of the stream interruption; as well as In response to determining that the path switching was completed before the end time of the stream interruption, the stream interruption time is calculated based at least on the start time and the end time of the stream interruption.

32. The first device of claim 31, wherein the at least one memory and the computer program code are configured, together with the at least one processor, to cause the first device to receive the OAM frame from the second device by: an order value of the OAM frames received by a snapshot of the first device, wherein the order value corresponds to the number of OAM frames received at the first device when the corresponding OAM frame is received at the first device.

33. The first device of claim 32, wherein the at least one memory and the computer program code are configured, together with the at least one processor, to cause the first device to determine the stream interrupt start time by: Based on the sequence number and order value of the received OAM frames, it is determined that there are M consecutive lost OAM frames, where M is a configurable positive integer, and the first frame among the M consecutive OAM frames corresponds to the stream interruption start time.

34. The first device of claim 32, wherein the at least one memory and the computer program code are configured, together with the at least one processor, to cause the first device to determine the stream interrupt start time by: Based on the sequence number and order value of the received OAM frames, it is determined that Y OAM frames are lost out of X OAM frames, where X and Y are configurable positive integers, and the first frame among the Y OAM frames corresponds to the stream interruption start time.

35. The first device according to claim 33 or 34, wherein the at least one memory and the computer program code are further configured, together with the at least one processor, to cause the first device to determine the stream interruption end time by: Based on the sequence number of the received OAM frame, it is determined that N consecutive OAM frames have been received, where N is a configurable positive integer, and the first frame among the N consecutive OAM frames corresponds to the stream interruption end time.

36. The first device of claim 35, wherein the at least one memory and the computer program code are further configured to, together with the at least one processor, enable the first device to: After determining the end time of the stream interruption, the sequence number of the frame corresponding to the start time of the stream interruption and the sequence number of the frame corresponding to the end time of the stream interruption are saved.

37. The first device of claim 36, wherein the OAM frames have a fixed period, and the at least one memory and the computer program code are configured, together with the at least one processor, to cause the first device to calculate the stream interruption time by one of the following: Based on the sequence number of the frame corresponding to the start time of the stream interruption and the sequence number of the frame corresponding to the end time of the stream interruption, the number of lost frames is calculated, and based on the number of lost frames and the period of the OAM frame, the stream interruption time is calculated; or The stream interruption time is calculated based on the number of lost frames, the period of the OAM frame, and the maximum transmission unit (MTU) time of the OAM frame.

38. The first device of claim 35, wherein the OAM frame has a timestamp, and the at least one memory and the computer program code are further configured to, together with the at least one processor, enable the first device to: After determining the end time of the stream interruption, the timestamps of the frames corresponding to the start time of the stream interruption and the end time of the stream interruption are saved.

39. The first device of claim 38, wherein the at least one memory and the computer program code are configured, together with the at least one processor, to cause the first device to determine the stream interruption time by one of the following: The stream interruption time is calculated based on the timestamp of the frame corresponding to the stream interruption end time and the timestamp of the frame corresponding to the stream interruption start time; and The stream interruption time is calculated based on the timestamp of the frame corresponding to the end time of the stream interruption, the timestamp of the frame corresponding to the start time of the stream interruption, and the maximum transmission unit (MTU) time of the OAM frame.

40. The first device of claim 35, wherein the at least one memory and the computer program code are further configured to, together with the at least one processor, enable the first device to: The state of each OAM frame in the OAM frames is stored in memory as historical data, and the historical data is used by an artificial intelligence / machine learning model to perform at least one of the following: Predict or determine when the path switching will be triggered; and Generate values ​​for M, X, Y, and N.

41. A computer-readable storage medium having program code stored thereon, the program code being configured to, when executed, cause a device to perform the method according to any one of claims 1-10 or 11-20.

Citation Information

Patent Citations

  • Method and apparatus for measuring network delay in ethernet ring network

    US20100302967A1