Packet Generator MOTIVATION / GOALS When it comes to real-world network throughput, there are as many opinions about network performance as there are network installations. Every network site is unique, and the performance of the network is a function of the number of stations contending for access to the Ethernet, the type of hardware in use (station interfaces, switches), the layout of the cables (are they the right type, right length, and do they meet the configuration guidelines?), the quality of the cable installation and the mix of applications. However, with the ever-increasing number of networks, the traffic over the Internet is going to be saturated and performance will be down. In light of this problem, the testing, simulating and troubleshooting of a network device become very important. Therefore, in order to develop a more efficient and effective method, the project’s goals is To provide the users more functions and flexibility in terms of the packet arrival pattern and the packet size generation.
To assess network or the network component’s ability to support the given traffic load in terms of packet loss, delay, delay jitters etc. To source and sink real-time multicast/unicast UDP/IP traffic flows with optional support for operation with ISI’s rsvpd. To transmit, receive and log time-stamped, sequence numbered packets. To provide a traffic controller using the Leaky Bucket method. INTRODUCTION Informations Technology personnel often look to network benchmark tests to measure monitor and predict the performance of the LANs.
This is especially valuable in the case of high-performance backbones that continually support a large number of users and consistently high traffic volumes. However, the current technology of packet generator is very limited in functionality and usage. The project will aim to increase the flexibility of the packet generator in the following areas: Increase the range of options and flexibility with regards to the packet transmission pattern. Instead of just specifying the packet size, the user would be able to specify the distribution function he/she wants to be implemented. Add a traffic controller module to control the number of generated packets that is being sent to the network.
Implementing the leaky bucket method and combining it with the dropping method for the traffic controller. HIGHER-LEVEL BLOCK DIAGRAM OF SYSTEM CONCEPT OF LEAKY BUCKET DROPPING METHOD LEAKY BUCKET ALGORITHM Background Our project was actually spawned from the idea of MGEN. It was actually designed and developed by The Naval Research Laboratory (NRL). Multi-Generator or MGEN is currently running on most operating systems, namely SunOS 4.1.x, Solaris 2.x, Intel-based Linux, NetBSD, etc. Furthermore, MGEN is a specific set of software that provides the ability to generate and receive packets through the network base on an input script file. However, the MGEN script is very limited in terms of its flexibility and functionality.
For example, packet arrival generation can only be set to either a Periodic or a Poisson Distribution. Therefore, in order to exploit the MGEN’s full capability, a Data Flow On command can be further developed. These two distributions do not represent the real time traffic flow in the network. Therefore, our project will involved developing this MGEN code and coding it in C language so that its packet generator pattern will have few more distributions that better represent a network flow. Among the distribution functions we will include are Exponential, Uniform Distribution, Gamma Distribution etc. In addition, the packet size is to be changed from a fixed value to a varying amount of packet sizes.
Also, we have to include the Traffic controller so that we will be able to control the new traffic flow generated by different distributions. As a result, the implementation of leaky bucket will be necessary in order to achieve this goal. Strategic Plan Proposed Approach Our first objective is to work on the packet generator module, study and develop the MGEN code, which was coded in C program. We will choose to run and develop our project on SunOS machines. Using the inputs specified by the users, MGEN will generates packets pattern to the network.
The second step is to introduce different distribution functions and add them to the source code in the form of modules. So far, the Exponential and Uniform distribution are the two distributions to be added. Depending upon the progress of the project, we might implement more distributions like gamma and normal. At the same time, the code will be written such that users can control and change packet sizes accordingly. The flexibility on packet size is essential because packet size is not constant in the real time traffic flow.
As for the traffic controller, a leaky bucket algorithm will be applied to control the amount of packet that is to be sent into the network. After the maximum allowable packet quota has been reached, any packets arriving after will be dropped out. Additionally, shaping and marking capabilities will also be considered. Both the Packet generator and Traffic controller will run simultaneously on the SunOS station and the output will be monitored through the Sun machine itself. System Requirement SunOS 2 stations Network LANs Software Requirement Generate packets based on the following variable inputs Distribution function Packet size Transmission rate Starting and ending period Control the amount of packet flowing to the network Drop any excess packets if necessary (or mark or shape to conformance) Monitor the packet receiving rate Gathering of transmit and receive statistics, e.g. number of packets marked, shaping delay, end-to-end delay etc.
Equipment and Fabrication Needs We will be using SunOS workstations in networking laboratory to run the test on our codes. The networking equipments that we need are available in the lab. They include routers and switches which need to be configured to be able to test our program. Bibliography http://www.seas.upenn.edu/~tcom502/ http://manimac.itd.nrl.navy.mil/MGEN.