802.16 IP Telephone Lab - Introduction to OWAMP One-Way Ping Dr. Quincy Wu, Associate Professor (solomon@ipv6.club.tw) Graduate Institute of Communication Engineering National Chi Nan University 1 802.16 IP Telephone Lab Growth of Internet • Number of computers attached to the Internet • In 1998, the average rate of new computers being added to the Internet reached more than one per second – And has accelerated Computer Networks and Internets, Douglas E. Comer, Pearson Prentice hall, 2004. 2 802.16 IP Telephone Lab Growth of Internet (cont.) • Plotted on a log scale • The growth appears approximately linear – Exponential growth – The Internet has been doubling in size every nine to twelve months Computer Networks and Internets, Douglas E. Comer, Pearson Prentice hall, 2004. 3 802.16 IP Telephone Lab Hosts & Routers LAN LAN router LAN router router LAN LAN router router LAN LAN: Local Area Network 4 802.16 IP Telephone Lab Probing The Internet • Q: How do we know the number of computers attached to the Internet? • In the early days when the Internet consisted of a dozen sites, this size could be determined manually. • Now we use programs that test to see whether a computer is currently online. – ping www.80216.com.ncnu.edu.tw • www.80216.com.ncnu.edu.tw is alive – ping 163.22.24.102 • 163.22.24.102 is alive • Certainly, this probing is not very precise, for two reasons. 5 802.16 IP Telephone Lab Interpreting A Ping Response C:\>ping www.cse.yzu.edu.tw Pinging cswww.cse.yzu.edu.tw [140.138.144.172] with 32 bytes of data: Reply from 140.138.144.172: bytes=32 time=14ms TTL=115 Reply from 140.138.144.172: bytes=32 time=11ms TTL=115 Reply from 140.138.144.172: bytes=32 time=10ms TTL=115 Reply from 140.138.144.172: bytes=32 time=11ms TTL=115 Ping statistics for 140.138.144.172: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 10ms, Maximum = 14ms, Average = 11ms C:\>ping www.csie.nctu.edu.tw Pinging www.csie.nctu.edu.tw [140.113.209.41] with 32 bytes of data: Reply from 140.113.209.41: bytes=32 time=6ms TTL=56 Reply from 140.113.209.41: bytes=32 time=6ms TTL=56 Reply from 140.113.209.41: bytes=32 time=6ms TTL=56 Reply from 140.113.209.41: bytes=32 time=6ms TTL=56 Ping statistics for 140.113.209.41: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 6ms, Maximum = 6ms, Average = 6ms 6 802.16 IP Telephone Lab Probing Packets 7 802.16 IP Telephone Lab Round-Trip Time Client Server request 0.000 ms reply 9.952 ms request 1006.122 ms reply 1017.039 ms 8 802.16 IP Telephone Lab Why Didn’t We Measure One-Way Delay? • Asynchronous system clocks would make the measurement result confusing. Sender 19:20:21 Receiver 19:20:19 19:20:20 Delay = -1 sec ! 9 802.16 IP Telephone Lab ICMP Packet Format • RFC 792 – Internet Control Message Protocol 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 Code Type Checksum unused Identifier Sequence Number Data 10 802.16 IP Telephone Lab Why Do We Favor One-Way Delay? • The path from a source to a destination may be different than the path from the destination back to the source ("asymmetric paths"). • Even when the two paths are symmetric, the behavior of applications can be quite different: – File transfer – Web browsing – IPTV 11 802.16 IP Telephone Lab Why Can We Measure 1-Way Delay Now? • Available Time Source: – – – – Cesium oscillator: Definition of time (subject to relativistic effects) Rubidium oscillator: found in cell towers, very stable GPS receiver: accuracy circa 10 ns CDMA receiver: accuracy circa 10 μs • The stratum of any NTP-synchronized device is the stratum of the device it is synchronized to, plus 1. – GPS receiver: stratum 0 – Computer connected to it by a serial line: stratum 1 – Client that gets the time from that computer: stratum 2 • Stratum 1 Time Servers: – http://ntp.isc.org/bin/view/Servers/StratumOneTimeServers 12 802.16 IP Telephone Lab Measuring One-Way Delay Synchronization Sender 19:20:21 Receiver 19:20:19 19:20:21 19:20:22 Delay = 1 sec 13 802.16 IP Telephone Lab OWAMP Design Goals • One-Way Active Measurement Protocol – RFC 4656, September 2006. • Wide deployment of “open” servers would allow measurement of one-way delay to become as commonplace as measurement of RTT using ICMP tools such as ping. 14 802.16 IP Telephone Lab OWAMP Logical Model Session Sender OWAMP-Test Session Receiver Server OWAMP-Control Control-Client OWAMP-Control Fetch-Client 15 802.16 IP Telephone Lab Commonly Implemented Model Session-Sender OWAMP-Test Control-Client OWAMP-Control Session-Receiver Server Fetch-Client 16 802.16 IP Telephone Lab OWAMP-Test • Transport Protocol: – UDP • Sender/Receiver IP and port numbers: – Negotiated by OWAMP-Control message • OWAMP-Test does not run on a fixed port – To prevent some devices may assign higher priorities to these measurement packets 17 802.16 IP Telephone Lab OWAMP-Test Packet Format 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 Sequence Number Timestamp (8 octets) Error Estimate Packet Padding • Sequence: start with 0; incremented by 1 • Timestamp: RFC1305 format • Padding is random, but users have an option to configure it to consist of all zeros. • Minimum data length: 14 octets 18 802.16 IP Telephone Lab OWAMP Errors •Preliminary Findings: –Min error estimates look to be in the 55-60 usec range. –Serialization Delay: ~5usec x 2 –Get Timestamp: ~15usec x 2 –Additional error is: • Time from userland “send” to 1st byte hits the wire • Time from kernel has packet to userland “recv” returns • Potentially recv process data processing before calling “recv” 19 802.16 IP Telephone Lab Internet2 OWAMP deployment •2 overlapping full meshes (IPv4 & IPv6) –11 measurement nodes = 220 ongoing tests –UDP singletons • singleton: a single observation of one-way delay –Rate: 10 packets/second –Packet size: 32-byte payload –Results are continuously streamed back to “Measurement Portal” for long-term archive and data dissemination (Near real-time) 20 802.16 IP Telephone Lab Weather Map 21 http://weathermap.grnoc.iu.edu/abilene.png owping 802.16 IP Telephone Lab $ owping -c 5 nms4-nycm.abilene.ucaid.edu --- owping statistics from [2001:e10:6840:20:20f:eaff:fe56:ea22]:52711 to [nms4-nycm.abilene.ucaid.edu]:64337 --SID: fef1505dc8e1a459016511e87b0e310c 5 sent, 0 lost (0.000%), 0 duplicates one-way delay min/median/max = 138/138/147 ms, one-way jitter = 8.6 ms (P95-P50) Hops = 10 (consistently) no reordering --- owping statistics from [nms4-nycm.abilene.ucaid.edu]:64338 to [2001:e10:6840:20:20f:eaff:fe56:ea22]:52896 --SID: fe56ea22c8e1a4591f6c8b43d56f48c2 5 sent, 0 lost (0.000%), 0 duplicates one-way delay min/median/max = 112/112/113 ms, one-way jitter = 0.8 ms (P95-P50) Hops = 7 (consistently) no reordering 22 802.16 IP Telephone Lab Captured OWAMP Packets 23 802.16 IP Telephone Lab R&D Issues • Design a system to scale (eliminate centralizations) • How to discover OWAMP servers – DNS SRV, – DHCP option, – Multicast address • How to insert On-Demand tests into regularly-scheduled test set • Balance centralization and distributed database requirement • Dynamically allocated AES key – Currently, the shared secret between sender and receiver is statically assigned 24 802.16 IP Telephone Lab Security Considerations • Protecting Your OWAMP Testing Traffic – To make it impossible for an attacker to tamper with test results. – To make it hard for a party in the middle of the network to make results look "better" than they should be. • • • • Preventing Third-Party Denial of Service Covert Information Channels Requirement to Include AES in Implementations Resource Use Limitations – Disk, Memory, Bandwidth • Use of Cryptographic Primitives in OWAMP – TLS • Stream-based. Not suitable for OWAMP-Test. – DTLS • Duplication and reordering information are missing – IPSec • Few deployments – SSH 2-4% – HTTPS: 0.2-0.6% – IPsec: 0.05% 25 802.16 IP Telephone Lab HW 3 • Install OWAMP client/server on your own hosts. Try to test the one-way delay. • Your host may possess a public IP address. If this is not the case for IPv4, at least you know how to get a public IPv6 address. • Show me your measurement, and the OWAMP packets which you captured. 26