1 utkarsh goel, ajay miyyapuram, mike p. wittie, qing yang montana state university - bozeman...

31
1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation December 03 th , 2013 Conference on Mobile and Ubiquitous System: Computing, Networking and Services (Mobiquitous’13)

Upload: aditya-cryer

Post on 31-Mar-2015

215 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

1

Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang

Montana State University - Bozeman

MITATE: Mobile Internet Testbed for Application Traffic Experimentation

December 03th, 2013Conference on Mobile and Ubiquitous System: Computing, Networking

and Services (Mobiquitous’13)

Page 2: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

2

Societal problem

• In many ways the causes of end-to-end network delay are not technological, but economic in nature.

• Reductions to end-to-end delays are unlikely to come from improvements of network mechanisms alone.

• Application communication protocols must be smart enough to adapt to changing network performance to keep communication delay low.

• To design and validate adaptive communication protocols, developers need to prototype their implementations in production networks.

Page 3: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

3

Contd.

APP SERVER

USER

DEVELOPER

RESEARCHER

Measure end-to-end

delays

Evaluate new network

mechanisms

X 1000

Page 4: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

4

MITATE

• A new platform for mobile application prototyping in live mobile networks.

• Allows experimentation with custom mobile application traffic between mobile devices and cloud infrastructure endpoints.

• A collaborative framework, in which participants contribute their mobile network resources and are allowed, in turn, to run their traffic experiments on others’ devices.

• Open to the public and being deployed on Google’s Measurement Lab (M-Lab).

Page 5: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

5

Developers without MITATE

//app codeint main()

App Traffic//srvr codeint main()

Mobile Devices Back-end ServersApplication Implementation

//app codeint main()

App Traffic//srvr codeint main()

Security concerns over mobile code

Restrictive APIs

Want to measure traffic delays. Have to deploy code to do so.

Small number of volunteered devices

Downsides of code deployment

Page 6: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

6

How does MITATE help developers?

MITATE separates traffic generation from application logic

MITATE App Traffic MITATE

Mobile Devices Back-end ServersApplication Implementation

//app codeint main()

//srvr codeint main()

App Traffic

App TrafficXML:

Page 7: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

7

MITATE’s traffic definition

• Generate traffic definitions in a form of well structured XML by defining

– what the traffic looks like?– where the traffic is going?– when the traffic is to be sent?– which mobile device should execute the experiment?

Page 8: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

8

Defining a transfer

<transfer><id>transfer1</id><src>client</src><dst>1.2.3.4</dst><protocol>UDP</

protocol><dstport>5060</

dstport><bytes>32</bytes><response>0</

response></transfer>

other parameters include:

• Transmission delay• No. of packets• Explicit content

Page 9: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

9

Defining a packet content

<content> <contentid>content1</contentid> <data> <![CDATA[0x0100be07de55...]]> </data>

<contenttype>HEX</contenttype></content>

Page 10: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

10

Defining a criteria

<criteria> <id>criteria1</id> <latlong>"45.666 -111.046"</latlong> <radius>5000</radius> <networktype>cellular</networktype> <starttime>12:00</starttime> <endtime>13:30</endtime>

</criteria>

other parameters include:

• Network carrier• Minimum battery power• Minimum signal strength• Device model name

Page 11: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

11

Summing up all the definitions

<transaction count=“10”><criteria>

<criteriaid>criteria1</criteriaid></criteria><transfers>

<transferid delay=“10” repeat=“1”>transfer1</transferid>

<transferid delay=“20” repeat=“2”>transfer2</transferid>

<transferid delay=“10” repeat=“1”>transfer1</transferid></transfers>

</transaction>

Page 12: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

12

DNS Query through MITATE

<transfer> <id>dns_req</id> <src>client</src> <dst>DNS</dst> <dstport>53</dstport> <prot>UDP</prot> <bytes><![CDATA[0x0100be07de55...]]></bytes> <response>1</response>

</transfer>

Page 13: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

13

How does MITATE help developers?

MITATE separates traffic generation from application logic

MITATE App Traffic MITATE

Mobile Devices Back-end ServersApplication Implementation

//app codeint main()

//srvr codeint main()

App Traffic

App TrafficXML:

No mobile code – only traffic description shipped to mobiles

Flexibility in traffic generation logic

Large number of volunteered devices

Upsides of using MITATE

where performance of intermediate solutions are the reported metrics in each experiment round

Page 14: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

14

Researchers without MITATE

Call your friends…

… line up a few volunteered devices

Measure network performance…

… configure network simulators

Low device and setting diversityConfigured simulations do not

reflect traffic shaping mechanisms

LatencyLossBandwidth

Page 15: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

15

Challenges in deploying large scale testbed

• Assure sufficient resource capacity for scheduled experiments.

(Limiting resource is mobile data, subject to monthly caps)

• Entice users to contribute resources

• Protect contributed resources from abuse.

• MITATE jointly addresses both problems using a data credit exchange system inspired by BitTorrent tit-for-tat mechanisms

Page 16: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

16

Security & privacy concerns

• Personal mobile devices have the potential for violations of privacy if a device owner’s activity and personally identifiable information were to become public.

• MITATE’s security design protects user privacy, the volunteered devices, and non-MITATE Internet resources.

“That was a very interesting cell phone conversation.Thanks for sharing it with me”

Page 17: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

17

Protecting user privacy & user device

• User can set usage limits for mobile data, Wi-Fi data, and battery level on their devices.

• We separate all data collected on devices from personally identifiable user account information Don’t w

orry!

• Only active traffic experiments and cannot monitor non-MITATE traffic.

Page 18: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

18

Protecting Non-MITATE resources

• Avoid DDoS attacks configured as MITATE experiments.

• Limit traffic by placing a credit limit.

• A MITATE user may request that multiple devices send data simultaneously, the user’s credit will be rapidly depleted.

• So even if the transmissions are malicious, they will be short-lived.

Page 19: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

19

Measure of application performance

• What is the largest game state update message that can be reliably delivered under 100 ms?

• Whether the delays are due to network allocation timeouts or due to the device entering power save mode?

• Does my application traffic need to contend with traffic shaping mechanisms?

• Which CDN provides fastest downloads through a particular mobile service provider's peering points?

Page 20: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

20

Message delay vs. message size at 10AM on CSP 1 to a CA datacenter

Asymmetric network provisioning

Page 21: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

21

Measure of application performance

• What is the largest game state update message that can be reliably delivered under 100 ms?

• Whether the delays are due to network allocation timeouts or due to the device entering power save mode?

• Does my application traffic need to contend with traffic shaping mechanisms?

• Which CDN provides fastest downloads through a particular mobile service provider's peering points?

Page 22: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

22

Downlink message delay vs. transmission interval on CSP1 and CSP2

Network allocation timeouts causes delay

Page 23: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

23

Measure of application performance

• What is the largest game state update message that can be reliably delivered under 100 ms?

• Whether the delays are due to network allocation timeouts or due to the device entering power save mode?

• Does my application traffic need to contend with traffic shaping mechanisms?

• Which CDN provides fastest downloads through a particular mobile service provider's peering points?

Page 24: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

24

Effect of payload on CSP1

MITATE can detect content based traffic shaping

Page 25: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

25

Effect of choice of transport protocols

Packet loss due to traffic policing, rather than traffic shaping

Page 26: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

26

Measure of application performance

• What is the largest game state update message that can be reliably delivered under 100 ms?

• Whether the delays are due to network allocation timeouts or due to the device entering power save mode?

• Does my application traffic need to contend with traffic shaping mechanisms?

• Which CDN provides fastest downloads through a particular mobile service provider's peering points?

Page 27: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

27

Measurement based CDN selection

CDN2 provides the best combinationof performance

Page 28: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

28

Conclusions

• MITATE is the first public testbed that supports prototyping of application communications between mobiles and cloud datacenters.

• MITATE separates application logic from traffic generation, which simplifies security and resource sharing mechanisms.

• We have presented data collected with MITATE experiments that affects mobile application message delay.

Page 29: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

29

Where can you find MITATE

• MITATE’s approach has been announced through a

- poster at USENIX NSDI’13

- presentation at ACM IMC’13

Page 30: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

30

Getting involved

• Beta testers and collaborators within the mobile development and research communities to test MITATE

• Suggest extensions to its feature set before making the tool public on M-Lab.

Page 31: 1 Utkarsh Goel, Ajay Miyyapuram, Mike P. Wittie, Qing Yang Montana State University - Bozeman MITATE: Mobile Internet Testbed for Application Traffic Experimentation

31

Utkarsh Goel

[email protected]

http://www.cs.montana.edu/~utkarsh.goel

Web URL: http://mitate.cs.montana.eduEmail: [email protected]

Code Repo: https://github.com/msu-netlab/MITATE

Learn more