diff --git a/src/sonic_ax_impl/mibs/__init__.py b/src/sonic_ax_impl/mibs/__init__.py index 5c4e8de6a..35d29693e 100644 --- a/src/sonic_ax_impl/mibs/__init__.py +++ b/src/sonic_ax_impl/mibs/__init__.py @@ -43,20 +43,6 @@ "tx4power": 43, } -RIF_COUNTERS_AGGR_MAP = { - b"SAI_PORT_STAT_IF_IN_OCTETS": b"SAI_ROUTER_INTERFACE_STAT_IN_OCTETS", - b"SAI_PORT_STAT_IF_IN_UCAST_PKTS": b"SAI_ROUTER_INTERFACE_STAT_IN_PACKETS", - b"SAI_PORT_STAT_IF_IN_ERRORS": b"SAI_ROUTER_INTERFACE_STAT_IN_ERROR_PACKETS", - b"SAI_PORT_STAT_IF_OUT_OCTETS": b"SAI_ROUTER_INTERFACE_STAT_OUT_OCTETS", - b"SAI_PORT_STAT_IF_OUT_UCAST_PKTS": b"SAI_ROUTER_INTERFACE_STAT_OUT_PACKETS", - b"SAI_PORT_STAT_IF_OUT_ERRORS": b"SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_PACKETS" -} - -RIF_DROPS_AGGR_MAP = { - b"SAI_PORT_STAT_IF_IN_ERRORS": b"SAI_ROUTER_INTERFACE_STAT_IN_ERROR_PACKETS", - b"SAI_PORT_STAT_IF_OUT_ERRORS": b"SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_PACKETS" -} - # IfIndex to OID multiplier for transceiver IFINDEX_SUB_ID_MULTIPLIER = 1000 @@ -127,14 +113,6 @@ def if_entry_table(if_name): return b'PORT_TABLE:' + if_name -def vlan_entry_table(if_name): - """ - :param if_name: given interface to cast. - :return: VLAN_TABLE key. - """ - return b'VLAN_TABLE:' + if_name - - def lag_entry_table(lag_name): """ :param lag_name: given lag to cast. @@ -290,48 +268,6 @@ def init_sync_d_interface_tables(db_conn): return if_name_map, if_alias_map, if_id_map, oid_sai_map, oid_name_map - -def init_sync_d_rif_tables(db_conn): - """ - Initializes map of RIF SAI oids to port SAI oid. - :return: dict - """ - rif_port_map = port_util.get_rif_port_map(db_conn) - - if not rif_port_map: - return {}, {} - port_rif_map = {port: rif for rif, port in rif_port_map.items()} - logger.debug("Rif port map:\n" + pprint.pformat(rif_port_map, indent=2)) - - return rif_port_map, port_rif_map - - -def init_sync_d_vlan_tables(db_conn): - """ - Initializes vlan interface maps for SyncD-connected MIB(s). - :return: tuple(vlan_name_map, oid_sai_map, oid_name_map) - """ - - vlan_name_map = port_util.get_vlan_interface_oid_map(db_conn) - - logger.debug("Vlan oid map:\n" + pprint.pformat(vlan_name_map, indent=2)) - - # { OID -> sai_id } - oid_sai_map = {get_index(if_name): sai_id for sai_id, if_name in vlan_name_map.items() - # only map the interface if it's a style understood to be a SONiC interface. - if get_index(if_name) is not None} - logger.debug("OID sai map:\n" + pprint.pformat(oid_sai_map, indent=2)) - - # { OID -> if_name (SONiC) } - oid_name_map = {get_index(if_name): if_name for sai_id, if_name in vlan_name_map.items() - # only map the interface if it's a style understood to be a SONiC interface. - if get_index(if_name) is not None} - - logger.debug("OID name map:\n" + pprint.pformat(oid_name_map, indent=2)) - - return vlan_name_map, oid_sai_map, oid_name_map - - def init_sync_d_lag_tables(db_conn): """ Helper method. Connects to and initializes LAG interface maps for SyncD-connected MIB(s). @@ -346,16 +282,13 @@ def init_sync_d_lag_tables(db_conn): if_name_lag_name_map = {} # { OID -> lag_name (SONiC) } oid_lag_name_map = {} - # { lag_name (SONiC) -> lag_oid (SAI) } - lag_sai_map = {} + + db_conn.connect(APPL_DB) lag_entries = db_conn.keys(APPL_DB, b"LAG_TABLE:*") if not lag_entries: - return lag_name_if_name_map, if_name_lag_name_map, oid_lag_name_map, lag_sai_map - - lag_sai_map = db_conn.get_all(COUNTERS_DB, b"COUNTERS_LAG_NAME_MAP") - lag_sai_map = {name: sai_id.lstrip(b"oid:0x") for name, sai_id in lag_sai_map.items()} + return lag_name_if_name_map, if_name_lag_name_map, oid_lag_name_map for lag_entry in lag_entries: lag_name = lag_entry[len(b"LAG_TABLE:"):] @@ -377,7 +310,7 @@ def member_name_str(val, lag_name): if idx: oid_lag_name_map[idx] = if_name - return lag_name_if_name_map, if_name_lag_name_map, oid_lag_name_map, lag_sai_map + return lag_name_if_name_map, if_name_lag_name_map, oid_lag_name_map def init_sync_d_queue_tables(db_conn): """ @@ -651,7 +584,6 @@ def init_namespace_sync_d_lag_tables(dbs): lag_name_if_name_map = {} if_name_lag_name_map = {} oid_lag_name_map = {} - lag_sai_map = {} """ all_ns_db - will have db_conn to all namespace DBs and @@ -663,45 +595,12 @@ def init_namespace_sync_d_lag_tables(dbs): for db_conn in Namespace.get_non_host_dbs(dbs): lag_name_if_name_map_ns, \ if_name_lag_name_map_ns, \ - oid_lag_name_map_ns, \ - lag_sai_map_ns = init_sync_d_lag_tables(db_conn) + oid_lag_name_map_ns = init_sync_d_lag_tables(db_conn) lag_name_if_name_map.update(lag_name_if_name_map_ns) if_name_lag_name_map.update(if_name_lag_name_map_ns) oid_lag_name_map.update(oid_lag_name_map_ns) - lag_sai_map.update(lag_sai_map_ns) - - return lag_name_if_name_map, if_name_lag_name_map, oid_lag_name_map, lag_sai_map - - @staticmethod - def init_namespace_sync_d_rif_tables(dbs): - rif_port_map = {} - port_rif_map = {} - - Namespace.connect_namespace_dbs(dbs) - for db_conn in Namespace.get_non_host_dbs(dbs): - rif_port_map_ns, \ - port_rif_map_ns = init_sync_d_rif_tables(db_conn) - rif_port_map.update(rif_port_map_ns) - port_rif_map.update(port_rif_map_ns) - - return rif_port_map, port_rif_map - - @staticmethod - def init_namespace_sync_d_vlan_tables(dbs): - vlan_name_map = {} - oid_sai_map = {} - oid_name_map = {} - - Namespace.connect_namespace_dbs(dbs) - for db_conn in Namespace.get_non_host_dbs(dbs): - vlan_name_map_ns, \ - oid_sai_map_ns, \ - oid_name_map_ns = init_sync_d_vlan_tables(db_conn) - vlan_name_map.update(vlan_name_map_ns) - oid_sai_map.update(oid_sai_map_ns) - oid_name_map.update(oid_name_map_ns) - return vlan_name_map, oid_sai_map, oid_name_map + return lag_name_if_name_map, if_name_lag_name_map, oid_lag_name_map @staticmethod def init_namespace_sync_d_queue_tables(dbs): diff --git a/src/sonic_ax_impl/mibs/ietf/rfc1213.py b/src/sonic_ax_impl/mibs/ietf/rfc1213.py index 6333b966e..c7dc2848f 100644 --- a/src/sonic_ax_impl/mibs/ietf/rfc1213.py +++ b/src/sonic_ax_impl/mibs/ietf/rfc1213.py @@ -4,7 +4,6 @@ from bisect import bisect_right from sonic_ax_impl import mibs -from sonic_ax_impl import logger from sonic_ax_impl.mibs import Namespace from ax_interface.mib import MIBMeta, ValueType, MIBUpdater, MIBEntry, SubtreeMIBEntry, OverlayAdpaterMIBEntry, OidMIBEntry from ax_interface.encodings import ObjectIdentifier @@ -50,8 +49,7 @@ class DbTables(int, Enum): class IfTypes(int, Enum): """ IANA ifTypes """ ethernetCsmacd = 6 - l3ipvlan = 136 - ieee8023adLag = 161 + ieee8023adLag = 161 class ArpUpdater(MIBUpdater): def __init__(self): @@ -159,13 +157,8 @@ def __init__(self): self.lag_name_if_name_map = {} self.if_name_lag_name_map = {} self.oid_lag_name_map = {} - self.lag_sai_map = {} self.mgmt_oid_name_map = {} self.mgmt_alias_map = {} - self.vlan_oid_name_map = {} - self.vlan_name_map = {} - self.rif_port_map = {} - self.port_rif_map = {} # cache of interface counters self.if_counters = {} @@ -175,7 +168,6 @@ def __init__(self): self.if_id_map = {} self.oid_sai_map = {} self.oid_name_map = {} - self.rif_counters = {} def reinit_data(self): """ @@ -194,13 +186,6 @@ def reinit_data(self): self.mgmt_oid_name_map, \ self.mgmt_alias_map = mibs.init_mgmt_interface_tables(self.db_conn[0]) - self.vlan_name_map, \ - self.vlan_oid_sai_map, \ - self.vlan_oid_name_map = Namespace.init_namespace_sync_d_vlan_tables(self.db_conn) - - self.rif_port_map, \ - self.port_rif_map = Namespace.init_namespace_sync_d_rif_tables(self.db_conn) - def update_data(self): """ Update redis (caches config) @@ -210,24 +195,13 @@ def update_data(self): {sai_id: Namespace.dbs_get_all(self.db_conn, mibs.COUNTERS_DB, mibs.counter_table(sai_id), blocking=True) for sai_id in self.if_id_map} - rif_sai_ids = list(self.rif_port_map) + list(self.vlan_name_map) - - self.rif_counters = \ - {sai_id: Namespace.dbs_get_all(self.db_conn, mibs.COUNTERS_DB, mibs.counter_table(sai_id), blocking=True) - for sai_id in rif_sai_ids} - - if self.rif_counters: - self.aggregate_counters() - self.lag_name_if_name_map, \ self.if_name_lag_name_map, \ - self.oid_lag_name_map, \ - self.lag_sai_map = Namespace.init_namespace_sync_d_lag_tables(self.db_conn) + self.oid_lag_name_map = Namespace.init_namespace_sync_d_lag_tables(self.db_conn) self.if_range = sorted(list(self.oid_sai_map.keys()) + list(self.oid_lag_name_map.keys()) + - list(self.mgmt_oid_name_map.keys()) + - list(self.vlan_oid_name_map.keys())) + list(self.mgmt_oid_name_map.keys())) self.if_range = [(i,) for i in self.if_range] def get_next(self, sub_id): @@ -271,8 +245,6 @@ def interface_description(self, sub_id): return self.oid_lag_name_map[oid] elif oid in self.mgmt_oid_name_map: return self.mgmt_alias_map[self.mgmt_oid_name_map[oid]] - elif oid in self.vlan_oid_name_map: - return self.vlan_oid_name_map[oid] return self.if_alias_map[self.oid_name_map[oid]] @@ -282,13 +254,7 @@ def _get_counter(self, oid, table_name): :param table_name: the redis table (either IntEnum or string literal) to query. :return: the counter for the respective sub_id/table. """ - sai_id = '' - if oid in self.oid_sai_map: - sai_id = self.oid_sai_map[oid] - elif oid in self.vlan_oid_sai_map: - sai_id = self.vlan_oid_sai_map[oid] - else: - logger.warning("Unexpected oid {}".format(oid)) + sai_id = self.oid_sai_map[oid] # Enum.name or table_name = 'name_of_the_table' _table_name = bytes(getattr(table_name, 'name', table_name), 'utf-8') @@ -302,29 +268,6 @@ def _get_counter(self, oid, table_name): mibs.logger.warning("SyncD 'COUNTERS_DB' missing attribute '{}'.".format(e)) return None - def aggregate_counters(self): - """ - For ports with l3 router interfaces l3 drops may be counted separately (RIF counters) - add l3 drops to l2 drop counters cache according to mapping - - For l3vlan map l3 counters to l2 counters - """ - for rif_sai_id, port_sai_id in self.rif_port_map.items(): - if port_sai_id in self.if_id_map: - for port_counter_name, rif_counter_name in mibs.RIF_DROPS_AGGR_MAP.items(): - self.if_counters[port_sai_id][port_counter_name] = \ - int(self.if_counters[port_sai_id][port_counter_name]) + \ - int(self.rif_counters[rif_sai_id][rif_counter_name]) - - for vlan_sai_id in self.vlan_name_map: - for port_counter_name, rif_counter_name in mibs.RIF_COUNTERS_AGGR_MAP.items(): - try: - self.if_counters.setdefault(vlan_sai_id, {}) - self.if_counters[vlan_sai_id][port_counter_name] = \ - int(self.rif_counters[vlan_sai_id][rif_counter_name]) - except KeyError as e: - logger.warning("Not able to aggregate counters for {}: {}\n {}".format(vlan_sai_id, rif_counter_name, e)) - def get_counter(self, sub_id, table_name): """ :param sub_id: The 1-based sub-identifier query. @@ -344,13 +287,7 @@ def get_counter(self, sub_id, table_name): counter_value = 0 for lag_member in self.lag_name_if_name_map[self.oid_lag_name_map[oid]]: counter_value += self._get_counter(mibs.get_index(lag_member), table_name) - sai_lag_id = self.lag_sai_map[self.oid_lag_name_map[oid]] - sai_lag_rif_id = self.port_rif_map[sai_lag_id] - if sai_lag_rif_id in self.rif_port_map: - table_name = bytes(getattr(table_name, 'name', table_name), 'utf-8') - if table_name in mibs.RIF_DROPS_AGGR_MAP: - rif_table_name = mibs.RIF_DROPS_AGGR_MAP[table_name] - counter_value += int(self.rif_counters[sai_lag_rif_id][rif_table_name]) + # truncate to 32-bit counter return counter_value & 0x00000000ffffffff else: @@ -380,8 +317,6 @@ def _get_if_entry(self, sub_id): elif oid in self.mgmt_oid_name_map: if_table = mibs.mgmt_if_entry_table(self.mgmt_oid_name_map[oid]) db = mibs.CONFIG_DB - elif oid in self.vlan_oid_name_map: - if_table = mibs.vlan_entry_table(self.vlan_oid_name_map[oid]) elif oid in self.oid_name_map: if_table = mibs.if_entry_table(self.oid_name_map[oid]) else: @@ -486,7 +421,6 @@ def get_if_type(self, sub_id): ethernetCsmacd(6), -- for all ethernet-like interfaces, -- regardless of speed, as per RFC3635 - l3ipvlan(136) -- Layer 3 Virtual LAN using IP ieee8023adLag(161) -- IEEE 802.3ad Link Aggregate """ oid = self.get_oid(sub_id) @@ -495,8 +429,6 @@ def get_if_type(self, sub_id): if oid in self.oid_lag_name_map: return IfTypes.ieee8023adLag - elif oid in self.vlan_oid_name_map: - return IfTypes.l3ipvlan else: return IfTypes.ethernetCsmacd diff --git a/src/sonic_ax_impl/mibs/ietf/rfc2863.py b/src/sonic_ax_impl/mibs/ietf/rfc2863.py index 90d16867e..6e7e1619f 100644 --- a/src/sonic_ax_impl/mibs/ietf/rfc2863.py +++ b/src/sonic_ax_impl/mibs/ietf/rfc2863.py @@ -82,7 +82,7 @@ def reinit_data(self): self.lag_name_if_name_map, \ self.if_name_lag_name_map, \ - self.oid_lag_name_map, _ = Namespace.init_namespace_sync_d_lag_tables(self.db_conn) + self.oid_lag_name_map = Namespace.init_namespace_sync_d_lag_tables(self.db_conn) """ db_conn - will have db_conn to all namespace DBs and global db. First db in the list is global db. diff --git a/src/sonic_ax_impl/mibs/vendor/cisco/ciscoPfcExtMIB.py b/src/sonic_ax_impl/mibs/vendor/cisco/ciscoPfcExtMIB.py index e46ae902d..77ee7f88e 100644 --- a/src/sonic_ax_impl/mibs/vendor/cisco/ciscoPfcExtMIB.py +++ b/src/sonic_ax_impl/mibs/vendor/cisco/ciscoPfcExtMIB.py @@ -51,7 +51,7 @@ def update_data(self): self.lag_name_if_name_map, \ self.if_name_lag_name_map, \ - self.oid_lag_name_map, _ = Namespace.init_namespace_sync_d_lag_tables(self.db_conn) + self.oid_lag_name_map = Namespace.init_namespace_sync_d_lag_tables(self.db_conn) self.if_range = sorted(list(self.oid_sai_map.keys()) + list(self.oid_lag_name_map.keys())) self.if_range = [(i,) for i in self.if_range] diff --git a/tests/mock_tables/asic0/counters_db.json b/tests/mock_tables/asic0/counters_db.json index c54b92074..282a4b952 100644 --- a/tests/mock_tables/asic0/counters_db.json +++ b/tests/mock_tables/asic0/counters_db.json @@ -314,12 +314,6 @@ "COUNTERS_LAG_NAME_MAP": { "PortChannel01": "oid:0x1000000000007" }, - "COUNTERS_RIF_NAME_MAP": { - "PortChannel01": "oid:0x6000000000006" - }, - "COUNTERS_RIF_TYPE_MAP": { - "oid:0x6000000000006": "SAI_ROUTER_INTERFACE_TYPE_PORT" - }, "COUNTERS:oid:0x1000000000004": { "SAI_PORT_STAT_ETHER_STATS_TX_NO_ERRORS": "0", "SAI_PORT_STAT_ETHER_STATS_OVERSIZE_PKTS": "0", diff --git a/tests/mock_tables/asic1/counters_db.json b/tests/mock_tables/asic1/counters_db.json index 3a36d0850..cd56a10fe 100644 --- a/tests/mock_tables/asic1/counters_db.json +++ b/tests/mock_tables/asic1/counters_db.json @@ -110,12 +110,6 @@ "COUNTERS_LAG_NAME_MAP": { "PortChannel02": "oid:0x1000000000012" }, - "COUNTERS_RIF_TYPE_MAP": { - "oid:0x6000000000012": "SAI_ROUTER_INTERFACE_TYPE_PORT" - }, - "COUNTERS_RIF_NAME_MAP": { - "PortChannel02": "oid:0x6000000000012" - }, "COUNTERS:oid:0x1000000000009": { "SAI_PORT_STAT_ETHER_STATS_TX_NO_ERRORS": "0", "SAI_PORT_STAT_ETHER_STATS_OVERSIZE_PKTS": "0", diff --git a/tests/mock_tables/asic2/counters_db.json b/tests/mock_tables/asic2/counters_db.json index 06eb3b2cb..20febebe6 100644 --- a/tests/mock_tables/asic2/counters_db.json +++ b/tests/mock_tables/asic2/counters_db.json @@ -621,12 +621,6 @@ "PortChannel03": "oid:0x1000000000017", "PortChannel04": "oid:0x1000000000018" }, - "COUNTERS_RIF_NAME_MAP": { - "PortChannel03": "oid:0x6000000000017" - }, - "COUNTERS_RIF_TYPE_MAP": { - "oid:0x6000000000017": "SAI_ROUTER_INTERFACE_TYPE_PORT" - }, "COUNTERS_QUEUE_NAME_MAP": { "Ethernet-BP16:0": "oid:0x15000000000330", "Ethernet-BP16:1": "oid:0x15000000000331", diff --git a/tests/mock_tables/asic_db.json b/tests/mock_tables/asic_db.json index f79f5fe01..bdec0aeb5 100644 --- a/tests/mock_tables/asic_db.json +++ b/tests/mock_tables/asic_db.json @@ -16,51 +16,5 @@ "SAI_BRIDGE_PORT_ATTR_TYPE": "SAI_BRIDGE_PORT_TYPE_PORT", "SAI_BRIDGE_PORT_ATTR_PORT_ID": "oid:0x1000000000008", "SAI_BRIDGE_PORT_ATTR_ADMIN_STATE": "true" - }, - "ASIC_STATE:SAI_OBJECT_TYPE_ROUTER_INTERFACE:0x6000000000015": { - "SAI_ROUTER_INTERFACE_ATTR_TYPE": "SAI_ROUTER_INTERFACE_TYPE_PORT", - "SAI_ROUTER_INTERFACE_ATTR_PORT_ID": "oid:0x1000000000015" - }, - "ASIC_STATE:SAI_OBJECT_TYPE_ROUTER_INTERFACE:0x60000000005d0": { - "SAI_ROUTER_INTERFACE_ATTR_TYPE": "SAI_ROUTER_INTERFACE_TYPE_VLAN", - "SAI_ROUTER_INTERFACE_ATTR_VLAN_ID": "oid:0x26000000005d0" - }, - "ASIC_STATE:SAI_OBJECT_TYPE_ROUTER_INTERFACE:0x6000000000006": { - "SAI_ROUTER_INTERFACE_ATTR_TYPE": "SAI_ROUTER_INTERFACE_TYPE_PORT", - "SAI_ROUTER_INTERFACE_ATTR_PORT_ID": "oid:0x2000000000006" - }, - "ASIC_STATE:SAI_OBJECT_TYPE_ROUTER_INTERFACE:0x6000000000005": { - "SAI_ROUTER_INTERFACE_ATTR_TYPE": "SAI_ROUTER_INTERFACE_TYPE_PORT", - "SAI_ROUTER_INTERFACE_ATTR_PORT_ID": "oid:0x2000000000005" - }, - "ASIC_STATE:SAI_OBJECT_TYPE_ROUTER_INTERFACE:0x6000000000004": { - "SAI_ROUTER_INTERFACE_ATTR_TYPE": "SAI_ROUTER_INTERFACE_TYPE_PORT", - "SAI_ROUTER_INTERFACE_ATTR_PORT_ID": "oid:0x2000000000004" - }, - "ASIC_STATE:SAI_OBJECT_TYPE_ROUTER_INTERFACE:0x6000000000003": { - "SAI_ROUTER_INTERFACE_ATTR_TYPE": "SAI_ROUTER_INTERFACE_TYPE_PORT", - "SAI_ROUTER_INTERFACE_ATTR_PORT_ID": "oid:0x2000000000003" - }, - "ASIC_STATE:SAI_OBJECT_TYPE_ROUTER_INTERFACE:oid:0x6000000001abc": { - "SAI_ROUTER_INTERFACE_ATTR_OUTER_VLAN_ID": "101", - "SAI_ROUTER_INTERFACE_ATTR_PORT_ID": "oid:0x1000000000017", - "SAI_ROUTER_INTERFACE_ATTR_TYPE": "SAI_ROUTER_INTERFACE_TYPE_SUB_PORT" - }, - "ASIC_STATE:SAI_OBJECT_TYPE_ROUTER_INTERFACE:oid:0x6000000001abd": { - "SAI_ROUTER_INTERFACE_ATTR_OUTER_VLAN_ID": "102", - "SAI_ROUTER_INTERFACE_ATTR_PORT_ID": "oid:0x1000000000017", - "SAI_ROUTER_INTERFACE_ATTR_TYPE": "SAI_ROUTER_INTERFACE_TYPE_SUB_PORT" - }, - "ASIC_STATE:SAI_OBJECT_TYPE_LAG:oid:0x2000000000006": { - "NULL": "NULL" - }, - "ASIC_STATE:SAI_OBJECT_TYPE_LAG:oid:0x2000000000005": { - "NULL": "NULL" - }, - "ASIC_STATE:SAI_OBJECT_TYPE_LAG:oid:0x2000000000004": { - "NULL": "NULL" - }, - "ASIC_STATE:SAI_OBJECT_TYPE_LAG:oid:0x2000000000003": { - "NULL": "NULL" } } diff --git a/tests/mock_tables/counters_db.json b/tests/mock_tables/counters_db.json index 5003e4f12..0ec1fa1c7 100644 --- a/tests/mock_tables/counters_db.json +++ b/tests/mock_tables/counters_db.json @@ -920,14 +920,14 @@ "COUNTERS:oid:0x1000000000006": { "SAI_PORT_STAT_ETHER_STATS_TX_NO_ERRORS": "0", "SAI_PORT_STAT_ETHER_STATS_OVERSIZE_PKTS": "0", - "SAI_PORT_STAT_IF_OUT_ERRORS": "100", + "SAI_PORT_STAT_IF_OUT_ERRORS": "0", "SAI_PORT_STAT_ETHER_TX_OVERSIZE_PKTS": "0", "SAI_PORT_STAT_ETHER_STATS_PKTS_1519_TO_2047_OCTETS": "0", "SAI_PORT_STAT_IP_IN_RECEIVES": "0", "SAI_PORT_STAT_ETHER_IN_PKTS_64_OCTETS": "0", "SAI_PORT_STAT_IPV6_OUT_UCAST_PKTS": "0", "SAI_PORT_STAT_ETHER_OUT_PKTS_4096_TO_9216_OCTETS": "0", - "SAI_PORT_STAT_IF_IN_ERRORS": "100", + "SAI_PORT_STAT_IF_IN_ERRORS": "0", "SAI_PORT_STAT_ETHER_STATS_PKTS": "0", "SAI_PORT_STAT_ETHER_STATS_BROADCAST_PKTS": "0", "SAI_PORT_STAT_IF_IN_DISCARDS": "0", @@ -959,7 +959,7 @@ "SAI_PORT_STAT_ETHER_STATS_DROP_EVENTS": "0", "SAI_PORT_STAT_IPV6_OUT_MCAST_PKTS": "0", "SAI_PORT_STAT_ETHER_RX_OVERSIZE_PKTS": "0", - "SAI_PORT_STAT_IF_OUT_OCTETS": "100", + "SAI_PORT_STAT_IF_OUT_OCTETS": "0", "SAI_PORT_STAT_IF_IN_NON_UCAST_PKTS": "0", "SAI_PORT_STAT_ETHER_IN_PKTS_9217_TO_16383_OCTETS": "0", "SAI_PORT_STAT_ETHER_OUT_PKTS_1024_TO_1518_OCTETS": "0", @@ -974,17 +974,17 @@ "SAI_PORT_STAT_ETHER_IN_PKTS_256_TO_511_OCTETS": "0", "SAI_PORT_STAT_ETHER_OUT_PKTS_2048_TO_4095_OCTETS": "0", "SAI_PORT_STAT_ETHER_STATS_OCTETS": "0", - "SAI_PORT_STAT_IF_OUT_UCAST_PKTS": "100", + "SAI_PORT_STAT_IF_OUT_UCAST_PKTS": "0", "SAI_PORT_STAT_ETHER_STATS_UNDERSIZE_PKTS": "0", "SAI_PORT_STAT_ETHER_OUT_PKTS_128_TO_255_OCTETS": "0", "SAI_PORT_STAT_ETHER_STATS_PKTS_64_OCTETS": "0", "SAI_PORT_STAT_IP_OUT_OCTETS": "0", - "SAI_PORT_STAT_IF_IN_UCAST_PKTS": "100", + "SAI_PORT_STAT_IF_IN_UCAST_PKTS": "0", "SAI_PORT_STAT_ETHER_OUT_PKTS_9217_TO_16383_OCTETS": "0", "SAI_PORT_STAT_ETHER_IN_PKTS_2048_TO_4095_OCTETS": "0", "SAI_PORT_STAT_IP_OUT_NON_UCAST_PKTS": "0", "SAI_PORT_STAT_ETHER_STATS_JABBERS": "0", - "SAI_PORT_STAT_IF_IN_OCTETS": "100", + "SAI_PORT_STAT_IF_IN_OCTETS": "0", "SAI_PORT_STAT_IPV6_IN_MCAST_PKTS": "0", "SAI_PORT_STAT_ETHER_STATS_PKTS_65_TO_127_OCTETS": "0", "SAI_PORT_STAT_IF_OUT_QLEN": "0", @@ -2278,110 +2278,7 @@ "Ethernet68": "oid:0x1000000000020" }, "COUNTERS_LAG_NAME_MAP": { - "PortChannel01": "oid:0x2000000000006", - "PortChannel02": "oid:0x2000000000005", - "PortChannel03": "oid:0x2000000000004", - "PortChannel04": "oid:0x2000000000003" - }, - "COUNTERS_RIF_NAME_MAP": { - "Ethernet20": "oid:0x6000000000015", - "Ethernet8.101": "oid:0x6000000001abc", - "Ethernet8.102": "oid:0x6000000001abd", - "PortChannel01": "oid:0x6000000000006", - "PortChannel02": "oid:0x6000000000005", - "PortChannel03": "oid:0x6000000000004", - "PortChannel04": "oid:0x6000000000003", - "Vlan1000": "oid:0x60000000005d0" - }, - "COUNTERS_RIF_TYPE_MAP": { - "oid:0x6000000000015": "SAI_ROUTER_INTERFACE_TYPE_PORT", - "oid:0x6000000001abc": "SAI_ROUTER_INTERFACE_TYPE_SUB_PORT", - "oid:0x6000000001abd": "SAI_ROUTER_INTERFACE_TYPE_SUB_PORT", - "oid:0x6000000000006": "SAI_ROUTER_INTERFACE_TYPE_PORT", - "oid:0x6000000000005": "SAI_ROUTER_INTERFACE_TYPE_PORT", - "oid:0x6000000000004": "SAI_ROUTER_INTERFACE_TYPE_PORT", - "oid:0x6000000000003": "SAI_ROUTER_INTERFACE_TYPE_PORT", - "oid:0x60000000005d0": "SAI_ROUTER_INTERFACE_TYPE_VLAN" - }, - "COUNTERS:oid:0x6000000000015": { - "SAI_ROUTER_INTERFACE_STAT_IN_PACKETS": "10", - "SAI_ROUTER_INTERFACE_STAT_IN_OCTETS": "2048", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_PACKETS": "1", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_OCTETS": "55", - "SAI_ROUTER_INTERFACE_STAT_OUT_PACKETS": "20", - "SAI_ROUTER_INTERFACE_STAT_OUT_OCTETS": "4096", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_PACKETS": "2", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_OCTETS": "110" - }, - "COUNTERS:oid:0x60000000005d0": { - "SAI_ROUTER_INTERFACE_STAT_IN_PACKETS": "10", - "SAI_ROUTER_INTERFACE_STAT_IN_OCTETS": "2048", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_PACKETS": "1", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_OCTETS": "55", - "SAI_ROUTER_INTERFACE_STAT_OUT_PACKETS": "20", - "SAI_ROUTER_INTERFACE_STAT_OUT_OCTETS": "4096", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_PACKETS": "2", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_OCTETS": "110" - }, - "COUNTERS:oid:0x6000000000006": { - "SAI_ROUTER_INTERFACE_STAT_IN_PACKETS": "6", - "SAI_ROUTER_INTERFACE_STAT_IN_OCTETS": "116", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_PACKETS": "6", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_OCTETS": "226", - "SAI_ROUTER_INTERFACE_STAT_OUT_PACKETS": "12", - "SAI_ROUTER_INTERFACE_STAT_OUT_OCTETS": "212", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_PACKETS": "6", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_OCTETS": "336" - }, - "COUNTERS:oid:0x6000000000005": { - "SAI_ROUTER_INTERFACE_STAT_IN_PACKETS": "0", - "SAI_ROUTER_INTERFACE_STAT_IN_OCTETS": "0", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_PACKETS": "0", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_OCTETS": "0", - "SAI_ROUTER_INTERFACE_STAT_OUT_PACKETS": "0", - "SAI_ROUTER_INTERFACE_STAT_OUT_OCTETS": "0", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_PACKETS": "0", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_OCTETS": "0" - }, - "COUNTERS:oid:0x6000000000004": { - "SAI_ROUTER_INTERFACE_STAT_IN_PACKETS": "0", - "SAI_ROUTER_INTERFACE_STAT_IN_OCTETS": "0", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_PACKETS": "0", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_OCTETS": "0", - "SAI_ROUTER_INTERFACE_STAT_OUT_PACKETS": "0", - "SAI_ROUTER_INTERFACE_STAT_OUT_OCTETS": "0", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_PACKETS": "0", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_OCTETS": "0" - }, - "COUNTERS:oid:0x6000000001abc": { - "SAI_ROUTER_INTERFACE_STAT_IN_PACKETS": "101", - "SAI_ROUTER_INTERFACE_STAT_IN_OCTETS": "101", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_PACKETS": "101", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_OCTETS": "101", - "SAI_ROUTER_INTERFACE_STAT_OUT_PACKETS": "101", - "SAI_ROUTER_INTERFACE_STAT_OUT_OCTETS": "101", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_PACKETS": "101", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_OCTETS": "101" - }, - "COUNTERS:oid:0x6000000001abd": { - "SAI_ROUTER_INTERFACE_STAT_IN_PACKETS": "102", - "SAI_ROUTER_INTERFACE_STAT_IN_OCTETS": "102", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_PACKETS": "102", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_OCTETS": "102", - "SAI_ROUTER_INTERFACE_STAT_OUT_PACKETS": "102", - "SAI_ROUTER_INTERFACE_STAT_OUT_OCTETS": "102", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_PACKETS": "102", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_OCTETS": "102" - }, - "COUNTERS:oid:0x6000000000003": { - "SAI_ROUTER_INTERFACE_STAT_IN_PACKETS": "0", - "SAI_ROUTER_INTERFACE_STAT_IN_OCTETS": "0", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_PACKETS": "0", - "SAI_ROUTER_INTERFACE_STAT_IN_ERROR_OCTETS": "0", - "SAI_ROUTER_INTERFACE_STAT_OUT_PACKETS": "0", - "SAI_ROUTER_INTERFACE_STAT_OUT_OCTETS": "0", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_PACKETS": "0", - "SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_OCTETS": "0" + "PortChannel01": "oid:0x1000000000023" }, "COUNTERS:oid:0x1000000000009": { "SAI_PORT_STAT_ETHER_STATS_TX_NO_ERRORS": "0", @@ -3100,14 +2997,14 @@ "COUNTERS:oid:0x1000000000015": { "SAI_PORT_STAT_ETHER_STATS_TX_NO_ERRORS": "0", "SAI_PORT_STAT_ETHER_STATS_OVERSIZE_PKTS": "0", - "SAI_PORT_STAT_IF_OUT_ERRORS": "100", + "SAI_PORT_STAT_IF_OUT_ERRORS": "0", "SAI_PORT_STAT_ETHER_TX_OVERSIZE_PKTS": "0", "SAI_PORT_STAT_ETHER_STATS_PKTS_1519_TO_2047_OCTETS": "0", "SAI_PORT_STAT_IP_IN_RECEIVES": "0", "SAI_PORT_STAT_ETHER_IN_PKTS_64_OCTETS": "0", "SAI_PORT_STAT_IPV6_OUT_UCAST_PKTS": "0", "SAI_PORT_STAT_ETHER_OUT_PKTS_4096_TO_9216_OCTETS": "0", - "SAI_PORT_STAT_IF_IN_ERRORS": "100", + "SAI_PORT_STAT_IF_IN_ERRORS": "0", "SAI_PORT_STAT_ETHER_STATS_PKTS": "0", "SAI_PORT_STAT_ETHER_STATS_BROADCAST_PKTS": "0", "SAI_PORT_STAT_IF_IN_DISCARDS": "0", @@ -3139,7 +3036,7 @@ "SAI_PORT_STAT_ETHER_STATS_DROP_EVENTS": "0", "SAI_PORT_STAT_IPV6_OUT_MCAST_PKTS": "0", "SAI_PORT_STAT_ETHER_RX_OVERSIZE_PKTS": "0", - "SAI_PORT_STAT_IF_OUT_OCTETS": "100", + "SAI_PORT_STAT_IF_OUT_OCTETS": "0", "SAI_PORT_STAT_IF_IN_NON_UCAST_PKTS": "0", "SAI_PORT_STAT_ETHER_IN_PKTS_9217_TO_16383_OCTETS": "0", "SAI_PORT_STAT_ETHER_OUT_PKTS_1024_TO_1518_OCTETS": "0", @@ -3154,17 +3051,17 @@ "SAI_PORT_STAT_ETHER_IN_PKTS_256_TO_511_OCTETS": "0", "SAI_PORT_STAT_ETHER_OUT_PKTS_2048_TO_4095_OCTETS": "0", "SAI_PORT_STAT_ETHER_STATS_OCTETS": "0", - "SAI_PORT_STAT_IF_OUT_UCAST_PKTS": "100", + "SAI_PORT_STAT_IF_OUT_UCAST_PKTS": "0", "SAI_PORT_STAT_ETHER_STATS_UNDERSIZE_PKTS": "0", "SAI_PORT_STAT_ETHER_OUT_PKTS_128_TO_255_OCTETS": "0", "SAI_PORT_STAT_ETHER_STATS_PKTS_64_OCTETS": "0", "SAI_PORT_STAT_IP_OUT_OCTETS": "0", - "SAI_PORT_STAT_IF_IN_UCAST_PKTS": "100", + "SAI_PORT_STAT_IF_IN_UCAST_PKTS": "0", "SAI_PORT_STAT_ETHER_OUT_PKTS_9217_TO_16383_OCTETS": "0", "SAI_PORT_STAT_ETHER_IN_PKTS_2048_TO_4095_OCTETS": "0", "SAI_PORT_STAT_IP_OUT_NON_UCAST_PKTS": "0", "SAI_PORT_STAT_ETHER_STATS_JABBERS": "0", - "SAI_PORT_STAT_IF_IN_OCTETS": "100", + "SAI_PORT_STAT_IF_IN_OCTETS": "0", "SAI_PORT_STAT_IPV6_IN_MCAST_PKTS": "0", "SAI_PORT_STAT_ETHER_STATS_PKTS_65_TO_127_OCTETS": "0", "SAI_PORT_STAT_IF_OUT_QLEN": "0", diff --git a/tests/namespace/test_mibs.py b/tests/namespace/test_mibs.py index bf94fb4d6..b461d09ed 100644 --- a/tests/namespace/test_mibs.py +++ b/tests/namespace/test_mibs.py @@ -20,8 +20,7 @@ def test_init_namespace_sync_d_lag_tables(self): lag_name_if_name_map, \ if_name_lag_name_map, \ - oid_lag_name_map, \ - lag_sai_map = Namespace.init_namespace_sync_d_lag_tables(dbs) + oid_lag_name_map = Namespace.init_namespace_sync_d_lag_tables(dbs) #PortChannel in asic0 Namespace self.assertTrue(b"PortChannel01" in lag_name_if_name_map) self.assertTrue(b"Ethernet-BP0" in lag_name_if_name_map[b"PortChannel01"]) diff --git a/tests/test_interfaces.py b/tests/test_interfaces.py index 3e357fb3f..ae4ee53c4 100644 --- a/tests/test_interfaces.py +++ b/tests/test_interfaces.py @@ -365,492 +365,3 @@ def test_in_octets_override(self): self.assertEqual(value0.type_, ValueType.COUNTER_32) self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 10, 1)))) self.assertEqual(value0.data, 54321) - - def test_vlan_iface(self): - """ - Test that vlan interface is present in the MIB - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 1, 2999)) - get_pdu = GetNextPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - encoded = get_pdu.encode() - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.INTEGER) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 1, 3000)))) - self.assertEqual(value0.data, 2999) - - def test_vlan_iface_description(self): - """ - Test vlan interface description (which is simply the name) - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 2, 3000)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - encoded = get_pdu.encode() - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.OCTET_STRING) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 2, 3000)))) - self.assertEqual(str(value0.data), 'Vlan1000') - - def test_if_type_l3vlan(self): - """ - For l3vlan the type shpuld be 136 - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 3, 2000)) - get_pdu = GetNextPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - encoded = get_pdu.encode() - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.INTEGER) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 3, 3000)))) - self.assertEqual(value0.data, 136) - - def test_in_octets_rif(self): - """ - For a port with RIF the counter values are aggregated - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 10, 21)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 10, 21)))) - self.assertEqual(value0.data, 100) - - def test_in_ucast_rif(self): - """ - For a port with RIF the counter values are aggregated - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 11, 21)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 11, 21)))) - self.assertEqual(value0.data, 100) - - def test_in_errors_rif(self): - """ - For a port with RIF the counter values are aggregated - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 14, 21)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 14, 21)))) - self.assertEqual(value0.data, 101) - - def test_out_octets_rif(self): - """ - For a port with RIF the counter values are aggregated - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 16, 21)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 16, 21)))) - self.assertEqual(value0.data, 100) - - def test_out_ucast_rif(self): - """ - For a port with RIF the counter values are aggregated - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 17, 21)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 17, 21)))) - self.assertEqual(value0.data, 100) - - def test_out_errors_rif(self): - """ - For a port with RIF the counter values are aggregated - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 20, 21)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 20, 21)))) - self.assertEqual(value0.data, 102) - - def test_in_octets_vlan(self): - """ - For a l3 Vlan values are mapped from RIF stats - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 10, 3000)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 10, 3000)))) - self.assertEqual(value0.data, 2048) - - def test_in_ucast_vlan(self): - """ - For a l3 Vlan values are mapped from RIF stats - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 11, 3000)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 11, 3000)))) - self.assertEqual(value0.data, 10) - - def test_in_errors_vlan(self): - """ - For a l3 Vlan values are mapped from RIF stats - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 14, 3000)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 14, 3000)))) - self.assertEqual(value0.data, 1) - - def test_out_octets_vlan(self): - """ - For a l3 Vlan values are mapped from RIF stats - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 16, 3000)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 16, 3000)))) - self.assertEqual(value0.data, 4096) - - def test_out_ucast_vlan(self): - """ - For a l3 Vlan values are mapped from RIF stats - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 17, 3000)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 17, 3000)))) - self.assertEqual(value0.data, 20) - - def test_out_errors_vlan(self): - """ - For a l3 Vlan values are mapped from RIF stats - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 20, 3000)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 20, 3000)))) - self.assertEqual(value0.data, 2) - - def test_in_octets_vlan_subinterface(self): - """ - For a port with multiple vlan subinterfaces (RIF) all RIF drops are accumulated - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 10, 9)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 10, 9)))) - self.assertEqual(value0.data, 0) - - def test_in_ucast_vlan_subinterface(self): - """ - For a port with multiple vlan subinterfaces (RIF) all RIF drops are accumulated - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 11, 9)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 11, 9)))) - self.assertEqual(value0.data, 0) - - def test_in_errors_vlan_subinterface(self): - """ - For a port with multiple vlan subinterfaces (RIF) all RIF drops are accumulated - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 14, 9)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 14, 9)))) - self.assertEqual(value0.data, 203) - - def test_out_octets_vlan_subinterface(self): - """ - For a port with multiple vlan subinterfaces (RIF) all RIF drops are accumulated - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 16, 9)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 16, 9)))) - self.assertEqual(value0.data, 0) - - def test_out_ucast_vlan_subinterface(self): - """ - For a port with multiple vlan subinterfaces (RIF) all RIF drops are accumulated - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 17, 9)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 17, 9)))) - self.assertEqual(value0.data, 0) - - def test_out_errors_vlan_subinterface(self): - """ - For a port with multiple vlan subinterfaces (RIF) all RIF drops are accumulated - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 20, 9)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 20, 9)))) - self.assertEqual(value0.data, 203) - - def test_in_octets_portchannel(self): - """ - For a l3 portchannel interface value is accumulated on members plus added Rif counters - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 10, 1001)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 10, 1001)))) - self.assertEqual(value0.data, 100) - - def test_in_ucast_portchannel(self): - """ - For a l3 portchannel interface value is accumulated on members plus added Rif counters - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 11, 1001)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 11, 1001)))) - self.assertEqual(value0.data, 100) - - def test_in_errors_portchannel(self): - """ - For a l3 portchannel interface value is accumulated on members plus added Rif counters - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 14, 1001)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 14, 1001)))) - self.assertEqual(value0.data, 106) - - def test_out_octets_portchannel(self): - """ - For a l3 portchannel interface value is accumulated on members plus added Rif counters - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 16, 1001)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 16, 1001)))) - self.assertEqual(value0.data, 100) - - def test_out_ucast_portchannel(self): - """ - For a l3 portchannel interface value is accumulated on members plus added Rif counters - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 17, 1001)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 17, 1001)))) - self.assertEqual(value0.data, 100) - - def test_out_errors_portchannel(self): - """ - For a l3 portchannel interface value is accumulated on members plus added Rif counters - """ - oid = ObjectIdentifier(11, 0, 0, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 20, 1001)) - get_pdu = GetPDU( - header=PDUHeader(1, PduTypes.GET, 16, 0, 42, 0, 0, 0), - oids=[oid] - ) - - response = get_pdu.make_response(self.lut) - print(response) - - value0 = response.values[0] - self.assertEqual(value0.type_, ValueType.COUNTER_32) - self.assertEqual(str(value0.name), str(ObjectIdentifier(11, 0, 1, 0, (1, 3, 6, 1, 2, 1, 2, 2, 1, 20, 1001)))) - self.assertEqual(value0.data, 106) \ No newline at end of file diff --git a/tests/test_mibs.py b/tests/test_mibs.py index c0df876f9..578eb54ea 100644 --- a/tests/test_mibs.py +++ b/tests/test_mibs.py @@ -20,8 +20,7 @@ def test_init_sync_d_lag_tables(self): lag_name_if_name_map, \ if_name_lag_name_map, \ - oid_lag_name_map, \ - lag_sai_map = Namespace.init_namespace_sync_d_lag_tables(db_conn) + oid_lag_name_map = Namespace.init_namespace_sync_d_lag_tables(db_conn) self.assertTrue(b"PortChannel04" in lag_name_if_name_map) self.assertTrue(lag_name_if_name_map[b"PortChannel04"] == [b"Ethernet124"]) @@ -30,4 +29,3 @@ def test_init_sync_d_lag_tables(self): self.assertTrue(b"PortChannel_Temp" in lag_name_if_name_map) self.assertTrue(lag_name_if_name_map[b"PortChannel_Temp"] == []) - self.assertTrue(lag_sai_map[b"PortChannel01"] == b"2000000000006")