Precise Traffic Generator Geoff Salmon, Monia Ghobadi, Yashar
Precise Traffic Generator Geoff Salmon, Monia Ghobadi, Yashar Ganjali, Martin Labrecque, J. Gregory Steffan University of Toronto What is the Precise Traffic Generator (PTG)? Uses NetThreads on the NetFPGA to generate packets. Goals 1. Send packets precisely at the requested
time. 2. Allow packets to be constantly streamed from host PC. No separate load phase. Why Are These Goals Interesting? 1. Precise transmission times: Can emulate diverse network conditions and topologies. 2. Stream packets from host PC:
Allows generated traffic to be reactive ie. TCP flows with congestion control Motivation: Network Testbed Experiments Testing systems which are sensitive to packet arrival times (ie. packet buffering and scheduling in routers) requires realistic test traffic. Need to explore a wide range of traffic
With a small testbed, this is difficult or impossible. With a large enough testbed, this is difficult and expensive. Simplified Problem A few computers can create required traffic volume. However, resulting traffic may not be
realistic. How is the traffic different? The PTG focuses on controlling the packet transmission times. Components of the PTG Linux Kernel NetFPGA 3. pktgen
NetLin k 2. nf2 Linux Driver PCI Host Computer Packet Travel Direction
1. NetThreads Application Gig E Userspace Program: pktgen Simple command-line utility used for testing PTG.
Sends descriptions of packets and transmission times to the driver. Uses inter-transmission times and payload sizes that are either: fixed, or read from files. Communicates with driver using a NetLink socket. Easily replaced by other userspace or kernel
nf2 Linux Driver Modified version of nf2 driver. Main jobs: Receive packet descriptions from NetLink socket. Build command packets containing multiple descriptions. Send command packets to the NetThreads app over the PCI bus. NetThreads Application
Eight threads of execution in NetThreads: 7 threads receive command packets and prepare packets to transmit in output memory. Input Memory Output Memory 1 thread sends packets from the output memory at correct times. PCI Bus is a Bottleneck
Cannot copy all packets across PCI bus. Main idea: do not copy packet payloads Payloads are zeroed when sent from NetFPGA. Experiment often only look at packet headers anyway. PCI transaction overheads require driver to gather multiple packet descriptions into single command packet.
Transmission Time Precision Compare against Stanfords Packet Generator (SPG) PTG/SPG Sending fixed rate packets NetFPGA router measures
inter-arrival times Remember it takes 8ns to send 1 byte on GigE. Throughput: MTU-Size Packets Preamble Ethernet Hdr
Errors appear between 6000-7000ns. See the same problem for different packet sizes. The mean inter-transmission times are correct, not a PCI bottleneck problem. Most likely: the sending thread is doing too much work between packet transmissions. In 6400ns each thread has
6400 ns / 8 ns per cycle / 4 threads = 200 clock cycles Future Work Implement receiving packets Currently PTG cannot receive packets and send them to the host PC, so generating reactive traffic requires another NIC. Augment existing software network emulator (ie. NISTNet) with PTG to transmit packets at the correct times.
Conclusion The PTG precisely controls the transmission times of packets streamed from the host PC. It has the potential to enhance the realism of software network emulators, and allow researchers to perform experiments which are currently difficult or impossible. Modified Hardware Designs
NetThreads design: Removed Output Queues increase accuracy of transmission times. NetFPGA reference router design used in measurements: Removed Input Arbiter and Output Port Lookup.
Inaccuracy of NISTNet Software network emulators schedule packet transmissions with fixed-rate timers/interrupts. Ran experiment to measure inaccuracy using NISTNet. PTG NISTNet host Delays
packets by 100ms Measure inter-arrivals here NetFPGA router measuring arrival times Measure inter-arrivals
here Packets Sent Every 70 ss Packets Sent Every 640 ss Packets Sent Every 700 ss
Stat. § 541.05, subd. 1(6) Protection of Creditors. From acts that go beyond the norms of the debtor-creditor relationship. ... Avoid trading values or accounting valuations based on the likelihood of collection. Determining "Insolvency" ...
Corinna S. Culler, RDH, DrPH. Assistant ProfessorHealth Policy and Health Services ResearchBoston University Goldman School of Dental MedicineWhy don't Hispanic parents in Chelsea, MA accessavailable free dental care for their children?"This program has more than met my expectations.
Section 301. Only Templar Jewels are to be worn on the Templar Uniform. Jewels of office, meritorious jewels, badge of Commanderies, Malta and Red Cross jewel may be worn on the left breast, placed in the order named, from the...
Railcar 101 The Basics of Railcars: Car Types, Components and Rules ... - Association made up of railroads AAR Field Manual- The AAR Interchange Rules which specify inspection, repair and handling requirements of interchange freight cars AAR Office Manual- The...
Chapter 16 Sensory, Motor, and Integrative Systems Sensation The Process of Sensation Sensory Receptors Sensory Receptor Potentials Types of Sensory Receptors Adaptation in Sensory Receptors Somatic Sensations Sensory Receptors in the Skin Pacinian Corpuscles Distribution of Referred Pain Proprioceptive Sensations...
Jamie is awarded a merit scholarship for U of A for nearly the full cost of tuition. ... Winston Churchill Scholarship Program. Harry S. Truman Scholarships. Henry Luce Foundation Scholarship. Morris K. Udall Foundation Undergraduate Scholarships.
Virtual Search Planning: Process of examining known verified facts surrounding a missing person event. Applying subject and statistical behavior data. Weather data. Technical data (cell /radar forensics, audio, video, etc) Layered to virtual imaging and terrain analysis tools. Building a...
Seneca riflette la fuga del saggio dalla società e il suo isolamento,e si farà carico della fondazione di un linguaggio che esprima questa nuova dimensione. "me prius scrutor,deinde hunc mundum" L'INTERIORITA' COME POSSESSO Il linguaggio di Seneca si impadronisce dell'interiorità,facendone...
Ready to download the document? Go ahead and hit continue!