network specification & report system for iseage – phase ii eric anders piyush patel jonathan...

Post on 05-Jan-2016

220 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Network Specification & Report System for ISEAGE – Phase II

Network Specification & Report System for ISEAGE – Phase II

Eric AndersPiyush Patel

Jonathan CookTrent Robertson

Eric AndersPiyush Patel

Jonathan CookTrent Robertson

April 25, 2006Team: May 06_10Advisor: Dr. JacobsonClient: Information Assurance Center

April 25, 2006Team: May 06_10Advisor: Dr. JacobsonClient: Information Assurance Center

OutlineOutline

DefinitionsWhat is ISEAGE?AcknowledgementsProblem Statement Intended Users and

UsesAssumptions and

LimitationsDesign Approaches

DefinitionsWhat is ISEAGE?AcknowledgementsProblem Statement Intended Users and

UsesAssumptions and

LimitationsDesign Approaches

Project Definition Activities

Research Activities

Design ActivitiesTesting and

ModificationLessons LearnedConclusion

Project Definition Activities

Research Activities

Design ActivitiesTesting and

ModificationLessons LearnedConclusion

List of DefinitionsList of Definitions

CIDR – Classless Inter-Domain Routing

CVS – Concurrent Versions Systems IPv4 – Internet Protocol Version 4 IPv6 – Internet Protocol Version 6 XML – Extensible Markup LanguageRIP – Routing Information Protocol

CIDR – Classless Inter-Domain Routing

CVS – Concurrent Versions Systems IPv4 – Internet Protocol Version 4 IPv6 – Internet Protocol Version 6 XML – Extensible Markup LanguageRIP – Routing Information Protocol

What is ISEAGE?What is ISEAGE?

Internet-Scale Event and Attack Generation Environment

Test-bed Virtual Internet for the research, design, evaluation, and testing of security solutions.

Provides a controlled environment where real-world attacks can be played out against different configurations of equipment

Internet-Scale Event and Attack Generation Environment

Test-bed Virtual Internet for the research, design, evaluation, and testing of security solutions.

Provides a controlled environment where real-world attacks can be played out against different configurations of equipment

AcknowledgementsAcknowledgements

We would like to thank:Dr. Jacobson for his help in

understanding the ISEAGE project and offer of extended financial assistance.

Thad Gillispie for his insight into the possible solution of the routing problem in the ISEAGE Network.

MSDNAA/Iowa State University for providing Visual Studio .NET 2005 free of charge.

We would like to thank:Dr. Jacobson for his help in

understanding the ISEAGE project and offer of extended financial assistance.

Thad Gillispie for his insight into the possible solution of the routing problem in the ISEAGE Network.

MSDNAA/Iowa State University for providing Visual Studio .NET 2005 free of charge.

Problem StatementProblem Statement

Create a set of tools that will allow a user to define a network specification that will be used to configure ISEAGE.

The tools need to show real-time visualization of the ISEAGE network.

Ability to display both a latitude/longitude based representation and a network topology layout.

Create a set of tools that will allow a user to define a network specification that will be used to configure ISEAGE.

The tools need to show real-time visualization of the ISEAGE network.

Ability to display both a latitude/longitude based representation and a network topology layout.

Operating EnvironmentOperating Environment

Microsoft Windows Operating Systems with the .NET framework

The application is designed to run on a PC attached to the ISEAGE although it can run on any isolated PC as well.

Microsoft Windows Operating Systems with the .NET framework

The application is designed to run on a PC attached to the ISEAGE although it can run on any isolated PC as well.

Intended Users and UsesIntended Users and Uses

Intended Users:Individuals who are technically fluent

with the ISEAGE research project.

Intended Uses:Defining the configuration of ISEAGE

network/sub-networks.Expansion from the ISEAGE network

to the entire state of Iowa and beyond.

Intended Users:Individuals who are technically fluent

with the ISEAGE research project.

Intended Uses:Defining the configuration of ISEAGE

network/sub-networks.Expansion from the ISEAGE network

to the entire state of Iowa and beyond.

Assumptions and Limitations

Assumptions and Limitations

Assumptions The application will run on Windows systems only. The configuration tool can run independently of

ISEAGE. The output configuration file can be implemented

immediately and directly, or it can be stored for later use.

Limitations The software shall both configure and report real-

time information about ISEAGE. The real-time display shall have two modes:

physical layout and network topology. The software shall run on a computer with at least

256 MHz processor and 128MB Memory that is running Windows Operating System.

Assumptions The application will run on Windows systems only. The configuration tool can run independently of

ISEAGE. The output configuration file can be implemented

immediately and directly, or it can be stored for later use.

Limitations The software shall both configure and report real-

time information about ISEAGE. The real-time display shall have two modes:

physical layout and network topology. The software shall run on a computer with at least

256 MHz processor and 128MB Memory that is running Windows Operating System.

Two ApplicationsNetwork Specification Tool

Graphically build ISEAGE configurations

Network Report ToolPseudo real-time network statistics

Two ApplicationsNetwork Specification Tool

Graphically build ISEAGE configurations

Network Report ToolPseudo real-time network statistics

End Product & Other Deliverables

End Product & Other Deliverables

Previous Accomplishments

Previous Accomplishments

Decisions made during Fall 2005 are:Design of both ApplicationsIDE (Visual Studio .NET)Programming Language (C#)Began coding of the Network

Specification Tool

Decisions made during Fall 2005 are:Design of both ApplicationsIDE (Visual Studio .NET)Programming Language (C#)Began coding of the Network

Specification Tool

Present AccomplishmentsPresent Accomplishments

Network Specification ToolGUI: 100%Functionality: 73%

Network Monitoring ToolGUI: 100%Functionality: 0%

Network Specification ToolGUI: 100%Functionality: 73%

Network Monitoring ToolGUI: 100%Functionality: 0%

Approaches Considered & Used – 1/3

Approaches Considered & Used – 1/3

Integrated Developers Environment (IDE) Eclipse

Open-source integrated developer environment. It is primarily used with Java therefore it is not operating system dependent.

Visual Studio .NET Contains a whole host of tools that can be used to

create applications. Contained in the platform are languages Visual C++, Visual Basic, Visual C#, and Visual J#.

Selected: Visual Studio .NET Deployment of the application is much easier

through the wizard provided by Visual Studio .NET Available free of charge through MSDNAA

Integrated Developers Environment (IDE) Eclipse

Open-source integrated developer environment. It is primarily used with Java therefore it is not operating system dependent.

Visual Studio .NET Contains a whole host of tools that can be used to

create applications. Contained in the platform are languages Visual C++, Visual Basic, Visual C#, and Visual J#.

Selected: Visual Studio .NET Deployment of the application is much easier

through the wizard provided by Visual Studio .NET Available free of charge through MSDNAA

Approaches Considered & Used – 2/3

Approaches Considered & Used – 2/3

Visualization Tools Google Earth

Visualization tool from the perspective of a satellite. It allows users to overlay objects onto the satellite image through the use of KML, a variation of XML.

“In-house” coded visualization application Develop our own “in-house” visualization

application Selected: Develop “in-house” visualization

application Allows the team more freedom Visualization tool will work closer to real-time than if

utilized by Google Earth because Google Earth tends to eat up resources.

Google Earth would work very well with the respect to extensibility.

Visualization Tools Google Earth

Visualization tool from the perspective of a satellite. It allows users to overlay objects onto the satellite image through the use of KML, a variation of XML.

“In-house” coded visualization application Develop our own “in-house” visualization

application Selected: Develop “in-house” visualization

application Allows the team more freedom Visualization tool will work closer to real-time than if

utilized by Google Earth because Google Earth tends to eat up resources.

Google Earth would work very well with the respect to extensibility.

Approaches Considered & Used – 3/3

Approaches Considered & Used – 3/3

Programming Languages C++

Primary advantage of C++ is that the entire group has used it before

Main disadvantage of C++ is that it has few built-in functions compared to C# and Java

Java Built-in functions that do not need the manual inclusion of

libraries. Easy GUI creation Cross-Platform

C# High-level and Low-level functionality Extremely strongly typed object oriented language None of the team members have any experience programming

in C# Selected: C#

Runs faster than Java C# and Java have similar syntax, so the learning curve will not

be great at all GUI’s are extremely easy to build in C#

Programming Languages C++

Primary advantage of C++ is that the entire group has used it before

Main disadvantage of C++ is that it has few built-in functions compared to C# and Java

Java Built-in functions that do not need the manual inclusion of

libraries. Easy GUI creation Cross-Platform

C# High-level and Low-level functionality Extremely strongly typed object oriented language None of the team members have any experience programming

in C# Selected: C#

Runs faster than Java C# and Java have similar syntax, so the learning curve will not

be great at all GUI’s are extremely easy to build in C#

Project Definition Activities

Project Definition Activities

ISEAGE ConfigurationCurrently: hand-typed ASCII fileNeed a quicker and easier method

ISEAGE ReportingCurrently: packet dumps and limited

visualizationsNeed a more visual and focused

method

ISEAGE ConfigurationCurrently: hand-typed ASCII fileNeed a quicker and easier method

ISEAGE ReportingCurrently: packet dumps and limited

visualizationsNeed a more visual and focused

method

Research ActivitiesResearch Activities

Routing Information Protocols (RIP)Graphing Algorithms (Graph

Theory)Google Earth and KMLDiagramming in C#Latitude/Longitude conversion and

Mapping (GDI+) Icon Creation

Routing Information Protocols (RIP)Graphing Algorithms (Graph

Theory)Google Earth and KMLDiagramming in C#Latitude/Longitude conversion and

Mapping (GDI+) Icon Creation

Design ActivitiesDesign Activities

Create and evaluate custom networks

Streamline the ISEAGE configuration process

Extensible network object typesTopological and Spatial

visualizationsAssess network stabilityNetwork traffic replays

Create and evaluate custom networks

Streamline the ISEAGE configuration process

Extensible network object typesTopological and Spatial

visualizationsAssess network stabilityNetwork traffic replays

Network Specification Tool GUINetwork Specification Tool GUI

Network Report Tool GUINetwork Report Tool GUI

ASCII File FormatASCII File Format

Replay File FormatReplay File Format

Implementation ActivitiesImplementation Activities

Scope of the project changedUnable to complete report tool

Diagrammer ModuleRouting ProtocolLatitude/Longitude on the form

grid

Scope of the project changedUnable to complete report tool

Diagrammer ModuleRouting ProtocolLatitude/Longitude on the form

grid

Testing & Modification Activities

Testing & Modification Activities

Unit testing Monkey testing

Generating random or a large set of sequential inputs to independent functions

Pre-select testing Inputs which will be sent to a given function with

anticipated output, created by the black box tester

Integration testing User testing

Done by all of the team members by attempting to use the program as a regular user would

Beta version will be deployed to the client for testing

Unit testing Monkey testing

Generating random or a large set of sequential inputs to independent functions

Pre-select testing Inputs which will be sent to a given function with

anticipated output, created by the black box tester

Integration testing User testing

Done by all of the team members by attempting to use the program as a regular user would

Beta version will be deployed to the client for testing

Personal Effort Requirements

Personal Effort Requirements

Personal Effort (Hours)

176

177

175

165

Piyush Patel

Eric Anders

Jonathan Cook

Trent Robertson

Personal Effort (Hours)

176

177

175

165

Piyush Patel

Eric Anders

Jonathan Cook

Trent Robertson

Personal Effort RequirementsPersonal Effort Requirements

NameExpected

HoursActualHours Wage Total

Eric Anders 176 174 $10.50 $1,827.00

Jonathan Cook 175 166 $10.50 $1,743.00

Piyush Patel 177 163 $10.50 $1,711.50

Trent Robertson 165 160 $10.50 $1,680.00

Grand Total Labor Cost: $6,981.50

Resource RequirementsResource Requirements

Financial Budget (Dollars)

55

25

70

Poster

Printing

Miscellaneous

Financial Budget (Dollars)

55

25

70

Poster

Printing

Miscellaneous

SchedulesSchedules

Project EvaluationProject Evaluation

Project Definition Fully Met

Technology Consideration Fully Met

End-Product Design Partially Met

End-Product Implementation

Partially Met

End-Product Testing Not Attempted

End-Product Documentation Not Attempted

End-Product Demonstration Not Attempted

Project Deliverables Partially Met

CommercializationCommercialization

There are no commercialization considerations for our project.

There are no commercialization considerations for our project.

Additional Work Recommendations

Additional Work Recommendations

ISEAGE Monitoring Tool API for network node specification Diagramming control improvements

Improved hit detection Expand layout options

RIP Implementation Latitude/Longitude implementation on

to the form grid User Manual

A detailed reference manual containing how to view, define, and manage the network using the GUI

ISEAGE Monitoring Tool API for network node specification Diagramming control improvements

Improved hit detection Expand layout options

RIP Implementation Latitude/Longitude implementation on

to the form grid User Manual

A detailed reference manual containing how to view, define, and manage the network using the GUI

Lessons LearnedLessons Learned

What went well? Initial Design Approach Learning the technology

What did not go well? Complexity of the overall software

What technical knowledge was gained? Programming in C# Diagramming Module

What non-technical knowledge was gained? Project management skills Teamwork on a larger scale

What went well? Initial Design Approach Learning the technology

What did not go well? Complexity of the overall software

What technical knowledge was gained? Programming in C# Diagramming Module

What non-technical knowledge was gained? Project management skills Teamwork on a larger scale

Risk and Risk ManagementRisk and Risk Management

Risk: Loss of a team member Assessment: All team members will track their own progress and

notify the team of any concerns or problems that might arise. If the team does lose a member their remaining work will be divided amongst the remaining members.

Risk: Insufficient knowledge or experience Assessment: The group will be responsible for assigning tasks to

members that have the necessary knowledge to complete them. If no team member feels that they have the necessary knowledge to complete the task, a team effort will be made to learn the required information or a new approach to the problem will be considered. There will be time for learning built into the schedule.

Risk: Loss of data Assessment: The team will use a CVS or Subversion server to

control the source code for the project. In this way the source will be controlled and tracked in a secure environment.

Risk: Failure of approach Assessment: All technologies will be researched to guarantee

interoperability. All plans, procedures, and software progress will be submitted to the client for review.

Risk: Loss of a team member Assessment: All team members will track their own progress and

notify the team of any concerns or problems that might arise. If the team does lose a member their remaining work will be divided amongst the remaining members.

Risk: Insufficient knowledge or experience Assessment: The group will be responsible for assigning tasks to

members that have the necessary knowledge to complete them. If no team member feels that they have the necessary knowledge to complete the task, a team effort will be made to learn the required information or a new approach to the problem will be considered. There will be time for learning built into the schedule.

Risk: Loss of data Assessment: The team will use a CVS or Subversion server to

control the source code for the project. In this way the source will be controlled and tracked in a secure environment.

Risk: Failure of approach Assessment: All technologies will be researched to guarantee

interoperability. All plans, procedures, and software progress will be submitted to the client for review.

Closing SummaryClosing Summary

• Enable users will be able to create and evaluate custom networks configured on virtual hardware, defend against simulated attacks and assess network stability leading to a more reliable configuration of network infrastructure.

• The network specification tool is used with the intent to construct and monitor a virtual network.

• The report system will be a real-time system that will overlay a map and allow the topology of a network to be monitored.

• Enable users will be able to create and evaluate custom networks configured on virtual hardware, defend against simulated attacks and assess network stability leading to a more reliable configuration of network infrastructure.

• The network specification tool is used with the intent to construct and monitor a virtual network.

• The report system will be a real-time system that will overlay a map and allow the topology of a network to be monitored.

Thank You!Thank You!

Questions?Questions?

top related