Add New Page: You are not allowed to add pages Select section/namespace. New page title.

Table of Contents


Many users who are delighted to share their internet connection over Commotion worry that their own speed will suffer once others start to use their bandwidth. This article will address traffic control on a node, and the interface for prioritizing your traffic, or limiting the traffic others can use.

When data travels over the internet it is broken into a series of smaller packets for easy handling and monitoring. Traditionally a router sends and receives packets on a first in, first out method. This means that a packet “A” (piece of data) received before another packet “B” will be sent out towards its destination before packet B is sent out towards its destination. This method works very well when all the traffic is of the same type.

Because real time applications such as games, voice over IP, Chatting, and computer Consoles have become more common another method arose to address the new varieties of traffic. Real-time and best-effort traffic compose the two types of traffic on the internet. Real-time traffic wants to arrive with as steady and little delay as possible. Best-effort does not mind del, but wants to utilize as much bandwidth as possible.

In order for the owner of a node (you) to ensure that the amount of service provided to each you and your users is at least the minimum bandwidth of the amount they request and the amount you assign to each group we will be implementing “hierarchical link-sharing”. Hierarchical link-sharing allows the owner of a node to assign one Access Point that has a guaranteed percentage of the bandwidth, and a secondary Access Point that uses whatever bandwidth is left over.


Any implementation does not solve all our problems. We can implement QOS on the node, but we will need two interfaces to do that. That can also cause lag on the node as it processes the data that is sent through the node. UDP traffic especially will still cause congestion on the input. This will allow us to use simple methods of Hierarchical traffic control that gives one interface a minimum percentage of guaranteed bandwidth that it will allow the other interface to borrow from when not in use.

Another option is to implement an openWRT capable switch before the router to run the QOS on. This will reduce some of the router level congestion, and will possibly allow the physical separation or software fire-walling of the networks from each other. Is there a cheap router that we can implement to do the QOS traffic throttling and firewall/network separation?

We can also implement a dumb switch, but we will need to calculate the Layer 2 Traffic for each specific user accurately in order to place the QOS limiting traffic from the router. This is because traffic will have to throttled using an absolute metric. The router will not be able to identify the amount of traffic passing through the switch, and therefore cannot use a percentage based separation of classes.