[system]
# Log level:
# 0 - Errors only
# 1 - Warnings and errors
# 2 - Notices, warnings, errors
# 3 - Info, notices, warnings, errors
# 4 - Debugging 
#log_level=2


# Log file:
# Filename to write log messages to
# Defaults to /var/log/opentrafficshaper/opentrafficshaper.log
#log_file=/var/log/opentrafficshaper/opentrafficshaper.log


# PID file:
# Filename to write our PID to
# Defaults to /var/run/opentrafficshaper/opentrafficshaper.pid
#pid_file=/var/run/opentrafficshaper/opentrafficshaper.pid


# STATE file:
# This is the file used to store persistent information
#statefile=/var/lib/opentrafficshaper/configmanager.state

#
# Plugins
#
[plugins]
# Names of plugins to load, one per line
# NOTE: The ordering is very important

# Radius support
load=radius

# Statistics
# Must load before webserver if you want graphs
load=statistics

# Web interface
load=webserver
# Statistics live streaming snapin
# Must load after webserver
load=webserver/snapins/websockets/statistics

# Traffic shaper
load=tc
# Traffic shaper interface to statistics
# Must load after statistics
# Must load after tc
load=tcstats



#
# General shaping settings
#
[shaping]
# Group 1 is by default the "Default" group
group=1:Default


# Traffic classes
# ID's and short description of traffic classes to Setup. Traffic is 
# priortized as the lowest number getting the highest priority
#
# The second parameter is the name of the class
#
class=1:High Priority
class=2:Platinum
class=3:Gold
class=4:Silver
class=5:Bronze
class=6:Best Effort


# Default pool
# For traffic not classified, we can send it to a specific traffic class
#
# Defaults to "no"
#default_pool=no


# Interface group
# This is a friendly name for a group of interfaces used for TX & RX
# Its in the format of     txiface,rxiface:Friendly name
# The txiface is always the interface the client traffic is transmitted on (downloaded)
# The rxiface is always the interface the client traffic is received on (uploaded)
interface_group=eth1,eth0:LAN-side


#
# Interface setup
#

[shaping.interface eth0]
# This is the friendly name used when displaying this interface
name=WAN interface
# The rate is specified in Kbps
rate=100000

# Class format is:  ClassID:CIR/Limit
# If Limit is not specified it defaults to CIR
# if the class definition is omitted, defaults to rate of interface
# The CIR and Limit are specified in Kbps or percentage
class_rate=1:10000
class_rate=2:5%/5%
class_rate=3:5%
class_rate=4:5000/10000
class_rate=5:5%
class_rate=6:5%

[shaping.interface eth1]
name=LAN Interface
rate=100000

class_rate=1:70000
class_rate=2:5%/5%
class_rate=3:5%
class_rate=4:3000/5000
class_rate=5:5%


#
# Radius plugin
#
[plugin.radius]
dictionary_path=/etc/opentrafficshaper
# Dictionaries we need to load for radius functionality
dictionary=dicts/dictionary
dictionary=dicts/dictionary.allworldit

# Expire traffic control entries from radius in this period of time if not updated
# Default: 86400     (1 day)
#expiry_period=86400


#
# TC Plugin
#
[plugin.tc]
# Protocol to filter on, 99% of the time it will be "ip"
# If however you're filtering VLAN Q-in-Q traffic, set this to 0x88a8
#protocol=ip

# IP Header offset
# If the kernel offsets your IP packet with octets you need to specify the value here
# this most commonly happens when you shaping vlan traffic (as per above one would maybe
# set this value to 4)
#iphdr_offset=0


#
# Statistics Plugin
#
[plugin.statistics]
#db_dsn=dbi:SQLite:dbname=stats.sqlite3
#db_username=
#db_password=

