Characterizing hop-by-hop and end-to-end performance in a static wireless multihop environment Ken Uchida Ken.Uchida@cobaltech.org Networking Laboratory Helsinki University of Technology P.O. Box 3000, 02015 HUT, Finland Master’s Thesis: HUT, Networking Laboratory, Espoo, 2006 Supervisor: Prof. Jörg Ott Presentation: S-38.3310 Research Seminar, 05.09.2006 Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 1 Presentation Overview Agenda • The goal of this thesis • Overview of the Internet and TCP/IP • Transport layer protocols – TCP & UDP • Emerging networks • The concept of DTN • Measurement environment and setup discussion • Conclusions Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 2 The Goal of this thesis Main goal: The main goal to study per-hop and hop-by-hop performance in a static wireless multihop environment. We have constructed wireless chain network using off-the-shelf products running embedded Linux systems. This network acts as a platform for TCP, UDP and DTN measurements. In the thesis: • Construct a static wireless multihop network running custom firmware in wireless routers and cross-compile/compile measurements tools • Determine link characteristics based on measures • Perform TCP, UDP and DTN measurements on per-hop and hop-by-hop basis • Address some practical issues faced during measurements Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 3 The Internet and TCP/IP • The Internet – the network of the networks • Three layers of protocols – At the lowest level Internet Protocol (IP) • Current version IPv4, shifting towards IPv6 ”in progress” – Transport layer Protocols – TCP & UDP • TCP provides reliable connection-oriented transfer • UDP provides connections, best-effort service – Applications protocol • The usability of the Internet depends on some important assumptions: – – – – Continuous, bidirectional end-to-end-paths Short round-trips Symmetric data rates Low Error rates Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 4 Transport layer protocols – TCP • One of the core protocols of the Internet Protocol Suite • Support many popular applications – Web, E-mail, Secure shell, etc. • Plays a dominant role in the Internet – Accounts for about 90% of the bytes carried by the Internet [1] • Provides for upper layer applications: – Reliability – End-to-end connectivity – In-sequence data delivery [1]: Ad Hoc Networks – Technologies and Protocols, P. Mohapatra, S. V. Krishnamurthy, Springer Verlag, 2005 Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 5 Transport layer protocols – UDP • One of the core protocols of the Internet Protocol Suite • Minimalistic message-oriented protocol – No out-of-order detection – No mechanism for error recovery – No flow control • Common network applications that use UDP – Domain name system (DNS), streaming media applications, Voice over IP, Trivial file transfer protocol (TFTP), some p2p clients, etc. Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 6 Emerging Networks • • While the Internet plays a dominant role in networks, there are still evolving networks outside the Internet Examples of these are: – Terrestrial civilian networks connecting mobile users – Wireless military battlefield networks – Outer-space networks like InterPlaNetary project IPN • Problems relating to them are: – Hazardous, challenged environments – High bit error rates • Wireless networks - TCP protocol performance issues – Intermittent connectivity – no end-to-end guarantee all the time • Sparse ad hoc networks • Sensor-nets • Low Earth orbit satellites – Longer delays • Satellite connections • Inter-planetary communications Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 7 The Motivation for DTN Many evolving and potential networks do not conform to the Internet’s underlying assumption. These networks are characterized by: • Long or variable delay • Intermittent connectivity, no end-to-end assumption • Asymmetric data rates • High error rates DTN address to these issues by: • No end-to-end assumption • Better recovery on device failures • Long delays • Minimum end-to-end message exchanges Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 8 DTN Architectural Issues • An overlay network – DTN implementation has ”bundle” layer above transport layer to inter-network between different heterogeneous networks • • • End-to-end message delivery – Virtual message-switching as opposed to packet-switching – Based on store-and-forward architecture Voicemail and e-mail style store-and-forward architecture – The use of persistent storage - Messages are saved in persistent storage in case of network failures, device reboots, etc. – Whole messages or pieces of messages are forwarded from a storage place on one node to a storage place on another node forming a path to destination A non-conversational protocol – Designed to use simple sessions with minimal or no round-trips to fight against long delays in conversational protocols Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 9 Measurement environment & setup Measurement environment and setup discussion • • • • • • • Hardware architecture Why OpenWRT? Network configuration Network placement Channel interference & operation modes Determining link characteristics Measurement software Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 10 Architecture of WRT54GS Linksys WRT54GSv4 router – Technical specs: • 802.11b/g + Speedbooster access point • 5-port 100Mbps Ethernet switch • BroadCom 200 MHz MIPS processor • RAM 16MB / NVRAM 4MB for software • Off-the-shelf product – price about 70€ • Has lots of 3rd party firmwares (DD-WRT, HyperWRT, OpenWRT, Sveasoft, etc.) • Firmware source code under GNU GPL licence Allows compiling custom firmwares with Buildroot Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 11 OpenWRT – Custom Linux Firmware Why OpenWRT was selected? • • • • • By default uses Busybox command line tool Fully-fledged bash-shell Not dependant of GUI Minimal memory use, more memory for applications Uses Debian style packet manager (ipkg) Easy to install/maintain packages Has huge variety of add-on packages Allows customizing to specific needs Brings Linksys WRT54GS closer to enterprise level products: (network auditing/monitoring/penetration tools, Asterisk PBX, NFS support, etc.) [1] [1] http://linuxdevices.com/news/NS9515501295.html Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 12 Network Configuration Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 13 Measurement Placement HUT’s Networking laboratory layout – Routers placement Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 14 Channel interference and operating modes • Channel interference issues – 802.11b and 802.11g operating modes divide the spectrum into 14 channels (All continents) – The common concept is to use channels 1, 6 and 11 to maximize separation of channels (Europe) – According to channel environmental scan, channels 1 and 11 were most populated • We chose to use channel 6 • Wireless LAN operating modes – Wireless LAN were set to operate at 802.11g mode by setting correspondent variables in OpenWRT Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 15 Determining Link Characteristics • Throughput – Throughput based on both TCP and UDP measurements • Bandwidth asymmetry – Determined by running measurements in both directions on both TCP and UDP measurements – from the client to the server and vice versa • Packet loss rate – Determined in the UDP measurements • End-to-end delay – Determined in the DTN measurements Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 16 Measurement Software – TCPX/TCPB, RTP TCP measurements: • tcpx tool were run at the both ends of the connection Operation based on the traffic specification – defines segment size and wait time • tcpb bridge tool were run in wireless routers Option to delay incoming traffic before each transmission Allows bundling incoming traffic rather forwarding immediately Cross-compiled with x86 OpenWRT buildroot to MIPS-platform UDP measurements: • rtpsend – the source application to generate UDP traffic Interval, the delay between each frame Frame size • rtpspy – the sink for UDP traffic provides statistics of incoming traffic The source codes for these programs were provided by Prof. Jörg Ott. Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 17 Measurement Software – DTN2 • DTN2 – and experimental platform and a reference implementation of the DTN protocols • Has been written primarily in C++ and ported to platforms like Linux, Solaris, Win32 Cygwin, FreeBSD, Mac OS X, etc. • Implementation features include tcl-interpreter and flexible storage interface like BerkeleyDB, MySQL, PostGres or external filesystem. • The DTN2 implementation on constant development, the current version used was 2.2.0.1 • The reference implementation ported to Linksys MIPS-architecture by Laurent Franck, Felipe Gil Castineita and Simon Paillard Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 18 Conclusions Throughput At most 25 Mbit/s in any circumstances The use of multihop drops significantly throughput performance Bandwidth asymmetry In TCP and UDP measurements bandwidth asymmetry detected in every case Packet loss in UDP Heavily dependent of sending rate delay after 10 ms 100 ms threshold value after packet losses disappear End-to-end delay No constant end-to-end delay guarantees provided for applications Deviations in averaged end-to-end delay are large Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 19 Conclusions – practical issues Operating in open environment • Expect to face interference from the wireless users especially operating at the same channel • Cross-interference was detected in our measurement – the battle of single-radio networks The limitations in wireless routers • While using Linux broadens possibilities of use in Linksys routers, the computational power is still limiting factor • Internal permanent memory very limited occasional crashes in DTM measurements Predicting wireless behavior non-practical issue in open environment • Would mean to predict wireless users behavior Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 20 Future work Implementation of a SD-card or USB-port modification for external persistent storage Would solve persistent storage limitation in Linksys routers Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 21 Thank you for your attention! Questions? Nicklas Beijar - Distribution of Numbering Information in Interconnected Circuit and Packet Switched Networks Slide 22