← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1781915] Re: QoS (DSCP Mark IDs) – No correlation between the implemented functionality and design

 

Reviewed:  https://review.openstack.org/582974
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=b935f9d9a7c7bc872b49d66ce6ee586283ce69c0
Submitter: Zuul
Branch:    master

commit b935f9d9a7c7bc872b49d66ce6ee586283ce69c0
Author: Nate Johnston <nate.johnston@xxxxxxxxxx>
Date:   Mon Jul 16 11:26:20 2018 -0400

    Add list of all working DSCP marks
    
    There is no place in the documentation that explicitly lists the valid
    DSCP marks, except for an incomplete hint in the DSCP spec in
    neutron-specs.  This provides an explicit list.
    
    Change-Id: Ic350c88e59c33d98b54086707c9add05cf137dc2
    Closes-Bug: #1781915


** Changed in: neutron
       Status: In Progress => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1781915

Title:
  QoS (DSCP Mark IDs) – No correlation between the implemented
  functionality and design

Status in neutron:
  Fix Released

Bug description:
  ### General Description ###
  There is a “Proposed Change” regarding “QoS DSCP marking support” as it documented in:
  http://specs.openstack.org/openstack/neutron-specs/specs/newton/ml2-qos-with-dscp.html

  We propose an update to the QoS API and OVS driver to support DSCP
  marks. Valid DSCP mark values can be between 0 and 56, except 2-6, 42,
  44, and 50-54.

  
  ### Test scenario ###
  1) ssh to your Undercloud host
  2) switch to “stack” user with: “su – stack“
  3) Source overcloudrc file with: “source overcloudrc” 
  4) Upload the attached “Check_DSCP_Options.py” Python script (inside the attached *.zip) to your home directory (stack home) and run it with “python Check_DSCP_Options.py” command while monitoring “server.log” on your controller node.

  
  ### Expected Result ###
  Valid DSCP mark values can be between 0 and 56, except 2-6, 42, 44, and 50-54.

  ### Actual Result ###
  1) Failed DSCP mark IDs:
  [1, 2, 3, 4, 5, 6, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 42, 43, 44, 45, 47, 49, 50, 51, 52, 53, 54, 55]

  2) As you can see we do have supported and not DSCP Mark IDs, but it
  has different behavior than expected.

  3) You can find the controller “server.log” attached (inside attached
  *.zip) and you can see there messages like this one:

  2018-07-02 15:04:58.535 28 INFO neutron.api.v2.resource [req-
  74bb7060-b9b2-4542-bd8a-d805a8ff079c b4332e1592ab480f96fc87e5af797895
  f3f03848a45746c7bcbe95b625d7e1d8 - default default] update failed
  (client error): Invalid input for dscp_mark. Reason: 55 is not in
  valid_values.

  for all mentioned IDs:

  [ashtempl@ashtempl ~]$ grep -i 'is not in' server.log | cut -d ':' -f5
   1 is not in valid_values.
   2 is not in valid_values.
   3 is not in valid_values.
   4 is not in valid_values.
   5 is not in valid_values.
   6 is not in valid_values.
   7 is not in valid_values.
   9 is not in valid_values.
   11 is not in valid_values
   13 is not in valid_values.
   15 is not in valid_values.
   17 is not in valid_values.
   19 is not in valid_values.
   21 is not in valid_values.
   23 is not in valid_values.
   25 is not in valid_values.
   27 is not in valid_values.
   29 is not in valid_values.
   31 is not in valid_values.
   33 is not in valid_values.
   35 is not in valid_values.
   37 is not in valid_values.
   39 is not in valid_values.
   41 is not in valid_values.
   42 is not in valid_values.
   43 is not in valid_values.
   44 is not in valid_values.
   45 is not in valid_values.
   47 is not in valid_values.
   49 is not in valid_values.
   50 is not in valid_values.
   51 is not in valid_values.
   52 is not in valid_values.
   53 is not in valid_values.
   54 is not in valid_values.
   55 is not in valid_values.

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1781915/+subscriptions


References