### Introduction

Asterisk supports different QoS settings at the application level for various protocols on both signaling and media. The 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.

Asterisk running on Linux can also set 802.1p CoS marks in VLAN packets for the VoIP protocols it uses. This is useful when working in a 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]

The table below shows all VoIP channel drivers and other Asterisk modules that support QoS settings for network traffic. It also shows the type(s) of traffic for which each module can support setting QoS settings.

Table 2.1: Channel Driver QoS Settings

| Signaling | Audio | Video | Text
chan_sip | + | + | + | +
chan_skinny | + | + | + |
chan_mgcp | + | + |  |
chan_unistm | + | + |  |
chan_h323 |  | + |  |
chan_iax2 | +

Table 2.2: Other ToS Settings

| Signaling | Audio | Video | Text
dundi.conf | + (tos setting)
iaxprov.conf | + (tos setting)