Method and system of a dynamic high-availability mode based on current wide area network connectivity

Information

  • Patent Grant
  • 11223514
  • Patent Number
    11,223,514
  • Date Filed
    Monday, December 11, 2017
    7 years ago
  • Date Issued
    Tuesday, January 11, 2022
    3 years ago
Abstract
In one aspect, a method useful for implementing high availability (HA) enhancements to a computer network, comprising the steps of: providing a first edge device of a local area network (LAN); providing a second edge device of the LAN; providing a gateway system to the LAN from a wide area network; detecting that an HA cable between the first edge device and the second edge device is disconnected; establishing a network connection between the gateway system and the second edge device; with the gateway system: determining that the first edge device is active and passing network traffic, implementing a network tunneling protocol with second edge device.
Description
BACKGROUND


FIG. 1 (prior art) illustrates an example High Availability (HA) network topology 100, according to some embodiments. There may be two key deficiencies in HA network topology 100 which are addressed by the enhancements in FIGS. 2-10. A first deficiency can include the requirement of a switch on the WAN side of the HA pair (e.g. first edge device 112 and second edge device 114). The WAN can include MPLS 102 and Internet 108. A single switch may introduce a single point of failure in actuality two WAN-side switches are required for full redundancy. The addition of two switches (e.g. switches 116 and 120) may increases the complexity of the insertion without providing any real benefit. After the installation of an Edge Router, a customer may be responsible for the switch.


Additionally, unpredictable behavior in split brain scenarios may arise. Typically, the switches may run a Spanning Tree Protocol to prevent loops in the network. If both devices go active (e.g. HA cable 118 is disconnected), then each switch may block a different device, causing a total loss of traffic through the pair.


BRIEF SUMMARY OF THE INVENTION

In one aspect, a method useful for implementing high availability (HA) enhancements to a computer network, comprising the steps of: providing a first edge device of a local area network (LAN); providing a second edge device of the LAN; providing a gateway system to the LAN from a wide area network; detecting that an HA cable between the first edge device and the second edge device is disconnected; establishing a network connection between the gateway system and the second edge device; with the gateway system: determining that the first edge device is active and passing network traffic, implementing a network tunneling protocol with second edge device, signaling to the second edge device to go into a standby mode, detecting that the first edge device loses connectivity then the gateway, and signaling to the second edge device to take over as the active edge device of the LAN.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 (prior art) illustrates an example High Availability (HA) network topology, according to some embodiments.



FIG. 2 illustrates an example network topology with a switch on a WAN side of a HA pair, according to some embodiments.



FIG. 3 illustrates an example network topology, according to some embodiments.



FIGS. 4 A-B illustrates a network topology illustrating a first use case that covers edge device with shared links, according to some embodiments.



FIGS. 5 A-B illustrate network topology illustrating a second use case that includes a scenario where there is only one link connected to each edge device (e.g. edge devices with unique links), according to some embodiments.



FIG. 6 illustrates another example network topology, according to some embodiments.



FIG. 7 illustrates another example network topology 700 with an active LAN, according to some embodiments.



FIG. 8 illustrates yet another example network topology, according to some embodiments.



FIG. 9 illustrates an ample communication exchange process, according to some embodiments.



FIG. 10 illustrates an example process for implementing dynamic HA mode based process 1000 on current WAN connectivity, according to some embodiments.



FIG. 11 depicts an exemplary computing system that can be configured to perform any one of the processes provided herein.



FIG. 12 illustrates an example process for providing dynamic HA mode based on current WAN connectivity, according to some embodiments.





The Figures described above are a representative set, and are not exhaustive with respect to embodying the invention.


DESCRIPTION

Disclosed are a system, method, and article of manufacture for method and system of a high availability enhancements to a computer network. The following description is presented to enable a person of ordinary skill in the art to make and use the various embodiments. Descriptions of specific devices, techniques, and applications are provided only as examples. Various modifications to the examples described herein can be readily apparent to those of ordinary skill in the art, and the general principles defined herein may be applied to other examples and applications without departing from the spirit and scope of the various embodiments.


Reference throughout this specification to “one embodiment,” “an embodiment,” ‘one example,’ or similar language means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, appearances of the phrases “in one embodiment,” “in an embodiment,” and similar language throughout this specification may, but do not necessarily, all refer to the same embodiment.


Furthermore, the described features, structures, or characteristics of the invention may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided, such as examples of programming, software modules, user selections, network transactions, database queries, database structures, hardware modules, hardware circuits, hardware chips, etc., to provide a thorough understanding of embodiments of the invention. One skilled in the relevant art can recognize, however, that the invention may be practiced without one or more of the specific details, or with other methods, components, materials, and so forth. In other instances, well-known structures, materials, or operations are not shown or described in detail to avoid obscuring aspects of the invention.


The schematic flow chart diagrams included herein are generally set forth as logical flow chart diagrams. As such, the depicted order and labeled steps are indicative of one embodiment of the presented method. Other steps and methods may be conceived that are equivalent in function, logic, or effect to one or more steps, or portions thereof, of the illustrated method. Additionally, the format and symbols employed are provided to explain the logical steps of the method and are understood not to limit the scope of the method. Although various arrow types and line types may be employed in the flow chart diagrams, and they are understood not to limit the scope of the corresponding method. Indeed some, arrows or other connectors may be used to indicate only the logical flow of the method. For instance, an arrow may indicate a waiting or monitoring period of unspecified duration between enumerated steps of the depicted method. Additionally, the order in which a particular method occurs may or may not strictly adhere to the order of the corresponding steps shown.


DEFINITIONS

Example definitions for some embodiments are now provided.


Address Resolution Protocol (ARP) is a communications protocol used for discovering the link layer address associated with a given Internet layer address, a critical function in the Internet protocol suite.


CE router (customer edge router) can be a router located on the customer premises that provides an Ethernet interface between the customer's LAN and the provider's core network. CE routers can be a component in an MPLS architecture.


Dynamic tunneling can refer to Multi Path tunnels (i.e. paths) that are established on-demand between two endpoints when there is VPN traffic to be sent between two Edges, and torn down after VPN traffic is completed.


Edge device can be a device that provides an entry point into enterprise or service provider core networks. An edge device can be software running in a virtual machine (VM) located in a branch office and/or customer premises.


Gateway can be a node (e.g. a router) on a computer network that serves as an access point to another network.


LAN is a local area network, a computer network covering a small local area.


Multiprotocol Label Switching (MPLS) is a type of data-carrying technique for high-performance telecommunications networks. MPLS directs data from one network node to the next based on short path labels rather than long network addresses, avoiding complex lookups in a routing table. The labels identify virtual links (paths) between distant nodes rather than endpoints. MPLS can encapsulate packets of various network protocols.


Orchestrator can include a software component that provides multi-tenant and role based centralized configuration management and visibility.


Split brain can refer to data or availability inconsistencies originating from the maintenance of two separate data sets with overlap in scope, either because of servers in a network design, or a failure condition based on servers not communicating and synchronizing their data to each other.


Tunneling protocol can allow a network user to access or provide a network service that the underlying network does not support or provide directly.


Wide area network (WAN) is a telecommunications network or computer network that extends over a large geographical distance.


Virtual private network (VPN) can extend a private network across a public network, such as the Internet. It can enable users to send and receive data across shared or public networks as if their computing devices were directly connected to the private network, and thus benefit from the functionality, security and management policies of the private network.


Additional example definitions are provided herein.


Examples Systems and Processes

It is noted that the following systems and methods are backwards compatible with existing HA deployments, thus requiring no changes to existing user interfaces.



FIG. 2 illustrates an example network topology 200 with a switch on a WAN side of a HA pair, according to some embodiments. It noted that an HA switch may no longer be required on the WAN side of the HA pair. Instead, a customer can connect one or more WAN links to each of the edge devices 212, 214 in the pair (e.g. via customer router 206 and/or modem 210). The devices can then synchronize their connected interface status. If the active edge device 212 or both edge devices 212, 214 have the same interface connected, then this can be initiated directly. If only a standby edge 214 has an interface connected, then connectivity can be enabled through the standby edge 214 by bridging the tunnels (e.g. tunnel B 222 to tunnel A 220) across the HA cable 218 and out the peer WAN link.


Now that each of the edge devices 212, 214 has its own individual set of WAN connections, a split-brain scenario can be easily determined by a gateway which has a full view of what is happening from the perspective of both edge devices 212, 214.


It is noted that each of the edge devices 212, 214 has its own individual set of WAN connections, a split-brain scenario can be determined by the Gateway. The Gateway can have a full view of the state of each of the edge devices 212, 214 from the perspective of both edge devices 212, 214.



FIG. 3 illustrates an example network topology 300, according to some embodiments. As shown, a high availability (HA) cable 318 can be disconnected. Each of the edge devices 312, 314 can establish a tunnel (e.g. tunnels A and B 320, 322) directly with a gateway system. The gateway system can determine that an edge is connected, active and passing traffic. The gateway system can open a tunnel to the second edge. The gateway system can signal to the edge to go to standby on the local LAN 324. If it is detected that the edge loses connectivity, then the gateway system can signal to the other edge to become the active edge. Network topology 300 can be used to implement process 1000 provided below.


A dynamic HA mode based on current WAN connectivity can be implemented. It is noted that a WAN switch is no longer required for HA deployments as links may be connected to individual edge devices. This can be accomplished by leveraging the link state which is already synchronized between the edge devices and, using a standby edge as a virtual switch to reach links attached to the standby edge only.



FIGS. 4 A-B illustrates a network topology 400 illustrating a first use case that covers edge device with shared links (e.g. backwards compatibility), according to some embodiments. More specifically, FIG. 4A illustrates an initial state and FIG. 4B illustrates an HA failover state. The first edge device 412 can have two links connected while the second edged device 414 only has one link connected. Accordingly, the first edge device 412 can be the preferred edge and by default the active edge. As the first edge device 412 has local connectivity to both links, both tunnels (e.g. tunnels A and B 420422) can be initiated directly from the first edge device 412. If there is an HA failover, the second edge device 414 can only have access to the link that is directly connected to it.



FIGS. 5 A-B illustrate network topology 500 illustrating a second use case that includes a scenario where there is only one link connected to each edge device (e.g. edge devices with unique links), according to some embodiments. More specifically, FIG. 5A illustrates an initial state and FIG. 5B illustrates an HA failover state. The first edge device 512 can have MPLS 502 connected and the second edge device 514 has the public internet 508 connected. Accordingly, the first edge device 512 the preferred edge and by default the active edge. As the first edge device 512 does not have local connectivity to the Internet link, that tunnel (e.g. tunnel B 522) can be initiated by proxying through the second edge device 514. If there is an HA failover, the second edge device 514 can only have access to a link with which it is directly connected.



FIG. 6 illustrates another example network topology 600, according to some embodiments. As noted in FIGS. 5 A-B, an edge device can be connected to two WAN links. A first WAN link can be connected locally, and a second WAN link can be proxied via the second edge device 614. For simplicity this can be presented as two public Internet links, however it could also be accomplished with hybrid links, as long as, a private WAN link can reach a gateway 604 (e.g. partner gateway deployment, SD-WAN service reachable enabled, etc.).



FIG. 7 illustrates another example network topology 700 with an active LAN, according to some embodiments. Gateway 704 can have a pre-existing connection to a first edge device 712. Edge device 712 can be the preferred active edge. Second edge device 714 (e.g. with the same logical ID) can be connected on a different WAN link. Gateway 704 can maintain tunnel B 722 as an active tunnel for future use. Gateway 704 can signal the second edge device 714 to go into standby mode on the LAN. This process can be used to logically prevent the split-brain scenario from occurring. LAN 718 can connect with edge devices 712, 714 via active LAN that responds to ARP 724. FIG. 8 illustrates yet another example network topology 800, according to some embodiments.



FIG. 9 illustrates an example communication exchange process 900, according to some embodiments. In step 902, gateway receives MP_INIT, but sees a first edge device is active and sets GO_STANDBY flag in MP_INIT_ACK. In step 904, edge receives GO_STANDBY flag in MP_INIT_ACK, goes back into standby mode on the LAN, but keeps the tunnel established by gateway. In step 906, the gateway receives confirmation that a second edge device is in standby mode. If first edge device tunnel(s) become unavailable, then the second edge device can be signaled to become active. Following the exchange, the split-brain scenario can have been cleared. For example, Gateway receives tunnel initiation request from 714 but sees that 712 is already active. The Gateway responds to the tunnel initiation request but sets a flag in the response indicating that the 714 device can go into a standby mode on the LAN.



FIG. 10 illustrates an example process for implementing dynamic HA mode based process 1000 on current WAN connectivity, according to some embodiments. In step 1002, the HA cable can be disconnected. In step 1004, the second edge device established a communicative network connection directly with a gateway system. In step 1006, the gateway determines that another first edge, device is active and passing network traffic to a LAN. In step 1008, the gateway opens a tunnel with second edge device and signals to second edge device to go on standby mode. In step 1010, if the first edge device loses connectivity then gateway signals to second edge device to take over as the active edge.



FIG. 11 depicts an exemplary computing system 1100 that can be configured to perform any one of the processes provided herein. In this context, computing system 1100 may include, for example a processor, memory, storage, and I/O devices (e.g., monitor, keyboard, disk drive, Internet connection, etc.). However, computing system 1100 may include circuitry or other specialized hardware for carrying out some or all aspects of the processes. In some operational settings, computing system 1100 may be configured as a system that includes one or more units, each of which is configured to carry out some aspects of the processes either in software, hardware, or some combination thereof.



FIG. 11 depicts computing system 1100 with a number of components that may be used to perform any of the processes described herein. The main system 1102 includes a motherboard 1104 having an I/O section 1106, one or e central processing units (CPU) 1108, and a memory section 1110, which may have a flash memory card 1112 related to it. The I/O section 1106 can be connected to a display 1114, a keyboard and/or other user input (not shown), a disk storage unit 1116, and a media drive unit 1118. The media drive unit 1118 can read/write a computer-readable medium 1120, which can contain programs 1122 and/or data. Computing system 1100 can include a web browser. Moreover, it is noted that computing system 1100 can be configured to include additional systems in order to fulfill various functionalities. Computing system 1100 can communicate with other computing devices based on various computer communication protocols such a Wi-Fi Bluetooth® (and/or other standards for exchanging data over short distances includes those using short-wavelength radio transmissions), USB, Ethernet, cellular, an ultrasonic local area communication protocol, etc.



FIG. 12 illustrates an example process 1200 for providing dynamic HA mode based on current WAN connectivity, according to some embodiments. In step 1202, process 1200 can synchronize the state of links that are connected to each individual edge. In step 1204, if the link is connected to first edge, device only (and/or both edges in some example embodiments), then process 1200 can initiate tunnels locally. In step 1206, if a link is connected to second edge device and not first, then process 1200 can initiate tunnels via a proxy over HA cable. Dynamic HA Mode election can be used to determine whether there is a WAN Switch providing connectivity to the same link via both edge devices or separate links connected to independent edge devices, and then automatically initiating tunnels locally or via proxy based on auto-detecting this.


CONCLUSION

Although the present embodiments have been described with reference to specific example embodiments, various modifications and changes can be made to these embodiments without departing from the broader spirit and scope of the various embodiments. For example, the various devices, modules, etc. described herein can be enabled and operated using hardware circuitry, firmware, software or any combination of hardware, firmware, and software (e.g., embodied in a machine-readable medium).


In addition, it can be appreciated that the various operations, processes, and methods disclosed herein can be embodied in a machine-readable medium and/or a machine accessible medium compatible with a data processing system (e.g., a computer system), and can be performed in any order (e.g., including using means for achieving the various operations). Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense. In some embodiments, the machine-readable medium can be a non-transitory form of machine-readable medium.

Claims
  • 1. For a first local area network (LAN) that comprises first and second edge devices connected to each other in the first LAN through a high availability (HA) link that allows the devices to exchange information so that one device operates as an active device and the other device operates as standby device, a method to connect the first LAN to an external network, the method comprising: at a gateway operating in the external network and outside of the first LAN: establishing direct tunnel communications with the first and second edge devices in the first LAN and a third edge device in a second LAN in order to define a wide area network (WAN) connecting the first and second LANs;determining that the first edge device is active and passing network traffic between the first LAN and the external network;based on the determination that the first edge device is active and passing network traffic, signaling to the second edge device to go into a standby mode;receiving a confirmation that the second edge device is in standby mode before detecting that the first edge device loses connectivity with the gateway;detecting through the direct tunnel communications that the first edge device loses connectivity with the gateway; andbased on the detection that the first edge device loses connectivity with the gateway, signaling to the second edge device to take over as the active edge device to pass network traffic between the first LAN and the external network.
  • 2. The method of claim 1, wherein the gateway system connects to the first edge device, the second edge device, and the third edge device via WAN links.
  • 3. The method of claim 2, wherein the WAN links are at least one of a public WAN link and a private WAN link that can reach the gateway.
  • 4. The method of claim 3, wherein the public WAN comprises the Internet and the private WAN comprises an MPLS network.
  • 5. The method of claim 1, wherein the gateway signals the second edge device to go into the standby mode to prevent a split-brain scenario in case the HA link goes down.
  • 6. The method of claim 5 further comprising, before signaling the second edge device to go into the standby mode, receiving a request from the second edge device to become the active device, wherein the signaling to the second edge device is based on the determination that the first edge device is currently the active device.
  • 7. The method of claim 6, wherein signaling the second edge device to go into the standby mode comprises setting a flag in a message sent to the second edge device in response to the request from the second edge device.
  • 8. The method of claim 1, wherein the second edge device has a same logical identifier as the first edge device.
  • 9. The method of claim 1, wherein the established direct tunnel communications are for exchanging messages with the edge devices including messages determining the availability of the edge devices.
  • 10. A non-transitory machine readable medium storing a program to connect a first local area network (LAN) to an external network through first and second edge devices that operate in the LAN and are connected to each other through a high availability (HA) link that allows the devices to exchange information so that one device operates as an active device and the other device operates as standby device, the program for execution outside of the first LAN in the external network and comprising sets of instructions for: establishing direct tunnel communications with the first and second edge devices in the first LAN and a third edge device in a second LAN in order to define a wide area network (WAN) connecting the first and second LANs;determining that the first edge device is active and passing network traffic between the first LAN and the second LAN through the gateway;based on determining that the first edge device is active and passing network traffic, signaling to the second edge device to go into a standby mode;receiving a confirmation that the second edge device is in standby mode before detecting that the first edge device loses connectivity with the gateway;detecting through the direct tunnel communications that the first edge device loses connectivity with the gateway; andbased on detecting that the first edge device loses connectivity with the gateway, signaling to the second edge device to take over as the active edge device to pass network traffic between the first LAN and the second LAN through the gateway.
  • 11. The non-transitory machine readable medium of claim 10, wherein the gateway system connects to the first edge device, the second edge device, and the third edge device via wide area network (WAN) links.
  • 12. The non-transitory machine readable medium of claim 11, wherein the WAN links are at least one of a public WAN link and a private WAN link that can reach the gateway.
  • 13. The non-transitory machine readable medium of claim 12, wherein the public WAN comprises the Internet and the private WAN comprises an MPLS network.
  • 14. The non-transitory machine readable medium of claim 10, wherein the gateway signals the second edge device to go into the standby mode to prevent a split-brain scenario in case the HA link goes down.
  • 15. The non-transitory machine readable medium of claim 14, wherein the program further comprises sets of instructions for, before signaling the second edge device to go into the standby mode, receiving a request from the second edge device to become the active device, wherein the signaling to the second edge device is based on the determination that the first edge device is currently the active device.
  • 16. The non-transitory machine readable medium of claim 15, wherein the set of instructions for signaling the second edge device to go into the standby mode comprises a set of instructions for setting a flag in a message sent to the second edge device in response to the request from the second edge device.
  • 17. The non-transitory machine readable medium of claim 10, wherein the second edge device has a same logical identifier as the first edge device.
  • 18. The non-transitory machine readable medium of claim 10, wherein the established direct tunnel communications are for exchanging messages with the edge devices including messages determining the availability of the edge devices.
CLAIM OF PRIORITY

This application claims priority to U.S. Provisional Patent Application No. 62/583,733, titled METHOD AND SYSTEM OF A HIGH AVAILABILITY ENHANCEMENTS TO A COMPUTER NETWORK filed on 9 Nov. 2017. This application is hereby incorporated by reference in its entirety.

US Referenced Citations (483)
Number Name Date Kind
5652751 Sharony Jul 1997 A
5909553 Campbell et al. Jun 1999 A
6154465 Pickett Nov 2000 A
6157648 Voit et al. Dec 2000 A
6201810 Masuda et al. Mar 2001 B1
6363378 Conklin et al. Mar 2002 B1
6445682 Weitz Sep 2002 B1
6744775 Beshai et al. Jun 2004 B1
6976087 Westfall et al. Dec 2005 B1
7003481 Banka et al. Feb 2006 B2
7280476 Anderson Oct 2007 B2
7313629 Nucci et al. Dec 2007 B1
7320017 Kurapati Jan 2008 B1
7581022 Griffin et al. Aug 2009 B1
7680925 Sathyanarayana et al. Mar 2010 B2
7681236 Tamura et al. Mar 2010 B2
7962458 Holenstein Jun 2011 B2
8094575 Vadlakonda et al. Jan 2012 B1
8094659 Arad Jan 2012 B1
8111692 Ray Feb 2012 B2
8141156 Mao et al. Mar 2012 B1
8224971 Miller et al. Jul 2012 B1
8228928 Parandekar et al. Jul 2012 B2
8243589 Trost Aug 2012 B1
8259566 Chen et al. Sep 2012 B2
8274891 Averi et al. Sep 2012 B2
8301749 Finklestein et al. Oct 2012 B1
8385227 Downey Feb 2013 B1
8566452 Goodwin et al. Oct 2013 B1
8630291 Shaffer et al. Jan 2014 B2
8661295 Khanna et al. Feb 2014 B1
8724456 Hong May 2014 B1
8724503 Johnsson et al. May 2014 B2
8745177 Kazerani et al. Jun 2014 B1
8799504 Capone et al. Aug 2014 B2
8804745 Sinn Aug 2014 B1
8806482 Nagargadde et al. Aug 2014 B1
8856339 Mestery et al. Oct 2014 B2
8964548 Keralapura et al. Feb 2015 B1
8989199 Sella et al. Mar 2015 B1
9009217 Nagargadde et al. Apr 2015 B1
9055000 Ghosh et al. Jun 2015 B1
9071607 Twitchell, Jr. Jun 2015 B2
9075771 Gawali Jul 2015 B1
9137334 Zhou Sep 2015 B2
9154327 Marino et al. Oct 2015 B1
9306949 Richard et al. Apr 2016 B1
9336040 Dong May 2016 B2
9354983 Yenamandra et al. May 2016 B1
9356943 Lopilato et al. May 2016 B1
9379981 Zhou et al. Jun 2016 B1
9413724 Xu Aug 2016 B2
9419878 Hsiao et al. Aug 2016 B2
9432245 Sorenson et al. Aug 2016 B1
9438566 Zhang Sep 2016 B2
9450817 Bahadur et al. Sep 2016 B1
9450852 Chen Sep 2016 B1
9462010 Stevenson Oct 2016 B1
9467478 Khan et al. Oct 2016 B1
9485163 Fries Nov 2016 B1
9521067 Michael et al. Dec 2016 B2
9525564 Lee Dec 2016 B2
9602389 Maveli et al. Mar 2017 B1
9608962 Chang Mar 2017 B1
9621460 Mehta et al. Apr 2017 B2
9641551 Kariyanahalli May 2017 B1
9665432 Kruse May 2017 B2
9686127 Ramachandran et al. Jun 2017 B2
9715401 Devine et al. Jul 2017 B2
9722815 Mukundan et al. Aug 2017 B2
9747249 Cherian et al. Aug 2017 B2
9755965 Yadav et al. Sep 2017 B1
9787559 Schroeder Oct 2017 B1
9807004 Koley et al. Oct 2017 B2
9819565 Djukic et al. Nov 2017 B2
9825822 Holland Nov 2017 B1
9825911 Brandwine Nov 2017 B1
9825992 Xu Nov 2017 B2
9832128 Ashner et al. Nov 2017 B1
9906401 Rao Feb 2018 B1
9930011 Clemons, Jr. et al. Mar 2018 B1
9935829 Miller et al. Apr 2018 B1
9942787 Tillotson Apr 2018 B1
10038601 Becker et al. Jul 2018 B1
10057183 Salle et al. Aug 2018 B2
10057294 Xu Aug 2018 B2
10135789 Mayya et al. Nov 2018 B2
10142226 Wu et al. Nov 2018 B1
10178032 Freitas Jan 2019 B1
10187289 Chen et al. Jan 2019 B1
10229017 Zou Mar 2019 B1
10237123 Dubey Mar 2019 B2
10250498 Bales et al. Apr 2019 B1
10263832 Ghosh Apr 2019 B1
10320664 Nainar et al. Jun 2019 B2
10320691 Matthews et al. Jun 2019 B1
10326830 Singh Jun 2019 B1
10348767 Lee et al. Jul 2019 B1
10425382 Mayya et al. Sep 2019 B2
10454708 Mibu Oct 2019 B2
10454714 Mayya et al. Oct 2019 B2
10498652 Mayya et al. Dec 2019 B2
10511546 Singarayan et al. Dec 2019 B2
10523539 Mayya et al. Dec 2019 B2
10554538 Spohn et al. Feb 2020 B2
10560431 Chen et al. Feb 2020 B1
10565464 Han et al. Feb 2020 B2
10574528 Mayya et al. Feb 2020 B2
10594516 Cidon et al. Mar 2020 B2
10594659 El-Moussa et al. Mar 2020 B2
10608844 Cidon et al. Mar 2020 B2
10637889 Ermagan et al. Apr 2020 B2
10666460 Cidon et al. May 2020 B2
20020198840 Banka et al. Dec 2002 A1
20030088697 Matsuhira May 2003 A1
20030112808 Solomon Jun 2003 A1
20030126468 Markham Jul 2003 A1
20030161313 Jinmei et al. Aug 2003 A1
20030189919 Gupta et al. Oct 2003 A1
20030202506 Perkins et al. Oct 2003 A1
20030219030 Gubbi Nov 2003 A1
20040059831 Chu et al. Mar 2004 A1
20040068668 Lor et al. Apr 2004 A1
20040165601 Liu et al. Aug 2004 A1
20040224771 Chen et al. Nov 2004 A1
20050078690 DeLangis Apr 2005 A1
20050154790 Nagata et al. Jul 2005 A1
20050172161 Cruz Aug 2005 A1
20050265255 Kodialam et al. Dec 2005 A1
20060002291 Alicherry et al. Jan 2006 A1
20060114838 Mandavilli et al. Jun 2006 A1
20060171365 Borella Aug 2006 A1
20060182034 Klinker et al. Aug 2006 A1
20060182035 Vasseur Aug 2006 A1
20060193247 Naseh et al. Aug 2006 A1
20060193252 Naseh et al. Aug 2006 A1
20070064604 Chen et al. Mar 2007 A1
20070064702 Bates et al. Mar 2007 A1
20070091794 Filsfils et al. Apr 2007 A1
20070121486 Guichard et al. May 2007 A1
20070130325 Lesser Jun 2007 A1
20070177511 Das et al. Aug 2007 A1
20070237081 Kodialam et al. Oct 2007 A1
20070260746 Mirtorabi et al. Nov 2007 A1
20070268882 Breslau et al. Nov 2007 A1
20080002670 Bugenhagen et al. Jan 2008 A1
20080049621 McGuire et al. Feb 2008 A1
20080080509 Khanna et al. Apr 2008 A1
20080095187 Jung et al. Apr 2008 A1
20080144532 Chamarajanagar Jun 2008 A1
20080219276 Shah Sep 2008 A1
20080240121 Xiong et al. Oct 2008 A1
20090013210 McIntosh et al. Jan 2009 A1
20090125617 Klessig et al. May 2009 A1
20090154463 Hines et al. Jun 2009 A1
20090247204 Sennett et al. Oct 2009 A1
20090276657 Wetmore Nov 2009 A1
20090303880 Maltz et al. Dec 2009 A1
20100008361 Guichard et al. Jan 2010 A1
20100017802 Lojewski Jan 2010 A1
20100046532 Okita Feb 2010 A1
20100088440 Banks Apr 2010 A1
20100091823 Retana et al. Apr 2010 A1
20100107162 Edwards et al. Apr 2010 A1
20100118727 Draves et al. May 2010 A1
20100191884 Holenstein Jul 2010 A1
20100223621 Joshi et al. Sep 2010 A1
20100309841 Conte Dec 2010 A1
20100309912 Mehta et al. Dec 2010 A1
20100322255 Hao et al. Dec 2010 A1
20100332657 Elyashev et al. Dec 2010 A1
20110007752 Silva et al. Jan 2011 A1
20110032939 Nozaki et al. Feb 2011 A1
20110040814 Higgins Feb 2011 A1
20110075674 Li et al. Mar 2011 A1
20110107139 Middlecamp May 2011 A1
20110110370 Moreno et al. May 2011 A1
20110141877 Xu et al. Jun 2011 A1
20110142041 Imai Jun 2011 A1
20110153909 Dong Jun 2011 A1
20120008630 Ould-Brahim Jan 2012 A1
20120027013 Napierala Feb 2012 A1
20120136697 Peles et al. May 2012 A1
20120157068 Eichen et al. Jun 2012 A1
20120173694 Yan et al. Jul 2012 A1
20120173919 Patel Jul 2012 A1
20120221955 Raleigh et al. Aug 2012 A1
20120250682 Vincent et al. Oct 2012 A1
20120250686 Vincent et al. Oct 2012 A1
20120300615 Kempf et al. Nov 2012 A1
20120317291 Wolfe Dec 2012 A1
20130019005 Hui et al. Jan 2013 A1
20130021968 Reznik et al. Jan 2013 A1
20130044764 Casado et al. Feb 2013 A1
20130051399 Zhang et al. Feb 2013 A1
20130054763 Merwe et al. Feb 2013 A1
20130086267 Gelenbe et al. Apr 2013 A1
20130103834 Dzerve et al. Apr 2013 A1
20130124718 Griffith May 2013 A1
20130124911 Griffith May 2013 A1
20130124912 Griffith May 2013 A1
20130128889 Mathur et al. May 2013 A1
20130142201 Kim et al. Jun 2013 A1
20130173788 Song Jul 2013 A1
20130182712 Aguayo et al. Jul 2013 A1
20130191688 Agarwal et al. Jul 2013 A1
20130238782 Zhao et al. Sep 2013 A1
20130242718 Zhang Sep 2013 A1
20130254599 Katkar Sep 2013 A1
20130258839 Wang Oct 2013 A1
20130283364 Chang et al. Oct 2013 A1
20130286846 Atlas et al. Oct 2013 A1
20130297770 Zhang Nov 2013 A1
20130301642 Radhakrishnan et al. Nov 2013 A1
20130308444 Sem-Jacobsen et al. Nov 2013 A1
20130315243 Huang et al. Nov 2013 A1
20130329548 Nakil et al. Dec 2013 A1
20130329601 Yin et al. Dec 2013 A1
20130329734 Chesla et al. Dec 2013 A1
20130346470 Obstfeld et al. Dec 2013 A1
20140019604 Twitchell, Jr. Jan 2014 A1
20140019750 Dodgson et al. Jan 2014 A1
20140040975 Raleigh et al. Feb 2014 A1
20140064283 Balus et al. Mar 2014 A1
20140092907 Sridhar et al. Apr 2014 A1
20140108665 Arora et al. Apr 2014 A1
20140112171 Pasdar Apr 2014 A1
20140115584 Mudigonda et al. Apr 2014 A1
20140126418 Brendel et al. May 2014 A1
20140156818 Hunt Jun 2014 A1
20140156823 Liu et al. Jun 2014 A1
20140164560 Ko et al. Jun 2014 A1
20140164617 Jalan et al. Jun 2014 A1
20140173113 Vemuri Jun 2014 A1
20140173331 Martin Jun 2014 A1
20140208317 Nakagawa Jul 2014 A1
20140219135 Li et al. Aug 2014 A1
20140223507 Xu Aug 2014 A1
20140244851 Lee Aug 2014 A1
20140258535 Zhang Sep 2014 A1
20140269690 Tu Sep 2014 A1
20140279862 Dietz et al. Sep 2014 A1
20140280499 Basavaiah et al. Sep 2014 A1
20140317440 Biermayr Oct 2014 A1
20140337500 Lee Nov 2014 A1
20140341109 Cartmell et al. Nov 2014 A1
20140372582 Ghanwani et al. Dec 2014 A1
20150016249 Mukundan et al. Jan 2015 A1
20150029864 Raileanu et al. Jan 2015 A1
20150046572 Cheng et al. Feb 2015 A1
20150052247 Threefoot et al. Feb 2015 A1
20150052517 Raghu et al. Feb 2015 A1
20150056960 Egner et al. Feb 2015 A1
20150058917 Xu Feb 2015 A1
20150088942 Shah Mar 2015 A1
20150089628 Lang Mar 2015 A1
20150092603 Aguayo et al. Apr 2015 A1
20150096011 Watt Apr 2015 A1
20150134777 Onoue May 2015 A1
20150139238 Pourzandi et al. May 2015 A1
20150146539 Mehta et al. May 2015 A1
20150163152 Li Jun 2015 A1
20150169340 Haddad et al. Jun 2015 A1
20150172121 Farkas Jun 2015 A1
20150172169 DeCusatis et al. Jun 2015 A1
20150188823 Williams et al. Jul 2015 A1
20150189009 Bemmel Jul 2015 A1
20150195178 Bhattacharya et al. Jul 2015 A1
20150201036 Nishiki Jul 2015 A1
20150222543 Song Aug 2015 A1
20150222638 Morley Aug 2015 A1
20150236945 Michael et al. Aug 2015 A1
20150236962 Veres et al. Aug 2015 A1
20150244617 Nakil et al. Aug 2015 A1
20150249644 Xu Sep 2015 A1
20150271056 Chunduri et al. Sep 2015 A1
20150271104 Chikkamath et al. Sep 2015 A1
20150271303 Neginhal et al. Sep 2015 A1
20150312142 Barabash et al. Oct 2015 A1
20150334696 Gu et al. Nov 2015 A1
20150349978 Wu et al. Dec 2015 A1
20150350907 Timariu et al. Dec 2015 A1
20150363733 Brown Dec 2015 A1
20150372943 Hasan et al. Dec 2015 A1
20150372982 Herle et al. Dec 2015 A1
20150381407 Wang Dec 2015 A1
20150381493 Bansal et al. Dec 2015 A1
20160035183 Buchholz et al. Feb 2016 A1
20160036924 Koppolu Feb 2016 A1
20160037434 Gopal et al. Feb 2016 A1
20160072669 Saavedra Mar 2016 A1
20160080502 Yadav et al. Mar 2016 A1
20160105353 Cociglio Apr 2016 A1
20160105392 Thakkar et al. Apr 2016 A1
20160105471 Nunes et al. Apr 2016 A1
20160134528 Lin et al. May 2016 A1
20160134591 Liao et al. May 2016 A1
20160142373 Ossipov May 2016 A1
20160164832 Bellagamba et al. Jun 2016 A1
20160164914 Madhav et al. Jun 2016 A1
20160173338 Wolting Jun 2016 A1
20160191363 Haraszti Jun 2016 A1
20160191374 Singh Jun 2016 A1
20160192403 Gupta et al. Jun 2016 A1
20160197834 Luft Jul 2016 A1
20160197835 Luft Jul 2016 A1
20160198003 Luft Jul 2016 A1
20160210209 Verkaik Jul 2016 A1
20160218947 Hughes et al. Jul 2016 A1
20160255169 Kovvuri et al. Sep 2016 A1
20160261493 Li Sep 2016 A1
20160261495 Xia et al. Sep 2016 A1
20160261639 Xu Sep 2016 A1
20160269926 Sundaram Sep 2016 A1
20160308762 Teng et al. Oct 2016 A1
20160315912 Mayya et al. Oct 2016 A1
20160323377 Einkauf et al. Nov 2016 A1
20160352588 Subbarayan et al. Dec 2016 A1
20160359738 Sullenberger et al. Dec 2016 A1
20160366187 Kamble Dec 2016 A1
20160380886 Blair et al. Dec 2016 A1
20160380906 Hodique et al. Dec 2016 A1
20170005986 Bansal et al. Jan 2017 A1
20170012870 Blair et al. Jan 2017 A1
20170019428 Cohn Jan 2017 A1
20170026283 Williams et al. Jan 2017 A1
20170026355 Mathaiyan et al. Jan 2017 A1
20170034046 Cai et al. Feb 2017 A1
20170034129 Sawant et al. Feb 2017 A1
20170053258 Carney et al. Feb 2017 A1
20170055131 Kong et al. Feb 2017 A1
20170063674 Maskalik et al. Mar 2017 A1
20170063782 Jain et al. Mar 2017 A1
20170063794 Jain et al. Mar 2017 A1
20170064005 Lee Mar 2017 A1
20170093625 Pera et al. Mar 2017 A1
20170097841 Chang et al. Apr 2017 A1
20170104755 Arregoces et al. Apr 2017 A1
20170118173 Arramreddy et al. Apr 2017 A1
20170123939 Maheshwari May 2017 A1
20170126564 Mayya et al. May 2017 A1
20170134186 Mukundan et al. May 2017 A1
20170134520 Abbasi et al. May 2017 A1
20170139789 Fries May 2017 A1
20170155557 Desai et al. Jun 2017 A1
20170163473 Sadana Jun 2017 A1
20170171310 Gardner Jun 2017 A1
20170181210 Nadella et al. Jun 2017 A1
20170195169 Mills Jul 2017 A1
20170201585 Doraiswamy et al. Jul 2017 A1
20170207976 Rovner Jul 2017 A1
20170214545 Cheng et al. Jul 2017 A1
20170214701 Hasan Jul 2017 A1
20170223117 Messerli et al. Aug 2017 A1
20170237710 Mayya et al. Aug 2017 A1
20170257260 Govindan et al. Sep 2017 A1
20170257309 Appanna Sep 2017 A1
20170264496 Ao et al. Sep 2017 A1
20170279717 Bethers et al. Sep 2017 A1
20170279803 Desai et al. Sep 2017 A1
20170289002 Ganguli et al. Oct 2017 A1
20170302565 Ghobadi et al. Oct 2017 A1
20170310641 Jiang et al. Oct 2017 A1
20170310691 Vasseur et al. Oct 2017 A1
20170317974 Masurekar et al. Nov 2017 A1
20170337086 Zhu et al. Nov 2017 A1
20170339054 Yadav et al. Nov 2017 A1
20170339070 Chang et al. Nov 2017 A1
20170364419 Lo Dec 2017 A1
20170366445 Nemirovsky et al. Dec 2017 A1
20170374174 Evens et al. Dec 2017 A1
20180006995 Bickhart et al. Jan 2018 A1
20180007123 Cheng et al. Jan 2018 A1
20180014051 Phillips et al. Jan 2018 A1
20180034668 Mayya et al. Feb 2018 A1
20180041425 Zhang Feb 2018 A1
20180062914 Boutros et al. Mar 2018 A1
20180062917 Chandrashekhar et al. Mar 2018 A1
20180063036 Chandrashekhar et al. Mar 2018 A1
20180063193 Chandrashekhar et al. Mar 2018 A1
20180063233 Park Mar 2018 A1
20180069924 Tumuluru et al. Mar 2018 A1
20180074909 Bishop Mar 2018 A1
20180077081 Lauer et al. Mar 2018 A1
20180077202 Xu Mar 2018 A1
20180084081 Kuchibhotla et al. Mar 2018 A1
20180097725 Wood et al. Apr 2018 A1
20180114569 Strachan et al. Apr 2018 A1
20180131615 Zhang May 2018 A1
20180131720 Hobson et al. May 2018 A1
20180145899 Rao May 2018 A1
20180159856 Gujarathi Jun 2018 A1
20180167378 Kostyukov et al. Jun 2018 A1
20180176073 Dubey Jun 2018 A1
20180176082 Katz Jun 2018 A1
20180176130 Banerjee et al. Jun 2018 A1
20180213472 Ishii et al. Jul 2018 A1
20180219765 Michael et al. Aug 2018 A1
20180219766 Michael et al. Aug 2018 A1
20180234300 Mayya et al. Aug 2018 A1
20180260125 Botes Sep 2018 A1
20180262468 Kumar et al. Sep 2018 A1
20180270104 Zheng et al. Sep 2018 A1
20180278541 Wu et al. Sep 2018 A1
20180295529 Jen et al. Oct 2018 A1
20180302286 Mayya et al. Oct 2018 A1
20180302321 Manthiramoorthy et al. Oct 2018 A1
20180351855 Sood Dec 2018 A1
20180351862 Jeganathan et al. Dec 2018 A1
20180351863 Vairavakkalai et al. Dec 2018 A1
20180351882 Jeganathan et al. Dec 2018 A1
20180373558 Chang et al. Dec 2018 A1
20180375744 Mayya et al. Dec 2018 A1
20180375824 Mayya et al. Dec 2018 A1
20180375967 Pithawala et al. Dec 2018 A1
20190014038 Ritchie Jan 2019 A1
20190020588 Twitchell, Jr. Jan 2019 A1
20190020627 Yuan Jan 2019 A1
20190028552 Johnson et al. Jan 2019 A1
20190036810 Michael et al. Jan 2019 A1
20190046056 Khachaturian et al. Feb 2019 A1
20190058657 Chunduri et al. Feb 2019 A1
20190058709 Kempf et al. Feb 2019 A1
20190068470 Mirsky Feb 2019 A1
20190068493 Ram et al. Feb 2019 A1
20190068500 Hira Feb 2019 A1
20190075083 Mayya et al. Mar 2019 A1
20190103990 Cidon et al. Apr 2019 A1
20190103991 Cidon et al. Apr 2019 A1
20190103992 Cidon et al. Apr 2019 A1
20190103993 Cidon et al. Apr 2019 A1
20190104035 Cidon et al. Apr 2019 A1
20190104049 Cidon et al. Apr 2019 A1
20190104050 Cidon et al. Apr 2019 A1
20190104051 Cidon et al. Apr 2019 A1
20190104052 Cidon et al. Apr 2019 A1
20190104053 Cidon et al. Apr 2019 A1
20190104063 Cidon et al. Apr 2019 A1
20190104064 Cidon et al. Apr 2019 A1
20190104109 Cidon et al. Apr 2019 A1
20190104111 Cidon et al. Apr 2019 A1
20190104413 Cidon et al. Apr 2019 A1
20190140890 Mayya et al. May 2019 A1
20190158605 Markuze et al. May 2019 A1
20190199539 Deng et al. Jun 2019 A1
20190220703 Prakash et al. Jul 2019 A1
20190238364 Boutros et al. Aug 2019 A1
20190238446 Barzik et al. Aug 2019 A1
20190238449 Michael et al. Aug 2019 A1
20190238450 Michael et al. Aug 2019 A1
20190268421 Markuze et al. Aug 2019 A1
20190280962 Michael et al. Sep 2019 A1
20190280963 Michael et al. Sep 2019 A1
20190280964 Michael et al. Sep 2019 A1
20190313907 Khachaturian et al. Oct 2019 A1
20190319847 Nahar et al. Oct 2019 A1
20190342219 Liu et al. Nov 2019 A1
20190356736 Narayanaswamy et al. Nov 2019 A1
20190364099 Thakkar et al. Nov 2019 A1
20190372888 Michael et al. Dec 2019 A1
20190372889 Michael et al. Dec 2019 A1
20190372890 Michael et al. Dec 2019 A1
20200014615 Michael et al. Jan 2020 A1
20200014616 Michael et al. Jan 2020 A1
20200014661 Mayya et al. Jan 2020 A1
20200021514 Michael et al. Jan 2020 A1
20200021515 Michael et al. Jan 2020 A1
20200036624 Michael et al. Jan 2020 A1
20200059459 Abraham et al. Feb 2020 A1
20200092207 Sipra et al. Mar 2020 A1
20200099659 Cometto et al. Mar 2020 A1
20200106696 Michael et al. Apr 2020 A1
20200106706 Mayya et al. Apr 2020 A1
20200119952 Mayya et al. Apr 2020 A1
20200127905 Mayya et al. Apr 2020 A1
20200153736 Liebherr et al. May 2020 A1
20200218558 Sreenath et al. Jul 2020 A1
20200235990 Janakiraman et al. Jul 2020 A1
20200236046 Jain et al. Jul 2020 A1
20200244721 S et al. Jul 2020 A1
20200267184 Vera-Schockner Aug 2020 A1
20200280587 Janakiraman et al. Sep 2020 A1
20200296026 Michael et al. Sep 2020 A1
Foreign Referenced Citations (10)
Number Date Country
1912381 Apr 2008 EP
3041178 Jul 2016 EP
3509256 Jul 2019 EP
03073701 Sep 2003 WO
2012167184 Dec 2012 WO
2017083975 May 2017 WO
2019070611 Apr 2019 WO
2019094522 May 2019 WO
2020018704 Jan 2020 WO
2020101922 May 2020 WO
Non-Patent Literature Citations (21)
Entry
Non-Published Commonly owned International Patent Application PCT/US2018/059708, filed Nov. 7, 2018, 28 pages, Nicira, Inc.
Non-Published commonly Owned U.S. Appl. No. 15/701,115, filed Sep. 11, 2017, 21 pages, Nicira, Inc.
Non-Published commonly Owned U.S. Appl. No. 15/784,404, filed Oct. 16, 2017, 21 pages, Nicira, Inc.
Non-Published commonly Owned U.S. Appl. No. 15/838,355, filed Dec. 12, 2017, 30 pages, Nicira, Inc.
Petition for Post-Grant Review of U.S. Pat. No. 9,722,815, filed May 1, 2018, 106 pages.
Mudigonda, Jayaram, et al., “NetLord: A Scalable Multi-Tenant Network Architecture for Virtualized Datacenters,” Proceedings of the ACM SIGCOMM 2011 Conference, Aug. 15-19, 2011, 12 pages, ACM, Toronto, Canada.
PCT International Search Report and Written Opinion of Commonly Owned International Patent Application PCT/US2018/059708, dated Apr. 4, 2019, 19 pages, International Searching Authority—EPO.
PCT Invitation to Pay Additional Fees for Commonly Owned International Patent Application PCT/US2018/059708, dated Feb. 13, 2019, 14 pages, International Searching Authority (EPO).
Non-published Commonly Owned U.S. Appl. No. 16/656,555, filed Oct. 17, 2019, 40 pages, Nicira, Inc.
Non-published Commonly Owned U.S. Appl. No. 16/699,719, filed Dec. 1, 2019, 42 pages, Nicira, Inc.
Non-published Commonly Owned U.S. Appl. No. 16/724,154, filed Dec. 20, 2019, 27 pages, Nicira, Inc.
Non-Published Commonly Owned U.S. Appl. No. 16/785,628, filed Feb. 9, 2020, 44 pages, Nicira, Inc.
Huang, Cancan, et al., “Modification of Q.SD-WAN,” Rapporteur Group Meeting—Doc, Study Period 2017-2020, Q4/11-DOC1 (190410), Study Group 11, Apr. 10, 2019, 19 pages, International Telecommunication Union, Geneva, Switzerland.
Del Piccolo, Valentin, et al., “A Survey of Network Isolation Solutions for Multi-Tenant Data Centers,” IEEE Communications Society, Apr. 20, 2016, vol. 18, No. 4, 37 pages, IEEE.
Fortz, Bernard, et al., “Internet Traffic Engineering by Optimizing OSPF Weights,” Proceedings IEEE INFOCOM 2000, Conference on Computer Communications, Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies, Mar. 26-30, 2000, 11 pages, IEEE, Tel Aviv, Israel, Israel.
Francois, Frederic, et al., “Optimizing Secure SDN-enabled Inter-Data Centre Overlay Networks through Cognitive Routing,” 2016 IEEE 24th International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems (MASCOTS), Sep. 19-21, 2016, 10 pages, IEEE, London, UK.
Michael, Nithin, et al., “HALO: Hop-by-Hop Adaptive Link-State Optimal Routing,” IEEE/ACM Transactions on Networking, Dec. 2015, 14 pages, vol. 23, No. 6, IEEE.
Mishra, Mayank, et al., “Managing Network Reservation for Tenants in Oversubscribed Clouds,” 2013 IEEE 21st International Symposium on Modelling, Analysis and Simulation of Computer and Telecommunication Systems, Aug. 14-16, 2013, 10 pages, IEEE, San Francisco, CA, USA.
Ray, Saikat, et al., “Always Acyclic Distributed Path Computation,” University of Pennsylvania Department of Electrical and Systems Engineering Technical Report, May 2008, 16 pages, University of Pennsylvania ScholarlyCommons.
Webb, Kevin C., et al., “Blender: Upgrading Tenant-Based Data Center Networking,” 2014 ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS), Oct. 20-21, 2014, 11 pages, IEEE, Marina del Rey, CA, USA.
Yap, Kok-Kiong, et al., “Taking the Edge off with Espresso: Scale, Reliability and Programmability for Global Internet Peering,” SIGCOMM '17: Proceedings of the Conference of the ACM Special Interest Group on Data Communication, Aug. 21-25, 2017, 14 pages, Los Angeles, CA.
Related Publications (1)
Number Date Country
20190140889 A1 May 2019 US
Provisional Applications (1)
Number Date Country
62583733 Nov 2017 US