Measuring Application's network behaviour

Similar documents
Quality of Service Mechanism for MANET using Linux Semra Gulder, Mathieu Déziel

Kernel Korner. Analysis of the HTB Queuing Discipline. Yaron Benita. Abstract

Traffic Engineering 2015/2016. Fernando M. Silva. Instituto Superior Técnico. QoS, Scheduling & priority queues.

Worksheet 8. Linux as a router, packet filtering, traffic shaping

Multimedia Communication. Project 6: Intelligent DiffServ

Week 7: Traffic Models and QoS

DiffServ over MPLS: Tuning QOS parameters for Converged Traffic using Linux Traffic Control

DiffServ over MPLS: Tuning QOS parameters for Converged Traffic using Linux Traffic Control

A Preferred Service Architecture for Payload Data Flows. Ray Gilstrap, Thom Stone, Ken Freeman

UNIVERSITY OF OSLO Department of Informatics. Implementing Rate Control in NetEm. Untying the NetEm/tc tangle. Master thesis. Anders G.

Principles. IP QoS DiffServ. Agenda. Principles. L74 - IP QoS Differentiated Services Model. L74 - IP QoS Differentiated Services Model

Linux Traffic Control

QoS Configuration. Overview. Introduction to QoS. QoS Policy. Class. Traffic behavior

Grandstream Networks, Inc. GWN7000 QoS - VoIP Traffic Management

IP Premium Agenda. - Services specification and implementation discussion. - Qos Parameters. M. Campanella - TF-TNG - Münster 7 feb 2001

VoIP over wireless networks: a packet scheduling approach to provide QoS using Linux

Configuring QoS CHAPTER

QBone Scavenger Service Implementation for Linux

Real-Time Protocol (RTP)

Router s Queue Management

Lecture Outline. Bag of Tricks

Advanced Computer Networks

The State of the Art in Bufferbloat Testing and Reduction on Linux

H3C S9500 QoS Technology White Paper

Experiments on TCP Re-Ordering March 27 th 2017

Dropping Packets in Ubuntu Linux using tc and iptables

Streaming Video and TCP-Friendly Congestion Control

Quality of Service II

Quality of Service Monitoring and Delivery Part 01. ICT Technical Update Module

Presentation Outline. Evolution of QoS Architectures. Quality of Service Monitoring and Delivery Part 01. ICT Technical Update Module

Lecture 14: Performance Architecture

"Charting the Course... Implementing Cisco Quality of Service (QOS) Course Summary

Modular Quality of Service Overview on Cisco IOS XR Software

ENSC 427 Communication Networks

Quality of Service (QoS)

Description Approach Packet Loss Effect Traffic Control Experimentation Conclusions. Mice and Elephants. Ioannis Giannoualtos

Internet Services & Protocols. Quality of Service Architecture

The Controlled Delay (CoDel) AQM Approach to fighting bufferbloat

Improving QOS in IP Networks. Principles for QOS Guarantees

Affects of Queuing Mechanisms on RTP Traffic Comparative Analysis of Jitter, End-to- End Delay and Packet Loss

Mohammad Hossein Manshaei 1393

CS519: Computer Networks. Lecture 5, Part 5: Mar 31, 2004 Queuing and QoS

IP Network Emulation

STUDY OF SOCKET PROGRAMMING AND CLIENT SERVER MODEL

An Evaluation of Adaptive Multimedia Communication from a QoS Perspective

Promoting the Use of End-to-End Congestion Control in the Internet

Implementation of a leaky bucket module for simulations in NS-3

Multicast and Quality of Service. Internet Technologies and Applications

A DiffServ transport network to bring 3G access to villages in the Amazon forest: a case study

TCP Nice: A Mechanism for Background Transfers

Implementing Cisco Quality of Service 2.5 (QOS)

CS519: Computer Networks. Lecture 5, Part 1: Mar 3, 2004 Transport: UDP/TCP demux and flow control / sequencing

ETSF10 Internet Protocols Transport Layer Protocols

A common issue that affects the QoS of packetized audio is jitter. Voice data requires a constant packet interarrival rate at receivers to convert

Module objectives. Integrated services. Support for real-time applications. Real-time flows and the current Internet protocols

Internet QoS 1. Integrated Service 2. Differentiated Service 3. Linux Traffic Control

Advanced Lab in Computer Communications Meeting 6 QoS. Instructor: Tom Mahler

Network Layer Enhancements

ENSC 427 Communication Networks Final Project Presentation Spring Comparison and analysis of FIFO, PQ, and WFQ Disciplines in OPNET

of-service Support on the Internet

The War Between Mice and Elephants

521262S Computer Networks 2 (fall 2007) Laboratory exercise #4: Multimedia, QoS and testing

PERFORMANCE ANALYSIS OF AF IN CONSIDERING LINK UTILISATION BY SIMULATION WITH DROP-TAIL

Toward a Reliable Data Transport Architecture for Optical Burst-Switched Networks

HTB vs PCQ. by: Valens Riyadi Citraweb Nusa Infomedia, Indonesia

CPSC 4240/6240 Spring 2017 HW # 3 v1 Last update: 3/22/2017

Topic 4b: QoS Principles. Chapter 9 Multimedia Networking. Computer Networking: A Top Down Approach

Multimedia networking: outline

Before configuring standard QoS, you must have a thorough understanding of these items:

Real-Time Control Protocol (RTCP)

Today Dummynet. KauNet Emulation. What is Dummynet? Why Emulation? What can you do with Dummynet? Application/Protocol testing:

ETSF05/ETSF10 Internet Protocols. Performance & QoS Congestion Control

Configuring QoS. Understanding QoS CHAPTER

Performance Management Quality of Service Avaya Advanced Gateway 2330

II. Principles of Computer Communications Network and Transport Layer

An Approach to Flexible QoS Routing with Active Networks

Master Course Computer Networks IN2097

Master Course Computer Networks IN2097

Master Course Computer Networks IN2097

Implementation of Differentiated Services over ATM

Episode 5. Scheduling and Traffic Management

Master Course Computer Networks IN2097

Flow Control Packet Marking Scheme: to identify the sources of Distributed Denial of Service Attacks

Quality of Service in the Internet

Quality of Service in the Internet

Configuration Commands. Generic Commands. description XRS Quality of Service Guide Page 125

Sections Describing Standard Software Features

The KMAX Network Emulator

Computer Networking. Queue Management and Quality of Service (QOS)

Basics (cont.) Characteristics of data communication technologies OSI-Model

End-to-End Mechanisms for QoS Support in Wireless Networks

Configuring QoS. Finding Feature Information. Prerequisites for QoS

PESIT Bangalore South Campus Hosur road, 1km before Electronic City, Bengaluru -100 Department of Computer Science & Engineering

Internet Technology. Internet Transport Tomorrow

CS 268: Computer Networking

Objective End-to-End QoS Gain from Packet Prioritization and Layering in MPEG-2 Streaming

ETSF05/ETSF10 Internet Protocols. Performance & QoS Congestion Control

CSE 123b Communications Software

Generic Architecture. EECS 122: Introduction to Computer Networks Switch and Router Architectures. Shared Memory (1 st Generation) Today s Lecture

Prioritizing Services

Transcription:

EuroNGI PhD measurement workshop - 1 Measuring Application's network behaviour EuroNGI PhD measurement workshop University of Linz,, Austria May, 12th 2006 Sven Hessler http://dps.uibk.ac.at/~sven Institute of Computer Science University of Innsbruck, Austria EuroNGI PhD measurement workshop - 2 Outline Motivaton Our testbed and its limitations Measurement results Valueable tools for conducting network measurements traffic control (tc) traffic generators network emulators From theory to RL: measurement demo 1

EuroNGI PhD measurement workshop - 3 Today's Internet transport protocols UDP used for sporadic messages (DNS) and some special apps TCP used for everything else in 2003, approximately 83 % according to: Marina Fomenkov, Ken Keys, David Moore and k claffy, Longitudinal study of Internet traffic in 1998-2003, CAIDA technical report, available from http://www.caida.org/outreach/papers/2003/nlanr/ backbone measurement from 2000 said 98% UDP usage growing Original Internet proposition: IP over everything, everything over IP Today s reality: IP over everything, almost everything over TCP, and the rest over UDP EuroNGI PhD measurement workshop - 4 TCP vs. UDP: a simple simulation example 2

EuroNGI PhD measurement workshop - 5 It doesn t look good 10 tcp - 1 cbr - drop tail 100 tcp - 1 cbr - drop tail 1400000 1200000 1000000 800000 600000 400000 200000 0-200000 1400000 1200000 1000000 800000 600000 400000 200000 0-200000 For more details, see: Promoting the Use of End-to-End Congestion Control in the Internet. Floyd, S., and Fall, K.. IEEE/ACM Transactions on Networking, August 1999. EuroNGI PhD measurement workshop - 6 Our measurement testbed Application traffic Background traffic Monitor 1 Monitor 2 3

EuroNGI PhD measurement workshop - 7 What we can measure (and what not) Yes: throughput per flow total (if more than one flow) delay congestion (send ICMP echo request, receive ICMP response) loss defined as difference between the sent and received bytes Limitations: very limited setup (but useful anyways) no realistic (live) cross traffic, just traffic generators we do not regard interaction/effects between applications EuroNGI PhD measurement workshop - 8 Results: TCP (the way it should be) Throughput TCP 200 server send client receive 150 Throughput [KByte/s] 100 50 0 1 traffic start at 30 60 traffic end at 90 120 Time [sec] 4

EuroNGI PhD measurement workshop - 9 Results: Streaming Video: RealPlayer Throughput 200 server send client receive 150 Throughput [KByte/s] 100 50 0 1 traffic start at 30 60 traffic end at 90 120 Time [sec] EuroNGI PhD measurement workshop - 10 Results: Streaming Video: Windows Media Player Throughput 200 server send client receive 150 Throughput [KByte/s] 100 50 0 1 traffic start at 30 60 traffic end at 90 120 Time [sec] 5

EuroNGI PhD measurement workshop - 11 VoIP: MSN 25 20 Throughput server send client receive Throughput [KByte/s] 15 10 5 0 1 traffic start at 30 60 traffic end at 90 120 Time [sec] EuroNGI PhD measurement workshop - 12 VoIP: Skype 25 20 Throughput server send client receive Throughput [KByte/s] 15 10 5 0 1 traffic start at 30 60 traffic end at 90 120 Time [sec] 6

EuroNGI PhD measurement workshop - 13 Valuable tools for conducting network measurements Limit bandwidth (using tc) Generate cross traffic (traffic generators) emulate an intermediate network (network emulators) EuroNGI PhD measurement workshop - 14 Traffic control (tc) in the Linux kernel Shaping (egress) controls sending rate e.g. limit available bandwith, smooth out bursts Scheduling (egress) prioritizing traffic e.g. improve interactivity for one traffic class while guaranteeing bandwith for another Policing (ingress) allows/denies incoming traffic Dropping (ingress & egress) traffic exceeding a set bandwith may be dropped 7

EuroNGI PhD measurement workshop - 15 tc explained #> tc qdisc add dev eth0 root tbf rate 220kbit latency 50ms burst 1540 queueing discipline add to root of device 'eth0' Tocken Bucket Filter: send at rate 220kbit (if tokens are available) packets can sit max. 50ms in the bucket size of the bucket (1540 bytes) EuroNGI PhD measurement workshop - 16 A Token-Bucket Bucket-Filter Token Generator Threshold Token Token Token Token Packet 8

EuroNGI PhD measurement workshop - 17 tc classless queueing disciplines tbf Tocken Bucket Filter sfq Stochastic Fair Queueing, i.e. send data in a 'round-robinlike' manner pfifo_fast TOS-aware queue with 3 bands, i.e. within each band FIFO rules apply red Random Early Detection (stochastic dropping of packets) EuroNGI PhD measurement workshop - 18 tc classfull queueing disciplines: PRIO non-shaping container for a configurable number of classes dequeued in order, TOS-aware CBQ Class Based Queueing, implements a hierarchy of classes for shaping and prioritizing HTB Hierarchy Token Bucket Theory of classes: form a tree each client has a single parent, a parent may have multiple children when a packet arrives --> classification into one of the classes: tc filters tc filters are attached to classes and consulted first TOS Type of Service (TOS) field (QoS extension) skb->priority userspace programs encode priority (SO_PRIORITY) 9

EuroNGI PhD measurement workshop - 19 Traffic generators generate traffic (mostly) according to a mathematical model (e.g. poisson, exponential, self-similar) mgen multi message generator (UDP/IP traffic) ttcp test tcp throughput Realtime voice traffic generator... Excellent overview of free and commercial traffic generators: http://www.grid.unina.it/software/itg/link.php EuroNGI PhD measurement workshop - 20 MGEN multi message generator for UDP/IP traffic generates real-time traffic patterns so that the network can be loaded in a variety of ways available for Unix-based (incl. MacOS X) and Win32 systems support unicast and multicast uses script files for driving tests 10

EuroNGI PhD measurement workshop - 21 MGEN sender: setup the configuration file 0.0 ON 10 UDP SRC 5001 DST 192.168.0.3/5000 PERIODIC [1.0 100] <event <protocol> time> <flow ID> 5.0 MOD 10 POISSON [10.0 512] <addr/port > <pattern>: send 100 byte packets at a rate of 1.0 per second modify existing flow after 5 seconds generate pkts of 512 bytes in size, avg. rate: 10 pps, following a possion distribution 10.0 OFF 10 EuroNGI PhD measurement workshop - 22 MGEN: pattern types Syntax:... <pattern type> [parameters]... Pattern types: PERDIODIC [10 1540] send 10pps with a size of 1540 byte each POISSON [10 1024] send in avg. 10pps with a size of 1024 byte each BURST [RANDOM 10 PERIODIC [10 100] EXP 5.0] send bursts of 100 byte packets with a periodic rate of 10pps bursts occur in random intervals with avg. from the start of one burst until the start of the next of 10 seconds burst duration is exponential with avg. duration of 5 seconds 11

EuroNGI PhD measurement workshop - 23 Starting MGEN MGEN is a client-server application: @ sender-side: mgen ipv4 input crosstraffic.mgn @ receiver-side: mgen ipv4 input receive.mgn crosstraffic.mgn: 0.0 ON 10 UDP SRC 5001 DST 192.168.1.2/5000 PERIODIC [1 100] [...] receive.mgn: 0.0 LISTEN UDP 5000-5001 EuroNGI PhD measurement workshop - 24 Network emulation/simulation tools emulab (http://www.emulab.net/) PlanetLab (http://www.planet-lab.org/) dummynet (http://freshmeat.net/projects/dummynet) NISTNet (http://www-x.antd.nist.gov/nistnet/) pretty complete overview: two bachelor thesis @University of Innsbruck: http://www.welzl.at/research/projects/testbedeval/index.html 12

EuroNGI PhD measurement workshop - 25 Quick overview: emulab emulab is a cluster of computers with access for the public (researchers): University of Utah (168 nodes, P3 class) Georgia Tech (40 nodes, P3 class) Kentucky (48 nodes, P3 class) emulates complex networks, e.g. emulate edge nodes, traffic shaping nodes, traffic generators while experiments are running, it gets exclusive access to assigned machines, incl. root access uses a modified network simulator (NS2) script to describe network topologies EuroNGI PhD measurement workshop - 26 Quick overview: planet lab planet lab is a test environment of globally distributed computers: ~ 460 machines (> 1.5GHz, > 0.5GB RAM, > 100GB HDD) terms and definitions: nodes: each site has to provide at least 2 slices: number of shared resources on on or more nodes virtual server: environment of an slices sliver: a part of a slice or an application running on virtual server 13

EuroNGI PhD measurement workshop - 27 Planet lab: network measurement services vs vs vs Linux -services + resource isolation + safe raw sockets + instrumentation ScriptRoute (UWashington) PlanetProbe (Cambridge) Network Weather Service (UTK) Ping (everyone) Using planet lab for network research: Myth, Realities, and Best Practices www.cs.princeton.edu/nsg/papers/myths_worlds_05/myths.pdf EuroNGI PhD measurement workshop - 28 Quick overview: dummynet is a feature of the FreeBSD packet filtering firewall 'ipfw' dummynet bases on pipes: Delay ICMP messages: ipfw add pipe 1 icmp from any to any out ipfw pipe 1 config delay 100ms ipfw add allow icmp from any to any # create pipe for icmp-traffic # config delay for icmp-traffic # allow icmp traffic Limit bandwidth webtraffic from 192.168.0.2 to 128Kbit/s: ipfw add pipe 1 tcp from 192.168.0.2 port 80 to any ipfw pipe 1 config bw 128Kbit/s ipfw add allow ip from any to any 14

EuroNGI PhD measurement workshop - 29 NISTNet emulates any degree of "real-network badness" in a small, labenvironment network works on the Linux (2.0.x/2.2.x/2.4.x/2.6.x) IP-forwarding rules offers a commandline interface and a GUI functions: packet delay: fix or variable (jitter) packet reordering (due to very long delay) packet loss (random or congestion dependent) packet duplication bandwidth limits EuroNGI PhD measurement workshop - 30 NISTNet: how to use get NISTnet get the Linux kernel sources make & install linux kernel (2.0.xx, 2.2.xx, 2.4.xx, 2.6.xx) configure & make NISTnet Load Nistnet modules (modprobe nistnet) configure emulator (xnistnet, cnistnet) start emulator start measurements 15

EuroNGI PhD measurement workshop - 31 xnistnet: the graphical user interface References EuroNGI PhD measurement workshop - 32 16

EuroNGI PhD measurement workshop - 33 Recommended reading Recommended URLs: Traffic generators: overview: http://www.grid.unina.it/software/itg/link.php MGEN: http://pf.itd.nrl.navy.mil/mgen/mgen.html Network emulators: NISTNet: http://snad.ncsl.nist.gov/nistnet/ Emulab: http://www.emulab.net/ Passive measurement traces: CAIDA: http://www.caida.org Neil Spring et al. Using planet lab for network research: Myth, Realities, and Best Practices : www.cs.princeton.edu/nsg/papers/myths_worlds_05/myths.pdf Michael Welzl: Network Congestion Control: Managing Internet Traffic, John Wiley & Sons, July 2005 EuroNGI PhD measurement workshop - 34 Thank you for your attention! Questions? Demonstration... 17