Characterization presentation
Supervisor: Mony Orbach
Presenting: Eugeney Ryzhyk, Igor Brevdo
1
Build network packet / traffic generator
(using ML310 board with Virtex-II Pro chip and Linux OS as a platform).
Such generator can be used for various network testing purposes (connectivity, stress, etc.)
2
Allow generation of different traffic patterns
Including well-known attacks, such as Syn attack, Smurf attack, ping-of-death, etc.
Allow customization and fine-tuning of the various packet generation parameters at different network stack layers (Ethernet frame, IP packet,
TCP/UDP packet)
3
Learn Linux development in the embedded environment
Gain deep knowledge of network protocols and network programming constrained by the limited resources of embedded system
4
Build configurable, extensible and efficient system
5
Architecture and high-level design –
Hardware
ML310
Virtex-II Pro
Virtex-II Pro
PPC405
Ethernet NIC
PCI bridge
6
Architecture and high-level design –
Software
Configuration / scripting / …
User mode
Linux kernel
Our packet generator
(kernel module)
TCP / IP stack
NIC driver
PPC
7
Requests from user mode
Generator module Request processor
Utility unit
Work queue
IP packet generator
Frame generator
NIC driver
TCP/IP Stack
8
Architecture and high-level design –
Software (optional)
Packet generator
User mode
Configuration / scripting / …
Remote configuration
Generator module,
Kernel, HW, …
PC
Configuration UI
9
Architecture and high-level design –
Hardware (optional)
User mode
Configuration / scripting / …
Packet generator kernel module
PPC
Packet gen. accelerator
(FPGA core)
10
Implementing the main functionality in software allows us to build relatively complex system
When using different Linux kernel services there’s no need to write everything from scratch
Debugging is easier
11
Weeks 5-7
Weeks 8-10
Study the system, install and run Linux
Write prototype kernel module
Weeks 11-14,
Exams (break),
Finish after the exams
Implement “IP packet generator” object
Be able to send configurable IP packets with specified rate
Set up basic testing environment
(done concurrently with other stages)
12
Complete the system implementation as specified
(including user mode components)
Build the full testing environment and start intensive testing
Start implementing optional features (remote configuration)
Signing contract with Cisco
13