220 likes | 315 Views
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
E N D
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
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
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
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
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
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.
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
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
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
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
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
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
Measurement Placement HUT’s Networking laboratory layout – Routers placement
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
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
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.
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
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
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
Future work • Implementation of a SD-card or USB-port modification for external persistent storage • Would solve persistent storage limitation in Linksys routers
Thank you for your attention! Questions?