UPDATING CONNECTION-TRACKING RECORDS AT A NETWORK EDGE USING FLOW PROGRAMMING

    公开(公告)号:US20210314248A1

    公开(公告)日:2021-10-07

    申请号:US16904430

    申请日:2020-06-17

    Applicant: VMware, Inc.

    Abstract: Some embodiments provide a method of performing stateful services that keeps track of changes to states of service nodes to update connection tracker records when necessary. At least one global state value indicating a state of the service nodes is maintained at the edge device. The method generates a record in a connection tracker storage including the current global state value as a flow state value for a first data message in a data message flow. Each time a data message is received for the data message flow, the stored state value (i.e., a flow state value) is compared to the relevant global state value to determine if the stored action may have been updated. After a change in the global state value relevant to the flow the method examines a flow programming table to determine if the flow has been affected by a flow programming instruction(s) that caused the global state value to change.

    PROVIDING SERVICES WITH GUEST VM MOBILITY

    公开(公告)号:US20210311772A1

    公开(公告)日:2021-10-07

    申请号:US17352298

    申请日:2021-06-19

    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).

    MULTI-VRF AND MULTI-SERVICE INSERTION ON EDGE GATEWAY VIRTUAL MACHINES

    公开(公告)号:US20200274799A1

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

    申请号:US16283665

    申请日:2019-02-22

    Applicant: VMware, Inc.

    Abstract: In an embodiment, a method for a VRF and multi-service insertion on edge gateways is described. In an embodiment, the method comprises: detecting a packet; determining attributes for the packet; based on the attributes, determining whether the attributes match one or more rule attributes of a particular rule in a rule table; in response to determining that the attributes match the one or more rule attributes of a particular rule in the rule table: determining, based on the particular rule, a particular redirection identifier, a particular VRF identifier, a particular next hop, a particular address pair, and a particular BFD status; based on the particular BFD status, determining whether to redirect the packet; and in response to determining to redirect the packet, redirecting the packet toward a service virtual machine from an interface indicated by one of addresses in the particular address pair.

    PROVIDING SERVICES BY USING MULTIPLE SERVICE PLANES

    公开(公告)号:US20200274757A1

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

    申请号:US16445035

    申请日: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).

    CONFIGURING DISTRIBUTED FORWARDING FOR PERFORMING SERVICE CHAIN OPERATIONS

    公开(公告)号:US20200272497A1

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

    申请号:US16445016

    申请日: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).

    SEGREGATED SERVICE AND FORWARDING PLANES
    29.
    发明申请

    公开(公告)号:US20200272494A1

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

    申请号:US16444927

    申请日: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 on packets using multicast-based service insertion

    公开(公告)号:US10649805B1

    公开(公告)日:2020-05-12

    申请号:US16177855

    申请日: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, a method comprises detecting a packet of a data flow and storing the packet in memory. From a plurality of multicast groups, a first multicast group is identified. The first multicast group includes a plurality of service machines configured to provide a plurality of services to the data flow. The first multicast group includes all services machines of the plurality of service machines. The packet is 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. Upon receiving a plurality of responses from service machines of the first multicast group, the plurality of responses is analyzed to determine whether the plurality of responses includes a modify-response. In response to determining that the plurality of responses does not include any modify-response, the plurality of responses is analyzed to determine whether the plurality of responses includes a drop-response. In response to determining that the plurality of responses does not include any drop-response, the packet is forwarded toward its destination without multicasting the packet to any other multicast group of the plurality of multicast groups.

Patent Agency Ranking