340 likes | 358 Views
This presentation discusses the implementation and performance of MPC-CRS, a multipath routing solution that utilizes connection relay servers to improve network performance and utilize available bandwidth effectively. It also explores lessons learned and future work.
E N D
Multiple Path Connection through a Set of Connection Relay Servers Master Thesis Presentation Syama S Kosuri Department of Computer Science Univ. of Colorado at Colorado Springs
Outline of the Talk • Background and Motivation • Related Work • MPC-CRS • Performance of MPC-CRS • Lessons learned • Future work
Internet Explosion • Started with ARPANET in 1969 • Exchange information through Email and UseNet groups • Before 1990 • Mainly used for broad general communication • Forecasted traffic by 2007 • 5175 peta bits per day – according to IDC
Factors driving Internet explosion • Multimedia applications Ex: Kaaza - Application for trading songs • P2P applications • Ex: Gnutella - Application for peer-to-peer sharing of data between computers • etc • Large contribution from small traffic like mail, games, messaging etc.
Impacts of internet traffic explosion • Poor application performance • Congested networks • Frequent break-downs
Obvious solution • Upgrade or add new network infrastructure to meet the growing demand • Then what is the problem? • A very costly affair • Time consuming too…
What is the alternative? • Devise methods to make use of the available bandwidth effectively • What is the effective bandwidth of a network? – Lowest bandwidth of all links in a network
Multipath routing • Single path Vs. Multiple paths
Advantages of multipath routing • Increased network performance • Application can use the paths that best suit its needs • Aggregate path resources
Available multipath solutions • Data Link Layer • Network Layer • Transport Layer • Parallel download from multiple mirror sites
Data link layer • combining multiple physical network links between two devices into a single logical link for increased bandwidth
Network and Transport layer • Network Layer • Table-driven algorithms • Source Routing • Multi Protocol Label Switching (MPLS) • Transport Layer
Parallel download from multiple mirror sites • History-based TCP parallel access • Dynamic TCP parallel access
Limitations with current solutions • Hardware dependent • Platform dependent • Complex to setup and configure • Changes to end points
Proposed solution Multiple Path Connections using Connection Relay Servers - MPCCRS
Requirements • Provide multiple path data transmission • Hardware independent • Platform independent • Easy and Quick to setup
Implementation Client Communication Set client to forward requests to client proxy
Clientproxy communication • Check in cache • Create MD5 digest • Forward request to SP • Wait for client collector response
Serverproxy communication • Calculate Bandwidths of available paths when started • Create MD5 digest • Select service paths • Fill in packets and send data
Client collector communication • Collect packets • Assemble data bytes • Store complete data • Communicate with client proxy
Packet data • Application data • Byte range • File name • Packet number • Connection status
How data collected • Multiple sizes of data • 1,2, & 3 paths
Lessons Learnt • It took good amount of time figuring out how to synchronize between the two streams of data • management of shared resources is Complicated. • lot of time was spent on understanding HTTP protocol • Learnt and used lot of socket programming
Future Work • Extend MPC-CRS to run applications using multimedia/streaming protocols • Establishing security and trust between proxy and crs servers • Efficient way to place the servers across the internet to take full advantage of MPC-CRS
Contribution • Studied existing multipath systems • Identified Limitations of existing systems • Built a multipath system that overcomes existing limitations • Architecture and design • Implementation • Performance testing • Documented results • Proposed areas of future work