QoS for AToM

April 16, 2010 at 12:48 am | Posted in MPLS, QoS | Leave a comment

Topology

Add R5 as a P router between R1 & R2 in the previous lab, so that we can monitor packets based on MPLS EXP bits.

R3 —— R1 —— R5 —— R2 —— R4

Configuration

 

R3#

class-map TELNET
 match protocol telnet

class-map ICMP
 match protocol icmp

class-map ANY
 match any
policy-map SET_COS

class TELNET
 set cos 5

class ICMP
 set cos 1

class ANY
 set cos 2

interface FastEthernet0/0.100
 encapsulation dot1Q 100
 ip address 34.0.0.3 255.255.255.0
 service-policy output SET_COS

R1#
class-map COS7
 match cos 7
class-map COS6
 match cos 6
class-map COS5
 match cos 5
class-map COS4
 match cos 4
class-map COS3
 match cos 3
class-map COS2
 match cos 2
class-map COS1
 match cos 1
class-map COS0
 match cos 0

policy-map ETHERNET_OVER_MPLS

class COS7
 set mpls experimental 7
class COS6
 set mpls experimental 6
class COS5
 set mpls experimental 5
class COS4
 set mpls experimental 4
class COS3
 set mpls experimental 3
class COS2
 set mpls experimental 2
class COS1
 set mpls experimental 1
class COS0
 set mpls experimental 0

!
interface FastEthernet0/1.100
 description Connect to R3 via VLAN 100
 encapsulation dot1Q 100
 service-policy input ETHERNET_OVER_MPLS
 no cdp enable
 xconnect 2.2.2.2 1000 pw-class AToM
R5#
no class-map match-all EXP7
no class-map match-all EXP6
no class-map match-all EXP5
no class-map match-all EXP4
no class-map match-all EXP3
no class-map match-all EXP2
no class-map match-all EXP1
no class-map match-all EXP0

class-map match-all EXP7
  match mpls experimental topmost 7
class-map match-all EXP6
  match mpls experimental topmost 6
class-map match-all EXP5
  match mpls experimental topmost 5
class-map match-all EXP4
  match mpls experimental topmost 4
class-map match-all EXP3
  match mpls experimental topmost 3
class-map match-all EXP2
  match mpls experimental topmost 2
class-map match-all EXP1
  match mpls experimental topmost 1
class-map match-all EXP0
  match mpls experimental topmost 0
no policy-map EXP_COUNTERS

policy-map EXP_COUNTERS
class EXP7
class EXP6
class EXP5
class EXP4
class EXP3
class EXP2
class EXP1
class EXP0
class class-default
int fa0/0
 service-policy input EXP_COUNTERS
 service-policy output EXP_COUNTERS

Verification

 
Rack1R3#ping 34.0.0.4 rep 100

Type escape sequence to abort.
Sending 100, 100-byte ICMP Echos to 34.0.0.4, timeout is 2 seconds:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Success rate is 100 percent (100/100), round-trip min/avg/max = 8/32/84 ms
Rack1R3#telnet 34.0.0.4
Trying 34.0.0.4 … Open

Rack1R4>
Rack1R4>
Rack1R4>
Rack1R4>exit

[Connection to 34.0.0.4 closed by foreign host]
Rack1R3#telnet 34.0.0.4 80
Trying 34.0.0.4, 80 …
% Connection refused by remote host

Rack1R3#telnet 34.0.0.4 80
Trying 34.0.0.4, 80 …
% Connection refused by remote host

Rack1R3#
Rack1R3#
Rack1R3#sh policy-map interface
 FastEthernet0/0.100

  Service-policy output: SET_COS

    Class-map: TELNET (match-all)
      21 packets, 1350 bytes

      5 minute offered rate 0 bps, drop rate 0 bps
      Match: protocol telnet
      QoS Set
        cos 5
          Packets marked 21

    Class-map: ICMP (match-all)
      100 packets, 11800 bytes

      5 minute offered rate 0 bps, drop rate 0 bps
      Match: protocol icmp
      QoS Set
        cos 1
          Packets marked 100

    Class-map: ANY (match-all)
      2 packets, 128 bytes

      5 minute offered rate 0 bps, drop rate 0 bps
      Match: any
      QoS Set
        cos 2
          Packets marked 2

    Class-map: class-default (match-any)
      0 packets, 0 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: any

Rack1R1#sh policy-map interface

 FastEthernet0/1.100

  Service-policy input: ETHERNET_OVER_MPLS

    Class-map: COS7 (match-all)
      0 packets, 0 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: cos  7
      QoS Set
        mpls experimental imposition 7
           Packets marked 0

    Class-map: COS6 (match-all)
      0 packets, 0 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: cos  6
      QoS Set
        mpls experimental imposition 6
           Packets marked 0

    Class-map: COS5 (match-all)
      21 packets, 1350 bytes

      5 minute offered rate 0 bps, drop rate 0 bps
      Match: cos  5
      QoS Set
        mpls experimental imposition 5
           Packets marked 21

    Class-map: COS4 (match-all)
      0 packets, 0 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: cos  4
      QoS Set
        mpls experimental imposition 4
           Packets marked 0

    Class-map: COS3 (match-all)
      0 packets, 0 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: cos  3
      QoS Set
        mpls experimental imposition 3
           Packets marked 0
    Class-map: COS2 (match-all)
      2 packets, 128 bytes

      5 minute offered rate 0 bps, drop rate 0 bps
      Match: cos  2
      QoS Set
        mpls experimental imposition 2
           Packets marked 2

    Class-map: COS1 (match-all)
      100 packets, 11800 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: cos  1
      QoS Set
        mpls experimental imposition 1
           Packets marked 100

    Class-map: COS0 (match-all)
      0 packets, 0 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: cos  0
      QoS Set
        mpls experimental imposition 0

           Packets marked 0

    Class-map: class-default (match-any)
      0 packets, 0 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: any
Rack1R5#sh policy-map interface fa0/0 input

 FastEthernet0/0

  Service-policy input: EXP_COUNTERS

    Class-map: EXP7 (match-all)
      0 packets, 0 bytes
      5 minute offered rate 0 bps
      Match: mpls experimental topmost 7

    Class-map: EXP6 (match-all) ! ROUTING(?) & CONTROL TRAFFIC
      36 packets, 2780 bytes

      5 minute offered rate 0 bps
      Match: mpls experimental topmost 6

    Class-map: EXP5 (match-all) ! Telnet
      21 packets, 1518 bytes

      5 minute offered rate 0 bps
      Match: mpls experimental topmost 5

    Class-map: EXP4 (match-all)
      0 packets, 0 bytes
      5 minute offered rate 0 bps

      Match: mpls experimental topmost 4

    Class-map: EXP3 (match-all)
      0 packets, 0 bytes
      5 minute offered rate 0 bps
      Match: mpls experimental topmost 3

    Class-map: EXP2 (match-all) ! TCP PORT 80 generated via telnet 34.0.0.4 80
      2 packets, 144 bytes

      5 minute offered rate 0 bps
      Match: mpls experimental topmost 2

    Class-map: EXP1 (match-all) ! Pings
      100 packets, 12600 bytes

      5 minute offered rate 0 bps
      Match: mpls experimental topmost 1

    Class-map: EXP0 (match-all)
      0 packets, 0 bytes
      5 minute offered rate 0 bps
      Match: mpls experimental topmost 0
    Class-map: class-default (match-any) ! Plain IP TRAFFIC (not MPLS)
      8 packets, 528 bytes

      5 minute offered rate 0 bps, drop rate 0 bps
      Match: any

Reference

http://fengnet.com/book/IOS_MPLS/ch13lev1sec6.html

Advertisements

AToM: Frame PVC to VLAN

April 14, 2010 at 11:58 pm | Posted in Blogroll, MPLS, VPN | Leave a comment

 Topology

Fa0/0        Fa0/1   Fa0/0       Fa0/0   S1/0               S1/0
R3 -------------- R1 ---------------- R2 --------FR-------- R4
                 (PE)                (PE)

 

Configuration

R1#
mpls ldp router-id Loopback0
mpls label protocol ldp
!
pseudowire-class AToM
 encapsulation mpls
 interworking ip
!
!
!
interface Loopback0
 ip address 1.1.1.1 255.255.255.255
!
interface FastEthernet0/0
 ip address 12.0.0.1 255.255.255.0
 mpls ip

!
interface FastEthernet0/1
 no ip address
 no shut
!
interface FastEthernet0/1.100
 description Connect to R3 via VLAN 100
 encapsulation dot1Q 100
 no cdp enable
 xconnect 2.2.2.2 1000 pw-class AToM
!
router ospf 1
 log-adjacency-changes
 network 1.1.1.1 0.0.0.0 area 0
 network 12.0.0.1 0.0.0.0 area 0
!
ip classless
R2#
mpls ldp router-id Loopback0
mpls label protocol ldp
!
pseudowire-class AToM
 encapsulation mpls
 interworking ip
!
!
!
!
interface Loopback0
 ip address 2.2.2.2 255.255.255.255
!
interface FastEthernet0/0
 ip address 12.0.0.2 255.255.255.0
 mpls ip
!
!
interface Serial1/0
 description Connect to R4 (CE2) via Frame PVC 204
 no ip address
 encapsulation frame-relay
 no shutdown
!
!
router ospf 1
 log-adjacency-changes
 network 2.2.2.2 0.0.0.0 area 0
 network 12.0.0.2 0.0.0.0 area 0
!
!
!
connect FR-VLAN Serial1/0 204 l2transport
 xconnect 1.1.1.1 1000 pw-class AToM
 !
!
!
!
R3#

interface FastEthernet0/0
 description Connected to R1
 no ip address

!
interface FastEthernet0/0.100
 encapsulation dot1Q 100
 ip address 34.0.0.3 255.255.255.0
R4#

interface Serial1/0
 no ip address
 encapsulation frame-relay

!
interface Serial1/0.1 point-to-point
 ip address 34.0.0.4 255.255.255.0
 frame-relay interface-dlci 402

Verification

 

Rack1R1#sh mpls l2transport summary
Destination address: 2.2.2.2, total number of vc: 1
  0 unknown, 1 up, 0 down, 0 admin down, 0 recovering
  1 active vc on MPLS interface Fa0/0
Rack1R1#show mpls l2transport binding
  Destination Address: 2.2.2.2,  VC ID: 1000
    Local Label:  18
        Cbit: 1,    VC Type: IP,    GroupID: 0
        MTU: 1500,   Interface Desc: n/a
        VCCV Capabilities: None
    Remote Label: 17
        Cbit: 1,    VC Type: IP,    GroupID: 0
        MTU: 1500,   Interface Desc: n/a
        VCCV Capabilities: None

Rack1R1#sh mpls l2transport vc 1000 detail
Local interface: Fa0/1.100 up, line protocol up, Eth VLAN 100 up
  MPLS VC type is IP, interworking type is IP
  Destination address: 2.2.2.2, VC ID: 1000, VC status: up
    Output interface: Fa0/0, imposed label stack {17}
    Preferred path: not configured
    Default path: active
    Tunnel label: imp-null, next hop 12.0.0.2
  Create time: 00:16:34, last status change time: 00:15:20
  Signaling protocol: LDP, peer 2.2.2.2:0 up
    MPLS VC labels: local 18, remote 17
    Group ID: local 0, remote 0
    MTU: local 1500, remote 1500
    Remote interface description:
  Sequencing: receive disabled, send disabled
  VC statistics:
    packet totals: receive 35, send 24
    byte totals:   receive 3500, send 2928
    packet drops:  receive 0, send 0
Rack1R2#sh mpls l2transport vc 1000 detail
Local interface: Se1/0 up, line protocol up, FR DLCI 204 up
  MPLS VC type is IP, interworking type is IP
  Destination address: 1.1.1.1, VC ID: 1000, VC status: up
    Output interface: Fa0/0, imposed label stack {18}
    Preferred path: not configured
    Default path: active
    Tunnel label: imp-null, next hop 12.0.0.1
  Create time: 00:23:41, last status change time: 00:15:52
  Signaling protocol: LDP, peer 1.1.1.1:0 up
    MPLS VC labels: local 17, remote 18
    Group ID: local 0, remote 0
    MTU: local 1500, remote 1500
    Remote interface description:
  Sequencing: receive disabled, send disabled
  VC statistics:
    packet totals: receive 24, send 35
    byte totals:   receive 2400, send 4270
    packet drops:  receive 0, send 0

Rack1R3#ping 34.0.0.4

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 34.0.0.4, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 16/42/72 ms

Rack1R1#show mpls l2transport hw-capability interface fa0/1
Interface FastEthernet0/1

Transport type FR DLCI
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type ATM AAL5
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type ATM CELL
  Core functionality:
    MPLS label disposition supported
    Control word processing not supported
    Sequence number processing not supported
    VCCV Type 1 processing not supported
  Edge functionality:
    Not supported

Transport type Eth VLAN
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    MPLS label imposition supported
    Control word processing supported
    Sequence number processing not supported

Transport type Ethernet
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    MPLS label imposition supported
    Control word processing supported
    Sequence number processing not supported

Transport type HDLC
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type PPP
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type CEM
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type ATM VCC CELL
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type ATM VPC CELL
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type VFI
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Rack1R2#sh mpls l2transport hw-capability ?
  interface  Show MPLS L2 transport interface capability

Rack1R2#sh mpls l2transport hw-capability int
Rack1R2#sh mpls l2transport hw-capability interface atm2/0
Interface ATM2/0

Transport type FR DLCI
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type ATM AAL5
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type ATM CELL
  Core functionality:
    MPLS label disposition supported
    Control word processing not supported
    Sequence number processing not supported
    VCCV Type 1 processing not supported
  Edge functionality:
    Not supported

Transport type Eth VLAN
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type Ethernet
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type HDLC
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type PPP
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type CEM
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type ATM VCC CELL
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type ATM VPC CELL
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

Transport type VFI
  Core functionality:
    MPLS label disposition supported
    Control word processing supported
    Sequence number processing not supported
    VCCV Type 1 processing supported
  Edge functionality:
    Not supported

NOTE that MTU have to match. Otherwise, xconnect does not come up.

Rack1R2(config)#int s1/0
Rack1R2(config-if)#mtu ?
  <64-18000>  MTU size in bytes

Rack1R2(config-if)#mtu 1000
Rack1R2(config-if)#end
Rack1R2#
Rack1R2#
Rack1R2#
Rack1R2#
Rack1R2#
Rack1R2#sh mpls l2transport vc 1000 detail
Local interface: Se1/0 up, line protocol up, FR DLCI 204 up
  MPLS VC type is IP, interworking type is IP
  Destination address: 1.1.1.1, VC ID: 1000, VC status: down
    Output interface: if-?(0), imposed label stack {}
    Preferred path: not configured
    Default path: active
    Tunnel label: 0, next hop Invalid MOI
  Create time: 00:00:12, last status change time: 00:00:12
  Signaling protocol: LDP, peer 1.1.1.1:0 up
    MPLS VC labels: local 18, remote 16
    Group ID: local 0, remote 0
    MTU: local 1000, remote 1500
    Remote interface description: Connect to R3 via VLAN 100
  Sequencing: receive disabled, send disabled
  VC statistics:
    packet totals: receive 1952, send 1942
    byte totals:   receive 195200, send 236924
    packet drops:  receive 0, send 0

Blog at WordPress.com.
Entries and comments feeds.