HOME   RESEARCH   LINKS

Fly

Fast L3 Handoff in IEEE 802.11a/b/g Networks

Introduction
In general, when a mobile node (MN) moves from one Access Point (AP) to the next, it does not have any mean to know if a Layer 2 (L2) only or both a L2 and a Layer 3 (L3) handoffs have occurred as there are no standard ways to detect a change in subnet. The use of router advertisements might be one way to solve this problem; however, the frequency of such advertisements is typically on the order of minutes, which makes it impossible for a MN to know about a subnet change in a timely manner. When a L3 handoff occurs, the MN needs to acquire a new IP address for the new subnet and this is usually done via DHCP. Moreover, with regards to VoIP sessions, if the MN is in the middle of a call when the L3 handoff happens (i.e. mid-call mobility), it will have to inform its Correspondent Node (CN) about the change in IP address. In the present context, SIP is used as signaling protocol and the VoIP session is updated via the exchange of SIP messages between the MN and its CN.

Handoff procedure
After the L2 handoff has completed and the MN has associated to a new AP, if such an AP belongs to a new subnet, the MN will have to acquire a new IP address (using DHCP) and update any ongoing VoIP session.
  • IP address acquisition via DHCP
    When a MN needs to acquire a new IP address, it will send a DHCP_DISCOVER broadcast frame. Different DHCP servers will respond to the DHCP_DISCOVER with a DHCP_OFFER frame containing the candidate IP address. At this point the MN will decide which offer to accept and once it has made its decision, it will send a DHCP_REQUEST frame to the selected DHCP server. The server can respond to the DHCP_REQUEST with an ACK if it will assign the requested IP to the MN or with a NACK if it will not.
    The longest component of the DHCP assignement procedure is the time between the DHCP_DISCOVER sent by the MN and the DHCP_OFFER sent by the DHCP server. During this time, the DHCP server performs Duplicate Address Detection (DAD) to be sure that no one else is already using the IP address that it is going to offer to the new MN. According to the DAD procedure, the DHCP server sends ICMP echo requests to the candidate IP address and waits for incoming ICMP echo responses. If no responses are received within a timeout (typically on the order of 1 second), the IP address is considered unused and can therefore be assigned to the new MN. Figure 1 shows the full message exchange between a MN and the DHCP server for acquiring a new IP address.
  • SIP session update
    Once we have a valid IP to use in the new subnet, we can initiate the L3 handoff procedure at the application layer (i.e. SIP session update). In order for the MN to inform the CN about its change in IP address, the MN will send a re-INVITE message to the CN. The CN will reply with a 200 OK and the MN will reply to the 200 OK with an ACK. This will complete the session update. Note that the data exchange can be resumed right after the 200 OK before receiving/sending the ACK. The MN will also inform its SIP Home Proxy about the change in IP address by sending a REGISTER to which the Home Proxy will reply with a 200 OK. The whole SIP session update procedure is shown in Figure 2.

Our approach (WICON 2006)
For more details please refer to our paper Improving Layer 3 Handoff Delay in IEEE 802.11 Wireless Networks (pdf).

Related papers
TOP