Portable Networks and the Wireless Web Carey Williamson
Portable Networks and the Wireless Web Carey Williamson Department of Computer Science University of Calgary 1
Introduction n n Wireless technologies are prevalent today; continued growth in popularity Example: IEEE 802. 11 b WLAN (“Wi. Fi”) Economical, convenient, flexible solution for tetherless network access (11 Mbps) Enabler for mobile computing Two possible modes of usage: n n 2/52 Infrastructure mode Ad hoc mode 2
Example: Infrastructure Mode cnn. com Internet Access Point (AP) Carey 3
Example: Ad Hoc Mode n Multi-hop “ad hoc” networking Mike Carey 4
Example: Ad Hoc Mode n Multi-hop “ad hoc” networking Mike Carey 5
Example: Ad Hoc Mode n Multi-hop “ad hoc” networking Mike Carey 6
Example: Ad Hoc Mode n Multi-hop “ad hoc” networking Mike Carey 7
Main Idea n n n 8/52 Observation: The same wireless technology that allows clients to be mobile also allows servers to be mobile Hybrid networking paradigm, combining client-server and ad hoc networking, without general Internet infrastructure Portable, short-lived, ad hoc networks “Portable networks” Is this useful? How well does it work? 8
Portable Network (1 of 2) mystuff. com Access Point (AP) Carey 9
Portable Network (2 of 2) mystuff. com Carey 10
Portable Networks Concept n n n n Set up when needed, tear down after Typically needed for minutes or hours When and where not known a priori No existing network infrastructure General Internet access not available, but not required either Pre-defined content; target audience Modest number of users; mobile too 11
Example Usage Scenarios #1 n n n n Classroom area network (e. g. “legacy classroom”) Press conferences, media events Conventions and trade shows Disaster recovery sites Recruiting events Schools Voting. . . 12
#2 Wireless Media Servers 13
#3 Wireless Gaming Multi-player gaming over an ad hoc wireless network 14
#4 Home Networking n n Even for homes without Internet access, wireless media servers and ad hoc networks could be quite useful Possible usage scenarios: n n n use PDA to read recipe while in the kitchen page your kids for supper time work while on your back porch (backups) music in any room of the house portable media player for parties family gaming fun 15
Research Objectives n n n 16/52 Assess feasibility of portable networks Benchmark the capabilities and limitations of wireless content servers in an ad hoc IEEE 802. 11 b WLAN Identify performance bottlenecks Understand sensitivity of performance to different workload assumptions Understand impacts of wireless network channel quality and error rates 16
Prototype Experiments n Wireless Classroom Measurements n n n Wireless Web Server Benchmarking n n n CPSC 641 grad class (14 students) February 2003 Laboratory experiments Stress-testing, workload sensitivities Wireless Media Server Experiments n n French 217 cinematography class (Mar ‘ 04) Video and audio streaming (8 students) 17
Prototype Experiments 1 n Wireless Classroom Measurements n n n Wireless Web Server Benchmarking n n n CPSC 641 grad class (14 students) February 2003 Laboratory experiments Stress-testing, workload sensitivities Wireless Media Server Experiments n n French 217 cinematography class (Mar ‘ 04) Video and audio streaming (8 students) 18
Experimental Setup 19
Classroom Experiments 0 (Feb’ 03) 1400 20
21
TCP – Number of Packets 22
Prototype Experiments 2 n Wireless Classroom Measurements n n n Wireless Web Server Benchmarking n n n Laboratory experiments Stress-testing, workload sensitivities Wireless Media Server Experiments n n 23/52 CPSC 641 grad class (14 students) February 2003 French 217 cinematography class (Mar ‘ 04) Video and audio streaming (8 students) 23
Experimental Setup Sniffer. Pro 4. 6 wireless sniffer httperf clients server Apache 1. 3. 23 . . . § Empirical measurement methodology n Network: In-building 11 Mbps IEEE 802. 11 b wireless LAN, operating in ad hoc mode (single hop; no mobility) n Hardware: Compaq Evo N 600 c notebooks (1. 2 GHz Pentium III, 128 MB RAM, 512 KB L 2 Cache, Cisco Aironet 350 network cards n Software: Redhat Linux 7. 3 (kernel 2. 4. 18 -3), Apache, Sniffer. Pro, httperf for Web workload generation 24
Benchmarking Experiments Experimental Factors and Levels Factor Levels Number of Clients 1, 2, 4 HTTP Transaction Rate (per-client) 10, 20, 30, …, 160 HTTP Transfer Size (KB) 1, 2, 4, 8, …, 100 Persistent Connections no, yes HTTP Requests per Connection 1, 5, 10, 15, …, 60 Transmit Power (m. W) 1, 5, 20, 30, 50, 100 Client-Server Distance (m) 1, 100 Performance Metrics: HTTP response time, network throughput 25
Tutorial: HTTP and TCP n TCP is a connection-oriented protocol SYN/ACK GET URL ACK Web Client Web Server YOUR DATA HERE FIN/ACK 26
Example Web Page Harry Potter Movies page. html The new HP book will be out soon and then there will be a new movie shortly after that. Title is still secret, but my guess is. . . “Harry Potter and the Bathtub Ring” hpface. jpg castle. gif 27
Server Client TCP SYN Get page. html TCP FIN TCP SYN The “classic” approach in HTTP/1. 0 is to use one HTTP request per TCP connection, serially. Get hpface. jpg TCP FIN TCP SYN Get castle. gif TCP FIN 28
Server Client Concurrent (parallel) TCP connections can be used to make things faster. TCP SYN Get page. html TCP FIN C C S S S Get hpface. jpg F S castle. gif F 29
Server Client TCP SYN Get page. html The “persistent HTTP” approach can re-use the same TCP connection for Multiple HTTP transfers, one after another, serially. Amortizes TCP overhead, but maintains TCP state longer at server. Get hpface. jpg Get castle. gif Timeout TCP FIN 30
Research Question n What is the range of sustainable load? Design: • • • 31/52 Number of Client: 1 HTTP request rate (req/sec): 10, 20, …, 160 HTTP transfer size: 1 KB Non-persistent HTTP Client-server distance: 1 meter (same desk) 31
Transaction Rate (req/sec) Transmit Queue Length Request Rate Results Request Rate (req/sec) (a) Successful HTTP Transaction Rate Transmitted Packet ID (b) Client Transmit Queue - Maximum sustainable 1 KB HTTP transaction rate for 1 client is about 85 reqs/sec (throughput about 0. 9 Mbps) - Beyond this request rate, the client link-layer transmit queue builds up and overflows, losing packets even before they get onto the wireless LAN! - Wireless LAN is bottleneck (802. 11 b channel access protocol) 32
HTTP/1. 0 Transaction (1 KB) 33
CSMA-CA + Acknowledgement Carrier Sense Multiple Access with Collision Avoidance source “Air” is free for DIFS time period (128 usec) destination others send frame data SIFS Receive ACK back that frame was received intact! ack NAV: defer access DIFS All other devices must defer while “air” is busy • Every frame is ack’ed - except broadcast and multicast! * SIFS - Short Inter-Frame Space (approx 28 µs) 34
Research Question n Does persistent HTTP help? Design: • • • Number of Clients: 1, 2 HTTP request rate: 10 req/sec HTTP transfer size: 1 KB Persistent HTTP Client-server distance: 1 m (same desk) 35
Throughput (Mbps) Results for Persistent Connections YES! HTTP Req/Connection § Peak throughput: 3. 2 Mbps, 3. 5 x improvement over nonpersistent connection case (0. 9 Mbps) for 1 KB transfers § Typically 2 TCP packets per HTTP transaction (vs 10) 36
HTTP/1. 1 Transactions (1 KB) 37
Research Question n What is maximum throughput achievable? Design • • • Number of Client: 1 HTTP request rate: 10 req/sec HTTP transfer size (KB): 1, 2, 4, 8, … Non-persistent HTTP Client-server distance: 1 m (same desk) 38
Transfer Size Results 8 KB: Mean Duration: 24 ms Throughput: 2. 9 Mbps Frequency (%) TCP Connection Duration (sec) 1 KB: Mean Duration: 9. 7 ms Throughput: 0. 9 Mbps 48 KB: Mean Duration: 97 ms Throughput: 4. 1 Mbps § bottleneck shifts to the server’s link Connection ID Duration (Sec) layer transmit queue 39
Summary of Results n n n Wireless Web servers can work! Wireless LAN is the bottleneck Bottleneck manifests itself differently, depending on the Web workload n n n 40/52 client side, for small HTTP transfers server side, for large HTTP transfers unfairness amongst clients if TCP SYN losses network thrashing in some scenarios Persistent HTTP helps a lot! 40
Prototype Experiments 3 n Wireless Classroom Measurements n n n Wireless Web Server Benchmarking n n n CPSC 641 grad class (14 students) February 2003 Laboratory experiments Stress-testing, workload sensitivities Wireless Media Server Experiments n n French 217 cinematography class (Mar ‘ 04) Video and audio streaming (8 students) 41
Experimental Setup Wireless Sniffer 42
Video Frame Size Distribution 43
Video Frame Sizes (I-frames) 44
UDP Packet Traffic on WLAN Web HTTP traffic and streaming 8 streaming sessions active New streaming sessions starting Viewing smaller video clips Done 45
TCP Packet Traffic on WLAN New streaming sessions starting Web HTTP traffic and streaming 46
Summary of Results n n n Wireless media servers can work! Classroom experiment worked perfectly Students loved it! Wireless LAN is the bottleneck Bottleneck at server WLAN interface n n 47/52 Works beautifully with up to 8 clients (400 kbps video, 128 kbps audio each) Complete disaster with 9 or more clients! Queue overflow, packet loss, late, etc. Need to use multicast to make this scalable 47
Mobility Experiment Wireless Sniffer 48
Mobility Experiment “bad apple” phenomenon Wireless Sniffer 49
50
The “Bad Apple” Phenomenon n What? One user with poor or transient wireless connectivity in the WLAN disrupts performance for everyone Why? Shared broadcast WLAN; lots of MAC-layer retransmissions; FIFO server queue; Head of Line (HOL) blocking Solutions? n n Disable MAC-layer retransmissions (yuck!) Multiple queues and packet scheduling 51
Conclusions n n n Portable networks: a novel paradigm for the use of wireless ad hoc networks Reasonable performance with existing off-the-shelf hardware and software Performance bottleneck at the WLAN manifests itself in interesting ways IEEE 802. 11 a (55 Mbps) may help Need to explore novel scenarios for the use of this networking paradigm 52
The End n Thanks for your attention! n Credits: n n Guangwei Bai, Jean Cao, Kenny Oladosu My i. CORE research team n More info: carey@cpsc. ucalgary. ca n Questions? 53
- Slides: 53