Network Error Performance Measurement

By using BFD control packets to measure error performance in a packet switching network, the problem of being unable to accurately measure PSN error performance in the prior art is solved, and accurate judgment of the network connection status is achieved.

CN115989665BActive Publication Date: 2025-09-16ZTE CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202180048220.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-07-10
Filing Date
2021-07-12
Publication Date
2025-09-16
Estimated Expiration
2041-07-12

AI Technical Summary

Technical Problem

Existing error performance measurement techniques cannot be effectively applied to statistically random packet-switched networks (PSNs) because existing techniques assume that signals are sent within a fixed time, while packet arrival times in PSNs are random, resulting in inaccurate measurements.

Method used

Bidirectional Forwarding Detection (BFD) control packets are used to measure error performance through constructed packet flows. BFD control packets share the same path with data packets and are encapsulated in the MPLS or IPv6 data plane to achieve accurate measurement of error performance.

Benefits of technology

It realizes accurate measurement of error performance in packet switching networks, can identify error-free seconds, errored seconds and severely errored seconds, supports fault management and performance monitoring, and improves the accuracy of judging network connection status.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115989665B_ABST
    Figure CN115989665B_ABST
Patent Text Reader

Abstract

The present application describes techniques for performing error performance measurements in a packet data communication network, such as a packet switched network (PSN). An exemplary error performance measurement method includes: upon expiration of a time period, determining that a number of one or more test packets received by a first device during the time period is less than an expected number of test packets, wherein the one or more test packets are received by the first device from a second device in the packet data communication network; and triggering error performance measurements based on the determination, the error performance measurements including evaluating a failure type for the time period and evaluating one or more failure types for one or more consecutive time periods immediately preceding the time period.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims the benefit of priority to U.S. Patent Application No. 16 / 926,540, filed on July 10, 2020. The entire contents of the foregoing patent application are incorporated by reference as a part of the disclosure of this document. Technical Field

[0003] The present application relates generally to error performance measurements in packet data communication networks. Background Art

[0004] A communication network may include one or more paths that can be traversed by packets, such as Internet Protocol (IP) packets. The communication network performs measurements to characterize network conditions. Based on the measured performance, a computing device may determine whether to change the flow of packets or allocate computing resources so that the packets can efficiently traverse the communication network. Summary of the Invention

[0005] The present application discloses techniques for performing error performance measurements (EPM) on a packet data communication network, such as a packet switched network (PSN).

[0006] An exemplary packet communication method includes: upon expiration of a time period, determining that the number of one or more test packets received by the first device during the time period is less than an expected number of test packets, wherein the one or more test packets are received by the first device from the second device in a packet data communication network; and based on the determination, triggering an error performance measurement, the error performance measurement including evaluating a failure type for the time period and evaluating one or more failure types for one or more consecutive time periods immediately preceding the time period.

[0007] In some embodiments, each of the one or more test packets includes a field indicating whether a defect condition exists, and evaluating the fault type for the time period includes: (1) determining that the difference between the number of the one or more test packets and the expected number of test packets is greater than or equal to one, or (2) determining that the one or more test packets indicate the presence of the defect condition, or (3) determining that no test packets are received within a certain second time period, determining that the fault type for the time period is an errored second (ES). In some embodiments, evaluating the fault type for the time period and evaluating the one or more fault types for one or more consecutive time periods immediately preceding the time period include: determining that the connection state between the first device and the second device is available when determining that the fault type for the time period is ES and when determining that the one or more fault types for the one or more consecutive time periods are one or more ES, or one or more error-free second conditions, or any combination thereof, wherein the one or more error-free second conditions include one or more time periods in which the fault type is not the ES or severely errored second (SES); and sending a message to the second device or another device indicating that the connection state is available.

[0008] In some embodiments, each of the one or more test packets includes: a field indicating whether a defect condition exists, and evaluating the fault type for the time period includes: (1) determining that the difference between the expected number of test packets and the number of the one or more test packets received is greater than a configurable ratio of the expected number of test packets, or (2) determining that the one or more test packets indicate the presence of the defect condition, or (3) determining that no test packets are received within a certain second time period, determining that the fault type for the time period is a severely errored second (SES). In some embodiments, evaluating the fault type for the time period and evaluating the one or more fault types for one or more consecutive time periods immediately preceding the time period include: determining that the connection status between the first device and the second device is unavailable when the fault type for the time period and the one or more fault types for the one or more consecutive time periods are determined to be SES; and sending a message to the second device or another device indicating that the connection status is unavailable. In some embodiments, the packet data communication network is a packet switched network (PSN).

[0009] In another exemplary aspect, the above methods and / or methods described in this application are embodied in the form of processor-executable code and stored in a computer-readable program medium. The computer-readable program is stored on a non-transitory computer-readable medium, and the computer-readable program includes code that, when executed by a processor, causes the processor to implement the methods described in this application.

[0010] In yet another exemplary embodiment, a device is disclosed, which is configured or operable to perform the above-mentioned method and / or methods described in this application.

[0011] The above and other aspects and their implementations are described in more detail in the drawings, description and claims. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] Figure 1 An example format of some fields for a Bidirectional Forwarding Detection (BFD) control packet is shown.

[0013] Figure 2 An example packet-switched network (PSN) system is shown in which BFD control packets are used to detect errors.

[0014] Figure 3A An example flow chart of operations performed by a receiving-end device in a PSN for error performance measurement is shown.

[0015] Figure 3B An example flow chart is shown for determining, by a receiving device, that a defect condition exists without analyzing BFD control packets.

[0016] Figure 4 An example flow diagram 400 is shown that is used to manage counters of received devices.

[0017] Figure 5 An example flow chart showing an Error Performance Measurement (EPM) evaluation of the quality of the past one second interval is shown.

[0018] Figure 6 A timeline of EPM status periods evaluated by the defect detection module is shown.

[0019] Figure 7 An exemplary block diagram of a hardware platform that may be part of a network device is shown.

[0020] Figure 8 An example flow chart for performing error performance measurements is shown. DETAILED DESCRIPTION

[0021] Error Performance Measurement (EPM) is a component of the Operations, Maintenance and Management (OAM) toolset that provides an operator with information related to network measurements for a unidirectional or bidirectional connection between two systems. EPM can be associated locally with a client application or service set to send information about their status and / or performance to a remote system. In current technology, EPM has been defined only for data communication methods with constant bit rate transmission, and not for packet switched networks (PSNs) which can be statistically random. A PSN can be a statistically multiplexed network such that a receiving node (e.g., a first server) can not expect the time at which a packet will arrive from a sending node (e.g., a second server). The present application introduces techniques for extending EPM for a PSN environment that can complement existing fault management (FM) and performance monitoring (PM) OAM mechanisms for a PSN environment.

[0022] The example titles of the following sections are intended to facilitate understanding of the subject matter of the present application and do not in any way limit the scope of the claimed subject matter. Therefore, one or more features of one example section may be combined with one or more features of another example section. Section I first provides an overall description of current EPM OAM technology. Section II describes exemplary techniques for implementing EPM technology for packet data communication networks (such as PSNs). EPM-related technologies are described in Section II for PSNs for ease of explanation. However, the exemplary EPM-related technologies in Section II can be implemented in other types of packet data communication networks.

[0023] I. Current EPM Technology

[0024] EPM OAM technology is described for constant bit rate connections, and the availability status or unavailability status between two systems (or two devices) is described for the constant bit rate connection. However, in current EPM technology, methods for measuring error performance parameters (such as unavailability status and availability status) are only applicable to communication methods in which signals are transmitted within an allocated time period, regardless of whether the signal carries user data or serves only as a filler interval. Therefore, at least because each connection may be grouped and may occupy a statistically random time interval, current techniques for measuring error performance parameters cannot be fully applied to PSNs that may have a data plane such as Internet Protocol (IP) or Multiprotocol Label Switching (MPLS).

[0025] II. EPM Technology for Packet Data Communication Networks

[0026] The proposed EPM method uses a constructed packet stream injected into a packet data communication network (such as a PSN).The constructed packet stream may include Bidirectional Forwarding Detection (BFD) control packets.

[0027] Figure 1 An example format of some fields for a BFD control packet 100 is shown. The BFD control packet 100 may include information for establishing a BFD session between two devices. The Vers field indicates the version number of the protocol. The Diag field refers to a diagnostic code that specifies the local system or local device reason for the last change in session state. The Diag field may indicate whether an error or defect exists, and if so, the type of error or defect condition. The defect indicated by the Diag field may characterize a difference between the two devices (e.g., Figure 2 The error indicated by the Diag field can characterize the path between the two devices (for example, Figure 2 The communication quality between the sending device 202 and the receiving device 206 in the communication process.

[0028] In some embodiments, the Diag field may include any one of the following values ​​from a predetermined list, each of which is associated with a corresponding cause: 0—No diagnostics; 1—Control detection time expired; 2—Echo function failure; 3—Neighbor signaling session down; 4—Forwarding plane reset; 5—Path down; 6—Link path down; 7—Management down; and 8—Reverse link path down. In an example implementation, values ​​of 1, 3, 4, 6, and 8 in the Diag field may indicate a defect between two devices, and values ​​of 4 and 7 in the Diag field may indicate an error between two devices. In some embodiments, the Diag field may include other predetermined values ​​from an unassigned range of values ​​(e.g., a value of 10 may be used to indicate another error type, and values ​​of 51 and 62 may be used to indicate other defect types). In some embodiments, the Diag field includes a value of 0 to indicate the absence of diagnostic information.

[0029] exist Figure 1In the example BFD control data packet 100, the status field (Sta) indicates the status of the current BFD session state between the sending device and the receiving device as determined by the sending device. For example, a value of 1 in the Sta field corresponds to a Down state, while a value of 3 corresponds to an Up state. The "up state" may mean that the BFD session has been successfully established between the sending device and the receiving device, and may imply that the connection between the sending device and the receiving device is functioning. The "down state" may mean that the session is closed (or just created). The Length field indicates the length of the BFD control data packet 100 in bytes. The My Discriminator field includes a unique non-zero discriminator value generated by the sending device, which can be used to demultiplex multiple BFD sessions between the same pair of systems. The Your Discriminator field includes a discriminator value that is unique to the corresponding remote BFD system or receiving device. Additional fields may be added to the example BFD control packet 100.

[0030] The BFD control packets (also called test packets) used for the example EPM method may have Figure 1 The example format shown in . The technical benefit of using BFD control data packets is that they can be constructed so that the BFD data packets can share a destination with the data flow in which the error performance is measured. For example, the BFD control packets can be constructed to follow the same physical path as the data flowing between two nodes (for example, a first server and a second server through the cloud or the Internet) and can undergo the same processing as the data. In one example implementation, the BFD control packets can be encapsulated in an MPLS label stack to use the MPLS data plane. The BFD control packets encapsulated in the MPLS header include an entropy label so that the BFD control packets used to measure the error performance of a path in the network (as explained in the error performance measurement technology patent literature) can have the same entropy label as the entropy label used for the data packet. Thus, the BFD control packets can traverse the same path in the network as the data packet. In another example implementation, the BFD control packets can be encapsulated in an IPv6 header or an IPv6 data plane. BFD control packets encapsulated for transmission over the IPv6 data plane include a flow label in the IPv6 header that is identical to the flow label used for the data packet. A technical advantage of using BFD control packets is that they do not significantly impact the packet data communication network and / or do not cause errors in the monitored flow.

[0031] OAM techniques in PSN include tools for fault management (FM) and performance monitoring (PM). FM OAM is typically lightweight and can support fault detection within, for example, a 10msec time window (also called a detection interval or detection timer) using a 3.3msec interval between two consecutive test packets. Thus, the FM OAM process can send approximately 300 test packets per second, and the destination of the test packets can be used as a statistical representation of the destination experienced by the monitored data flow. The time window for the detection interval (e.g., 10msec) can be calculated using the time interval between two consecutive test packets (e.g., 3.3msec) and the detection multiplier value announced in the BFD control packet. For example, the detection multiplier value can be 3. It can be between two devices (e.g., Figure 2 The time interval between two consecutive test packets is negotiated between the sending end device 202 and the receiving end device 206. Thus, for example, if the defect detection module in the receiving end device ( Figure 7 If it is determined that less than the total number of test packets are received within the time window, the defect detection module may determine that a defect exists and increment a defect counter, such as Figure 3A 、 3B and further described in 4. Figure 1 The BFD control packet of the example format shown in FIG. 1 may be used as a defect detection FM protocol in a PSN.

[0032] Figure 2 An example PSN system 200 is shown in which BFD control packets are used to detect errors. Example PSN system 200 includes a transmitter device 202 and a receiver device 206 that can communicate with each other via a PSN 204. In PSN system 200, transmitter device 202 (e.g., a first server) can periodically send multiple BFD control packets to receiver device 206 (e.g., a second server). Receiver device 206 includes a fault detection module that can use the received periodic BFD control packets to detect faults in a path on PSN system 200 by identifying the number of consecutively lost test packets. When the fault detection module of receiver device 206 determines that the number of consecutively lost test packets reaches a predetermined threshold, the fault detection module determines and / or declares that a fault has been detected. In some embodiments, the fault detection module can send a BFD control packet to transmitter device 202 (or to another device) indicating that receiver device 206 has detected a fault. The BFD control message may also convey the status of the receiving device 206 associated with the BFD session, such as the upstream link path or local application.

[0033] EPM techniques for packet data communication networks (such as PSNs) can describe error performance by characterizing the error experience within one second as an error-free second, an errored second (ES), or a severely errored second (SES). An error-free second may include a time period (e.g., one second) for which the type of failure is not described by ES or SES. For PSNs, ES and SES may be described by considering the statistical characteristics of PSN communications. For example, ES may be described as a one-second time period in which one or more expected periodic test packets are not received or in which one or more defects are detected. In another example, SES may be described as a one-second time period in which not less than a configurable proportion (e.g., 20% or 40%) of expected periodic test packets are not received or in which one or more defects are detected. A BFD control packet may indicate a defect by indicating that the BFD session is down using a status field in the BFD control packet or indicating the presence and type of a defect in a diagnostic field in the BFD control packet, such as Figure 2 As explained in Figure 3A and 3B As further explained in , for both ES and SES, when the defect detection module determines that the detection interval has expired while the remote BFD system has not received a BFD control packet, a BFD control packet may be sent to the remote BFD system (e.g., Figure 2 The receiving device 206 in the BFD system may signal the defect, or the defect may be detected locally by a remote BFD system. In some embodiments, the detection interval may be less than and within a one-second time period. For example, the detection interval may be a multiple of 10msec time windows (or another time window) within a one-second time period. The configurable ratio for SES may have a default value (e.g., 30%).

[0034] Figure 3A An example flow chart 300 of operations performed by a receiving device in a PSN for error performance measurement is shown. At operation 302, a defect detection module of the receiving device receives a signal having Figure 1 At operation 304, the defect detection module determines whether the State field in the BFD control packet indicates that the State is in the Up state. At operation 304, if the defect detection module determines that the State field indicates that the BFD state is up, the defect detection module proceeds to operation 305.

[0035] At operation 305, the defect detection module determines whether the Diag field in the BFD control packet indicates whether a defect is reported. At operation 305, if the defect detection module determines that the Diag field reports a defect condition, then at operation 312, the defect detection module may increment a defect packet counter (e.g., by one). At operation 305, if the defect detection module determines that the Diag field does not indicate a defect condition, then the defect detection module proceeds to operation 306.

[0036] At operation 306, the defect detection module determines whether the Diag field in the BFD control packet indicates whether an error is reported. At operation 306, if the defect detection module determines that the Diag field reports an error condition, the defect detection module may increment an error packet counter (e.g., increase the error packet counter by one) at operation 308. In some embodiments, operations 305 and 306 may be performed in one step.

[0037] At operation 304, if the defect detection module determines that the State field indicates that the BFD state is down, the defect detection module proceeds to operation 308 and increments the error packet counter. Thus, if an error condition is indicated by the Diag field or if the State field indicates that the BFD state is down, the defect detection module may determine that an error condition exists and perform operation 308. At operation 306, if the defect detection module determines that the Diag field does not report an error condition, the defect detection module may increment the received packet counter (e.g., add one to the received packet counter) at operation 310. Thus, if the Diag field does not indicate an error condition or a defect condition, the defect detection module may increment the received packet counter. Thus, the received packet counter may exclude one or more BFD control packets and not indicate a defect condition or an error condition. Whenever the defect detection module of the receiving end device receives a BFD control packet, it may perform Figure 3A The operations shown in .

[0038] Figure 3BAn example flowchart 350 is shown for determining the presence of a defect condition by a receiving device without analyzing BFD control packets. As mentioned herein, the receiving device and the transmitting device can calculate a time window for a detection interval based on a negotiated time interval between two consecutive test packets sent by the transmitting device and based on a detection multiplier value advertised in the BFD control packet. The detection interval can operate continuously to enable the defect detection module to determine the presence of a defect when the receiving device does not receive a BFD control packet within the time window indicated by the detection interval. For example, if the time interval between two consecutive test packets is negotiated to be 3.3 msec, and if the example detection multiplier value is 3, the detection interval can be calculated to be 10 msec. In the above example, if the defect detection module determines that any of the three test packets were received before the 10 msec timer expired, then the defect detection module can reset the detection interval.

[0039] At operation 352, if the defect detection module determines that the detection interval has expired without receiving any BFD control packets (such that no BFD control packets are received within the detection interval), the defect detection module proceeds to operation 354. At operation 354, the defect detection module determines that the status is down and proceeds to step 356 where the defect detection module increments the defect counter. Thus, using Figure 3B In the example flow chart of FIG. 1 , a receiving device may determine that a defect exists independently of receiving a BFD control packet that may also indicate a defect.

[0040] Figure 4 An example flow chart 400 is shown for managing counters for a receiving device. The receiving device uses a one-second EPM timer to evaluate the result of the receive packet counter. The "one-second" time value is an example time value. In some embodiments, other time values ​​may be used. At operation 402, the defect detection module resets the defect counter and the receive packet counter and may assemble (or start) a one-second timer to begin counting down to zero or counting up to one second. At operation 404, the defect detection module determines that the one-second timer has expired and then proceeds to operations 406 through 416.

[0041] At operations 406 and 410, the defect detection module reads the defect counter value and the received packet counter value, respectively. Figure 3A At operations 408 and 412, the defect detection module resets the defect counter value and the received packet counter value, respectively. At operation 414, the defect detection module reassembles or resets the one-second timer so that the one-second timer can begin counting down to zero or counting up to one second.

[0042] At operation 416, the defect detection module determines whether the status is down. Figure 3B As explained in , if the receiving device does not receive N consecutive test packets within a time window (e.g., a detection interval), the defect detection module can determine whether the status is down. Figure 3B If the techniques described in [ 41 ] determine that a defect exists, the defect detection module may increment a defect counter at operation 418. After operation 418, the process may return to operation 404. At operation 416, if the defect detection module does not determine that a defect exists, the process may return to operation 404. In some embodiments, operations 416 and 418 may be performed between operations 412 and 414. For example, operation 416 may be performed after operation 412. In such embodiments, if a defect is determined to exist, operation 418 is performed before operation 414. In such embodiments, if a defect is not determined to exist at operation 416, operation 414 is performed.

[0043] Figure 5 An example flow chart 500 of EPM evaluation of the quality of the past one second interval is shown. The defect detection module evaluates the number of defects received in the previous one second period (as indicated by the defect counter read at operation 406) and the number of genuine BFD control packets (as indicated by the defect counter read at operation 406). Figure 4 At operation 501, the defect detection module determines that a defect exists by determining whether the defect counter is greater than zero. At operation 501, if the defect detection module determines that the defect counter is greater than zero, the defect detection module proceeds to operation 506, as further described below.

[0044] At operation 502, the defect detection module compares the received packet counter value with the expected number of BFD control packets expected to be received in one second (in Figure 5 The expected number of packets is compared with the received packet counter value (shown as "Expected Packet Count" in operation 502 of FIG). The expected number of packets can be determined based on the negotiated time interval between two consecutive BFD control packets between the transmitting device and the receiving device. For example, if the negotiated interval between two consecutive BFD control packets is 3.3 msec, the expected number of packets within the one-second time period is 303. At operation 502, if the defect detection module determines that the expected packet count is greater than the received packet counter value, the defect detection module proceeds to operation 504, where the defect detection module determines whether the previous one-second time period was a severely errored second.

[0045] As explained in this application, an SES can be described as a one-second period in which no less than a configurable proportion (e.g., 20% or 40%) of the expected periodic test packets are not received, or in which one or more defects are detected. The difference between the expected packet count and the received packet counter value is the number of packets not received. And, the value of the defective packet counter during the previous one-second period can be the number of packets received with active defects and / or the number of defects detected by the receiving end device, such as Figure 3B As explained in .

[0046] In some embodiments, at operation 504, if the defect detection module determines that more than a configurable proportion of expected periodic BFD control packets have not been received (e.g., if ((expected packet count - received packet counter value) / expected packet count * 100) > configurable proportion), the defect detection module performs operation 506 by evaluating an unavailability condition for the SES, as further described below.

[0047] At operation 506, the defect detection module may evaluate whether there is an unavailability period for the PSN by evaluating a plurality of consecutive events in the past for error performance. For example, the plurality of consecutive events in the past may include the past ten seconds, the past ten seconds including the immediately preceding one-second period and the previous nine seconds immediately preceding the immediately preceding one-second period. The previous nine seconds are used by the defect detection module Figures 3A to 5 The operations described in this paper were previously evaluated to determine whether they could be characterized as ES or SES or neither.

[0048] Figure 6 A timeline of EPM status periods evaluated by the defect detection module is shown. Figure 6 In the example scenario shown in FIG, if 602 indicates the immediately past one second time period, and (in Figure 5 If the defect detection module determines that the immediately past one-second time period is an SES, then the defect detection module may determine that the plurality of past consecutive events (e.g., the past 10 seconds including the immediately past one-second time period) are SESs. If the defect detection module determines that the plurality of past consecutive events are all determined by the defect detection module to be SESs (e.g., Figure 6 ), the defect detection module can determine that for multiple consecutive events in the past, the PSN has an unavailability condition (as shown in Figure 6 In some embodiments, Figure 5 At operation 506 , the defect detection module may send a message to the originating device (or another device associated with the administrator) indicating that an unavailability condition was detected for the past multiple consecutive events.

[0049] exist Figure 5 In operation 504, if the defect detection module determines that the immediately past one-second period is not an SES, the defect detection module may determine that the immediately past one-second period is an ES and perform operation 508. As explained herein, an ES may be described as not receiving one or more expected periodic test packets (e.g., if the difference between the number of received BFD control packets and the expected number of packets is greater than or equal to 1), or if one or more defective one-second periods are detected. At operation 508, the defect detection module may assess whether an unavailability condition exists for the PSN by evaluating a plurality of consecutive past events for error performance. For example, the plurality of consecutive past events may include the past ten seconds, including the immediately past one-second period and the previous nine seconds immediately preceding the immediately past one-second period.

[0050] exist Figure 6 In the example scenario shown in FIG, if 604 indicates the immediately past one second time period, and (in Figure 5 If the defect detection module determines in operation 504 of FIG5 that the immediately past one-second time period is an ES, the defect detection module may determine that the plurality of past consecutive events (e.g., the past 10 seconds including the immediately past one-second time period) include three ESs, three error-free seconds, and four SESs. In some embodiments, Figure 5 At operation 508, the defect detection module may send a message to the sending device (or another device associated with the administrator) indicating a metric associated with the plurality of past consecutive events. Using the above example, the metric may indicate that the past ten seconds included three error-free seconds, three error-free seconds, and four error-free seconds. At operation 508, if the plurality of past consecutive events includes only error-free seconds and / or error-free seconds, the defect detection module may determine that an availability period exists. Thus, at operation 508, if the immediately past one-second time period is an error-free second and the preceding nine seconds immediately preceding the immediately past one-second time period are not error-free seconds (e.g., zero or more error-free seconds and / or zero or more error-free seconds), the defect detection module may determine that an availability period exists. For example, at operation 508, if the defect detection module determines that the immediately past one-second time period is an error-free second and the preceding nine seconds immediately preceding the immediately past one-second time period are all error-free seconds, the defect detection module may determine that an availability period exists. In another example, if the immediately past one-second time period and the previous nine seconds immediately preceding the immediately past one-second time period are both ES, then an availability period exists.

[0051] exist Figure 5In operation 502, if the defect detection module determines that the expected packet count is not greater than the received packet counter value, the defect detection module determines that the immediately past one-second period is an "error-free second." If the defect detection module determines that the immediately past one-second period is an "error-free second," the defect detection module proceeds to operation 510, where the defect detection module determines whether there is an availability period, as follows: Figure 6 Further described.

[0052] exist Figure 6 In the example scenario shown in FIG, if the immediately past one second period is an "error-free second" as indicated by 606, and if the defect detection module determines that the immediately past nine events are also "error-free seconds," then the defect detection module determines that an availability condition exists. In some embodiments, Figure 5 At operation 510, the defect detection module may send a message to the originating device (or another device associated with the administrator) indicating that an availability condition was detected for a plurality of consecutive events in the past. Figure 6 In another example scenario shown in FIG, if the immediately past one second period is an “error-free second” as indicated at 608, and if the defect detection module determines that the immediately past nine events include at least one SES, then the defect detection module determines that an unavailability condition persists. In some embodiments, Figure 5 At operation 510, the defect detection module may send a message to the sending end device (or another device associated with the administrator) indicating that the unavailability condition persisted over a plurality of consecutive past events. At operation 510, if the plurality of consecutive past events only includes ES and / or error-free seconds, the defect detection module may determine that an availability period exists. For example, at operation 510, if the defect detection module determines that the immediately past one-second period is an error-free second and the nine seconds immediately preceding the immediately past one-second period are all ES, the defect detection module may determine that an availability period exists.

[0053] The defect detection module of the receiving device can report its determined status (e.g., the presence of an unavailability condition or the presence of an availability condition and / or a metric of the past multiple consecutive events) to the sending device that sent the BFD control packet or to the software-defined network (SDN) controller. The determined status can be reported periodically or in response to a query requesting status information from the sending device or the SDN controller. In some embodiments, extended BFD can be used by a device in the BFD system (e.g., a sending device or an SDN controller) to query a BFD receiving device that supports EPM.

[0054] Figure 7FIG2 shows an exemplary block diagram of a hardware platform 700 that may be part of a network device (e.g., a receiving device as described herein). The hardware platform 700 includes at least one processor 710 and a memory 705 having instructions stored thereon. The instructions, when executed by the processor 710, configure the hardware platform 700 to perform Figures 1 to 6 as well as Figure 8 The operations described in the foregoing and various embodiments described in this application are also described in detail in the foregoing. Transmitter 715 transmits or sends information or data to another device. For example, a transmitter of a receiving device may send information indicating an availability period or an unavailability period to another device. Receiver 720 receives information or data transmitted or sent by another node. For example, a receiver of a receiving device may receive a BFD control packet from a transmitting device. Defect detection module 725 may perform the operations described in this application.

[0055] Figure 8 An example flow chart for performing error performance measurement is shown. Operation 802 includes determining, upon expiration of a time period (e.g., a one-second time period), that a number of one or more test packets received by the first device during the time period is less than an expected number of test packets, wherein the one or more test packets were received by the first device from the second device in a packet data communication network. Operation 804 includes triggering, based on the determination, an error performance measurement, the error performance measurement including evaluating a failure type for the time period and evaluating one or more failure types for one or more consecutive time periods immediately preceding the time period.

[0056] In some embodiments, each of the one or more test packets includes a field indicating whether a defect condition exists, and evaluating the failure type for the time period includes: (1) determining that a difference between the number of the one or more test packets and the expected number of test packets is greater than or equal to one, or (2) determining that the one or more test packets indicate the presence of the defect condition, or (3) determining that no test packets are received within a second time period (e.g., a detection interval), determining that the failure type for the time period is an errored second (ES). In some embodiments, the one-second time period may have at least some portion overlapping with the time period. In some embodiments, the evaluation of the fault type for the time period and the evaluation of the one or more fault types for one or more consecutive time periods immediately preceding the time period include: when determining that the fault type for the time period is ES and when determining that the one or more fault types for the one or more consecutive time periods are one or more ES, or one or more error-free second conditions, or any combination thereof, determining that the connection status between the first device and the second device is available, wherein the one or more error-free second conditions include one or more time periods in which the fault type is not the ES or severely errored seconds (SES); and sending a message to the second device or another device indicating that the connection status is available.

[0057] In some embodiments, each of the one or more test packets includes: a field indicating whether a defect condition exists, and evaluating the fault type for the time period includes: (1) determining that the difference between the expected number of test packets and the number of the one or more test packets received is greater than a configurable ratio of the expected number of test packets, or (2) determining that the one or more test packets indicate the presence of the defect condition, or (3) determining that no test packets are received within a certain second time period, determining that the fault type for the time period is a severely errored second (SES). In some embodiments, evaluating the fault type for the time period and evaluating the one or more fault types for one or more consecutive time periods immediately preceding the time period include: determining that the connection status between the first device and the second device is unavailable when the fault type for the time period and the one or more fault types for the one or more consecutive time periods are determined to be SES; and sending a message to the second device or another device indicating that the connection status is unavailable. In some embodiments, the packet data communication network is a packet switched network (PSN).

[0058] Throughout this application, the term "exemplary" is used to mean an "example" and, unless otherwise specified, does not imply an ideal or preferred embodiment. Throughout this application, the terms "seconds," "errored seconds," or "severely errored seconds" are used for ease of explanation and do not imply that error performance can only be determined over a one-second time period. The techniques described herein can be employed with timers or time periods longer or shorter than one second.

[0059] Some of the embodiments described herein are described in the general context of methods or processes, which, in one embodiment, can be implemented by a computer program product embodied in a computer-readable medium, comprising computer-executable instructions, such as program code, executed by a computer in a networked environment. Computer-readable media may include removable and non-removable storage devices, including but not limited to read-only memory (ROM), random access memory (RAM), compact discs (CD), digital versatile discs (DVD), etc. Therefore, the computer-readable medium may include non-transitory storage media. Typically, program modules may include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. Computer or processor executable instructions, associated data structures, and program modules represent examples of program codes for executing the steps of the methods disclosed herein. A specific sequence of such executable instructions or associated data structures represents an example of a corresponding action for implementing the functions described in such steps or processes.

[0060] Some of the disclosed embodiments can be implemented as devices or modules using hardware circuits, software, or a combination thereof. For example, a hardware circuit implementation may include discrete analog and / or digital components that are, for example, integrated as a part of a printed circuit board. Alternatively or additionally, the disclosed components or modules may be implemented as application specific integrated circuits (ASICs) and / or field programmable gate arrays (FPGAs). Some implementations may additionally or alternatively include a digital signal processor (DSP), which is a dedicated microprocessor whose architecture is optimized for the operational needs of digital signal processing associated with the functions disclosed herein. Similarly, the various components or subcomponents within each module may be implemented in software, hardware, or firmware. The connection between modules and / or components within the modules may be provided using any of the connection methods and media known in the art, including but not limited to communication over the Internet, a wired network, or a wireless network using appropriate protocols.

[0061] Although this document contains many specific contents, these specific contents should not be interpreted as limitations on the scope of the claimed invention or the content that may be claimed, but should be interpreted as descriptions of features specific to particular embodiments. Certain features described in the context of each individual embodiment in this document may also be implemented in combination in a single embodiment. Conversely, the various features described in the context of a single embodiment may also be implemented separately in multiple embodiments, or in any suitable sub-combination. In addition, although features may be described above as working in certain combinations and even initially claimed as such, in some cases, one or more features in the claimed combination may be deleted from the combination, and the claimed combination may point to a variant of a sub-combination or sub-combination. Similarly, although operations are described in a particular order in the accompanying drawings, this should not be understood as requiring that these operations must be performed in the particular order or sequence shown in order to obtain the desired result, or requiring that all shown operations be performed.

[0062] Only some implementations and examples are described. Other implementations, improvements and variations may be made based on what is described and illustrated in this application.

Claims

1. A packet communication method, comprising: receiving, by the first device, one or more test packets from the second device, wherein each of the test packets includes a field indicating whether a defect condition exists; Upon expiration of a time period, determining that the number of the one or more test packets received by the first device during the time period is less than an expected number of test packets and a defect counter is not greater than zero, wherein the defect counter indicates a second number of the one or more test packets, the second number indicating a number of occurrences of the defect condition; and triggering error performance measurement based on the determination, the error performance measurement comprising evaluating a failure type for the time period and evaluating one or more failure types for one or more consecutive time periods immediately preceding the time period.

2. The method according to claim 1, wherein The evaluating the failure type for the time period includes determining that the failure type for the time period is severely errored seconds (SES) when determining that a difference between the expected number of test packets and the number of the one or more test packets received is greater than a configurable proportion of the expected number of test packets.

3. The method according to claim 2, wherein: The evaluation of the fault type for the time period and the evaluation of the one or more fault types for one or more consecutive time periods immediately preceding the time period include: when determining that the fault type for the time period and the one or more fault types for the one or more consecutive time periods are the SES, determining that the connection status between the first device and the second device is unavailable; and sending a message to the second device or another device indicating that the connection status is unavailable.

4. The method according to claim 2, wherein: If it is determined that the fault type for the time period is not severely errored seconds (SES), then the fault type for the time period is determined to be errored seconds (ES).

5. The method according to claim 4, wherein The evaluating of the fault type for the time period and the evaluating of the one or more fault types for one or more consecutive time periods immediately preceding the time period include: determining that the connection status between the first device and the second device is available when it is determined that the fault type for the time period is ES and when it is determined that the one or more fault types for the one or more consecutive time periods are one or more ES, or one or more error-free second conditions, or any combination thereof, wherein the one or more error-free second conditions include one or more time periods in which the fault type is not the ES or severely errored second SES; and sending a message to the second device or another device indicating that the connection status is available.

6. The method according to claim 1, wherein The one or more test packets are sent in a packet switched network PSN.

7. An apparatus for packet communication, the apparatus comprising a processor configured to implement a method comprising: receiving, by the first device, one or more test packets from the second device, wherein each of the test packets includes a field indicating whether a defect condition exists; Upon expiration of a time period, determining that the number of the one or more test packets received by the first device during the time period is less than an expected number of test packets and a defect counter is not greater than zero, wherein the defect counter indicates a second number of the one or more test packets, the second number indicating a number of occurrences of the defect condition; and triggering error performance measurement based on the determination, the error performance measurement comprising evaluating a failure type for the time period and evaluating one or more failure types for one or more consecutive time periods immediately preceding the time period.

8. The device according to claim 7, wherein The evaluating the failure type for the time period includes determining that the failure type for the time period is severely errored seconds (SES) when determining that a difference between the expected number of test packets and the number of the one or more test packets received is greater than a configurable proportion of the expected number of test packets.

9. The device according to claim 8, wherein The evaluation of the fault type for the time period and the evaluation of one or more fault types for one or more consecutive time periods immediately preceding the time period include: when determining that the fault type for the time period and the one or more fault types for the one or more consecutive time periods are the SES, determining that the connection status between the first device and the second device is unavailable; and sending a message to the second device or another device indicating that the connection status is unavailable.

10. The device according to claim 8, wherein If it is determined that the fault type for the time period is not severely errored seconds (SES), then the fault type for the time period is determined to be errored seconds (ES).

11. The device according to claim 10, wherein The evaluating the fault type for the time period and evaluating the one or more fault types for one or more consecutive time periods immediately preceding the time period include: determining that the connection status between the first device and the second device is available when it is determined that the fault type for the time period is ES and when it is determined that the one or more fault types for the one or more consecutive time periods are one or more ES, or one or more error-free second conditions, or any combination thereof, wherein the one or more error-free second conditions include one or more time periods in which the fault type is not the ES or severely errored seconds SES; and sending a message to the second device or another device indicating that the connection status is available.

12. The device according to claim 7, wherein The one or more test packets are sent in a packet switched network PSN.

13. A non-transitory computer-readable program storage medium having stored thereon code that, when executed by a processor, causes the processor to implement a method comprising: receiving, by the first device, one or more test packets from the second device, wherein each of the test packets includes a field indicating whether a defect condition exists; Upon expiration of a time period, determining that the number of the one or more test packets received by the first device during the time period is less than an expected number of test packets and a defect counter is not greater than zero, wherein the defect counter indicates a second number of the one or more test packets, the second number indicating a number of occurrences of the defect condition; and triggering error performance measurement based on the determination, the error performance measurement comprising evaluating a failure type for the time period and evaluating one or more failure types for one or more consecutive time periods immediately preceding the time period.

14. The non-transitory computer-readable program storage medium according to claim 13, wherein: The evaluating the failure type for the time period includes determining that the failure type for the time period is severely errored seconds (SES) when determining that a difference between the expected number of test packets and the number of the one or more test packets received is greater than a configurable proportion of the expected number of test packets.

15. The non-transitory computer-readable program storage medium according to claim 14, wherein The evaluation of the fault type for the time period and the evaluation of the one or more fault types for one or more consecutive time periods immediately preceding the time period include: when determining that the fault type for the time period and the one or more fault types for the one or more consecutive time periods are the SES, determining that the connection status between the first device and the second device is unavailable; and sending a message to the second device or another device indicating that the connection status is unavailable.

16. The non-transitory computer-readable program storage medium according to claim 14, wherein: If it is determined that the fault type for the time period is not severely errored seconds (SES), then the fault type for the time period is determined to be errored seconds (ES).

17. The non-transitory computer-readable program storage medium according to claim 16, wherein: The evaluating of the fault type for the time period and the evaluating of the one or more fault types for one or more consecutive time periods immediately preceding the time period include: determining that the connection status between the first device and the second device is available when it is determined that the fault type for the time period is ES and when it is determined that the one or more fault types for the one or more consecutive time periods are one or more ES, or one or more error-free second conditions, or any combination thereof, wherein the one or more error-free second conditions include one or more time periods in which the fault type is not the ES or severely errored second SES; and sending a message to the second device or another device indicating that the connection status is available.

18. The non-transitory computer-readable program storage medium according to claim 13, wherein: The one or more test packets are sent in a packet switched network PSN.

Citation Information

Patent Citations

  • Method for detecting an available / unavailable state of packet transport network

    US20080259808A1