Three components of OpenFlow architecture:
1) Flow table:
Tells the switch how to handle it, and each action is associated with a flow table entry.
2) Safe passage:
Responsible for the interaction between the controller and the switch, and connect with the remote controller through a secure channel.
3)OpenFlow protocol:
The southbound interface standard is defined, which provides an open standard way for communication between controller and switch.
In February 2009, OpenFlow released the landmark OpenFlow+0.0 version.
OpenFlow is the southbound interface protocol promoted by ONF and one of the mainstream southbound interface protocols of SDN.
1)OpenFlow V 1.0
Only a single flow table is supported. In each OpenFlow switch, there is only one flow table, which is used for packet searching, processing and forwarding, and can only communicate with the same controller. The maintenance of the flow table is realized by the controller issuing the corresponding OpenFlow message.
The flow table consists of flow table entries, and each flow table entry is a forwarding rule.
Flow table entries consist of matched fields, counters and actions.
Single stream table integrates most functions of Layer 4-7 in traditional OSI model.
Defect: With the increase of flow meter scale, the requirements for hardware performance are getting higher and higher.
Solution: The architecture of multi-level flow table+group table proposed in OpenFlow V 1. 1.
2)OpenFlow V 1. 1
It supports multi-level flow tables and forms a process of pipeline processing flow table matching rules, which can avoid the problem of excessive expansion of a single flow table and make better use of the inherent multi-standard characteristics of hardware.
Is not compatible with OpenFlow V 1.0.
3)OpenFlow V 1.2
Distributed matching fields are no longer fixed-length structures. Instead, the TLV structure is used to define the matching field, which is called OpenFlow Extensible Matching. Therefore, the protocol is flexible and extensible, which can not only increase keyword matching fields, but also save flow table space.
A switch can be linked with multiple controllers at the same time, thus providing higher reliability.
Support IPv6 protocol.
4)OpenFlow V 1.3 (long-term supported stable version)
Support 40 matching keywords, enough to meet the current network application needs.
Meters are added to control the transmission efficiency of data packets associated with the flow table.
Support switches and controllers to negotiate supported OpenFlow versions according to their own requirements.
5)OpenFlow V 1.4
This paper mainly adds a flow table synchronization mechanism, which can make multiple flow tables * * * share the same matching field and define different actions.
6)OpenFlow V 1.5
The processing flow of pipeline adds the process of outbound matching on the basis of inbound matching.