Uploaded image for project: 'vpp'
  1. vpp
  2. VPP-456

ip4 classifier fib 2.0 entry dependent on configuration order

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Medium Medium
    • 17.01
    • None
    • None
    • None

      Fib entry appears correctly when I configure classifier first and interfaces later:

      DBGvpp# classify table mask l3 ip4 src
      DBGvpp# sh classify tables
      TableIdx Sessions NextTbl NextNode
      0 0 -1 -1
      Heap: 1 objects, 64 of 2k used, 48 free, 0 reclaimed, 1k overhead, 2044k capacity
      nbuckets 2, skip 1 match 1
      mask 00000000000000000000ffffffff0000
      DBGvpp# classify session hit-next node li-hit-ip4 table-index 0 match l3 ip4 src 192.168.1.14
      DBGvpp# sh classify tables
      TableIdx Sessions NextTbl NextNode
      0 1 -1 -1
      Heap: 3 objects, 176 of 2k used, 72 free, 0 reclaimed, 1k overhead, 2044k capacity
      nbuckets 2, skip 1 match 1
      mask 00000000000000000000ffffffff0000
      DBGvpp# set ip classify intfc GigabitEthernet0/10/0 table-index 0
      DBGvpp# set interface ip address GigabitEthernet0/10/0 192.168.1.13/24
      DBGvpp# set interface state GigabitEthernet0/10/0 up
      DBGvpp# set interface ip address GigabitEthernet0/11/0 192.168.2.13/24
      DBGvpp# set interface state GigabitEthernet0/11/0 up
      DBGvpp# show interface address
      GigabitEthernet0/10/0 (up):
      192.168.1.13/24
      GigabitEthernet0/11/0 (up):
      192.168.2.13/24
      GigabitEthernet0/9/0 (dn):
      GigabitEthernet0/a/0 (dn):
      local0 (dn):
      DBGvpp# sh ip fib
      ipv4-VRF:0, fib_index 0, flow hash: src dst sport dport proto
      0.0.0.0/0
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:0 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      0.0.0.0/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:1 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      192.168.1.0/24
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:12 buckets:1 locks:1 to:[0:0]]
      [0] [@4]: glean: GigabitEthernet0/10/0
      192.168.1.13/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:13 buckets:1 locks:1 to:[0:0]]
      [0] [@11]: classify:[0]:table:0
      192.168.2.0/24
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:14 buckets:1 locks:1 to:[0:0]]
      [0] [@4]: glean: GigabitEthernet0/11/0
      192.168.2.13/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:15 buckets:1 locks:1 to:[0:0]]
      [0] [@2]: dpo-receive: 192.168.2.13 on GigabitEthernet0/11/0
      224.0.0.0/8
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:3 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      240.0.0.0/8
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:2 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      255.255.255.255/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:4 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop

      If I configure interfaces first and assign classifier later with old fib version, table didn’t appear in fib immediately, but switching corresponding interface down-up wild do the job.

      Recently configuring interfaces first and classifier later doesn’t appear in fib at all:

      DBGvpp# set interface ip address GigabitEthernet0/10/0 192.168.1.13/24
      DBGvpp# set interface state GigabitEthernet0/10/0 up
      DBGvpp# set interface ip address GigabitEthernet0/11/0 192.168.2.13/24
      DBGvpp# set interface state GigabitEthernet0/11/0 up
      DBGvpp# show interface address
      GigabitEthernet0/10/0 (up):
      192.168.1.13/24
      GigabitEthernet0/11/0 (up):
      192.168.2.13/24
      GigabitEthernet0/9/0 (dn):
      GigabitEthernet0/a/0 (dn):
      local0 (dn):
      DBGvpp# sh ip fib
      ipv4-VRF:0, fib_index 0, flow hash: src dst sport dport proto
      0.0.0.0/0
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:0 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      0.0.0.0/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:1 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      192.168.1.0/24
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:12 buckets:1 locks:1 to:[0:0]]
      [0] [@4]: glean: GigabitEthernet0/10/0
      192.168.1.13/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:13 buckets:1 locks:1 to:[0:0]]
      [0] [@2]: dpo-receive: 192.168.1.13 on GigabitEthernet0/10/0
      192.168.2.0/24
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:14 buckets:1 locks:1 to:[0:0]]
      [0] [@4]: glean: GigabitEthernet0/11/0
      192.168.2.13/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:15 buckets:1 locks:1 to:[0:0]]
      [0] [@2]: dpo-receive: 192.168.2.13 on GigabitEthernet0/11/0
      224.0.0.0/8
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:3 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      240.0.0.0/8
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:2 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      255.255.255.255/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:4 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      DBGvpp# classify table mask l3 ip4 src
      DBGvpp# sh classify tables
      TableIdx Sessions NextTbl NextNode
      0 0 -1 -1
      Heap: 1 objects, 64 of 2k used, 48 free, 0 reclaimed, 1k overhead, 2044k capacity
      nbuckets 2, skip 1 match 1
      mask 00000000000000000000ffffffff0000
      DBGvpp# classify session hit-next node li-hit-ip4 table-index 0 match l3 ip4 src 192.168.1.14
      DBGvpp# sh classify tables
      TableIdx Sessions NextTbl NextNode
      0 1 -1 -1
      Heap: 3 objects, 176 of 2k used, 72 free, 0 reclaimed, 1k overhead, 2044k capacity
      nbuckets 2, skip 1 match 1
      mask 00000000000000000000ffffffff0000
      DBGvpp# set ip classify intfc GigabitEthernet0/10/0 table-index 0
      DBGvpp# sh ip fib
      ipv4-VRF:0, fib_index 0, flow hash: src dst sport dport proto
      0.0.0.0/0
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:0 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      0.0.0.0/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:1 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      192.168.1.0/24
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:12 buckets:1 locks:1 to:[0:0]]
      [0] [@4]: glean: GigabitEthernet0/10/0
      192.168.1.13/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:13 buckets:1 locks:1 to:[0:0]]
      [0] [@2]: dpo-receive: 192.168.1.13 on GigabitEthernet0/10/0
      192.168.2.0/24
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:14 buckets:1 locks:1 to:[0:0]]
      [0] [@4]: glean: GigabitEthernet0/11/0
      192.168.2.13/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:15 buckets:1 locks:1 to:[0:0]]
      [0] [@2]: dpo-receive: 192.168.2.13 on GigabitEthernet0/11/0
      224.0.0.0/8
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:3 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      240.0.0.0/8
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:2 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      255.255.255.255/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:4 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      DBGvpp#* set interface state GigabitEthernet0/10/0 down*
      DBGvpp# set interface state GigabitEthernet0/10/0 up
      DBGvpp# sh ip fib
      ipv4-VRF:0, fib_index 0, flow hash: src dst sport dport proto
      0.0.0.0/0
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:0 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      0.0.0.0/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:1 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      192.168.1.0/24
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:12 buckets:1 locks:1 to:[0:0]]
      [0] [@4]: glean: GigabitEthernet0/10/0
      192.168.1.13/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:13 buckets:1 locks:1 to:[0:0]]
      [0] [@2]: dpo-receive: 192.168.1.13 on GigabitEthernet0/10/0
      192.168.2.0/24
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:14 buckets:1 locks:1 to:[0:0]]
      [0] [@4]: glean: GigabitEthernet0/11/0
      192.168.2.13/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:15 buckets:1 locks:1 to:[0:0]]
      [0] [@2]: dpo-receive: 192.168.2.13 on GigabitEthernet0/11/0
      224.0.0.0/8
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:3 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      240.0.0.0/8
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:2 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop
      255.255.255.255/32
      unicast-ip4-chain
      [@0]: dpo-load-balance: [index:4 buckets:1 locks:1 to:[0:0]]
      [0] [@0]: dpo-drop

            nranns Neale Ranns
            mazavods marek zavodsky
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: