IP Library › Granted Patent US 11,115,391
Granted Patent B2
US 11,115,391 · App. 16/668,807 · Granted Sep 7, 2021

Securing end-to-end virtual machine traffic

Inventors: Avinash Kumar Singh (Bangalore, IN); Sachin Mutalik Desai (Bangalore, IN); Vaibhav Agarwal (Bangalore, IN); Mohit Joshi (Bangalore, IN)
Assignee: Juniper Networks, Inc.
H04L63/0428G06F9/45558H04L63/029H04L63/06H04L63/0876G06F2009/45587H04L47/20H04L63/20
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 11,115,391
App. No.
16/668,807
Granted
Sep 7, 2021
Kind
B2
Abstract

A device may receive a packet from a first endpoint that is destined for a second endpoint. The first endpoint may be hosted on the device. The device may determine whether a secure session exists between the first endpoint and the second endpoint. The secure session may permit encrypted traffic to be exchanged between the first endpoint and the second endpoint. The device may process the packet using a set of rules after determining whether the secure session exists between the first endpoint and the second endpoint. The device may encrypt the packet using security information associated with the secure session after determining that the secure session exists, or establishing the secure session when the secure session does not exist. The device may provide the packet toward the second endpoint after encrypting the packet.

Claims (70)

1. A method comprising:

receiving, by a device, a packet from a remote endpoint that is destined for a local endpoint,

the local endpoint being local to the device,

the local endpoint being a local virtual machine,

the remote endpoint being remote from the device,

the remote endpoint being a remote virtual machine, and

the packet being received via an underlying tunneling network between the device and another device hosting the remote endpoint;

decrypting, from the device, the packet using security information associated with a secure session between the remote virtual machine and the local virtual machine; and

providing, by the device, the packet toward the local endpoint after decrypting the packet.

2. The method of claim 1 , wherein the underlying tunneling network includes tunneling between one or more service nodes of the device and one or more service nodes of the other device.

3. The method of claim 1 , where receiving the packet comprises:

receiving the packet via one or more of:

a network interface card (NIC) port of the device,

a service node of the device, or

a NIC of the service node.

4. The method of claim 1 , further comprising:

performing a lookup of media access control (MAC) address of the local virtual machine and the remote virtual machine associated with the packet to identify the security information.

5. The method of claim 4 , further comprising:

identifying a decryption key derived from a pre-shared key (PSK),

the decryption key being used to decrypt the packet when the lookup indicates a match.

6. The method of claim 1 , where providing the packet comprises:

providing, via a service node associated with the device, the packet to a packet forwarding component (PFC), associated with the device, via a virtual port of the service node,

the PFC to provide the packet to the local endpoint of the local virtual machine via a virtual network interface card (VNIC) of the local virtual machine.

7. The method of claim 1 , further comprising:

providing information associated with the packet indicating that the packet was received.

8. A non-transitory computer-readable medium storing instructions, the instructions comprising:

one or more instructions that, when executed by one or more processors in a device, cause the one or more processors to:

receive a packet from a remote endpoint that is destined for a local endpoint,

the local endpoint being local to the device,

the local endpoint being a local virtual machine,

the remote endpoint being remote from the device,

the remote endpoint being a remote virtual machine, and

the packet being received via an underlying tunneling network between the device and another device hosting the remote endpoint;

decrypt the packet using security information associated with a secure session between the remote virtual machine and the local virtual machine; and

provide the packet toward the local endpoint after decrypting the packet.

9. The non-transitory computer-readable medium of claim 8 , wherein the underlying tunneling network includes tunneling between one or more service nodes of the device and one or more service nodes of the other device.

10. The non-transitory computer-readable medium of claim 8 , where the one or more instructions, when executed by the one or more processors, further cause the one or more processors to:

perform a lookup of media access control (MAC) addresses of the local virtual machine and the remote virtual machine associated with the packet using information included in a header to the packet.

11. The non-transitory computer-readable medium of claim 10 , where the one or more instructions, when executed by the one or more processors, further cause the one or more processors to:

identify a decryption key derived from a pre-shared key (PSK),

the decryption key being used to decrypt the packet when the lookup indicates a match.

12. The non-transitory computer-readable medium of claim 8 , where the one or more instructions, that cause the one or more processors to receive the packet, cause the one or more processors to:

receive the packet as a media access control (MAC) security (MACsec) frame via the underlying tunneling network.

13. The non-transitory computer-readable medium of claim 8 , where the one or more instructions, that cause the one or more processors to provide the packet, cause the one or more processors to:

provide, via a service node associated with the device, the packet to a packet forwarding component (PFC), associated with the device, via a virtual port of the service node,

the PFC to provide the packet to the local endpoint of the local virtual machine via a virtual network interface card (VNIC) of the local virtual machine.

14. The non-transitory computer-readable medium of claim 8 , where the one or more instructions, when executed by the one or more processors, further cause the one or more processors to:

provide information associated with the packet indicating that the packet was received.

15. A device, comprising:

one or more memories; and

one or more processors, communicatively coupled to the one or more memories, to:

receive a packet from a remote endpoint that is destined for a local endpoint,

the local endpoint being local to the device,

the local endpoint being a local virtual machine,

the remote endpoint being remote from the device,

the remote endpoint being a remote virtual machine, and

the packet being received via an underlying tunneling network between the device and another device hosting the remote endpoint;

decrypt the packet using security information associated with a secure session between the remote virtual machine and the local virtual machine; and

provide the packet toward the local endpoint after decrypting the packet.

16. The device of claim 15 , wherein the underlying tunneling network includes tunneling between one or more service nodes of the device and one or more service nodes of the other device.

17. The device of claim 15 , where the one or more processors are further to:

perform a lookup of media access control (MAC) addresses of the local virtual machine and the remote virtual machine associated with the packet to identify the security information.

18. The device of claim 17 , where the one or more processors are further to:

identify a decryption key derived from a pre-shared key (PSK),

the decryption key being used to decrypt the packet when the lookup indicates a match.

19. The device of claim 15 , where the one or more processors, when providing the packet, are to:

provide, via a service node associated with the device, the packet to a packet forwarding component (PFC), associated with the device, via a virtual port of the service node,

the PFC to provide the packet to the local endpoint of the local virtual machine via a virtual network interface card (VNIC) of the local virtual machine.

20. The device of claim 15 , where the one or more processors are further to:

provide information associated with the packet indicating that the packet was received.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 30, 2019
From: SINGH, AVINASH KUMAR; DESAI, SACHIN MUTALIK; AGARWAL, VAIBHAV; JOSHI, MOHIT
To: JUNIPER NETWORKS, INC.
Reel/Frame 050867/0386 →
Continuity (2)
Continuation 15730356 · Oct 11, 2017
Related Publication 20200067891A1 · Feb 27, 2020