Changes between Version 4 and Version 5 of Ticket #950


Ignore:
Timestamp:
Aug 18, 2009 1:36:57 PM (13 years ago)
Author:
bennylp
Comment:

Changed API names and fix the mapping table

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #950 – Description

    v4 v5  
    1 '''Scope''' 
     1'''QoS Technologies''' 
    22 QoS settings are available for both Layer 2 and Layer 3 of TCP/IP protocols: 
    33 
     
    2323 '''Linux''' 
    2424 
    25  Ethernet 802.1p tagging is available via SO_PRIORITY option. DSCP is available via IP TOS option. Both are settable via {{{setsockopt()}}}. WMM is not known to be available. 
     25 DSCP is available via IP TOS option.  
     26 
     27 Ethernet 802.1p tagging is done by setting {{{setsockopt(SO_PRIORITY)}}} option of the socket, then with the {{{set_egress_map option}}} of the {{{vconfig utility}}} to convert this to set vlan-qos field of the packet.  
     28 
     29 WMM is not known to be available. 
    2630 
    2731 '''Windows''' 
     
    4953 Based on the above, the following API is proposed. 
    5054 
    51  Declare the following "standard" traffic classes. 
     55 Declare the following "standard" traffic types. 
    5256 
    5357 {{{ 
    54  typedef enum pj_sock_dscp_class 
     58 typedef enum pj_qos_type 
    5559 { 
    56     PJ_SOCK_DSCP_BEST_EFFORT, 
    57     PJ_SOCK_DSCP_BACKGROUND, 
    58     PJ_SOCK_DSCP_VIDEO, 
    59     PJ_SOCK_DSCP_AUDIO 
    60  } pj_sock_dscp_class; 
     60    PJ_QOS_TYPE_BEST_EFFORT, 
     61    PJ_QOS_TYPE_BACKGROUND, 
     62    PJ_QOS_TYPE_VIDEO, 
     63    PJ_QOS_TYPE_VOICE, 
     64    PJ_QOS_TYPE_CONTROL 
     65 } pj_qos_type; 
    6166 }}} 
    6267 
    63  The traffic classes above will determine how the Layer 2 and 3 QoS settings will be used. As general guidelines, the mapping between the classes above to the corresponding Layer 2 and 3 settings are as follows: 
     68 The traffic classes above will determine how the Layer 2 and 3 QoS settings will be used. The mapping between the classes above to the corresponding Layer 2 and 3 settings are as follows: 
    6469 
    65  || PJLIB Traffic Class    || IP DSCP || WMM* || 802.1p Priority || 
    66  || BEST_EFFORT || 0x00    || BE   ||        || 
    67  || BACKGROUND  || 0x08    || BK   ||        || 
    68  || VIDEO       || 0x28    || VI   ||        || 
    69  || AUDIO       || 0x38    || VO   ||        || 
     70 || PJLIB Traffic Type    || IP DSCP || WMM* || 802.1p  || 
     71 || BEST_EFFORT || 0x00    || BE   ||   0    || 
     72 || BACKGROUND  || 0x08    || BK   ||   2    || 
     73 || VIDEO       || 0x28    || VI   ||   5    || 
     74 || VOICE       || 0x30    || VO   ||   6    || 
     75 || CONTROL     || 0x38    || VO   ||   7    || 
    7076 
    7177 *: WMM acronyms: 
     
    7884 
    7985 {{{ 
    80  PJ_DECL(pj_status_t) pj_sock_set_dscp_class(pj_sock_t sock, 
    81                                              pj_sock_dscp_class c); 
     86 PJ_DECL(pj_status_t) pj_sock_set_qos_type(pj_sock_t sock, 
     87                                           pj_qos_type val); 
    8288 }}} 
    8389 
    84  The API will set the traffic type according to the DSCP class, for '''both''' Layer 2 and Layer 3 QoS setting, where it's available. If any of the layer QoS is not settable, the API will silently ignore it. If '''both''' layers are not setable, the API will return error. 
     90 The API will set the traffic type according to the DSCP class, for '''both''' Layer 2 and Layer 3 QoS settings, where it's available. If any of the layer QoS setting is not settable, the API will silently ignore it. If '''both''' layers are not setable, the API will return error. 
    8591 
    8692'''Limitations''' 
     
    9298'''References''' 
    9399 
    94  1. Good intro for QoS (especially on Windows): http://technet.microsoft.com/en-gb/magazine/2007.02.cableguy.aspx 
    95  2. WMM on Windows Mobile: http://msdn.microsoft.com/en-us/library/aa916767.aspx 
    96  3. WMM and DSCP on Symbian: http://wiki.forum.nokia.com/index.php/VoIP_developer_guidelines_for_S60 
    97  
     100 1. [http://technet.microsoft.com/en-gb/magazine/2007.02.cableguy.aspx QoS Support in Windows] - good intro for QoS on Windows and in general 
     101 2. [http://msdn.microsoft.com/en-us/library/aa916767.aspx WMM (Wi-Fi Multimedia)] (Windows Mobile 6) 
     102 3. [http://wiki.forum.nokia.com/index.php/VoIP_developer_guidelines_for_S60 VoIP developer guidelines for S60] 
     103 4. [http://blogs.msdn.com/wndp/archive/2006/06/30/WiFi_QoS_Support_in_Windows_Vista_part_2.aspx WiFi QoS Support in Windows Vista: WMM part 2]