Uploaded on

This is my presentation in MobiCom'09 for SRC (Student Research Competition)

This is my presentation in MobiCom'09 for SRC (Student Research Competition)

More in: Education , Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads


Total Views
On Slideshare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. Ahmed Saeed, KarimHabak, MahmoudFouad and MoustafaYoussef
    Nile University, Egypt
    SRC, MobiCom2009, Beijing, China
    DNIS:A Middleware for Dynamic Multiple Network Interface Scheduling
  • 2. Outline
    • Motivation
    • 3. What is DNIS ?
    • 4. Scheduling algorithms
    • 5. Maximum Throughput-based Selection
    • 6. Implementation
    • 7. Results
    • 8. Related Work
    SRC, MobiCom 2009
  • 9. 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
  • 10. 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
    Interface Estimator
    SRC, MobiCom 2009
  • 11. Scheduling Algorithms
    Choosing only one interface
    Round Robin selection
    Maximum Throughput based selection
    Profile based selection (ongoing)
    SRC, MobiCom 2009
  • 12. 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
  • 13. 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
  • 14. 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
  • 15. Results
    SRC, MobiCom 2009
    Large Clients = 50 Mbs
    Medium Clients = 5 Mbs
    Small Clients = 250 Kbs
  • 16. 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
  • 17. Ongoing Work
    Estimation granularity
    Process, connection
    Profile-based approach
    QoS, priorities
    Process estimation
    Should different datagrams use the same interface?
    SRC, MobiCom 2009
  • 18. 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
  • 19. Thank You!
    Questions ?
    SRC, MobiCom 2009
  • 20. Related work
  • 21. Network Layer
  • 22. 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.
    Transparent to the application.
    Easier to get estimations
    Complicated (Needs to handle packets and route them to the appropriate interface).
    Needs a proxy service
  • 23. Session Layer
  • 24. 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.
    Optimal and linear algorithm.
    The need for the proxy,
    static algorithm,
    not transparent to the applications.
  • 25. Transport Layer
  • 26. 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.
  • 27. Between the session layer and the transport(Socket Layer)
  • 28. 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.
    Transparent to the applications
    Transparent to the hardware
    Better utilization as a single connection can be distributed to different interfaces
    It should be put on the servers too.
    Complicated because it includes packets reordering and headers manipulation which might result in an overhead.
  • 29. 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.
    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)
    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.
  • 30. Link Layer
  • 31. 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