Lab 6 RIP
Lab 6 RIP
Lab 6 RIP
6
RIP: Routing Information Protocol
A Routing Protocol Based on the Distance-Vector Algorithm
Objective
The objective of this lab is to configure and analyze the performance of the Routing
Information Protocol (RIP) model.
Overview
A router in the network needs to be able to look at a packet’s destination address and
then determine which of the output ports is the best choice to get the packet to that
address. The router makes this decision by consulting a forwarding table. The
fundamental problem of routing is: How do routers acquire the information in their
forwarding tables?
Routing algorithms are required to build the routing tables and hence forwarding tables.
The basic problem of routing is to find the lowest-cost path between any two nodes, where
the cost of a path equals the sum of the costs of all the edges that make up the path.
Routing is achieved in most practical networks by running routing protocols among the
nodes. The protocols provide a distributed, dynamic way to solve the problem of finding
the lowest-cost path in the presence of link and node failures and changing edge costs.
One of the main classes of routing algorithms is the distance-vector algorithm. Each node
constructs a vector containing the distances (costs) to all other nodes and distributes that
vector to its immediate neighbors. RIP is the canonical example of a routing protocol built
on the distance-vector algorithm. Routers running RIP send their advertisements regularly
(e.g., every 30 seconds). A router also sends an update message whenever a triggered
update from another router causes it to change its routing table.
In this lab you will set up a network that utilizes RIP as its routing protocol. You will
analyze the routing tables generated in the routers, and you will observe how RIP is
affected by link failures.
Procedure
1. Start Riverbed Modeler Academic Edition ⇒ Choose New from the File menu.
2. Select Project and click OK ⇒ Name the project <your initials>_RIP, and the
scenario NO_Failure ⇒ Click OK.
3. In the Startup Wizard: Initial Topology dialog box, make sure that Create Empty
Scenario is selected ⇒ Click Next ⇒ Select Campus from the Network Scale
list ⇒ Click Next three times ⇒ Click Finish.
2
Configure the Router:
3. Repeat step 2 three times to generate three new copies of the objects and
arrange them in a way similar to the following figure. Rename all objects as
shown.
The PPP_DS3 link has 4. Connect routers, as shown, using PPP_DS3 links.
a data rate of 44.736
Mbps.
Choose the Statistics
RIP traffic is the total
amount of RIP update
To test the performance of the RIP protocol, we will collect the following statistics:
traffic (in bits) 1. Right-click anywhere in the project workspace and select Choose Individual
sent/received per
second by all the Statistics from the pop-up menu.
nodes using RIP as the
routing protocol in the 2. In the Choose Results dialog box, check the following statistics:
IP interfaces in the
node. a. Global Statistics ⇒ RIP ⇒ Traffic Sent (bits/sec).
b. Global Statistics ⇒ RIP ⇒ Traffic Received (bits/sec).
Total Number of
Updates is the number c. Nodes Statistics ⇒ Route Table ⇒ Total Number of Updates.
of times the routing
table at this node gets
updated (e.g., due to a 3. Click OK and then save your project.
new route addition, an
existing route deletion,
and/or a next hop
update).
Configure and Run the Simulation
In the network we just created, the routers will build their routing tables, and then they will
not need to update them further because we didn’t simulate any node or link failures. In
this scenario we will simulate failures so that we can compare the behavior of the routers
in both cases.
1. Select Duplicate Scenario from the Scenarios menu and name it Failure ⇒
Click OK.
2. Open Object Palette by clicking . Select the Utilities palette from the drop-
down menu.
3. Add a Failure Recovery object to your workspace and name it Failure as shown
⇒ Close the Object Palette dialog box.
This will “fail” the link between Router1 and Router2 200 seconds into the
simulation.
2. Check that all the configuration are as was configured previously and click Run.
2. Change the drop-down menu in the right-lower part of the Compare Results
dialog box to Stacked Statistics as shown.
3. Select the Total Number of Updates statistic for Router1 and click Show.
4. You should get two graphs, one for each scenario. Right-click on each graph and
select Draw Style ⇒ Bar Chart.
5. The resulting graphs should resemble the following (you can zoom in on the
graphs by clicking-and-dragging a box over the region of interest):
Obtain the IP Addresses of the Interface:
Before checking the contents of the routing tables, we need to determine the IP address
information for all interfaces in the current network. Recall that these IP addresses are
assigned automatically during simulation, and we set the global attribute IP Interface
Addressing Mode to export this information to a file.
1. From your favorite file explorer, find the directory in which your project is saved.
3. Use your favorite advanced text editor (If you don't have one installed, or if the one
you have does not perform well, you may use Notepad++ which can be downloaded
for free from: http://notepad-plus-plus.org/).
4. The following is a part of the gdf file content. It shows the IP addresses assigned to
the interfaces of Router1 in our network. For example the interface of Router1 that
is connected to Net10 has the IP address 192.0.0.1 (Note: Your result may vary
due to different nodes placement.) The Subnet Mask associated with that interface
indicates that the address of the subnetwork, to which the interface is connected,
is
192.0.0.0 (i.e., the logical AND of the interface IP address and the subnet mask).
5. Print out the layout of the network you implemented in this lab. On this layout, from the
information included in the gdf file, write down the IP addresses associated with
Router1 as well as the addresses assigned to each subnetwork as shown in the
following two figures (Note: Your IP addresses may vary due to different nodes
placement.)
10
192.0.0.1 192.0.1.1
192.0.2.1 192.0.3.1
192.0.3.2
192.0.2.2
192.0.0.0
192.0.1.0
192.0.13.0
192.0.6.0
192.0.11.0 192.0.7.0
192.0.10.0
192.0.9.0
Compare the Routing Tables Content:
1. To check the content of the routing tables in Router1 for both scenarios:
i. Select Router1 by clicking on it ⇒ Go to the Routing menu in IP in the
Protocols menu (Expand the hierarchy on the left as shown below) ⇒ Click on
the field Export Routing Tables….
iii. Open View Results Select DES Run Tables tab ⇒ Expand the hierarchy on
the left as shown below
2. Carry out the previous step for both scenarios. The following are partial contents
of Router1’s routing table for both scenarios (Note: Your results may vary due to
different nodes placement):
Questions
1) Obtain and analyze the graphs that compare the sent RIP traffic for both
scenarios. Make sure to change the draw style for the graphs to Bar Chart.
2) Describe and explain the effect of the failure of the link connecting Router1 to
Router2 on the routing tables.
3) Create another scenario as a duplicate of the Failure scenario. Name the new
scenario Q3_Recover. In this new scenario have the link connecting Router1 to
Router2 recover after 400 seconds. Generate and analyze the graph that shows
the effect of this recovery on the Total Number of Updates in the routing table of
Router1. Check the contents of Router1‘s routing table. Compare this table with
the corresponding routing tables generated in the NO_Failure and Failure
scenarios.
Lab Report
Prepare a report that follows the guidelines explained in Lab 0. The report should include
the answers to the above questions as well as the graphs you generated from the
simulation scenarios. Discuss the results you obtained and compare these results with
your expectations. Mention any anomalies or unexplained behaviors.