Expanding network functionalities for openflow based split-architecture networks
First Claim
1. A method implemented by a network element functioning as a switch in a split-architecture network that includes a controller coupled to a plurality of switches, the method enabling the switch to provide high speed packet processing and enhanced network functionalities, the method comprising the steps of:
- receiving a packet by the switch from a network through an input port of the switch;
matching one or more header fields in the packet against a set of table entries in a set of flow tables to identify an action to be taken, the set of flow tables being part of an OpenFlow pipeline;
identifying the action in a matching table entry as directing the packet to a designated one of a set of processing units in the switch, wherein the set of processing units in the switch are external to the OpenFlow pipeline;
forwarding the packet to the designated processing unit from the OpenFlow pipeline via a communication channel in the switch;
processing the packet by the designated processing unit with the enhanced network functionalities, wherein the enhanced network functionalities include functionalities that are not supported by the OpenFlow pipeline of the switch; and
injecting the packet from the designated processing unit back to one of the flow tables in the OpenFlow pipeline before transmission of the packet to the network through an egress port of the switch.
3 Assignments
0 Petitions
Accused Products
Abstract
A method enables a switch in a split-architecture network to provide high speed packet processing and enhanced network functionalities that are not supported by the OpenFlow. The switch receives a packet from a network through an input port of the switch, and matches header fields in the packet against table entries in flow tables to identify an action to be taken. The flow tables are part of an OpenFlow pipeline. The identified action is to direct the packet to a designated processing unit in the switch. The OpenFlow pipeline forwards the packet to the designated processing unit via a communication channel in the switch. The designated processing unit processes the packet with the enhanced network functionalities, and injects the packet back to one of the flow tables before transmission of the packet to the network through an egress port of the switch.
-
Citations
18 Claims
-
1. A method implemented by a network element functioning as a switch in a split-architecture network that includes a controller coupled to a plurality of switches, the method enabling the switch to provide high speed packet processing and enhanced network functionalities, the method comprising the steps of:
-
receiving a packet by the switch from a network through an input port of the switch; matching one or more header fields in the packet against a set of table entries in a set of flow tables to identify an action to be taken, the set of flow tables being part of an OpenFlow pipeline; identifying the action in a matching table entry as directing the packet to a designated one of a set of processing units in the switch, wherein the set of processing units in the switch are external to the OpenFlow pipeline; forwarding the packet to the designated processing unit from the OpenFlow pipeline via a communication channel in the switch; processing the packet by the designated processing unit with the enhanced network functionalities, wherein the enhanced network functionalities include functionalities that are not supported by the OpenFlow pipeline of the switch; and injecting the packet from the designated processing unit back to one of the flow tables in the OpenFlow pipeline before transmission of the packet to the network through an egress port of the switch. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A network element functioning as a switch in a split-architecture network that includes a controller coupled to a set of switches, the switch to provide high speed packet processing and enhanced network functionalities, the network element comprising:
-
a communication channel coupled to an OpenFlow pipeline that includes a set of flow tables and each of the flow tables including a set of table entries; a first set of processing cores coupled to the OpenFlow pipeline via the communication channel to perform operations of a set of processing units, each of the processing units operable to process packets with the enhanced network functionalities and to inject the packets back to one of the flow tables in the OpenFlow pipeline, wherein the enhanced network functionalities include functionalities that are not supported by OpenFlow pipeline of the switch and wherein the set of processing units are external to the OpenFlow pipeline; an ingress port coupled to the OpenFlow pipeline to receive a packet from a network; a second set of processing cores coupled to the communication channel, the first set of processing cores and the ingress port, to perform operations of the OpenFlow pipeline, the OpenFlow pipeline to match one or more header fields in the packet against the table entries to identify an action in a matching table entry as directing the packet to a designated one of the processing units, and to forward the packet to the designated processing unit for processing; and an egress port coupled to the OpenFlow pipeline to transmit the packet to the network. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
Specification