View stunning SlideShares in full-screen with the new iOS app!Introducing SlideShare for AndroidExplore all your favorite topics in the SlideShare appGet the SlideShare app to Save for Later — even offline
View stunning SlideShares in full-screen with the new Android app!View stunning SlideShares in full-screen with the new iOS app!
Motivation Mobile devices in a lot of environments can find different possible ways to connect to the internet (Wi-Fi, Modem, LAN, etc) Available operating systems can only connect to one of those interfaces at a time Socket API SRC, MobiCom 2009
What is DNIS ? DNIS stands for “Dynamic Network Interface Scheduler” DNIS is used for bandwidth aggregation of the available network interfaces Boosting the total device’s bandwidth Increasing the stability of the internet connection Works at the socket-level and finds the best interface for each new socket connection Process Estimator Scheduler Interface Estimator SRC, MobiCom 2009
Scheduling Algorithms Choosing only one interface Round Robin selection Maximum Throughput based selection Profile based selection (ongoing) SRC, MobiCom 2009
Maximum Throughput-based Selection Selects one of the available interfaces for an incoming connection so that the system finishes its current load as soon as possible Depends on Estimated Network Interface and application parameters: Average no. of bytes received/sent by an application per connection Max. speed attained by a network interface SRC, MobiCom 2009
Maximum Throughput-based Selection(Cont’d) IF1 (100 Kb/s) – IF 2 (60 Kb/s) At t = 0 At t = 2 At t = 4 At t = 7 SRC, MobiCom 2009
Implementation DNIS uses the same concepts used by firewalls and network proxies tocontrol the network flow One of its components is a service that is used to intercept socket-based connection requests and assign proper network interfaces to them SRC, MobiCom 2009
Results SRC, MobiCom 2009 Large Clients = 50 Mbs Medium Clients = 5 Mbs Small Clients = 250 Kbs
Related Work Physical Layer BA Special hardware needed Network Layer BA A proxy is needed [Chebrolu, Wireless Networks 2007] Transport Layer BA New protocols needed, suggesting changes in legacy servers [Hsieh, MobiCom’02] [Magalhaes, ICNP 2001] Session Layer BA Needs changes in the client’s application. [Zaharia, STOC SRC 2007] SRC, MobiCom 2009
Ongoing Work Estimation granularity Process, connection Profile-based approach QoS, priorities Process estimation UDP Should different datagrams use the same interface? SRC, MobiCom 2009
Conclusion We have a lot of unutilized resources! DNIS is a middleware that helps a client device utilize all of its networking resources with no modifications needed on the cloud A stable version will be available soon on winc.nileu.edu.eg SRC, MobiCom 2009
A Network Layer Approach to Enable TCP over Multiple Interfaces (Wireless Networks, Volume 11 , Issue 5 (September 2005) Pages: 637 – 650, Year of Publication: 2005, ISSN:1022-0038) By: KAMESWARI CHEBROLU of California at San Diego, La Jolla and BHASKARAN RAMAN of Indian Institute of Technology. Idea: Same as the one before it (proxies) but it supports the TCP protocol as it lets the proxy handle the aggregation. Advantages: Transparent to the application. Easier to get estimations Disadvantages: Complicated (Needs to handle packets and route them to the appropriate interface). Needs a proxy service
Fast and Optimal Scheduling Over Multiple Network Interfaces (University of Waterloo Technical Report CS-2007-36, October 2007) By: Matei A. Zahariaof California Berkely and SrinivasanKeshav of Waterloo Idea: Extending the implementation of Opportunistic Communication Management Protocol to make it aware of the available interfaces, then connecting the different interfaces each to a proxy that handles connecting to the internet for it. Advantages: Optimal and linear algorithm. Disadvantages: The need for the proxy, static algorithm, not transparent to the applications.
R-MTP (Reliable Multiplexing Transport Protocol) ICNP 2001 By: LuizMagahlaes in University of Illinois Idea: Creating a new protocol on the transport layer that virtualizes the different interfaces and aggregates the bandwidth. Adv. : Transparent to applications transparent to hardware easier to get estimations. Disadv. : Complicated (packets should be monitored, changes in the protocol chain should be made) requires changes in legacy internet servers for compatability.
Between the session layer and the transport(Socket Layer)
Design and Implementation of a Socket-level Bandwidth Aggregation Mechanism for Wireless Networks (WICON; Vol. 220) By: Hiroshi SAKAKIBARA et al. School of Media and Governanc Keio University 5322, Endo, Fujisawa, Kanagawa, Japan Idea: SBAM (Socket Bandwidth Aggregation Mechanism). Which changes the structure of the socket to be able to manipulate the headers. The new type of server should be available at the server and the client. Advantages: Transparent to the applications Transparent to the hardware Better utilization as a single connection can be distributed to different interfaces Disadvantages: It should be put on the servers too. Complicated because it includes packets reordering and headers manipulation which might result in an overhead.
DNIS Idea: Changing the socket layer to intercept connections on the client and using estimations about the applications and the interfaces, DNIS can assign those connections to the interfaces depending on the load it can take. Advantages: Transparent to the hardware. Transparent to the applications. No need for changes on server. Easy to plug in the client. Simple and easy to trace and control and has low overhead(no packet manipulation) Disadvantages: Lack of full utilization as connections are distributed over the interfaces not the packets so if a connection finished early its interface wouldn’t be utilized.
Link layer It’s supported widely but it needs matching end points and homogenous links. It makes changes on the physical layer and it needs also matching connections. For more information please check this link http://www.ieee802.org/3/hssg/public/apr07/frazier_01_0407.pdf