Loading

Module 1: Internet QoS

Notes
Study Reminders
Support
Text Version

IntSev and DiffServ Architectures

Set your study reminders

We will email you at these times to remind you to study.
  • Monday

    -

    7am

    +

    Tuesday

    -

    7am

    +

    Wednesday

    -

    7am

    +

    Thursday

    -

    7am

    +

    Friday

    -

    7am

    +

    Saturday

    -

    7am

    +

    Sunday

    -

    7am

    +

IntSev and DiffServ Architectures
Welcome back to the course on Computer Network and Internet Protocol.So, today we are going to cover the last topic of Internet Quality of Service. So, we aregoing to talk about two specific quality of service architectures called integrated servicearchitecture or IntServ architecture or that under differentiated service architecture orDiffServ architecture. So, in the beginning let me give you a brief idea about thedifferences between this IntServ and DiffServ architectures. So, we have two modes ofservices to provide quality of service over the internet.So, the first mode of services, which we call as the guaranteed service, that is theintegrated service architecture. So, the integrated service architecture what we try to do?We try to provide the kind of guaranteed service to the end users based on their servicelevel agreement. So, what is mean by guaranteed service? Guaranteed service means ifthe service level agreement says that all of my packets should not get more delay than 10millisecond. Then the network will ensure that all the packets of my which as comingfrom my devices, they will get less than 30 millisecond of delay or the 10 milliseconds ofdelay that I have on my service level agreement.So, that we call as the guaranteed service. Now, you see that for this kind of guaranteedservice to or to support this kind of integrated service architecture, what you need to do?You need to ensure that every individual router in the network should take care of aboutyour service level agreement. So, every individual router need to make an estimatewhether it will be able to provide your service or they need to do a prereservation ofresources inside the routers, to ensure that that specific service level agreement is made.Now to do that the routers need to coordinate with each other; because the packet isflowing through multiple routers whenever it is moving from one source to anotherdestination and then individual routers need to coordinate with each other to reserve theresources for you such that it can guarantee the service that is promised to you. So, thisparticular architecture we call it as integrated service architecture. Now in this integratedservice architecture the problem is that, this coordination among the routers. Now youthink of the scale of the internet you have millions of routers and whenever you aretransferring certain application then it need to pass a large number of routers there underthe control of different service providers at different levels.You have this tier 0 ISPs, tier 1 ISPs, then tier 2 ISPs, then the local ISPs. So all thesedifferent service providers they need to coordinate with each other and the entiremechanism is very much complicated for this internet scale or internet levelimplementation. So, that is why we have a second class of quality of service, which doesnot give you guaranteed quality of service or which does not ensure that whatever thenetwork service provider has promised to me in terms of service level agreement.For a 100 percent times that will get executed, but what it tries to do? It tries its best tomeet the service requirements. So, it is like that, if your network is too congested youcannot do anything in that case your packets will suffer, but if the network has a mediumload, then it will provide you the required quality of service. Again the scenario comefrom the example of airport that security check scenario that if your airport is very muchloaded to with the millions of passengers at the peak time then the security guards alsocannot do anything.So, what if you do you transfer some passengers from one queue to another queue it doesnot matter much. But whenever the load is high, but not very high during that time, thesecurity officials they tries to provide certain quality of service, if they finds out that willcertain queue is growing longer, but in other queue there are remaining passengers. So,they shift certain passengers from one queue to another queue and they tries to provideyou some level of quality of service based on the based on the best that they can do. So,this kind of architecture we call it as a differentiated service architecture or DiffServarchitecture. So, for internet scale implementation, DiffServ architecture is more suitablewhere you just try your best to provide the quality of service, but there is no guaranteethat 100 percent of the time it will met the desired quality of service. So, we will lookinto this IntServ architecture and the DiffServ architecture in details.(Refer Slide Time: 05:33)So first start our journey with this integrated service architecture, to start with first let uslook the service architecture principles in the internet, we call it the internet servicearchitecture or ISA. So, this internet service architecture or ISA, it provides integratedservice QoS architecture over the internet. So, it has few steps like the admission control.So, this admission control for quality of service you require reservation for the newflows, for that we run something called the resource reservation protocol or RSVP, wewill look into this RSVP in little more details. Then you have the routing control. So, youmake the routing decision based on the quality of service parameters. So, you find outthat whether a particular router is loaded if a particular router is loaded then you rathernot route the packet to that router rather you route it to some alternate router. So, yourrouting algorithm is also depending on the depends on the quality of service parameters.(Refer Slide Time: 06:35)Then have the different kind of queuing strategies that we have already discussed in thelast lecture, which takes account of different flow requirements. And finally, you havedescribed policy like the congestion avoidance algorithm to meet the quality of requiredquality of service like the random early detection algorithm that we have discussedearlier.(Refer Slide Time: 06:55)So, this is this entire ISA architecture of ISA architecture that runs inside a router. So, ifyou look into this ISA architecture you have these routing protocols, which are findingout the routing parts and then you have the routing database and that is the routing partwhich is running inside your router operating system, and then you have this quality ofservice associated protocol.So, this quality of service associated protocols, it has this admission control part, it hasthis admission control protocol it ensures that the packet, which are which are goinginside the network the meets the required quality of service. Say for example, wheneveryou are admitting a new flow in the network, then you need to ensure that the new flowget service from the internet or that it gets the required service from the internet.If you do not able to ensure that the required flow get the required services from theinternet, then you simply drop that particular flow. So, this particular thing possibly youhave observed when making a voice call, sometime you have heard that a nice voicefrom a lady that all lines are busy please dial after some time. So, it is just like thenetwork is not allowing you to get admitted in the network because it does not havesufficient amount of resources. So, that is the purpose of this admission control protocol.Now, this admission control protocol get input from the reservation protocol. So, thereservation protocol actually reserves the resources in individual routers, through theRSVP protocol that we will look after a couple of slides. So, this RSVP protocol or theresource reservation protocol, it ensures that the resource are getting reserved inindividual routers in the end to end path.So, if you are not able to reserve any further resource, then the admission control willdeny your entry to the network. Then you have a management agent which managesdifferent functionalities of the quality of service like this traffic shaping, traffic policingand all these aspects and then you have a traffic control database. So, this traffic controldatabase actually tells you that how your packets need to be treated by the network.Now, let us come to the forwarding plane of the router. So, the forwarding planewhenever, you are getting a new packet then first you have this classifier and the routeselection. So, this classifier and the route selection mechanism it will classify yourpackets into one of the available traffic classes and then based on that, it will select theroute by looking into the routing database then comes your packet scheduler. So, thispacket scheduler it will get input from this route information as well as from the trafficcontrol database, that the how your packets need to be treated, and then it puts it in oneof the queues.So, either in the best effort queuing or you can have multiple queuing for the quality ofservice traffic. So, the queue is associated queuing. Then your scheduler is running,which actually runs on this queues and transfer the packets based on one of the queuingpolicies. So, that it is the entire ISA implementation inside a router that, actuallyintegrates the routing and quality of service together makes a integrated treatment overthe packets which are coming from the end user applications.(Refer Slide Time: 10:42)Now, let us first look into the resource reservation protocol. So, this resource reservationprotocol or RSVP, is a network control protocol that allows data receiver to request aspecial end to end quality of service for its data flow. So, you require certain kind ofspecial quality of service for your end to end flow, for that you apply this resourcereservation protocol. Remember that RSVP is a network control protocol and it is not arouting protocol. It works with IP that is true, but it works in association with IP.(Refer Slide Time: 11:17)So, if you look into the earlier slide, we have the routing control protocol here, whichtakes care of your routing and then your reservation protocol the RSVP is running here,that takes care of this resource reservation and individual routers. So, it is not a routingprotocol, rather a QoS protocol which works in association with routing.(Refer Slide Time: 11:41)Well so it is designed to operate with current and future unicast and multicast routingprotocols.(Refer Slide Time: 11:49)So, this is the architecture for integrated service architecture and RSVP together. So, wehave just shown the instances of two different machines, the host machine and the routermachine. So, the first one is so, this is at the host machine, the module which runs insidethe host machine and these are the module which runs inside the router machine.Now inside the host machine let us see the modules that we have. So, you have theapplications which are running there, that application talks with the classifier, thatclassifies your packet what type of quality of service classes that packets belongs to. Andthen you have a RSVP daemon that RSVP daemon actually runs in the host as well as inall the intermediate routers. So, these RSVP daemons; so, you can see that these RSVPdaemons they talk with each other. So, you have an arrow connecting the individualRSVP daemon. So these RSVP daemons talk with each other and the reserve theresources for a particular flow inside every routers in the end to end path. So, it finds outwhether it is able to resource the reserve or it will be able to reserve the resource for aparticular flow. If it is able to reserve the resources, then it allows the flow through theadmission control mechanism otherwise it simply drops that particular flow. Now youhave that packet scheduler that works in cooperation with the classifier and the RSVPdaemon, that talks about that what type of resources have been reserved for you, andaccordingly the package scheduler schedule a packets into multiple queues.Now again the similar thing happens here that you have the routing protocol daemonwhich is running inside the routers. So, this routing protocol daemon in association withRSVP daemon and the packet classifier, you decide the next stop which is coming fromthe routing part and your corresponding class queue, which is coming from this RSVPpart RSVP and the classifier part and in your packet scheduler will actually scheduleyour packet based on your next hop and class queue that is being determined. And thenthe packet will be sent to the next router, and in every router this particular thing willrun. So, remember this important aspect of this RSVP daemon at both the host at all theintermediate routers.(Refer Slide Time: 14:15)So, all the RSVP daemons and all the routers in the end to end path they need tocoordinate with each other. And that is why the implementing in this integrated servicearchitecture over the internet is a difficult thing, because you need a coordination amongall the routers which is difficult to achieve for large scale internet.(Refer Slide Time: 14:39)Well let us look into certain RSVP terminologies. So, quality of service is implementedfor a particular data flow by a mechanism that we call as a traffic control in RSVP; wehave the packet classifier that determines the quality of service level, and the packetscheduler that link layer dependent mechanism to determine which particular packets areforwarded. Now for each outgoing interface, the scheduler achieves the desired qualityof service.So, if you look into a router perspective you can have multiple outgoing interfaces, likeeth 0, eth 1, eth 2, eth 3 and so on. So, these are the different outgoing interfaces for arouter, now for every individual outgoing interface I need to maintain these multiplequeues. Because you remember that these queues are specific to outgoing interface. So,with this outgoing interface possibly another router this is connected. So, that is why forevery interface, you need to apply this queuing mechanism.So, the routing algorithm will take tell you that in which outgoing interface the packetneed to be forwarded to and then in that particular outgoing interface you run thequeuing mechanism to serve the packets to serve all the packets, which need to beforwarded to that particular interface.(Refer Slide Time: 16:01)Now this is the reservation procedure for RSVP. During the reservation setup, first wesend an RSVP QoS request which is passed to two local decision module. The decisionmodules are the admission control module and the policy control module; now theadmission control module it determines whether the node has sufficient availableresources to supply for the requested resources.If you have sufficient amount of resources, then you allow the flow to enter in thenetwork, otherwise you simply drop the flow. Then you have the policy control module.This policy control module determines whether the user has administrative permission tomake the reservation.Now that is an important aspect in the internet scale, say for example, you have not madethe specific service level agreement; in that case even if you are trying to send somevoice over IP packet, that voice over IP packets will be treated as a best effort packet notas an high priority packet. So, that is why you need to make at the corresponding servicelevel agreement with the network service provider, before sending any quality of serviceassociated packet. So, this policy control actually comes from the service levelagreement, that talks about whether the user is actually have sufficient administrativeprivilege to mark its packet as a high priority packet or not.(Refer Slide Time: 17:23)Now, if this both checks succeed then the parameters are set in the packet classifier, andin the link layer interface to obtain the desired level of quality of service. If either of thecheck fails like either your admission control check fails or the policy control check fails,then the RSVP program returns an error notification to the application process thatgenerated that request, that you are not allowed to send this packet over the internet withthis quality of service which you are claiming.
IntSev and DiffServ Architectures- Part 2
Now, let us look into the reservation model in RSVP how RSVP does the reservation. So,a RSVP request it consists of two part; one thing we call as the flowspec and anotherthing we call as the filterspec. So, this pair is known as the flow descriptor. So, thisflowspec it specifies the desired level of quality of service. So, what type of quality ofservice you are expecting from the end user?And the filterspec together with the session specification defines the set of data packetslike this filter spec actually talks about that what type of queuing mechanism you want toimplement on your packet. Whether you want to go for priority queuing or a customqueuing or a weighted fair queuing or whatever other queuing mechanisms that we haveto provide the internet quality of service.(Refer Slide Time: 18:50)So, this flowspec it is used to set the parameters in the packet scheduler, while as thefilterspec it is used to set the parameter in the packet classifier. So, based on thefilterspec you actually filter out the packets that is why the name filterspec. So, it is putin the packet classifier to classify the packets, and then design that or put that packetassociated with different type of queues that you have to provide quality of service.And the flowspec it is used to set the parameters in the packet scheduler that, what wouldbe the individual parameters to setting up the queues. Now this flowspec it is areservation request it generally includes a service class and two sets of numericparameter. So, one is called the Rspec another one is called the Tspec. So, this Rspecdefines the desired quality of service and the Tspec defines the data flow that whichparticular packets of a flow you are going to consider.(Refer Slide Time: 19:48)So, here is a flow spec structure. So, you can see that it contains multiple parameters likethis token rate, token bucket size, the peak bandwidth, latency.(Refer Slide Time: 19:57)So this token rate, token bucket size they are kind of are belongs to the Rspec that talksabout the scheduler parameters whereas, the peak bandwidth, latency, delay variation, allthese things they talk about flow specific parameters the maximum Sdu size, minimumpolicy size. So, they belongs to the Tspec bit of this flow spec. So, this flow specifies allthese numeric values, which actually determines your corresponding service levelagreement. So, based on the flow spec you determined that what level of quality ofservice you want to provide to a particular user, then you control or you configure theintermediate routing queues based on these particular parameters.Whereas, in case of filterspec you are actually marking the packet classifier or you areconfiguring the packet classifier, to say that well this particular user, may generate VoIPtraffic, video on demand traffic and the best effort traffic as per its service levelagreement that the traffic classifier needs to take care of.(Refer Slide Time: 21:15)So, the problems which are associated RSVP there are major two problems that I havealready pointed out: that the RSVP daemon needs to maintain per flow states atintermediate routers. Because the RSVP daemon needs to maintain per flow states atintermediate routers it is a heavy process. So use of this per flow state and per flowprocessing, it raises the scalability concerns over a large network. And that is why fromthe integrated service architecture we move towards the differentiated servicearchitecture or DiffServ architecture.(Refer Slide Time: 21:46)So, this differentiated service architecture or the DiffServ architecture it is a coarsegrained, class based mechanism for traffic management. It has a packet classifier whichuses a six bit differentiated service coat point field or the DSCP field. So, this DSCP fieldwhich indicates that in which particular traffic class it belongs to. So, remember in caseof your integrated service architecture, the packet classifier or the classifier classes arenot fixed or predetermined, it can be user based or it can vary from user to user and thatis why we are using filterspec to inform the classifier that what different type of packetclasses can belong to a particular user.But in case of differentiated service architecture, we do not have that level of flexibility.We do not have this kind of user specific quality of services that, rather network wide wehave some fixed classes of services; and those fixed classes of services are determinedby this DSCP field. So, DSCP field is included inside the eight bit differentiated servicefield the DS field inside the IP header.So, in the IP header itself we will find out this DS field which contains the DSCP fieldand that DSCP field, determines the fixed traffic classes that the differentiated servicearchitecture can support. So, that is the difference a major difference between theintegrated service architecture and the differentiated service architecture and that is whythis kind of filterspec model it is not required in case of DiffServ architecture.Because your traffic classes are fixed and that is why your classifier has a fixedbehaviour, rather than a user specific behaviour. In case of your integrated servicearchitecture you had this user specific behaviour, and that is why you had therequirement of the filterspec to configure the traffic classifier. Now, DiffServ awarerouters implement something called a per hop behaviour. So, this per hop behaviourdefines the packet forwarding properties associated with that class of traffic.So, how the packets will be forwarded for DiffServ aware routers; now DiffServrecommends standardised set of traffic classes that I have mentioned it has standardizedand fixed set of traffic classes. Now, a group of routers that implement a commonadministratively defined DiffServ policies they are referred to as a DiffServ domain. So,we will implement differentiated service architecture over a DiffServ domain.(Refer Slide Time: 24:19)Now, this is the architecture of DiffServ.(Refer Slide Time: 24:21)You have multiple DiffServ domains DiffServ 1, domain DiffServ domain 1, DiffServdomain 2 and DiffServ domain 3, now whenever you are transferring a packet from asource to a destination it need to go through these three DiffServ domains. Now when itneeds to go through these three DiffServ domain, what we do that? We will look intothese intermediate routers or the edge routers. So, the idea of this differentiated servicearchitecture is something like this, that whenever you are entering a packet to oneDiffServ domain, what you try to do you try to make an estimation about what is the endto end quality of service requirement, and how much quality of service it has alreadyobtained.So, the bandwidth broker is an agent that has some knowledge of an organizationspriorities and policies, and allocates quality of service resources with respect to thosepolicies as per the definition of bandwidth broker given in RFC 2638. Now in order toachieve an end to end allocation of resources across separate domains, the bandwidthbroker managing a domain will have to communicate with its adjacent peers.(Refer Slide Time: 27:22)So, here in the earlier picture this bandwidth broker running at the DS 2 it need tocommunicate with the bandwidth broker DS 1 and bandwidth broker DS 3, to determinethat what level of quality of service can be given to a particular flow.That it may happen that this particular service domain or this particular local ISP, it doesnot have a pairing relationship with this tier 1 ISP. So, it does not have any agreementwith DS 2 in terms of this quality of service in that case, it will not be able to providethat end to end quality of service. So, now we are giving the flexibility at the ISP levelsthat individual ISPs can ensure the pairing with or quality of service associated pairingwith the neighbours and can take the decision accordingly. So, that is the task of thebandwidth broker, that sets up this kind of paring relationships.Now in a DS domain, the boundary nodes or the border nodes, they interconnects thecurrent DS domain to other DS domain or non capability DS domain, we call them as theboundary nodes or the edge nodes. The classification and conditioning process of aboundary node in a DS domain it is responsible for mapping packets to a forwardingclass.Supported in a network and ensuring that the traffic from a customer confirms to theirservice level agreement. So that are done by the classification and the conditioningprocess, which is running in a boundary node.So, here is the idea. So you have a classifier. From that classifier, it is coming to themarker, now the marker make an estimate say your packet is a from the source it is goingto one DS domain then another DS domain then the third DS domain and finally, thedestination. Now when the packet is reaching to say this boundary node say B1, it runsits meter this meter module to find out that if you have a end to end 30 millisecond ofdelay requirement, what is the amount of delay the packet has already achieved, say atthe packet has already achieved, 10 millisecond delay.So, this classification and marking, they are the per hop behaviours; so, we have fourdifferent type of per hop behaviours, the default per hop is to provide best effort serviceby expedited forwarding or EF PHB to which is to give priority to the low loss lowlatency traffic. Assured forwarding per hop behaviour it gives assuring to delivery underprescribed condition like you require some fixed amount of bandwidth for that particularapplication, then you go for assured forwarding which can be implemented with the helpof a custom queueing.The expedited forwarding on the other hand can be implemented inside the priorityqueuing. So, you can apply a priority queue for this, and the custom queue for this. Andyou can have certain class based selector per hop behaviour which maintains backwardcompatibility with the IP precedence field. So, something like you can use weighted fairqueuing to ensure the fairness.Now, here are certain links that you can look further to understand in details thedifferentiated service and the integrated service architecture. So, these two topics arelittle advanced topic which are not there in your reference book that we have mentionedearlier so, that is why you have given two links. So, you can browse through these twolinks to find out the details. So, this is all about the quality of service in the internet, andI hope that by this time you have a nice idea about what quality of service means andhow to apply quality of service over a internet.And you can go through this Cisco documentation that I have shared to understand moreabout this quality of service and how different types of quality of service are actuallyimplemented in such Cisco routers. Indeed the process is a bit complex and there aremultiple modules which work all together to support this. So, I try to give you a verybrief overview or a bird’s eye view of this entire quality of service to give you anunderstanding about this topic.So thank you all for attending this class.