Skip to main content

Netshow is Network Abstraction Software. It is optimized to collect core networking data from devices that contain many network interfaces.

The netshow core respository has 2 main components:

netshow-core-lib:

This is core library for retrieving network information from a device and abstracting it into Python objects.

Its core module is called netshowlib. It contains a few high levels such as iface() and system_summary(), that when called, this calls a provider that retrieves the information from the system.

A provider is module that interacts with the base system and converts relevant network information into python objects. For example, the Linux provider, when the netshow-core-lib iface() is called, can retrieve network information like MTU, speed, IP address from device running a Linux kernel.

Example:

With the Linux provider, retrieve details about the eth1 interface

import netshowlib.netshowlib as nn
eth1 = nn.iface('eth1')
>>> eth1.ip_address.allentries
[u'192.168.50.11/24']
>>> eth1.lldp
[{'adj_port': 'swp4', 'adj_mgmt_ip': '192.168.121.242', 'adj_hostname':
'clswitch'}]
>>> eth1.is_trunk()
True
>>> eth1.is_l3()
True
>>>

netshow-core:

Netshow is responsible printing and analysing the information collected from the library component of netshow. netshow-core is the core component of this functionality and uses providers (plugins) to properly print and analyse gathered by the netshowlib component of the provider(plugin). For example, the print_iface wrapper class in the Linux netshow provider, is responsible for printing linux network information collected by the Linux provider netshowlib modules.

Example

--------------------------------------------------------------------
To view the legend,  rerun "netshow" cmd with the  "--legend" option
--------------------------------------------------------------------
    Name            Speed    MTU    Mode       Summary
--  --------------  -------  -----  ---------  ----------------------------------------------------------------
UP  br-mgmt         N/A      1500   Bridge/L3  IP: 192.168.20.11/24
                                               802.1q Tag: 20
                                               STP: Disabled
                                               Untagged Members: veth5WQUVA, veth6WQOHK, veth9QKURD, vethC7T63I
                                               vethCJVLB0, vethCNHO6U, vethDH3HJN, vethIL9QSD
                                               vethJE59U0, vethKHX7YP, vethLWHN0S, vethMLNDOE
                                               vethQUF6ME, vethSNCPD3, vethUI07YQ, vethVN2PUS
                                               vethX4O674, vethYWI604
                                               Tagged Members: eth1
UP  br-vlan         N/A      1500   Bridge/L2  802.1q Tag: Untagged
                                               STP: Disabled
                                               Untagged Members: vethMALSDL
UP  brq087285e9-e4  N/A      1500   Bridge/L2  802.1q Tag: 20
                                               STP: Disabled
                                               Untagged Members: tap141463e6-4e, tapfa96896f-f0
                                               Tagged Members: eth2
UP  lxcbr0          N/A      1500   Bridge/L3  IP: 10.0.3.1/24
                                               802.1q Tag: Untagged
                                               STP: Disabled
                                               Untagged Members: veth2NPR41, veth4RRO82, veth67W8CB, veth8FTEPM
                                               veth9AVA9R, vethA6S7T7, vethCEP462, vethD2U7GF
                                               vethD4TJV0, vethHX8KQC, vethKIP4S8, vethL4R007
                                               vethOEYR65, vethPSLRGF, vethRQYX9H, vethVAUL56
                                               vethXC6NM4, vethYTPAWP

Contributing

  1. Fork it.

  2. Create your feature branch (git checkout -b my-new-feature).

  3. Commit your changes (git commit -am 'Add some feature').

  4. Push to the branch (git push origin my-new-feature).

  5. Create new Pull Request.

License and Authors

Author:: Cumulus Networks Inc.

Copyright:: 2015 Cumulus Networks Inc.

Cumulus icon

Cumulus Linux

Cumulus Linux is a software distribution that runs on top of industry standard networking hardware. It enables the latest Linux applications and automation tools on networking gear while delivering new levels of innovation and flexibility to the data center.

For further details please see: cumulusnetworks.com

This project is licensed under the GNU General Public License, Version 2.0

Metadata

Release files for netshow-core 1.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for netshow-core 1.1.3
File Size Uploaded
netshow-core-1.1.3.tar.gz 8.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for netshow-core 1.1.3
File Interpreter ABI Platform
netshow_core-1.1.3-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 17.6 kB

Release files / netshow-core-1.1.3.tar.gz

Download URL netshow-core-1.1.3.tar.gz
Size 8.6 kB
Tags Source
SHA-256 checksum
How to use checksums
6f16904ffb3744001fd9f18667112ed7cd7ff17c98f57d0f48b5ebd821fbecc6
BLAKE2b-256 checksum
How to use checksums
179e0661987e7ae95a97db684583bcd5510a7ed21dfad88ba4c585d5db5fbe81
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / netshow_core-1.1.3-py2.py3-none-any.whl

Download URL netshow_core-1.1.3-py2.py3-none-any.whl
Size 9.0 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
f645b9205027b3d4ce27a0859ddde93caca31171d79d5d2b2b500b9a1b692c2b
BLAKE2b-256 checksum
How to use checksums
bb92b97ea53c3b26589c58e1c1302c046bf4c6d512ec41fb44266dbcc39218cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.1.3 This release

2 release files

1.1.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page