Network Discovery Tool



Similar documents
IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 12, NO. 3, JUNE

Additional Information: A link to the conference website is available at:

Simple Network Management Protocol

Details. Some details on the core concepts:

IP Network Topology Discovery Using SNMP

Topology Discovery in Heterogeneous IP Networks

Configurable device discovery. Belgrade University Computer Centre, Serbia

Configuring SNMP Cisco and/or its affiliates. All rights reserved. 1

Network Documentation & Netdot

Candidates should attempt FOUR questions. All questions carry 25 marks.

Finding Ethernet-Type Network Topology is Not Easy

NON-INTRUSIVE REMOTE MONITORING OF SERVICES IN A DATA CENTRE

IP NETWORK MONITORING AND AUTOMATIC ANOMALY DETECTION

: Interconnecting Cisco Networking Devices Part 1 v2.0 (ICND1)

Avaya Visualization Performance and Fault Manager Discovery Best Practices

PT Activity 8.1.2: Network Discovery and Documentation Topology Diagram

2. What is the maximum value of each octet in an IP address? A. 28 B. 255 C. 256 D. None of the above

Routing Protocols and Concepts Chapter 2 Conceitos de protocolos de Encaminhamento Cap 2

"Charting the Course...

Cisco Change Management: Best Practices White Paper

NetBrain Discovery Appliance Manual

Research Article Volume 6 Issue No. 4

This watermark does not appear in the registered version - SNMP and OpenNMS. Part 1 SNMP.

SNMP-based enterprise IP network topology discovery

ICMP, SNMP: Collaborative Approach to Network Discovery and Monitoring

How To Learn Cisco Cisco Ios And Cisco Vlan

Lab Creating a Logical Network Diagram

Interconnecting Cisco Network Devices 1 Course, Class Outline

Network Discovery Protocol LLDP and LLDP- MED

Network Discovery Protocol LLDP and LLDP- MED

NNMi120 Network Node Manager i Software 9.x Essentials

ECView Pro Network Management System. Installation Guide.

How To Understand and Configure Your Network for IntraVUE

Cisco Discovery 3: Introducing Routing and Switching in the Enterprise hours teaching time

Lab Diagramming Intranet Traffic Flows

Application Notes for Configuring Dorado Software Redcell Enterprise Bundle using SNMP with Avaya Communication Manager - Issue 1.

SAP IT Infrastructure Management. Dirk Smit ALM Engagement Manager SAP Africa

Cisco Certified Network Associate (CCNA) 120 Hours / 12 Months / Self-Paced WIA Fee: $

INTERCONNECTING CISCO NETWORK DEVICES PART 1 V2.0 (ICND 1)

SNMP COMMAND SNMP SNMP [HELP] [COMMUNITY SYSCONTACT SYSLOCATION SYSNAME SYSOBJECID/OID TRAPS LIST]

CompTIA Network+ (Exam N10-005)

Lab 2. CS-335a. Fall 2012 Computer Science Department. Manolis Surligas

ASM Educational Center (ASM) Est. 1992

Graph Theory Applications in Network Security

estpassport Bessere Qualität, bessere Dienstleistungen!

Lab Diagramming External Traffic Flows

Troubleshooting and Maintaining Cisco IP Networks Volume 1

Objectives. Router as a Computer. Router components and their functions. Router components and their functions

IBM Tivoli Network Manager 3.8

What is VLAN Routing?

Correlating different network topology layers in heterogeneous environments

SAP IT Infrastructure Management

TTM 4128 Network and Service Management ( Learning Objectives Specification

Discovering Devices CHAPTER

Question 1. [7 points] Consider the following scenario and assume host H s routing table is the one given below:

Transport and Network Layer

An MPI Tool for Automatically Discovering the Switch Level Topologies of Ethernet Clusters

Configuring a Load-Balancing Scheme

NetBrain Workstation Professional Edition 2.3 Release notes

CS335 Sample Questions for Exam #2

CSE331: Introduction to Networks and Security. Lecture 8 Fall 2006

Configuring and Managing Token Ring Switches Using Cisco s Network Management Products

Lab Use Network Inspector to Observe STP Behavior

CHAPTER 10 LAN REDUNDANCY. Scaling Networks

Welcome to Todd Lammle s CCNA Bootcamp

Internet Packets. Forwarding Datagrams

School of Information Technology and Engineering (SITE) CEG 4395: Computer Network Management

NMS300 Network Management System

Automated Service Discovery for Enterprise Network Management

End-to-End IP Network Measurement for Broadcast Applications

Network Topology. White Paper

Computer Networks I Laboratory Exercise 1

Algorithms for Network Discovery and Detection of MAC and IP Spoofing Security Attacks

White Paper Case Study:

Interconnecting Cisco Networking Devices, Part 1 (ICND1) v3.0

Ethernet Topology Discovery: A Survey

Ethernet-based Software Defined Network (SDN)

"Charting the Course... Implementing Citrix NetScaler 11 for App and Desktop Solutions CNS-207 Course Summary

Network Management & Monitoring Introduction to SNMP

PANDORA FMS NETWORK DEVICE MONITORING

Lightpath Planning and Monitoring

COURSE AGENDA. Lessons - CCNA. CCNA & CCNP - Online Course Agenda. Lesson 1: Internetworking. Lesson 2: Fundamentals of Networking

LAB THREE STATIC ROUTING

Ethernet Topology Discovery: A Survey

hp ProLiant network adapter teaming

IP Addressing and Subnetting. 2002, Cisco Systems, Inc. All rights reserved.

Configuring EtherChannels

PANDORA FMS NETWORK DEVICES MONITORING

SSVVP SIP School VVoIP Professional Certification

Assignment #3 Routing and Network Analysis. CIS3210 Computer Networks. University of Guelph

Configuring a Load-Balancing Scheme

Discovering Devices. The Cisco Prime Collaboration Manager discovery process involves three phases: Access-level discovery Cisco Prime CM:

Cisco ACI Simulator Release Notes, Release 1.2(1i)

Transcription:

Bestin Jose Mahesh Kumar Shyamsunder Computer Science and Engineering Indian Institue of Technology Bombay November 28, 2004

1 Problem Statement 2 Introduction to Netdisco Features of NetDisco 3 4 5

Problem Statement To implement the algorithm which discovers the network topology information and give it to NetDisco tool. Netdisco then uses this information to moniter and manage the network.

Problem Statement To implement the algorithm which discovers the network topology information and give it to NetDisco tool. Netdisco then uses this information to moniter and manage the network.

What is NetDisco Problem Statement Introduction to Netdisco Features of NetDisco Netdisco is an Open Source web-based network management tool. ed for moderate to large networks. Configuration information and connection data for network devices are retrieved using SNMP protocol. With Netdisco you can locate the switch port of an end-user system by IP or MAC address.

Screenshot of NetDisco Introduction to Netdisco Features of NetDisco screenshot_03.jpg (JPEG Image, 640x473 pixels) http://netdisco.org/screenshot_03.jpg

Features of NetDisco Switch Ports Problem Statement Introduction to Netdisco Features of NetDisco Central Location to disable/enable switch ports. MAC Address to switch port resolution IP Address to switch port resolution Find Switch Ports with multiple nodes attached Find nodes using multiple IP addresses

Features contd. Problem Statement Introduction to Netdisco Features of NetDisco Easy Administration: Controllable through Web Interface or Command Line Interface(CLI). Database store for scalability and speed. Easily extendible to new devices. Network Administration and Security: Automatic inventory and search of network hardware. Duplex Mismatch Finder. Layer Two Traceroute.

Features contd. Problem Statement Introduction to Netdisco Features of NetDisco Easy Administration: Controllable through Web Interface or Command Line Interface(CLI). Database store for scalability and speed. Easily extendible to new devices. Network Administration and Security: Automatic inventory and search of network hardware. Duplex Mismatch Finder. Layer Two Traceroute.

Features contd. Problem Statement Introduction to Netdisco Features of NetDisco Reporting: Graphing of network topology. Clickable image-map of devices. Link speed shown. Statistics for number of actual nodes connected to network. Inventory of Network Devices: By Operating System (IOS,CatOS,HP...) By Model, Vendor, OSI Layer, DNS Name Find device ports that are blocking (via Spanning Tree Protocol) Find devices using IP s w/out DNS entries

Features contd. Problem Statement Introduction to Netdisco Features of NetDisco Reporting: Graphing of network topology. Clickable image-map of devices. Link speed shown. Statistics for number of actual nodes connected to network. Inventory of Network Devices: By Operating System (IOS,CatOS,HP...) By Model, Vendor, OSI Layer, DNS Name Find device ports that are blocking (via Spanning Tree Protocol) Find devices using IP s w/out DNS entries

Problem Statement Netdisco autodiscovers devices which support CDP protocol. However, many networks have parts of the topology that are not covered by CDP. We need to fill the information of the devices which does not suppot CDP protocol in netdisco-topology.txt. Our Work To discover the network topology and give the topology information in the format required by Netdisco. For this we will use SNMP protocol.

Problem Statement Netdisco autodiscovers devices which support CDP protocol. However, many networks have parts of the topology that are not covered by CDP. We need to fill the information of the devices which does not suppot CDP protocol in netdisco-topology.txt. Our Work To discover the network topology and give the topology information in the format required by Netdisco. For this we will use SNMP protocol.

format of netdisco-topology.txt file Let s say you have two CDP speaking devices with a non-cdp speaking device in between them. CISCO BAY HP 21 25 26 12 topology file: ciscoswitch.my.company link:21,bayswitch.my.company,25 bayswitch.my.company link:26,hpswitch.my.company,12

Snmp ptotocol Problem Statement SNMP is a protocol designed to give remote management access to a Network device. Features: Enable/disable a port Checks health and performance of the network. Access control. Error statistics etc...

Snmp ptotocol Problem Statement SNMP is a protocol designed to give remote management access to a Network device. Features: Enable/disable a port Checks health and performance of the network. Access control. Error statistics etc...

Idea of the Algorithm Problem Statement 1 Represents the network by a collection of skeleton paths, Q, between pairs of nodes belonging to the same subnet. 2 Iteratively refines Q to provide more accurate topology information for the network.

Idea of the Algorithm Problem Statement 1 Represents the network by a collection of skeleton paths, Q, between pairs of nodes belonging to the same subnet. 2 Iteratively refines Q to provide more accurate topology information for the network.

Flow diagram for the Algorithm IDLE STATE START PATH REFINEMENT STATE Collecting Routers, switches and subnet information REQUIREMENTS GATHERING STATE COMPUTING CONSTRAINTS ON EACH PATH REFINING PATHS Collecting AFT Information comment: REFINING PATHS UNTIL NO REFINEMENT IS POSSIBLE COMPUTING INITIAL SKELETON INFORMATION COMPUTE ACTUAL CONNECTIONS

Router Information Constraints: address You need to know atleast One Router IP Idea: Repeatedly find the neighboring routers of the currently known routers until no new routers are discovered. Implementation: The neighboring routers of a router R are the set of routers that are next hops for some destination in the iproutetable in MIB-II in R. Shell Command: snmpwalk -0s -c public -v 1 10.105.1.250 iproutetable Perl Module: Net::SNMP::Hostinfo module

Router Information Constraints: address You need to know atleast One Router IP Idea: Repeatedly find the neighboring routers of the currently known routers until no new routers are discovered. Implementation: The neighboring routers of a router R are the set of routers that are next hops for some destination in the iproutetable in MIB-II in R. Shell Command: snmpwalk -0s -c public -v 1 10.105.1.250 iproutetable Perl Module: Net::SNMP::Hostinfo module

Router Information Constraints: address You need to know atleast One Router IP Idea: Repeatedly find the neighboring routers of the currently known routers until no new routers are discovered. Implementation: The neighboring routers of a router R are the set of routers that are next hops for some destination in the iproutetable in MIB-II in R. Shell Command: snmpwalk -0s -c public -v 1 10.105.1.250 iproutetable Perl Module: Net::SNMP::Hostinfo module

Router Information Constraints: address You need to know atleast One Router IP Idea: Repeatedly find the neighboring routers of the currently known routers until no new routers are discovered. Implementation: The neighboring routers of a router R are the set of routers that are next hops for some destination in the iproutetable in MIB-II in R. Shell Command: snmpwalk -0s -c public -v 1 10.105.1.250 iproutetable Perl Module: Net::SNMP::Hostinfo module

Router Information Constraints: address You need to know atleast One Router IP Idea: Repeatedly find the neighboring routers of the currently known routers until no new routers are discovered. Implementation: The neighboring routers of a router R are the set of routers that are next hops for some destination in the iproutetable in MIB-II in R. Shell Command: snmpwalk -0s -c public -v 1 10.105.1.250 iproutetable Perl Module: Net::SNMP::Hostinfo module

contd.. Switch Information A interface of the router connects one subnet to the network. Idea: The IP addresses of the subnet can be determined by knowing the IP address of the interface. Implementation: The IP address of the interface is obtained using ipaddrtable in MIB-II. The subnet entities are computed by enumerating the ip addresses in the subnet corresponding to the IP address of the interface. From the ipnettomediatable we can find subnet,mac address, system name and the number of ports. We determine whether a particular ip address is a device by checking ipforwarding flag or system.sysservice variables. Perl Module: Net::SNMP::Hostinfo module

contd.. Switch Information A interface of the router connects one subnet to the network. Idea: The IP addresses of the subnet can be determined by knowing the IP address of the interface. Implementation: The IP address of the interface is obtained using ipaddrtable in MIB-II. The subnet entities are computed by enumerating the ip addresses in the subnet corresponding to the IP address of the interface. From the ipnettomediatable we can find subnet,mac address, system name and the number of ports. We determine whether a particular ip address is a device by checking ipforwarding flag or system.sysservice variables. Perl Module: Net::SNMP::Hostinfo module

contd.. Switch Information A interface of the router connects one subnet to the network. Idea: The IP addresses of the subnet can be determined by knowing the IP address of the interface. Implementation: The IP address of the interface is obtained using ipaddrtable in MIB-II. The subnet entities are computed by enumerating the ip addresses in the subnet corresponding to the IP address of the interface. From the ipnettomediatable we can find subnet,mac address, system name and the number of ports. We determine whether a particular ip address is a device by checking ipforwarding flag or system.sysservice variables. Perl Module: Net::SNMP::Hostinfo module

contd.. Switch Information A interface of the router connects one subnet to the network. Idea: The IP addresses of the subnet can be determined by knowing the IP address of the interface. Implementation: The IP address of the interface is obtained using ipaddrtable in MIB-II. The subnet entities are computed by enumerating the ip addresses in the subnet corresponding to the IP address of the interface. From the ipnettomediatable we can find subnet,mac address, system name and the number of ports. We determine whether a particular ip address is a device by checking ipforwarding flag or system.sysservice variables. Perl Module: Net::SNMP::Hostinfo module

contd.. Switch Information A interface of the router connects one subnet to the network. Idea: The IP addresses of the subnet can be determined by knowing the IP address of the interface. Implementation: The IP address of the interface is obtained using ipaddrtable in MIB-II. The subnet entities are computed by enumerating the ip addresses in the subnet corresponding to the IP address of the interface. From the ipnettomediatable we can find subnet,mac address, system name and the number of ports. We determine whether a particular ip address is a device by checking ipforwarding flag or system.sysservice variables. Perl Module: Net::SNMP::Hostinfo module

contd.. Address Forwarding Table(AFT) information Now we got all the MAC addresses of routers and switch in the system. Every Port of a switch or router has Address forwarding table. Definition: AFT for a port is the set of MAC addresses that have been seen as source addresses on frames received at that port. Constraint: AFT information should be complete. AFT info is complete if it contains MAC addresses of all switches and routers from which frames can be received at that particular port. Implementation: Perl Module SNMP::Info::Bridge.

contd.. Address Forwarding Table(AFT) information Now we got all the MAC addresses of routers and switch in the system. Every Port of a switch or router has Address forwarding table. Definition: AFT for a port is the set of MAC addresses that have been seen as source addresses on frames received at that port. Constraint: AFT information should be complete. AFT info is complete if it contains MAC addresses of all switches and routers from which frames can be received at that particular port. Implementation: Perl Module SNMP::Info::Bridge.

contd.. Address Forwarding Table(AFT) information Now we got all the MAC addresses of routers and switch in the system. Every Port of a switch or router has Address forwarding table. Definition: AFT for a port is the set of MAC addresses that have been seen as source addresses on frames received at that port. Constraint: AFT information should be complete. AFT info is complete if it contains MAC addresses of all switches and routers from which frames can be received at that particular port. Implementation: Perl Module SNMP::Info::Bridge.

contd.. Address Forwarding Table(AFT) information Now we got all the MAC addresses of routers and switch in the system. Every Port of a switch or router has Address forwarding table. Definition: AFT for a port is the set of MAC addresses that have been seen as source addresses on frames received at that port. Constraint: AFT information should be complete. AFT info is complete if it contains MAC addresses of all switches and routers from which frames can be received at that particular port. Implementation: Perl Module SNMP::Info::Bridge.

contd.. Address Forwarding Table(AFT) information Now we got all the MAC addresses of routers and switch in the system. Every Port of a switch or router has Address forwarding table. Definition: AFT for a port is the set of MAC addresses that have been seen as source addresses on frames received at that port. Constraint: AFT information should be complete. AFT info is complete if it contains MAC addresses of all switches and routers from which frames can be received at that particular port. Implementation: Perl Module SNMP::Info::Bridge.

contd.. Address Forwarding Table(AFT) information Now we got all the MAC addresses of routers and switch in the system. Every Port of a switch or router has Address forwarding table. Definition: AFT for a port is the set of MAC addresses that have been seen as source addresses on frames received at that port. Constraint: AFT information should be complete. AFT info is complete if it contains MAC addresses of all switches and routers from which frames can be received at that particular port. Implementation: Perl Module SNMP::Info::Bridge.

Original Network Topology Problem Statement x 1 2 e 3 f 1 r s 1 1 1 a 2 1 1 2 b 1 q 1 c 2 1 y 1 1 d f 1 1 b

contd. Problem Statement s1 a1, a2, b1, b2, c1,c2, d1,d2 t1 S1 a1, a2, b1, b2, c1, c2, d1, d2 T1 x1 b1, b2,c1,c2, e2,e1 y1 X1 E2 e1 b1, b2, c1, c2 y1 u1 b1, b2, c1, c2, d1, d2, e3, e1 v1 u1 e2 e1 b1, b2 c1, c2 d1 d2 v1 r1 a1, a2, b1, b2 q1 r1 a1, a2, b1, b2 q1 Skeleton Paths After first Iteration

contd. Problem Statement s1 a1 a2 b1 b2 c1 c2 d1 d2 t1 x1 e1 e2 b1, b2, c1,c2 y1 u1 e2 e1 b1, b2, c1, c2 d1 d2 v1 r1 a1, a2, b1,b2 q1 After second iteration

contd. Problem Statement s1 a1 a2 b1 b2 c1 c2 d1 d2 t1 x1 e1 e2 b1 b2 c1 c2 y1 u1 e2 e1 b1 b2 c1 c2 d1 d2 v1 r1 a1 a2 b1 b2 q1 After third iteration

contd. Problem Statement r1 e1 q1 a1 a2 b1 b2 c1 s1 d1 u1 e2 x1 c2 y1 d2 Resulting Connections t1 e3 u1

We will be using perl language for implementation. The perl modules which will be used are: NET::SNMP Net::SNMP is a collection of various tools relating to the snmp including: An SNMP library Tools to request or set information from SNMP agents. Tools to generate and handle SNMP traps etc.. FUNCTIONS: snmpget, snmpset, snmpwalk, snmpgetnext, snmpstatus snmpnetstat, snmptable, snmptranslate etc...

contd. SNMP::INFO Perl5 module to network devices through snmp. SNMP::INFO gives an object oriented interface to information obtained through SNMP. SUB-CLASSES: SNMP::INFO::BRIDGE, SNMP::INFO::CDP, SNMP::INFO::ETHERLIKE, SNMP::INFO::LAYER1 SNMP::INFO::LAYER2, SNMP::INFO::LAYER3, SNMP::INFO::MAU METHODS: device type(), uptime(), name(), ports(), interfaces() etc...

References Problem Statement 1 Physical Topology Discovery for Large Multi-Subnet Networks. Yigal Bejerano, Yuri Breitbart, Minos Garofalakis, Rajeev Rastogi. Bell Labs, Lucent Technologies 2 Topology Discovery in Heterogeneous IP Networks. Yuri Breitbart, Minos Garofalakis, Cliff Martin, Rajeev Rastogi, S. Seshadri, Avi Silberschatz. Information Sciences Research Center Bell Labs, Lucent Technologies. 3 www.netdisco.org 4 www.net-snmp.org 5 http://snmp-info.sourceforge.net 6 http://www.cpan.org/modules/by-module/snmp/ 7 http://www.switch.ch/misc/leinen/snmp/perl