X-Git-Url: http://git.onelab.eu/?p=iproute2.git;a=blobdiff_plain;f=examples%2Fdiffserv%2FREADME;fp=examples%2Fdiffserv%2FREADME;h=0000000000000000000000000000000000000000;hp=ec91d632e0c95ec5283b43318d7db86db6ab07e6;hb=3331a68859fd71047bb1f309048960b48eab2d83;hpb=2bd4a72f2100be7ad7d9518cb1d49bb2a5b71994 diff --git a/examples/diffserv/README b/examples/diffserv/README deleted file mode 100644 index ec91d63..0000000 --- a/examples/diffserv/README +++ /dev/null @@ -1,98 +0,0 @@ - -Note all these are mere examples which can be customized to your needs - -AFCBQ ------ -AF PHB built using CBQ, DSMARK,GRED (default in GRIO mode) ,RED for BE -and the tcindex classifier with some algorithmic mapping - -EFCBQ ------ -EF PHB built using CBQ (for rate control and prioritization), -DSMARK( to remark DSCPs), tcindex classifier and RED for the BE -traffic. - -EFPRIO ------- -EF PHB using the PRIO scheduler, Token Bucket to rate control EF, -tcindex classifier, DSMARK to remark, and RED for the BE traffic - -EDGE scripts -============== - -CB-3(1|2)-(u32/chains) -====================== - - -The major differences are that the classifier is u32 on -u32 extension -and IPchains on the chains extension. CB stands for color Blind -and 31 is for the mode where only a CIR and CBS are defined whereas -32 stands for a mode where a CIR/CBS + PIR/EBS are defined. - -Color Blind (CB) -==========-----= -We look at one special subnet that we are interested in for simplicty -reasons to demonstrate the capability. We send the packets from that -subnet to AF4*, BE or end up dropping depending on the metering results. - - -The algorithm overview is as follows: - -*classify: - -**case: subnet X ----------------- - if !exceed meter1 tag as AF41 - else - if !exceed meter2 tag as AF42 - else - if !exceed meter 3 tag as AF43 - else - drop - -default case: Any other subnet -------------------------------- - if !exceed meter 5 tag as AF43 - else - drop - - -One Egress side change the DSCPs of the packets to reflect AF4* and BE -based on the tags from the ingress. - -------------------------------------------------------------- - -Color Aware -=========== - -Define some meters with + policing and give them IDs eg - -meter1=police index 1 rate $CIR1 burst $CBS1 -meter2=police index 2 rate $CIR2 burst $CBS2 etc - -General overview: -classify based on the DSCPs and use the policer ids to decide tagging - - -*classify on ingress: - -switch (dscp) { - case AF41: /* tos&0xfc == 0x88 */ - if (!exceed meter1) break; - case AF42: /* tos&0xfc == 0x90 */ - if (!exceed meter2) { - tag as AF42; - break; - } - case AF43: /* tos&0xfc == 0x98 */ - if (!exceed meter3) { - tag as AF43; - break; - } else - drop; - default: - if (!exceed meter4) tag as BE; - else drop; -} - -On the Egress side mark the proper AF tags