# QoS-Aware Flexible Handover Management in Software-Defined Mobile Networks
## 3 QoS-Based Flexible Handover Scheme in SDN
### QoS-Based Flexible Handover Procedures in SDN
However, in the case of the flow entries of Class 1 flows, this setting is not configured. In addition, the flow entries can be deleted either in response to a flow-mod message from the controller or automatically by a pre-defined timeout. Figure 2a shows the information flow for the reactive procedure for Class 1 flows. Because the flows of Class 1 do not require strict handover QoS requirements in terms of the delay and packet loss, the reactive procedure follows a basic operation defined in the OpenFlow specification [12] which does not consider a QoS-supported handover. When the MN attaches to AS 2 after handover, the MN sends an RS message to AS 2. Because there is no flow entry of the message at AS 2, the message is delivered to the controller as a packet-in message. Then, the controller transmits the packet-out  
Figure 1: Access network architecture of software-defined networking (SDN)-based mobile networks. CS: core switch; AS: access switch: AP: access point; MN: mobile node. message including the RA message to add the flow entry at AS 2 and modifies the flow entry at the CS to change the path of the flow after handover. Figure 2: _Cont._  
Figure 2b describes the information flow for the buffering support procedure for Class 2 flows. In order to provide loss-less handover for loss-intolerant Class 2 flows, the buffering procedure is supported for Class 2 flows. When the MN moves, the controller receives the statistics report for the L2 handover trigger from AS 1. Through the flow entry updates of AS 1 and CS, MN's data after detaching from AS 1 can be buffered at CS. Due to this buffering, MN can receive data after attaching to AS 2. The following procedures for IP address configuration are the same as the Class 1 handover procedures. The buffering support and proactive procedure for Class 3 flows is described in Figure 2c. Because Class 3 flows require the strictest QoS constraints in terms of both delay and loss during handover, both buffering and proactive entry updates are simultaneously utilized. When the controller receives the statistics report for L2 handover trigger, it updates the flow entry of the MN at AS 1, CS and candidate ASs. As shown in the buffering support procedure for Class 2 flows, MN's data at AS 1 after handover are delivered to the CS. In addition, multicasting to the candidate ASs is set at the flow entry of the MN at the CS. Moreover, the buffering of the MN's data is performed at the candidate ASs by the controller. This means that both the MN's flow entry and data after handover are stored at  
Figure 2: Quality of service (QoS)-based flexible handover procedures. the candidate ASs. Thus, the MN can send and receive its data as soon as it attaches to the AS 2 without packet loss during handover. Finally, through the IP address configuration procedures, buffered data at AS 2 are delivered to the MN without additional flow entry updates at other nodes. The proactive procedure for Class 4 flows is shown in Figure 2d. Since the flows of Class 4 are delay-intolerant, fast uplink (UL) and downlink (DL) data delivery after handover should be provided. After the controller notices the L2 handover trigger of the MN, it proactively adds the UL and DL flow entry of the MN at candidate ASs including AS 2 and modifies the UL flow entry of the MN at the CS to receive the flow from candidate ASs (e.g., the input port field of the flow entry can be wild-carded, not specified) but does not update the DL flow entry of the MN at the CS because the access switch after handover is not yet determined. In order to determine the access switch after handover as soon as possible, the controller sets the flow entry of the MN at candidates ASs to send a statistics report when the number of packets of the flow entry exceeds a specific small value. When the controller receives the statistics report message from AS 2 (among candidates ASs), it updates the DL flow entry of the MN at the CS. As a result, the MN sends and receives its data without additional packet-in and flow-mod exchanges.