Presentation is loading. Please wait.

Presentation is loading. Please wait.

Tiziana Ferrari Quality of Service Support in Packet Networks1 Quality of Service Support in Packet Networks Tiziana Ferrari Italian.

Similar presentations


Presentation on theme: "Tiziana Ferrari Quality of Service Support in Packet Networks1 Quality of Service Support in Packet Networks Tiziana Ferrari Italian."— Presentation transcript:

1 Tiziana Ferrari Quality of Service Support in Packet Networks1 Quality of Service Support in Packet Networks Tiziana Ferrari Italian National Institute for Nuclear Physics INFN - CNAF

2 Tiziana Ferrari Quality of Service Support in Packet Networks2 Overview Problem statement technical solutions: –ATM –RSVP and RSVP to ATM SVC mapping –differentiated services (diffserv) Diffeserv in detail Diffserv: a case study Diffserv test activities (TF-TANT) comments

3 Tiziana Ferrari Quality of Service Support in Packet Networks3 Quality of Service Heterogeneous networks –capacity –transmission technology –bottlenecks congestion and lack of transmission guarantees heterogeneous application requirements –interactive: telnet, remote X sessions, web browsing –non-interactive and packet loss tolerant: ftp, mailing –delay sensitive: real time applications (e.g. remote control) –delay variation sensitive and packet loss: voice over IP, videoconferencing –... Quality of Service

4 Tiziana Ferrari Quality of Service Support in Packet Networks4 Quality of Service: basic concepts Service: a pre-defined type of packet treatment during transmission across the network –qualitative –quantitative >delay >instantaneous delay variation >packet loss probability >throughput >MTU (Maximum Transfer Unit) >priority (e.g. for congestion treatment) Class: set of packets to which a given service applies. Classification is based on traffic filters. A filter defines a set of packet matching rules. Matching is based on the content of packet fields. E.g. filter := (pack(src) = SRC) && (pack(dest) = DEST) && (pack(pro) = TCP)

5 Tiziana Ferrari Quality of Service Support in Packet Networks5 Quality of Service: benefits Benefits: –network. congestion management, congestion independent QoS parameters, traffic engineering >differentiated allocation of expensive network resources e.g. over intercontinental connections >multiple services –application: >within a single application: differentiated treatment of streams according to their requirements and priority >multiple applications: applications hierarchy according to priorities today: single service, best-effort

6 Tiziana Ferrari Quality of Service Support in Packet Networks6 Solutions Cell based networks: –ATM (permanent and/or switched connections) IP based networks: –RSVP (resource ReSerVation Protocol) and integrated services heterogeneous networks: –RSVP to ATM SVC mapping (IP and ATM) –differentiated services

7 Tiziana Ferrari Quality of Service Support in Packet Networks7 ATM (Asynchronous Transfer Mode) Cell based pre-defined classes of services: –Constant Bit Rate (peak cell rate - PCR-) –Variable Bit Rate (sustainable cell rate, PCR, maximum burst size -MBS-) >real time >non real time –Available Bit Rate (minimum cell rate -MCR-, PCR, rate increase/decrease factors) –Unspecified bit rate (PCR) today: deployed as backbone technology (GARR, European national research networks, TEN-155, ESnet), not common as LAN technology. Only permanent connections are commonly deployed to support traffic engineering.

8 Tiziana Ferrari Quality of Service Support in Packet Networks8 ATM (cont) Permanent and/or dynamic connections (PVC, SVC) 1-to-1 or 1-to-many end-to-end signalling protocol for ATM connection set-up traffic engineering Disadvantages: –not widely deployed as LAN technology (no end-to-end connectivity) –no native ATM applications –IP over ATM: overhead –few applications supporting traffic profile definition –addressing scheme not compatible with IP –signalling only in few backbones -> lack of interoperability

9 Tiziana Ferrari Quality of Service Support in Packet Networks9 RSVP RSVP: signalling protocol for IP based applications –traffic profile definition - source - –reservation profile specification - destination - –3 classes of service: best-effort, controlled load, guaranteed –reservation: (soft state) –QoS support in heterogeneous network –multicast is supported –QoS support to the application Advantage: IP compatible Disadvantages: –requires RSVP support on each router on the path from tx to rx –lack of scalability –admission control and policy management

10 Tiziana Ferrari Quality of Service Support in Packet Networks10 RSVP to ATM SVC mapping ATM signalling in the core RSVP signalling at the edge (access networks) reservation parameter mapping at the boundary Advantages: –deploys ATM features in the backbones –QoS support in heterogeneous environments –QoS to the application –interim solution -> intserv - diffserv (scalability) Disadvantages: –application: RSVP capable, traffic profile specification –RSVP support at both edges –connection set-up latency: not convenient for delay sensitive applications transmitting small chunks of data –still relays on ATM signalling in the core

11 Tiziana Ferrari Quality of Service Support in Packet Networks11 RSVP to ATM mapping: features Translation of intserv classes of services and parameters into ATM classes of services and parameters deployment of best-effort connections (UBR in the ATM core) for initial transmission of RSVP messages (PATH, RESV) combination of RSVP and ATM admission control ATM: tx initiated signalling vs RSVP: rx initiated reservation request

12 Tiziana Ferrari Quality of Service Support in Packet Networks12 Scenarios Mapping in the end-system mapping in the router ATM NRN - TEN NRN RSVP -> ATM ATM RSVP 3. RSVP -> ATM 1. PATH 2. RESV 4. SVC ATM LIS 1 LIS 3LIS 2

13 Tiziana Ferrari Quality of Service Support in Packet Networks13 Differentiated Services: Architecture

14 Tiziana Ferrari Quality of Service Support in Packet Networks14 Differentiated services Why diffserv? –new technology –independent of layer 2 technologies –interoperability between independent national research networks (different requirements, infrastructures, policies and management) –traffic aggregation –scalability: no reservation state maintained in the routers –no signalling –QoS for networks not ATM based RFC 2474: Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 headers RFC 2475: An Architecture for Differentiated Services RFC 2598: An Expedited Forwarding PHB RFC 2597: Assured Forwarding PHB Group cont.

15 Tiziana Ferrari Quality of Service Support in Packet Networks15 Diffserv architecture: building blocks Label: DS field (1 byte), DS Code Point (6 bits) packet classification packet scheduling traffic conditioning: –metering –marking –policing –shaping DSCP CU 067

16 Tiziana Ferrari Quality of Service Support in Packet Networks16 DS building blocks: logical view classifier marker Shaper/ policer meter scheduler

17 Tiziana Ferrari Quality of Service Support in Packet Networks17 Diffserv: traffic aggregation and (re)marking aggregation and re-marking re-marking marking

18 Tiziana Ferrari Quality of Service Support in Packet Networks18 Terminology Per Hop Behaviour (PHB): the externally observable forwarding behaviour applied to a DS-compliant node to packets with same label (DS codepoint) PHB Group: set of PHBs which can only meaningfully specified and implemented simultaneously (e.g. with common constraints on queue servicing and queue management). E.g. 4 PHB each associated to a different drop priority. A single PHB is a special case of PHB Group. Service: quantitative or statistical definition of significant characteristics of packet transmission in one direction across the network in terms of throughput, delay, jitter, loss, priority in access to network resources. Services are implemented through PHBs. The service describes the overall treatment end-to-end.

19 Tiziana Ferrari Quality of Service Support in Packet Networks19 Terminology (cont) DS codepoint: specific value of the DSCP field DS behaviour aggregate: packets with same code point DS domain: contiguous set of nodes with same service provisioning policies and same code point numbering scheme DS region: set of contiguous DS domains DS ingress/egress node: DS node handling packets entering/leaving the DS domain it belongs to classifier: entity selecting packets according to the content of packet headers according to a defined rule BA classifier: a classifier which only takes into account the DS field content DS Region DS Domain Interior/Ingress/Egress Node

20 Tiziana Ferrari Quality of Service Support in Packet Networks20 Terminology (cont) Conditioning: metering, marking Policing: packet discard according to the state of a corresponding meter enforcing a traffic profile Metering: the process of measuring the temporal properties of a traffic stream selected by a classifier Marking: the process of setting the DS codepoint in a packet based on defined rules Service Level Agreement: traffic contract between a customer and service provider specifying the forwarding service the customers traffic should receive Service Provisioning Policy: specification of –microflow mapping into a DS Behaviour Aggregate –conditioning configuration

21 Tiziana Ferrari Quality of Service Support in Packet Networks21 Diffserv architecture: network model for TEN-155 DS domain Non DS capable domain MPLS NRN TEN-155 marking Marking policing scheduling shaping DS domain

22 Tiziana Ferrari Quality of Service Support in Packet Networks22 Diffserv architecture: PHBs Standardised PHBs: –Expedited Forwarding (low delay, low delay variation, guaranteed bandwidth) –Assured Forwarding (Behaviour Aggregate, 4 classes, 3 drop priorities per class) Experimental PHBs PHB class selectors 0 37 precedence

23 Tiziana Ferrari Quality of Service Support in Packet Networks23 PHB: Expedited Forwarding For the implementation of services requiring a reservation profile like: low loss, low latency, low jitter, assured bandwidth loss, latency and jitter queue management (small queues) in order to prevent a queue from building up, in the EF queue of each transit node, the aggregate maximum arrival rate < departure rate EF implementation based on –scheduling (for traffic isolation and support of bandwidth guarantees) –policing –shaping EF traffic can preempt other classes, for this reason the maximum EF rate has to be limited through policing EF codepoint: 101|110

24 Tiziana Ferrari Quality of Service Support in Packet Networks24 PHB: Assured Forwarding 4 independent AF forwarding classes 3 drop priorities in each AF class given two packets in node with drop precedence p and q respectively, with p < q, pack(p) is always transmitted BEFORE pack(q) at the boundary between two AF domains, traffic conditioning can apply: shaping, per class discarding, drop precedence remarking and AF class reassignment. Traffic conditioning has to avoid REORDERING -> performance gain on the rx side

25 Tiziana Ferrari Quality of Service Support in Packet Networks25 PHB: Assured Forwarding (cont) In case of long term congestion AF packets are dropped drop algorithm: WRED (Weighted Random Early Discard) for the implementation of a gradual discard mechanism based on congestion levels and proportional to the drop precedence of a given microflow Codepoints: class 1 class2 class3 class4 low drop prec001| | | |010 medium drop prec001| | | |010 high drop prec001| | | |110

26 Tiziana Ferrari Quality of Service Support in Packet Networks26 PHB: Class Selectors and Experimental PHBs Class selectors: –XXX000 where x = 1 or 0 –for backward compatibility with precedence field of the old so called TOS (Type Of Service) byte. TOS was replaced by the DS field. Precedence = [0, 7] –if pred(pack1) < pred(pack2) then p_drop(pack1) > p_drop(pack2) Experimental PHB: –not standardised codepoint and packet forwarding behaviour –definition up to the ISP –requires PHB mapping at the boundary 0 37 precedence TOS byte

27 Tiziana Ferrari Quality of Service Support in Packet Networks27 Diffserv architecture: scheduling policing and classification traffic metering

28 Tiziana Ferrari Quality of Service Support in Packet Networks28 Scheduling Scheduling: queue service policy for differentiated treatment of packets among queues Examples of packet scheduling algorithms: –simple priority queue (high priority queues have the highest priority, arrival rate < departure rate, low priority traffic starvation is possible) –weighted round robin queuing (queues serviced in round robin fashion, service time proportional to the weight) –weighted fair queuing (minimum rate guaranteed per class, service time of each packet in each queue is a function of the packet size and of the queue weight. Current service time is updated every time a packet is sent) –class based queuing (maximum rate per class is configured)

29 Tiziana Ferrari Quality of Service Support in Packet Networks29 Congestion management and service enforcement: policing Customer Premise PolicySpecification Network Edge Packet Classifier and Policer Policing: traffic which exceeds a given rate threshold is treated differently from conforming traffic. E.g. Exceeding packets can be dropped, re-marked, transmitted as best-effort etc. Policing is deployed for service level agreement enforcement: - to limit the input rate at the edge - at the boundary between domains to guarantee a fair deployment of the service among different domains

30 Tiziana Ferrari Quality of Service Support in Packet Networks30 Policing: token bucket Policing is based on traffic metering. A typical algorithm is called token bucket. Input pack stream output pack stream Exceed burst 0 < drop probability < 1 Normal burst (number of tokens available), drop probability = 0 R: departure rate at which tokens are replenished drop probability = 1

31 Tiziana Ferrari Quality of Service Support in Packet Networks31 Token bucket: algorithm tokens replenished at regular intervals Normal burst: max number of tokens which can be in the bucket (in bytes) Exceed burst: to avoid tail drop in favour of gradual drop Actual debt AD = AD i where is the number of borrowed tokens, –AD i decreases of R tokens per time unit Compounded debt CD = AD i where AD i CD = 0 after a packet drop pack i is dropped if CB > exceed burst

32 Tiziana Ferrari Quality of Service Support in Packet Networks32 Token bucket: algorithm (cont) Example (by BoB Olsen) token rate = 1 data_unit/time_unit normal burst size = 2 data_units (DUs) extended burst = 4 DUs. rate = 2 DUs arrive per time unit. After 2 time units, the stream has used up its normal burst and must begin borrowing one DU per time unit, beginning at time unit 3. Time tocken available DU arrivals Actual Debt Compounded Debt = = = = = (temp) 6 (temp) > 4

33 Tiziana Ferrari Quality of Service Support in Packet Networks33 Token bucket: algorithm (cont) At this time a packet is dropped because the new compounded debt (6) would exceed the extended burst limit (4). This causes CD to effectively become 0, and lowers AD back down to 2. The values 3 and 6 were only temporary and do not remain valid in the case where a packet is dropped. The final values for time unit 5 are given below. Time tocken available DU arrivals Actual Debt Compounded Debt = (temp) 6 (temp) > 4 drop (*) = =-42 4 (temp) 7 (temp) drop

34 Tiziana Ferrari Quality of Service Support in Packet Networks34 Congestion Avoidance: Weighted Random Early Discard (WRED) Goal: to avoid congestion before it occurs by dropping isolated packets among different streams. Packets are dropped according to the current amount of data into a buffer. If buffer_level < thr 1 p(drop) = 0case 1 thr 1 < buffer_level < thr 2 0 < p(drop) < 1case 2 otherwise p(drop) = 1 case 3 (W)RED is a congestion avoidance algorithm for TCP traffic based on the TCP flow control features (TCP reduces the output rate when a single packet is dropped before real congestion occurs) WRED: like RED but p(drop) in case 2 depends on the DS codepoint of the packet. Packets with low priority experience packet drop before packets with higher priority with both RED and WRED packet drop is randomly distributed among several flows

35 Tiziana Ferrari Quality of Service Support in Packet Networks35 Weighted Random Early Discard (WRED) - cont - Gold Class 6 will never get drop unless extreme congestion : 90%of queue depth Silver Class 4 will not get dropped unless severe congestion :70%of queue depth Bronze Class 2 will start drop at 60%queue occupancy Standard The remaining traffic will start drop at 40% of queue occupancy Packet Drop Probability Queue Length Standard Max Gold 40% Bronze Silver 70% 60% 90% Packet Drop Probability Class 6 gets 50% minimum Class 4 gets 30% minimum Class 2 gets 20% minimum The remaining traffic gets 10%

36 Tiziana Ferrari Quality of Service Support in Packet Networks36 Differentiated Services: Case Study

37 Tiziana Ferrari Quality of Service Support in Packet Networks37 Characterisation of the application Characterisation needed to identify the requirements of the application: service definition 1. Hardware of the trigger: remote control - ROBIN - –few transactions (low bandwidth), TCP traffic on a limited well-known set of TCP ports, IP address of the server known –client - server, one connection to a server at a time low paket loss, delay sensitive application, reliability, burst tolerance 2. Monitoring of quality and correctness of the results of the analysis - ROOT - –exchange of analysis results (root object) –low bandwidth consumption –client - server, IP address of the server is known bandwidth guarantee, more tolerance to packet loss

38 Tiziana Ferrari Quality of Service Support in Packet Networks38 Models of network deployment 1. Trigger hardware control Server m VME Server 1 Power PC VME Server 2 VME... Client 1 Client 2 Client 3 Client n Monitoring of analysis server... Browser 1 Browser 2 Browser 3 Browser n bottlenecks

39 Tiziana Ferrari Quality of Service Support in Packet Networks39 Service for trigger control packets SERVICE 1: –low drop probability –delay bound (minimum queue size) –precedence: highest precedence, higher than monitoring packets precedence –Capacity: a minimum network capacity guaranteed, in case of spare capacity, more bandwidth can be allocated. –No upper limit in rate for maximum burst tolerance

40 Tiziana Ferrari Quality of Service Support in Packet Networks40 Service 1: implementation If pack(src/dest) = (s 1 || s 2 || … || s m ) && pack(TCP_port) in [x, y] then pack(label) = max precedence policing: always transmit delay: buffer size of 2*MTU minimum service rate = m * r * N client or rate = m * R * N client m: overbooking factor r: estimated rate consumed by 1 client, R: estimated rate consumed by 1 server N client : number of clients downstream Scheduling client -> server VME Server 1 VME Server 2 VME... Client 1 Client 2 Client 3 Client 4 r r r r 2*m*r 4*m*r R R R Server 8 Marking client -> serverMarking server -> client Scheduling server -> client

41 Tiziana Ferrari Quality of Service Support in Packet Networks41 Service for monitoring traffic SERVICE 2: –precedence: higher than best effort, lower than service 1 packets –drop probability: packets can be dropped in case of congestion. –Label: lower precedence –capacity: minimum guaranteed bandwidth, more bandwidth can be allocated if available –maximum upper rate threshold: for fair bandwidth allocation between several clients

42 Tiziana Ferrari Quality of Service Support in Packet Networks42 Service 2: implementation If pack(src/dest) = s 1 then if rate < max, pack(label) = medium prcedence (marking) else drop (policing) shaping: buffer size > server or client burst size minimum service rate = r * N client (client), or rate = R * N client (server) r: estimated rate needed for 1 client, R: estimated rate needed by the server to support m clients N client : number of clients downstream precedence: < precedence(service 1) Scheduling client -> server Server... Client 1 Client 2 Client 3 Client 4 r r r r 2*r 4*r R Marking client -> server Policing client -> server Policing server -> client Marking server -> client Scheduling server -> client

43 Tiziana Ferrari Quality of Service Support in Packet Networks43 Diffserv testing and QoS measurement

44 Tiziana Ferrari Quality of Service Support in Packet Networks44 Test network

45 Tiziana Ferrari Quality of Service Support in Packet Networks45 LAN layout (example)

46 Tiziana Ferrari Quality of Service Support in Packet Networks46 Equipment Test workstations traffic generators (3 SmartBits, Netcom System loan) ATM switches in the test sites cabletron ethernet switch DS capable platforms : –CISCO: C7200 or C7500 (partial CISCO loan) –IBM: IBM 2212 and IBM 2216 (2 routers in 5 sites, IBM donation) –Linux –Cabletron (LAN switch) –(Nortel, Torrent)

47 Tiziana Ferrari Quality of Service Support in Packet Networks47 CISCO: traffic policing (CAR) CAR: Committed Access Rate Multi-field classification: OK packet marking (precedence setting): OK exceed action testing: OK policing (at a configurable rate): two parameters token bucket for TCP performance optimisation –normal burst –exceed burst --> parameter tuning

48 Tiziana Ferrari Quality of Service Support in Packet Networks48 CAR: test of exceed actions Throughput: SWITCH: 1.20 Mbps DANTE: 0.38 Mbps

49 Tiziana Ferrari Quality of Service Support in Packet Networks49 CAR: TCP burst tolerance Normal and exceed burst tuning with TCP traffic single and multiple TCP streams optimum values are functions of the rate R at which traffic is policed, in particular: normal burst = 0.5 sec * R exceed burst = 2 * normal burst

50 Tiziana Ferrari Quality of Service Support in Packet Networks50 CAR: TCP burst tolerance (cont)

51 Tiziana Ferrari Quality of Service Support in Packet Networks51 CISCO: scheduling (CB-WFQ) Scheduling mechanism to provide minimum bandwidth guarantees to classes class definition: precedence or MF classification --> OK bandwidth allocation: no starvation, no bandwidth consumption --> OK traffic isolation: scenarios –UDP high priority + UDP best-effort –TCP high priority + UDP best-effort –TCP high priority + TCP best-effort UDP --> OK (always) TCP: inconsistent results with 1 TCP stream due to cell shaping problems in the ATM part of the network, good results with several TCP strams

52 Tiziana Ferrari Quality of Service Support in Packet Networks52 CB-WFQ: set-up

53 Tiziana Ferrari Quality of Service Support in Packet Networks53 IBM: scheduling (Self Clocked Fair Queuing) Policy = (traffic profile, validity period, diffserv action) diffserv action = (type of marking, queue type, bandwidth) optimum traffic isolation (tests only with UDP) Premium: Kbps guaranteed (8% PPP link bw) Assured: Kbps (40% PPP bw)

54 Tiziana Ferrari Quality of Service Support in Packet Networks54 IBM: EF policing Small TCP burst tolerance in a policer can completely starve a TCP stream. Token bucket depth is key parameter --> tuning need according to the rate at which traffic is policed

55 Tiziana Ferrari Quality of Service Support in Packet Networks55 IBM: EF policing (cont) EF with TCP traffic, target rate = 163 Kbps

56 Tiziana Ferrari Quality of Service Support in Packet Networks56 QoS measurement Resource allocation monitoring –for resource allocation and network dimensioning performance measurement –passive –active (invasive traffic) –for service validation –to understand the effect on end-to-end performance of buffering in one router or in a chain

57 Tiziana Ferrari Quality of Service Support in Packet Networks57 Performance measurement parameters of interest: –one-way delay, requirements: clock synchronisation >GPS based synchronisation SmartBits (Netcom Systems) >NTP (Network Time Protocol) NTP client / server hierarchy –one-way delay variation –packet loss –throughput –RTT

58 Tiziana Ferrari Quality of Service Support in Packet Networks58 Services: examples Virtual leased line: –point to point –one to many capacity allocation on congested links (e.g. US links) better-than-best-effort (qualitative definition) delay bound and delay variation sensitive traffic classes rate limiting of invasive traffic...

59 Tiziana Ferrari Quality of Service Support in Packet Networks59 More information at diffserv: –http://www.cnaf.infn.it/~ferrari/tfng/ds QoS measurement: –http://www.cnaf.infn.it/~ferrari/tfng/qosmon QBONE: US initiative for testing, validation and deployment of services based on the expedited forwarding PHB of the pr

60 Tiziana Ferrari Quality of Service Support in Packet Networks60 Comments Diffserv building blocks: already supported by several vendors diffserv: no changes in applications required diffserv goal: simplified approach to QoS for its support in backbones from today good interim test results diffserv in the future: –Packet Over Sonet (POS) vs ATM –VLL vs ATM permanent connections

61 Tiziana Ferrari Quality of Service Support in Packet Networks61 Comments (cont) diffserv still requires QoS support end-to-end (but diffserv can be implemented in some domains, provided that the end-to-end service is homogeneous) diffserv ATM/POS Dedicated connection Production network diffserv Production network

62 Tiziana Ferrari Quality of Service Support in Packet Networks62 Comments (cont) Issues –effects of high degree aggregation? More testing needed –interoperability between different platforms: effect on end-to-end services? –performance of marking, classification and scheduling at high speed? –Tools for service monitoring…. –Diffserv in production? 1 year?

63 Tiziana Ferrari Quality of Service Support in Packet Networks63 Discussion Deployment of diffserv in HEP Issues in diffserv deployment in HEP recommendations


Download ppt "Tiziana Ferrari Quality of Service Support in Packet Networks1 Quality of Service Support in Packet Networks Tiziana Ferrari Italian."

Similar presentations


Ads by Google