Git Product home page Git Product logo

qos's Introduction

README

  1. Contents

The following are the source code that implements the qos element in Click:

  1. elements/aqm/aaqm.cc - The source code for the element AAQM that implements QoS with buffer management.
  2. elements/aqm/aaqm.hh - Header file for aaqm.cc
  3. stats.sh - A shell script to monitor packet statistics from AAQM.
  4. aaqm.click - A click configuration that uses the element AAQM.

This package was tested on Ubuntu 14.04 LTS version. 2. How to compile

To add a new element click does not require to change it's existing make file.

Installing click requires gcc and kernel headers. To install them: #sudo apt-get install build-essential linux-headers-$(uname -r)

Navigate to the root directory "click-master"

Configure click to compile as a kernel module.

#./configure --enable-linuxmodule.

Generate element list

#make elemlist

Compile and Install

#make install

(Note: if any of the above commands fail with a 'Permission denied' message, run them with sudo privileges. For ex: sudo make install. )

  1. How to run

Use the click configuration file aaqm.click to test AAQM element.

To load the click module. #click-install aaqm.click

To unload the click module #click-uninstall

(Note: Since click-install loads a kernel module to OS, the user might appopriate sudo permission for this operation)

  1. Getting packet statistics

AAQM has handlers that specifies the number of packets dropped and current queue size for each queue.

Ex: To get the packet drops for Queue1 Using the aaqm.click #cat /click/aaqm/drops1

The stats.sh script can be used to monitor the packet statistics continuously. (Note: the stats.sh script is written specifically for the click configuration aaqm.click)

Ex: #sh stats.sh Packet statistics

queue input count drop output

queue1 0 0 0 0

queue2 0 0 0 0

queue3 0 0 0 0

queue4 0 0 0 0

queue5 0 0 0 0

Output rate: 0 pkts/sec

Output rate: 0 bits/sec

The stats are also logged into a file called log.

qos's People

Contributors

ashithav avatar

Watchers

 avatar

Forkers

shwe-123

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.