Top Banner
Software Software Frame Frame Simulator Simulator (SFS) (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007
26

Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Jan 15, 2016

Download

Documents

Julia Boone
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Software Software Frame Frame

Simulator Simulator (SFS)(SFS)Technion CS Computer Communications Lab

(236340)in cooperation with ECI telecom

Uri Ferri & Ynon Cohen

January 2007

Page 2: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

AGENDAAGENDA

Page 3: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Background and Background and MotivationMotivation• High cost of network testing and High cost of network testing and

simulation hardware simulation hardware • Low availability of hardware-based Low availability of hardware-based

testing equipmenttesting equipment• Software-based simulators are Software-based simulators are

more agile and therefore easier to more agile and therefore easier to configure and extend. configure and extend.

Page 4: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Product OverviewProduct OverviewSFS simulates networking hardware for testing purposes:•Lower cost of testing equipment•Support various protocols, network topologies and testing scenarios in a single user friendly tool•Provide infrastructure for future extensions, such as additional protocols and testing behaviors

Page 5: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Features Features – packet – packet generationgeneration

Send frames of various protocols:• Currently supported protocols include:

Ethernet IP Arp

Igmp V2&V3

TcpUdp

Complete control over packet content using xml import/exportSupport packet customization storage and reuseIncludes library of default packets for cases in which packet contents are insignificant

• Support for default packet customization

Page 6: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Configuring a PacketConfiguring a Packet

Page 7: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Sending the PacketSending the Packet

Page 8: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Features Features – versatile – versatile behaviorsbehaviors

– Compose complex behaviors using simple atomic behaviors:

• Send Message

• Listen for Message

• Wait

– Example:

Page 9: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Features Features – versatile – versatile behaviorsbehaviors

– Composing operations:

• Concatenation

• Multiplication

– Example:

Page 10: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Features Features – versatile – versatile behaviorsbehaviors

– Arbitrary compositions:

• Free usage of atoms and customized composite behaviors

• Save complex pre-defined compositions for future use as parts of even more complex behaviors.

– Example:

Page 11: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Configuring an Agent Configuring an Agent using a protocol from a fileusing a protocol from a file

Page 12: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Configuring an AgentConfiguring an Agentusing an inlined protocolusing an inlined protocol

Page 13: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Configuring an AgentConfiguring an Agentusing the default protocol using the default protocol

Page 14: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Using the AgentUsing the Agent

Page 15: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Features Features – end point – end point simulationsimulation

– Simulate endpoints such as computers, set top boxes, servers etc.

– Each simulated machine has its own properties and behaviors:

• Ethernet and IP address

• Configured agent to perform specific behavior

• Runs as an independent resource (thread) on the test machine itself

Page 16: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Configuring an EndPointConfiguring an EndPoint

Page 17: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Activating the EndPointActivating the EndPoint

Page 18: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Features Features – end point – end point simulationsimulation

Definition and usage of a sequence of similar (but not identical) endpoints - as simple as using a single endpoint.

• May be used to simulate a network of client computers, or set top boxes.

• Infrastructure also supports mixed endpoint sequences for use in future extensions.

Page 19: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Configuring an EndPoint Configuring an EndPoint sequencesequence

Page 20: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Activating the EndPoint Activating the EndPoint sequencesequence

Page 21: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Features Features – configuration– configuration– Complete control over the main simulation entities:

• Packets of all supported protocols

• Composite behaviors

• End points and end point sequences

– External configuration through use of xml documents:

• Every entity has a well defined configuration file.

• Support for three types of compositions :

– Inline : for ease of use.

– Reference: for extensibility and reuse of definitions.

– Default: to shorten definition, when specific details are less important.

Page 22: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Deployment

– External independent testing software tool.• A single executable file, which includes a command

line interface, may be installed on any PC with a network card.

• Command line enables single line, easy to use, stateless instructions.

• Simple xcopy installation• Possible use:

– Simulator for massive networks with multiple end users, routers and servers.

– Specifically, simulate a full IPTV infrastructure for DSLAM testing

– Embedded in an existing application• Controller API is exposed for use by the programmer.• Possible use:

– Stub for unit testing without use of hardware.

Page 23: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Technology - overview

• Project involved refactoring and expanding of an existing tool into a versatile testing infrastructure.

• Most of the original code was refactored. Only few of the original communication services remain.

• Support for IGMP V3 protocol was added.

• Adopted Standards:

– Object Oriented design and implementation

– Use of design patterns

– Utilization of industry standard STL as source for data containers, and other open-source libraries for services such as XML parsing.23

Page 24: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Technology - design

• Object Oriented Design:

– Full class hierarchy for packet protocols and behaviors.

– Implementation

in C++.

24

Page 25: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Technology – design

• Design Patterns:

– Factory design pattern:

• Templated factories are utilized for creation of packets, Behaviors, and Endpoints.

• Required design and implementation of class metadata and reflection, not internally supported by c++.

– Composite design pattern:

• Used to allow generic, complex Behaviors.

• More atoms and composition rules may easily be added programmatically, in order to further enhance this feature. 25

Page 26: Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.

Technology – design example

26