Assigning priorities according to the protocols

The protocol priorities (assigned by system administrator) are loaded by DPI from the file /etc/dpi/protocols.dscp.

This file is created in two steps: first one creates a text file with the list of protocols and their priorities. Second, it is converted into an internal format by a special utility.

To apply the changes you need to the DPI configuration with the following command:

service fastdpi reload

The file format of protocols and priorities list:

Each line contains the protocol name, then space, then dscp value. For example:

dns 0x3F
skype drop
compressnet 010
ftp keep
http cs0
default keep

Full list of protocols. DSCP value is specified as decimal, hex or octal number or as a text abbreviation.

Keywords meaning:

drop - indicates that packets must not be transmitted further. They must be dropped.

keep - shows that priority must keep its current value (typically 0).

default - means "for all remaining protocols" and allows to simplify significantly making the configuration file.

To ensure that the drop action is applied only after TLS has been parsed and the SNI has been determined, you must add the parameter smartdrop = 1 to fastdpi.conf. This means that if drop is specified for a protocol, the action will be deferred until TLS has been parsed or a TLS parsing error occurs. This is a hot parameter; simply reload the configuration.

To convert into an internal format:

cat my_dscp.txt|lst2dscp protocols.dscp

[SSG v13+] in input files of the lst2dscp utility, it is now possible to add comments (#) and empty lines.

To move the settings into the work directory:

mv protocols.dscp /etc/dpi/protocols.dscp

Please use mv instruction! It is an atomic one. Do not use copy!