Title: Multiple Path Connection through a Set of Connection Relay Servers
1Multiple 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
2Outline of the Talk
- Background and Motivation
- Related Work
- MPC-CRS
- Performance of MPC-CRS
- Lessons learned
- Future work
3Internet Explosion
- Started with ARPANET in 1969.
- Factors contributing to explosion
- multimedia
- P2P applications
- Impact
- Poor application performance
- Congested networks
- Frequent break-downs
- Forecasted traffic by 2007 5175 peta bits IDC
4Obvious Solution
- Upgrade or add new network infrastructure to meet
the growing demand - Then what is the problem?
- A very costly affair
- Time consuming too
5What 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
6Multipath Routing
- Single path Vs. Multiple paths
7Advantages Of Multipath Routing
- Increased network performance
- Application can use the paths that best suit its
needs - Aggregate path resources
- Improved security
-
8Available Multipath Solutions
- Data Link Layer
- Network Layer
- Transport Layer
- Parallel download from multiple mirror sites
9Data Link Layer
- combining multiple physical network links between
two devices into a single logical link for
increased bandwidth - Taken from - Yu Cai, "On Proxy Server Based
Multipath Connection", PhD dissertation, UCCS,
2005
10Network Layer
- Network Layer
- Table-driven algorithms
- Source Routing
- Multi Protocol Label Switching (MPLS)
11Transport Layer
- Transport layer
- (parallel) pTCP 1 subflow control via SM
(stripped manager) and TCP-v (virtual) no UDP
support. - (multiple) mTCP 2 subflow control a TCP
subflow on each path one-way only no UDP
support. - TCP congestion control
- TCP Westwood 3 use measured residual
bandwidth instead of 1/2 cwnd in fast
retransmit and slow start. - TCP-PR 4 use a TCP timer for TCP persistent
reordering problem.
12Parallel Download from Multiple Mirror Sites
- History-based TCP parallel access
- Dynamic TCP parallel access
Ref http//research.microsoft.com/pablo/paraload
.aspx
13Work at UCCS
- Proxy Server based Multipath Connection (PSMC)
- Yu cai and Frank watson
- Data striping was implemented at the IP layer
- Data reassembly using double buffer for TCP
- Allows support for TCP and UDP
- Cons
- TCP persistent reordering problem in multipath
environment. - TCP packets are likely to reach destination out
of sequence number, which cause serious
performance degradation. - Solution is to implemented a double buffering
scheme on TCP layer - Need to change the sender and receivers
operating system network related code
14Bit Torrent
- Popular P2P file distribution system
- File is broken down to pieces ( 1MB)
- Fragments are downloaded from peers
- Packets are reassembled on the client side.
- Pros
- Faster downloads
- No server congestion
- Cons
- Multiple peers should have same file!!
- Legal issues
15Limitations With Current Solutions
- Hardware dependent
- Platform dependent
- Complex to setup and configure
- Changes to end points
16Proposed Solution
- Multiple Path Connections using Connection Relay
Servers - MPCCRS
17Requirements
- Provide multiple path data transmission
- Hardware independent
- Platform independent
- Easy and Quick to setup
- Compatible with current internet infrastructure
18Architecture
19Implementation
- Client Communication
- Set client to forward requests to client proxy
20Clientproxy Communication
- Check in cache
- Create MD5 digest
- Forward request to SP
- Wait for client collector response
21Serverproxy Communication
- Calculate Bandwidths of available paths when
started - Create MD5 digest
- Select service paths
- Fill in packets and send data
22CRS and Bandwidth Relay Server Communication
23Client Collector Communication
- Collect packets
- Assemble data bytes
- Store complete data
- Communicate with client proxy
24Packet Data
- Application data
- Byte range
- File name
- Packet number
- Connection status
25(No Transcript)
26Testbed Machines
27How Data Collected
- Multiple sizes of data
- 1,2, 3 paths
28End-to-End Response Time
29File Size Vs. Avg. Transfer Rate
30Client Collector Processing Time
31Client Collector Average Process Rates
32CRS Average Process Times
33Lessons 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
34Future 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
35Contribution
- 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
36Additional References
- 1 H. Hsieh, et. al., ptcp An end-to-end
transport layer protocol for striped
connections, In Proceedings of IEEE ICNP, 2002. - 2 M. Zhang, et. al., A Transport Layer
Approach for Improving End-to-End Performance and
Robustness Using Redundant Paths, In Proc. of
the USENIX 2004 Annual Technical Conference.
2004. - 3 C. Casetti, et. al., "TCP Westwood
End-to-End Congestion Control for Wired/Wireless
Networks", In Wireless Networks Journal 8,
467-479, 2002 - 4 S. Bohacek, et. al. A New TCP for Persistent
Packet Reordering, In Transactions on
Networking, 2004.