network lab manual

116
Expt. No. 1 Title : ETHERNET Date : A Direct Link Network with Media Access Control 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. 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. 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 Creating a New Project To create a new project for the Ethernet network: 1. Start OPNET IT Guru Choose New from the File menu. 2. Select Project Click OK Name the project <your initials>_Ethernet, and the

Upload: siva5446

Post on 07-Apr-2015

690 views

Category:

Documents


11 download

TRANSCRIPT

Page 1: Network Lab Manual

Expt. No. 1 

Title : ETHERNET 

Date :  

A Direct Link Network with Media Access Control

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.

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.

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

Creating a New Project

To create a new project for the Ethernet network:

1. Start OPNET IT Guru ⇒ Choose New from the File menu.

2. Select Project ⇒ Click OK ⇒ Name the project <your initials>_Ethernet, and the

Page 2: Network Lab Manual

scenario Coax ⇒ Click OK

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

Finish.

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 Next.

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 eight values and click OK (Figure 3).

Figure 1 Rapid Configuration: Bus

4. To configure the coaxial bus, right-click on the horizontal link ⇒ Select Edit Attributes

Local area networks (LANs) are designed to span distances of up to a few thousand meters.

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. The eth_tap is an Ethernet bus tap that connects a node with the bus.

Page 3: Network Lab Manual

(Advanced) 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 (Figure 4).

b. Assign the value 0.05 to the delay attribute (propagation delay in s/m).

c. Assign 5 to the thickness attribute.

d. Click OK.

Figure 2 Configuring Coaxial Bus 5. Now you have created the network (Figure 5).

6. Make sure to save your project.

A higher delay is used here as an alternative to generating higher traffic which would require much longer simulation ti

Thickness specifies the thickness of the line used to “draw” the bus link

Page 4: Network Lab Manual

Figure 3 Coaxial Ethernet Network

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: Change the value of the ON State Time

to exponential(100) ⇒ Change the value of the OFF State Time to exponential(0.001). (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 Interarrival Time attribute

and hence to test the network performance under different loads (Figure 6).

Page 5: Network Lab Manual

Figure 4 Configuring Traffic Generated by Network Nodes

6. Click OK to return back to the Project Editor.

7. Make sure to save your project.

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 Configure/Run Simulation button:

2. Click Detailed ⇒ Common tab ⇒ Assign 15 seconds to the Duration.

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 independent of 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.

Page 6: Network Lab Manual

3. Expand Input click Object Attributes.

4. Click 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 the first attribute in the list (Office Network.node_0.Traffic Generation

….) ⇒ Click Wildcard button ⇒ Click 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 opens (Figure 7). Click OK.

Figure 5 Add Attribute: scenario

5. Now you should see the Office Network.*.Traffic Generation Parameter … in the list of

simulation object attributes (Figure 8). Click on that attribute to select it ⇒ Click Enter

Multiple Values… button of the dialog box.

6. Add the following nine values. (Note: To add the first value, click on the first cell in the

Value column ⇒ Type “exponential (2)” into the textbox and hit enter. Repeat this for all

Page 7: Network Lab Manual

nine values.)

Figure 6 Attribute: Office Network.*.Traffic Generation Parameters  

7. Click OK. Now look at the upper-right corner of the Simulation Configuration dialog box,

make sure that the Number of runs in set is 9.

8. Click Apply and then Close.

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:

Page 8: Network Lab Manual

a. Select Choose Statistics (Advanced) from the DES 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 with Figure 9 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.

Figure 7 (pb0) Attributes

A probe represents a request by the user to collect a particular piece of data about a simulation.

Page 9: Network Lab Manual

Run the Simulation

To run the simulation:

1. Click Configure/Run Discrete Event Simulation(DES) button: ⇒ Make sure

that 15 second(s) (not hours) is assigned to the Duration ⇒ Click Run. Depending on

the speed of your processor, this may take several minutes to complete.

2. Now the simulator is completing nine runs, one for each traffic generation

interarrival time (representing the load into the network). Notice that each

successive run takes longer to complete because the traffic intensity is increasing.

3. After the nine simulation runs complete, click Close.

4. Save your project.

View the Results

To view and analyze the results:

1. Select DES ⇒ Results ⇒ View Results.

Choose DES Parametric Studies. Expand Scalar Statistics, Choose Traffic Source. Traffic

Sent (packets/sec).average and click Set As X Series, Similarly Traffic Sink.Traffic

Received (packets/sec).average and click Set As Y Series.

2. The resulting graph is depicted in Figure 10.

Page 10: Network Lab Manual

Figure 8 Results Browser  

 

Questions based on Experiment

1. What are the benefits of Token passing Medium access scheme? How can u prevent the collision?

Page 11: Network Lab Manual

Expt. No. 2 

Title : Implementation of Distance Vector Routing Algorithm 

Date :  

 

Aim 

The  aim  of  this  experiment  is  to  study  the  implementation  of  RIP  (Routing  Information  Protocol) Distance‐Vector Routing Protocol  

 

The RIP Protocol (Routing Information Protocol) is, in a nutshell: 

• Designed   to   reach   a   stable   routing   table   with   the    less   Administrator management as possible. 

• The  messages  that  routers  send  each  other  are  sent  to  the  multicast address to reduce the hosts processing load. 

• It is a Intra‐Domain and Vector‐Distance protocol based in the Bellman‐ Ford algorithm. • Uses the hop count metric. • It is used in middle‐size networks with no more than 15 hops. • RIP messages are encapsulated  inside UDP  (port 520) and are sent once every 30 seconds, 

even if there are no changes in the network. • No authentication is required. • It was released  in BSD Unix  for the first time. The first version was RIPv1, a classful routing 

protocol. RIPv2 extended it using classless routing and other advantages. • It  is  defined  in RFC  1058  (RIPv1)  and  RFC  2453  (RIPv2).  The RFC2091  supports  Triggered 

Extension. 

All  routers  in  the  network  have  a  routing  table  to  indicate  the  link  to  forward  IP  packets.    Every  30 seconds, all routers send UDP messages to the surrounding routers, indicating the distance, expressed in hops, to the other routers. 

The  router  that  receives  the UDP message  increases 1 unit  the distance and will  lookup  in  its  tables  if there’s  a  shortest  path  to  the  destination.  If  there’s  no  shorter  link  then  the  routing  tables will  be updated. 

 

After  several  iterations  the protocol will  converge, and every  router  in  the network will  know how  to route each IP packet it receives, and this route will be the shortest. 

 

Page 12: Network Lab Manual

Lab Description 

Four  routers are  connected each other  in a  ring  topology. Each  router has  two  LANs attached. We are going to design three scenarios: NoFailure, where all the  links will work; WithFailure, with a specific link that  is  going  to  fail  during  the  simulation  and  stops  working  in  the  future: WithFailureAndRecovery, where the  link that  failed  is recovered later, and restarts working as before. 

The purpose of  this  scenario  is  to  represent with  a bar  chart  the  routing  table updates and  to see  the evolution of the routing tables. 

Creating the Scenario 

 1.  Open a new project  in OPNET  IT Guru Academic Edition  (File   New Project) 

 

with the following parameters (leave default values for the remainder): 

 

• Project Name: <your_name>_RIP • Scenario Name: SenseFallida • Network Scale: Campus 

Use the Next button in the Startup Wizard until the end. A new blank grid shall open in the Project Editor. 

 

   2.  Deploying devices and controls upon the Grid: 

The  following table summarizes all  the nodes that have to be deployed  in the scenario, and the Object Palette where can be found. 

 

Qty  Component     Palette   Description

4  ethernet4_slip8_gtwy  internet toolbox        Routers

8  100BaseT_LAN                  internet toolbox        LAN network model

1  Failure Recovery    utilities   Failure and Recovery Control 

4  PPP_DS3                          links    To connect the routers each other 

8  100BaseT      internet toolbox        To connect the routers with the LANs. 

L4.1  Component list 

Page 13: Network Lab Manual

Rename all  the components as  seen  in picture L4.2. Hereinafter we will  refer them by their name. 

L4.2   The scenario with the names of the nodes 

The  fastest way  to create  the  scenario  is  to create  first Router 1, LAN 1 and LAN  2 with  their  names, and  connect  them with  wires.  After  that,  copy  the whole  structure  and  paste  it  three  times.  OPNET manages  the name nodes  to make  a succession.  Finally,  connect  the routers  with PPP_DS3,  deploy a Failure Recovery control and rename it. 

3.  Exporting routing tables to the Simulation Log: 

Select all the routers of the scenario, right click on any and Edit Attributes. Check the following options: 

• IP Routing Parameters    Routing Table Export   • Status: Enabled • Export Time(s) Specification      row 0      Time: End of Simulation 

Apply  Changes  to  Selected  Objects  (To  perform  changes  on  all  the routers of the scenario). 

Page 14: Network Lab Manual

L4.3 Exporting the routing tables 

 

4.   Statistics: 

From  the  Project   Editor,  right  click  on  the  Grid   and  Choose  Individual Statistics.  Select the  following statistics  in  the Choose Results dialog. Click OK. 

Global Statistics    RIP    Traffic Sent (bits/sec) 

Global Statistics    RIP     Traffic Received (bits/sec) 

Node Statistics    Route Table    Total Number of Updates 

 

5.   Simulation configuration: 

In  the Project Editor, click on configure/run simulation  , and use  the following parameters: 

• Duration: 10 minute(s). • On the Global Attributes tab, 

• IP Dynamic Routing Protocol: RIP. This  sets RIP protocol  for all the routers  in the scenario. We  can  do  this  also  in  the  Project  Editor  doing      Protocols      IP   Routing   Configure   Routing   Protocols and setting RIP in all interfaces. 

• IP Interface Addressing Mode: Auto Addressed / Export • RIP Sim Efficiency: Disabled.  If this attribute  is Enabled, the RIP protocol will stop 

after the “Stop Time”. But instead of this, we want it  to  continue updating  the routing  tables when  there are  changes. This   is   precisely   what   we   will   do   in   the   second   scenario,   by programming a controlled link failure to study routing changes. 

• RIP  Stop  Time:  10000  will  ensure  that  the  tables  won’t  stop updating during 

Page 15: Network Lab Manual

the simulation. • IP  Routing  Table  Export/Import:  Export.  This  will  export  the routing tables to a 

file when the simulation ends.  

When finished, click OK (do not run the simulation yet). 

 

 

Creating the second and third scenarios 

In  the  scenario we  just  build  up,  the  routers maintain  their  routing  tables  and  are  not  going  to  be updated anymore  if  there are no network  failures, so once all  the routes are set, they won’t change at all. We first want to study the effect of a router failure, to see how RIP can learn new routes. 

 

1.   In    the    Project    Editor,    Scenario    Duplicate    Scenario..    and    call    it  

      WithFailure. 

     Right   click  on  the  Failure  object,  and   Edit  Attributes,  expand  the   Link Failure/Recovery Specification  branch,  set  rows:  1  and  unfold  the  branch of  the new  row. Use  the  following data: 

 

L4.4 Programming a link failure 

We  have  established  a  failure  for Router  2  –  Router  1  link,  180  seconds  after the simulation start. Click OK to close the dialog. 

Page 16: Network Lab Manual

 

 

  2.  Creating the third scenario: 

Now  we  create  the  third  scenario:  WithFailureAndRecovery  with  the  same parameters  as the  second  but  180  seconds  after  the  link  failure  (i.e.,  360  seconds  after  the  simulation start),  the  link will  recover. Repeat  the  steps as before but this time use Status: Recovery. 

 

  3.  Run the simulation of the three scenarios at the same time: 

In  the  Project   Editor,       Scenarios     Manage  Scenarios…   Change  values  of column Results and click <collect> or <recollect> on every scenario. 

When we click OK now, the 3 simulations will run in sequence. Click on Close 

when the three simulations are over (wait for Simulation runs to go to be 0). 

 

L4.5 Detail of Simulation sequence dialog 

Results analysis 

1.  Compare the number of updates of the routing tables done by the RIP protocol  

      (Q1). 

 

In the Project Editor, Results    Compare Results. 

 

Page 17: Network Lab Manual

We can see in picture L4.6 that we have to choose Stacked Statistics and  All Scenarios to    show  the  graphics  of  all  scenarios  at  the  same  time,  but with  overlaid  charts  to compare results. 

 

 

L4.6 Compare Results 

Select the statistic  Total Number of Updates for Router1 and click on  Show. 

 

The two graphics appear now.  Right click on each scenario and select  Draw Style   Bar. 

 

2.  Obtaining  the IP addresses of the interfaces (needed to study the routing tables).  

      (Q2). 

The IP addresses of all the interfaces are generated automatically during the simulation.   When   we      set        IP      Interface     Addressing     Mode:     Auto Addressed/Export we made  all  this information to be able for analysis. We will export this data into a Generic Data File (gdf). 

     On    the   System     window,     choose     File     Model   Files     Refresh   Model Directories.  OPNET will search the models directory and update the file list. 

 

Page 18: Network Lab Manual

L4.7 Refresh Model Directories 

Don’t forget that the System window can be open in the Project Editor if its closed (Windows   System). 

 

 

 In  the  System  window:  File      Open,  and  choose  Generic  Data  File.  Use  the  filename <your_name>_RIP‐NoFailure‐ip_addresses. This  file  is generated automatically during  the simulation. Click OK. 

 

An editor will pop up with the Generic Data File we choose. This contains the IP addresses of all the active interfaces in our network model. 

L4.8 Generic Data File with the IP addresses 

Page 19: Network Lab Manual

3.  Comparing the routing tables: 

Steps  to visualize  the  routing  tables of a  router,  for  instance Router 1,  for  the  two  scenarios (Q3): 

 

o In the Project Editor, Results    Open Simulation Log. o Click on the COMMON ROUTE TABLE entry for the router. 

 

The routing tables export is not saved until the end, because we are using the 

Once at End of Simulation option. 

L4.9 Router 1 routing table 

 

Questions 

Q1 Create a routing table update bar chart for Router 1 throughout all 3 scenarios, and analyze it. 

Q2 Write down the  IP  addresses for all  interfaces on picture L4.2. They may differ depending on the creation order. 

Q3 Compare the routing tables for Router 1 throughout all 3 scenarios. Routing tables are  visible  in  the  Simulation  Log  for  all  the  scenarios  (Scenarios   Switch  to Scenario in the Project Editor).  Compare the  ingoing  routes  to  LAN 3,    LAN 4 and Router 2  loopback. Pay attention  to  these  fields: Next Hop, Insertion Time and Metric. 

Page 20: Network Lab Manual

 

Answers 

Q1 Routing  tables do not differ much during  the  simulation unless  there are any  changes,  like a  link failure or recovery. 

 

L4.10 Router 1 table updates 

Q2 This is the .gdf file generated and the IP addresses for all interfaces on the network:

#

# Purpose: Contains IP address information for all active

# interfaces in the current network model.

# (created by exporting this information from the model.)

#

# Node Name: Campus Network.LAN 1

# Iface Name Iface Index IP Address Subnet Mask Connected Link

# ---------- ----------- --------------- --------------- ----------------

IF0 0 192.0.0.1 255.255.255.0 Campus Network.LAN 1 <-> Router 1

# Node Name: Campus Network.Router 1

# Iface Name Iface Index IP Address Subnet Mask Connected Link

Page 21: Network Lab Manual

# ---------- ----------- --------------- --------------- ----------------

IF0 0 192.0.0.2 255.255.255.0 Campus Network.LAN 1 <-> Router 1

IF1 1 192.0.1.1 255.255.255.0 Campus Network.LAN 2 <-> Router 1

IF10 10 192.0.2.1 255.255.255.0 Campus Network.Router 2 <-> Router 1

IF11 11 192.0.3.1 255.255.255.0 Campus Network.Router 1 <-> Router 4

Loopback 12 192.0.4.1 255.255.255.0 Not connected to any link.

# Node Name: Campus Network.LAN 2

# Iface Name Iface Index IP Address Subnet Mask Connected Link

# ---------- ----------- --------------- --------------- ----------------

IF0 0 192.0.1.2 255.255.255.0 Campus Network.LAN 2 <-> Router 1

# Node Name: Campus Network.Router 2

# Iface Name Iface Index IP Address Subnet Mask Connected Link

# ---------- ----------- --------------- --------------- ----------------

IF1 1 192.0.5.1 255.255.255.0 Campus Network.LAN 3 <-> Router 2

IF2 2 192.0.6.1 255.255.255.0 Campus Network.LAN 4 <-> Router 2

IF10 10 192.0.2.2 255.255.255.0 Campus Network.Router 2 <-> Router 1

IF11 11 192.0.7.1 255.255.255.0 Campus Network.Router 3 <-> Router 2

Loopback 12 192.0.8.1 255.255.255.0 Not connected to any link.

# Node Name: Campus Network.LAN 3

# Iface Name Iface Index IP Address Subnet Mask Connected Link

# ---------- ----------- --------------- --------------- ----------------

IF0 0 192.0.5.2 255.255.255.0 Campus Network.LAN 3 <-> Router 2

# Node Name: Campus Network.LAN 4

# Iface Name Iface Index IP Address Subnet Mask Connected Link

# ---------- ----------- --------------- --------------- ----------------

IF0 0 192.0.6.2 255.255.255.0 Campus Network.LAN 4 <-> Router 2

# Node Name: Campus Network.LAN 5

# Iface Name Iface Index IP Address Subnet Mask Connected Link

# ---------- ----------- --------------- --------------- ----------------

IF0 0 192.0.9.1 255.255.255.0 Campus Network.LAN 5 <-> Router 3

# Node Name: Campus Network.Router 3

Page 22: Network Lab Manual

# Iface Name Iface Index IP Address Subnet Mask Connected Link

# ---------- ----------- --------------- --------------- ----------------

IF0 0 192.0.9.2 255.255.255.0 Campus Network.LAN 5 <-> Router 3

IF1 1 192.0.10.1 255.255.255.0 Campus Network.LAN 6 <-> Router 3

IF10 10 192.0.7.2 255.255.255.0 Campus Network.Router 3 <-> Router 2

IF11 11 192.0.11.1 255.255.255.0 Campus Network.Router 4 <-> Router 3

Loopback 12 192.0.12.1 255.255.255.0 Not connected to any link.

# Node Name: Campus Network.LAN 6

# Iface Name Iface Index IP Address Subnet Mask Connected Link

# ---------- ----------- --------------- --------------- ----------------

F0 0 192.0.10.2 255.255.255.0 Campus Network.LAN 6 <-> Router 3

# Node Name: Campus Network.LAN 7

# Iface Name Iface Index IP Address Subnet Mask Connected Link

# ---------- ----------- --------------- --------------- ----------------

IF0 0 192.0.13.1 255.255.255.0 Campus Network.LAN 7 <-> Router 4

# Node Name: Campus Network.Router 4

# Iface Name Iface Index IP Address Subnet Mask Connected Link

# ---------- ----------- --------------- --------------- ----------------

IF0 0 192.0.13.2 255.255.255.0 Campus Network.LAN 7 <-> Router 4

IF1 1 192.0.14.1 255.255.255.0 Campus Network.LAN 8 <-> Router 4

IF10 10 192.0.11.2 255.255.255.0 Campus Network.Router 4 <-> Router 3

IF11 11 192.0.3.2 255.255.255.0 Campus Network.Router 1 <-> Router 4

Loopback 12 192.0.15.1 255.255.255.0 Not connected to any link.

# Node Name: Campus Network.LAN 8

# Iface Name Iface Index IP Address Subnet Mask Connected Link

# ---------- ----------- --------------- --------------- ----------------

IF0 0 192.0.14.2 255.255.255.0 Campus Network.LAN 8 <-> Router 4

L4.11 Generic Data File (gdf) 

 

Page 23: Network Lab Manual

L4.12 IP Addresses for all interfaces 

 

Q3 The  tables produced at  the end of  the simulation  for  the  first 3 scenarios can be seen   in   picture   below.   Routes   to   networks   192.0.5.0/24,   192.0.6.0/24   and 

192.0.8.0/24 appear  in red color. They’re the networks of the two LANs connected to Router 2. Router 1  has  direct  access  (Metric  =  1) when  there’s  no  link  failure. When the  link  fails, however,  access  is granted  though using another path, Metric and Next Hop. When the  link is up once again, the routing table is identical as the first scenario, but the Insertion Time is delayed. 

 

• NoFailure 

COMMON ROUTE TABLE snapshot for:

Router name: Campus Network.Router 1

at time: 600,00 seconds

ROUTE TABLE contents:

Dest. Address Subnet Mask Next Hop Interface Name Metric Protocol Insertion Time

--------------- --------------- --------------- --------------- ------ -------- --------------

192.0.0.0 255.255.255.0 192.0.0.2 IF0 0 Direct 0,000

192.0.1.0 255.255.255.0 192.0.1.1 IF1 0 Direct 0,000

192.0.2.0 255.255.255.0 192.0.2.1 IF10 0 Direct 0,000

92.0.3.0 255.255.255.0 192.0.3.1 IF11 0 Direct 0,000

192.0.4.0 255.255.255.0 192.0.4.1 Loopback 0 Direct 0,000

Page 24: Network Lab Manual

L4.13 

• WithFailure 

192.0.5.0 255.255.255.0 192.0.2.2 IF10 1 RIP 5,000

192.0.6.0 255.255.255.0 192.0.2.2 IF10 1 RIP 5,000

192.0.7.0 255.255.255.0 192.0.2.2 IF10 1 RIP 5,000

192.0.8.0 255.255.255.0 192.0.2.2 IF10 1 RIP 5,000

192.0.11.0 255.255.255.0 192.0.3.2 IF11 1 RIP 5,000

192.0.13.0 255.255.255.0 192.0.3.2 IF11 1 RIP 5,000

192.0.14.0 255.255.255.0 192.0.3.2 IF11 1 RIP 5,000

192.0.15.0 255.255.255.0 192.0.3.2 IF11 1 RIP 5,000

192.0.9.0 255.255.255.0 192.0.2.2 IF10 2 RIP 7,263

192.0.10.0 255.255.255.0 192.0.2.2 IF10 2 RIP 7,263

192.0.12.0 255.255.255.0 192.0.2.2 IF10 2 RIP 7,263

COMMON ROUTE TABLE snapshot for:

Router name: Campus Network.Router 1

at time: 600,00 seconds

ROUTE TABLE contents:

Dest. Address Subnet Mask Next Hop Interface Name Metric Protocol Insertion Time

--------------- --------------- --------------- --------------- ------ -------- --------------

192.0.0.0 255.255.255.0 192.0.0.2 IF0 0 Direct 0,000

192.0.1.0 255.255.255.0 192.0.1.1 IF1 0 Direct 0,000

192.0.2.0 255.255.255.0 192.0.2.1 IF10 0 Direct 0,000

192.0.3.0 255.255.255.0 192.0.3.1 IF11 0 Direct 0,000

192.0.4.0 255.255.255.0 192.0.4.1 Loopback 0 Direct 0,000

192.0.11.0 255.255.255.0 192.0.3.2 IF11 1 RIP 5,000

192.0.13.0 255.255.255.0 192.0.3.2 IF11 1 RIP 5,000

192.0.14.0 255.255.255.0 192.0.3.2 IF11 1 RIP 5,000

192.0.15.0 255.255.255.0 192.0.3.2 IF11 1 RIP 5,000

192.0.5.0 255.255.255.0 192.0.3.2 IF11 3 RIP 185,000

192.0.6.0 255.255.255.0 192.0.3.2 IF11 3 RIP 185,000

192.0.7.0 255.255.255.0 192.0.3.2 IF11 2 RIP 185,000

Page 25: Network Lab Manual

L4.14 

 

• WithFailureAndRecovery 

L4.15 

192.0.8.0 255.255.255.0 192.0.3.2 IF11 3 RIP 185,000

192.0.9.0 255.255.255.0 192.0.3.2 IF11 2 RIP 185,000

192.0.10.0 255.255.255.0 192.0.3.2 IF11 2 RIP 185,000

192.0.12.0 255.255.255.0 192.0.3.2 IF11 2 RIP 185,000

COMMON ROUTE TABLE snapshot for:

Router name: Campus Network.Router 1

at time: 600,00 seconds

ROUTE TABLE contents:

Dest. Address Subnet Mask Next Hop Interface Name Metric Protocol Insertion Time

--------------- --------------- --------------- --------------- ------ -------- --------------

192.0.0.0 255.255.255.0 192.0.0.2 IF0 0 Direct 0,000

192.0.1.0 255.255.255.0 192.0.1.1 IF1 0 Direct 0,000

192.0.2.0 255.255.255.0 192.0.2.1 IF10 0 Direct 0,000

192.0.3.0 255.255.255.0 192.0.3.1 IF11 0 Direct 0,000

192.0.4.0 255.255.255.0 192.0.4.1 Loopback 0 Direct 0,000

192.0.11.0 255.255.255.0 192.0.3.2 IF11 1 RIP 5,000

192.0.13.0 255.255.255.0 192.0.3.2 IF11 1 RIP 5,000

192.0.14.0 255.255.255.0 192.0.3.2 IF11 1 RIP 5,000

192.0.15.0 255.255.255.0 192.0.3.2 IF11 1 RIP 5,000

192.0.9.0 255.255.255.0 192.0.3.2 IF11 2 RIP 185,000

192.0.10.0 255.255.255.0 192.0.3.2 IF11 2 RIP 185,000

192.0.12.0 255.255.255.0 192.0.3.2 IF11 2 RIP 185,000

192.0.5.0 255.255.255.0 192.0.2.2 IF10 1 RIP 365,000

192.0.6.0 255.255.255.0 192.0.2.2 IF10 1 RIP 365,000

192.0.7.0 255.255.255.0 192.0.2.2 IF10 1 RIP 365,000

192.0.8.0 255.255.255.0 192.0.2.2 IF10 1 RIP 365,000

Page 26: Network Lab Manual

Expt. No. 3 

Title : ICMP PING 

Date :  

ICMP (Internet Control Message Protocol) is encapsulated inside the IP protocol, and is used for

network troubleshooting and control messaging. It is used to notify that a datagram did not reach its

destination either because the destination host was not found (UNREACHABLE HOST) or because the

IP packets traveled across too many routers (TTL EXCEEDED).

Objective

This Lab explains yet another application: ICMP ECHO REQUEST/ECHO REPLY (aka Ping). An

ECHO REQUEST message is sent to an IP address to find out if the communication between

peers is working. The destination computer is supposed to answer with a ECHO REPLY message. A

network is created with a 5-routers-ring-backbone and 2 workstations (A and B) directly opposite. A

will send an ECHO REQUEST to B, and B will answer with an ECHO REPLY. We’ll check out that the

REQUEST packet went through the three routers between peers, and the REPLY packet came back

using the same path (the routing protocol for this Lab is RIP). In a second scenario, one of this links will

fail, and we will study how this changes the ping trace.

This lab session teaches you the basics to understand how ECHO Request and Reply takes place, and

also to use Ring Topology to route through different paths.

Procedure

Creating a New Project & Network

To create a new project for the ICMP Ping network:

1. Start OPNET IT Guru ⇒ Choose New from the File menu.

Project Name : <your_name>_Ping

Scenario Name: NoFailure

Page 27: Network Lab Manual

Network Scale: Campus

2. Press Next several times to end the Startup Wizard. Close the Object Palette dialog

box. The Project Editor will be launched with a blank Grid.

3. To create the 5-router ring: Topology ⇒ Rapid Configuration

a. On the Popup window, Configuration: Ring, press Next (Figure 11).

b. Click Select Models and choose internet_toolbox in the combo box, to select

the library where we want to pick up the routers and links from. Press OK.

c. In the Node Model combo box, pick up the router

CS_4000_3s_e6_fr2_sl2_tr2.

d. Select the link to connect the routers, Link Model: PPP_DS1

e. Number: 5 routers.

f. The center for the ring is (X,Y)=(5,5).

g. The radius length is 2.5.

h. Press OK to create the network.

 

Figure 9 Rapid Configuration: Ring

4. Insert two workstations Sm_Int_wkstn and connect each other with

10BaseT wires:

a. Open the Object Palette by clicking on .

b. Drag the two Sm_Int_wkstn workstations, and drop them into the Grid. This

can be found in the Sm_Int_Model_List palette in the Object Palette. Change

Page 28: Network Lab Manual

the attributes:

i. Right-click on the station and press Edit Attributes.

ii. Select Application Supported Profiles ⇒ rows: 0. By doing this, the

workstations won’t have any profile defined (We don’t need any, because

the only traffic demand we want is Ping).

iii. Repeat this process for the two workstations.

c. Connect the two workstations to the two routers directly opposite using 10BaseT

wires from the same palette.

d. Now the network is complete and is time to set the ICMP traffic. The first step

is to place an IP Attribute Config control. This can be found in the

internet_toolbox palette.

e. Edit the control properties (right click Edit Attributes). The parameters to be

set can be found in IP Ping Parameters row 0 (Pattern: Default) – Figure 12.

i. Interval (sec): 90

ii. Count: 1000

iii. Record Route: Enabled

f. Press OK to accept the changes.

 

Page 29: Network Lab Manual

 

 

Figure 10 (node_7) Attributes  

5. Using the ip_ping_traffic object from the Object Palette (internet_toolbox), draw

an ICMP ping demand from one host to the other:

a. Select the ip_ping_traffic object in the palette.

b. Click on one workstation (start) and then on the other one (end).

c. Upon completion, press the right button and select Abort Demand

Definition to stop drawing wires.

d. Right-click on the flow line and click Edit Attributes, and then set:

i. Ping Pattern: Default

ii. Start Time: constant(1000)

6. Choose RIP as routing protocol for the scenario:

a. On the Project Editor Menu, choose Protocols ⇒ IP ⇒ Routing ⇒ Configure

Page 30: Network Lab Manual

Routing Protocols...Check out that only RIP is selected and press OK.

b. Protocols ⇒ RIP ⇒ Configure Start Time. Select Mean Outcome: 20 and

press OK. The RIP protocol will begin creating routing tables at this moment.

c. Change the node names for the Routers as Router 1, 2…etc., and also for the

workstations as Workstation 1, 2 etc (Figure 13).

Figure 11 Routing

Choose Statistics & Configure Simulation

1. Chose RIP as routing protocol for the scenario: Click

Page 31: Network Lab Manual

Configure/run simulation at the Project Editor, and set these values:

a. Duration: 1 hour(s).

b. In the Global Attributes ⇒ Simulation Efficiency,

i. RIP Sim Efficiency: Disabled. RIP messages will be sent all the

time during the simulation.

ii. IP Stop Time: 10000. Routing Tables will be updated during all the

simulation (the simulation is finished before RIP stops).

c. In the Global Attributes ⇒ IP,

IP Routing Table Export/Import: Export. We will export routing tables to a

file at the end.

d. Click Run.

View the Results

Once the simulation is over,

1. Exit the simulation window by clicking on Close.

2. At the Project Editor, click DES ⇒ Results ⇒ View DES Reports ⇒ DES Run(1)

Tables. Expand Object Tables ⇒ Campus Network ⇒ Workstation1 ⇒ Ping

Report… (Figure 14):

Page 32: Network Lab Manual

Figure 12 Results Browser

Question

Duplicate the scenario NoFailure and call it WithFailure. Choose a link the PING was using in

the last simulation (e.g. Router 1- Router 2), and make it fail, by selecting it and clicking on

the mark selected node or link as failed button. Analyze the new ping trace.

Answer

At the Project Editor, Scenarios ⇒ Duplicate Scenario. The new scenario is called Scenario

Name: WithFailure and we press OK. We mark Router 1 – Router 2 link to fail and execute

the simulation. The ping trace takes a new path now; it can be viewed in the Report.

Page 33: Network Lab Manual

Expt. No. 4 

Title : SWITCHED LANS 

Date :  

A Set of LANs Interconnected by Switches

There is a limit to how many hosts can be attached to a single network and to the size of a geographic

area that a single network can serve. Computer networks use switches to enable the

communication between one host and another, even when no direct connection exists between

those hosts. A switch is a device with several inputs and outputs leading to and from the hosts that

the switch interconnects. The core job of a switch is to take packets that arrive on an input and

forward (or switch) them to the right output so that they will reach their appropriate destination. A key

problem that a switch must deal with is the finite bandwidth of its outputs. If packets destined for a

certain output arrive at a switch and their arrival rate exceeds the capacity of that output, then we have

a problem of contention. In this case, the switch will queue, or buffer packets until the contention

subside. If it lasts too long, however, the switch will run out of buffer space and be forced to discard

packets. When packets are discarded too frequently, the switch is said to be congested.

Objective

This lab is designed to demonstrate the implementation of switched local area networks. The

simulation in this lab will help you examine the performance of different implementations of

local area networks connected by switches and hubs.

Procedure

Create a New Project

1. Start the OPNET IT Guru ⇒ Choose New from the File menu.

2. Select Project and click OK ⇒ Name the project <your initials>_SwitchedLAN, and

the scenario OnlyHub ⇒ Click OK.

3. In the Startup Wizard: Initial Topology dialog box, make sure that Create Empty

Page 34: Network Lab Manual

Scenario is selected ⇒ Click Next ⇒ Choose Office from the Network Scale list ⇒

Click Next three times ⇒ Click Finish.

4. Close the Object Palette dialog box.

Create the Network

To create our switched LAN:

1. Select Topology ⇒ Rapid Configuration. From the drop-down menu choose Star

and click Next.

2. Click the Select Models button in the Rapid Configuration dialog box. From the

Model List drop-down menu choose ethernet and click OK.

3. In the Rapid Configuration dialog box (Figure 15), set the following five values: Center

Node Model = ethernet16_hub, Periphery Node Model = ethernet_station,

Link Model = 10BaseT, Number=16, Y=50, and Radius = 42 ⇒ Click OK.

Figure 13 Rapid Configuration: Star

4. Right-click on node_16, which is the hub ⇒ Edit Attributes ⇒ Change the name

attribute to Hub1 and click OK.

5. Now that you have created the network, it should look like Figure 16.

6. Make sure to save your project.

The prefix ethernet16 indicates that the device supports up to 16 Ethernet

ti

The 10BaseT link represents an Ethernet

ti

Page 35: Network Lab Manual

Figure 14 Switched LAN

Configure the Network Nodes

Here you will configure the traffic generated by the stations.

1. Right-click on any of the 16 stations (node_0 to node_15) ⇒ Select Similar Nodes.

Now all stations in the network are selected.

2. Right-click on any of the 16 stations ⇒ Edit Attributes.

3. Check the Apply Changes to Selected Objects check box. This is important to avoid

reconfiguring each node individually.

4. Expand the hierarchies of the Traffic Generation Parameters attribute and the

Packet Generation Arguments attribute ⇒ Set the following four values (Figure 17):

Page 36: Network Lab Manual

Figure 15 (node_8) Attrbutes

5. Click OK to close the attribute editing window(s). Save your project.

Choose Statistics

To choose the statistics to be collected during the simulation:

1. Right-click anywhere in the project workspace and select Choose Individual DES

Statistics from the pop-up menu.

2. In the Choose Results dialog box, choose the four statistics as depicted in Figure 18.

3. Click OK.

Page 37: Network Lab Manual

Figure 16 Choose Results

Configure the Simulation

Here we need to configure the duration of the simulation:

The Ethernet Delay represents the end to end delay of all packets received by all the stations.

Traffic Received (in pkts/sec) by the traffic sinks across all nodes.

Traffic sent(in pkts/sec) by the traffic sources

ll d

Collision Count is the total no: of collisions encountered by the hub during packet transmissions

Page 38: Network Lab Manual

1. Click Configure/Run Discrete Event Simulation(DES) button:

2. Set the duration to be 2.0 minutes.

3. Click Run.

Duplicate the Scenario

The network we just created utilizes only one hub to connect the 16 stations. We need to create

another network that utilizes a switch and see how this will affect the performance of the network. To

do that we will create a duplicate of the current network:

1. Select Duplicate Scenario from the Scenarios menu and give it the name

HubAndSwitch ⇒ Click OK.

2. Open the Object Palette by clicking on . Make sure that ethernet is selected in

the pull-down menu on the object palette.

3. We need to place a hub and a switch in the new scenario. (Circled in Figure 19).

Figure 17 Object Palette

4. To add the Hub, click its icon in the object palette ⇒ Move your mouse to the workspace

⇒ Click to drop the hub at a location you select. Right-click to indicate you are done

Page 39: Network Lab Manual

deploying hub objects.

5. Similarly, add the Switch

6. Close the Object Palette.

7. Right-click on the new hub ⇒ Edit Attributes ⇒ Change the name attribute to Hub2

and click OK.

8. Right-click on the switch ⇒ Edit Attributes ⇒ Change the name attribute to Switch

and click OK.

9. Reconfigure the network of the HubAndSwitch scenario so that it looks like Figure 20.

Hints:

a. To remove a link, select it and choose Cut from the Edit menu (or simply hit the

Delete key). You can select multiple links and delete all of them at once.

b. To add a new link, use the 10BaseT link available in the Object Palette.

10. Save your project.

Figure 18 Network

Page 40: Network Lab Manual

Run the Simulation

To run the simulation for both scenarios simultaneously:

1. Select Manage Scenarios from the Scenarios menu.

2. Change the values under the Results column to <collect> (or <recollect>) for both

scenarios. Compare it with Figure 21.

Figure 19 Manage Scenarios

3. Click OK to run the two simulations. Depending on the speed of your processor, this may take

several minutes to complete.

4. Upon completion of the two simulations, one for each scenario, click Close.

5. Save your project.

View the Results

To view and analyze the results:

1. From DES menu, select Results ⇒ Compare Results.

2. Change the drop-down menu in the lower-right part of the Compare Results dialog box

from As Is to time_average (Figure 21).

3. Select the Traffic Sent (packets/sec) statistic and click Show, you see, the traffic sent in

both scenarios is almost identical.

4. Select the Traffic Received (packets/sec) statistic and click Show, you see, the traffic

received with the second scenario, HubAndSwitch, is higher than that of the OnlyHub

Page 41: Network Lab Manual

scenario.

5. Select the Delay (sec) statistic and click Show. (Note: Result may vary slightly due to

different node placement.)

6. Select the Collision Count statistic for Hub1 and click Show.

7. On the resulting graph right-click anywhere on the graph area ⇒ Choose Add Statistic

⇒ Expand the hierarchies a s s h o w n i n F i g u r e 2 2 ⇒ Select the Collision Count

statistic for Hub2 ⇒ Change As Is to time_average ⇒ Click Add.

8. Save your Project.

Figure 20 Results Browser  

 

 

 

Expt. No. 5 

time_average is the average value over time of the values generated during the collection window. This average is performed assuming a “sample-and-hold” behavior of the data set (i.e., each value is weighted by the amount of time separating it from the following update and the sum of all the weighted values is divided by the width of the collection window). For example, suppose you have a 1-second bucket in which 10 values have been generated. The first 7 values were generated between 0 and 0.3 seconds, the 8th value at 0.4 seconds, the 9th value at 0.6 seconds, and the 10th at 0.99 seconds. Because the last three values have higher durations, they are weighted more heavily in

Page 42: Network Lab Manual

Title : Implementation of Link State Routing Algorithm 

Date :  

 

Aim 

The aim of this experiment is to study the performance of OSPF Link State Routing Protocol 

 

OSPF (Open Shortest Path First) is yet another routing protocol. In a nutshell: 

• It  is  a Link‐State  protocol  instead  of  a  Vector‐Distance  as  RIP.  Link‐State protocols converge faster than Vector‐Distance. 

• It is a Interior Gateway Protocol (IGP), used for Internet routing. • Based on Dijkstra algorithm. • Based on IP, it does not use any upper layer service (RIP uses TCP/UDP). • Can calculate many routes for each IP service. • Can use Load‐Balancing (balanced distribution of traffic on different routers) for same‐cost routes. 

If there are many same‐cost routes, OSPF will write all them up in the routing tables. • The effective bandwidth  is  reduced by  the protocol because of  its multicast  IP messages usage, 

instead of broadcast. Does not overload  those systems  that do not use OSPF. • Can use many metrics: outgoing  frame  length,  throughput, delay,  link  liability, cost, etc. RIP can 

only use hop counting. • Messages are sent only if there are changes on the topology. • Needs a better  router processing  speed:  routers have a  link  state  table and  a route state table 

as well. • Can implement classless addresses (CIDR). • Can  use  areas.  The  traffic  generated  by  the  OSPF  protocol  can  be  significantly  decreased 

dividing the network in areas. Routers do not have to save any other data  but  the  routing within their  own  area  and  a  route  to  other  areas.  This reduces a  lot the OSPF  load on the network and the global results can be better than with a more accurate route. Areas are  identified by an Area ID. The Area ID  is  a  32‐bit  number  using  A.B.C.D  notation  (similar  to  IP  addresses).  The backbone  is usually  identified by 0.0.0.0. The other areas use 0.0.0.1 and so on. 

• OSPF is based in open standards and public domain specification. The current implementation is based on RFC 2328. 

 

Lab Description 

This Lab is divided in three scenarios:  

• NoAreas, where no  area  is defined.  Its proves how   OSPF  chooses  the  cheapest   area  when  two  possible  paths  exist;   

• WithAreas explains  areas,  and   

Page 43: Network Lab Manual

• LoadBalancing  shows  how  two  equal‐cost  routes  are  used equally to divide the traffic across the route, and thus reducing the total load on each link. 

 

Scenario Creation 

1.  Open  a  new  OPNET  IT Guru  Academic  Edition  Project  (File    New  Project) 

using the following parameters (use default values for the remainder): 

o Project Name: <your_name>_OSPF o Scenario Name: NoAreas o Network Scale: Campus o 1000x1000 Meters 

Press Next several times until the Startup Wizard finishes. A new blank grid is now created in the Project Editor. 

 

  2.  Deploying devices on the grid: 

In       the       Project         Editor,         Topology  Rapid       Configuration,       choose Configuration: Mesh, Full and click OK. Set the following parameters  in the dialog: 

 

 

 

L5.1 Rapid Configuration 

 

This creates 5 ethernet_slip_8_gtwy nodes in a full‐meshed, star‐topology. 

Deploy  the  remaining nodes as  in picture L5.2. Zoom +   before  to work more  comfortably. All nodes are  type ethernet_slip8_gtwy and are  connected using PPP_DS3 wiring. 

Use   the   same   node   names:   we  will   refer   to   them   using   these   names hereinafter. We used OPNET default names  (including autonumbering). Use the same order of creation to obtain the same numbers. 

Page 44: Network Lab Manual

The  picture  shows  the  links  cost  as well. We will  explain  how  to  set  the  costs  later,  but  it  is  not necessary  to use  the  labels on  the  links  (Topology   Open Annotation Palette). The colored arrows have a special meaning, as we will see. 

L5.2 The completed scenario 

3.  Configuring the link cost: 

 

The   link   cost   formula   is   given   by:    

Cost  =   (Reference   Bandwidth)/(Link Bandwidth).  

The default value is Reference Bandwidth = 1,000,000 Kbps.  

To assign a link cost (for instance, to assign 10 units to node 8 – node 9): 

 

10=1.000.000/Link Bandwidth      Link Bandwidth = 100.000 

 

The  Link  Bandwidth  value  can  be  set  to  a  specific   link  by  selecting  all  the  same‐cost  links  (hold Shift  key  +  Left  button  for multiple  selections),  and  then  Protocols       IP     Routing     Configure Interface Metric Information. 

 

For   the     example,   we    input          Bandwidth   (Kbps):   100000,   checked Interfaces      across     selected    links   and   pressed   OK.   The   remaining parameters use default values. 

Page 45: Network Lab Manual

 

 

5.3 Setting the link metrics 

 

 

The remaining links have Cost=1      Bandwidth = 1000000 Kbps. 

 

4.  Configuring traffic demands: We create two traffic demands 

 

o node_7 to node_9 o node_8 to node_9 

 

To create the node_7 to node_9 demand (the other one is similar) 

 

o Select node_7 and node_9. o In    the    Project    Editor,    Protocols    IP    Demands   Create    Traffic Demands… 

Select  From:  node_7,  and  pick  up  a  color  for  this  traffic demand  (this  color will be used  in  the Project Editor map). Choose White and click on Create. 

L5.4 Creating traffic demands 

 

Page 46: Network Lab Manual

We create another Traffic Demand from node_8 to node_9, in yellow. 

Traffic  demands  can  be  hidden/shown  at  any moment with  View    Demand Objects    Hide All/Show All. 

 

5.  Setting addressing and routing protocols: 

• Go  to  Protocols     IP     Routing     Configure  Routing  Protocols…  without having any  node  selected.  A  new  dialog will  pop  up  as  seen  in  picture  L5.5. At  the  routing protocols checkbox, we mark only OSPF, and select as well Visualize Routing Domains and  All  Interfaces  (including  loopback). The remaining options will be left with default values. Click OK. 

L5.5 Setting the protocol at the routers 

• Select  the  Traffic  demand  origin  nodes  (node_7  and   node_8),  and  at  the  Project Editor  go  to  Protocols  IP   Routing   Export  Routing  Table  for Selected  Routers and  press  OK  at  the  confirmation  dialog.  This  way  we  can  study  the  routing of  the packets at the end of the simulation. 

 

 

L5.6 Confirming the Routing Table Export 

 

• Now  we  can  assign  IP  addresses  to  all  routers  at  the  Project  Editor, Protocols   IP   Addressing   Auto‐Assign IP Addresses. 

 

 6.  Setting up the simulation: 

 

Page 47: Network Lab Manual

At  the  Project  Editor  click  at  configure/run  simulation   ,  and  write Duration: 10 minute(s), and press OK (don’t start the simulation yet). 

 

Creating the second and third scenarios 

 

At  the  scenario we have  just  created,  all  the  routers belong  to  the  same hierarchical level  (area). We have  not  enforced  Load Balancing  on  any  route. We  can  now  create the  second and  third  scenarios: the second will be WithAreas and  it will define  three areas and a central backbone. The third scenario allows Load Balancing within nodes 7 and 9. 

 

 

1.  Creating the scenario WithAreas 

 

• At  the  Project  Editor,  select  Scenarios     Duplicate  Scenario…,  and  call  it WithAreas. Press OK. 

• The  first  area  is  0.0.0.1.  In  order  to  configure  it,  select  it with  the  Shift  key  the        links    connecting    nodes    4,5,6    and    7,    and    then    go    to Protocols    OSPF    Configure Areas  and  assign  the  value 0.0.0.1  to  the Area Identifier, and press OK. 

• Do the same for the second area (0.0.0.2), with the links connecting nodes 0, 8 and 9. • The third area is 0.0.0.3 and is composed by the links that connect nodes 1, 10 and 11. • The  central  backbone  is  not  configured  because  this  is  done  by  default.  It’s Area  ID  is 

0.0.0.0. • By  doing  Protocols   OSPF   Visualize  Areas…  we  can  show  the  links  of  the different 

areas expressed in different colors. 

 

L5.7 Dividing areas in different colors 

 

Page 48: Network Lab Manual

 

L5.8 The scenario whit areas in colors 

 

 

2.  Creating the scenario LoadBalancing 

 

• At  the  Project  Editor,  Scenarios    Switch  to  Scenario     SenseArees. We use  this  scenario so  that now we  can make  changes on  the duplicate scenario, without having any areas. 

 

 

• Select Scenarios    Duplicate Scenario... and call it LoadBalancing. Click OK afterwards. • Select nodes 7 and 9 holding the Shift key. • Protocols   IP   Routing   Configure Load Balancing Options. We must ensure Packet‐Based 

is selected and the radio button Selected Routers is checked. Click OK. 

 

L5.9 Configuring Load Balancing 

 

 

Edit     the     Attributes     of     node_9,     and     set     the     OSPF     value: 

Page 49: Network Lab Manual

Parameters   Loopback Interfaces   row 0   Area ID: 0.0.0.2. 

 

L5.10 Configuring the Area ID of the loopback 

 

3.  Running the simulation: 

 

From the Project Editor, Scenarios   Manage Scenarios… 

Change   the   values   on   Results   row   to  <collect>   or  <recollect>   in   all scenarios. 

When we now press OK the 3 simulations will run, one after another. 

When  the  simulations  are  finished,  click  on Close. At  the  top  left  part  of  the dialog we can see a field called Simulation runs to go, that needs to be zero when the simulations are finished before we can click Close. 

 

L5.11 Details of the dialog 

 

Results analysis 

 

1.  WithoutAreas 

 

• At the Project Editor, Scenarios    Switch to scenario    WithoutArees • To  see  the  traffic demand between 8  and 9,  from  the  Project  Editor  go  to Protocols   IP   

Demands   Display   Routes  for  Configured   Demands. Drop  down  the  branches  completely and  set  Display:  Yes,  and  click  on Close. Now we can see the traffic demand. 

Page 50: Network Lab Manual

 

L5.12 Configuring the demand visualization 

 

• Repeat  the  last step so we can see  the  traffic between 7 and 9. Depending on  the order  the links were created, it will pass through router 6 instead of the  router 5. Both  two paths have the same cost. OPNET will choose one depending on the order. (Q1) 

 

WithAreas 

 

• From the Project Editor, Scenario   Switch to Scenario   Areas • See the route between 8 and 9. (Q2) 

 

Load_Balancing 

 

• At the Project Editor, Scenario   Switch to Scenario   LoadBalancing • See  the  routing between nodes 7 and 9. We did  load balancing, so  the both minimum 

cost paths are highlighted. They both cost the same. 

Questions 

 

Q1   Which   routes   are   traffic   demands  node_8   node_9   and  node_7   node_9 

          following at WithoutAreas? Why? 

Q2 Which route is taking the traffic demand node_8   node_9 at WithAreas and why? 

Q3 Which route  is taking the traffic demand node_7   node_9 at LoadBalancing and  

       why? 

Answers 

Q1 The result can be seen at picture L5.13 

 

Page 51: Network Lab Manual

 

L5.13 Traffic demands routing at WithoutAreas 

 

It  will  take  the  shortest  path,  but  not  the  shortest.  Regarding  to  the  node_8 node_9 demand, RIP would have used the link node_8   node_9, but OSPF  is using the  links 8‐0‐1‐9.   There are two possible paths  for  the  other  demand,  the  one  that  goes  through  node_5  and  the  one  that  goes  through node_6. OSPF will take one of them for the load balancing. In this case, it takes node_5. 

 

Q2 We  can  see  now  it  is  not  taking  the  cheapest  path,  but  the  cheapest  in  its  own area. When we do  areas,  each  router  has  a  route  to  all  possible  destinations  in  its  own  area,  and  a  gateway  to  the remaining stations. 

 

L5.14 Route to the traffic demands at WithAreas 

Q3  As  we  have  said  at  Q1,  there  are  two  possible  paths  to  communicate  each  other node_7  and node_9. LoadBalancing will  take both of  them, dividing  the  load equally for the two routes. 

Page 52: Network Lab Manual

 

L5.15 Route with load balancing 

Assistance for more information 

1. Stallings. W. "Data and Computer Communications", Prentice Hall. 2. Behrouz A. Foruzan, “Data communication and Networking”, Tata McGraw‐Hill 

Page 53: Network Lab Manual

 

Laboratory 6: Subnetting

A Network with Different Users, Hosts, & Service

IP addresses are classified in classes, to divide Internet in subnets, to have a better use of

Internet addresses. Subnet addresses have a subnet part and a host part. There are five

different types of address classes:

Class Number of

Subnet bits

Number of

Host bits

First

bits Address range

A 8 24 0... 0.0.0.0 – 127.255.255.255

B 16 16 10... 128.0.0.0 – 192.255.255.255

C 24 8 110.. 223.0.0.0 – 223.255.255.255

Subnet mask is an address which network part is full of 1s and the host part is full of 0s. We

can obtain the host part of an IP address using an AND operation with its subnet mask, and

the network part using the XOR operation.

Network addresses are defined in the network layer of the OSI model, so routers can divide

networks, but not switches, bridges or hubs.

Objective

The objective of this lab is to perform Subnetting with a number of network devices. Doing this

experiment, you will understand how subnetting is done in a LAN, and also understand the OSI

Model.

Page 54: Network Lab Manual

This lab shows how IT Guru performs subnetting. We are going to design a complex LAN

network, using many different devices (workstations, servers, hubs, bridges, switches,

routers and an Internet cloud), and Class C subnetting. One workstation will ping another one

far away from it, so we can study the ping trace and try to understand the OSI model from

it.

Procedure

Create a New Project

1. Open a new Project in OPNET IT Guru (File New Project) using these values (use

default values for the remainder):

a. Project Name: <your_name>_Subnetting

b. Scenario Name: AutoAssignedAddresses

c. Network Scale: Campus

Press Next several times in the Startup Wizard until a new Project Editor is opened

with a blank grid.

Zoom + into a small part of the map, so we could do a Zoom – later if we need

some more room if the scenario is quite big.

Open the Object Palette from the Project Editor, and pick up the following

components from the Sm_Int_Model_List palette:

• 1 Sm_Application_Config control

• 1 Sm_Profile_Config control

• 1 Sm_Int_wkstn control (We’ll do copy & paste to have 22 more units).

From the Cisco palette, pick up these items (Figure 45):

• 3 routers CS_7505_5s_e6_fe2_fr4_sl4_tr4. They appear as Cisco 7505 in the

palette, but once you drop them into the Grid you can choose the model:

• 2 routers CS_7000_6s_a_e6_fe2_fr4_sl4_tr4 (Cisco 7000 in the palette).

From the Ethernet palette:

Page 55: Network Lab Manual

• 4 ethernet16_bridge bridges

• 8 ethernet16_hub hubs

• 1 IP Attribute Config control

From the 3Com palette:

• 1 3C_SSII_3900_4s_ae36_ge3 switch (3Com SSII 3900-36 in the Palette).

Figure 21 Object Palette Tree: Subnetting-AutoAssigned Addresses

From the internet_toolbox palette:

• 2 ppp_server servers

• 1 ip32_cloud Internet model

Rename the nodes using the names depicted in Figure 46. We need 23 nodes using

names 1,2,...23. We don’t want to set the names individually, so we just change the

name of the number 1 (right click Edit Attributes Name: 1 and then use Copy &

Paste 22 times. OPNET will manage to assign consecutive node numbers. Change the

names of the other elements as well.

Build up all the wires of the network. Use 10BaseT for all the links except servers

and Internet links (PPP_DS1). These links are in palette internet_toolbox. Figure 46

Page 56: Network Lab Manual

shows how color and width parameters for the links have been changed as well, and

the Grid is been hidden. This is not necessary, but details are better seen with this

option.

Page 57: Network Lab Manual

Figure 22 Subnetting Scenario 2. Network addresses definition:

Click on any workstation of the Grid, and use Select Similar Nodes from the right

button option to select all the stations. Click on any station, and use Edit Attributes

from the right-button menu. Mark Apply Changes to Selected Objects to perform

changes on all selected stations at the same time. Change the following values (Figure

47):

a. IP IP Host Parameters Interface Information

i. Address: AutoAssigned

ii. Subnet Mask: Class C (natural)

Page 58: Network Lab Manual

Figure 23 (8) Attributes

Repeat the same steps for the Cisco 7505 routers (Router 1,2,3). Use the following

values (Figure 48):

b. IP IP Routing Parameters Loopback Interfaces row 0

c. Make rows as 1 and expand row 0, and assign

i. Address: AutoAssigned

ii. Subnet Mask: Class C (natural).

Page 59: Network Lab Manual

Figure 24 (Router 1) Attributes

Do the same steps for the Cisco 7000 routers (Routers 4 and 5). Give automatic IP

addresses to all interfaces from the Project Editor, using:

d. IP IP Routing Parameters Loopback Interfaces row 0

e. Make rows as 1 and expand row 0, and assign

i. Address: AutoAssigned

ii. Subnet Mask: Class C (natural).

3. Assigning services to servers:

Assign the following Application: Supported Services:

a. FTP and Telnet Server: File Transfer (Heavy), Telnet Session (Heavy)

b. Printer and DB Server: File Print (Heavy), Database Access (Light).

To assign services, right click on a server, and then click on Edit Attributes

Application: Supported Services Edit... On this dialog you can add on the

services. Set the number of services in the rows field, and then edit the Name of each

row. Make sure the field Description is supported, and click OK twice to close the

dialogs.

4. Creating the ping traffic demand:

Select two workstations far away one from the other like workstation 23 and FTP and

Page 60: Network Lab Manual

Telnet Server, and create a ping from the workstation to the server. Use the

ip_ping_traffic object from the internet_toolbox palette, and click on the traffic start

(23) and then the traffic end (FTP and Telnet Server). When finished, click on Abort

Demand Definition.

Right click on the arrow representing the Ping traffic, and click on Edit Attributes.

Set Ping Pattern:Record Route and press OK. Now we can see all the layer-3 devices

the ECHO/ECHO REPLY packets have gone through.

Confgure Simulation

1. Click on configure/run simulation, and set Duration to 1 hour(s).

2. Click on Run.

Results Analysis

When the simulation is over,

1. Close the simulation window (Close).

2. Write down the IP address of each node and interface. You can get the IP address

doing right click Edit Attributes and (Figure 49):

a. On workstations and servers, IP Host Parameters Interface Information

Address.

b. On routers, IP Routing Parameters Interface Information and unfold the

hierarchy:

Page 61: Network Lab Manual

Figure 25 Router Attributes

IP Addresses of router interfaces

Information is ordered by rows, each row containing information for each interface of the

router. In Figure 49, interface IF0 has IP address 192.0.1.4. The only IP addresses that appear

are those that are connected to some network. When a link starts/finishes into a router,

OPNET gets a free interface and assigns it to the links automatically. The way interfaces are

assigned depends on the router model. On Picture, it’s a Cisco 7505 router. The real name is

CS_7505_5s_e6_fe2_fr4_sl4_tr4 and can be found in the Attributes. This means "Cisco

Systems (CS) with 5 slot chassis, 6 Ethernet ports, 2 Fast Ethernet Ports, 4 Frame Relay ports, 4

Serial IP connectors (SLIP) and 4 Token Ring ports”. Finding out the way ports are assigned is

somehow difficult, but you can get this information also by right-clicking on the router model

you’re interested in on the Object Palette. The Model Description dialog describes on the

Comments textbox, a complete description of all interfaces on the Interconnections section

(Figure 50)

Page 62: Network Lab Manual

Figure 26 Node Model Description  

Slot# Technology Interface#

----- ---------- ----------

0 6 eth10T 0-5

1 2 eth100T 6-7

2 4 Token Ring 8-11

3 4 Frame Relay 12-15

4 SLIP 16-19

RSP1 (reserved)

Page 63: Network Lab Manual

So, if Router 1 has interfaces 0,1,2 reserved, this means these are et10T (10BaseT). These

interfaces are assigned to Hub 1, Switch 1 and Hub 2. They are assigned using the same order

the links were created, and you can see on the pop up tool tip when you click on a link (Figure

51).

Figure 27 Popup Tool Tip

Finding out the interface names of a link

Now we are able to find out the IP addresses of all interfaces and networks.

Question  

Fill up the table with the IP address, subnet address and mask and interface name for each

network and interface:

Station or interface IP Address Address and

Subnet Mask Interface

1.

2.

3.

Page 64: Network Lab Manual

4.

5.

6.

7.

8.

9.

10.

11.

12.

Station or interface

IP Address

Address and

Subnet Mask

Interface

13.

14.

15.

Page 65: Network Lab Manual

16.

17.

18.

19.

20.

21.

22.

23.

Router 1 Loopback

Router 1 to Switch 1

Router 1 to Hub 2

Router 1 to Hub 1

Router 2 Loopback

Router 2 to Bridge 2

Page 66: Network Lab Manual

Router 2 to Hub 7

Router 2 to Hub 6

Router 3 Loopback

Router 3 to Hub 5

Router 3 to Hub 8

Router 4 Loopback

Router 4 to Printer and DB Server

Router 4 to Internet

Router 4 to Hub 6

Router 5 Loopback

Station or interface

IP Address

Address and

Subnet Mask

Interface

Router 5 to Internet

Router 5 to FTP and Telnet Server

Page 67: Network Lab Manual

Printer and DB Server

FTP and Telnet Server

Internet Loopback

Answer  

These results refer to data of our simulation, but they may change depending on the order the

interfaces were created.

Station or interface IP Address Address and

Subnet Mask Interface

1. 192.0.2.4 192.0.2.0/24

2. 192.0.2.1 192.0.2.0/24

3. 192.0.2.2 192.0.2.0/24

4. 192.0.1.1 192.0.1.0/24

5. 192.0.1.2 192.0.1.0/24

6. 192.0.1.3 192.0.1.0/24

7. 192.0.3.1 192.0.3.0/24

Page 68: Network Lab Manual

8. 192.0.3.2 192.0.3.0/24

9. 192.0.3.3 192.0.3.0/24

10. 192.0.3.4 192.0.3.0/24

11. 192.0.3.5 192.0.3.0/24

12. 192.0.3.6 192.0.3.0/24

13. 192.0.4.1 192.0.4.0/24

14. 192.0.4.2 192.0.4.0/24

15. 192.0.5.1 192.0.5.0/24

16. 192.0.5.2 192.0.5.0/24

17. 192.0.3.7 192.0.3.0/24

18. 192.0.3.8 192.0.3.0/24

19. 192.0.6.1 192.0.6.0/24

20. 192.0.6.2 192.0.6.0/24

21. 192.0.6.3 192.0.6.0/24

Page 69: Network Lab Manual

22. 192.0.6.4 192.0.6.0/24

23. 192.0.6.5 192.0.6.0/24

Router 1 Loopback 192.0.13.1 192.0.13.0/24

Router 1 to Switch 1 192.0.1.4 192.0.1.0/24 IF0

Router 1 to Hub 2 192.0.3.9 192.0.3.0/24 IF2

Router 1 to Hub 1 192.0.2.3 192.0.2.0/24 IF1

Router 2 Loopback 192.0.17.1 192.0.17.0/24

Router 2 to Bridge 2 192.0.3.11 192.0.3.0/24 IF0

Router 2 to Hub 7 192.0.5.3 192.0.5.0/24 IF2

Router 2 to Hub 6 192.0.4.4 192.0.4.0/24 IF1

Router 3 Loopback 192.0.14.1 192.0.14.0/24

Router 3 to Hub 5 192.0.3.10 192.0.3.0/24 IF0

Router 3 to Hub 8 192.0.6.6 192.0.6.0/24 IF1

Router 4 Loopback 192.0.15.1 192.0.15.0/24

Page 70: Network Lab Manual

Router 4 to Printer and DB Server 192.0.7.2 192.0.7.0/24 IF17

Router 4 to Internet 192.0.8.2 192.0.8.0/24 IF18

Router 4 to Hub 6 192.0.4.3 192.0.4.0/24 IF1

Router 5 Loopback 192.0.16.1 192.0.16.0/24

Router 5 to Internet 192.0.9.2 192.0.9.0/24 IF17

Router 5 to FTP and Telnet Server 192.0.11.1 192.0.11.0/24 IF18

Printer and DB Server 192.0.7.1 192.0.7.0/24

FTP and Telnet Server 192.0.12.1 192.0.12.0/24

Internet Loopback 192.0.11.2 192.0.11.0/24

Page 71: Network Lab Manual

Expt. No. 7  

Title : PC to PC Communication  

Date :  

 

Aim    

The  aim  of  this  Experiment  is  to  communicate  data  between  PCs  using  Serial  and  Parallel Communication Ports and to study the Asynchronous byte (character) transfer. 

 

Objectives 

Doing this experiment, you will  

• Understand how characters (bytes) transfer takes place from one system to another system over the transmission lines. 

• Know the elementary issues related to the use of terminal, network ports and asynchronous data transmission 

 

Equipment 

Components Required : 

1. V.35 Female DCE Serial Cable – 1 Nos. 2. USB to USB File transfer Cable – 1 Nos. 3. Parallel Port Cable – 1 Nos. 4. PC with Serial and Parallel Port Interface Connectors – 2 Nos. 

 

Software Required : 

1. Windows Operating Environment 2. Driver files for Serial Port, Parallel Port and USB Ports 

 

Experimental Setup – 1  (PC – Serial Cable – PC) 

Procedure : 

1. Initially connect the Serial Cable both ends to the two PCs 2. In Windows setup the following  

a. Go to My Network Places > View Network Connections > Create a New Connection  

Page 72: Network Lab Manual

b. In the New Connection Wizard, choose Setup and Advanced Connection > Connect directly to another computer  

c. Give settings as Host (Information provider) or Guest (Information seeker) d. Choose Communication Port (COM1) and select users from list e. Click Incoming / Ougoing connections and set properties f. Write a program such that the transmitter node, directly and unconditionally transmit 

all the characters entered from its key board and that the characters entered at the  transmitter’s keyboard should also be displayed on its screen.  

g. Write a program such that the receiver node, accept every character appearing on its network bus and display it on its screen. 

h. Study the point to point, asynchronous byte transmission with the above setup.  

 

 

Experimental Setup – 2 (PC – USB File transfer Cable – PC) 

1. Initially connect the USB File transfer Cable both ends to the two PCs USB connectors 2. Install the driver software to both PCs  3. Communicate data : 

a. Write a program such that the transmitter node, directly and unconditionally transmit all the characters entered from its key board and that the characters entered at the transmitter’s keyboard should also be displayed on its screen.  

b. Write a program such that the receiver node, accept every character appearing on its network bus and display it on its screen. 

c. Study the point to point, asynchronous byte transmission with the above setup.  

Experimental Setup – 3 (PC – Parallel Port Cable – PC) 

Procedure : 

1. Initially connect the Parallel data sharing Cable both ends to the two PCs 2. In Windows setup the following  

a. Go to My Network Places > View Network Connections > Create a New Connection  b. In the New Connection Wizard, choose Setup and Advanced Connection > Connect 

directly to another computer  c. Give settings as Host (Information provider) or Guest (Information seeker) d. Choose Communication Port (LPT1) and select users from list e. Click Incoming / Ougoing connections and set properties f. Write a program such that the transmitter node, directly and unconditionally transmit 

all the characters entered from its key board and that the characters entered at the transmitter’s keyboard should also be displayed on its screen.  

g. Write a program such that the receiver node, accept every character appearing on its network bus and display it on its screen. 

h. Study the point to point, asynchronous byte transmission with the above setup. 

Page 73: Network Lab Manual

 

The algorithms for transmitter and receiver should be as follows: 

             Transmitter 

                               

                              Set the device number; 

                              Repeat forever; 

                              If  character is pressed on the key board display and send the   

                              serial port  

                              Print the character; 

                              /* end of  if  statement */ 

                              /* end of repeat loop */ 

                              /* end of main */   

Receiver    

                               Set device number; 

                               Repeat forever; 

                               If character is present on the network then get the character; 

                               Print the character; 

                              /* end of if  statement */ 

                              /* end of repeat loop */ 

                              /* end of main */   

 

Precautions 

• Make sure that the port numbers used  in the program are same as the port numbers assigned for the serial/parallel ports. 

• Make sure that the systems used are compatible. • Make sure that connections are proper before doing the experiment. 

 

Page 74: Network Lab Manual

Record of Observations 

• Type and send a single line text from the transmitter node to the receiver node. • Send a File from the transmitter node to the receiver node. 

 

Interpretation of results 

• Check for One to one asynchronous data transfer   

Questions based on Experiment 

1. Define asynchronous data transfer ? 2. What are the differences between synchronous and asynchronous data transfer?  

3. Brief on  (a) RS232 serial interface (b) Centronics parallel interface (c) USB interface 

 

Assistance for more information 

[1] Stallings. W. "Data and Computer Communications", Prentice Hall. [2] Behrouz A. Foruzan, “Data communication and Networking”, Tata McGraw‐Hill 

 

 

 

 

 

 

Page 75: Network Lab Manual

  

Expt. No:8 

Title : Implementation of Data Encryption and Decryption 

Date :  

 

Aim 

The aim of this experiment is to study the perform XOR Encryption and Decryption. 

 

Objectives 

Doing this experiment, you will  

• Understand how XOR encryption algorithm can be implemented. • Know the elementary issues related to data encryption and decryption 

 

Exclusive‐OR  encryption, while  not  a  public‐key  system  such  as  RSA,  is  almost  unbreakable  through brute  force methods.  It  is  susceptible  to  patterns,  but  this  weakness  can  be  avoided  through  first compressing  the  file  (so as  to  remove patterns). Exclusive‐or encryption  requires  that both encryptor and decryptor have access to the encryption key, but the encryption algorithm, while extremely simple, is nearly unbreakable. 

 

Exclusive‐OR encrytion works by using the boolean algebra function exclusive‐OR (XOR). XOR is a binary operator (meaning that it takes two arguments ‐ similar to the addition sign, for example). By its name, exclusive‐OR, it is easy to infer (correctly, no less) that it will return true if one, and only one, of the two operators is true. The truth table is as follows:  

A B A XOR B

T T F

T F T

F T T

F F F

Page 76: Network Lab Manual

(A truth table works like a multiplication or addition table: the top row is one list of possible inputs, the side column is one list of possible inputs. The intersection of the rows and columns contains the result of the operation when done performed with the inputs from each row and column) 

 The  idea  behind  exclusive‐OR  encryption  is  that  it  is  impossible  to  reverse  the  operation  without knowing  the  initial  value  of  one  of  the  two  arguments.  For  example,  if  you  XOR  two  variables  of unknown values, you cannot tell from the output what the values of those variables are. For example, if you  take  the operation A XOR B, and  it  returns TRUE, you  cannot know whether A  is FALSE and B  is TRUE, or whether B is FALSE and A is TRUE. Furthermore, even if it returns FALSE, you cannot be certain if both were TRUE or if both were FALSE. 

 If,  however,  you  know  either  A  or  B  it  is  entirely  reversible,  unlike  logical‐AND  and  logical‐OR.  For exclusive‐OR,  if you perform  the operation A XOR TRUE and  it returns a value of TRUE you know A  is FALSE, and if it returns FALSE, you know A is true. Exclusive‐OR encryption works on the principle that if you have  the encrypted  string and  the encryption key you  can always decrypt  correctly.  If you don't have  the key,  it  is  impossible  to decrypt  it without making entirely random keys and attempting each one of them until the decryption program's output  is something akin to readable text. The  longer you make the encryption key, the more difficult it becomes to break it. 

The  actual way  exclusive‐OR  encryption  is  used  is  to  take  the  key  and  encrypt  a  file  by  repeatedly applying  the  key  to  successive  segments  of  the  file  and  storing  the  output.  The  output will  be  the equivalent of an entirely random program, as the key is generated randomly. Once a second person has access to the key, that person is able to decrypt the files, but without it, decryption is almost impossible. For every bit added  to  the  length of  the key, you double  the number of  tries  it will  take  to break  the encryption through brute force. 

 

Software Required 

1. Turbo C++  Compiler.  

Procedure : 

The input text file is should be named "input.txt" (without the quotes) in c:\ directory 

Encryption 

/* This program takes a file as an input in command line paramater.

* Such as "C:\input.txt".

* The encrypted file appears with the filename 'encrypted_file' in the

Page 77: Network Lab Manual

* same location where the executable is executed. The decrypted file

* exists with the filename 'decrypted_file' in the same location from where

* the executable is executed.

*/

#include<stdio.h>

#include<string.h>

int main()

{

FILE *fpread, *fpwrite;

FILE* fp_print;

char fname1[30];

int c;

clrscr();

printf("Enter the name of the file to Encrypt\n");

gets(fname1);

fpread=fopen( fname1,"r");

if(!fpread)

{

printf("No Such file exist !!!");

return 0;

}

printf("Encrypting the file:::\n");

fpwrite=fopen("encrypted_file","w");

//**** creating encrypted file

while((c=(int)fgetc(fpread)) != EOF)

{

Page 78: Network Lab Manual

putc(c^1,fpwrite);

printf("%c",c^1);

}

//****** PRINTING THE ENCRYPTED FILE

fp_print=fopen("encrypted_file","r");

printf(" The encrypted file is\n");

/*while((c=(int)fgetc(fp_print)) != EOF)

{

//putc(c^1,fpwrite);

printf("%d",c);

//printf("%c",c);

}*/

fclose(fp_print);

fclose(fpread);

fclose(fpwrite);

printf("Decrypting the file\n");

fpread=fopen("encrypted_file","r");

fpwrite=fopen("decrypted_file","w");

while((c=(int)getc(fpread)) != EOF)

{

putc(c^1, fpwrite);

}

fclose(fpwrite);

fpwrite=fopen("decrypted_file","r");

Page 79: Network Lab Manual

printf("\n");

//******** PRINTING THE DECRYPTED FILE************

printf(" The decrypted file is: opening decrypted_file.txt\n");

while((c=(int)fgetc(fpwrite)) != EOF)

{

printf("%c",c);

}

fclose(fpread);

fclose(fpwrite);

getch();

return 0;

}

 

Assistance for more information 

1. Stallings. W. "Data and Computer Communications", Prentice Hall. 2. Behrouz A. Foruzan, “Data communication and Networking”, Tata McGraw‐Hill 

Page 80: Network Lab Manual

 

Expt. No:9 

Title : Bus, Ring and Star Topology and Protocols 

Date :  

 

Aim    

The aim of this experiment is to create an Ethernet using Network Hubs and Switches and study how a token‐passing scheme is implemented. 

 

Objective 

Doing this experiment, you will  

• Illustrate the operation of a token‐bus/ring LAN. (The scope of the protocol is limited and does not  include token recovery or network reconfiguration operations. Since token recovery  is not supported, a loss of token stops the network operation). 

• To illustrate the operation of a star topology.  

Equipment  

Components Required : 

1. CAT 5 E UTP Ethernet Patch Cable  – 5 Nos. 2. 10 / 100 Mbps Fast Ethernet Packet Switch – 3 Nos. 3. PC with 10/100 Mbps Fast Ethernet Ports – 3 Nos. 

 

Procedure

1. A  token‐bus  logical  ring  is  implemented  using  two  types  of  frames  –  the  normal  frame  as outlined  in  the Addressed  Frame Broadcast  and Reception  Experiment,  and  a  “token”  frame containing only the destination address. Thus the token frame format is: PRE, DID, EOT.  

2. The experiment deals with sending and receiving the token: when a token is sent to a successor, the transmitting node waits for a response. It does not implement any token recovery, so if the token is lost, the network operations halt.  

3. Also  the  network  needs  to  be  started manually  by  an  operator,  since  no  ring  initialization procedure is included.  

4. The AL is still unchanged for this experiment. The NL, however, has the following states: receive, send packet and send token.

Page 81: Network Lab Manual

5. In the receive state, the NL monitors the frames arriving from the network medium and awaits a token or packet frame. If a packet is received, the application layer is informed about it, but the NL remains in the receive state, ready to accept another packet or the token frame.

6. If the token is received, it means that the node obtained the right to transmit. 7. If a packet is waiting to be transmitted, the state is changed to send packet, and

transmission begins. 8. The request to send a packet is signaled in the application-network interlayer interface by

a flag. 9. After packet transmission has been completed, the state is changed to send token, and

token transmission begins.  

 

The algorithm for the experiment is as follows:

/* AL Machine */

repeat forever

if char at the keyboard and TBF == 0 then

AI = 1;

Page 82: Network Lab Manual

get the char;

Array[0] = PRE       get the next char; 

    if char == machine ID then     /*  check address  */ 

      while char != CR 

         place char in the array; 

         inc array index; 

         get the char; 

      end while; 

      if token sequence has been received 

        set token received flag to 1; 

        display message “Token Received….” ; 

      else 

        place CR in array; 

        inc array index; 

        place LF in array; 

         inc array index; 

        place EOT in array; 

        AI = 0; TF = 1; TBF = 1; 

    /* end of if statements */ 

    if DF == 1 then 

      DF = 0; AD = 1; 

      get the char from buffer; 

      display the char string until CR; 

      ignore CR; 

      ignore LF; 

Page 83: Network Lab Manual

      ignore EOT; 

      AD = 0; RBF = 0; 

    /* end of if statement */ 

/* NL Machine */ 

if char at the network and RBF == 0 then 

  NR = 1; 

  get the char; 

  if char == PRE then continue; 

  while char != EOT  

    place in array; 

    inc array index; 

    get the char; 

  /* end while */ 

  NR = 0; DF = 1; RBF = 1; 

/*end of if statement */ 

if (TF == 1 and token received flag set to 1) then 

  TF = 0; NT = 1; 

  send char to network until EOT; 

 

  NT = 0; TBF = 0; 

/*end of if statement */  

/* end or repeat loop */ 

/* end of main */ 

 

Observations

• Enter and send a few one‐line frames between various nodes 

Page 84: Network Lab Manual

• Use two nodes as receivers and see the frame broadcast. • Use two nodes as transmitters and one as receiver and send frames from the two transmitters 

simultaneously. Is there a collision taking place? If not, why? 

Record of Observations

• Program listings and details (put enough comments in the program to make the code clear) • Flow chart and the algorithm • Program output to screen  

Questions based on Experiment

2. What are the benefits of Token passing Medium access scheme? How can u prevent the collision?

3. How the algorithm is implemented?

Page 85: Network Lab Manual

Expt.no:10

Date:

 

TCP Congestion Control

The Internet’s TCP guarantees the reliable, in-order delivery of a stream of bytes. It includes a flow-

control mechanism for the byte streams that allows the receiver to limit how much data the sender

can transmit at a given time. In addition, TCP implements a highly tuned congestion-control

mechanism. The idea of this mechanism is to throttle how fast TCP sends data to keep the sender from

overloading the network.

The idea of TCP congestion control is for each source to determine how much capacity is available in

the network, so that it knows how many packets it can safely have in transit. It maintains a state

variable for each connection, called the congestion window, which is used by the source to limit

how much data it is allowed to have in transit at a given time.

TCP uses a mechanism, called additive increase/multiplicative decrease, that decreases the

congestion window when the level of congestion goes up and increases the congestion window when

the level of congestion goes down. TCP interprets timeouts as a sign of congestion. Each time a timeout

occurs, the source sets the congestion window to half of its previous value. This halving corresponds

to the multiplicative decrease part of the mechanism. The congestion window is not allowed to fall

below the size of a single packet (the TCP maximum segment size, or MSS). Every time the source

successfully sends a congestion window’s worth of packets, it adds the equivalent of one packet to the

congestion window; this is the additive increase part of the mechanism.

TCP uses a mechanism called slow start to increase the congestion window “rapidly” from a cold start

in TCP connections. It increases the congestion window exponentially, rather than linearly. Finally,

TCP utilizes a mechanism called fast retransmit and fast recovery. Fast retransmit is a heuristic

Page 86: Network Lab Manual

that sometimes triggers the re-transmission of a dropped packet sooner than the regular timeout

mechanism.

Objective

This lab is designed to demonstrate the congestion control algorithms implemented by the

Transmission Control Protocol (TCP). The lab provides a number of scenarios to simulate these

algorithms. You will compare the performance of the algorithms through the analysis of the simulation

results. In this lab you will set up a network that utilizes TCP as its end-to-end transmission

protocol and analyze the size of the congestion window with different mechanisms.

Procedure

Create a New Project  

1. Start OPNET IT Guru ⇒ Choose New from the File menu.

2. Select Project and click OK ⇒ Name the project <your initials>_TCP, and the scenario

No_Drop ⇒ Click OK.

3. In the Startup Wizard: Initial Topology dialog box, make sure that Create Empty Scenario

is selected ⇒ Click Next ⇒ Select Choose From Maps from the Network Scale list ⇒

Click Next ⇒ Choose USA from the Map List ⇒ Click Next twice ⇒ Click OK.

Create and Configure the Network

Initialize the Network:

1. The Object Palette dialog box should now be on the top of your project space. If it is not there,

open it by clicking . Make sure that the internet_toolbox item is selected from the pull-

down menu on the object palette.

2. Add to the project workspace the following objects from the palette: Application Config,

Profile Config, an ip32_Cloud, and two subnets.

To add an object from a palette, click its icon in the object palette ⇒ Move your mouse to the

workspace ⇒ Click to drop the object in the desired location ⇒ Right-click to finish creating

objects of that type.

Page 87: Network Lab Manual

3. Close the palette.

4. Rename the objects you added as shown in Figure 75 and then save your project:

Figure 28 Initializing the Network  

Configure the Applications:

1. Right-click on the Applications node ⇒ Edit Attributes ⇒ Expand the Application

Definitions attribute and set rows to 1 ⇒ Expand the new row ⇒ Name the row

FTP_Application.

Expand the Description hierarchy ⇒ Edit the FTP row as shown in Figure 76 (you will

need to set the Special Value to Not Used while editing the shown attributes)

Figure 29 Configuring the Applications

2. Click OK twice and then save your project.

Page 88: Network Lab Manual

Configure the Profiles:

Right-click on the Profiles node ⇒ Edit Attributes ⇒ Expand the Profile Configuration attribute

and set rows to 1.

Name and set the attributes of row 0 as shown in Figure 77 ⇒ Click OK.

Figure 30 (Profiles) Attributes Configure the West Subnet:

1. Double-click on the West subnet node. You get an empty workspace, indicating that the

subnet contains no objects.

2. Open the object palette and make sure that the internet_toolbox item is selected from

the pull-down menu.

3. Add the following items to the subnet workspace: one ethernet_server, one

ethernet4_slip8_gtwy router, and connect them with a bidirectional 100_BaseT link ⇒

Close the palette ⇒ Rename the objects as shown in Figure 78.

Page 89: Network Lab Manual

Figure 31 Configuring the West Subnet  

4. Right-click on the Server_West node ⇒ Edit Attributes:

a. Edit Application: Supported Services ⇒ Set rows to 1 ⇒ Set Name to

FTP_Application ⇒ Click OK.

a. Edit the value of the Server Address attribute and write down Server_West.

b. Expand the TCP Parameters hierarchy ⇒ Set both Fast Retransmit and Fast

Recovery to Disabled.

Configure the East Subnet:

1. Double-click on the East subnet node. You get an empty workspace, indicating that the

subnet contains no objects.

2. Open the object palette and make sure that the internet_toolbox item is selected

from the pull-down menu.

3. Add the following items to the subnet workspace: one ethernet_wkstn, one

ethernet4_slip8_gtwy router, and connect them with a bidirectional 100_BaseT link ⇒

Close the palette ⇒ Rename the objects as shown in Figure 79.

Figure 32 Configuring the East Subnet  

Page 90: Network Lab Manual

4. Right-click on the Client_East node ⇒� Edit Attributes:

a. Expand the Application: Supported Profiles hierarchy ⇒ Set rows to 1 ⇒ Expand the

row 0 hierarchy ⇒ Set Profile Name to FTP_Profile.

b. Assign Client_ East to the Client Address attributes.

c. Edit the Application: Destination Preferences attribute as follows:

Set rows to 1 ⇒ Set Symbolic Name to FTP Server ⇒ Edit Actual Name

⇒ Set rows to 1 ⇒ In the new row, assign Server_West to the Name column.

5. Click OK three times and then save your project.

6. You have now completed the configuration of the East subnet. To go back to the project

space, click the Go to next higher level button.

Connect the Subnets to the IP Cloud:

1. Open the object palette .

2. Using two PPP_DS3 bidirectional links connect the East subnet to the IP Cloud and the

West subnet to the IP Cloud.

3. A pop-up dialog box will appear asking you what to connect the subnet to the IP Cloud with.

Make sure to select the “routers.”

4. Close the palette (Figure 80).

Figure 33 Connecting Subnets to IP Cloud

Page 91: Network Lab Manual

Choose the Statistics

1. Right-click on Server_West in the West subnet and select Choose Individual

Statistics from the pop-up menu.

2. In the Choose Results dialog box, choose the following statistic: TCP Connection ⇒

Congestion Window Size (bytes) and Sent Segment Sequence Number.

3. Right-click on the Congestion Window Size (bytes) statistic ⇒ Choose Change

Collection Mode ⇒ In the dialog box check Advanced ⇒ From the drop-down menu,

assign all values to Capture mode ⇒ Click OK (Figure 81)

Figure 34 Congestion Window Size (bytes)

4. Right-click on the Sent Segment Sequence Number statistic ⇒ Choose Change

Collection Mode ⇒ In the dialog box check Advanced ⇒ From the drop-down menu,

assign all values to Capture mode.

5. Click OK twice and then save your project.

6. Click the Go to next higher level button.

Configure the Simulation

Here we need to configure the duration of the simulation:

Page 92: Network Lab Manual

1. Click on and the Configure Simulation window should appear.

2. Set the duration to be 10.0 minutes.

3. Click OK and then save your project.

Duplicate the Scenario

In the network we just created we assumed a perfect network with no discarded packets. Also, we

disabled the fast retransmit and fast recovery techniques in TCP. To analyze the effects of discarded

packets and those congestion-control techniques, we will create two additional scenarios.

1. Select Duplicate Scenario from the Scenarios menu and give it the name Drop_NoFast

⇒ Click OK.

2. In the new scenario, right-click on the IP Cloud ⇒ Edit Attributes ⇒ Assign 0.05% to

the Packet Discard Ratio attribute.

3. Click OK and then save your project.

4. While you are still in the Drop_NoFast scenario, select Duplicate Scenario from the

Scenarios menu and give it the name Drop_Fast.

5. In the Drop_Fast scenario, right-click on Server_ West, which is inside the West subnet ⇒

Edit Attributes ⇒ Expand the TCP Parameters hierarchy ⇒ Enable the Fast

Retransmit attribute ⇒ Assign Reno to the Fast Recovery attribute.

6. Click OK and then save your project.

Run the Simulation

To run the simulation for the three scenarios simultaneously:

1. Go to the Scenarios menu ⇒ Select Manage Scenarios.

2. Change the values under the Results column to <collect> (or <recollect>) for the three

scenarios. Compare with Figure 82.

Page 93: Network Lab Manual

Figure 35 Manage Scenarios

3. Click OK to run the three simulations. Depending on the speed of your processor, this may

take several minutes to complete.

4. After the three simulation runs complete, one for each scenario, click Close ⇒ Save your

project.

View the Results

To view and analyze the results:

1. Switch to the Drop_NoFast scenario (the second one) and choose View Results from the

Results menu.

2. Fully expand the Object Statistics hierarchy and select the following two results:

Congestion Window Size (bytes) and Sent Segment Sequence Number (Figure 83).

Figure 36 View Results

Page 94: Network Lab Manual

 

3. Click Show. The resulting graphs should resemble the ones in Figure 84.

Figure 37 Map Network - I

4. To zoom in on the details in the graph, click and drag your mouse to draw a rectangle, as

shown above.

5. The graph should be redrawn to resemble Figure 85.

Page 95: Network Lab Manual

Figure 38 Maps Network – II  

6. Notice the Segment Sequence Number is almost flat with every drop in the congestion

window.

7. Close the View Results dialog box and select Compare Results from the Result menu.

8. Fully expand the Object Statistics hierarchy and select the following result: Sent

Segment Sequence Number (Figure 86).

Page 96: Network Lab Manual

Figure 39 Compare Results

9. Click Show. After zooming in, the resulting graph should resemble the one in Figure 87.

Figure 40 Maps Network  

Page 97: Network Lab Manual

Wireless LAN  

Ex.No  : 11                                                                                                

Date  : 

 

 

Aim: 

         To establish a wireless LAN network and to study its performance by simulation. 

 

 

Objective: 

                         To create a wireless LAN network and to obtain the following statistics. 

               

Global statistics         FTP (Traffic sent , Traffic Recieved) 

                                   Wireless LAN(Throughput, Delay,Etc) 

Node statistics           Wireless LAN(Throughput, Delay,Etc) 

                                   Client FTP 

                                   Server FTP 

 

Procedure: 

           

Step1:    Open the object panel in OPNET browser and select the following components from the wireless_lan subtools. 

 

               Application Configuration‐1 

               Profile Configuration        ‐1 

Page 98: Network Lab Manual

               Wireless Lan Router(Fixed)‐1 

                Wireless Server(Fixed)      ‐1 

                Wireless Workstation(Fixed)‐4 

 

 

 

Page 99: Network Lab Manual

Step 2: 

 

     Right click on application config and select edit attribute option and change the following fields: 

     Name: application 

      App.Def: Default 

 

 

 

Step 3: 

     Right click on profile config and select edit attribute option and change the following fields: 

 

Name: Profile 

Profile config:set no of rows equal to 1 

Profile name: FTP 

          Application column set: rows =1 

                                                 Select file transfer (light) 

 

Step4: 

    

     Right click on Router and select edit attribute option and change the following fields: 

 

Page 100: Network Lab Manual

Name: Router 

 

Step5: 

 

    Right click on workstation(choose similar nodes) and select edit attribute option and change the following fields 

 

Application(Supported Profiles) set no of rows=1 

                                                     Select FTP. 

 

 

Step6: Right click on server and select edit attribute option and change the following fields 

 

Application(Supported Services) set no of rows=1 

                                                     Select File transfer(light). 

 

 

 

Step7: 

               Right click on OPNET workspace and select choose individual statistics 

And select the statistics shown below: 

 

Page 101: Network Lab Manual

 

Global Statistics:(Ftp,Wireless LAN) 

Node Statistics: (Wireless Lan,Client Ftp, Server FTP). 

 

Step 8: 

 

             Click run simulation button , set the simulation duration to 300 seconds and run the simulation. 

 

Step9: 

            View the results. 

 

 

 

 

Page 102: Network Lab Manual

 

Page 103: Network Lab Manual

Expt. No: 12 

Title : Ethernet LAN and Protocols  

Date :  

 

Aim 

The aim of this experiment is to study the performance of CSMA / CD Protocol using Wireshark Protocol Analyzer.  

 

Objectives 

Doing this experiment, you will  

• Understand how Packets are captured and displayed in the Protocol Analyzer • Calculate Packet Length • Calculate Port Type • Draw flow graph of packet transmission 

 

Equipment 

1. Wireshark Protocol Analyzer Software –  LAN User License. 2. PCs connected in a Local Area Network 

 

Procedure  

1. In Wireshark Simulator choose Capture > Start to open a window where you can enter parameters for frame capturing. You can click Interface to choose the network interface (Whether wired or wireless) to be used to capture frames. 

2. Click OK to begin capturing. After the capturing has finished, you can view the individual captured frames. 

3. Once packet capturing is over click View > Packet Length to view the length of the packets. 4. Similarly calculate other parameters also. 

 

Precautions 

• Make sure that you choose the right interface for wired and wireless networked environment • Make sure your pc either sends or receives some data 

 

Record of Observations 

Page 104: Network Lab Manual

• Record the length of Packets received • Record the number and types of packets   

Interpretation of results 

• The length of the Packet received determines the types of packet being transmitted and received. 

 

Questions based on Experiment 

1. What are the different types of packets that can be analyzed using Wireshark ?  

 

 

Page 105: Network Lab Manual

OSI Model Layers

INTRODUCTION:

Virtually all networks in use today are based in some fashion on the Open Systems Interconnection (OSI) standard. OSI was developed in 1984 by the International Organization for Standardization (ISO), a global federation of national standards organizations representing approximately 130 countries.

The core of this standard is the OSI Reference Model, a set of seven layers that define the different stages that data must go through to travel from one device to another over a network. The Open Systems Interconnection Reference Model (OSI Reference Model or OSI Model) is an abstract description for layered communications and computer network protocol design. It was developed as part of the Open Systems Interconnection (OSI) initiative. In its most basic form, it divides network architecture into seven layers which, from top to bottom, are the Application, Presentation, Session, Transport, Network, Data-Link, and Physical Layers. It is therefore often referred to as the OSI Seven Layer Model. A layer is a collection of conceptually similar functions that provide services to the layer above it and receives service from the layer below it. For example, a layer that provides error-free communications across a network provides the path needed by applications above it, while it calls the next lower layer to send and receive packets that make up the contents of the path. History:

In 1977, work on a layered model of network architecture was started, and the International Organization for Standardization (ISO) began to develop its OSI framework architecture. OSI has two major components: an abstract model of networking, called the Basic Reference Model or seven-layer model, and a set of specific protocols. All aspects of OSI design evolved from experiences with the CYCLADES network, which also influenced Internet design. The new design was

Page 106: Network Lab Manual

documented in ISO 7498 and its various addenda. In this model, a networking system is divided into layers. Within each layer, one or more entities implement its functionality. Each entity interacts directly only with the layer immediately beneath it, and provides facilities for use by the layer above it. Protocols enable an entity in one host to interact with a corresponding entity at the same layer in another host. Service definitions abstractly describe the functionality provided to an (N)-layer by an (N-1) layer, where N is one of the seven layers of protocols operating in the local host.

Description of OSI layers:

Think of the seven layers as the assembly line in the computer. At each layer, certain things happen to the data that prepare it for the next layer. The seven layers, which separate into two sets, are:

• Application Set:

Layer 7: Application - This is the layer that actually interacts with the operating system or application whenever the user chooses to transfer files, read messages or perform other network-related activities.

Layer 6: Presentation - Layer 6 takes the data provided by the Application

layer and converts it into a standard format that the other layers can understand. Layer 5: Session - Layer 5 establishes, maintains and ends communication

with the receiving device.

• Transport Set :

Layer 4: Transport - This layer maintains flow control of data and provides for error checking and recovery of data between the devices. Flow control means that the Transport layer looks to see if data is coming from more than one application and integrates each application's data into a single stream for the physical network.

Page 107: Network Lab Manual

Layer 3: Network - The way that the data will be sent to the recipient device is determined in this layer. Logical protocols, routing and addressing are handled here.

Layer 2: Data - In this layer, the appropriate physical protocol is assigned

to the data. Also, the type of network and the packet sequencing is defined. Layer 1: Physical - This is the level of the actual hardware. It defines the

physical characteristics of the network such as connections, voltage levels and timing.

The seven layers of the OSI Reference Model

Layer 7: Application Layer

The application layer is the OSI layer closest to the end user, which means that both the OSI application layer and the user interact directly with the software application. This layer interacts with software applications that implement a communicating component. Such application programs fall outside the scope of the OSI model. Application layer functions typically include identifying

Page 108: Network Lab Manual

communication partners, determining resource availability, and synchronizing communication. When identifying communication partners, the application layer determines the identity and availability of communication partners for an application with data to transmit. When determining resource availability, the application layer must decide whether sufficient network resources for the requested communication exist. In synchronizing communication, all communication between applications requires cooperation that is managed by the application layer. Some examples of application layer implementations include Telnet, Hypertext Transfer Protocol (HTTP), File Transfer Protocol (FTP), and Simple Mail Transfer Protocol (SMTP).

Layer 6: Presentation Layer

Page 109: Network Lab Manual

The Presentation Layer establishes a context between Application Layer entities, in which the higher-layer entities can use different syntax and semantics, as long as the Presentation Service understands both and the mapping between them. The presentation service data units are then encapsulated into Session Protocol Data Units, and moved down the stack. This layer provides independence from differences in data representation (e.g., encryption) by translating from application to network format, and vice versa. The presentation layer works to transform data into the form that the application layer can accept. This layer formats and encrypts data to be sent across a network, providing freedom from compatibility problems. It is sometimes called the syntax layer.

The original presentation structure used the Basic Encoding Rules of Abstract Syntax Notation One (ASN.1), with capabilities such as converting an EBCDIC-coded text file to an ASCII-coded file, or serializing objects and other data structures into and out of XML.

Layer 5: Session Layer

The Session Layer controls the dialogues (connections) between computers. It establishes, manages and terminates the connections between the local and remote application. It provides for full-duplex, half-duplex, or simplex operation, and establishes check pointing, adjournment, termination, and restart procedures. The OSI model made this layer responsible for "graceful close" of sessions, which is a property of TCP, and also for session check pointing and recovery, which is not usually used in the Internet Protocol Suite. The Session Layer is commonly implemented explicitly in application environments that use remote procedure calls (RPCs). Layer 4: Transport Layer

The Transport Layer provides transparent transfer of data between end users, providing reliable data transfer services to the upper layers. The Transport Layer controls the reliability of a given link through flow control, segmentation/desegmentation, and error control. Some protocols are state and connection oriented. This means that the Transport Layer can keep track of the segments and retransmit those that fail.

Although not developed under the OSI Reference Model and not strictly conforming to the OSI definition of the Transport Layer, the best known examples of a Layer 4 protocol are the Transmission Control Protocol (TCP) and User Datagram Protocol (UDP)

Page 110: Network Lab Manual

Of the actual OSI protocols, there are five classes of connection-mode transport protocols ranging from class 0 (which is also known as TP0 and provides the least error recovery) to class 4 (which is also known as TP4 and is designed for less reliable networks, similar to the Internet). Class 0 contains no error recovery, and was designed for use on network layers that provide error-free connections. Class 4 is closest to TCP, although TCP contains functions, such as the graceful close, which OSI assigns to the Session Layer. Also, all OSI TP connection-mode protocol classes provide expedited data and preservation of record boundaries, both of which TCP is incapable. Layer 3: Network Layer

The Network Layer provides the functional and procedural means of transferring variable length data sequences from a source to a destination via one or more networks, while maintaining the quality of service requested by the Transport Layer. The Network Layer performs network routing functions, and might also perform fragmentation and reassembly, and report delivery errors. Routers operate at this layer—sending data throughout the extended network and making the Internet possible. This is a logical addressing scheme – values are chosen by the network engineer. The addressing scheme is hierarchical. The best-known example of a Layer 3 protocol is the Internet Protocol (IP).

It manages the connectionless transfer of data one hop at a time, from end system to ingress router, router to router, and from egress router to destination end system. It is not responsible for reliable delivery to a next hop, but only for the detection of errored packets so they may be discarded. When the medium of the next hop cannot accept a packet in its current length, IP is responsible for fragmenting the packet into sufficiently small packets that the medium can accept. A number of layer management protocols, a function defined in the Management Annex, ISO 7498/4, belong to the Network Layer. These include routing protocols, multicast group management, Network Layer information and error, and Network Layer address assignment. It is the function of the payload that makes these belong to the Network Layer, not the protocol that carries them. Layer 2: Data Link Layer

The Data Link Layer provides the functional and procedural means to transfer data between network entities and to detect and possibly correct errors that may occur in the Physical Layer. Originally, this layer was intended for point-to-point and point-to-multipoint media, characteristic of wide area media in the

Page 111: Network Lab Manual

telephone system. Local area network architecture, which included broadcast-capable multiaccess media, was developed independently of the ISO work, in IEEE Project 802. IEEE work assumed sublayering and management functions not required for WAN use. In modern practice, only error detection, not flow control using sliding window, is present in modern data link protocols such as Point-to-Point Protocol (PPP), and, on local area networks, the IEEE 802.2 LLC layer is not used for most protocols on Ethernet, and, on other local area networks, its flow control and acknowledgment mechanisms are rarely used. Sliding window flow control and acknowledgment is used at the Transport Layer by protocols such as TCP, but is still used in niches where X.25 offers performance advantages. The ITU-T G.hn standard, which provides high-speed local area networking over existing wires (power lines, phone lines and coaxial cables), includes a complete Data Link Layer which provides both error correction and flow control by means of a selective repeat Sliding Window Protocol.

Both WAN and LAN services arrange bits, from the Physical Layer, into logical sequences called frames. Not all Physical Layer bits necessarily go into frames, as some of these bits are purely intended for Physical Layer functions. For example, every fifth bit of the FDDI bit stream is not used by the Layer. Layer 1: Physical Layer

The Physical Layer defines the electrical and physical specifications for

devices. In particular, it defines the relationship between a device and a physical medium. This includes the layout of pins, voltages, cable specifications, Hubs, repeaters, network adapters, Host Bus Adapters (HBAs used in Storage Area Networks) and more.

To understand the function of the Physical Layer in contrast to the functions of the Data Link Layer, think of the Physical Layer as concerned primarily with the interaction of a single device with a medium, where the Data Link Layer is concerned more with the interactions of multiple devices (i.e., at least two) with a shared medium. The Physical Layer will tell one device how to transmit to the medium, and another device how to receive from it (in most cases it does not tell the device how to connect to the medium). Standards such as RS-232 do use physical wires to control access to the medium. The major functions and services performed by the Physical Layer are:--

• Establishment and termination of a connection to a communications medium.

Page 112: Network Lab Manual

• Participation in the process whereby the communication resources are effectively shared among multiple users. For example, contention resolution and flow control.

• Modulation, or conversion between the representation of digital data in user equipment and the corresponding signals transmitted over a communications channel. These are signals operating over the physical cabling (such as copper and optical fiber) or over a radio link.

Parallel SCSI buses operate in this layer, although it must be remembered that the logical SCSI protocol is a Transport Layer protocol that runs over this bus. Various Physical Layer Ethernet standards are also in this layer; Ethernet incorporates both this layer and the Data Link Layer. The same applies to other local-area networks, such as Token ring, FDDI, ITU-T G.hn and IEEE 802.11, as well as personal area networks such as Bluetooth and IEEE 802.15.4.

Tabulation:

Layer Function Protocols Network

Page 113: Network Lab Manual

Components

Application

User Interface

• used for applications specifically written to run overthe network

• allows access to network services that support applications;

• directly represents the services that directly support user applications

• handles network access, flow control and error recovery

• Example apps are file transfer,e-mail, NetBIOS-based applications

DNS; FTP; TFTP; BOOTP;

SNMP;RLOGIN; SMTP; MIME; NFS; FINGER; TELNET; NCP; APPC;

AFP; SMB

Gateway

Presentation

Translation

• Translates from application to network format and vice-versa

• all different formats from all sources are made into a common uniform format that the rest of the OSI model can understand

• responsible for protocol conversion, character conversion,data encryption / decryption, expanding graphics commands, data compression

• sets standards for different systems to provide seamless communication from multiple protocol stacks

• not always implemented in a network protocol

Gateway

Redirector

Session

"syncs and sessions"

• establishes, maintains and ends sessions across the network

• responsible for name recognition (identification) so only the designated parties canparticipate in the session

• provides synchronization services by planning check

NetBIOS

Names Pipes

Mail Slots

RPC

Gateway

Page 114: Network Lab Manual

points in the data stream => if session fails, only data after the most recent checkpoint need be transmitted

• manages who can transmit data at a certain time and for how long

• Examples are interactive login and file transfer connections, the session would connect and re-connect if there was an interruption; recognize names in sessions and register names in history

Transport

packets; flow control

& error-handling

• additional connection below the session layer

• manages the flow control of data between parties across the network

• divides streams of data into chunks or packets; the transport layer of the receiving computer reassembles the message from packets

• "train" is a good analogy => the data is divided into identical units

• provides error-checking to guarantee error-free data delivery, with on losses or duplications

• provides acknowledgment of successful transmissions; requests retransmission if some packets don’t arrive error-free

• provides flow control and error-handling

TCP, ARP, RARP;

SPX

NWLink

NetBIOS / NetBEUI

ATP

Gateway

Advanced Cable Tester

Brouter

Network

addressing; routing

• translates logical network address and names to their physical address (e.g. computername ==> MAC address)

• responsible for

IP; ARP; RARP, ICMP; RIP; OSFP;

IGMP;

Brouter

Router

Frame Relay

Page 115: Network Lab Manual

o addressing o determining routes for

sending o managing network

problems such as packet switching, data congestion and routing

• if router can’t send data frame as large as the source computer sends, the network layer compensates by breaking the data into smaller units. At the receiving end, the network layer reassembles the data

• think of this layer stamping the addresses on each train car

IPX

NWLink

NetBEUI

OSI

DDP

DECnet

Device

ATM Switch

Advanced Cable Tester

Data Link

data frames to bits

• turns packets into raw bits 100101 and at the receiving end turns bits into packets.

• handles data frames between the Network and Physical layers

• the receiving end packages raw data from the Physical layer into data frames for delivery to the Network layer

• responsible for error-free transfer of frames to other computer via the Physical Layer

• this layer defines the methods used to transmit and receive data on the network. It consists of the wiring, the devices use to connect the NIC to the wiring, the signaling involved to transmit / receive data and the ability to detect signaling errors on the network media

Logical Link Control

• error correction and flow control

• manages link control and defines SAPs

802.1 OSI Model

802.2 Logical Link Control

Bridge

Switch

ISDN Router

Intelligent Hub

NIC

Advanced Cable Tester

Media Access Control

• communicates with the adapter card

• controls the type of media being used:

802.3 CSMA/CD (Ethernet)

802.4 Token Bus (ARCnet)

Page 116: Network Lab Manual

802.5 Token Ring

802.12 Demand Priority

Physical

hardware; raw bit stream

• transmits raw bit stream over physical cable

• defines cables, cards, and physical aspects

• defines NIC attachments to hardware, how cable is attached to NIC

• defines techniques to transfer bit stream to cable

IEEE 802

IEEE 802.2

ISO 2110

ISDN

Repeater Multiplexer Hubs

• Passive • Active

TDR Oscilloscope Amplifier