login | register
Sat 22 of Nov, 2008 [03:15 UTC]

voip-info.org

History

DiffServ

Created by: jht2,Last modification on Wed 02 of May, 2007 [11:00 UTC] by TELES

DiffServ (Differentiated Services)


DiffServ is a QoS (Quality of Service) protocol for managing bandwidth allocation for Internet media connections (e.g. a VOIP voice connection).


With low bandwidth lines, such as ADSL, users may feel jittering. Try to allow full upload bandwidth to eMule and do a phone call in G.711 in the same time, and you will surely understand what I mean.

Regarding Cisco docs, and others as well, the correct DiffServ value is EF (Expedited Forwarding). The EF DiffServ also contains the ToS Low Delay bit, which is treated by many routers without any configuration. This is called PFIFO (Priority Fist In First Out, or FIFO with Priority).

The values you must know:

  • EF DiffServ decimal: 184
  • EF DiffServ hexadecimal: 0xb8
  • EF DiffServ binary: 10111000 (in red: DSCP field)
  • EF DSCP decimal: 46
  • EF DSCP hexadecimal: 0x2e
  • EF DSCP binary: 101110

Remark: The DSCP field is contained within the 6 first bits of the DiffServ byte.

Here is the part where we getting crazy. Each constructor requires a different DiffServ or DSCP value.

  • Alcatel OmniPCX Office - EF DiffServ binary: 10111000 DIFFSERV_PHB_EF
  • Asterisk 1.0.9 (ie sip.conf) - EF DiffServ hexadecimal: tos = 0xb8
  • Grandstream (requires FW 1.0.6.3 and older) - EF DSCP decimal: 46
  • ZyXEL - EF DiffServ decimal: 184
  • TELES - EF DiffServ decimal: 184

If any doubt, use a sniffer such as Wireshark (formerly Ethereal). If settings are correct, it will show the Differentiated Services Field in any of the RTP packets, whith a value of 0xb8 (DSCP 0x2e: Expedited Forwarding: ECN: 0x00).

See also:



Comments

Comments Filter
222

333DiffServ does not work in Asterisk

by udosw, Saturday 28 of October, 2006 [21:26:16 UTC]
> Asterisk 1.0.9 (ie sip.conf) - EF DiffServ hexadecimal: tos = 0xb8

From what I've tried this doesn't work (currently on Asterisk 1.2.13). From looking at the source of acl.c und chan_sip.c I would guess it didn't work in 1.0.9 either. Trying to set tos = 0xb8 you will get a "WARNING chan_sip.c: Unable to set TOS to 184" in *'s logfile.

Udo