IP Library Granted Patent US 10,218,593
Granted Patent B2
US 10,218,593 · App. 15/244,369 · Granted Feb 26, 2019

Identifying sources of packet drops in a service function chain environment

Inventors: Carlos M. Pignataro (Raleigh, NC); Nagendra Kumar Nainar (Morrisville, NC); James Guichard (New Boston, NH)
Assignee: CISCO TECHNOLOGY, INC.
H04L43/0829H04L43/10H04L67/025H04L67/16
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,218,593
App. No.
15/244,369
Granted
Feb 26, 2019
Kind
B2
Abstract

Embodiments are directed to a service function configured to receive, from a service function forwarder, a data packet comprising a bit field to indicate that a packet drop is to be monitored; apply a policy for the data packet; determine that the data packet is to be dropped based on the policy; set a drop-propagate bit in a header of the data packet; and transmit the data packet to the service function forwarder. Embodiments are directed to a service function forwarder configured to receive a data packet from a service function, the data packet comprising a bit set to indicate that a packet drop is to be monitored; generate an Internet Control Message Protocol (ICMP) message, the ICMP message comprising a destination address for the ICMP message identified from the data packet; transmit the ICMP message to the destination address; and drop the data packet from the service function chain.

Claims (38)

1. A method for packet drop handling in a service function chain environment, the method comprising:

receiving a data packet from a service function in response to the data packet comprising a first bit set to indicate that a packet is to be monitored and a second bit set to indicate that a packet is to be dropped;

generating, in response to the receiving, an Internet Control Message Protocol (ICMP) message, the ICMP message comprising a destination address for the ICMP message identified from the data packet; transmitting the ICMP message to the destination address; and

dropping the data packet from the service function chain;

wherein the ICMP message represents a communication to the destination address that the drop of the data packet was intentional.

2. The method of claim 1 , further comprising:

receiving a data packet destined for the service function, the data packet comprising the first and second bits; and

forwarding the data packet to the service function.

3. The method of claim 1 , wherein generating the ICMP message comprises generating the ICMP message with a data packet payload and the destination address from a reply-to field from a data packet header.

4. The method of claim 1 , wherein generating the ICMP message comprises generating the ICMP message with an error code identifying one or more policies causing the drop of the packet.

5. The method of claim 1 , wherein the data packet comprises one or more reserved bits in a packet header, and the bit set is one of the reserved bits from the packet header.

6. The method of claim 5 , wherein the reserved bit in the data packet comprises a validation bit.

7. The method of claim 1 , wherein the data packet comprises a packet header comprising an O bit, wherein the bit set is the O bit.

8. A computer-readable non-transitory medium comprising one or more instructions for handling packet drops in a service function chain, the instructions when executed on a processor are operable to:

receive a data packet from a service function in response to the data packet comprising a first bit set to indicate that a packet is to be monitored and a second bit set to indicate that a packet is to be dropped;

generate, in response to receipt of the data packet, an Internet Control Message Protocol (ICMP) message, the ICMP message comprising a destination address for the ICMP message identified from the data packet;

transmit the ICMP message to the destination address; and

drop the data packet from the service function chain;

wherein the ICMP message represents a communication to the destination address that the drop of the data packet was intentional.

9. The computer-readable non-transitory medium of claim 8 , the instructions further operable when executed to receive a data packet destined for the service function, the data packet comprising the first and second bits, and forward the data packet to the service function.

10. The computer-readable non-transitory medium of claim 8 , wherein generating the ICMP message comprises generating the ICMP message with a data packet payload and the destination address from a reply-to field from a data packet header.

11. The computer-readable non-transitory medium of claim 8 , wherein generating the ICMP message comprises generating the ICMP message with an error code identifying one or more policies causing the drop of the packet.

12. The computer-readable non-transitory medium of claim 8 , wherein the data packet comprises one or more reserved bits in a packet header, and the bit set is one of the reserved bits from the packet header.

13. The computer-readable non-transitory medium of claim 12 , wherein the reserved bit in the data packet comprises a validation bit.

14. The computer-readable non-transitory medium of claim 8 , wherein the data packet comprises a packet header comprising an O bit, wherein the bit set is the O bit.

15. A service function forwarder network element of a service function chain, the service function forwarder comprising:

at least one memory element having instructions stored thereon;

at least one processors coupled to the at least one memory element and configured to execute the instructions to cause the service function forwarder network element to:

receive a data packet from a service function in response to the data packet comprising a first bit set to indicate that a packet is to be monitored and a second bit set to indicate that a packet is to be dropped;

generate, in response to receipt of the data packet, an Internet Control Message Protocol (ICMP) message, the ICMP message comprising a destination address for the ICMP message identified from the data packet;

transmit the ICMP message to the destination address; and

drop the data packet from the service function chain;

wherein the ICMP message represents a communication to the destination address that the drop of the data packet was intentional.

16. The service function forwarder network element of claim 15 , the instructions further operable when executed to receive a data packet destined for the service function, the data packet comprising the first and second bits set.

17. The service function forwarder network element of claim 15 , wherein generating the ICMP message comprises generating the ICMP message with a data packet payload and the destination address from a reply-to field from a data packet header.

18. The service function forwarder network element of claim 15 , wherein generating the ICMP message comprises generating the ICMP message with an error code identifying one or more policies causing the drop of the packet.

19. The service function forwarder network element of claim 15 , wherein the data packet comprises one or more reserved bits in a packet header, and the bit set is one of the reserved bits from the packet header.

20. The service function forwarder network element of claim 19 , wherein the reserved bit in the data packet comprises a validation bit.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2016
From: PIGNATARO, CARLOS M.; NAINAR, NAGENDRA KUMAR; GUICHARD, JAMES
To: CISCO TECHNOLOGY, INC.
Reel/Frame 039509/0285 →
Continuity (1)
Related Publication 20180062962A1 · Mar 1, 2018
Cited By (1)
US 12,363,209