1 the role of “awareness” in internet protocol performance carey williamson professor/icore...

70
1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University of Calgary

Post on 19-Dec-2015

216 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

1

The Role of “Awareness”in Internet Protocol Performance

Carey WilliamsonProfessor/iCORE Senior Research

FellowDepartment of Computer Science

University of Calgary

Page 2: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

2

Introduction

It is an exciting time to be an Internet researcher (or even a user!)

The last 10 years of Internet development have brought many advances: World Wide Web (WWW) Media streaming applications “Wi-Fi” wireless LANs Mobile computing E-Commerce, mobile commerce Pervasive/ubiquitous computing

Page 3: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

3

Page 4: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

4

The Wireless Web

The emergence and convergence of these technologies enable the “wireless Web” the wireless classroom (CRAN) the wireless workplace the wireless home

My iCORE mandate: design, build, test, and evaluate wireless Web infrastructures

Holy grail: “anything, anytime, anywhere” access to information (when we want it, of course!)

Page 5: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

5

Some Challenges

Portable computing devices: no problem (cell phones, PDAs, notebooks, laptops…)

Wireless access: not much of a problem (WiFi, 802.11b, BlueTooth, Pringles…)

Security: still an issue, but being addressed Services: the next big growth area??? Performance transparency: providing an

end-user experience that is hopefully no worse than that in traditional wired Internet desktop environments (my focus!)

Page 6: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

6

Research Theme

Existing layered Internet protocol stack does not lend itself well to providing optimal performance for diversity of service demands and environments

Who should bend: users or protocols? Explore the role of “awareness” in

Internet protocol performance Identify tradeoffs, evaluate performance

Page 7: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

7

Talk Overview

Introduction Background

Internet Protocol Stack TCP 101

Motivating Examples Our Work on CATNIP Concluding Remarks

Page 8: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

8

Internet Protocol Stack Application: supporting network

applications and end-user services FTP, SMTP, HTTP, DNS, NTP

Transport: end to end data transfer TCP, UDP

Network: routing of datagrams from source to destination IPv4, IPv6, BGP, RIP, routing protocols

Data Link: hop by hop frames, channel access, flow/error control PPP, Ethernet, IEEE 802.11b

Physical: raw transmission of bits

Application

Transport

Network

Data Link

Physical

001101011...

Page 9: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

9

Viewpoint

“Layered design is good; layered implementation is bad” -Anon.

Good: unifying framework for describing protocols modularity, black-boxes, “plug and play”

functionality, well-defined interfaces (good SE)

Bad: increases overhead (interface boundaries) compromises performance (ignorance)

Page 10: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

10

Tutorial: TCP 101

The Transmission Control Protocol (TCP) is the protocol that gets your data reliably

Used for email, Web, ftp, telnet, … Makes sure that data is received correctly:

right data, right order, exactly once Detects and recovers from any problems

that occur at the IP network layer Mechanisms for reliable data transfer:

sequence numbers, acknowledgements, timers, retransmissions, flow control...

Page 11: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

11

TCP 101 (Cont’d)

TCP is a connection-oriented protocol

SYNSYN/ACK

ACKGET URL

YOUR DATA HERE

FIN FIN/ACKACK

Page 12: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

12

TCP 101 (Cont’d)

TCP slow-start and congestion avoidance

ACK

Page 13: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

13

TCP 101 (Cont’d)

TCP slow-start and congestion avoidance

ACK

Page 14: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

14

TCP 101 (Cont’d)

TCP slow-start and congestion avoidance

ACK

Page 15: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

15

TCP 101 (Cont’d)

This (exponential growth) “slow start” process continues until either of the following happens: packet loss: after a brief recovery phase,

you enter a (linear growth) “congestion avoidance” phase based on slow-start threshold found

all done: terminate connection and go home

Page 16: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

16

Simple Observation

Consider a big file transfer download: brief startup period to estimate network

bandwidth; most time spent sending data at the “right rate”; small added penalty for lost packet(s)

Consider a typical Web document transfer: median size about 6 KB, mean about 10 KB most time is spent in startup period; as soon as

you find out the network capacity, you’re done! if you lose a packet or two, it hurts a lot!!!

Page 17: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

17

The Problem (Restated)

TCP doesn’t realize this dichotomy between optimizing throughput (the classic file transfer model) versus optimizing transfer time (the Web document download model)

Wouldn’t it be nice if it did? (i.e., how much data it was sending, and over what type of network)

Some research starting to explore this...

Page 18: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

18

Motivating Example #1

Wireless TCP Performance Problems

Wired Internet

WirelessAccess

Highcapacity,lowerrorrate

Low capacity,high error rate

Page 19: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

19

Motivating Example #1

Solution: “wireless-aware TCP” (I-TCP, ProxyTCP, Snoop-TCP, ...)

Page 20: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

20

Motivating Example #2

Multi-hop “ad hoc” networking

Carey

Haruna

Page 21: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

21

Motivating Example #2

Multi-hop “ad hoc” networking

Carey

Haruna

Page 22: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

22

Motivating Example #2

Multi-hop “ad hoc” networking

Carey

Haruna

Page 23: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

23

Motivating Example #2

Multi-hop “ad hoc” networking

Carey

Haruna

Page 24: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

24

Motivating Example #2

Multi-hop “ad hoc” networking

Carey

Haruna

Page 25: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

25

Motivating Example #2

Multi-hop “ad hoc” networking

Carey

Haruna

Page 26: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

26

Motivating Example #2

Multi-hop “ad hoc” networking

Carey

Haruna

Page 27: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

27

Motivating Example #2

Multi-hop “ad hoc” networking

Carey

Haruna

Page 28: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

28

Motivating Example #2

Multi-hop “ad hoc” networking

Carey

Haruna

Page 29: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

29

Motivating Example #2

Multi-hop “ad hoc” networking

Carey

Haruna

Page 30: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

30

Motivating Example #2

Two interesting subproblems: Dynamic ad hoc routing: node movement can

disrupt the IP routing path at any time, disrupting TCP connection; yet another way to lose packets!!!; possible solution: Explicit Loss Notification (ELN)

TCP flow control: the bursty nature of TCP packet transmissions can create contention for the shared wireless channel among forwarding nodes; possible solution: rate-based flow control

Page 31: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

31

Our Work

Context-Aware Transport/Network Internet Protocol (CATNIP)

Motivation: “Like kittens, TCP connections are born with their eyes shut” - CLW

Research Question: How much better could TCP perform if it knew what it was trying to accomplish (e.g., Web document transfer)?

Page 32: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

32

Some Key Observations (I think)

Not all packet losses are created equal

TCP sources have relatively little control

IP routers have all the power!!!

Page 33: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

33

Tutorial: TCP 201

There is a beautiful way to plot and visualize the dynamics of TCP behaviour

Called a “TCP Sequence Number Plot” Plot packet events (data and acks) as

points in 2-D space, with time on the horizontal axis, and sequence number on the vertical axis

Page 34: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

34

Time

Seq

Num

X +

Key: X Data Packet + Ack Packet X

XXXX

XXXX

XX

XX

++

++++

+

++++

++

Page 35: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

35

TCP 201 (Cont’d)

What happens when a packet loss occurs?

Quiz Time... Consider a 14-packet Web document For simplicity, consider only a single packet

loss

Page 36: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

36

Time

Seq

Num

X +

Key: X Data Packet + Ack Packet X

XXXX

XXXX

XX

XX

++

++++

+

++++

++

Page 37: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

37

Time

Seq

Num

X +

Key: X Data Packet + Ack Packet X

XXXX

XXXX

XX

X

++

++++

+

+++

++

?

Page 38: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

38

Time

Seq

Num

X +

Key: X Data Packet + Ack Packet X

XXXX

XXXX

XX

X

++

++++

+

+++

++

X +

Page 39: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

39

Time

Seq

Num

X +

Key: X Data Packet + Ack Packet X

XXXX

XXXX

XX

XX

++

++++

+

++++

++

Page 40: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

40

Time

Seq

Num

X +

Key: X Data Packet + Ack Packet X

XXXX

XXXX

XX

X

++

++++

+

++

++

?

Page 41: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

41

Time

Seq

Num

X +

Key: X Data Packet + Ack Packet X

XXXX

XXXX

XX

XX

++

++++

+

+

+++

++

Page 42: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

42

Time

Seq

Num

X +

Key: X Data Packet + Ack Packet X

XXXX

XXXX

XX

XX

++

++++

+

++++

++

Page 43: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

43

Time

Seq

Num

X +

Key: X Data Packet + Ack Packet X

XXX

XXXX

XX

XX

++

++++

+

++

?

Page 44: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

44

Time

Seq

Num

X +

Key: X Data Packet + Ack Packet X

XXX

XXXX

XX

XX

++

++++

+

+++++

X

+

Page 45: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

45

Time

Seq

Num

X +

Key: X Data Packet + Ack Packet X

XXXX

XXXX

XX

XX

++

++++

+

++++

++

Page 46: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

46

Time

Seq

Num

X +

Key: X Data Packet + Ack Packet

X +?

Page 47: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

47

Time

Seq

Num

X +

Key: X Data Packet + Ack Packet

XX

X + ++

XXXX +

+++

X

XX +

+

+

Page 48: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

48

Time

Seq

Num

Key: X Data Packet + Ack Packet

?

Page 49: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

49

Time

Seq

Num

+

Key: X Data Packet + Ack Packet

XX +

+

XXXX +

+++

X

Page 50: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

50

TCP 201 (Cont’d)

Main observation: “Not all packet losses are created equal”

Losses early in the transfer have a huge adverse impact on the transfer latency

Losses near the end of the transfer always cost at least a retransmit timeout

Losses in the middle may or may not hurt, depending on congestion window size at the time of the loss

Page 51: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

51

The TCP Transfer “Pain Profile”

SeqNum of the Single Lost Packet1 N

Rel

ativ

e T

rans

fer

Tim

e

Page 52: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

52

Design of CATNIP•Can we make the TCP/IP protocols “smarter”

about the specific job they are trying to do?

Yes. Convey application-layer context information to the TCP and IP layers

Network

Transport

Application

Document Size

Packet Priority

Page 53: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

53

Design of CATNIP (Cont’d)•Q: What could a TCP source do differently?•A: If it knew how much data it had to send, and

how far along it was already, then maybe…

Rate-Based Pacing of the Last Window (RBPLW)

Early Congestion Avoidance (ECA)

Selective Packet Marking (SPM):Use the reserved high-order bit in the TCP header to convey packet priority information (high priority for the really crucial packets)

Page 54: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

54

Page 55: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

55

Design of CATNIP (Cont’d)•Q: What could an IP router do differently?•A: If it knew which packets were the “painful”

ones to lose, then the router could…

CATNIP-Good: give them preferential treatment, and avoid throwing them away (if possible) when congested

CATNIP-Bad: throw them away

Page 56: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

56

Evaluation of CATNIP

Evaluation

Simulation: ns-2

Emulation: use WAN emulation to test a prototype implementation of CATNIP in the Linux kernel of an Apache Web server.

Page 57: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

57

Simulation Evaluation

• Network model:

Client 100

Server 1

Server 2

Server 10

Client 1

Client 2

Client 99

1.5 Mbps, 5 ms

10 Mbps, 5 ms 10

Mbp

s, 5 m

s

10 M

bps,

5 m

s 10 Mbps, 5 m

s

RouterS RouterC

Page 58: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

58

Simulation Evaluation (Cont’d)

• Web workload model: 100 clients, 10 different Web pages Use empirically-observed distribution to

determine the size, and the number of embedded images

Page 59: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

59

Simulation Evaluation (Cont’d)

• Factors and Levels:Factor Levels

TCP IP

Reno, RBPLW, ECA, ECA+RBPLW, SPM DropTail, RED, CATNIP-Good, CATNIP-Bad, CATNIP-RED

• Performance metrics:

transfer time for each Web page

packet loss ratio

Page 60: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

60

Simulation Results for DropTail Routers

Reno/ RBPLWReno

ECA

ECA/RBPLW

Mean and Standard Deviation of Transfer Times

Page 61: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

61

Simulation Results for CATNIP-Good Routers

Mean and Standard Deviation of Transfer Times Reno/DropTail

SPM/Good

Page 62: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

62

Simulation Results for CATNIP-Bad Routers

Mean and Standard Deviation of Transfer TimesReno/DropTail

SPM/Bad

Page 63: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

63

Observations

Sources have relatively little control IP routers have all the power Adding context-awareness at the IP

routers improves both mean and standard deviation of Web page transfer times

SPM and CATNIP-Good provide most of the benefit

Page 64: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

64

Network Emulation Experiments

• Experimental environment:

WAN emulator: IP-TNE (Internet Protocol Traffic and Network Emulator) at the U of C

Web server:Apache Web server (version 1.3.19-5) on modified Linux 2.4.16 kernel.

Implementation focused on SPM feature only (partially implemented at this time)

Preliminary results available

Page 65: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

65

Client 100

• Primary Factor:

buffer size of the bottleneck link (64 KB -- 512 KB)

10 M

bps,

5 ms

Endpoint

Client 1

Client 2

Client 99

1.5 Mbps, 5 ms10 M

bps, 5 ms

10 Mbps, 5 ms

• Network Model

Server

WAN Emulation

RouterS RouterC

Page 66: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

66

Page 67: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

67

Summary

There seem to be performance advantages to bending the rules regarding the Internet protocol stack layered model

The general notion of “awareness” needs to explored in a variety of contexts wireless networks, ad hoc routing, TCP/IP,

Web caching, mobile computing, adaptive applications, …

Many exciting issues to explore!!

Page 68: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

68

The Next Steps

Putting it all together: Web + Wireless

Wireless Internet Performance Lab (UofC)

Experimental Laboratory for Internet Systems and Applications (UofS/UofC,CFI)

Research Collaborations: UofC, UofS, UofA, TRLabs, CS/ECE Nortel? HP? Cisco? Agilent? Compaq? Telus?

Page 69: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

69

Credits: Research Team

Martin Arlitt: Web performance, workload characterization

Qian Wu: TCP, ns-2 simulation Guangwei Bai: network traffic

measurement and modeling Tianbo Kuang: wireless networks, video

compression, streaming

Nayden Markatchev: tech support Grad Students: Mingwei Gong, Yujian Li,

Kehinde Oladosu, Fang Xiao, and ???

Application

Transport

Network

Data Link

Physical

Page 70: 1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University

70

The End: Question Time!

For more information: Email: [email protected] URL: www.cpsc.ucalgary.ca/~carey