An SDN controller communicates with OpenFlow-compatible switches using the OpenFlow protocol running over the Secure Sockets Layer (SSL). Each switch connects to other OpenFlow switches and possibly to end-user devices that are the sources and destinations of packet flows (Civanlar S., Parlakisik M., Tekalp A. M., Gorkemli B., Kaytaz B., Onem E.,(2010)). Within each switch a series of tables typically implemented in hardware or firmware are used to manage the flows of packets through the switch. Working of OpenFlow The OpenFlow specification defines three types of tables in the logical switch architecture. Flow Table matches incoming packets to a particular flow and specifies the functions that are to be performed on the packets. Multiple flow tables that operate in a pipeline fashion, as explained subsequently. A flow table may direct a flow to a Group Table, which may trigger a variety of actions that affect one or more flows. Meter Table can trigger a variety of performance-related actions on a flow. Downloaded: 4/15/2022 9:44:49 AM Nova Southeastern University IP Address: 137.52.76.29 Quality of Service in SDN Technology Figure 3. OpenFlow switch Controller OpenFlow Protocol Over SSL OpenFlow Switch Meter Group Secure Table Table Channel Software OpenFlow Switches Table Table Table Hardware/Firmware End Systems Flow Tables Flow tables consist of a number of prioritized flow entries, each of which typically consists of two components: Match Fields 2. Actions Match fields are used to compare against incoming packets. An incoming packet is compared against the match fields in priority order, and the first complete match is selected. Actions are the instructions that the network device should perform if an incoming packet matches the match fields specified for that flow entry. Match fields can have wildcards for fields that are not relevant to a particular match. For example, when matching packets based on just an IP address or subnet, then all other fields would be wild carded. Similarly, if matching on only MAC