NOC 20.3¶
20.3 release contains 271 bugfixes, optimisations and improvements.
Highlights¶
Biosegmentation¶
NOC 20.3 introduces new ad-hoc auto-segmentation algorithm we'd called Biosegmentation for its similarity with famous "Osmosys" game. Each Managed Object starts with its very own "floating" segment, or "bubble". Bubbles collide each other in series of neighboring events, like new links found. Each collision leads to a "trial", when rivaling segments have to prove their power and appeal to the policies and to the rules.
The winner of contest may consume all looser's objects and gains ever more power. During to collision with already established network segment hierarchy, called "persistent" segment, bubble can ever join to one of existing segment, or to became persistent segment by itself.
Biosegmentation can effectively reveal network segment hierarchy by analyzing existing or newly found links.
ConfDB Improvements¶
ConfDB got new syntax support for:
- LAG
- AAA
- DNS
Normalizers have been covered by common testing framework, increasing overall code quality and developers productivity.
Stencil Overlays¶
Network map got capability to denote object's shapes with additional small glyphs, basing on object, profiles or project settings. i.e. all objects related to particular project or to particular role in the network may have additional indication.
New features¶
MR | Title |
---|---|
MR3478 | Sentry: Change client |
MR3686 | add api for check is logged |
MR3795 | sa.managedobject: Manual interface creation/deletion |
MR3814 | noc/noc#1318 Add LAG to ConfDB syntax. |
MR3841 | Network Map: Stencil overlays |
MR3893 | Font and Glyph collections |
MR3904 | ManagedObject: Project |
MR3960 | Update Maintenance functional |
MR3995 | Add New profile STerra Gate |
MR4002 | Add new Profile Kontinent |
MR4012 | Add group Object metrics in Card |
MR4022 | Add metrics for Gate. |
MR4118 | Biosegmentation |
MR4154 | tag tree widget |
MR4169 | Add Eltex MES24xx mib |
MR4176 | Update gates metrics name |
MR4179 | Fix graph_interface_load_lag.j2 view sum iface load |
Improvements¶
MR | Title |
---|---|
MR3380 | Add some help hints |
MR3506 | #1331 Unified requirements.txt |
MR3815 | Add aggregated interface and LACP protocol to Interface and Caps Discovery. |
MR3816 | noc/noc#1319 Add cli_retries_unprivileged_mode params. Fix retry unprivileged mode. |
MR3842 | Add SysUptime metric type. |
MR3843 | Set enable_timedelta to true on Interface PM scope. |
MR3843 | Set enable_timedelta to true on Interface PM scope. |
MR3849 | Add BI dashboards to collections. |
MR3873 | noc/noc#1325 Add downlinks of uplink to rca_neighbors. |
MR3879 | Replace get_fqdn script to Generic. |
MR3892 | noc/noc#1327 Add DefaultInterfaceUntaggedVlanApplicator to ConfDB applicators. |
MR3895 | Replace get_fqdn script to Generic #2 |
MR3897 | datastream: asyncio waiter |
MR3898 | Fix upload docs |
MR3900 | atomicl 1.1.0 |
MR3907 | add_new_objectmodels_Zyxel_MSAN |
MR3916 | Add some cisco models |
MR3918 | Merge branch 'fix-docker-image-proj' into 'master' |
MR3921 | features.use_uvloop config option |
MR3922 | add_objectmodels_cisco_c3560e |
MR3933 | add_objectmodels_dlink_DAS-3224DC_1 |
MR3934 | add_objectmodels_zhone_paradyne |
MR3940 | add_objectmodels_Extreme_X480-24x |
MR3941 | Add RCA type field to Alarms BI model. |
MR3945 | Add batch to fix_object_uplinks. |
MR3956 | add_objectmodels_ciscoASR1004_card |
MR3964 | Disable action button in grid, when we have not permission |
MR3965 | Allow empty platform for etl portmapper. |
MR3968 | add_profilecheckrules_Eltex_TAU |
MR3969 | add_profilecheckrules_SKS |
MR3972 | inv.objectmodels: Cisco | 4500X | C4KX-PWR-750AC-F |
MR3985 | How to share collections |
MR3988 | Add howto to menu |
MR3996 | inv.objectmodels: Eltex | RG | RG-1412G-Wac |
MR4003 | inv.objectmodels: Extreme | Summit | X670-48x |
MR4004 | Update PWR-550W-AC.json |
MR4005 | inv.connectiontypes: Extreme | Summit | X650 | FAN |
MR4006 | inv.objectmodels: Extreme | Summit | X650 | FAN-FB |
MR4007 | inv.objectmodels: Extreme | Summit | X650-24x |
MR4017 | Update DGS-3420-28TC.json |
MR4018 | inv.objectmodels: Juniper | EX | EX3200-24T |
MR4029 | Update JPSU-650W-AC-AFO.json |
MR4030 | inv.connectiontypes: Juniper | MX | MX204 Fan |
MR4031 | inv.objectmodels: Juniper | MX | SCB-MX204 |
MR4032 | inv.objectmodels: Juniper | MX | MX204 |
MR4033 | ADd dependencies scan |
MR4034 | inv.objectmodels: APC | SmartUPS | 2200 |
MR4036 | inv.objectmodels: Cisco | C2960 | WS-C2960RX-48LPS-L |
MR4037 | inv.objectmodels: Cisco | C2960 | WS-C2960RX-48LPD-L |
MR4038 | inv.objectmodels: Cisco | C2960 | WS-C2960RX-48FPD-L |
MR4039 | inv.objectmodels: Cisco | C2960 | WS-C2960RX-24TS-L |
MR4041 | inv.objectmodels: Cisco | ISR | Module | VIC3-4FXS/DID |
MR4042 | inv.objectmodels: Cisco | Transceiver | 1G | TRPUG1CLXECISE2G |
MR4043 | inv.objectmodels: MikroTik | RouterBoard | RB2011UiAS-2HnD |
MR4044 | inv.objectmodels: Nateks | NetXpert | NetXpert NX-3408 V1 |
MR4045 | inv.objectmodels: Nateks | NetXpert | NetXpert NX-3424 V2 |
MR4046 | inv.objectmodels: Ubiquiti | AP | PowerBeam 5AC 400 |
MR4047 | inv.objectmodels: Ubiquiti | AP | PowerBeam 5AC 400 ISO |
MR4051 | inv.objectmodels: Cisco | C3850 | C3850-NM-2-40G |
MR4053 | inv.objectmodels: Cisco | PWR | PWR-C1-715WAC |
MR4055 | Remove useless options and add changes rule. |
MR4057 | Add more platforms |
MR4059 | Add segment_lookup for segment column on ReportObjectDetail. |
MR4063 | enable dependency test only when file is changed |
MR4064 | inv.objectmodels: Cisco | C2960 | WS-C2960XR-48LPS-I |
MR4065 | inv.objectmodels: Cisco | C2960 | WS-C2960-48PST-S |
MR4067 | noc/noc#1346 Filter metric if it value eq SNMP_OVERLOAD_VALUE. |
MR4071 | inv.connectionrules: Cisco | C3850 |
MR4072 | inv.connectiontypes: Cisco | Electrical | StackWise 480 |
MR4073 | inv.objectmodels: Cisco | C3850 | WS-C3850-24XS-S |
MR4074 | inv.objectmodels: Cisco | C3850 | STACK-T1-50CM |
MR4075 | inv.connectiontypes: Cisco | C3850 | NM |
MR4076 | inv.connectiontypes: Cisco | C3850 | PSU |
MR4077 | inv.connectiontypes: Cisco | C3850 | STACKPORT |
MR4083 | Update list of datastreams in fix_rebuild_datastream |
MR4085 | etl: BaseExtractor refactoring |
MR4086 | sa.profilecheckrules: DLink | DES-7206 sysObjectID |
MR4087 | sa.profilecheckrules: Huawei | MA | MA5800-X17 sysObjectID |
MR4088 | sa.profilecheckrules: Huawei | MA | MA5800-X7 sysObjectID |
MR4088 | sa.profilecheckrules: Huawei | MA | MA5800-X7 sysObjectID |
MR4105 | inv.models.platform: Fix to_json sorting |
MR4113 | sa.profilecheckrules: Eltex | MA | MA4000 sysObjectID |
MR4115 | sa.profilecheckrules: DCN | DCWS | DCWS-6222 sysObjectID |
MR4116 | sa.profilecheckrules: DCN | DCWS | DCWS-6002 sysObjectID |
MR4117 | sa.profilecheckrules: DCN | DCWS | DCWS-6028(R2) sysObjectID |
MR4125 | pymongo 3.11.0 |
MR4137 | sa.profilecheckrules tests |
MR4140 | noc/noc#1328 Add vlan_ids to unit ConfDB syntax. |
MR4146 | fix_reportmaxmetrics |
MR4148 | noc/noc#1342 Add VPN Metric Scope. |
MR4149 | etl: Configurable compression |
MR4150 | Fix get_version.py for DCWS-6028(R2) |
MR4151 | noc/noc#1218 CLI: Distinct timeout error codes |
MR4162 | #1362 ConfDB: Group expansion in curly tokenizer |
MR4163 | noc/noc#1360 Add aaa to system confdb syntax. |
MR4164 | noc/noc#1361 Add dns to protocols confdb syntax. |
MR4165 | Add vlan_ids to interface discovery ConfDB source. |
MR4166 | Fix ReportObjectDetail trace when empty segment name. |
MR4167 | SNMP: Better oid wrap detection in GETNEXT |
MR4170 | #1361 confdb: Juniper.JUNOS dns normalizer |
MR4172 | confdb: Profile normalizer tests |
MR4175 | ConfDB: Allow normalizer inheritance |
MR4182 | Update uplinks if MergeDownlink status changed. |
MR4183 | #1364 Biosegmentation: Configurable segment names |
MR4184 | Remove autogenerated words |
MR4185 | Move Tornado-specific parts into TornadoService |
MR4190 | pynsq 0.9.0 |
MR4192 | Allow to use model id in DocumentReferenceField |
MR4208 | ConfDB: Expose profile to normalizer tests |
MR4210 | Optimized run_sync |
MR4212 | Fix UI style for ConfDB query name. |
MR4212 | Fix UI style for ConfDB query name. |
MR4215 | noc/noc#1365 Close CLI stream if 'Connection reset' receive. |
MR4219 | Set black format to py37 |
MR4220 | Move pylint configuration to pyproject.toml file |
MR4224 | gitlab ci: Do not try to lint deleted files |
MR4226 | Parallel build of docs. Disable API docs |
MR4227 | Minimize line-length to 100 like in black |
Bugfixes¶
MR | Title |
---|---|
MR3784 | Fix docker image build |
MR3791 | Fix encoding on ReportLinkDetail. |
MR3792 | Fix load cmibs from custom. |
MR3797 | Fix decoding on interfacepath card. |
MR3800 | Fix tags lookup search. |
MR3801 | Remove double fm_pool from managedobject etl loader. |
MR3831 | noc/noc#1322 Fix duplicate session when self.cli use on Profile.shutdown_session. |
MR3860 | Fix fix_link_all_objects. |
MR3862 | Add cpestatus field to ReportDiscoveryResult reportdatasource. |
MR3867 | Fix 'CronTab' object is not an iterator trace. |
MR3872 | Fix trap decode ('use a string pattern on a bytes-like object'). |
MR3875 | Fix 'Juniper | JUNOS | Security | Authentication | SNMP Authentication Failure... |
MR3878 | Add filter id None values on datastream command. |
MR3880 | Fix encoding on classifier fm_unescape function. |
MR3890 | Fix typo on CollapseTagged Applicator. |
MR3910 | Fix monmap card 'not supported between instances of 'int' and 'NoneType''. |
MR3911 | Fix sorted key in ConfDB 'interfaces X meta link'. |
MR3942 | Fix sorted key in BI Dashboard access. |
MR3943 | Add suppress_trace flag to IOLoopContext. |
MR3953 | Disable check access_preference SNMP for get_version script. |
MR3977 | Fix grafana templates id |
MR4048 | noc/noc#1343 Use ListField for inheritance on PlainReferenceListField. Fixed extend change on field. |
MR4056 | noc/noc#1345 Fix 'RuntimeError: no running event loop' on Datastream notify callback. |
MR4080 | combobox fix |
MR4090 | Fix getting object metrics for table without path column. |
MR4096 | Set uuid when create BI dashboard. |
MR4098 | Fix typo in pm.utils. |
MR4101 | Revert PlainReferenceListField. |
MR4124 | #1333 Change AS.asn type to bigint to extend valid 32-bit ASN range |
MR4127 | noc/noc#1343 Use BaseList from mongoengine.base.datastructures for PlainReferenceListField value. |
MR4128 | noc/noc#1344 Use smart_text on fix tags. |
MR4129 | noc/noc#1337 Use smart_bytes on threshold picker load. |
MR4139 | Generic.get_interfaces. Fix mtu None value trace. |
MR4157 | noc/noc#1324 Catch exception when shutdown_session when remove session. |
MR4158 | Fix call handler on cli object_parser. |
MR4171 | docs: Fix actual arguments in tools |
MR4173 | noc/noc#1350 Fix datastream rebuild None id trace. |
MR4197 | Add ifdescr to ReporDiscoveryResult. |
MR4207 | Fix table name for routingneighbors BI models. |
MR4216 | field biosseg_floating_parent_segment fixed |
Code Cleanup¶
MR | Title |
---|---|
MR3462 | cython language_level |
MR3630 | Fix Fav Filter |
MR3779 | Update VERSION |
MR3835 | Remove pyclips |
MR3845 | Cleanup cm.ObjecFact on managedobject on_delete_check. |
MR3851 | Remove main.probehandler.LookupField |
MR3896 | Remove OrderMap |
MR3919 | Remove "import json" from noc.lib.app.site |
MR3971 | Update iface handler |
MR4126 | Remove remaining __future__ imports |
MR4134 | Replace collections.Iterable with typing.Iterable |
MR4177 | Replace deprecated imp.new_module() function |
Profile Changes¶
Alcatel.7302¶
MR | Title |
---|---|
MR3828 | Alcatel.7302.get_version. Fix platform detect. |
MR4211 | Alcatel.7302. Fix for 7342 PON platform. |
Alsitec.24xx¶
MR | Title |
---|---|
MR3821 | Alstec.24xx.get_fqdn. Cleanup print. |
Cisco.IOS¶
MR | Title |
---|---|
MR3802 | Cisco.IOS. Add Dial-peer interface to convert_interface_name. |
MR3846 | Add voice interface to Cisco.IOS.convert_interface_name. |
MR3908 | Use MIB to get CDP status, instead of raw oid |
MR3917 | Fix Cisco.IOS.get_inventory script |
MR4066 | Fix Cisco.IOS.get_inventory script |
MR4130 | noc/noc#1339 Cisco.IOS.normalizer. Fix digit multi on storm-control level command. |
MR4147 | noc/noc#1339 Cisco.IOS.normalizer. Fix typo |
DLink.DxS¶
MR | Title |
---|---|
MR4089 | Add DLink.DxS.get_metrics script |
Eltex.MES¶
MR | Title |
---|---|
MR4204 | ConfDB Eltex.MES |
Eltex.MES24xx¶
MR | Title |
---|---|
MR3950 | Eltex.MES24xx. Add support SNMP to profile. |
MR4106 | Fix Eltex.MES24xx.get_lldp_neighbors script |
MR4155 | Add metrics CPU/Memory for MES24xx |
MR4181 | ConfDB. MES24xx. normalizer + tests |
Extreme.XOS¶
MR | Title |
---|---|
MR4112 | Fix Extreme.XOS.get_inventory script |
Generic¶
MR | Title |
---|---|
MR3781 | Generic.get_interfaces. Fix getting switchport vlans. |
MR3819 | Generic.get_interfaces. Fix get_snmp_timeout method. |
MR3834 | Generic.get_interface_properties. Add interface_filter method for ignore interface by name. |
MR3855 | Fix invalid vlan number in Generic.get_mac_address_table script |
MR3935 | Fix Generic.get_interfaces script |
MR3944 | Generic.get_mac_address_table. Add get_iface_mapping method. |
MR4109 | noc/noc#1349 Generic.get_interfaces. Fix trace when empty mtu |
MR4111 | Fix Generic.get_mpls_vpn script |
MR4202 | Generic.get_spanning_tree. Convert designated_port_id to hex if getting int. |
Hikvision.DSKV8¶
MR | Title |
---|---|
MR3870 | Hikvision.DSKV8.get_config. Fix dict iteritems. |
Huawei.MA5600T¶
MR | Title |
---|---|
MR2363 | Add Operation error to Huawei.MA5600T when message. |
MR3796 | Huawei.MA5600T.get_capabilities set keep_cli_session to false. |
MR3827 | Huawei.MA5600T.get_inventory. Fix detect MA5603. |
MR3854 | Huawei.MA5600T.get_cpe_status. Fix decode serial. |
MR3920 | Huawei.MA5600T. Add pattern_more prompt. |
MR3991 | Fix CLI Huawei.MA5600T.get_lldp_neighbors |
MR4061 | Huawei.MA5600T. Add Load OID for GPON interface metrics. |
MR4103 | Huawei.MA5600T. Fix typo on gponports metric name. |
MR4110 | Fix Huawei.MA5600T profile |
Huawei.VRP¶
MR | Title |
---|---|
MR3780 | Fix Huawei vrp 40g interface support |
MR3783 | Huawei.VRP.get_interfaces. Remove print. |
MR3810 | Huawei.VRP. ConfDB normalizer for ipv6 link-local address. |
MR3822 | Huawei.VRP. Add LAG interface to ConfDB normalizer. |
MR3886 | Huawei.VRP. Add Gi to convert_interface_name. |
MR3951 | Huawei.VRP. Fix several snmp only working problems. |
MR4013 | noc/noc#1163 Huawei.VRP. Add rogue_chars to profile. |
MR4142 | noc/noc#1163 Huawei.VRP.get_metrics. Use getnext for CX200 DuplexStatus. |
MR4201 | Huawei.VRP. ConfDB normalizer. Add parse vlan_ids. |
Juniper.JUNOS¶
MR | Title |
---|---|
MR3703 | fix for JUNOS: get_version.py - get serial number from CLI |
MR3772 | Fix invalid output in JUNOS 16.1R6.7 |
MR3853 | Fix Juniper.JUNOS.get_fqdn script |
MR3936 | Fix script for only snmp connection |
MR3937 | Fix script for only snmp connection2 |
MR3939 | Add use of filter_interface() function |
MR4024 | Fix Juniper.JUNOS.get_interfaces script |
MikroTik.RouterOS¶
MR | Title |
---|---|
MR3902 | Add SNMP support for MikroTik.RouterOS.get_fqdn script |
NAG.SNR¶
MR | Title |
---|---|
MR3857 | Fix NAG.SNR.get_version script |
Qtech.QSW¶
MR | Title |
---|---|
MR3905 | new_objectmodels_qtech_part4 |
Raisecom.ROS¶
MR | Title |
---|---|
MR3832 | Raisecom.ROS.get_version. Fix version regex for Gazelle platform. |
MR4107 | Fix Raisecom.ROS.get_lldp_neighbors script |
MR4136 | noc/noc#1162 Raisecom.ROS profile. Fix convert iface name for SNMP ifDescr format. |
SKS.SKS¶
MR | Title |
---|---|
MR3782 | SKS.SKS. Add SNMP support. |
MR3807 | SKS.SKS. Fix convert interface name on LLDP. |
Ubiquiti.AirOS¶
MR | Title |
---|---|
MR3028 | Add ubiquiti/wa support |
MR4010 | Fix get_interface |
Zyxel.MSAN¶
MR | Title |
---|---|
MR3906 | fix_profile_Zyxel_MSAN |
rare¶
MR | Title |
---|---|
MR3785 | Alstec.MSPU.get_interfaces. Fix 'port ' command. |
MR3806 | Qtech.QSW8200. Add SNMP support. |
MR3808 | DCN.DCWL.get_metrics. Fix CPU Usage. |
MR3820 | Qtech.QSW8200.get_version. Fix bootprom detect on SNMP. |
MR3844 | Update Dlink.DxS_Smart profile to support DGS-1210 rev. F1 series |
MR3858 | Fix Eltex.LTP.get_version script |
MR3859 | Fix Huawei.MA5300.get_interfaces script |
MR3861 | Add get_fqdn scripts. |
MR3924 | Rotek.RTBSv1.get_interfaces. Fix subinterfaces. |
MR3931 | Fix Eltex.LTP.get_mac_address_table script |
MR3952 | Iskratel.MBAN.get_version. Fix regex for SHDSL board. |
MR3958 | TPLink.T2600G. Add SNMP support. |
MR3959 | Vector.Lamda. Add SNMP Support. |
MR3961 | Fix Proscend.SHDSL.get_chassis_id script |
MR4023 | Fix DLink.DxS_Cisco_CLI.get_lldp_neighbors script |
MR4062 | Fix DLink.DxS_Cisco_CLI.get_lldp_neighbors script |
MR4078 | Fix Planet.WGSD.get_interfaces script |
MR4093 | Fix ZTE.ZXA10.get_interfaces script |
MR4095 | Fix Eltex.DSLAM profile |
MR4108 | Fix Eltex.LTE.get_version script |
MR4206 | ConfDB normalizer Raisecom.RCIOS + tests. |