Network Hosts Analyzer
description
Transcript of Network Hosts Analyzer
Network HostsNetwork Hosts
AnalyzerAnalyzer
Hadas Shumovitch shumoviz@t2Elad Levi seladlvy@t2 Tal Katz sdew@t2
Presentation LayoutPresentation Layout
BackgroundBackground Program outlineProgram outline Cache refresh algorithmCache refresh algorithm User InterfaceUser Interface Points for ExtensionPoints for Extension
BackgroundBackground
The Computer Science faculty has hundreds of The Computer Science faculty has hundreds of computers and users. computers and users.
There is a need for a program to monitor and There is a need for a program to monitor and supervise all of the computers.supervise all of the computers.
There are programs available, but they are very There are programs available, but they are very expensive. expensive.
Background - continuedBackground - continued
Our goal is to design a scalable, Our goal is to design a scalable, configurable monitoring system which configurable monitoring system which answers the faculty needs and is easy to answers the faculty needs and is easy to use.use.
Program outlineProgram outline
The program handles two threads.The program handles two threads. One thread is responsible for interaction One thread is responsible for interaction
with the user, while the other is with the user, while the other is responsible for updating the system’s responsible for updating the system’s cache.cache.
Program outlineProgram outline
In order to reduce the amount of communication In order to reduce the amount of communication through the faculty network, and reduce the through the faculty network, and reduce the program response time, we’ll maintain a cache.program response time, we’ll maintain a cache.
The cache keeps the information about the The cache keeps the information about the faculty computers and floors switches.faculty computers and floors switches.
The updating frequency of the cache is defined The updating frequency of the cache is defined by the user. by the user.
Information requests from the user are answered Information requests from the user are answered by retrieving the information from the cache, by retrieving the information from the cache, except for “who is logged in right now”.except for “who is logged in right now”.
Cache refresh algorithmCache refresh algorithm
Cache updating frequency can be Cache updating frequency can be changed by the user to any whole changed by the user to any whole number of minutes. The program is number of minutes. The program is loaded with a default updating frequency loaded with a default updating frequency of one hour.of one hour.
In addition, it is possible to perform In addition, it is possible to perform immediate cache refresh.immediate cache refresh.
Cache refresh algorithmCache refresh algorithm
for (every floor)for (every floor){{
get floor’s router ARP table;get floor’s router ARP table;for (every switch in the floor)for (every switch in the floor){{
get switch's data;get switch's data;for (every MAC address connected to the switch)for (every MAC address connected to the switch){{
convert MAC -> IP address;convert MAC -> IP address;get end station local data; // UDP connectionget end station local data; // UDP connectionupdate the relevant entry in the cache;update the relevant entry in the cache;
}}}}
}}
ExampleExample
Router Switch End Stations Router Switch End Stations
Floor 7:Floor 7:
Floor 3:Floor 3:
Algorithms – Additional Algorithms – Additional communication modulescommunication modules
A telnet API: A telnet API: The routers and switches in the faculty run The routers and switches in the faculty run
Command Line Interface (CLI), through Command Line Interface (CLI), through which we get their inner information. which we get their inner information.
In order to connect to the routers and In order to connect to the routers and switches we have implemented a Telnet switches we have implemented a Telnet API.API.
The implementation is especially suitable The implementation is especially suitable for the kind of routers and switches in the for the kind of routers and switches in the faculty.faculty.
Algorithms – Additional Algorithms – Additional communication modulescommunication modules
End Station Agent: End Station Agent: Every end station in the faculty, Every end station in the faculty,
including Laptops, should run an agent.including Laptops, should run an agent. When the agent starts to run, it reads When the agent starts to run, it reads
from a configuration file the computer’s from a configuration file the computer’s data. data.
The agent will listen for data requests The agent will listen for data requests on a pre defined port which is known by on a pre defined port which is known by the analyzer main system.the analyzer main system.
Algorithms – Additional Algorithms – Additional communication modulescommunication modules
End Station Agent - continued: End Station Agent - continued: The agent is single threaded. The agent is single threaded. We have implemented two versions of We have implemented two versions of
the agent. One for Unix, and one for the agent. One for Unix, and one for Windows 2000 and up.Windows 2000 and up.
User Interface User Interface
No GUI mode: No GUI mode:
GUI modeGUI mode
Main Menu:Main Menu:
User InterfaceUser Interface
Switches Menu:Switches Menu:
User InterfaceUser Interface
Ports Menu:Ports Menu:
User InterfaceUser Interface
End Stations Menu:End Stations Menu:
User InterfaceUser Interface
End Station:End Station:
Points for ExtensionPoints for Extension
Working from two different computers.Working from two different computers. End station agent informing on inner End station agent informing on inner
problems.problems.