PROVIDING SERVICES BY USING SERVICE INSERTION AND SERVICE TRANSPORT LAYERS

    公开(公告)号:US20200274809A1

    公开(公告)日:2020-08-27

    申请号:US16444884

    申请日:2019-06-18

    Applicant: VMware, Inc.

    Abstract: Some embodiments provide novel methods for performing services for machines operating in one or more datacenters. For instance, for a group of related guest machines (e.g., a group of tenant machines), some embodiments define two different forwarding planes: (1) a guest forwarding plane and (2) a service forwarding plane. The guest forwarding plane connects to the machines in the group and performs L2 and/or L3 forwarding for these machines. The service forwarding plane (1) connects to the service nodes that perform services on data messages sent to and from these machines, and (2) forwards these data messages to the service nodes. In some embodiments, the guest machines do not connect directly with the service forwarding plane. For instance, in some embodiments, each forwarding plane connects to a machine or service node through a port that receives data messages from, or supplies data messages to, the machine or service node. In such embodiments, the service forwarding plane does not have a port that directly receives data messages from, or supplies data messages to, any guest machine. Instead, in some such embodiments, data associated with a guest machine is routed to a port proxy module executing on the same host computer, and this other module has a service plane port. This port proxy module in some embodiments indirectly can connect more than one guest machine on the same host to the service plane (i.e., can serve as the port proxy module for more than one guest machine on the same host).

    DISTRIBUTED FORWARDING FOR PERFORMING SERVICE CHAIN OPERATIONS

    公开(公告)号:US20200272498A1

    公开(公告)日:2020-08-27

    申请号:US16445023

    申请日:2019-06-18

    Applicant: VMware, Inc.

    Abstract: Some embodiments provide novel methods for performing services for machines operating in one or more datacenters. For instance, for a group of related guest machines (e.g., a group of tenant machines), some embodiments define two different forwarding planes: (1) a guest forwarding plane and (2) a service forwarding plane. The guest forwarding plane connects to the machines in the group and performs L2 and/or L3 forwarding for these machines. The service forwarding plane (1) connects to the service nodes that perform services on data messages sent to and from these machines, and (2) forwards these data messages to the service nodes. In some embodiments, the guest machines do not connect directly with the service forwarding plane. For instance, in some embodiments, each forwarding plane connects to a machine or service node through a port that receives data messages from, or supplies data messages to, the machine or service node. In such embodiments, the service forwarding plane does not have a port that directly receives data messages from, or supplies data messages to, any guest machine. Instead, in some such embodiments, data associated with a guest machine is routed to a port proxy module executing on the same host computer, and this other module has a service plane port. This port proxy module in some embodiments indirectly can connect more than one guest machine on the same host to the service plane (i.e., can serve as the port proxy module for more than one guest machine on the same host).

    USING SERVICE DATA PLANE FOR SERVICE CONTROL PLANE MESSAGING

    公开(公告)号:US20200272495A1

    公开(公告)日:2020-08-27

    申请号:US16444978

    申请日:2019-06-18

    Applicant: VMware, Inc.

    Abstract: Some embodiments provide novel methods for performing services for machines operating in one or more datacenters. For instance, for a group of related guest machines (e.g., a group of tenant machines), some embodiments define two different forwarding planes: (1) a guest forwarding plane and (2) a service forwarding plane. The guest forwarding plane connects to the machines in the group and performs L2 and/or L3 forwarding for these machines. The service forwarding plane (1) connects to the service nodes that perform services on data messages sent to and from these machines, and (2) forwards these data messages to the service nodes. In some embodiments, the guest machines do not connect directly with the service forwarding plane. For instance, in some embodiments, each forwarding plane connects to a machine or service node through a port that receives data messages from, or supplies data messages to, the machine or service node. In such embodiments, the service forwarding plane does not have a port that directly receives data messages from, or supplies data messages to, any guest machine. Instead, in some such embodiments, data associated with a guest machine is routed to a port proxy module executing on the same host computer, and this other module has a service plane port. This port proxy module in some embodiments indirectly can connect more than one guest machine on the same host to the service plane (i.e., can serve as the port proxy module for more than one guest machine on the same host).

    Parallel execution of services of a serial service chain on packets using multicast-based service insertion

    公开(公告)号:US10680842B2

    公开(公告)日:2020-06-09

    申请号:US16177830

    申请日:2018-11-01

    Applicant: VMware, Inc.

    Abstract: A method for a parallel execution of services of a serial service chain on packets using multicast-based service insertion is disclosed. In an embodiment, the method comprises identifying a plurality of services to be applied to packets of a data flow and determining a plurality of service machines that are configured to provide the plurality of services for the data flow. The plurality of service machines is grouped to a plurality of multicast groups; wherein multicast groups in the plurality of multicast groups are sequentially ordered from a first multicast group that includes a largest count of service machines to a last multicast group that includes a smallest count of service machines. Upon detecting a packet of the data flow, the is stored in memory, and multicast to the first multicast group of the plurality of multicast groups to cause applying, in parallel, services of service machines included in the first multicast group to the packet. Once a plurality of responses is received from service machines that belong to the first multicast group, the plurality of responses is used to determine whether service processing of the packet is completed. In response to determining that service processing of the packet is completed, the packet is disposed according the plurality of responses and without multicasting the packet to any other multicast group of the plurality of multicast groups.

Patent Agency Ranking