US11956140B2ActiveUtilityA1

Systems and methods for constructing service-aware virtual topologies in wide area networks

46
Assignee: ARISTA NETWORKS INCPriority: Oct 1, 2021Filed: Jan 14, 2022Granted: Apr 9, 2024
Est. expiryOct 1, 2041(~15.2 yrs left)· nominal 20-yr term from priority
H04L 45/02H04L 45/586H04L 69/22
46
PatentIndex Score
0
Cited by
8
References
20
Claims

Abstract

A method for servicing network traffic in a wide area network (WAN) comprising a plurality of network devices is provided. The method is executed by a network device among the plurality of network devices and comprises: receiving a request to transmit the network traffic to a destination network device where the request specifies that the network traffic is to be serviced by a network service; determining, based on the request and using a service-aware virtual topology (SAVT) routing table, a path through the WAN for reaching the network service and a service instance identifier (ID) of the network service; configuring the network traffic to include a service bit indicating whether service is to be performed and instructions specifying the path for reaching the network service; and transmitting, after configuring the network traffic, the network traffic toward the destination device through the at least one network service.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method for servicing network traffic in a wide area network (WAN) comprising a plurality of network devices, the method being executed by a network device among the plurality of network devices and comprising:
 receiving a request to transmit the network traffic to a destination network device, wherein the destination network device is one among the plurality of network devices, and wherein the request specifies that the network traffic is to be serviced by a first network service among a plurality of network services prior to being received by the destination network device; 
 determining, using a service-aware virtual topology (SAVT) routing table stored in the network device, a path through the WAN for reaching the first network service and a service instance identifier (ID) of the first network service, wherein the path is selected from among a plurality of paths through the WAN stored in the SAVT routing table; 
 after the determining, modifying a header of the network traffic to:
 configure a service bit in the header to indicate that service is to be performed on the network traffic; and 
 add hop stacks information reflecting the path for reaching the network service, wherein the hop stacks information comprises a stack of hop instructions, wherein each hop instruction among the hop instructions specifies another network device among the plurality of network devices that is on the path for reaching the first network service, 
 wherein the header of the network traffic includes an identification (ID) of the destination network device; and 
 
 transmitting, after modifying the header of the network traffic and toward the first network service, the network traffic to a network device among the plurality of network devices specified by a first hop instruction among the hop instructions in the header of the network traffic. 
 
     
     
       2. The method of  claim 1 , further comprising by the network device:
 receiving, from a second network service among the plurality of network services, second network traffic, wherein the second network traffic includes the ID of the destination network device and the second network traffic is a serviced version of the first network traffic; 
 making a first determination, after receiving the second network traffic and using a header of the second network traffic, that the second network traffic has been serviced by the second network service; 
 making a second determination, after the first determination and using the SAVT and the ID of the destination network device, to select a path through the WAN for reaching the destination network device; 
 after the second determination, modifying the header of the second network traffic to:
 configure a service bit in the header of the second network traffic to indicate that the second network traffic has been serviced; 
 add a service instance ID of the second network service to a first portion of the header of the second network traffic; and 
 add second hop stacks information reflecting the path for reaching the destination network device to a second portion of the header of the second network traffic; and 
 
 transmitting, after modifying the header of the second network traffic and based on the second hop stacks information, the second network traffic toward the destination network device. 
 
     
     
       3. The method of  claim 2 , wherein the second network service is an internal network service hosted by the network device, and wherein the second network service is the same as the first network service. 
     
     
       4. The method of  claim 2 , wherein the second network service is an external network service reachable only through a secure internet gateway (SIG) of the network device. 
     
     
       5. The method of  claim 1 , further comprising by the network device:
 receiving, from a second network device among the network devices, second network traffic, wherein the network device is specified as the destination network device in a header of the second network traffic; 
 making a first determination, after receiving the second network traffic and using the header of the second network traffic, that the second network traffic has been serviced by a second network service of the plurality of network services; 
 processing, after making the first determination and using the header of the second network traffic, the second network traffic by storing the service instance ID of the second network service in the network device, wherein the service instance ID of the second network service is stored in a flow cache of the network device; 
 making a second determination, after processing the second network traffic, that a reverse network traffic is to be transmitted back to a source network device where the second network traffic originated; 
 after the second determination, generating the reverse network traffic and modifying a header of the reverse network traffic to comprise:
 the service bit indicating that service is to be performed on the reverse network traffic; and 
 the service instance ID of the second network service, wherein the service instance ID of the second network service is retrieved from the flow cache; and 
 
 transmitting, after modifying the header of the reverse network traffic, the reverse network traffic toward the second network service. 
 
     
     
       6. The method of  claim 5 , wherein
 the second network traffic further comprises second hop stacks information reflecting a path from the second network service to the network device, 
 the network device further stores the second hop stacks information in the flow cache, and 
 the reverse network traffic is modified to include third hop stacks information reflecting a reverse path of the path from the second network service to the network device specified in the second hop stacks information. 
 
     
     
       7. A method for servicing network traffic in a wide area network (WAN) comprising a plurality of network devices, the method being executed by a network device among the plurality of network devices and comprising:
 receiving a request to transmit the network traffic to a destination network device among the plurality of network devices, wherein the request specifies that the network traffic is to be serviced by at least one network service among a plurality of network services; 
 determining, based on the request and using a service-aware virtual topology (SAVT) routing table, a path through the WAN for reaching the at least one network service and a service instance identifier (ID) of the at least one network service; 
 configuring, based on the determining, the network traffic to include a service bit indicating whether service is to be performed on the network traffic and instructions specifying the path for reaching the at least one network service; and 
 transmitting, after configuring the network traffic, the network traffic toward the destination device through the at least one network service. 
 
     
     
       8. The method of  claim 7 , wherein the path for reaching the at least one network service is selected from among a plurality of paths through the WAN based on a transmission impact of each of the plurality of paths on the network traffic. 
     
     
       9. The method of  claim 8 , wherein the at least one network service is an internal network service hosted by the network device or an external network service reachable through a secure internet gateway (SIG) of the network device. 
     
     
       10. The method of  claim 7 , wherein the service bit is stored in a header of the network traffic. 
     
     
       11. The method of  claim 10 , wherein
 the instructions specifying the path for reaching the at least one network service is stored in a header of the network traffic, and 
 the instructions specifying the path for reaching the at least one network service is hop stacks information reflecting the path for reaching the at least one network service, 
 wherein the hop stacks information comprises a stack of hop instructions and each hop instruction among the hop instructions specifies another network device among the plurality of network devices that is on the path for reaching the at least one network service. 
 
     
     
       12. The method of  claim 11 , wherein the instructions specifying the path for reaching the at least one network service is used by the destination network device to configure a reverse network traffic to be transmitted back to the network device by the destination network device. 
     
     
       13. The method of  claim 7 , wherein the service instance ID of the at least one network service is used by the destination network device such that a reverse network traffic being transmitted by the destination network device back to the network device is serviced by a same one of the at least one network service. 
     
     
       14. The method of  claim 7 , further comprising:
 receiving second network traffic from a network service from the at least one network service, wherein the second network traffic is a serviced version of the first network traffic; 
 making a first determination, after receiving the second network traffic and using a header of the second network traffic, that the second network traffic has been serviced by the at least one network service and that the second network traffic includes an identification (ID) of the destination network device; 
 configuring, after the first determination, the second network traffic using the SAVT and the ID of the destination network device to transmit the second network traffic to the destination device; 
 transmitting, after configuring the second network traffic, the second network traffic toward the destination network device. 
 
     
     
       15. The method of  claim 7 , wherein
 transmitting, after configuring the network traffic, the network traffic toward the destination device through the at least one network service comprises:
 transmitting the network traffic through one or more intermediate network devices before reaching the at least one network service or the destination device, 
 
 wherein if a transmission disruption occurs at one of the one or more intermediate network devices before the network traffic reaches the at least one network service or the destination device, the one of the one or more intermediate network devices where the transmission disruption occurs will reconfigure the network traffic using its SAVT routing table, the service bit included in the network traffic, and the service instance ID of the at least one network service. 
 
     
     
       16. A network device among a plurality of network devices connected on a wide area network (WAN), the network device comprising:
 a storage storing a service-aware virtual topology (SAVT) routing table; and 
 a processor connected to the storage, wherein the processor is configured to:
 receive, from another network device among the network devices, network traffic; 
 make a first determination, after receiving the network traffic and using the network traffic, that the network device is specified as a destination network device for the received network traffic; 
 make a second determination that the received network traffic has been serviced by a network service among a plurality of network services on the WAN; and 
 process, after the first determination and the second determination, the network traffic to store information about the received network traffic in the storage, 
 wherein the information about the received network traffic is used along with the SAVT to configure reverse network traffic that is transmitted back to a source network device that first transmitted the received network traffic. 
 
 
     
     
       17. The network device of  claim 16 , wherein
 the first determination and the second determination are made using information stored in a header of the received network traffic, and 
 the header of received network traffic comprises:
 an identification (ID) of the network device set as the destination network device; 
 a service instance ID of the network service that serviced the received network traffic; and 
 a service bit indicating whether the network traffic has been serviced. 
 
 
     
     
       18. The network device of  claim 17 , wherein the information about the received network traffic stored in the storage comprises the service instance ID, and wherein the storage further comprises a flow cache of the network device. 
     
     
       19. The network device of  claim 17 , wherein configuring the reverse network traffic to the source of the received network traffic comprises:
 generating the reverse network traffic; and 
 modifying a header of the generated reverse network traffic to comprise:
 an ID of the source network device; 
 the service bit, wherein the service bit is configured to indicate that the reversed network traffic needs to be serviced before reaching the source network device; and 
 the service instance ID of the network service that serviced the received network traffic such that the reverse network traffic will also be serviced by the network service that serviced the received network traffic. 
 
 
     
     
       20. The network device of  claim 18 , wherein
 the header of the received network traffic further comprises hop stacks information reflecting a path within the WAN from the network service to the network device, and 
 the network device further stores the hop stacks information in the flow cache to use the hop stacks information for the reverse network traffic.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.