EP4589927A2

Using service planes to perform services at the edge of a network

Abstract

Some embodiments provide novel methods for providing a set of services for a logical network associated with an edge forwarding element acting between a logical network and an external network. In some embodiments, the services are provided using a logical service forwarding plane that connects the edge forwarding element to a set of service nodes that each provide a service in the set of services. The service classification operation of some embodiments identifies a chain of multiple service operations that has to be performed on the data message. In some embodiments, identifying the chain of service operations includes selecting a service path to provide the multiple services. After selecting the service path, the data message is sent along the selected service path to have the services provided. The data message is returned to the edge forwarding element by a last service node in the service path that performs the last service operation and the edge forwarding element performs next hop forwarding on the data message.

EP4589927A2, drawing sheet 1
Sheet 1 of 37

Term

14.4 yearsto projected expiry

Projected expiry 1 February 2041, counted from filing; an application has no term until it is granted.

  1. Priority and filed
  2. Published
  3. Today
  4. Projected expiry

14 claims: 3 independent, 11 dependent

  1. 1
    A method of performing stateful services comprising:at a router storing a global state value indicating a current state of a set of service nodes: generating 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, the connection tracker record storing an action for subsequent data messages in the data message;determining, for a subsequent data message in the data message flow received after a first change of the global state value, that the flow state value stored in the connection tracker record does not match the global state value stored at the router;examining a flow programming table to determine if the action stored in the connection tracker record is no longer valid, the flow programming table storing instructions for updating connection tracker records for a set of data message flows;and updating the flow state value to match the current global state value so that subsequent data messages received before a second change of the global state value are processed without examining the flow programming table.
  2. 12
    A router comprising one or more processing units configured to perform the method of any one of claims 1 to 11.
  3. 13
    A computer program for performing stateful services, the program comprising instructions which, when executed by one or more processing units of a router storing a global state value indicating a current state of a set of service nodes, cause the processing units to carry out the method of any one of claims 1 to 11.