Easy QoS 101 – QoS protocols

QoS(Qaulity of Service) protocols were developed since data network demands efficiency of data delivery. Well known QoS protocols are RSVP, IntServ, DiffServ, MPLS, SBM and so on. In my opinion, just read thru and understand what those are. That would be enough unless you are crazy on QoS thoeory. There are a lot of information when you googling out there.
In practical world, most of time we will use DiffServ protocols and good to know about MPLS CoS as well



The Resource ReSerVation Protocol (RSVP), described inRFC 2205, is a Transport layerprotocol designed to reserve resources across a network for an integrated servicesInternet. “RSVP does not transport application data but is rather an Internet control protocol, like ICMP, IGMP, or routing protocols” – RFC 2205. RSVP provides receiver-initiated setup of resource reservations for multicast or unicast data flows with scaling and robustness.

RSVP can be used by either hosts or routers to request or deliver specific levels of quality of service (QoS) for application data streams or flows. RSVP defines how applications place reservations and how they can relinquish the reserved resources once the need for them has ended. RSVP operation will generally result in resources being reserved in each node along a path.


2. IntServ



The idea of IntServ is that every router in the system implements IntServ, and every application that requires some kind of guarantees has to make an individual reservation. Flow Specs describe what the reservation is for, while RSVP is the underlying mechanism to signal it across the network. IntServ or integrated services is an architecture that specifies the elements to guarantee quality of service (QoS) on networks. IntServ can for example be used to allow video and sound to reach the receiver without interruption.





3. DiffServ

Differentiated Services or DiffServ is a computer networking architecture that specifies a simple, scalable and coarse-grained mechanism for classifying, managing network traffic and providing Quality of Service (QoS) guarantees on modern IP networks. DiffServ can, for example, be used to provide low-latency, guaranteed service (GS) to critical network traffic such as voice or video while providing simple best-effort traffic guarantees to non-critical services such as web traffic or file transfers.

DiffServ has largely supplanted other Layer 3 QoS mechanisms (such as IntServ) as the primary protocol routers use to provide different levels of service.

(1) How DiffServ works

Easy QoS 101 - QoS protocols pic 21


– Packet will be classified into defined classes by ACL and class-map


– You can apply different weight or policy on each class by using policy-map
– IP precedence and DSCP were used on Layer 3 marking stratigy and 802.1p/Q, FR DE bit, MPLS EXP were used on Layer 2.

[1] IP precedence

– 3bits are used to make 8 different classes

Easy QoS 101 - QoS protocols pic 2-2
IP Type of Service(RFC 791)





precedence 0
precedence 1
precedence 2
precedence 3
precedence 4
precedence 5
precedence 6
precedence 7
Flash Override



[2] DSCP

– 6bits are used to make 21 different classes
– If value of drop probability is 01, probability is low.
– If value of drop probability is 10, probability is normal.
– If value of drop probability is 11, probability is high.

Easy QoS 101 - QoS protocols pic 2-3
DSCP(Differentiated Services CodePrint)


Drop Probability

Class 1

Class 2

Class 3

Class 4


AF 11















– There is two methods that are shaping which is controlling traffic using queuing technique and policying which is restirctly traffic control by dropping packet.


– FIFO, WFQ, CQ, PQ, CBWFQ, LLQ and etc.
– See article about “Easy QoS 101 – Queuing techniques”



With the convergence of voice, video and data applications, business networks face increasing traffic demands. MPLS enablesclass of service (CoS) tagging and prioritization of network traffic, so administrators may specify which applications should move across the network ahead of others. This function makes an MPLS network especially important to firms that need to ensure the performance of low-latency applications such as VoIP and their other business-critical functions. MPLS carriers differ on the number of classes of service they offer and in how these CoS tiers are priced


5. SBM

SBM is stand for Subnet Bandwidth Management(Manager) which works like the RSVP protocol. It a top-to-bottom QoS approach and applies to data link layer. All traffic must pass at least one of switch or router that was enabled. SBM is described in RFC 2814 (SBM-Subnet Bandwidth Manager: A Protocol for RSVP-Based Admission Control over IEEE 802-Style Networks, May 2000).


Leave a comment

NBAR software down for Cisco router

Here is the link to get NBAR(Network Based Application Recognition) PDLM(Packet Description Language Modules) for CIsco gears


Leave a comment

What is implicit withdraw and explicit withdraw?

What is implicit withdraw and explicit withdraw?



  Route map for outgoing advertisements is out-cust-full
                                                  Sent            Rcvd
  Prefix activity:                          —-               —-
    Prefixes Current:             267441         10 (Consumes 416 bytes)
    Prefixes Total:             36446984         12
    Implicit Withdraw:     31214720          6
    Explicit Withdraw:       5210431          2
    Used as bestpath:             n/a          7
    Used as multipath:            n/a          0   


Implicit withdraw: Number of times that a prefix has been withdrawn and readvertised, this number is smaller than Prefix Total(sent in this case). 

Explicit withdraw: Number of times that prefix is withdrawn because it is no longer feasible.

Leave a comment

BGP Commands for Cisco

1. How do I remove a neighbor?

router(config)# router bgp
router(config-router)# no neighbor

2. How do I shutdown a session?

router(config)# router bgp
router(config-router)# neighbor shutdown


router(config)# router bgp
router(config-router)# no neighbor shutdown

3. How do I clear or restart a session?

router# clear ip bgp


4. How do I clear BGP session without hard reset?

router# clear ip bgp soft out

5. How do I clear all BGP sessions?

router# show ip bgp neighbor *
router# show ip bgp cidr-only


7. How do I display routes that belong to the specified communities?

router# show ip bgp community community-number [exact]


8. How do I display routes that are permitted by community list?

router# show ip bgp community-list community-number [exact]


9. How do I display routes that are matched by the specified autonomouse system path access list?

router# show ip bgp filter-list access-list-number


10. How do I display the routes with inconsistent originating autonomous systems?


router# show ip bgp inconsistent-as


11. How do I display the routes that match the specified regular expression entered on the command line?

router# show ip bgp regexp regular-expression


12. How do I display the contents of the BGP routing table?

router# show ip bgp [network][network-mask][subnets]


13. How do I display routes learned from a paticular BGP neighbor?

show ip bgp neighbor [address][received-routes | routes | advertised


-routes | paths regular-expression | dampened-routes]
router# show ip bgp paths


15. How do I display information about BGP peer groups?

router# show ip bgp peer-group [tag][summary]


16. How do I display the status of all BGP connections?

router# show ip bgp summary


17. How do I look at a BGP session to see if it is up?

router# show ip bgp neighbor


18. How do I see what routes are being seen?

router# show ip bgp neighbor routes


19. How do I see what routes are being advertised?

router# show ip bgp neighbor advertised-routes


Leave a comment

How to Applying BGP Community string with sample configuration

1. Get the latest BGP community string from your ISP/upstream provider or check CiscoNET.com web site.


2. Pick the best BGP community string for your traffic shaping plan (mainly incoming traffic). Most of ISPs are providing community string with local preference and AS prepending option. Cannot tell which one is better than the other. It will depend on your global traffic shaping plan.

3. Follow the below commands ( Cisco only )


The below Sample configuration will tag the route with [ISP AS]:120 or [ISP AS]:3 and will not tag any other routes.

router#config t
router(config)#ip bgp-community new-format
router(config)#access-list 10 permit
router(config)#access-list 10 deny any

router(config)#route-map [to-ISP] permit 10
router(config-route-map)#match ip address 10
router(config-route-map)#set community [ISP AS]:120 <—- using Local Preference


router(config-route-map)#set community [ISP AS]:3 <——- using AS prepending
router(config-route-map)#route-map [to-ISP] permit 20

router(config)#router bgp [xxxx] <——————————- xxxx = customer’s ASN
router(config-router)#neighbor x.x.x.x send-community
router(config-router)#neighbor x.x.x.x route-map [to-ISP] out
router#copy running-config startup-config


4. And then, go to www.CiscoNET.com and pick one of route server on the map to see your announcement. If you are using AS prepending option, you will see your AS prepends on route servers. Sometime you might not see your route with particular ISP path.

In most of case it might not be any routing problem, just the route path was dropped at somewhere by BGP best path selection scheme. Try Oregon route server, if you can see your route. The Oregon route server is providing many possible and available paths between BGP speakers and neighbors.

If you don’t see your route on there? check other route servers and also check your
BGP configuration. You might need to contact your upstream provider to check what they are learning BGP route from you.

Leave a comment

What backdoor command does ?

Backdoor only makes the IGP learned route the preferred route. To specify a backdoor route to a BGP border router that will provide better information about the network, use the network backdoor router configuration command. To remove an address from the list, use the no form of this command.
By definition, eBGP updates have a distance of 20 that is lower than the IGP distances. Default distance is 120 for RIP, 100 for IGRP, 90 for EIGRP, and 110 for OSPF. By default, BGP has the following distances, but that could be changed by the distance command

It will change the distance of an eBGP route to 200



Leave a comment

What Route Reflectors does ?

Within any BGP autonomous system, every IBGP speaker must have a fully meshed peering arrangement with every other iBGP speaker. This is due to the fact that a BGP speaker will not advertise a route learned via another iBGP speaker to a third iBGP speaker. The use of route reflectors is one way to maintain connectivity throughout the AS without having a fully meshed peering arrangement. By relaxing this restriction a bit and by providing additional control, we can allow a router to advertise (reflect) iBGP learned routes to other iBGP speakers.
When using route reflectors, the clients need only peer to the route reflector.


Leave a comment