Wired Intelligent Edge

 View Only
last person joined: 10 hours ago 

Bring performance and reliability to your network with the HPE Aruba Networking Core, Aggregation, and Access layer switches. Discuss the latest features and functionality of your switching devices, and find ways to improve security across your network to bring together a mobile-first solution
Expand all | Collapse all

6300 QoS plicy and fragmentation

This thread has been viewed 8 times
  • 1.  6300 QoS plicy and fragmentation

    Posted 19 days ago

    I am trying to configure traffic marking and shaping on Aruba-CX 6300 and I have an  issue with fragmentation.  I have two sites connected over L2 transmission from a local provider. The provider network honors the ethernet CoS/PCP values of 3 and 5. I created a policy which applies DSCP, PCP anc CIR to different destiantion port ranges and I am sending UDP packets  from one site to another using. 

    iperf3 -c 10.100.1.80 -u -b 10M -p 7201 
    and

    iperf3 -c 10.100.1.80 -u -b 10M -p 6201

    By default iperf3 generates datagrams with size of 8948 which get fragmented on the network. The QoS policy behaves in strange way with those packets.  The results from the iperf server are shown below. After few seconds  the iperf server shows 0b/s bitrate.  

    Any thoughts or suggestions? Is there a way to fix/workaround it? The purpose of the QoS policy is to prioritize a video stream so large datagrams might be required and the streaming devices do not offer any advanced configuration so I do not have a way to control the datagram size. The MTU is 1500 all the way between both sites. 

    Policy configuration 
    class ip UDP6000
        10 match udp 10.170.14.100 any range 6000 6999 count
    class ip UDP7000
        10 match udp 10.170.14.100 any range 7000 7999 count
    policy QOS_TEST
        10 class ip UDP7000 action pcp 5 action dscp CS5 action cir kbps 1000 cbs 153600 exceed drop
        20 class ip UDP6000 action pcp 3 action dscp CS3 action cir kbps 5000 cbs 153600 exceed drop

    interface lag 51
     ...
     qos trust dscp
     lacp mode active
     apply policy QOS_TEST out per-interface

    The result at the destination

    Accepted connection from 10.170.14.100, port 64698
    [  5] local 10.100.1.80 port 7201 connected to 10.170.14.100 port 53723
    [ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
    [  5]   0.00-1.00   sec  1.09 MBytes  9.11 Mbits/sec  0.028 ms  0/139 (0%)
    [  5]   1.00-2.00   sec   888 KBytes  7.27 Mbits/sec  0.033 ms  34/145 (23%)
    [  5]   2.00-3.00   sec   656 KBytes  5.37 Mbits/sec  0.032 ms  71/153 (46%)
    [  5]   3.00-4.00   sec   592 KBytes  4.85 Mbits/sec  0.037 ms  64/138 (46%)
    [  5]   4.00-5.00   sec  0.00 Bytes  0.00 bits/sec  0.037 ms  0/0 (0%)
    [  5]   5.00-6.00   sec  0.00 Bytes  0.00 bits/sec  0.037 ms  0/0 (0%)
    [  5]   6.00-7.00   sec  0.00 Bytes  0.00 bits/sec  0.037 ms  0/0 (0%)
    [  5]   7.00-8.00   sec  0.00 Bytes  0.00 bits/sec  0.037 ms  0/0 (0%)
    [  5]   8.00-9.00   sec  0.00 Bytes  0.00 bits/sec  0.037 ms  0/0 (0%)
    [  5]   9.00-10.00  sec  0.00 Bytes  0.00 bits/sec  0.037 ms  0/0 (0%)
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
    [  5]   0.00-10.02  sec  3.17 MBytes  2.66 Mbits/sec  0.037 ms  169/575 (29%)  receiver

    when I set datagram length to 1400 it works  ok

    Accepted connection from 10.170.14.100, port 50230
    [  5] local 10.100.1.80 port 7201 connected to 10.170.14.100 port 57650
    [ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
    [  5]   0.00-1.00   sec   242 KBytes  1.98 Mbits/sec  0.026 ms  559/736 (76%)
    [  5]   1.00-2.00   sec   118 KBytes   963 Kbits/sec  0.064 ms  805/891 (90%)
    [  5]   2.00-3.00   sec   116 KBytes   952 Kbits/sec  0.027 ms  804/889 (90%)
    [  5]   3.00-4.00   sec   119 KBytes   974 Kbits/sec  0.054 ms  800/887 (90%)
    [  5]   4.00-5.00   sec   118 KBytes   963 Kbits/sec  0.037 ms  814/900 (90%)
    [  5]   5.00-6.00   sec   119 KBytes   974 Kbits/sec  0.030 ms  840/927 (91%)
    [  5]   6.00-7.00   sec   116 KBytes   952 Kbits/sec  0.028 ms  778/863 (90%)
    [  5]   7.00-8.00   sec   118 KBytes   963 Kbits/sec  0.048 ms  806/892 (90%)
    [  5]   8.00-9.00   sec   118 KBytes   963 Kbits/sec  0.056 ms  805/891 (90%)
    [  5]   9.00-10.00  sec   119 KBytes   975 Kbits/sec  0.061 ms  800/887 (90%)
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
    [  5]   0.00-10.03  sec  1.27 MBytes  1.06 Mbits/sec  0.061 ms  7811/8763 (89%)  receiver



    ------------------------------
    -- tommyd
    ------------------------------


  • 2.  RE: 6300 QoS plicy and fragmentation

    EMPLOYEE
    Posted 18 days ago

    I think you need to explicitly permit fragmentation in your "class ip UDP6000" with something like this

    match udp 10.170.14.100 any fragment



    ------------------------------
    If my post was useful accept solution and/or give kudos.
    Any opinions expressed here are solely my own and not necessarily that of HPE or Aruba.
    ------------------------------



  • 3.  RE: 6300 QoS plicy and fragmentation

    Posted 18 days ago

    The  "match ...fragment"  rule matches  any fragments not necessarily related to the initial packet, isn't it? 
    The fragments show in Wireshark as  Protocol: IPv4 not UDP and there is no destination port in header 
    I've modified the classifiers to: 

    class ip UDP6000
        10 match udp 10.170.14.100 10.100.1.80 range 6000 6999 count
    class ip UDP7000
        10 match udp 10.170.14.100 10.100.1.80 range 7000 7999 count
        20 match udp 10.170.14.100 10.100.1.80 fragment count

    and to have a comparison  also modified the policy to have the same CIR for both port ranges

    policy QOS_TEST
        10 class ip UDP7000 action pcp 5 action dscp CS5 action cir kbps 1000 cbs 153600 exceed drop
        20 class ip UDP6000 action pcp 3 action dscp CS3 action cir kbps 1000 cbs 153600 exceed drop

    and the result is even funnier: 

    The command at source : iperf3 -c 10.100.1.80 -u -b 10M -p 7201

    Result on the target:

    Accepted connection from 10.170.14.100, port 49447
    [  5] local 10.100.1.80 port 7201 connected to 10.170.14.100 port 57537
    [ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
    [  5]   0.00-1.00   sec   216 KBytes  1.77 Mbits/sec  0.023 ms  97/124 (78%)
    [  5]   1.00-2.00   sec  80.0 KBytes   655 Kbits/sec  0.017 ms  143/153 (93%)
    [  5]   2.00-3.00   sec  80.0 KBytes   655 Kbits/sec  0.023 ms  143/153 (93%)
    [  5]   3.00-4.00   sec  80.0 KBytes   655 Kbits/sec  0.016 ms  141/151 (93%)
    [  5]   4.00-5.00   sec  80.0 KBytes   655 Kbits/sec  0.012 ms  144/154 (94%)
    [  5]   5.00-6.00   sec  80.0 KBytes   655 Kbits/sec  0.017 ms  142/152 (93%)
    [  5]   6.00-7.00   sec  80.0 KBytes   655 Kbits/sec  0.013 ms  143/153 (93%)
    [  5]   7.00-8.00   sec  80.0 KBytes   655 Kbits/sec  0.018 ms  142/152 (93%)
    [  5]   8.00-9.00   sec  80.0 KBytes   655 Kbits/sec  0.026 ms  144/154 (94%)
    [  5]   9.00-10.00  sec  80.0 KBytes   655 Kbits/sec  0.053 ms  142/152 (93%)
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
    [  5]   0.00-10.04  sec   936 KBytes   764 Kbits/sec  0.053 ms  1381/1498 (92%)  receiver

    The command at source :: iperf3 -c 10.100.1.80 -u -b 10M -p 6201

    Result on the target

    Accepted connection from 10.170.14.100, port 51106
    [  5] local 10.100.1.80 port 6201 connected to 10.170.14.100 port 49348
    [ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
    [  5]   0.00-1.00   sec   264 KBytes  2.16 Mbits/sec  0.044 ms  92/125 (74%)
    [  5]   1.00-2.00   sec  96.0 KBytes   787 Kbits/sec  0.044 ms  141/153 (92%)
    [  5]   2.00-3.00   sec   104 KBytes   852 Kbits/sec  0.044 ms  140/153 (92%)
    [  5]   3.00-4.00   sec  96.0 KBytes   787 Kbits/sec  0.039 ms  139/151 (92%)
    [  5]   4.00-5.00   sec  88.0 KBytes   721 Kbits/sec  0.043 ms  143/154 (93%)
    [  5]   5.00-6.00   sec  80.0 KBytes   655 Kbits/sec  0.042 ms  142/152 (93%)
    [  5]   6.00-7.00   sec  88.0 KBytes   721 Kbits/sec  0.046 ms  141/152 (93%)
    [  5]   7.00-8.00   sec  72.0 KBytes   590 Kbits/sec  0.049 ms  113/122 (93%)
    [  5]   8.00-9.00   sec  0.00 Bytes  0.00 bits/sec  0.049 ms  0/0 (0%)  <------- !!!!
    [  5]   9.00-10.00  sec  0.00 Bytes  0.00 bits/sec  0.049 ms  0/0 (0%)  <------- !!!!
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
    [  5]   0.00-10.02  sec   888 KBytes   726 Kbits/sec  0.049 ms  1051/1162 (90%)  receiver

    Counters:

    # show  policy hitcounts QOS_TEST interface lag51
    Statistics for Policy QOS_TEST:

    Interface lag51 (out):
         Matched Packets  Configuration
    10 class ip UDP7000 action pcp 5 action dscp CS5 action cir kbps 1000 cbs 153600 exceed drop  [ 0 kbps conform ]
                    1513  10 match udp 10.170.14.100 10.100.1.80 range 7000 7999 count
                   15160  20 match udp 10.170.14.100 10.100.1.80 fragment count
    20 class ip UDP6000 action pcp 3 action dscp CS3 action cir kbps 1000 cbs 153600 exceed drop  [ 0 kbps conform ]
                    1521  10 match udp 10.170.14.100 10.100.1.80 range 6000 6999 count

    packet capture on the source looks like this





    ------------------------------
    -- tommyd
    ------------------------------



  • 4.  RE: 6300 QoS plicy and fragmentation

    EMPLOYEE
    Posted 18 days ago

    Fragment packet does not contain L4 information, that will just be L3 (src/dst IP).