### Introduction

Asterisk support different QoS settings on application level on various protocol on any of signaling and media. Type of Service (TOS) byte can be set on outgoing IP packets for various protocols. The TOS byte is used by the network to provide some level of Quality of Service (QoS) even if the network is congested with other traffic.

Also asterisk running on Linux can set 802.1p CoS marks in VLAN packets for all used VoIP protocols. It is useful when you are working in switched environment. In fact asterisk only set priority for Linux socket. For mapping this priority and VLAN CoS mark you need to use this command:

    vconfig set_egress_map [vlan-device] [skb-priority] [vlan-qos]

In table behind shown all voice channels and other modules of asterisk, that support QoS settings for network traffic and type of traffic which can have QoS settings.

     Channel Drivers
    +==============+===========+=====+=====+=====+
    |              | Signaling |Audio|Video| Text|
    +==============+===========+=====+=====+=====+
    |chan_sip      |     +     |  +  |  +  |  +  |
    |--------------+-----------+-----+-----+-----+
    |chan_skinny   |     +     |  +  |  +  |     |
    |--------------+-----------+-----+-----+-----+
    |chan_mgcp     |     +     |  +  |     |     |
    |--------------+-----------+-----+-----+-----+
    |chan_unistim  |     +     |  +  |     |     |
    |--------------+-----------+-----+-----+-----+
    |chan_h323     |           |  +  |     |     |
    |--------------+-----------+-----+-----+-----+
    |chan_iax2     |            +                |
    +==============+=============================+
     Other
    +==============+=============================+
    | dundi.conf   |     + (tos setting)         |
    |--------------+-----------------------------+
    | iaxprov.conf |     + (tos setting)         |
    +==============+=============================+