Laboratory 1
Ethernet
A Direct Link Network with Media Access Control
Objective
This lab is designed to demonstrate the operation of the Ethernet network. The simulation
in this lab will help you examine the performance of the Ethernet network under different
scenarios.
Overview
The Ethernet is a working example of the more general Carrier Sense, Multiple Access
with Collision Detect (CSMA/CD) local area network technology. The Ethernet is a
multiple-access network, meaning that a set of nodes sends and receives frames over a
shared link. The “carrier sense” in CSMA/CD means that all the nodes can distinguish
between an idle and a busy link. The “collision detect” means that a node listens as it
transmits and can therefore detect when a frame it is transmitting has interfered (collided)
with a frame transmitted by another node. The Ethernet is said to be a 1-persistent
protocol because an adaptor with a frame to send transmits with probability 1 whenever a
busy line goes idle.
In this lab you will set up an Ethernet with 14 nodes connected via a coaxial link in a bus
topology. The coaxial link is operating at a data rate of 10 Mbps. You will study how the
throughput of the network is affected by the network load as well as the size of the
packets.
Procedure
Create a New Project
To create a new project for the Ethernet network:
1. Start OPNET IT Guru Academic Edition ⇒ Choose New from the File menu.
2. Select Project ⇒ Click OK ⇒ Name the project _Ethernet, and
the scenario Coax ⇒ Click OK.
Local area networks
(LANs) are designed to
span distances of up to a
few thousand meters.
3.
In the Startup Wizard: Initial Topology dialog box, make sure that Create Empty
Scenario is selected ⇒ Click Next ⇒ Choose Office from the Network Scale list
⇒ Click Next ⇒ Assign 200 to X Span and keep Y Span as 100 ⇒ Click Next
twice ⇒ Click OK.
4. Close the Object Palette dialog box.
Create the Network
To create our coaxial Ethernet network:
1. To create the network configuration, select Topology ⇒ Rapid Configuration.
From the drop-down menu choose Bus and click OK.
2. Click the Select Models button in the Rapid Configuration dialog box. From the
Model List drop-down menu choose ethcoax and click OK.
3.
In the Rapid Configuration dialog box, set the following eight values and click OK.
The eth_tap is an
Ethernet bus tap that
connects a node with the
bus.
The eth_coax is an
Ethernet bus that can
connect nodes with bus
receivers and
transmitters via taps.
2
A higher delay is used
here as an alternative to
generating higher traffic
which would require
much longer simulation
time.
Thickness specifies the
thickness of the line used
to “draw” the bus link.
4. To configure the coaxial bus, right-click on the horizontal link ⇒ Select Advanced
Edit Attributes from the menu:
a. Click on the value of the model attribute ⇒ Select Edit from the drop-
down menu ⇒ Choose the eth_coax_adv model.
b. Assign the value 0.05 to the delay attribute (propagation delay in sec/m).
c. Assign 5 to the thickness attribute.
d. Click OK.
5. Now you have created the network. It should look like the illustration below.
6. Make sure to save your project.
3
Configure the Network Nodes
To configure the traffic generated by the nodes:
1. Right-click on any of the 30 nodes ⇒ Select Similar Nodes. Now all nodes in the
network are selected.
2. Right-click on any of the 30 nodes ⇒ Edit Attributes.
3. Check the Apply Changes to Selected Objects check box. This is important to
avoid reconfiguring each node individually.
4. Expand the Traffic Generation Parameters hierarchy:
a. Change the value of the ON State Time to exponential(100) ⇒ Change
the value of the OFF State Time to exponential(0). (Note: Packets are
generated only in the "ON" state.)
5. Expand the Packet Generation Arguments hierarchy:
a. Change the value of the Packet Size attribute to constant(1024).
b. Right-click on the Interarrival Time attribute and choose Promote
Attribute to Higher Level. This allows us to assign multiple values to
the
the network
performance under different loads.
Interarrival Time attribute and hence
to
test
6. Click OK to return back to the Project Editor.
7. Make sure to save your project.
4
The argument of the
exponential distribution
is the mean of the
interval between
successive events. In the
exponential distribution
the probability of
occurrence of the next
event by a given time is
not at all dependent
upon the time of
occurrence of the last
event or the elapsed time
since that event.
The interarrival time is
the time between
successive packet
generations in the "ON"
state.
Configure the Simulation
To examine the network performance under different loads, you need to run the simulation
several times by changing the load into the network. There is an easy way to do that.
Recall that we promoted the Interarrival Time attribute for package generation. Here we
will assign different values to that attribute:
1. Click on the Configure/Run Simulation button:
2. Make sure that the Common tab is chosen ⇒ Assign 15 seconds to the
Duration.
5
3. Click on the Object Attributes tab.
4. Click on the Add button. The Add Attribute dialog box should appear filled with
the promoted attributes of all nodes in the network (if you do not see the attributes
in the list, close the whole project and reopen it). You need to add the Interarrival
Time attribute for all nodes. To do that:
a. Click on the first attribute in the list (Office Network.node_0.Traffic
Generation ….) ⇒ Click the Wildcard button ⇒ Click on node_0 and
choose the asterisk (*) from the drop-down menu ⇒ Click OK.
b. A new attribute is now generated containing the asterisk (the second one in
the list), and you need to add it by clicking on the corresponding cell under
the Add? column.
c. The Add Attribute dialog box should look like the following. Click OK.
5. Now you should see the Office Network.*.Traffic Generation Parameter … in
the list of simulation object attributes. Click on that attribute to select it ⇒ Click the
Values button of the dialog box.
6. Add the following nine values. (Note: To add the first value, double-click on the
first cell in the Value column ⇒ Type “exponential (2)” into the textbox and hit
enter. Repeat this for all nine values.)
6
7. Click OK. Now look at the upper-right corner of the Simulation Configuration
dialog box and make sure that the Number of runs in set is 9.
8. For each simulation of the nine runs, we need the simulator to save a “scalar”
value that represents the “average” load in the network and to save another
scalar value that represents the average throughput of the network. To save
these scalars we need to configure the simulator to save them in a file. Click on
the Advanced tab in the Configure Simulation dialog box.
9. Assign _Ethernet_Coax to the Scalar file text field.
10. Click OK and then save your project.
7
Choose the Statistics
To choose the statistics to be collected during the simulation:
1. Right-click anywhere in the project workspace (but not on one of the nodes or
links) and select Choose Individual Statistics from the pop-up menu ⇒ Expand
the Global Statistics hierarchy.
a. Expand the Traffic Sink hierarchy ⇒ Click the check box next to Traffic
Received (packets/sec) (make sure you select the statistic with units of
packets/sec),
b. Expand the Traffic Source hierarchy ⇒ Click the check box next to
Traffic Sent (packets/sec).
c. Click OK.
2. Now to collect the average of the above statistics as a scalar value by the end of
each simulation run:
a. Select Choose Statistics (Advanced) from the Simulation menu.
b. The Traffic Sent and Traffic Received probes should appear under the
Global Statistic Probes.
c. Right-click on Traffic Received probe ⇒ Edit Attributes. Set the scalar
data attribute to enabled ⇒ Set the scalar type attribute to time
average ⇒ Compare to the following figure and click OK.
d. Repeat the previous step with the Traffic Sent probe.
e. Select save from the File menu in the Probe Model window and then
close that window.
f. Now you are back to the Project Editor. Make sure to save your project.
A probe represents a
request by the user to
collect a particular piece
of data about a
simulation.
8