|
Previous
|
Content |
Next
|
|
|
3.0. Differentiated
Service on Linux distribution |
|
 |
|
| When I started to study the Differentiated
Service on Linux distribution (included in the iproute2 distribution), it
was really funny because, trying to understand what they were talking about,
I searched a lot looking for better information. Finally, after attempting
several times, I was tired and surprised that, perhaps with some words more
or some words less, every documentation available finished with this advice:
I (we) suggest you to have a look to the Differentiated Service on Linux
distribution's examples where more information can be found..., etc., etc. |
| Of course, having such a look doesn't help to
much either because too many questions remain unanswered. And, at the
present time, some of them stay. That's the problem with Linux. It would be
great if people who make Linux, could make also a little effort to improve
the available documentation. One lose too much time trying to figure out
what they were trying to do and how. Precious time that could be better
utilized learning new paradigms. Well, nothing can be perfect. But, no one
can prohibit me to say that this is exactly, one of the reasons why Linux
use doesn't propagate faster. Too many people desert after breaking their
brains trying to understand Linux. Finally, they joint the anti-Linux group
telling that the system is for gurus and just limited for experimental
implementations. On these circumstances, some known commercial companies
take advantages to sell, very expensive indeed, some other operating systems
that are technogically several years behind Linux. Really, a pity. |
| |
| Well, we are not here to moan, but to learn
Linux. In this section we are going to study each one of the examples
included in the Differentiated Service on Linux distribution, with one
exception, that the afcbq example will be replaced to use the HTB
queuing discipline instead of the CBQ queuing discipline. |
| |
| The examples in the distribution are: |
| |
- Edge1
- Edge2
- Edge31-ca-u32
- Edge32-ca-u32
- Edge31-cb-chains (using iptables)
- Edge32-cb-chains (using iptables)
- Edge32-cb-u32
- afcbq (using htb)
- ef-prio
- efcbq (using htb)
|
| As you can figure out, Edge* examples are for implementing edge
routers. afcbq implements differentiated service Assure Forwarding
PHB using CBQ, DSMARK and GRED. This example will
be presented but replacing CBQ for the new HTB queuing
discipline. ef-prio implements differentiated service Expedited
Forwarding PHB using PRIO, TBF, DSMARK and RED. efcbq
implements differentiated service Expedited Forwarding PHB using
CBQ, DSMARK and RED. Again, this example will be presented
but replacing CBQ for HTB. |
|
|
|
|
|
Edge??-??-u32 examples use the u32 classifier to classify
packets, but Edge-??-??-chains examples use ipchains as the
classifying tool. However, we are not going to use ipchains but
instead iptables. iptables replaced ipchains some time
ago and it is now the tool used to manage the Linux firewall. Another thing
is that the examples were originally presented using sh (bash) or
perl scripts. To help the explanation we will expand these scripts to
get the final commands executed by the shell executor. |
|
Well, let's start with Edge-1, kind lectors. |
|
|
|
|
|
Previous
|
Content |
Next
|