PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

14
PRIME 2005 PRIME 2005 A visualization of A visualization of network measurements network measurements John C.Y. Lee John C.Y. Lee 9/26/05 9/26/05

Transcript of PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

Page 1: PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

PRIME 2005PRIME 2005A visualization of network A visualization of network

measurementsmeasurements

John C.Y. LeeJohn C.Y. Lee

9/26/059/26/05

Page 2: PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

ContentContent

• A Very Brief Introduction A Very Brief Introduction

• ThanksThanks

• Life in BeijingLife in Beijing

• The end of Prime 2005The end of Prime 2005

• StructuresStructures

• Future improvementsFuture improvements

• DemoDemo

Page 3: PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

Brief IntroductionBrief Introduction

• This project is to visualize the network This project is to visualize the network measurements within all the amp machimeasurements within all the amp machines around the world…nes around the world…

• The idea was bought up by Tony McGregThe idea was bought up by Tony McGregor and Ronn Ritkeor and Ronn Ritke

Page 4: PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

ThanksThanks

• Special thanks to NSFSpecial thanks to NSF– A grant from NSF that provide us this opportunity to research aboarA grant from NSF that provide us this opportunity to research aboar

dd• Thanks to CNIC particularly R&D and Thanks to CNIC particularly R&D and 超级计算超级计算

– A very welcoming host which gave us a memorable trip.A very welcoming host which gave us a memorable trip.• Special thanks to Dr. Peter ArzbergerSpecial thanks to Dr. Peter Arzberger

– The person who introduced this internship to meThe person who introduced this internship to me• Thanks to Dr. Tony McGregor and Dr. Ronn RitkeThanks to Dr. Tony McGregor and Dr. Ronn Ritke

– Without the idea, I won’t be able to make this programWithout the idea, I won’t be able to make this program• Thanks again to Cindy Zheng & Jeremy Kallstrom & Chen QiThanks again to Cindy Zheng & Jeremy Kallstrom & Chen Qi

– Without them, this program will not be here todayWithout them, this program will not be here today• Thanks to Ms. Teri SimasThanks to Ms. Teri Simas

– The person who send us all kinds of emails about the PRIME prograThe person who send us all kinds of emails about the PRIME program that we need to care about.m that we need to care about.

Page 5: PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

Structures IStructures IOverall StructureOverall Structure

• This is the overall structure of the projectThis is the overall structure of the project• It could mainly divided into 5 partsIt could mainly divided into 5 parts

– User InterfaceUser Interface– Lines Controllers (the heart of this program)Lines Controllers (the heart of this program)– Data Parsing & Data organizingData Parsing & Data organizing– Data StructureData Structure– Data Chart (Detailed network measurements Data Chart (Detailed network measurements

chart)chart)

Amp_Server

Data Parsing &Data organizing

User Interface

(Java Applet)

Data Chart

Data Structure

Data_files

User

User Input

Lines Controllers

Overall Design Structure

Page 6: PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

User InterfaceUser Interface

• AMP (extends JApplet)AMP (extends JApplet)– The Swing-based Java applet that contains all the components to make this project worThe Swing-based Java applet that contains all the components to make this project wor

ksks• MenuBar (Purple)MenuBar (Purple)

– The menu that provides options for users to choose fromThe menu that provides options for users to choose from• Nodes Button, Lines Button (Yellow)Nodes Button, Lines Button (Yellow)

– The buttons which could make all the nodes and lines appear or disappear from the maThe buttons which could make all the nodes and lines appear or disappear from the mapp

• List of AmpSite, List of Color (Green)List of AmpSite, List of Color (Green)– The Tree based components which shows the list of Amp sites and list of colorsThe Tree based components which shows the list of Amp sites and list of colors

• (Double click on the folder-liked icon in order to show the sites and the colors)(Double click on the folder-liked icon in order to show the sites and the colors)• Map, Internet Messages (Message), Exceptions (Blue)Map, Internet Messages (Message), Exceptions (Blue)

– Almost all of the actions will take place on the Map paneAlmost all of the actions will take place on the Map pane– Message pane will be providing messages from Internet so that users would be able to kMessage pane will be providing messages from Internet so that users would be able to k

now if there is any problems from the servernow if there is any problems from the server– Exception pane will provides the exceptions message from java so that the code develoException pane will provides the exceptions message from java so that the code develo

pers will be able to find out where will be the problems more easilypers will be able to find out where will be the problems more easily• The Time, ElapsedSec (Red)The Time, ElapsedSec (Red)

– A component which lets the user and the program knows if it is time to refresh and if the A component which lets the user and the program knows if it is time to refresh and if the program hangs. XDprogram hangs. XD

Page 7: PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

Lines ControllersLines Controllers

• The lines and the colors of the lines are controlled The lines and the colors of the lines are controlled by these 2 controllersby these 2 controllers

• This picture is showing the classes that are related This picture is showing the classes that are related to the lines controllersto the lines controllers

• However, it is not quite possible to understand how However, it is not quite possible to understand how this thing works without having sequence diagramsthis thing works without having sequence diagrams

• For the sake of god, I won’t go through any of the For the sake of god, I won’t go through any of the sequence diagrams here. XDsequence diagrams here. XD

• If anyone of you are interested, please let me If anyone of you are interested, please let me know. ^^”a (I do have a menu for this program know. ^^”a (I do have a menu for this program (very rough..))(very rough..))

ASimpleLineController

Adot

ALineButton

ASimpleLine

ATreeButton

AMachinesTree

AColorSchemeController

LinesControllers

AColorSchemeTree

APanel

DataStructure

Parsing_data

AMP

AGraphWin

Page 8: PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

Data Parsing & Data Parsing & Data organizingData organizing

• This is the part where This is the part where downloading and downloading and parsing take place.parsing take place.

• The diagram on the The diagram on the right shows how the right shows how the functions are called functions are called and the data are and the data are going to.going to.

Parsing_data- Download - Parsing- Storing

ASimpleLineController

UserInterface

AMapObjectContainer

AMachinesTree

Invokes

Invokes

Invokes

Invokes

-MapInfo- MachinesInfo

- MeasurmentsInfo

Retrieve

DataStructure

- MachinesInfo- NetworkMeasurments

-MapInfo

Page 9: PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

Data StructuresData Structures

• These are the data structures that was These are the data structures that was used for the projectused for the project

• The one on the top right is responsible for The one on the top right is responsible for all the network measurementsall the network measurements

• The one on the right is responsible for the The one on the right is responsible for the list of amp sites (Green)list of amp sites (Green)

• The one on the bottom right is responsible The one on the bottom right is responsible for the list of colors (Green)for the list of colors (Green)

• Finally the one on the bottom is Finally the one on the bottom is responsible for holding the maps from the responsible for holding the maps from the server (purple)server (purple)

MeshesContainer

AmpNodeContainer

AmpNode

- Hashtable mesh_list

- String [] mach_info- Hashtable amp_list

- String amp_code;- String amp_name;- String [] infomation;

- double x_coord;- double y_coord;

- Hashtable destination_data;

AmpDataContainer

- String [] cur_avg;- String [] cur_max;- String [] cur_min;

- int measurementSize;- Vector data;

AmpDataPoint

- String time- String [] measurement

AMachinesTree

DefaultMutableTreeNode

- APanel ap_map- DefaultTreeModel dtm

- Adot

Adot

- APanel ap_map- Color c

- AmpNode datanode- double left, right, top, bottom, factorx, factory;

- boolean show = false;

AColorSchemeTree

DefaultMutableTreeNode

- APanel ap_map- DefaultTreeModel dtm

- AColorObject

AColorObject

- Color c;- String info;

- int lowbound;- String name;- int upbound;

AMapObjectContainer

- Hashtable map_list;- String partialurl;- String urlString;

AMapObject

- String backgroundfileName- String backgroundName

- String backgroundurl- String top, left, bottom, right

Page 10: PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

Data Chart byData Chart byChen qiChen qi

• This is the chart that This is the chart that could provide the could provide the network measurements network measurements in detailin detail

• The bottom right is the The bottom right is the diagram that shows how diagram that shows how the functions are called the functions are called and data transferredand data transferred

AGraphWin

ASimpleLine

ASimpleLineController

AMP

CreateDemoPanel

AGraphProc

DataStructure

Show

refreshPlot

setupWin

Cal

cAvg

Min

Max

Get

dat

a, A

vg, M

in, M

ax

Apanel

Page 11: PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

User InputUser Input

• User InputUser Input• Mesh Mesh International International• TestType TestType 0 Icmp, 2 Http, 3 Ipert, 4 Tput 0 Icmp, 2 Http, 3 Ipert, 4 Tput• TestSubType TestSubType 84, 700, 1400, Rand Bytes 84, 700, 1400, Rand Bytes• RefreshRate RefreshRate 1min, 2mins, 5mins, 10mins 1min, 2mins, 5mins, 10mins

TestTest MeasurementsMeasurements ExplainationExplaination0 Icmp0 Icmp 22 Packet_size_bytes, rtt_msPacket_size_bytes, rtt_ms2 Http2 Http 22 Latency_ms, sizes_bytesLatency_ms, sizes_bytes3 Iput3 Iput 44 Latency_out(in)_ms, Latency_out(in)_ms,

bandwidth_out(in)_kbpsbandwidth_out(in)_kbps4 tput4 tput 22 Bytes, transfer_time_msBytes, transfer_time_ms

• A mesh contains a set of amp machine. It only has one mesh right now.A mesh contains a set of amp machine. It only has one mesh right now.• RefreshRate will be used to refresh the map area where the lines are locatedRefreshRate will be used to refresh the map area where the lines are located• The user input will be used to determine the kind of network measurement, and aThe user input will be used to determine the kind of network measurement, and a

mp machines are going to display on the program.mp machines are going to display on the program.

Page 12: PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

Amp Server & Amp Server & Sample Data_filesSample Data_files

• The program will be using only one server for downloading all thThe program will be using only one server for downloading all the infomations such as maps, maps_info, site_info, etce infomations such as maps, maps_info, site_info, etc

• http://http://jeremyk.nlanr.net/amp/java_data.php?datejeremyk.nlanr.net/amp/java_data.php?date=YY-MM-=YY-MM-DD&timeDD&time==HH:MM:SS&durationHH:MM:SS&duration==x&testTypex&testType=0&testSubType=0084&src=amp-=0&testSubType=0084&src=amp-xxx&dstxxx&dst=amp-xxx=amp-xxx

• The one on the top right is the sample dataThe one on the top right is the sample data• The first 5 columns of data will be fixed for all the tests. The first 5 columns of data will be fixed for all the tests. • The only thing that varies for now will be the measurements whicThe only thing that varies for now will be the measurements whic

h are the columns after testSubType.h are the columns after testSubType.

Page 13: PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

Future improvementsFuture improvements

• Improve the UIImprove the UI

• Improve the outlookImprove the outlook

• Improve the coloring so that it is Improve the coloring so that it is automatedautomated

• Improve …Improve …

Page 14: PRIME 2005 A visualization of network measurements John C.Y. Lee 9/26/05.

DemoDemo