IP Library Granted Patent US 12,040,984
Granted Patent B2
US 12,040,984 · App. 17/814,926 · Granted Jul 16, 2024

Proactive and on-demand destination next hop information sharing mechanism between a forwarding plane and a service plane

Inventors: Dipankar Barman (Bangalore, IN); Girish Kumar Attimgere Lingaiah (San Jose, CA)
Assignee: Juniper Networks, Inc.
H04L47/2425H04L45/745H04L47/2483H04L69/22H04L43/028
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 12,040,984
App. No.
17/814,926
Granted
Jul 16, 2024
Kind
B2
Abstract

A first packet forwarding plane (PFE) of a network device may receive a packet and may perform a first lookup for the packet. The first PFE may provide the packet to a service plane based on the first lookup. The service plane may apply a service to the packet and may provide the packet to the first PFE. The first PFE may perform a second lookup. The first PFE may provide the packet to a second PFE of the network device based on the second lookup and may store flow information associated with the packet and second PFE information in a table. The network device may provide the flow information and the second PFE information from the table to the service plane to cause the service plane to send subsequent packets directly to the second PFE thereby saving fabric, memory, and processing bandwidth and improving overall network performance.

Claims (79)

1. A method, comprising:

forwarding, by a first packet forwarding plane, and based on a first lookup associated with a first packet, the first packet to a service plane;

applying a first service to the first packet to generate a first serviced packet;

adding a header to the first serviced packet,

wherein the header includes a feedback request message associated with the first packet;

receiving, by the first packet forwarding plane, from the service plane, and based on forwarding the first packet, the first serviced packet;

generating a reply to the feedback request message;

transmitting, by the first packet forwarding plane, and to the service plane, the reply to the feedback request message,

wherein the reply includes information associated with a new destination forwarding plane;

storing flow information associated with the first packet in a table;

providing the flow information from the table to the service plane;

transmitting, by the first packet forwarding plane, and based on a second lookup associated with the first serviced packet, the first serviced packet to a second packet forwarding plane;

providing, by the first packet forwarding plane, and to the service plane, flow information associated with the first packet;

forwarding, by the first packet forwarding plane, and based on a third lookup associated with a second packet associated with the flow information, the second packet to the service plane; and

applying a second service to the second packet to generate a second serviced packet,

wherein the second serviced packet is forwarded to the second packet forwarding plane based on the flow information.

2. The method of claim 1 , wherein the first service includes at least one of deep packet inspection or Internet protocol security.

3. The method of claim 1 , further comprising:

receiving a plurality of third packets associated with the flow information;

storing session identifiers associated with the plurality of third packets; and

providing, to the service plane, the session identifiers.

4. The method of claim 1 , further comprising:

generating an on-demand request that includes information indicating that the first packet forwarding plane is to provide updated destination packet forwarding plane information if the first packet forwarding plane identified in a header of the first packet is different from a destination packet forwarding plane determined based on performing a route lookup operation that includes the first lookup, the second lookup, or the third lookup.

5. The method of claim 1 , wherein the first packet is forwarded to the service plane via a fabric plane.

6. The method of claim 1 , wherein the first service packet is transmitted to the second packet forwarding plane via a fabric plane.

7. The method of claim 1 , wherein the second serviced packet is forwarded to the second packet forwarding plane via a fabric plane.

8. A first packet forwarding plane, comprising:

one or more memories; and

one or more processors to:

forward, based on a first lookup associated with a first packet, the first packet to a service plane;

apply a first service to the first packet to generate a first serviced packet;

add a header to the first serviced packet,

wherein the header includes a feedback request message associated with the first packet;

receive, from the service plane, and based on forwarding the first packet, the first serviced packet;

generate a reply to the feedback request message;

transmit, to the service plane, the reply to the feedback request message,

wherein the reply includes information associated with a new destination forwarding plane;

store flow information associated with the first packet in a table;

provide the flow information from the table to the service plane;

transmit, based on a second lookup associated with the first serviced packet, the first serviced packet to a second packet forwarding plane;

provide, to the service plane, the flow information associated with the first packet;

forward, based on a third lookup associated with a second packet associated with the flow information, the second packet to the service plane; and

apply a second service to the second packet to generate a second serviced packet,

wherein the second serviced packet, is forwarded to the second packet forwarding plane based on the flow information.

9. The first packet forwarding plane of claim 8 , wherein the first service includes at least one of deep packet inspection or Internet protocol security.

10. The first packet forwarding plane of claim 8 , wherein the one or more processors are further to:

receive a plurality of third packets associated with the flow information;

store session identifiers associated with the plurality of third packets; and

provide, to the service plane, the session identifiers.

11. The first packet forwarding plane of claim 8 , wherein the one or more processors are further to:

generate an on-demand request that includes information indicating that the first packet forwarding plane is to provide updated destination packet forwarding plane information if a current destination packet forwarding plane identified in a header of the first packet is different from a destination packet forwarding plane determined based on performing a route lookup operation that includes the first lookup, the second lookup, or the third lookup.

12. The first packet forwarding plane of claim 8 , wherein the first packet is forwarded to the service plane via a fabric plane.

13. The first packet forwarding plane of claim 8 , wherein the first service packet is transmitted to the second packet forwarding plane via a fabric plane.

14. The first packet forwarding plane of claim 8 , wherein the second serviced packet is forwarded to the second packet forwarding plane via a fabric plane.

15. A non-transitory computer-readable medium storing a set of instructions, the set of instructions comprising:

one or more instructions that, when executed by one or more processors of a first packet forwarding plane, cause the first packet forwarding plane to:

forward, based on a first lookup associated with a first packet, the first packet to a service plane;

apply a first service to the first packet to generate a first serviced packet;

add a header to the first serviced packet,

wherein the header includes a feedback request message associated with the first packet;

receive from the service plane, based on forwarding the first packet, the first serviced packet;

generate a reply to the feedback request message;

transmit and to the service plane, the reply to the feedback request message,

wherein the reply includes information associated with a new destination forwarding plane;

store flow information associated with the first packet in a table;

provide the flow information from the table to the service plane;

transmit and based on a second lookup associated with the first serviced packet, the first serviced packet to a second packet forwarding plane;

provide and to the service plane, flow information associated with the first packet;

forward and based on a third lookup associated with a second packet associated with the flow information, the second packet to the service plane; and

apply a second service to the second packet to generate a second serviced packet,

wherein the second serviced packet is forwarded to the second packet forwarding plane based on the flow information.

16. The non-transitory computer-readable medium of claim 15 , wherein the first service includes at least one of deep packet inspection or Internet protocol security.

17. The non-transitory computer-readable medium of claim 15 , wherein the one or more instructions further cause the first packet forwarding plane to:

receive a plurality of third packets associated with the flow information;

store session identifiers associated with the plurality of third packets; and

provide, to the service plane, the session identifiers.

18. The non-transitory computer-readable medium of claim 15 , wherein the first packet is forwarded to the service plane via a fabric plane.

19. The non-transitory computer-readable medium of claim 15 , wherein the first service packet is transmitted to the second packet forwarding plane via a fabric plane.

20. The non-transitory computer-readable medium of claim 15 , wherein the second serviced packet is forwarded to the second packet forwarding plane via a fabric plane.

Assignments (1)
NUNC PRO TUNC ASSIGNMENT Recorded May 6, 2026
From: JUNIPER NETWORKS, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 075513/0034 →
Continuity (2)
Continuation 17103183 · Nov 24, 2020
Related Publication 20220360535A1 · Nov 10, 2022