Packet processing in a software defined datacenter based on priorities of virtual end points
AssigneeJuniper Networks, Inc.
InventorsAvinash Kumar Singh, Chandra Mouli
Life of this patent
Estimating the term…
Loading patent…
AssigneeJuniper Networks, Inc.
InventorsAvinash Kumar Singh, Chandra Mouli
Estimating the term…
A device may include one or more processors to receive priority information corresponding to a virtual machine of a computing environment, receive a packet associated with the virtual machine, determine a priority associated with the virtual machine based on the priority information, the priority information indicating the priority associated with the virtual machine relative to other virtual machines of the computing environment, and/or assign the packet to a queue associated with a service node of the computing environment based on the virtual machine, the packet to be output from the queue based on the priority associated with the virtual machine.
A device, comprising:
A non-transitory computer-readable medium storing instructions, the instructions comprising:
A method, comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
No related US applications are recorded in the indexed filing history.
Hypervisors; Virtual machine monitors: hypervisor-specific management and integration aspects
Local resource management: wireless traffic scheduling
Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines:…
By program, e.g. task dispatcher, supervisor, operating system: scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
About 11 years 1 month of term left · ends 20 Nov 2037 (estimated)
In computing, a virtual end point (VEP) may include a virtual machine (VM) (e.g., an emulation of a computer system), a virtual machine interface, a container, and/or the like. VEPs may be based on computer architectures, computer interfaces, and/or computer components and may provide functionality of physical computer architectures, physical computer interfaces, and/or physical computer components, respectively. VEPs may involve specialized hardware, software, or a combination of specialized hardware and software. Accordingly, VEPs may be hosted in a cloud environment or on a local device (such as a computer or server).
According to some implementations, a device may include one or more processors to receive priority information corresponding to a virtual machine of a computing environment, receive a packet associated with the virtual machine, determine a priority associated with the virtual machine based on the priority information, the priority information indicating the priority associated with the virtual machine relative to other virtual machines of the computing environment, and/or assign the packet to a queue associated with a service node of the computing environment based on the virtual machine, the packet to be output from the queue based on the priority associated with the virtual machine.
According to some implementations, a non-transitory computer-readable medium may store instructions, the instructions comprising one or more instructions that, when executed by one or more processors, may cause the one or more processors to receive priority information corresponding to a virtual machine interface of a virtual machine of a computing environment; receive a packet associated with the virtual machine interface; determine a priority associated with the virtual machine interface based on the priority information, the priority information indicating the priority associated with the virtual machine interface relative to other virtual machine interfaces of the computing environment; and/or assign the packet to a queue to be processed by a service node of the computing environment based on the virtual machine interface, the packet to be output from the queue based on the priority associated with the virtual machine interface.
FIGS. 1A and 1B are diagrams of an overview of an example implementation described herein;
FIGS. 2A and 2B are diagrams of an example environment in which systems and/or methods, described herein, may be implemented;
FIG. 3 is a diagram of example components of one or more devices of FIGS. 2A and 2B;
The following detailed description of example implementations refers to the accompanying drawings. The same reference numbers in different drawings may identify the same or similar elements.
In traditional networks that include physical switches and routers interconnected with physical links, queuing and scheduling processing stages are generally done on an egress interface to honor differentiated class-of-service treatment for traffic. In software-defined data centers (SDDCs), virtual nodes (e.g., virtual machines (VMs)) or containers replace physical nodes, and interconnect with each other through interfaces (e.g., VM interfaces). Accordingly, in SDDCs, traffic moving from one virtual node to another virtual node may go through many interfaces (e.g., sockets associated with buffers). In some instances, service nodes may analyze traffic traversing a network as the traffic moves from VM to VM. For example, micro-segmentation may be implemented within an SDDC as a security technique to enable security policies to be assigned to data center applications. When data moves from one VM to another VM, the service node may analyze and/or process a packet of the data, and allow or disallow the packet based on the content of the packet (e.g., allow the packet to pass if the packet does not include malware, prevent the packet from passing if the packet does include malware).
Some implementations, described herein, provide an SDDC subsystem (e.g., a network subsystem, a storage subsystem, and/or the like) and/or a service node to provide class-based treatment of traffic in an SDDC or cloud computing environment. Based on a priority of a particular virtual end point (VEP) (e.g., a particular VM, a particular VM interface associated with the particular VM, a particular container, and/or the like), the SDDC subsystem and/or the service node may process traffic associated with the VEP. For example, when a service node is to process traffic, the service node may receive traffic from particular queues at a rate based on a priority associated with the particular VEPs. Additionally, or alternatively, an SDDC subsystem may receive traffic processed by the service node from particular queues at a rate corresponding to the priority of a particular VEP associated with the traffic. In this way, the SDDC subsystem and/or the service node may provide class-based treatment to VEPs of an SDDC and/or cloud computing environment. Also, in this way the SDDC subsystem and/or the service node may provide fine-tuned service processing for particular groups or sets of VEPs relative to others. Accordingly, traffic may be prioritized to ensure continuous operation of a particular VEP, class-based traffic for VEPs to provide deterministic traffic behavior in the SDDC, and/or the like.