QOS bandwidth remaining percent

Problemy związane z routingiem

Moderatorzy: mikrobi, aron, garfield, gangrena, Seba

Wiadomość
Autor
martino76
CCIE
CCIE
Posty: 852
Rejestracja: 17 gru 2010, 15:23
Lokalizacja: Barczewo

QOS bandwidth remaining percent

#1

#1 Post autor: martino76 » 13 sty 2013, 12:27

Witam,

Szybkie pytanie odnosnie bandwidth remaining percent command. Ponizej moj konfig na interfejsie.

Kod: Zaznacz cały

Rack1R4#show int se0/0/1
Serial0/0/1 is up, line protocol is up 
  Hardware is GT96K Serial
  Internet address is 155.1.45.4/24
  MTU 1500 bytes, BW 1544 Kbit/sec, DLY 20000 usec, 
     reliability 255/255, txload 1/255, rxload 1/255
  Encapsulation HDLC, loopback not set
  Keepalive set (10 sec)
  Last input 00:00:08, output 00:00:02, output hang never
  Last clearing of "show interface" counters never
  Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 10
  Queueing strategy: Class-based queueing
  Output queue: 0/512/0 (size/max total/drops)
  5 minute input rate 0 bits/sec, 0 packets/sec
  5 minute output rate 1000 bits/sec, 0 packets/sec
     24587 packets input, 1488918 bytes, 0 no buffer
     Received 1254 broadcasts, 0 runts, 0 giants, 0 throttles
     0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort
     14476 packets output, 7270010 bytes, 0 underruns
     0 output errors, 0 collisions, 7 interface resets
     0 unknown protocol drops
     0 output buffer failures, 0 output buffers swapped out
     1 carrier transitions
     DCD=up  DSR=up  DTR=up  RTS=up  CTS=up
          
Rack1R4#sh run int se0/0/1
Building configuration...

Current configuration : 146 bytes
!
interface Serial0/0/1
 ip address 155.1.45.4 255.255.255.0
 ip rip advertise 10
 service-policy output R4_TO_R5_POLICY
 hold-queue 512 out
end

Rack1R4#sh run | sec policy|class
class-map match-all C_HTTP
 match access-group name HTTP
class-map match-all C_ICMP
 match protocol icmp
 match packet length min 1001 
class-map match-all C_VOICE
 match ip rtp 16384 16383
 match packet length max 60
 match packet length min 60 max 60
class-map match-all PRECEDENCE_0
 match ip precedence 0 
 match input-interface FastEthernet0/1
policy-map R4_TO_R5_POLICY
 class C_HTTP
  set ip precedence 2
    bandwidth remaining percent 33
 class C_ICMP
   drop
 class C_VOICE
  set dscp ef
    priority 27
 class PRECEDENCE_0
  set ip precedence 1
    bandwidth remaining percent 33
 class class-default
    queue-limit 32 packets
    fair-queue
 service-policy output R4_TO_R5_POLICY
Z tego co rozumiem jesli by defaul max-reservation jest 75% to dostepny bandwidth dla classy PRECEDENCE_0 powinien byc 373

(1544*0.75)-27(dla classy C_VOICE gdzie priority ustawione jest na 27)=1131

nastepnie 1131*0.33=373.23

jesli dobrze wyliczylem to 373 powinno byc dostepnym passmem dla class, w ktorych uzylem bandwidth remaining percent 33

Natomiast kiedy zrobie show policy-map int se0/0/1 widze wieksza wartos 500

Kod: Zaznacz cały

Rack1R4#show  policy-map int se0/0/1
 Serial0/0/1 

  Service-policy output: R4_TO_R5_POLICY

    queue stats for all priority classes:
      
      queue limit 64 packets
      (queue depth/total drops/no-buffer drops) 0/0/0
      (pkts output/bytes output) 0/0

    Class-map: C_HTTP (match-all)
      11127 packets, 6444084 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: access-group name HTTP
      Queueing
      queue limit 64 packets
      (queue depth/total drops/no-buffer drops) 0/0/0
      (pkts output/bytes output) 0/0
      QoS Set
        precedence 2
          Packets marked 11127
      bandwidth remaining 33% (500 kbps)

    Class-map: C_ICMP (match-all)
      18 packets, 20472 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: protocol icmp
      Match: packet length min 1001 
      drop

    Class-map: C_VOICE (match-all)
      0 packets, 0 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: ip rtp 16384 16383
      Match: packet length max 60
      Match: packet length min 60 max 60
      QoS Set
        dscp ef
          Packets marked 0
      Priority: 27 kbps, burst bytes 1500, b/w exceed drops: 0
      

    Class-map: PRECEDENCE_0 (match-all)
      19 packets, 14576 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: ip precedence 0 
      Match: input-interface FastEthernet0/1
      Queueing
      queue limit 64 packets
      (queue depth/total drops/no-buffer drops) 0/0/0
      (pkts output/bytes output) 0/0
      QoS Set
        precedence 1
          Packets marked 19
      bandwidth remaining 33% (500 kbps)

    Class-map: class-default (match-any)
      1514 packets, 389578 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: any 
      Queueing
      queue limit 32 packets
      (queue depth/total drops/no-buffer drops/flowdrops) 0/0/0/0
      (pkts output/bytes output) 1248/333379
      Fair-queue: per-flow queue limit 8
Ktos moze mi powiedziec czy dobrze wyliczylem wartosci, a moze sie pomylilem i IOS pokazuje je poprawnie.

Wartos pokazana przez IOS byla by poprawna w przypadku kiedy uzylbym max-reserved-bandwidth 100, ale tego nie zrobilem i by defaul jest to 75%.

Pozdrawiam

Marcin

kielpi
wannabe
wannabe
Posty: 70
Rejestracja: 05 lip 2009, 17:53

Re: QOS bandwidth remaining percent

#2

#2 Post autor: kielpi » 13 sty 2013, 13:28

Kod: Zaznacz cały

 Queueing strategy: Class-based queueing 
Prosty eksperyment - spróbuj podać jawnie na interfejsie max-reserved-bandwidth 75 i zobacz czy komenda zostanie przyjęta. Spotkałem się z sytuacją, że komenda jest ignorowana i 100% ruchu jest dostępna dla użytkownika do podziału za pomocą mechanizmu klas.

martino76
CCIE
CCIE
Posty: 852
Rejestracja: 17 gru 2010, 15:23
Lokalizacja: Barczewo

Re: QOS bandwidth remaining percent

#3

#3 Post autor: martino76 » 13 sty 2013, 13:51

kielpi pisze:

Kod: Zaznacz cały

 Queueing strategy: Class-based queueing 
Prosty eksperyment - spróbuj podać jawnie na interfejsie max-reserved-bandwidth 75 i zobacz czy komenda zostanie przyjęta. Spotkałem się z sytuacją, że komenda jest ignorowana i 100% ruchu jest dostępna dla użytkownika do podziału za pomocą mechanizmu klas.
Probowalem jus tego ale rezultat jest dokaldnie ten sam

Kod: Zaznacz cały

Rack1R4#sh run int se0/0/1
Building configuration...

Current configuration : 173 bytes
!
interface Serial0/0/1
 ip address 155.1.45.4 255.255.255.0
 ip rip advertise 10
 max-reserved-bandwidth 50
 service-policy output R4_TO_R5_POLICY
 hold-queue 512 out



Rack1R4#sh policy-map int se0/0/1
 Serial0/0/1 

  Service-policy output: R4_TO_R5_POLICY

    queue stats for all priority classes:
      
      queue limit 64 packets
      (queue depth/total drops/no-buffer drops) 0/0/0
      (pkts output/bytes output) 0/0

    Class-map: C_HTTP (match-all)
      76432 packets, 44312244 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: access-group name HTTP
      Queueing
      queue limit 64 packets
      (queue depth/total drops/no-buffer drops) 0/0/0
      (pkts output/bytes output) 65305/37868160
      QoS Set
        precedence 2
          Packets marked 76432
      bandwidth remaining 33% (500 kbps)
        Exp-weight-constant: 9 (1/512)
        Mean queue depth: 3 packets
        class     Transmitted     ECN     Random drop      Tail drop          Minimum        Maximum     Mark
                  pkts/bytes     marked pkts/bytes       pkts/bytes          thresh         thresh     prob
        
        0               0/0             0      0/0              0/0                 20            40  1/10
        1               0/0             0      0/0              0/0                 22            40  1/10
        2           65305/37868160      0      0/0              0/0                  4            16  1/4
        3               0/0             0      0/0              0/0                 26            40  1/10
        4               0/0             0      0/0              0/0                 28            40  1/10
        5               0/0             0      0/0              0/0                 30            40  1/10
        6               0/0             0      0/0              0/0                 32            40  1/10
        7               0/0             0      0/0              0/0                 34            40  1/10

    Class-map: C_ICMP (match-all)
      18 packets, 20472 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: protocol icmp
      Match: packet length min 1001 
      drop

    Class-map: C_VOICE (match-all)
      0 packets, 0 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: ip rtp 16384 16383
      Match: packet length max 60
      Match: packet length min 60 max 60
      QoS Set
        dscp ef
          Packets marked 0
      Priority: 27 kbps, burst bytes 1500, b/w exceed drops: 0
      

    Class-map: PRECEDENCE_0 (match-all)
      7039 packets, 1095656 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: ip precedence 0 
      Match: input-interface FastEthernet0/1
      Queueing
      queue limit 64 packets
      (queue depth/total drops/no-buffer drops) 0/0/0
      (pkts output/bytes output) 7020/1081080
      QoS Set
        precedence 1
          Packets marked 7039
      bandwidth remaining 33% (500 kbps)

    Class-map: class-default (match-any)
      3316 packets, 837051 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: any 
      Queueing
      queue limit 64 packets
      (queue depth/total drops/no-buffer drops/flowdrops) 0/0/0/0
      (pkts output/bytes output) 3050/813114
      Fair-queue: per-flow queue limit 16
        Exp-weight-constant: 9 (1/512)
        Mean queue depth: 0 packets
        class     Transmitted       Random drop      Tail/Flow drop Minimum Maximum Mark
                  pkts/bytes    pkts/bytes       pkts/bytes    thresh  thresh  prob
        
        0             473/32530           0/0              0/0                 20            40  1/10
        1               0/0               0/0              0/0                  1            40  1/4
        2               0/0               0/0              0/0                 24            40  1/10
        3               0/0               0/0              0/0                 26            40  1/10
        4               0/0               0/0              0/0                 28            40  1/10
        5               0/0               0/0              0/0                 30            40  1/10
        6             873/325008          0/0              0/0                 32            40  1/10
        7               0/0               0/0              0/0                 34            40  1/10



Bedi
wannabe
wannabe
Posty: 161
Rejestracja: 06 sie 2006, 23:27

#4

#4 Post autor: Bedi » 14 sty 2013, 12:39

(int speed - bw priority class)* bw remain percentage
=(1544-27)*33%=500,61

martino76
CCIE
CCIE
Posty: 852
Rejestracja: 17 gru 2010, 15:23
Lokalizacja: Barczewo

#5

#5 Post autor: martino76 » 14 sty 2013, 14:39

Bedi pisze:(int speed - bw priority class)* bw remain percentage
=(1544-27)*33%=500,61
A nie jest tak, ze jesli nie mam zdefiniowanego max-reserved-bandwidth na interfejsie to by default 75% dostepnego pasma jest przeznaczone dla CBWFQ oraz LLQ a pozostale 25 procent dla default class oraz innego rodzaju pakietow jak keepalive itd.

Wiec w moim przypadku jesli nie mam komendy bandwidth na interfejscie to skoro serial mam 1544 i jesli z tego 25% jest zarezerwowane dla default-class to na pozostale classy powinno zostac 1158.

Skoro mam LLQ z priority 27 to po odjeciu tego od 1158 na pozostale classy powinno mi zostac 1131.

Jesli teraz uzyje bandwidth remaining percent 33 to dla tej clasy powinno byc 373.

Przynajmnie tak jest to wyjasione w ksiazce Cisco QOS Exam Certification Guide na str 316-317.

Dlatego jestem bardzo zdziwiony ze bierze pdo uwage 100% a nie 75%

Bedi
wannabe
wannabe
Posty: 161
Rejestracja: 06 sie 2006, 23:27

#6

#6 Post autor: Bedi » 14 sty 2013, 22:29

Nie znam książki więc nie wiem do jakiej wersji softu się odwołuje.
http://www.cisco.com/en/US/tech/tk39/tk ... l#IOS12.2x

konny
wannabe
wannabe
Posty: 166
Rejestracja: 15 lip 2012, 13:45

#7

#7 Post autor: konny » 15 sty 2013, 02:26

A co pokazuje jak wpiszesz :

Kod: Zaznacz cały

show queueing interface serial 0/0/1
?

ODPOWIEDZ