Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University."— Presentation transcript:

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

2 2 Introduction r It is an exciting time to be an Internet researcher (or even a user!) r The last 10 years of Internet development have brought many advances: m World Wide Web (WWW) m Media streaming applications m “Wi-Fi” wireless LANs m Mobile computing m E-Commerce, mobile commerce m Pervasive/ubiquitous computing

3 3

4 4 The Wireless Web r The emergence and convergence of these technologies enable the “wireless Web” m the wireless classroom (CRAN) m the wireless workplace m the wireless home r My iCORE mandate: design, build, test, and evaluate wireless Web infrastructures r Holy grail: “anything, anytime, anywhere” access to information (when we want it, of course!)

5 5 Some Challenges r Portable computing devices: no problem (cell phones, PDAs, notebooks, laptops…) r Wireless access: not much of a problem (WiFi, 802.11b, BlueTooth, Pringles…) r Security: still an issue, but being addressed r Services: the next big growth area??? r Performance transparency: providing an end-user experience that is hopefully no worse than that in traditional wired Internet desktop environments (my focus!)

6 6 Research Theme r Existing layered Internet protocol stack does not lend itself well to providing optimal performance for diversity of service demands and environments r Who should bend: users or protocols? r Explore the role of “awareness” in Internet protocol performance r Identify tradeoffs, evaluate performance

7 7 Talk Overview r Introduction r Background m Internet Protocol Stack m TCP 101 r Motivating Examples r Our Work on CATNIP r Concluding Remarks

8 8 Internet Protocol Stack r Application: supporting network applications and end-user services m FTP, SMTP, HTTP, DNS, NTP r Transport: end to end data transfer m TCP, UDP r Network: routing of datagrams from source to destination m IPv4, IPv6, BGP, RIP, routing protocols r Data Link: hop by hop frames, channel access, flow/error control m PPP, Ethernet, IEEE 802.11b r Physical: raw transmission of bits Application Transport Network Data Link Physical 001101011...

9 9 Viewpoint r “Layered design is good; layered implementation is bad” -Anon. r Good: m unifying framework for describing protocols m modularity, black-boxes, “plug and play” functionality, well-defined interfaces (good SE) r Bad: m increases overhead (interface boundaries) m compromises performance (ignorance)

10 10 Tutorial: TCP 101 r The Transmission Control Protocol (TCP) is the protocol that gets your data reliably r Used for email, Web, ftp, telnet, … r Makes sure that data is received correctly: right data, right order, exactly once r Detects and recovers from any problems that occur at the IP network layer r Mechanisms for reliable data transfer: sequence numbers, acknowledgements, timers, retransmissions, flow control...

11 11 TCP 101 (Cont’d) r TCP is a connection-oriented protocol SYN SYN/ACK ACK GET URL YOUR DATA HERE FIN FIN/ACK ACK

12 12 TCP 101 (Cont’d) r TCP slow-start and congestion avoidance ACK

13 13 TCP 101 (Cont’d) r TCP slow-start and congestion avoidance ACK

14 14 TCP 101 (Cont’d) r TCP slow-start and congestion avoidance ACK

15 15 TCP 101 (Cont’d) r This (exponential growth) “slow start” process continues until either of the following happens: m packet loss: after a brief recovery phase, you enter a (linear growth) “congestion avoidance” phase based on slow-start threshold found m all done: terminate connection and go home

16 16 Simple Observation r Consider a big file transfer download: m brief startup period to estimate network bandwidth; most time spent sending data at the “right rate”; small added penalty for lost packet(s) r Consider a typical Web document transfer: m median size about 6 KB, mean about 10 KB m most time is spent in startup period; as soon as you find out the network capacity, you’re done! m if you lose a packet or two, it hurts a lot!!!

17 17 The Problem (Restated) r TCP doesn’t realize this dichotomy between optimizing throughput (the classic file transfer model) versus optimizing transfer time (the Web document download model) r Wouldn’t it be nice if it did? (i.e., how much data it was sending, and over what type of network) r Some research starting to explore this...

18 18 Motivating Example #1 r Wireless TCP Performance Problems Wired Internet Wireless Access High capacity, low error rate Low capacity, high error rate

19 19 Motivating Example #1 r Solution: “wireless-aware TCP” (I-TCP, ProxyTCP, Snoop-TCP,...)

20 20 Motivating Example #2 r Multi-hop “ad hoc” networking Carey Haruna

21 21 Motivating Example #2 r Multi-hop “ad hoc” networking Carey Haruna

22 22 Motivating Example #2 r Multi-hop “ad hoc” networking Carey Haruna

23 23 Motivating Example #2 r Multi-hop “ad hoc” networking Carey Haruna

24 24 Motivating Example #2 r Multi-hop “ad hoc” networking Carey Haruna

25 25 Motivating Example #2 r Multi-hop “ad hoc” networking Carey Haruna

26 26 Motivating Example #2 r Multi-hop “ad hoc” networking Carey Haruna

27 27 Motivating Example #2 r Multi-hop “ad hoc” networking Carey Haruna

28 28 Motivating Example #2 r Multi-hop “ad hoc” networking Carey Haruna

29 29 Motivating Example #2 r Multi-hop “ad hoc” networking Carey Haruna

30 30 Motivating Example #2 r Two interesting subproblems: m 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) m 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

31 31 Our Work r Context-Aware Transport/Network Internet Protocol (CATNIP) r Motivation: “Like kittens, TCP connections are born with their eyes shut” - CLW r Research Question: How much better could TCP perform if it knew what it was trying to accomplish (e.g., Web document transfer)?

32 32 Some Key Observations (I think) r Not all packet losses are created equal r TCP sources have relatively little control r IP routers have all the power!!!

33 33 Tutorial: TCP 201 r There is a beautiful way to plot and visualize the dynamics of TCP behaviour r Called a “TCP Sequence Number Plot” r 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

34 34 Time SeqNum X + Key: X Data Packet + Ack Packet X X X X X X X X X X X X X + + + + + + + + + + + + +

35 35 TCP 201 (Cont’d) r What happens when a packet loss occurs? r Quiz Time... m Consider a 14-packet Web document m For simplicity, consider only a single packet loss

36 36 Time SeqNum X + Key: X Data Packet + Ack Packet X X X X X X X X X X X X X + + + + + + + + + + + + +

37 37 Time SeqNum X + Key: X Data Packet + Ack Packet X X X X X X X X X X X X + + + + + + + + + + + + ?

38 38 Time SeqNum X + Key: X Data Packet + Ack Packet X X X X X X X X X X X X + + + + + + + + + + + + X +

39 39 Time SeqNum X + Key: X Data Packet + Ack Packet X X X X X X X X X X X X X + + + + + + + + + + + + +

40 40 Time SeqNum X + Key: X Data Packet + Ack Packet X X X X X X X X X X X X + + + + + + + + + + + ?

41 41 Time SeqNum X + Key: X Data Packet + Ack Packet X X X X X X X X X X X X X + + + + + + + + ++ + + +

42 42 Time SeqNum X + Key: X Data Packet + Ack Packet X X X X X X X X X X X X X + + + + + + + + + + + + +

43 43 Time SeqNum X + Key: X Data Packet + Ack Packet X X X X X X X X X X X X + + + + + + + + + ?

44 44 Time SeqNum X + Key: X Data Packet + Ack Packet X X X X X X X X X X X X + + + + + + + ++++ + X +

45 45 Time SeqNum X + Key: X Data Packet + Ack Packet X X X X X X X X X X X X X + + + + + + + + + + + + +

46 46 Time SeqNum X + Key: X Data Packet + Ack Packet X + ?

47 47 Time SeqNum X + Key: X Data Packet + Ack Packet X X X + + + X X X X + + + + X X X + + +

48 48 Time SeqNum Key: X Data Packet + Ack Packet ?

49 49 Time SeqNum + Key: X Data Packet + Ack Packet X X + + X X X X + + + + X

50 50 TCP 201 (Cont’d) r Main observation: m “Not all packet losses are created equal” r Losses early in the transfer have a huge adverse impact on the transfer latency r Losses near the end of the transfer always cost at least a retransmit timeout r Losses in the middle may or may not hurt, depending on congestion window size at the time of the loss

51 51 The TCP Transfer “Pain Profile” SeqNum of the Single Lost Packet 1 N Relative Transfer Time

52 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

53 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)

54 54

55 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

56 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.

57 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 RouterSRouterC

58 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

59 59 Simulation Evaluation (Cont’d) Factors and Levels: Performance metrics:  transfer time for each Web page  packet loss ratio

60 60 Simulation Results for DropTail Routers Reno/ RBPLW Reno ECA ECA/RBPLW Mean and Standard Deviation of Transfer Times

61 61 Simulation Results for CATNIP-Good Routers Mean and Standard Deviation of Transfer Times Reno/DropTail SPM/Good

62 62 Simulation Results for CATNIP-Bad Routers Mean and Standard Deviation of Transfer Times Reno/DropTail SPM/Bad

63 63 Observations r Sources have relatively little control r IP routers have all the power r Adding context-awareness at the IP routers improves both mean and standard deviation of Web page transfer times r SPM and CATNIP-Good provide most of the benefit

64 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

65 65 Client 100 Primary Factor: buffer size of the bottleneck link (64 KB -- 512 KB) 10 Mbps, 5 ms Endpoint Client 1 Client 2 Client 99 1.5 Mbps, 5 ms 10 Mbps, 5 ms Network Model Server WAN Emulation RouterSRouterC

66 66

67 67 Summary r There seem to be performance advantages to bending the rules regarding the Internet protocol stack layered model r The general notion of “awareness” needs to explored in a variety of contexts m wireless networks, ad hoc routing, TCP/IP, Web caching, mobile computing, adaptive applications, … r Many exciting issues to explore!!

68 68 The Next Steps r Putting it all together: Web + Wireless r Wireless Internet Performance Lab (UofC) r Experimental Laboratory for Internet Systems and Applications (UofS/UofC,CFI) r Research Collaborations: m UofC, UofS, UofA, TRLabs, CS/ECE m Nortel? HP? Cisco? Agilent? Compaq? Telus?

69 69 Credits: Research Team r Martin Arlitt: Web performance, workload characterization r Qian Wu: TCP, ns-2 simulation r Guangwei Bai: network traffic measurement and modeling r Tianbo Kuang: wireless networks, video compression, streaming r Nayden Markatchev: tech support r Grad Students: Mingwei Gong, Yujian Li, Kehinde Oladosu, Fang Xiao, and ??? Application Transport Network Data Link Physical

70 70 The End: Question Time! r For more information: m Email: carey@cpsc.ucalgary.ca m URL: www.cpsc.ucalgary.ca/~carey


Download ppt "1 The Role of “Awareness” in Internet Protocol Performance Carey Williamson Professor/iCORE Senior Research Fellow Department of Computer Science University."

Similar presentations


Ads by Google