Presentation is loading. Please wait.

Presentation is loading. Please wait.

DiffServ QoS in internet

Similar presentations


Presentation on theme: "DiffServ QoS in internet"— Presentation transcript:

1 DiffServ QoS in internet
Elon Rot , Itay Poleg Presentation for ATM Networks course (EE ) DiffServ: 26/06/05

2 Why do we need QoS ? IP revolution - from “IP over everything” to “everything over IP” Current Internet guarantee: Best Effort only. Some applications require more: Guarantee delay, jitter Guarantee bandwidth Guarantee loss rate (VoIP, Conference-Calls, VPN, VOD…) Although QoS is available in lower layers (ATM, FR, Ethernet) we need a media independent IP QoS כולנו עדים למהפכת האינטרנט שהתרחשה בשנים האחרונות כיום יש רק best effort שירותים שונים דורשים QOS מינ' השהייה – שיחות טלפון, שיחות ועידה conference call , מינ' רעידות – שיגיעו בקצב אחיד – יחסוך משאבים אצל התוכנות – פחות buffers רוחב פס – על מנת לספק לחברות את ההבטחה שניתנה להם. DiffServ: 26/06/05

3 Little History An 8 bit field in the IP-header
Seems like a good idea for future use. Lots of initial research in the late 80s and early 90s. Often takes a telecommunications view of the network. ATM QoS and Integrated services were developed based on these results (1995). Focus on per-flow, hard QoS. Effort was driven by perceived application needs. In the last years (from 1998), the focus has shifted towards Differentiated services. Focus is on QoS for flow aggregates, e.g., all the flows belonging to one customer. From 2000 , you can buy a router that support DiffServ (Cisco) כבר בעת פיתוח IP חשבו והוסיפו שדה לכך (ב הוגדר השדה TOS ע"י RFC 1349) הרבה מאד מחקרים בסוף ה-80 תחילת 90 – גם ע"י חברות הטלקומיוניקציה 1995 – יציאת INTSERV דמיון ל- ATM 1998 DIFFSERV הגדרות ראשונות בIFET של RCF רלוונטים 2000נתבים תומכי DIFFSERV DiffServ: 26/06/05

4 What is needed to support QoS
Between the network and its clients - Traffic contract Traffic specification/desired QoS/supported QoS At network edge: Signaling and admission control Packet classification/marking Traffic shaping Traffic policing צריך חוזה בין ספקים ללקוחות של מה רצוי ומה ניתן להשגה בכניסה לרשת מנגנון של איתות ו/או ניהול משאבים על מנת להבטיח את מה שמבקשים סיווג של מה יקבל מה , עיצוב של התעבורה הנכנסת לרשת – כך ניתן לעמוד בדרישות התאמה של התעבורה לבמה מסוגלים/צריכים על פי החוזה לתמוך Signaling and admission control: if everything is allowed, QoS cannot be guaranteed. Signaling is usually needed to setup the network so that QoS can be guaranteed. • Packet classification/marking: What kind of service do you want to apply to the packet? • Traffic shaping: traffic with a certain shape is easier to guarantee service • Packet classification/marking and traffic shaping is also called traffic conditioning. • Traffic policing: packets out of the service agreement should be stopped at the edge TAC – traffic agreement contract DiffServ: 26/06/05

5 What is needed to support QoS
At routers: Classification and scheduling Smart Routing Buffer management. Traffic monitoring Traffic reshaping בתוך הרשת מיון ותזמון של התעבורה – צריך אלגוריתום תזמון , FCFS לא יעבוד WFQ משהו כמו ניתוב – גם הניתוב משחק תפקיד , הניתוב המקורי לא נקבע בהכרח על סמך הדרישות ניהול באפרים – איזה חבילות להעביר , לזרוק או לעכב פיקוח על התעבורה – על מנת לגלות בעיות מוקדם ככל האפשר , לראות אם ניתן לעמוד בדרישות במסלולים האלה עיצוב התעבורה – בנקודות בהם היא מתאחדת / מתפצלת At routers: • classification and scheduling: FCFS won't work, need more advanced packet scheduling scheme (Fair Queuing) • Routing algorithm needs to improve: find a path that satisfies QoS constraints (QoS/policy/constrained routing). • Buffer management.which packet to drop/forward/delay • Traffic monitoring: find problems as early as possible • Traffic reshaping (at merge and fork points) DiffServ: 26/06/05

6 Different QoS approaches
Per flow Vs. aggregate More groups leads to: more flexibility, more admission, more routers resources Statistical Vs. Deterministic guarantee Sometimes statistical are not enough Deterministic more complex, less utilization End-to-End Vs. Per-Hope-Behavior User see E2E PHB is simpler to implement בכולם יש tradeoff ברור , בעיקר מורכבות לעומת פשטות עבור כל קשר (בין שני מחשבים) בנפרד או עבור קבוצת קשרים (VC) , יותר קבוצות מוביל ליותר גמישות במה שיוענק לכל אחד אבל התשלום הוא בניהול מרוכב יותר , וביותר מורכבות ומשאבים בנתבים האם להבטיח רוחב פס מינימלי או קצב איבודים ממוצע פחות מ או משהו דומה , לעיתים הבטחות סטסטיות לא מספיקות , לדוגמא בVOIP גם אם בממוצע לא יאבדו יותר מדי חבילות אבל החבילות שיאבדו יבואו בפרצים , התשלום הוא במורכבות , פחות גמישות בשימוש במשאבי הרשת האם להבטיח משהו מקצה לקצה או רק בקו היוצא הבא (חשוב עבור כל נתב בדרך) , מה שמעניין את המשתמש הוא מה שהוא רואה , אבל לעיתים מורכב מדי להגדיר מקצה לקצה , פשוט יותר להגדיר התנהגות של כל נתב DiffServ: 26/06/05

7 IntServ Per-flow QoS guarantees Reservation of resources using RSVP
Two service models: controlled-load service: performance is as good as unloaded network guaranteed service: firm bound of throughput and delay פתרון אחר ממה שאנחנו מציגים , Integrated service הרעיון העומד מאחוריו הוא פשוט – באמצעות מנגנון של איתות נבדוק אם אפשר להבטיח מסלול עם הדרישות המבוקשות , אם לא , לא תתקיים התעבורה , אם כן יוקצו כל המשאבים לתעבורה עד סיומה . בדומה לשיחות ברשת טלפוניה שני שירותים מוצעים מבטיח שהמשתמש יראה את הרשת כאילו היא לא עמוסה הבטחות קשיחות של הדרישות DiffServ: 26/06/05

8 IntServ drawbacks Scalability Complexity RSVP support along the path
Maintaining “soft” reservations Complexity Support for each flow Need to administrate allocations הבעיה העיקרית העומדת היא הסקלאבליות והמורכבות של הפיתרון – צריכים תמיכה במנגנון האיתות עד היעד , צריך להתאים את כל הרשת בבת אחת הזמנות המשאבים הן מטבען זמניות , צריך לעדכן את ההזמנות באופן תדיר , כולם צריכים לעדכן את כולם כל הזמן מרכבות הפיתרון גורמת לזה שכל נתב צריך לתמוך ביכולות להעניק שירותים שונים לכל Flow מדובר המאות ואלפים , לכל תזרים צריך ניהול משלו ומשאבים משלו מישהו צריך לנהל את כל הקצאת המשאבים הזאת DiffServ: 26/06/05

9 What is DiffServ? Aggregate connections flows to different classes
Different demand can be guaranteed to each class Guarantees implementations are per hop behavior Each flow gets required services statistically DiffServ: 26/06/05

10 DiffServ architecture
Edge Routers: Usually work at lower rate Therefore can implement more functionality like marking & shaping traffic Core Routers: Usually work at high rate So we want packet handle to be fast and simple (using the classifications) Per-class service

11 DiffServ architecture
Edge routers Each flow is handled separately, and each packet is marked according to the SLA Core routers Deals with classes (rather then flow) so can be more simple. Each router still need to manage buffering and scheduling SLA – service level agreement DiffServ: 26/06/05

12 Traffic Conditioner Block (TCB)
Classifiers Packet classifiers select packets in a traffic stream based on the content of some portion of the packet header. We define two types of classifiers. The BA (Behavior Aggregate) Classifier classifies packets based on the DS codepoint only. The MF (Multi-Field) classifier selects packets based on the value of a combination of one or more header fields, such as source address, destination address, DS field, protocol ID, source port and destination port numbers, and other information such as incoming interface Classification: selects a packet in a traffic stream based on the content of some portion of the packet header DiffServ: 26/06/05

13 Traffic Conditioner Block (TCB)
Meterting Traffic meters measure the temporal properties of the stream of packets selected by a classifier against a traffic profile specified in a TCA (Traffic Conditioning Agreement). A meter passes state information to other conditioning functions to trigger a particular action for each packet which is either in- or out-of-profile (to some extent). checks compliance to traffic parameters (e.g., Token Bucket) and passes results to marker and shaper/dropper to trigger action for in/out-of-profile packets. Metering: checks whether the traffic falls within the negotiated profile. DiffServ: 26/06/05

14 Traffic Conditioner Block (TCB)
Markers Packet markers set the DS field of a packet to a particular codepoint, adding the marked packet to a particular DS behavior aggregate. The marker may be configured to mark all packets which are steered to it to a single codepoint, or may be configured to mark a packet to one of a set of codepoints used to select a PHB in a PHB group, according to the state of a meter. When the marker changes the codepoint in a packet it is said to have "re-marked" the packet. Marking: marks packet to a particular DS behavior aggregate DiffServ: 26/06/05

15 Traffic Conditioner Block (TCB)
Shapers Shapers delay some or all of the packets in a traffic stream in order to bring the stream into compliance with a traffic profile. A shaper usually has a finite-size buffer, and packets may be discarded if there is not sufficient buffer space to hold the delayed packets. Droppers Droppers discard some or all of the packets in a traffic stream in order to bring the stream into compliance with a traffic profile. This process is know as "policing" the stream. Note that a dropper can be implemented as a special case of a shaper by setting the shaper buffer size to zero (or a few) packets. Shaper/Droper: delays if necessary and then forwards or discards the packets . DiffServ: 26/06/05

16 Classification How to mark? 6 bit it the IP header.
Remainder – IP header Type Of Service field version header length total length (in bytes) Identification Fragment offset source IP address destination IP address options (0 to 40 bytes) (Not used) 4 bytes time-to-live (TTL) protocol header checksum bit # 15 23 24 8 31 7 16 M F D ToS DiffServ: 26/06/05

17 ToS field IP-v4 DS-Field 1 2 3 4 5 6 7 Precedence Type of Service
1 2 3 4 5 6 7 Precedence Type of Service Priority One hot field for : Delay,cost,throughput, reliability Must be zero DS-Field Precedence = priority – higher number higher priority , used mainly to class router packets as high priority Why IP-v4 solution not used - main problem , no drop differentia in the same priority . Currently rarely supported by vendors . 1 2 3 4 5 6 7 Class Selector Codepoints Differentiated Services Codepoint (DSCP) Currently Unused DiffServ: 26/06/05

18 PHB Externally observable forwarding treatments at a single node
PHB can be described in relative or absolute terms PHBs are typically implemented by means of buffer management and packet scheduling All packets with the same DSCP are treated the same, Four types of classes available: Default Class-Selector Expedited Forwarding (EF) Assured Forwarding (AF) Externally observable forwarding treatments at a single node are described by PHBs. – Each PHB is represented by a 6-bits value called Differentiated Services CodePoint (DSCP). – All packets with the same codepoint are referred as a behavior aggregate. – PHB may describe the forwarding treatments in either relative or absolute terms. • Minimal bandwidth • Proportional allocation of link bandwidth – PHBs are typically implemented by means of buffer management and packet scheduling • WFQ may or may not be used. DiffServ: 26/06/05

19 PHB types Default PHB: Class-Selector PHB
Traditional best effort treatment. Must be implemented Used for unsupported DSCP Class-Selector PHB Backward compatibility Eight possible combinations (including default) The DSCP (6 bit) pattern is: The DSCP (6 bit) pattern is: xxx000 DiffServ: 26/06/05

20 PHB types Expedited Forwarding PHB
The DSCP (6 bit) pattern is: Expedited Forwarding PHB Providing low loss, low latency, low jitter, assured bandwidth, end-to-end service through DS domains Implies isolation: guarantee for the EF traffic should not be influenced by the other traffic classes Non-conformant traffic is dropped or shaped. Possible service: providing a virtual wire DiffServ: 26/06/05

21 PHB types Assured Forwarding (AF):
A method by which Behavior Aggregates can be given different forwarding assurances. The intent is that it will be used to implement services that differ relative to each other (e.g., gold, silver,…). AF defines 4 classes with some bandwidth and buffers allocated to them. Within each class, there are three drop priorities, which affect which packets will get dropped first if there is congestion. Non-conformant traffic is remarked. Assured Forwarding (AF): AF defines 4 classes with some bandwidth and buffers allocated to them. The intent is that it will be used to implement services that differ relative to each other (e.g., gold, silver,…). Within each class, there are three drop priorities, which affect which packets will get dropped first if there is congestion. Lots of studies on how these classes and drop priorities interact with TCP flow control. Non-conformant traffic is remarked. • Service profile specifies the expected capacity • Boundary nodes mark packet as in or out of profiles • During congestion, out packets are dropped first. • The network should be provisioned to have sufficient capacity for in packets. – Four forwarding classes, each with three drop precedence levels. • Each class has a minimum amount of buffers and bandwidth. • A DS node should implement all four AF class, and at least two of the three drop priorities. • The resources for each class should be configurable. DiffServ: 26/06/05

22 AF table Class 1 Class 2 Class 3 Class 4 Low Drop 001010 (AF11)
The DSCP (6 bit) pattern is: xyzab0 xyz is the class: 001-class1 ; 010-class2 ; 011-class3 ; 100-class4 ab is the drop precedence: 01-low ; 10-medium ; 11-high Class Drop precedence Class 1 Class 2 Class 3 Class 4 Low Drop (AF11) (AF21) (AF31) (AF41) Medium Drop (AF12) (AF22) (AF32) (AF42) High Drop (AF13) (AF23) (AF33) (AF43) DiffServ: 26/06/05

23 Service A service describes the overall treatment of a customer’s traffic within a DS domain. Customers see services, not PHBs. To support a service, many components must work together: Mapping of service to PHBs, traffic conditioning, network provisioning, PHB-based forwarding. Services in the DiffServ architecture is defined in the form of Service Level Agreement (SLA). Service: – A service describes the overall treatment of a customer’s traffic within a DS domain. • Customers see services, not PHBs. – To support a service, many components must work together: • Mapping of service to PHBs, traffic conditioning, network provisioning, PHB-based forwarding. – Services in the DiffServ architecture is defined in the form of Service Level Agreement (SLA). DiffServ: 26/06/05

24 Putting it all together
DiffServ: 26/06/05

25 Conclusion Diffserv provides:
Internet Class Of Service: several ToS guaranteed in each DS domain. Using PHB to achieve the requirements. Provisioning of network resources according to SLAs במהלך המצגת ראינו כי Diffserv מספק Qos באינטרנט , הוא עושה זאת על ידי סיווג למחלקות שונות שלכל אחת מובטח משהו בתוך ה domain הוא עושה זאת ע"י הגדרת התנהגות של כל נתב ונתב פרטנית . מספק קיצוב של משאבי הרשת בהתאם להסכמים בין המשתמש והספק DiffServ: 26/06/05

26 Advantage Scalability Simple Easily adjustable to SLAs
No dynamic change of state Saves communication between routers Can be deployed for specific domain independently Simple Relatively low number of states Using a stateless approach that minimize the need of nodes to remember anything about flows Divide load on routers, edge vs. core edge routers – a few strong and expensive routers core routers – a lot simple and chip No signaling Easily adjustable to SLAs יתרונות – סקלאבליות אין עידכון של מצבי הזמנות בין הנתבים אפשר לפרוס אותו באזור מסוים בו הוא יספק שירות , אין צורך בתמיכה E2E מורכבות מכיוון שאיחדנו בין התעבורות השונות , ישנן מספר קבוע של קבוצות שצריך לנהל , ולהקצאות להם משאבים פיצול של המורכבות במקומות המתאימים אין מנגנון מסובך של איתות מותאם להסכמים בין משתמש/ספק DiffServ: 26/06/05

27 Disadvantages Not real end-to-end QoS: Routing independent mechanism
Only PHB – which are not easily map to E2E Limited number of classes – can’t isolated specific flow. Inside aggregate each flow get the same (only statistic guarantees) Routing independent mechanism Admission control: Fairly static Manually or with another mechanism חסרונות לא באמת end2end מסוגלים להבטיח התנהגות רק של כל נתב – כמה נתבים נעבור לא ידוע – דוגמא , השהייה מספר מוגבל של התנהגיות , לעיתים לא מספיק , בעיקר לנוכח האפלקציות , כמו כן התנהגויות קשורות זו בזו השירות "מובטח" לכל קבוצה , כך שהאופי הוא סטיסטי , יתכן שבתוך הקבוצה כל החבילות שיעכבו יהיו שלי . אם יוצאים מדומיין אחד אזי קשה מאוד להבטיח המשך QOS גם אם עוברים ל DIFFSERV דומיין חדש המנגנון לא כולל בתוכו התייחסות למסלולי ניתוב , מסלול הניתוב נקבעים בנפרד (נניח לפי השהייה – hopcount) לעומת זאת לא בטוח שהם טובים מבחינת lossrate ניהול ההקצאות נעשה על ידי הגדרת התנהגות לכל נתב , ההגדרה היא סטטית יחסית ולא משתנה קודם כל עדיין לא ברור כיצד עושים ניהול חכם , כרגע נעשה ידנית , אם לא ידנית צריך מנגנון מורכב אחר DiffServ: 26/06/05

28 Diffserv-aware-MPLS DiffServ enable scalable network design with multiple CoS. MPLS enable path protection and restoration (create an end-to-end specific path) Combine those two protocols give us the ability to give strict E2E QoS guarantees while optimizing the use of network resource דוגמא לישום טוב של שילוב של שני הדברים כל אחד והיתרונות שלו נותן לנו מודל יותר טוב , מסוגל להבטיח Qos e2e Diffserv מביא לנו את החלוקה לקבוצות והסקלאבליות MPLS מביא את בניית מסלולים , הזמנת משאבים , יכולת התאוששות Differentiated Services (DiffServ) enables scalable network designs with multiple classes of service. MPLS traffic engineering (TE) enables resource reservation, fault-tolerance, and optimization of transmission resources. MPLS DiffServ-TE combines the advantages of both DiffServ and TE. The result is the ability to give strict Quality of Service (QoS) guarantees while optimizing use of network resources. The QoS delivered by MPLS DiffServ-TE allows network operators to provide services that require strict performance guarantees such as voice and to consolidate IP and ATM/FR networks into a common core. DiffServ: 26/06/05

29 Diffserv-aware-MPLS LSP 1 (AF1) Ingress node Core router (TCB) (LSR)
Incoming Traffic Ingress node (TCB) With both Diffserv & MPLS support LSP 1 (AF1) LSP 2 (AF3) LSP 3 (EF) LSP 4 (default) Core router (LSR) Support Diffserv and MPLS בכניסה לרשת יש נתב התומך גם ב Diffserv & mpls אותו נתב בונה מסלולים המתאימים לדרישות ולאחר מכאן ממפה את התעבורה , כל קבוצת שירות לנתיב אחר . בהמשך כל נתב נותן את העדיפות המתאימה לכל מסלול בהתאם לקבוצה לה הוא שייך . LSR – label switch router LSP – label switching path Every virtual channel has diffserv class DiffServ: 26/06/05

30 References Internet Architecture and Protocols EE Cisco QoS - by: ANJALI KULKARNI YI-AN CHEN IEFT RFCs 2474, 2475, 2598, MPLS DiffServ-aware Traffic Engineering DiffServ: 26/06/05

31 DiffServ QoS in internet
Elon Rot , Itay Poleg Presentation for ATM Networks course (EE ) DiffServ: 26/06/05


Download ppt "DiffServ QoS in internet"

Similar presentations


Ads by Google