downloading - Media Tools

Download Report

Transcript downloading - Media Tools

Bayani Carbone, Miguel Naranjo,
Uloaku Ojiaku, Zhi Qu, Zhichao Wu
1
Present situation
3G USB
802.11
54Mbps
3G
3 G ps
b
2M
User
Provider(s)
Network(s)
+
Internet Path
100Mbps
Web Server
Is it possible to do better on the 3G link?
80
2.1
1
3G
YES
Mobile device with
2 interfaces
802.11
54Mbps
3G
2Mbps
User
Provider(s)
Network(s)
+
Internet Path
100Mbps
Web Server
Mobile device
• Software available for single connection sharing
2
What we want to do…
80
2.
11
3G
802.1
Slave 1
1
Provider(s)
Network(s)
+
Internet Path 2
3G
User
Provider(s)
Network(s)
+
Internet Path 1
Manager
802
Web Server
. 11
3G
Provider(s)
Network(s)
+
Internet Path 3
Slave 2
• Internet access similar to residential broadband using
bandwidth aggregation.
3
Project scope
• Bandwidth aggregation
• No special configuration required on the client, the service
provider’s network infrastructure or the Internet based server.
• Normal function should not be interrupted when a mobile
device newly joins or leaves the setup.
• Study of the effect of mobility on the system’s operation. (e.g.
on a moving train).
• Taking battery level of mobile device into account in the
management of the system.
• Avoiding poor TCP performance in system due to wireless 3G
link.
4
Out of Scope
• Multi-platform support
• Slave mobile devices acting as sub-managers to other
slaves.
• System security issues (protecting system components
against possible malicious attack).
• Maintaining fairness in shared TCP congested links.
• Performance optimization when mobile components
of the system are in motion.
• Billing and charging.
5
Goals
• Simulate and implement:
Highest
Priority
– detection of arrival and departure of routers
(mobile devices)
– Intelligent striping mechanism
– Manager and proxy software
• Achieve higher throughput using multiple links.
• No modifications to the client, 3G network
and Internet based server.
• Study effects of mobility on entire system.
• Take battery level into account in the system
management.
Lowest
Priority
6
Benefits
Category
Cashable
▪ Providing a working solution for
aggregating bandwidth over 3G
mobile networks.
▪ Characterisation of the performance
of TCP over 3G.
Research
Business
Non-cashable
▪ Resulting software could be sold to 3G
mobile users to enable them enjoy this
facility.
▪ Network operators, using this software,
could offer this value-added functionality
to customers as a loyalty incentive or as
an additional paid service.
7
Constraints / Technical Challenges
• Need to modify the TCP/IP stack only in BAM routers
and proxy
 Use of Linux
• Availability of 3G/802.11 enabled mobile devices
 Use Linux boxes with 802.11 and 3G USB interfaces
• Short time frame for project completion
8
Architecture
9
Architecture
TCP connection 2
Provider(s)
Network(s)
+
Internet Path 1
802.1
80
TCP connection
User to Manager
2.
11
3G
Slave 1
TCP connection 1
1
Provider(s)
Network(s)
+
Internet Path 2
3G
User
Manager
Internet Path
802
Our Proxy
.11
Provider(s)
Network(s)
+
Internet Path 3
3G
Web Server
Slave 2
TCP connection
3
10
Architecture
TCP connection 2
Provider(s)
Network(s)
+
Internet Path 1
80
TCP connection
User to Manager
2.
11
3G
Slave 1
TCP connection 1
TCP connection Proxy to Web
Server
1
802.1
Provider(s)
Network(s)
+
Internet Path 2
3G
User
Manager
Internet Path
802
Our Proxy
.11
Provider(s)
Network(s)
+
Internet Path 3
3G
Web Server
Slave 2
TCP connection
3
11
Discovery/ Monitoring protocol
3G Status, IP, Battery level, Queue status, Link Statistics
802.11
802.11
Mobile 3
Mobile 1
Mobile 3
Mobile 1
Mobile 2
Mobile 2
• Detect arrivals/departures of BAM routers
• Collect information for striping mechanism
12
Striping Mechanism
• Want to transfer a file of size B
S1
S2
TCP connection 1
S
R
TCP connection 2
S2
S1
Throughput link 1
X1 
2
RTT1 p1
Throughput link 2
X2 
Theoretical minimal transfer time
2
RTT 2 p 2
B
t
X
X  X1  X 2
13
Striping Mechanism (contd.)






s1
s2
max 
,

2
2


 RTT p RTT p 
1
1
2
2 

• B = s 1 + s2
• Want to choose si to minimize:
si
→ When all the
2
RTT i
B
• Therefore,
sk 
are equal
pi
2
RTTk
pk
 RTT
i
i
2
,is the optimal allocation of
packets on link k.
pi
14
Uplink / Downlink processing
• Uplink with striping
80
2.
11
3G
802.1
Slave 1
1
Provider(s)
Network(s)
+
Internet Path 2
3G
User
Provider(s)
Network(s)
+
Internet Path 1
Manager
Internet Path
802
Our Proxy
Web Server
.11
3G
Provider(s)
Network(s)
+
Internet Path 3
Slave 2
•
•
•
•
Packet 1
Packet 2
Ack 1
Ack 2
15
Uplink / Downlink processing
• Uplink with striping
80
2.
11
3G
802.1
Slave 1
1
Provider(s)
Network(s)
+
Internet Path 2
3G
User
Provider(s)
Network(s)
+
Internet Path 1
Manager
Internet Path
802
Our Proxy
Web Server
.11
3G
Provider(s)
Network(s)
+
Internet Path 3
Slave 2
•
•
•
•
Packet 1
Packet 2
Ack 1
Ack 2
16
Uplink / Downlink processing
• Uplink with striping
80
2.
11
3G
802.1
Slave 1
1
Provider(s)
Network(s)
+
Internet Path 2
3G
User
Provider(s)
Network(s)
+
Internet Path 1
Manager
Internet Path
802
Our Proxy
Web Server
.11
3G
Provider(s)
Network(s)
+
Internet Path 3
Slave 2
•
•
•
•
Packet 1
Packet 2
Ack 1
Ack 2
17
Uplink / Downlink processing
• Downlink with striping
80
2.
11
3G
802.1
Slave 1
1
Provider(s)
Network(s)
+
Internet Path 2
3G
User
Provider(s)
Network(s)
+
Internet Path 1
Manager
Internet Path
802
Our Proxy
Web Server
.11
3G
Provider(s)
Network(s)
+
Internet Path 3
Slave 2
•
•
•
•
Packet 1
Packet 2
Ack 1
Ack 2
18
Uplink / Downlink processing
• Downlink with striping
80
2.
11
3G
802.1
Slave 1
1
Provider(s)
Network(s)
+
Internet Path 2
3G
User
Provider(s)
Network(s)
+
Internet Path 1
Manager
Internet Path
802
Our Proxy
Web Server
.11
3G
Provider(s)
Network(s)
+
Internet Path 3
Slave 2
•
•
•
•
Packet 1
Packet 2
Ack 1
Ack 2
19
Uplink / Downlink processing
• Downlink with striping
80
2.
11
3G
802.1
Slave 1
1
Provider(s)
Network(s)
+
Internet Path 2
3G
User
Provider(s)
Network(s)
+
Internet Path 1
Manager
Internet Path
802
Our Proxy
Web Server
.11
3G
Provider(s)
Network(s)
+
Internet Path 3
Slave 2
•
•
•
•
Packet 1
Packet 2
Ack 1
Ack 2
20
Technologies
• Simulator :
– NS-2
• Modular router
– Click
• Wireless technologies:
– 3G (UMTS)
– 802.11
• Programming Languages
– C++
– OTCL
– Click language
21
Methodology-XP
• XP in the practical part of development
Copyright 2000. J. Donovan Wells
22
Iteration
• Iteration Planning
• Develop
– Stand up meeting
– Programming
• Create unit test
• Pair programming
• Unit test
– Bug fixed / Run Acceptance test
23
How will we monitor progress?
Use wiki for task backlog
Measure number of past acceptance tests
Monitor rate of work (velocity)
Derive XmR charts for project control
Velocity
60
UNPLX
50
40
30
20
LNPLX
10
24/02/2006
17/02/2006
10/02/2006
03/02/2006
27/01/2006
20/01/2006
13/01/2006
0
06/01/2006
story points
•
•
•
•
weeks
story points
G. Collins, Agile Metrics 2007, slide 16, GZ07
24
Evaluation Metrics
• Throughput for file download / upload
– Compared to single highest throughput link
– Compared to idealized single aggregated link
• Throughput under mobility
• Battery level of routers
25
Proposed Phases
Phase 1:
Phase 2:
Research
Architecture
Phase 3:
Implementation
(NS2/Click), Testing
and Optimization
- Research papers
Overall design
-Mobile devices
-Familiarize with NS-2
/Click
Selection of protocols
*Discovery protocol
TCP over 3G
experiments
*Manager protocol
-Striping protocol
*Slaves protocol
- Proxy
*Mgt protocol
*Striping protocol
Phase 4:
Performance
Evaluation
-Experiments (Real life/
NS-2)
*Compare to highest
Phase 5:
Documentation
- Individual report
- Overall report
-Presentation
throughput link
*Compare to
aggregate link
- Mobility
- Battery consumption
26
Timeline
Apr 2008
ID
Task Name
Start
Finish
May 2008
Jun 2008
Jul 2008
Aug 2008
Duration
13/4
1
Research / Presentation
4/10/2008
08/05/2008
4.2w
2
Read reasearch papers
4/10/2008
01/05/2008
3.2w
3
Obtain and install required development
tools
14/04/2008
21/04/2008
1.1w
4
Familiarisation with NS-2 and Click
21/04/2008
28/04/2008
1.1w
5
Prepare presentation
29/04/2008
08/05/2008
1.6w
6
Architecture
21/04/2008
20/05/2008
4.4w
7
High level design
21/04/2008
30/04/2008
1.6w
8
Choice of protocols
28/04/2008
20/05/2008
3.4w
9
TCP over UMTS experiment
08/05/2008
20/05/2008
1.8w
10
Implementation / Testing / Review
[NS-2 / Click ]
20/05/2008
15/07/2008
8.2w
11
Mobile devices:
20/05/2008
15/07/2008
8,2w
12
- Discovery Protocol
20/05/2008
02/06/2008
2w
13
- Manager Management Protocol
28/05/2008
04/07/2008
5.6w
14
- Slave Management Protocol
09/06/2008
6/20/2008
2w
15
- Manager Striping Protocol
6/20/2008
15/07/2008
3.6w
16
Proxy:
09/06/2008
15/07/2008
5.4w
17
- Proxy Management Protocol
09/06/2008
15/07/2008
5.4w
18
- Proxy Striping Protocol
12/06/2008
15/07/2008
4.8w
19
Performance Evaluation (Experiments)
[NS-2 / Real Life]
23/06/2008
01/08/2008
6w
20
Compare to single highest throughput link
23/06/2008
23/07/2008
4.6w
21
Compare to idealized aggregate
throughput
07/07/2008
01/08/2008
4w
22
Documentation
01/08/2008
29/08/2008
4.2w
23
Group report
01/08/2008
22/08/2008
3.2w
24
Individual report
08/08/2008
29/08/2008
3.2w
25
Presentation
20/08/2008
29/08/2008
1.6w
20/4
27/4
4/5
11/5
18/5
25/5
1/6
MS1
8/6
15/6
22/6
MS2
Release 1
29/6
MS3
6/7
13/7
20/7
27/7
3/8
10/8
17/8 24/8
MS4
Release 2
27
Project Team
Zhichao


Bayani
Documentations
monitoring and
control

Software (Ns-2 )
developer

Software
developer

NS-2/Click
specialist
Technical coordination /
management
Miguel



System design
architect
Software
developer
Click specialist
Uloaku
Zhi

Project manager


Software (Ns-2)
developer
Administrative
Support

Internal and
external
communications
co-ordination.
Software
developer/ Click
specialist

Logistics

28
Team Communication
• Regular meetings (three times a week on average)
• Internet-based Wiki
– Meeting summaries
– Task assignment
– Suggestions
– Review of the different concepts, protocols,
components
– Risk / Issues identification and monitoring
• Instant messaging and email
29
Risk management
30
Risk matrix
Likelihood
High
Undesirable
Serious
Critical
Negligible
Undesirable
Serious
Negligible
Negligible
Undesirable
Medium
Low
Low
Medium
High
Impact
31
What has been done so far...
•
•
•
•
•
•
•
Problem description
Scope definition
Research on relevant past papers
Wiki setup
NS-2/CLICK installation
Architectural design drafts
Preliminary protocols definitions
32
What to do next
• TCP over 3G (UMTS) experiment
– Finalise architecture
– Finalise protocol definition
• Begin implementation phase
33
Related Work
• MARS: Bandwidth aggregation for multi-homed mobile router
device
• mTCP: Bandwidth aggregation over modified TCP
• GPRSWeb: improving TCP performance over GPRS (proxy
functionalities)
• TCP performance over 3G
34