IP Library Granted Patent US 10,291,747
Granted Patent B2
US 10,291,747 · App. 16/030,226 · Granted May 14, 2019

Monitoring services key performance indicators using TWAMP for SDN and NFV architectures

Inventors: Peyush Gupta (Bangalore, IN); Amit Kumar Agarwal (Bangalore, IN); Srivathsa Sarangapani (Bangalore, IN)
Assignee: Juniper Networks, Inc.
H04L67/42H04L43/08H04L43/087H04L43/0864H04L43/0876H04L67/14H04L43/10H04L43/50
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,291,747
App. No.
16/030,226
Granted
May 14, 2019
Kind
B2
Abstract

Techniques are described for extending a two-way active measurement protocol (TWAMP) to enable measurement of service key performance indicators (KPIs) in a software defined network (SDN) and network function virtualization (NFV) architecture. The TWAMP extensions enable control messaging to be handled by a TWAMP control client executed on a centralized controller, and data messaging to be handled by a TWAMP session initiator executed on a separate network device. Techniques are also described for extending TWAMP to enable measurement of any of a plurality of service KPIs for a given service supported at a TWAMP server. The service KPIs may include one or more of keepalive measurements, round trip time measurements, path delay measurements, service latency measurements, or service load measurements. The TWAMP extensions for the service KPIs may be used in both conventional network architectures and in SDN and NFV architectures.

Claims (61)

1. A method comprising:

sending, by a two-way active measurement protocol (TWAMP) control client on a centralized controller device of a network and to a TWAMP server on a first network device in the network over a first control connection, a first set of TWAMP control messages to negotiate a data session for a given service supported at the TWAMP server;

sending, by the TWAMP control client and to a TWAMP session initiator on a second network device in the network over a second control connection, a second set of TWAMP control messages instructing the TWAMP session initiator to establish the data session for the given service with the TWAMP server; and

receiving, by the TWAMP control client and from the TWAMP session initiator over the second control connection, service data measurements for the given service, wherein the service data measurements are collected by the TWAMP session initiator from the TWAMP server over the data session.

2. The method of claim 1 , wherein sending the first set of TWAMP control messages to negotiate the data session for the given service comprises selecting one or more service key performance indicators (KPIs) to be measured for the given service, and wherein the selected service KPIs for the given service include one or more of keepalive measurements, round trip time measurements, path delay measurements, service latency measurements, or service load measurements.

3. The method of claim 1 , further comprising establishing the first control connection between the TWAMP control client on the centralized controller device and the TWAMP server on the first network device, wherein establishing the first control connection comprises receiving, by the TWAMP control client from the TWAMP server, a TWAMP greeting message that identifies a mode supported at the TWAMP server, the mode indicating whether the TWAMP server supports monitoring of service key performance indicators (KPIs).

4. The method of claim 1 , wherein sending the first set of TWAMP control messages to negotiate the data session for the given service comprises:

sending, by the TWAMP control client to the TWAMP server, a service monitoring request message requesting which services are supported at the TWAMP server;

receiving, by the TWAMP control client from the TWAMP server, a service monitoring response message including a number of the supported services, a service identifier (ID) for each of the supported services, and supported service key performance indicators (KPIs) for each service ID; and

sending, by the TWAMP control client to the TWAMP server, a service monitoring acknowledgement message selecting one or more service KPIs to be measured for the given service from among the supported service KPIs for each service ID.

5. The method of claim 1 , wherein sending the first set of TWAMP control messages to negotiate the data session for the given service comprises:

sending, by the TWAMP control client to the TWAMP server, a request session message requesting the data session for the given service, the request session message including a service identifier (ID) to identify the given service; and

receiving, by the TWAMP control client from the TWAMP server, an accept session message accepting the data session for the given service, the accept session message including a session identifier (SID) to identify the data session.

6. The method of claim 5 , wherein sending the second set of TWAMP control messages instructing the TWAMP session initiator to establish the data session for the given service comprises:

sending, by the TWAMP control client to the TWAMP session initiator, a data session message instructing the TWAMP session initiator to establish the data session for the given service with the TWAMP server, the data session message including the SID to identify the data session, sender port and address information for the TWAMP session initiator, and receiver port and address information for the TWAMP server.

7. The method of claim 1 , wherein sending the second set of TWAMP control messages instructing the TWAMP session initiator to establish the data session for the given service comprises:

sending, by the TWAMP control client to the TWAMP session initiator, a request service data message requesting the service data measurements for the given service from the TWAMP session initiator.

8. The method of claim 1 , wherein the centralized controller device communicates with a network functions virtualization orchestrator (NFV-O), the method further comprising sending, by the TWAMP control client to the NFV-O, the service data measurements for the given service, wherein the service data measurements for the given service are used by the NFV-O to manage the network.

9. A centralized controller device of a network, the centralized controller device comprising:

a memory; and

one or more processors in communication with the memory and configured to execute a two-way active measurement protocol (TWAMP) control client, the TWAMP control client configured to:

send, to a TWAMP server on a first network device in the network over a first control connection, a first set of TWAMP control messages to negotiate a data session for a given service supported at the TWAMP server;

send, to a TWAMP session initiator on a second network device in the network over a second control connection, a second set of TWAMP control messages instructing the TWAMP session initiator to establish the data session for the given service with the TWAMP server; and

receive, from the TWAMP session initiator over the second control connection, service data measurements for the given service, wherein the service data measurements are collected by the TWAMP session initiator from the TWAMP server over the data session.

10. The centralized controller device of claim 9 , wherein, to negotiate the data session for the given service, the TWAMP control client is configured to select one or more service key performance indicators (KPIs) to be measured for the given service, and wherein the selected service KPIs for the given service include one or more of keepalive measurements, round trip time measurements, path delay measurements, service latency measurements, or service load measurements.

11. The centralized controller device of claim 9 , wherein the TWAMP control client is configured to establish the first control connection between the TWAMP control client on the centralized controller device and the TWAMP server on the first network device, and wherein, to establish the first control connection, the TWAMP control client is configured to receive, from the TWAMP server, a TWAMP greeting message that identifies a mode supported at the TWAMP server, the mode indicating whether the TWAMP server supports monitoring of service key performance indicators (KPIs).

12. The centralized controller device of claim 9 , wherein, to negotiate the data session for the given service, the TWAMP control client is configured to:

send, to the TWAMP server, a service monitoring request message requesting which services are supported at the TWAMP server;

receive, from the TWAMP server, a service monitoring response message including a number of the supported services, a service identifier (ID) for each of the supported services, and supported service key performance indicators (KPIs) for each service ID; and

send, to the TWAMP server, a service monitoring acknowledgement message selecting one or more service KPIs to be measured for the given service from among the supported service KPIs for each service ID.

13. The centralized controller device of claim 9 , wherein, to negotiate the data session for the given service, the TWAMP control client is configured to:

send, to the TWAMP server, a request session message requesting the data session for the given service, the request session message including a service identifier (ID) to identify the given service; and

receive, from the TWAMP server, an accept session message accepting the data session for the given service, the accept session message including a session identifier (SID) to identify the data session.

14. The centralized controller device of claim 13 , wherein, to establish the data session for the given service, the TWAMP control client is configured to send, to the TWAMP session initiator, a data session message instructing the TWAMP session initiator to establish the data session for the given service with the TWAMP server, the data session message including the SID to identify the data session, sender port and address information for the TWAMP session initiator, and receiver port and address information for the TWAMP server.

15. The centralized controller device of claim 9 , wherein, to establish the data session for the given service, the TWAMP control client is configured to send, to the TWAMP session initiator, a request service data message requesting the service data measurements for the given service from the TWAMP session initiator.

16. The centralized controller device of claim 9 , wherein the centralized controller device communicates with a network functions virtualization orchestrator (NFV-O), and wherein the TWAMP control client is configured to send, to the NFV-O, the service data measurements for the given service, wherein the service data measurements for the given service are used by the NFV-O to manage the network.

17. A method comprising:

receiving, by a two-way active measurement protocol (TWAMP) session initiator on a first network device in a network and from a TWAMP control client on a centralized controller device of the network over a control connection, a set of TWAMP control messages instructing the TWAMP session initiator to establish a data session for a given service supported at a TWAMP server on a second network device in the network;

establishing, by the TWAMP session initiator, the data session for the given service with the TWAMP server;

receiving, by the TWAMP session initiator from the TWAMP server, service data measurements for the given service over the data session; and

sending, by the TWAMP session initiator to the TWAMP control client over the control connection, the service data measurements for the given service.

18. The method of claim 17 , wherein the service data measurements for the given service comprise service data measurement for one or more selected service key performance indicators (KPIs) to be measured for the given service, wherein the selected service KPIs for the given service are negotiated between the TWAMP control client and the TWAMP server, and wherein the selected service KPIs for the given service include one or more of keepalive measurements, round trip time measurements, path delay measurements, service latency measurements, or service load measurements.

19. The method of claim 17 , wherein receiving the set of TWAMP control messages instructing the TWAMP session initiator to establish the data session for the given service comprises:

receiving, by the TWAMP session initiator from the TWAMP control client, a data session message instructing the TWAMP session initiator to establish the data session for the given service with the TWAMP server, the data session message including a session identifier (SID) to identify the data session, sender port and address information for the TWAMP session initiator, and receiver port and address information for the TWAMP server.

20. The method of claim 17 , wherein receiving the set of TWAMP control messages instructing the TWAMP session initiator to establish the data session for the given service comprises:

receiving, by the TWAMP session initiator from the TWAMP control client, a request service data message requesting the service data measurements for the given service from the TWAMP session initiator.

21. The method of claim 17 , wherein receiving the service data measurements for the given service comprises:

receiving, by the TWAMP session initiator from the TWAMP server, a TWAMP test packet including a list of one or more selected service key performance indicators (KPIs) for the given service that are included in the TWAMP test packet, and the service data measurements for the selected service KPIs for the given service, the service data measurements being included in one of a packet padding area, a service protocol data unit (PDU), a service data unit (SDU), or a header of the TWAMP test packet.

22. The method of claim 17 , wherein the TWAMP session initiator is running on one of a physical chassis of the first network device or a virtual machine of the first network device, and wherein the first network device and the second network device are either a same device or different devices.

23. A network device in a network, the network device comprising:

a memory; and

one or more processors in communication with the memory and configured to execute a two-way active measurement protocol (TWAMP) session initiator, the TWAMP session initiator configured to:

receive, from a TWAMP control client on a centralized controller device of the network over a control connection, a set of TWAMP control messages instructing the TWAMP session initiator to establish a data session for a given service supported at a TWAMP server on a second network device in the network;

establish the data session for the given service with the TWAMP server;

receive, from the TWAMP server, service data measurements for the given service over the data session; and

send, to the TWAMP control client over the control connection, the service data measurements for the given service.

24. The network device of claim 23 , wherein the service data measurements for the given service comprise service data measurement for one or more selected service key performance indicators (KPIs) to be measured for the given service, wherein the selected service KPIs for the given service are negotiated between the TWAMP control client and the TWAMP server, and wherein the selected service KPIs for the given service include one or more of keepalive measurements, round trip time measurements, path delay measurements, service latency measurements, or service load measurements.

25. The network device of claim 23 , wherein, to establish the data session for the given service, the TWAMP session initiator is configured to receive, from the TWAMP control client, a data session message instructing the TWAMP session initiator to establish the data session for the given service with the TWAMP server, the data session message including a session identifier (SID) to identify the data session, sender port and address information for the TWAMP session initiator, and receiver port and address information for the TWAMP server.

26. The network device of claim 23 , wherein, to establish the data session for the given service, the TWAMP session initiator is configured to receive, from the TWAMP control client, a request service data message requesting the service data measurements for the given service from the TWAMP session initiator.

27. The network device of claim 23 , wherein, to receive the service data measurements for the given service, the TWAMP session initiator is configured to receive, from the TWAMP server, a TWAMP test packet including a list of one or more selected service key performance indicators (KPIs) for the given service included in the TWAMP test packet, and the service data measurements for the selected service KPIs for the given service, the service data measurements being included in one of a packet padding area, a service protocol data unit (PDU), a service data unit (SDU), or a header of the TWAMP test packet.

28. The network device of claim 23 , wherein the TWAMP session initiator is running on one of a physical chassis of the network device or a virtual machine of the network device, and wherein the network device and the second network device are either a same device or different devices.

Assignments (1)
NUNC PRO TUNC ASSIGNMENT Recorded May 6, 2026
From: JUNIPER NETWORKS, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 075513/0034 →
Priority Claims (1)
IN 2616/CHE/2015 · May 25, 2015 · national
Continuity (2)
Continuation 14755961 · Jun 30, 2015
Related Publication 20180324281A1 · Nov 8, 2018