Final Project Presentation

advertisement
Visualization of
Computer Networks
By Richard Zschech
Supervisor:
Dr. Paul Coddington,
Dr. Ken Hawick.
Motivations
 Computer
visualisation techniques offer the
opportunity to display complicated sets of
information in an easy to view and easy to
understand manner.
 Computer networks are by their very nature
complicated.
Previous 3D Visualization Work

File System Navigator

Information Cube
Overview
 Development
of computer network mapping
and visualising program
–
–
–
–
Develop three-dimensional graph package
Network Mapping and Monitoring package
Graph layout algorithms
Interactive user interface
Final Product
Three-Dimensional Graph
Package
Graph
TG
Node 1
TG
Node 2
TG
Node N
TG
Edge 1
TG
Shape
Appearance
Edge 2
TG
Edge N
TG
Shape
Geometry
Appearance
Geometry
Issues with Java 3D
Simple to use
 Slow rendering of graphics

– Difficult to get feel of three-dimensions
– Difficult to interact with the graph
– Can disorient the user

Could use lower level Immediate mode rendering
Network Monitoring Module

Simple Network Management Protocol (SNMP)
– For exploring the network using routing tables
– Gathering statistics
– Building and updating the graph

Management Information Base (MIB)
– Object Identifiers
– Managed Objects

Serialisation
– Abstract Syntax Notation
– Basic Encoding Rules
Object Identifiers
Sequence of integers
 Allocated a textual
name for simplicity
 Organised into a
global tree of known
identifiers
 sysUpTime =
1.3.6.1.2.1.1.3

Example MIB Definition
sysUpTime OBJECT-TYPE
SYNTAX TimeTicks
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The time (in hundredths of a
second) since the network
management portion of the
system was last
re-initialized.”
::= { system 3 }
SNMP Tool
Issues With SNMP
Good for gathering fairly static information like
connectivity of a network
 Does not contain much support for dynamic
information about network
 Takes a long time to map networks

XML Graph File Example
<graph id="ROOTGRAPH">
<position x="0.0" y="0.0" z="0.0"/>
<graph id="chook">
<position x="0.0" y="1.0" z="104.4"/>
</graph>
<graph id="powerhub">
<position x="0.0" y="0.0" z="0.0"/>
<node id="dizzy" scale="2.0">
<position x="0.0" y="0.0" z="31.2"/>
</node>
... More nodes and edges for powerhub
</graph>
<edge source="powerhub" dest=“chook"/>
... More nodes and edges for ROOTGRAPH
</graph>
Gathering Dynamic Information
InputDifference  CURR(ifInO ctets)  PREV(ifInOctets)
OutputDifference  CURR(ifOut Octets)  PREV(ifOut Octets)
TimeDifference  (CURR(sysU pTime)  PREV(sysUpTime))/ 100
InputDifference  OutputDifference
ifIOPerSec 
TimeDifference
ifIOPerSec
ifLoad 
ifSpeed/ 8
sysLoad  AVERAGE(ifLoad)
Node Information Popup Menu
Settings File
-- Node Scale settings
SCALE_OBJECT_ID = "ifNumber"
SCALE_MAX_VALUE = 100
SCALE_MIN_VALUE = 0
SCALE_MAX =
10
SCALE_MIN =
3
SCALE_NON_SNMP = 2
-- Statistics to gather for each node
NODE_INFO {
"Name", "sysDescr";
"Up Time", "sysUpTime";
"Total Speed", SUM("ifSpeed");
}
Ring Layout
colossus
powerhub mathuselah
titan
krypton
rosemary
chook
mathuselah
powerhub
dhpcmac
chook
dhpcmac
lerwick
Sorting
powerhub
titan
Sorted Ring Layout
Star Layout
Sorted Star Layout
Sphere Layout
Sorted Sphere Layout
Sorted Central Node Sphere
Hierarchal Layout
Conclusions
 Good
layouts can be achieved using
hierarchical methods.
 Good layouts are often application
dependant.
 Three-dimensional visualisation requires
fast rendering and an environment that is
easy to interact with.
Download