ネットワーク技術メモ

主に Cisco IOS-XR の調査メモ

NSO timeout 時間変更

概要

NSO で時間がかかりすぎると、timeout になることがある。 特に action では config 設定以外の処理を実装することが多いため、この処理によっては時間がかかる。 このときの対策として、timeout 時間を延ばすことができる。

action の場合

import _ncs

    def cb_action(self, uinfo, name, kp, input, output, trans):
        _ncs.dp.action_set_timeout(uinfo, 300)

service model の場合

  • NSO の設定を変更する (実機で未確認)
java-vm service-transaction-timeout 300

参考

Solved: How do I increase the timeout for actions? - Cisco Community

Solved: NSO Tail-f question: application timeout - Cisco Community

IOS-XR NSSA RFC

IOS-XR での NSSA の実装は、RFC 1587 に基本的に従っており、RFC 3101 には一部的にしか従っていない。 type-5 LSA と type7-LSA のどちらを優先するかは下記の通り。

  • RFC 1587

    1. Any type 5 LSA.
    2. A type-7 LSA with the P-bit set and the forwarding address non-zero.
    3. Any other type-7 LSA.
  • RFC 3101

    1. A Type-7 LSA with the P-bit set.
    2. A Type-5 LSA.
    3. The LSA with the higher router ID.

参考 URL

RFC 1587 - The OSPF NSSA Option

RFC 3101 - The OSPF Not-So-Stubby Area (NSSA) Option

Sticky ECMP

参考 URL

xrdocs.io

概要

ECMP 時に障害が発生すると、障害が発生した path 以外の destination に対しても rehash がかかる。 この rehash をなくすための設定が、IOS-XR 6.3.2 以降の ASR9k と NCS55 で導入された。 BGP のみ。route-policy で prefix を指定して設定。

設定例

route-policy sticky-ecmp
  if destination in (192.168.3.0/24) then
    set load-balance ecmp-consistent
  else
    pass
  endif
end-policy
!
router bgp 65000
 address-family ipv4 unicast
  table-policy sticky-ecmp
  maximum-paths ebgp 64
  maximum-paths ibgp 32
 !
!
end

復旧時の動作

  1. clear route <prefix>にて復旧
  2. cef consistent-hashing auto-recovery 設定により、自動復旧 (IOS-XR 6.5.1)

IOS-XR での MIB の簡単な確認方法

MIB を簡単に確認したいことがある。 IOS-XR では、show snmp mib object-nameSNMP supported MIB object names を確認可能

RP/0/RSP0/CPU0:Router#show snmp mib object-name  | i cpmCPU
Fri Oct 16 13:03:53.156 JST
  1.3.6.1.4.1.9.9.109.1.1.1.1.2             cpmCPUTotalPhysicalIndex
  1.3.6.1.4.1.9.9.109.1.1.1.1.3             cpmCPUTotal5sec
  1.3.6.1.4.1.9.9.109.1.1.1.1.4             cpmCPUTotal1min
  1.3.6.1.4.1.9.9.109.1.1.1.1.5             cpmCPUTotal5min
  1.3.6.1.4.1.9.9.109.1.1.1.1.6             cpmCPUTotal5secRev
  1.3.6.1.4.1.9.9.109.1.1.1.1.7             cpmCPUTotal1minRev
  1.3.6.1.4.1.9.9.109.1.1.1.1.8             cpmCPUTotal5minRev
  1.3.6.1.4.1.9.9.109.1.1.1.1.30            cpmCPUTotal15min
  1.3.6.1.4.1.9.9.109.1.1.1.1.31            cpmCPUTotal15minRev

IOS では、SNMP オブジェクトナビゲータでの確認が便利。