WO2022186984A1 - Passing application network metadata to network controllers using service registries - Google Patents
Passing application network metadata to network controllers using service registries Download PDFInfo
- Publication number
- WO2022186984A1 WO2022186984A1 PCT/US2022/016607 US2022016607W WO2022186984A1 WO 2022186984 A1 WO2022186984 A1 WO 2022186984A1 US 2022016607 W US2022016607 W US 2022016607W WO 2022186984 A1 WO2022186984 A1 WO 2022186984A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- network
- application
- traffic
- controller
- metadata
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 46
- 230000004044 response Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims 2
- 238000005516 engineering process Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000001152 differential interference contrast microscopy Methods 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000035755 proliferation Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 239000003990 capacitor Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
- H04L45/306—Route determination based on the nature of the carried application
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/64—Routing or path finding of packets in data switching networks using an overlay routing layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/76—Routing in software-defined topologies, e.g. routing between virtual machines
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
Definitions
- the present disclosure relates generally to various techniques for, among other things, using a service registry to pass application network metadata from a scalable application service platform to a network controller.
- Wide area network (WAN) deployments can provide users with connectivity to services hosted on resources remote to the users.
- routing policies are usually developed by a network administrator who has visibility of the network, as well as the services that the network is providing connectivity to. In this way, different routing policies can be developed that are tailored to the specific services the network is providing connectivity to.
- routing policies can be developed that are tailored to the specific services the network is providing connectivity to.
- due to the proliferation in use of scalable application service platforms developing routing policy for these networks can be challenging.
- FIGS. 1A-1C are system-architecture diagrams illustrating an example architecture for performing some of the techniques described herein for obtaining application network metadata from a service registry to derive network routing policies.
- FIG. 2 is a flow diagram illustrating an example method for obtaining application network metadata from a service registry to derive network routing policies.
- FIG. 3 is a computer architecture diagram showing an illustrative computer hardware architecture for implementing a computing device that can be utilized to implement aspects of the various technologies presented herein.
- a method according to the various technologies presented herein may include storing, in a service registry that is associated with a scalable application service platform, network metadata associated with traffic of an application hosted by the scalable application service platform.
- the service registry may receive the network metadata from the scalable application service platform, from an administrator associated with the application, and the like.
- the method may include obtaining, by a controller of a network and from the service registry, the network metadata associated with the traffic of the application.
- the controller may determine a routing policy that is optimized for sending the traffic through the network.
- the method may further include sending an indication of the routing policy to a node of the network such that the traffic of the application is sent through the network according to the routing policy.
- the techniques described herein may be performed as a method and/or by a system having non-transitory computer-readable media storing computer-executable instructions that, when executed by one or more processors, performs the techniques described above.
- WAN wide area network
- routing policies are usually developed by a network administrator who has visibility of the network, as well as the services that the network is providing connectivity to. In this way, different routing policies can be developed that are tailored to the specific services the network is providing connectivity to.
- routing policies can be challenging.
- this disclosure describes various improvements in technologies that, among other things, provides for using a service registry system to pass application network requirements to a network controller (e.g., SD-WAN controller) that can use the network requirements to render network policies.
- a network controller e.g., SD-WAN controller
- the service registry system may receive and/or store application network requirements from a scalable application service platform (e.g., a container-orchestration system such as Kubemetes, Amazon ECS, Docker Swarm, Apache Messos, etc.), and the network controller may obtain the application network requirements from the service registry and use the application network requirements to render routing policies for application traffic.
- a scalable application service platform e.g., a container-orchestration system such as Kubemetes, Amazon ECS, Docker Swarm, Apache Messos, etc.
- Service registries have traditionally been leveraged for service discovery purposes.
- An exemplary service registry typically consists of a database-like system where information about services (e.g., applications) can be found. In the typical case of using a service registry for service discovery, this information generally includes the name of the service and the IP address (and in some cases the port) where the service can be found.
- service registries commonly store multiple IP addresses (or IP address and port pairs) for a given service for load balancing and high availability.
- network metadata e.g., traffic profiles, latency requirements, QoS, etc.
- Using a service registry to enable an SD-WAN controller to retrieve application network requirements that can then be used to render SD-WAN policies has several advantages that result in an improvement in computer-related technology. For instance, with the introduction of the service registry, the application control components may not need to manage the application database because the service registry is doing so. This decouples functionality across different components, allows for separation of concerns, and improves scalability. Additionally, the solution of using the service registry is more scalable and shifts part of the load from the SD-WAN controller and/or the scalable application service platform to the service registry.
- the service registry could be a domain naming system (DNS) server, a key -value database (e.g., etcd), or a proprietary service registry offered by a cloud provider.
- DNS domain naming system
- key -value database e.g., etcd
- a proprietary service registry offered by a cloud provider.
- a method according to the techniques disclosed herein may include receiving, by a service registry, network metadata associated with an application hosted by a scalable application service platform.
- a user/administrator associated with the application may add both the network metadata and other information (e.g., application/service name, IP address(es) port(s), etc.) associated with the application directly to the service registry.
- the scalable application service platform may automatically populate the service registry with the application information, and the user/administrator may, for instance, verify which applications are being registered into the service registry, as well as what relevant network metadata should be added or otherwise associated with those applications.
- the user/administrator may add the relevant network metadata directly to an application specification associated with the application in the scalable application service platform, which, for instance, may be done in the form of a YAML annotation as described in U.S. Patent Application No. 16/983346.
- the user/administrator may select, in the application specification, what is the right network metadata that should be associated with the application, and then the scalable application service platform may register the application information and metadata into the service registry.
- the service registry may store the network metadata and/or the information.
- the network metadata associated with the application may include, for instance, a traffic profile associated with traffic of the application.
- the traffic profile may indicate a traffic content type (e.g., voice traffic, video traffic, data traffic, etc.) associated with the traffic.
- the network metadata associated with the application may include a quality of service (QoS) associated with the application traffic, a frequency at which the application traffic is sent through the network, a minimum and/or maximum latency associated with the application traffic, and/or the like.
- QoS quality of service
- a controller of a network may obtain the network metadata associated with the application from the service registry.
- the network may be an SD-WAN that provides connectivity to applications of the scalable application service platform, and the controller may be an SD-WAN controller.
- the controller may poll the service registry (e.g., at specific time intervals) to obtain the network metadata and/or any updated network metadata.
- the controller may obtain the network metadata from the service registry in response to determining that the service registry has been updated. For instance, the controller may receive an indication from the service registry, the scalable application service platform, or a network administrator indicating that the service registry has been updated to include application network metadata.
- the controller may determine a routing policy that is optimized for sending the application traffic through the network. For instance, the controller may determine the routing policy based at least in part on the network metadata it received from the service registry. By way of example, the controller may determine that the application traffic is video traffic and render a routing policy such that the application traffic is handled according to a specific quality of service (QoS) that may be appropriate for video traffic. In some examples, the controller may provision the network with the routing policy. For instance, the controller may send an indication of the routing policy to one or more nodes (e.g., routers) of the network such that the application traffic is sent through the network according to the routing policy.
- QoS quality of service
- FIGS. 1A-1C are system-architecture diagrams illustrating an example architecture 100 for performing some of the techniques described herein for obtaining application network metadata from a service registry to derive network routing policies.
- the architecture 100 may include a network 102 having a network controller 104 and one or more nodes 106 that route traffic 108 through the network 102.
- the nodes 106 may route the traffic 108 between one or more client device(s) 110 and one or more applications 112(1)-112(N) (herein after referred to collectively as “applications 112”) (where N represents any number greater than or equal to one) of a scalable application service platform 114.
- the scalable application service platform 114 may include multiple computing resources 116 for hosting the applications 112.
- the architecture 100 also includes a service registry 118.
- the network 102 may be a software defined wide area network (SD-WAN) and the controller 104 may be an SD-WAN controller or orchestrator.
- the nodes 106 may be any physical device capable of forwarding packets.
- the nodes 106 may be routers, switches, general purpose computers, software nodes, gateways, and/or any other networking device capable of forwarding packets through the network 102.
- the network 102 may facilitate the communication of traffic 108 between the client devices 110 and the applications 112 of the application service 114.
- the network 102 may include an overlay network and an underlay network.
- the overlay network may comprise a telecommunications network that is built on top of the underlay network and is supported by its infrastructure (e.g., the underlay network’s physical devices, such as the nodes 106).
- the underlay network may comprise a software-defined/ API-driven underlay provider (e.g., PacketFabric, Megaport, PCCW Global’s ConsoleConnect, etc.).
- PacketFabric Megaport
- PCCW Global PCCW Global’s ConsoleConnect, etc.
- the network controller 104 may reside in a different network than the nodes 106.
- the network controller 104 may additionally, or alternatively, reside in a different geographic location than the nodes 106.
- the techniques disclosed herein are applicable to both public and private clouds.
- the scalable application service platform 114 may host one or more third-party applications, virtual machines, containers, and the like using infrastructure (e.g., physical devices, such as the computing resources 116) of the scalable application service platform 114.
- the scalable application service platform 114 may comprise a container-orchestration system such as, for example, Kubemetes, Amazon ECS, Docker Swarm, Apache Messos, Intersight Kubemetes Services, and the like.
- the computing resources 116 of the scalable application service platform 114 may be used to host the applications 112.
- the computing resources 116 may comprise hardware servers, software servers that are running on computer hardware, processors, general purpose computers, and the like.
- the scalable application service platform 114 may comprise multiple service platforms or data centers that are located in different geographical regions, different networks, etc. That is, although a single instance of the scalable application service platform 114 is shown in FIGS. 1A-1C for illustration purposes, it should be appreciated that the network 102 may facilitate communication of traffic 108 for multiple instances of the scalable application service platform 114. For instance, the computing resources 116 and/or the applications 112 may be distributed between different data centers associated with the scalable application service platform 114, different networks associated with the scalable application service platform 114, different zones of a cloud service provider, and the like.
- the architecture 100 also includes the service registry 118.
- the service registry may store information and network metadata associated with the applications 112.
- the service registry 118 may be part of the network 102.
- the service registry 118 may be associated with the scalable application service platform 114.
- the service registry 118 may be accessible to the network 102 and/ or the scalable application service platform 114 as shown, but not necessarily a part of the same architecture or network of the network 102 and/or the scalable application service platform 114.
- the service registry 118 is offered as a service (e.g., as a FaaS).
- the service registry 118 may receive information and network metadata associated with applications in a number of ways.
- the service registry 118 receives application information and network metadata 120 from an application administrator 122.
- the application information and network metadata 120 associated with the applications 112 may include, for instance, a traffic profile associated with traffic of the applications 112.
- the traffic profile may indicate a traffic content type (e.g., voice traffic, video traffic, data traffic, etc.) associated with the traffic.
- the application information and network metadata 120 associated with the applications 112 may include quality of service (QoS) metrics associated with the application traffic 108, a frequency at which the application traffic 108 is sent through the network 102, a minimum and/or maximum latency associated with the application traffic 108, and/or the like.
- QoS quality of service
- the controller 104 of the network 102 may receive application network metadata 124 associated with one or more applications 112. Based at least in part on the application network metadata 124, the controller 104 may derive a policy 126 for how the traffic 108 is to be routed through the network 102 by the nodes 106. By way of example, the controller 104 may determine that the application traffic 108 is video traffic and derive the policy 126 such that the application traffic 108 is handled according to a specific quality of service (QoS) that may be appropriate for video traffic.
- QoS quality of service
- the controller 104 of the network 102 may provision the policy 126 on the nodes 106 of the network 102 such that the traffic 108 may be sent through the network 102 according to the policy 126.
- the controller 104 may send the policy 126 to the nodes 106 or otherwise provision the network 102 and/or the nodes 106 with the policy 126.
- the nodes 106 apply the policy 126 and send traffic 108 associated with the applications 112 through the network 102 according to the policy 126.
- the nodes 106 may receive the traffic 108, determine which application the traffic 108 is associated with, determine the policy 126 for that application’s traffic 108, and send the traffic 108 through the network 102 according to that policy 126.
- the scalable application service platform 114 may register an application 112 and its associated application information 128 with the service registry 118. That is, the scalable application service platform may send the application information 128 (e.g., application name, IP address, port, etc.) associated with an application 112 to the service registry 118, and the service registry 118 may store the application information 128. For instance, the scalable application service platform 114 may automatically populate the service registry 118 with the application information 128.
- the application information 128 e.g., application name, IP address, port, etc.
- the application administrator 122 may verify which applications are being registered into the service registry 118, as well as what relevant network metadata 124 should be added or otherwise associated with those applications. Accordingly, the application administrator 122 may add the application metadata 124 to the service registry 118.
- the controller 104 of the network 102 may receive the application network metadata 124 associated with the one or more applications 112. Based at least in part on the application network metadata 124, the controller 104 may derive the policy 126 for how the traffic 108 is to be routed through the network 102 by the nodes 106.
- the controller 104 may send the policy 126 to the nodes 106 or otherwise provision the network 102 and/or the nodes 106 with the policy 126. And, at “5,” the nodes 106 apply the policy 126 and send traffic 108 associated with the applications 112 through the network 102 according to the policy 126.
- the application administrator 122 may add the relevant network metadata 124 directly to application specifications associated with the applications 112 in the scalable application service platform 114.
- the network metadata 124 may be added to the application specification in the form of a YAML annotation. In this way, the application administrator 122 may select, in the application specification, what is the right network metadata 124 that should be associated with the applications 112.
- the scalable application service platform 114 may register the application information and network metadata 120 into the service registry 118.
- the controller 104 of the network 102 may obtain the application network metadata 124 associated with the one or more applications 112 from the service registry 118. Based at least in part on the application network metadata 124, the controller 104 may derive the policy 126 for how the traffic 108 is to be routed through the network 102 by the nodes 106.
- the controller 104 may send the policy 126 to the nodes 106 or otherwise provision the network 102 and/or the nodes 106 with the policy 126.
- the nodes 106 apply the policy 126 and send traffic 108 associated with the applications 112 through the network 102 according to the policy 126.
- FIG. 2 is a flow diagram illustrating an example method 200 for obtaining application network metadata from a service registry to derive network routing policies.
- the logical operations described herein with respect to FIG. 2 may be implemented (1) as a sequence of computer- implemented acts or program modules running on a computing system and/or (2) as interconnected machine logic circuits or circuit modules within the computing system.
- the method 200 begins at operation 202, which includes receiving, at a service registry that is associated with a scalable application service platform, network metadata associated with traffic of an application hosted by the scalable application service platform.
- the service registry 118 may receive the application network metadata 124 associated with traffic 108 of an application 112(1) hosted by the scalable application service platform 114.
- the service registry 118 may receive the network metadata from an application administrator 122.
- the scalable application service platform 114 may automatically populate the service registry 118 with the application information, and the application administrator 122 may verify which applications 112 are being registered into the service registry 118 and associate the network metadata with those applications.
- the service registry 118 may receive the network metadata from the scalable application service platform 114, and the scalable application service platform 114 may have received the network metadata from the application administrator 122.
- the method 200 includes obtaining, by a controller of a network and from the service registry, the network metadata associated with the traffic of the application.
- the controller 104 of the network 102 may obtain the application network metadata 124 associated with the traffic 108 from the service registry 118.
- the controller 104 may poll the service registry 118 (e.g., at specific time intervals) to obtain the network metadata and/or any updated network metadata.
- the controller 104 may obtain the network metadata from the service registry 118 in response to determining that the service registry 118 has been updated.
- the controller 104 may receive an indication from the service registry 118, the scalable application service platform 114, or a network administrator indicating that the service registry 118 has been updated to include the application network metadata.
- the method 200 includes determining, by the controller and based at least in part on the network metadata, a routing policy that is optimized for sending the traffic through the network.
- the controller 104 may determine the policy 126 that is optimized for sending the traffic 108 through the network 102.
- the method 200 includes sending an indication of the routing policy to a node of the network such that the traffic of the application is sent through the network according to the routing policy.
- the controller 104 may send the indication of the routing policy 126 to the one or more of the nodes 106, or otherwise provision the network 102 with the policy 126, such that the traffic 108 is sent through the network 102 according to the policy 126.
- the method 200 includes receiving, at the node of the network, traffic of the application that is to be sent through the network.
- the node 106 of the network 102 may receive the traffic 108 that is to be sent through the network 102.
- the method 200 includes sending the traffic through the network according to the policy.
- the node 106 may apply the policy 126 and send the traffic 108 through the network 102 (e.g., from one endpoint or edge node to another endpoint or other edge node).
- FIG. 3 is a computer architecture diagram showing an illustrative computer hardware architecture for implementing a computing device that can be utilized to implement aspects of the various technologies presented herein.
- the computer architecture shown in FIG. 3 illustrates a conventional server computer, network controller 104, computing resource 116, node 106, router, workstation, desktop computer, laptop, tablet, network appliance, e-reader, smartphone, or other computing device, and can be utilized to execute any of the software components presented herein.
- the computer 300 includes a baseboard 302, or “motherboard,” which is a printed circuit board to which a multitude of components or devices can be connected by way of a system bus or other electrical communication paths.
- CPUs 304 operate in conjunction with a chipset 306.
- the CPUs 304 can be standard programmable processors that perform arithmetic and logical operations necessary for the operation of the computer 300.
- the CPUs 304 perform operations by transitioning from one discrete, physical state to the next through the manipulation of switching elements that differentiate between and change these states.
- Switching elements generally include electronic circuits that maintain one of two binary states, such as flip-flops, and electronic circuits that provide an output state based on the logical combination of the states of one or more other switching elements, such as logic gates. These basic switching elements can be combined to create more complex logic circuits, including registers, adders- subtractors, arithmetic logic units, floating-point units, and the like.
- the chipset 306 provides an interface between the CPUs 304 and the remainder of the components and devices on the baseboard 302.
- the chipset 306 can provide an interface to a RAM 308, used as the main memory in the computer 300.
- the chipset 306 can further provide an interface to a computer-readable storage medium such as a read-only memory (“ROM”) 310 or non-volatile RAM (“NVRAM”) for storing basic routines that help to startup the computer 300 and to transfer information between the various components and devices.
- ROM 310 or NVRAM can also store other software components necessary for the operation of the computer 300 in accordance with the configurations described herein.
- the computer 300 can operate in a networked environment using logical connections to remote computing devices and computer systems through a network, such as the network 106.
- the chipset 306 can include functionality for providing network connectivity through a NIC 312, such as a gigabit Ethernet adapter.
- the NIC 312 is capable of connecting the computer 300 to other computing devices over the network 324 and/or network 102. It should be appreciated that multiple NICs 312 can be present in the computer 300, connecting the computer to other types of networks and remote computer systems. In some examples, the NIC 312 may be configured to perform at least some of the techniques described herein.
- the computer 300 can be connected to a storage device 318 that provides non-volatile storage for the computer.
- the storage device 318 can store an operating system 320, programs 322, and data, which have been described in greater detail herein.
- the storage device 318 can be connected to the computer 300 through a storage controller 314 connected to the chipset 306.
- the storage device 318 can consist of one or more physical storage units.
- the storage controller 314 can interface with the physical storage units through a serial attached SCSI (“SAS”) interface, a serial advanced technology attachment (“SATA”) interface, a fiber channel (“FC”) interface, or other type of interface for physically connecting and transferring data between computers and physical storage units.
- SAS serial attached SCSI
- SATA serial advanced technology attachment
- FC fiber channel
- the computer 300 can store data on the storage device 318 by transforming the physical state of the physical storage units to reflect the information being stored.
- the specific transformation of physical state can depend on various factors, in different embodiments of this description. Examples of such factors can include, but are not limited to, the technology used to implement the physical storage units, whether the storage device 318 is characterized as primary or secondary storage, and the like.
- the computer 300 can store information to the storage device 318 by issuing instructions through the storage controller 314 to alter the magnetic characteristics of a particular location within a magnetic disk drive unit, the reflective or refractive characteristics of a particular location in an optical storage unit, or the electrical characteristics of a particular capacitor, transistor, or other discrete component in a solid-state storage unit.
- Other transformations of physical media are possible without departing from the scope and spirit of the present description, with the foregoing examples provided only to facilitate this description.
- the computer 300 can further read information from the storage device 318 by detecting the physical states or characteristics of one or more particular locations within the physical storage units.
- the computer 300 can have access to other computer-readable storage media to store and retrieve information, such as program modules, data structures, or other data.
- computer-readable storage media is any available media that provides for the non-transitory storage of data and that can be accessed by the computer 300.
- the operations performed by the network 102 and or any components included therein may be supported by one or more devices similar to computer 300. Stated otherwise, some or all of the operations performed by the network 102, and or any components included therein, may be performed by one or more computer devices 300 operating in a scalable arrangement.
- Computer-readable storage media can include volatile and non-volatile, removable and non-removable media implemented in any method or technology.
- Computer-readable storage media includes, but is not limited to, RAM, ROM, erasable programmable ROM (“EPROM”), electrically-erasable programmable ROM (“EEPROM”), flash memory or other solid-state memory technology, compact disc ROM (“CD-ROM”), digital versatile disk (“DVD”), high definition DVD (“HD-DVD”), BLU-RAY, or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information in a non-transitory fashion.
- the storage device 318 can store an operating system 320 utilized to control the operation of the computer 300.
- the operating system comprises the LINUX operating system.
- the operating system comprises the WINDOWS® SERVER operating system from MICROSOFT Corporation of Redmond, Washington.
- the operating system can comprise the UNIX operating system or one of its variants. It should be appreciated that other operating systems can also be utilized.
- the storage device 318 can store other system or application programs and data utilized by the computer 300.
- the storage device 318 or other computer-readable storage media is encoded with computer-executable instructions which, when loaded into the computer 300, transform the computer from a general-purpose computing system into a special-purpose computer capable of implementing the embodiments described herein. These computer-executable instructions transform the computer 300 by specifying how the CPUs 304 transition between states, as described above.
- the computer 300 has access to computer-readable storage media storing computer-executable instructions which, when executed by the computer 300, perform the various processes described above with regard to FIGS. 1A-2.
- the computer 300 can also include computer-readable storage media having instructions stored thereupon for performing any of the other computer-implemented operations described herein.
- the computer 300 can also include one or more input/ output controllers 316 for receiving and processing input from a number of input devices, such as a keyboard, a mouse, a touchpad, a touch screen, an electronic stylus, or other type of input device.
- an input/output controller 316 can provide output to a display, such as a computer monitor, a flat-panel display, a digital projector, a printer, or other type of output device.
- the computer 300 might not include all of the components shown in FIG. 3, can include other components that are not explicitly shown in FIG. 3, or might utilize an architecture completely different than that shown in FIG. 3.
- the computer 300 may include one or more hardware processors 304 (processors) configured to execute one or more stored instructions.
- the processor(s) 304 may comprise one or more cores.
- the computer 300 may include one or more network interfaces configured to provide communications between the computer 300 and other devices, such as the communications described herein as being performed by the source device 106 and network device 102.
- the network interfaces may include devices configured to couple to personal area networks (PANs), wired and wireless local area networks (LANs), wired and wireless wide area networks (WANs), and so forth.
- PANs personal area networks
- LANs local area networks
- WANs wide area networks
- the network interfaces may include devices compatible with Ethernet, Wi-FiTM, and so forth.
- the programs 322 may comprise any type of programs or processes to perform the techniques described in this disclosure for obtaining application network metadata form a service registry to derive network policies.
- the programs 322 may enable the controller 104 and/or the service registry 118 to perform various operations.
- techniques for obtaining application network metadata from a service registry so that a network routing policy may be derived for traffic associated with the application are described herein.
- the techniques may include receiving, at a service registry, network metadata associated with traffic of an application hosted by a scalable application service platform.
- the techniques may also include obtaining, by a controller of a network and from the service registry, the network metadata associated with the traffic of the application.
- the controller may determine a routing policy that is optimized for sending the traffic through the network. Additionally, the controller may send an indication of the routing policy to a node of the network or otherwise provision the network such that the traffic of the application is sent through the network according to the routing policy.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
Claims
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202280008447.6A CN116746130A (en) | 2021-03-02 | 2022-02-16 | Delivering application network metadata to a network controller using a service registry |
EP22711717.3A EP4302466A1 (en) | 2021-03-02 | 2022-02-16 | Passing application network metadata to network controllers using service registries |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163155639P | 2021-03-02 | 2021-03-02 | |
US63/155,639 | 2021-03-02 | ||
US17/494,441 | 2021-10-05 | ||
US17/494,441 US12068965B2 (en) | 2020-02-21 | 2021-10-05 | Passing application network metadata to network controllers using service registries |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022186984A1 true WO2022186984A1 (en) | 2022-09-09 |
Family
ID=80820096
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2022/016607 WO2022186984A1 (en) | 2021-03-02 | 2022-02-16 | Passing application network metadata to network controllers using service registries |
Country Status (2)
Country | Link |
---|---|
EP (1) | EP4302466A1 (en) |
WO (1) | WO2022186984A1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200322262A1 (en) * | 2019-04-04 | 2020-10-08 | Cisco Technology, Inc. | System and method of providing policy selection in a network |
US20200396141A1 (en) * | 2019-06-12 | 2020-12-17 | Cisco Technology, Inc. | Intent based application fabric |
US20200413283A1 (en) * | 2019-06-27 | 2020-12-31 | Cisco Technology, Inc. | Congestion Avoidance with Adaptive QoS policy enforcement from SD-WAN Controller in SD-WAN Networks |
-
2022
- 2022-02-16 WO PCT/US2022/016607 patent/WO2022186984A1/en active Application Filing
- 2022-02-16 EP EP22711717.3A patent/EP4302466A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200322262A1 (en) * | 2019-04-04 | 2020-10-08 | Cisco Technology, Inc. | System and method of providing policy selection in a network |
US20200396141A1 (en) * | 2019-06-12 | 2020-12-17 | Cisco Technology, Inc. | Intent based application fabric |
US20200413283A1 (en) * | 2019-06-27 | 2020-12-31 | Cisco Technology, Inc. | Congestion Avoidance with Adaptive QoS policy enforcement from SD-WAN Controller in SD-WAN Networks |
Also Published As
Publication number | Publication date |
---|---|
EP4302466A1 (en) | 2024-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9276812B1 (en) | Automated testing of a direct network-to-network connection | |
US11082505B2 (en) | Dynamic discovery of available storage servers | |
US12068965B2 (en) | Passing application network metadata to network controllers using service registries | |
US20220159064A1 (en) | Cloud service datacenter selection based on data sovereignty policies | |
US20230291683A1 (en) | Distributed tenant overlay network with centralized routing control plane | |
US20240137320A1 (en) | Cloud-native workload optimization | |
US11625378B2 (en) | Selecting interfaces for device-group identifiers | |
US11888808B2 (en) | Routing traffic for virtualized/containerized network functions | |
US12003385B2 (en) | Dynamic network routing based on application load | |
US11206175B1 (en) | Path analysis service for identifying network configuration settings that block paths in virtual private clouds (VPCs) | |
WO2022186984A1 (en) | Passing application network metadata to network controllers using service registries | |
US11245660B1 (en) | Communication of endpoint information among virtual switches | |
CN116746130A (en) | Delivering application network metadata to a network controller using a service registry | |
US20240073127A1 (en) | Data sovereignty and service insertion in multisite network fabric | |
US20230412483A1 (en) | Software-as-a-service probe aggregation in networks | |
US20240223464A1 (en) | Dynamic network routing based on application load | |
US11601496B1 (en) | Hybrid cloud services for enterprise fabric | |
US11558292B2 (en) | Automatic configuration and connection of heterogeneous bandwidth managed multicast fabrics | |
EP4262150A1 (en) | Layer-3 policy enforcement for layer-7 data flows | |
US20240039956A1 (en) | Identity-based policy enforcement in wide area networks | |
WO2023244785A1 (en) | Software-as-a-service probe aggregation in networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22711717 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 202347029710 Country of ref document: IN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 202280008447.6 Country of ref document: CN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2022711717 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2022711717 Country of ref document: EP Effective date: 20231002 |