anchor.diff:  
   The step by step flow is as follows:
   
  -1. Sender wakes up in fixed intervals
  +1. Sender wakes up at a fixed rate, e.g., 100Hz
   2. Sender measures time ("transmit timestamp") and sends packet to receiver 
   3. Receiver echoes packet back to sender
   4. Sender receives packet and measures time ("receive timestamp")
  
positive.code: .UDP / IPv4 / Ethernet II Frame Structure
  image::udp/ethernet-ip-udp-header.png[link="../images/udp/ethernet-ip-udp-header.png"]
  
  Although this overhead may seem high for traditional automation applications with small payloads (<10 bytes), it quickly amortizes when communicating with smarter devices. For example, each HEBI Robotics' http://hebirobotics.com/products/[X-Series] actuator contains more than 40 sensors (position, velocity, torque, 3-axis gyroscope, 3-axis accelerometer, several temperature sensors, etc.) that get combined into a single packet that uses between 185 and 215 bytes payload. Typical feedback packets from an I/O Board are even larger and require about 300 bytes. When comparing overhead it is also important to consider the available bandwidth, i.e., sending 100 bytes over Gigabit Ethernet (even over 100 Mbit/s) tends to be faster than sending a single byte using traditional non-Ethernet based alternatives such as RS485 or CAN Bus.
  
  For these benchmarks we chose to measure the round-trip time for a payload of 200 bytes. After including all overhead, the actual size on the wire is 266 bytes. The theoretical time it takes to transfer 266 bytes over 100 Mbit/s and 1Gbit/s Ethernet is 20.3us and 2.03us respectively.
  
  
negative.code: 
  == Scaling to Many Devices
  
  So far all tests were measuring the round-trip time between a sender node and a single target node. Since real robotic systems can contain many devices, e.g., one per axis or degree of freedom, we also looked at how UDP performs with multiple devices on the same network. In conversations with other roboticists we often found an expectation that there would be significant packet loss if multiple packets were to arrive at a Switch at the same time. The worst case would occur if all devices were connected to a single Switch as shown below.
  
  [.text-center]
  .Multiple devices connected to a single Switch
  