open-switch / opx-cps

https://openswitch.net
6 stars 15 forks source link

Oper status not reported on LAG interfaces #68

Closed michaelsiuda closed 6 years ago

michaelsiuda commented 6 years ago

Regardless of the number and state of member ports, CPS doesn't report oper or admin status of LAG interfaces.

LAG interface with no member ports - should be oper-down even if enabled:

root@nst-wbx-demo-005:~# ip link show bnd1
40: bnd1: <NO-CARRIER,BROADCAST,MULTICAST,MASTER,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default
    link/ether 00:01:02:03:04:05 brd ff:ff:ff:ff:ff:ff

root@nst-wbx-demo-005:~# cps_get_oid.py -qua observed dell-base-if-cmn/if/interfaces-state/interface | grep -B 4 -A 3 bnd1
------------------------------------------------
dell-if/if/interfaces-state/interface/supported-autoneg = 1
dell-if/if/interfaces/interface/phys-address = 00:01:02:03:04:05
if/interfaces-state/interface/if-index = 40
if/interfaces-state/interface/name = bnd1
dell-if/if/interfaces/interface/mtu = 1532
if/interfaces/interface/enabled = 1
------------------------------------------------

LAG interface with active member ports - should be oper up:


root@nst-wbx-demo-004:~# ip link show dev bnd1
40: bnd1: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default
    link/ether 00:01:02:03:04:05 brd ff:ff:ff:ff:ff:ff

root@nst-wbx-demo-004:~#  cps_get_oid.py -qua observed dell-base-if-cmn/if/interfaces-state/interface | grep -B 4 -A 3 bnd1
------------------------------------------------
dell-if/if/interfaces-state/interface/supported-autoneg = 1
dell-if/if/interfaces/interface/phys-address = 00:01:02:03:04:05
if/interfaces-state/interface/if-index = 40
if/interfaces-state/interface/name = bnd1
dell-if/if/interfaces/interface/mtu = 1532
if/interfaces/interface/enabled = 1
------------------------------------------------
GarrickHe commented 6 years ago

Hello @michaelsiuda , This issue has been fixed and the code has been pushed into opx-nas-interface. Please upgrade your version. Here is my output for LAG when querying the interface-state:

============2.15.44.2883618.2883611.2883586.==========
base-if-lag/if/interfaces/interface/learn-mode = 2
base-if-lag/if/interfaces/interface/id = 1
if/interfaces-state/interface/admin-status = 2
if/interfaces-state/interface/type = ianaift:ieee8023adLag
base-if-lag/if/interfaces/interface/lag-opaque-data = 01000000000000002c000000000000000100000000000000040000000000000000000000020000000000000008000000000000000500000000000200
dell-if/if/interfaces/interface/phys-address = 66:be:9c:9a:8c:81
if/interfaces-state/interface/oper-status = 2
base-if-lag/if/interfaces/interface/unblock-port-list =
dell-if/if/interfaces/interface/mtu = 1532
if/interfaces-state/interface/name = bnd1
dell-base-if-cmn/if/interfaces/interface/if-index = 51
if/interfaces/interface/enabled = 0
base-if-lag/if/interfaces-state/interface/num-ports = 0
base-if-lag/if/interfaces/interface/block-port-list =
------------------------------------------------
base-if-lag/if/interfaces/interface/learn-mode = 2
base-if-lag/if/interfaces/interface/id = 44
if/interfaces-state/interface/admin-status = 2
if/interfaces-state/interface/type = ianaift:ieee8023adLag
base-if-lag/if/interfaces/interface/lag-opaque-data = 01000000000000002c000000000000000100000000000000040000000000000000000000020000000000000008000000000000000400000000000200
dell-if/if/interfaces/interface/phys-address = 00:0c:29:df:85:0e
if/interfaces-state/interface/oper-status = 2
base-if-lag/if/interfaces/interface/unblock-port-list =
dell-if/if/interfaces/interface/mtu = 1532
if/interfaces-state/interface/name = bnd44
dell-base-if-cmn/if/interfaces/interface/if-index = 45
if/interfaces/interface/enabled = 0
base-if-lag/if/interfaces-state/interface/num-ports = 0
base-if-lag/if/interfaces/interface/block-port-list =
------------------------------------------------
michaelsiuda commented 6 years ago

Thanks. We'll try it out and let you know if there are any other issues.

atanu-mandal commented 6 years ago

Closing this, please reopen for any further issue.