Вы находитесь на странице: 1из 35

Routing Information Protocol

(RIP)
NETE0514
Presented by
Dr.Apichan Kanjanavapastit

Intra-and Interdomain Routing


An internet is divided into autonomous systems. An
autonomous system (AS) is a group of networks and
routers under the authority of a single administration
Routing inside an autonomous system is referred to as
intradomain routing
Routing between autonomous system is referred to as
interdomain routing

Popular Routing Protocols

In this chapter, we discuss two intradomain routing protocols:


distance vector and link state
For the interdomain routing protocol, we introduce path vector
Routing Information Protocol (RIP) is the implementation of the
distance vector protocol
Open Shortest Path First (OSPF) is the implementation of the link
state protocol
Border Gateway Protocol (BGP) is the implementation of the path
vector protocol

Distance Vector Routing

In distance vector routing, the least cost route between any two
nodes is the route with minimum distance
In this protocol each node maintains a vector (table) of minimum
distances to every node
The table at each node also guides the packets to the desired node
by showing the next stop in the route (next-hop routing)

Initialization
At the beginning, each node can know only the
distance between itself and its immediate
neighbors, those directly connected to it

Sharing
The whole idea of distance vector routing is the sharing
of information between neighbors
Although node A does not know about node E, node C
does. So if node C shares its routing table with A, node A
can also know how to reach node E
Note:

In distance vector routing, each node shares its


routing table with its immediate neighbors
periodically and when there is a change.

Updating

When a node receives a 2-column table from a


neighbor, it needs to update its routing table.
Updating takes 3 steps:
1. The receiving node needs to add the cost between
itself and the sending node to each value in the
second column
2. The receiving node needs to add the name of the
sending node to each row as the 3rd column if the
receiving node uses information from any row. The
sending node is the next node in the route

Updating (cont.)
3. The receiving node needs to compare each
row of its old table with the corresponding row
of the modified version of the received table.
a) If the next-node entry is different, the receiving node
chooses the row with the smaller cost. If there is a
tie, the old one is kept
b) If the next-node entry is the same, the receiving
node chooses the new row. For example, if node C
has previously advertised a route to node X with
distance 3. Suppose that now there is no path
between C and X; node C now advertises this route
with a distance of infinity. Node A must not ignore
this value even though its old entry is smaller.

Updating (cont.)

When to Share

The table is sent both periodically and when there is a


change in the table
Periodic Update. A node sends its routing table,
normally every 30 seconds, in a periodic update. The
period depends on the protocol that is using distance
vector routing
Triggered Update. A node sends its 2-column routing
table to its neighbors any time there is a change in its
routing table. This is called a triggered update. The
change can result from the following.
1. A node receive a table from a neighbor resulting in changes in
its own table after updating
2. A node detects some failure in the neighboring links which
results in a distance change to infinity

Initialroutingtablesinasmall
autonomoussystem

Finalroutingtablesforthepreviousfigure

Two-Node Loop Instability


A problem with distance vector routing is
instability, which means that a network using this
protocol can become unstable

Solutions to two-node instability


Defining Infinity. Most implementation of the
distance vector protocol define the distance
between each node to be 1 and define 16 as
infinity. Therefore, the distance vector cannot be
used in large systems
Split Horizon. In this strategy, instead of
flooding the table through each interface, each
node sends only part of its table through each
interface. If node B thinks that the optimum route
to reach X is via A, it does not need to advertise
this piece of information to A.

Solutions to two-node instability


(cont.)

Solutions to two-node instability


(cont.)
Split Horizon and Poison Reverse. This
strategy is a combination between split
horizon and poison reverse where node B
can still advertise the value of X, but if the
source of information is A, it can replace
the distance with infinity as a warning:
Dont use this value; what I know about
this route comes from you.

Solutions to two-node instability


(cont.)

Three-Node Instability

Routing Information Protocol (RIP)

The Routing Information Protocol (RIP) is an


intradomain routing protocol used inside an
autonomous system
It is a very simple protocol based on distance
vector routing
RIP implements distance vector directly with
some considerations:

1. In an autonomous, we are dealing with routers and


networks (links). The routers have routing tables,
networks dont
2. The destination in a routing table is a network,
which means the first column defines a network
address

Routing Information Protocol (RIP)


(cont.)
3.
4.
5.

The metric used by RIP is the number of links that have to be used to
reach the destination which is called hop count
Infinity is defined as 16
The next node column defines the address of the router to which the
packet is to be sent to reach its destination

RIP Message Format

RIP Message Format (cont.)


Command. This 8-bit field specifies the type of
message: request (1) or response (2)
Version. This 8-bit defines the version. In the
textbook, we use version 1
Family. This 16-bit field defines the family of the
protocol used. For TCP/IP the value is 2.
Network address. RIP has allocated 14 bytes for
this field to be applicable to any protocol.
Distance. This 32-bit field defines the hop count
from the advertising router to the destination
network

Request and Response


Request. A request message is sent by a router
that has just come up or by a router that has
some time-out entries. A request can ask about
specific entries or all entries
Response. A solicited response is sent only in
answer to a request. It contains information
about the destination specified in the
corresponding request. An unsolicited response
is sent periodically, every 30 s or when there is a
change in the routing table

Request Messages

Example 1

Whatistheperiodicresponsesentbyrouter
R1? Assume R1 knows about the whole
autonomoussystem.

Solution
R1 can advertise three networks 144.2.7.0,
144.2.9.0, and 144.2.12.0. The periodic response
(updatepacket)isshownbelow.

Example 2
Figure 14.11 shows the update message sent from router R1 to
router R2 in Figure 14.8. The message is sent out of interface
130.10.0.2.

See Next Slide

The message is prepared with the


combination of split horizon and
poison reverse strategy in mind.
Router
R1
has
obtained
information
about
networks
195.2.4.0, 195.2.5.0, and 195.2.6.0
from router R2. When R1 sends
an update message to R2, it
replaces the actual value of the
hop counts for these three
networks with 16 (infinity) to
prevent any confusion for R2. The
figure also shows the table
extracted from the message.
Router R2 uses the source address
of the IP datagram carrying the
RIP message from R1 (130.10.02)
as the next hop address.

Timer in RIP
RIP uses 3 timers. The periodic timer controls
the sending of messages, the expiration timer
governs the validity of a route, and the garbage
collection timer advertises the failure of a route

Periodic Timer
The periodic timer controls the advertising
of regular update messages
The working model uses a random
number between 25 and 30 s
This is to prevent any possible
synchronization and therefore overload on
an internet if routers update
simultaneously

Expiration Timer
The expiration timer governs the validity of a
route
When a router receives update information for a
route, the expiration timer is set to 180 s for that
particular route
Every time a new update for the route is
received, the timer is reset
If the timer is expired, the hop count of the route
is set to 16, which means the destination is
unreachable

Garbage Collection Timer


When the information about a route
becomes invalid, the router does not
immediately purge that route from its table
Instead, it continues to advertise the route
with a metric value of 16
At the same time, the garbage collection
timer is set to 120 s for that route
When the count reaches zero, the route is
purged from the table

Example 3
A routing table has 20 entries. It does not receive information
about five routes for 200 s. How many timers are running at
this time?

Solution
The 21 timers are listed below:
Periodic timer: 1
Expiration timer: 20 5 = 15
Garbage collection timer: 5

RIP Version 2
RIP version 2 was designed to overcome
some of the shortcomings of version 1
The designers of version 2 have not
augmented the length of the message for
each entry
They have only replaced those fields in
version 1 that were filled with 0s for the
TCP/IP protocol with some new fields

Message Format
16

COMMAND (1-5)

24

VERSION (2)

31

AS NUMBER

FFFF

AUTHENTICATION TYPE

AUTHENTICATION HEADER
FAMILY OF NET 1

MUST BE ZERO
ADDRESS OF NET 1
MASK
NEXT HOP
DISTANCE TO NET 1

Route tag. This field carries information such as the autonomous system number. It
can be used to enable RIP to receive information from an interdomain routing
protocol
Subnet mask. This is a 4-byte field that carries the subnet mask. This means that
RIP2 supports classless addressing and CIDR
Next-hop address. If the sending router want to specify another router IP address to
be the next hop router.

Вам также может понравиться