370 likes | 544 Views
Linux-based Implementation Of a Router (B.Sc Graduation project). DiffServ. Cairo University Faculty of Engineering Electronics &Communication dpt. 4th year. Supervisor: Prof. Dr. Khaled Foad El-Sayed. Submitted by: Ashraf Kamal Rahoma Hazem Mohamed Sobhi Hassanein
E N D
Linux-based Implementation Of a Router (B.Sc Graduation project) DiffServ Cairo University Faculty of Engineering Electronics &Communication dpt. 4th year • Supervisor: • Prof. Dr. Khaled Foad El-Sayed. • Submitted by:Ashraf Kamal Rahoma • Hazem Mohamed Sobhi Hassanein • Hossam El-Sayed Abd Allah • Tarek Amr Hamed • Zein El-Abidin Mohamed WALI 1
Introduction to QoS: • Motivation: • QoS Terminology and Parameters: Internet Protocol (IP).was designed to provide best-effort service. • VoIP • FTP QOS: Quality of Service (QoS) implies the ability to differentiate traffic streams and to define a level of performance for those traffic streams across a network. When heavily utilized networks are carrying various types of traffic for different users, QoS is a mean of offering better service 2
Parameters • Latencythe delay a flow experiences when passing through a device • Jitter the latency variations • loss probabilitybandwidth distribution and availability (throughput or goodput) 3
IntServ vs. DiffServ • IntServ overview 4
IntServ vs. DiffServ Each has its won points of strength And weakness 9
DiffServ Architecture • DiffServ Architectural Model • Differentiated Services Domain DS Boundary Nodes and Interior Nodes: DS Ingress Node and Egress Node: Differentiated Services Region: Traffic Classification and Conditioning: Classifiers: Traffic Profiles: Traffic Conditioners: 10
Meters: Markers: Shapers: Droppers: Location of Traffic Conditioners and MF Classifiers: Within the Source Domain: At the Boundary of a DS Domain: In non-DS-Capable Domains: In Interior DS Nodes: 11
ToS VS DSCP • Introduction • Type of service byte definition 12
Disadvantages of ToS • The IP-precedence scheme allows only specification of relative priority of a packet. it has no provisions to specify different drop precedence for packets of a certain priority. • The 3 bits restrict the number of possible priority classes to 8 • The ToS mechanism is not powerful enough to allow an application to quantify the level of service it desires. 15
Per Hop Behavior PHB A per-hop behavior (PHB) is a description of the externally observable forwarding behavior of a DS node applied to a particular DS behavior aggregate (BA). • Different PHB’s Currently there are 4 standard different per hop behaviors PHB’s: Default PHB Class-Selector PHB. Assured Forwarding (AFny) PHB. Expedited Forwarding (EF) PHB. 17
DiffServ Support under Linux • Linux Traffic Control Overview 19
Implementation and Code • TC Implementation 21
Note: In this drawing only one AF class is shown for the simplicity of the drawing, the other ones are just the same. • DSMARK • CBQ • pFIFO: • Low queuing delay (latency). • Well defined minimum departure rate, i.e. independent of the other traffic at the node. • No burst. (policing). • 4 CBQ: • Four AF classes with different fractions of the bandwidth allocated for each. • In each one we have three dropping precedence’s (RED) • Bandwidth assurance, • RED: • No bandwidth guarantee. • No quality of service: No policing filters, no shaping. 22
Traffic Classes • Variables: • Setting Functions: • Constructor. • Destructor • Set Device • Set Network • Set Rates • Set PHB’s • Set Police • Set ToS 23
Infra-structure Functions: • Filtering Functions: • Make Filter • Get Command 24
Software implementation • Architecture Overview. • Graphical User Interface (GUI). • System programming. 25
Architecture Overview using C++ Classes • To ensure encapsulation & independence • To control the communication & error tracing • To give the ability to change or update any specific parts. 26
Architecture Overview using C++ Classes 27
GUI tabs PHB configuration tab 30
Advanced PHB 31
4.4 Testing: 35
4.5 Testing procedure We have performed testing on 3 basic levels: 1. Marking: Testing if packets were marked according to specified classification. 2. ToS: Testing if the classification according to ToS and monitoring packets flow were mapped to the required PHB 3. PHB’s Implementation: Monitoring different rates assigned to each class 36
Than You ! 37