[asterisk-dev] Proposal for PJSIP TOS/COS and DSCP

George Joseph george.joseph at fairview5.com
Mon Feb 3 11:24:10 CST 2014

As I was playing around with TOS/COS in pjsip last week I noticed some
inconsistencies that I'd like to correct...

There's a 'tos' parameter on the transport object but not only does it
actually set DSCP instead of TOS, it sets it in pjproject only and
therefore for signalling only.

There are tos_audio and tos_video parameters on endpoint which do set tos
for the rtp engine but they don't accept hex or symbolic values as chan_sip

So, given that DSCP has been around for a while and that's what the
symbolic values represent anyway, Id like to do the following...

In transport, rename tos and cos to dscp_sip and cos_sip respectively and
for dscp_sip,  create a new function ast_str2dscp() as a companion to the
existing ast_str2tos that resolves the symbolics.  The new function is
needed because while the existing ast_str2tos function takes in a string
representation of DSCP, it left-shifts it 2 bits to go into the
rtp_engine's tos field.  pjproject only accepts dscp.

In endpoint, rename tos_audio and tos_video to dscp_audio and dscp_video
respectively, then use ast_str2tos to resolve the symbolics.

I could also add the new parameters and leave the old ones there for
backwards compatibility for a while if that makes sense.

What do you think?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20140203/6b17c7b3/attachment.html>

More information about the asterisk-dev mailing list