Industrial Review Presentation - ECpE Senior Design

Download Report

Transcript Industrial Review Presentation - ECpE Senior Design

Network Specification & Report System for
ISEAGE – Phase II
April 25, 2006
Team: May 06_10
Advisor: Dr. Jacobson
Client: Information Assurance Center
Eric Anders
Piyush Patel
Jonathan Cook
Trent Robertson
Outline
Definitions
 What is ISEAGE?
 Acknowledgements
 Problem Statement
 Intended Users and Uses
 Assumptions and
Limitations
 Design Approaches

Project Definition
Activities
 Research Activities
 Design Activities
 Testing and
Modification
 Lessons Learned
 Conclusion

List of Definitions
CIDR – Classless Inter-Domain Routing
 CVS – Concurrent Versions Systems
 IPv4 – Internet Protocol Version 4
 IPv6 – Internet Protocol Version 6
 XML – Extensible Markup Language
 RIP – Routing Information Protocol

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

Acknowledgements

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 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.

Operating 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.

Intended 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.
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.
End Product & Other Deliverables

Two Applications

Network Specification Tool
 Graphically

build ISEAGE configurations
Network Report Tool
 Pseudo
real-time network statistics
Previous Accomplishments
Decisions made during Fall 2005 are:
Design of both Applications
 IDE (Visual Studio .NET)
 Programming Language (C#)
 Began coding of the Network Specification
Tool

Present Accomplishments

Network Specification Tool
GUI: 100%
 Functionality: 73%


Network Monitoring Tool
GUI: 100%
 Functionality: 0%

Approaches Considered & Used –
1/3

Integrated Developers Environment (IDE)

Eclipse


Visual Studio .NET


Open-source integrated developer environment. It is
primarily used with Java therefore it is not operating
system dependent.
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

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


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.
Selected: Develop “in-house” visualization
application

Approaches Considered & Used –
3/3

Programming Languages

C++



Java




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
Built-in functions that do not need the manual inclusion of libraries.
Easy GUI creation
Cross-Platform
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

ISEAGE Configuration
Currently: hand-typed ASCII file
 Need a quicker and easier method


ISEAGE Reporting
Currently: packet dumps and limited
visualizations
 Need a more visual and focused method

Research Activities
Routing Information Protocols (RIP)
 Graphing Algorithms (Graph Theory)
 Google Earth and KML
 Diagramming in C#
 Latitude/Longitude conversion and
Mapping (GDI+)
 Icon Creation

Design Activities
Create and evaluate custom networks
 Streamline the ISEAGE configuration
process
 Extensible network object types
 Topological and Spatial visualizations
 Assess network stability
 Network traffic replays

Network Specification Tool GUI
Network Report Tool GUI
ASCII File Format
Replay File Format
Implementation Activities

Scope of the project changed

Unable to complete report tool
Diagrammer Module
 Routing Protocol
 Latitude/Longitude on the form grid

Testing & Modification Activities

Unit testing

Monkey testing


Pre-select testing


Generating random or a large set of sequential inputs to
independent functions
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 (Hours)
165
177
175
176
Piyush Patel
Eric Anders
Jonathan Cook
Trent Robertson
Personal Effort Requirements
Expected
Hours
Actual
Hours
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
Name
Grand Total Labor Cost:
$6,981.50
Resource Requirements
Financial Budget (Dollars)
55
70
25
Poster
Printing
Miscellaneous
Schedules
Project Evaluation
Project Definition
Technology Consideration
End-Product Design
End-Product Implementation
Fully Met
Fully Met
Partially Met
Partially Met
End-Product Testing
End-Product Documentation
End-Product Demonstration
Project Deliverables
Not Attempted
Not Attempted
Not Attempted
Partially Met
Commercialization

There are no commercialization
considerations for our project.
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
Lessons Learned

What went well?



What did not go well?


Complexity of the overall software
What technical knowledge was gained?



Initial Design Approach
Learning the technology
Programming in C#
Diagramming Module
What non-technical knowledge was gained?


Project management skills
Teamwork on a larger scale
Risk and Risk Management

Risk: Loss of a team member


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: 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.
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 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.
Thank You!
Questions?