Version 1 (modified by saburhb, 6 years ago) (diff)


Project Objective:

Design and implementation of Multihoming on Mobility First Internet Architecture.


Implement Multihoming on Sender and Receiver side of Mobility First.

  • Sender side Multihoming will be similar to anycast with some exceptions.
  • Receiver side Multihoming will be based on user priority metric. When multiple interfaces are available, the user can set priority to the interfaces based on available signal strength, battery usage, available data plan etc. This priority information will be informed to the network by some means of signalling or GNRS database update. Then the Sender or router can choose the interface(s) while binding the Network address based on some policies.


Work Log:


  • As per the current implementation, the client is selecting one Wifi interface and/or one Wimax interface and updates that information to the GNRS database server.
  • In this project, we are going the provide multiple network interfaces to the network based on some weights and will update on GNRS database server. When the Multihoming application is on, and the client moves from one place to another then the weights of those interfaces might change and will be updated in GNRS accordingly. The network will have some policies based on which the sender (in case of Early Binding) or the Router at the bifurcation point (in case of Progressive Binding) will choose the network interface to forward the packet.
  • Analysing the existing code where we can provide the list of multiple interfaces to the Main thread of client protocol stack, which in turn can publish it to the GNRS database server.


  • First, we choose one metric as 'signal strength' based on which we want to provide multiple network interfaces to the network.
  • We performed emulation of wifi interfaces with varying signal strength using orbit testbed ( Attach configuration method). We set one node as clients and 3 nodes as access points and then scanned the access points from the client. We got a list of 3 access points and then we varied the attenuation between the client and the access points to get varied signal strength.
  • Manually scan the signal strength of different access points in the WINLAB and get an estimated mapping of distance vs signal strength. Then reproduce those values of signal strength by emulating the attenuation on Orbit Testbed.

-- Configured the access points on sb4 nodes of Orbit and then created bridge between the client and access point and also among the clients.
-- Analyzed the code of client protocol stack to understand the existing flow. We found that, as per current implementation, it is doing a scan of access point but after that it is selecting only one wifi interface with predefined mac address configured in xml file.
-- We want to break that chain and provide all the wifi interfaces to the Main thread of the stack which can assign different weights to the interfaces accordingly and ultimately this will be updated in GNRS.
-- Side by side , we are doing the emulation of signal strength vs distance. We will do this with the access points available in WINLAB.

Attachments (5)

Download all attachments as: .zip