Routing Information Protocol 2Routing Information Protocol 2 (RIP2) (RIP2)
Study_Group_208Study_Group_208
Shrotri MeghanaShrotri Meghana Dhar AparnaDhar Aparna
Narkar Priyanka Narkar Priyanka
Dulam VasundharaDulam Vasundhara
Mondedula KalyaniMondedula Kalyani
AgendaAgenda
RIP Overview, History and VersionsRIP Overview, History and Versions RIP2 over RIP1RIP2 over RIP1 Configuring RIP and RIP commandsConfiguring RIP and RIP commands Distance Vector Algorithms and count to Distance Vector Algorithms and count to
infinity probleminfinity problem Protocol Specification and Message Format Protocol Specification and Message Format Addressing Considerations Addressing Considerations Timers, Input and Output processing Timers, Input and Output processing Security considerations in RIP2 Security considerations in RIP2 What is RIPng advantages and usage What is RIPng advantages and usage Disadvantages of RIP2 and proposed Disadvantages of RIP2 and proposed
solutionssolutions ConclusionConclusion
RIP Overview, History and VersionsRIP Overview, History and Versions
An interior gateway protocol (IGP), An interior gateway protocol (IGP), which means that it performs routing which means that it performs routing within a single autonomous system within a single autonomous system (Exterior: BGP)(Exterior: BGP)
The original incarnation of RIP was the The original incarnation of RIP was the Xerox protocolXerox protocol
AppleTalk Routing Table Maintenance AppleTalk Routing Table Maintenance Protocol (RTMP) and the Banyan Protocol (RTMP) and the Banyan VINES Routing Table Protocol (RTP), VINES Routing Table Protocol (RTP), these are based on the versions of RIPthese are based on the versions of RIP
Advantages of RIP and Disadvantages of RIP1Advantages of RIP and Disadvantages of RIP1
Advantages of RIP:Advantages of RIP:
– RIP is very useful in a small network, where it has very little RIP is very useful in a small network, where it has very little overhead in terms of bandwidth used and configuration and overhead in terms of bandwidth used and configuration and management time. management time.
– Easy to implement than newer IGP’sEasy to implement than newer IGP’s– Many implementations are available in the RIP field. Many implementations are available in the RIP field.
Disadvantages of RIP1:Disadvantages of RIP1:
– minimal amount of information for router to route the packet minimal amount of information for router to route the packet and also very large amount of unused space. and also very large amount of unused space.
– Subnet support : Supports subnet routes only within the Subnet support : Supports subnet routes only within the subnet networksubnet network
– Not secure; anyone can act as a router just by sending RIP-1 Not secure; anyone can act as a router just by sending RIP-1 messages messages
– RIP1 was developed for an AS that originally included less RIP1 was developed for an AS that originally included less than a 100 routers than a 100 routers
RIP2RIP2 Latest version of RIP, RFC: 2453,Build in 1990Latest version of RIP, RFC: 2453,Build in 1990 Advantages:Advantages:
– An AS can include several hundred routers with RIP-2 An AS can include several hundred routers with RIP-2 protocol.protocol.
– Compatible upgrade of RIPv1 including subnet routing, Compatible upgrade of RIPv1 including subnet routing, authentication, CIDR aggregation, route tags and authentication, CIDR aggregation, route tags and multicast transmissionmulticast transmission
– Subnet Support : uses more convenient partitioning Subnet Support : uses more convenient partitioning using variable-length subnets using variable-length subnets
– An end system can run RIP in passive mode to listen for routing information without supplying any.
– Low requirement in memory and processing at the node
RIP and RIP2 are for the IPv4 network while the RIP and RIP2 are for the IPv4 network while the RIPngRIPng is designed for the IPv6 network.is designed for the IPv6 network.
RIP Message TransferRIP Message Transfer
SUB Netted network
SUB Netted network
SUB Netted network
128.6 Network
128.10 Network
128.8 Network
Routing Table
Routing Table
Routing Table
S0130.10.65.1
S1130.10.62.2
S2130.10.62.3
S3130.10.64.3
S4130.10.64.4
S5130.10.65.5
AS
Practical use in Yahoo Chat IMPractical use in Yahoo Chat IM
Routing information protocol: gives Routing information protocol: gives command, version ip domain and command, version ip domain and address information. address information.
RIP Configuring and CommandsRIP Configuring and Commands
ip routing : enables the routerip routing : enables the router router rip : you can enter configuration router rip : you can enter configuration
commands to define the RIP process for commands to define the RIP process for router router
network network_address : Telling the network network_address : Telling the router which networks it should advertise router which networks it should advertise routes forroutes for
write, write terminal : Saving configuration write, write terminal : Saving configuration & view currently running configuration & view currently running configuration
ping address : To check and see if the ping address : To check and see if the packets are getting routed packets are getting routed
show ip route : To view the routers current show ip route : To view the routers current routing table routing table
show ip rip ? : Gives information about RIPshow ip rip ? : Gives information about RIP
Distance Vector ProtocolDistance Vector Protocol
Compatible upgrade of RIPv1 including subnet routing, Compatible upgrade of RIPv1 including subnet routing, authentication, CIDR aggregation, route tags and multicast authentication, CIDR aggregation, route tags and multicast transmissiontransmission
Subnet support: RIPv1 supports subnet routes only within the Subnet support: RIPv1 supports subnet routes only within the subnet network while RIPv2 includes subnet mask in the subnet network while RIPv2 includes subnet mask in the messages. This allows for subnet knowledge outside subnet. More messages. This allows for subnet knowledge outside subnet. More convenient partitioning using variable length subnet.convenient partitioning using variable length subnet.
RIPv2 is a distance vector based routing protocol. RIP2 supports RIPv2 is a distance vector based routing protocol. RIP2 supports variable-length subnet masks (VLSM).variable-length subnet masks (VLSM).
Distance vector routing protocols: Distance-based vector routing Distance vector routing protocols: Distance-based vector routing protocols base the optimal route on the number of hops (i.e., protocols base the optimal route on the number of hops (i.e., devices) a packet must pass through to reach a destination. devices) a packet must pass through to reach a destination.
Neighboring nodes send information in regular time Neighboring nodes send information in regular time intervals intervals
Install routes directly in tables, lowest cost wins Install routes directly in tables, lowest cost wins The information sent (the distance vectors) are all routes The information sent (the distance vectors) are all routes
from the tablefrom the table The shortest path tree is contained in the routing tableThe shortest path tree is contained in the routing table Calculations are based on the Bellman-Ford algorithmCalculations are based on the Bellman-Ford algorithm
Potential Problems and SolutionsPotential Problems and Solutions
Potential Problems:Potential Problems:
– Count to infinity problemCount to infinity problem– Routing loopsRouting loops
SOLUTION: Triggered Updates/Split Horizon for Preventing Two-hop LoopsSOLUTION: Triggered Updates/Split Horizon for Preventing Two-hop Loops
Split Horizon:Split Horizon:"Split horizon" is a scheme for avoiding problems caused by including routes in "Split horizon" is a scheme for avoiding problems caused by including routes in
updates sent to the router from which they were learned. updates sent to the router from which they were learned. – Simple - The information about destination routed on the link is omittedSimple - The information about destination routed on the link is omitted– With poisonous reverse -The corresponding distance is set to infinity if the With poisonous reverse -The corresponding distance is set to infinity if the
destination is routed on the linkdestination is routed on the link
Triggered updates:Triggered updates:
– Split horizon with poisoned reverse will prevent any routing loops that Split horizon with poisoned reverse will prevent any routing loops that involve only two routers. However, it is possible to end up with patterns in involve only two routers. However, it is possible to end up with patterns in which three routers are engaged in mutual deception. which three routers are engaged in mutual deception.
– A timer is associated with each entry in the routing table - much longer A timer is associated with each entry in the routing table - much longer than the period of transmission of informationthan the period of transmission of information
– Triggered updates request nodes to send messages as soon as they notice Triggered updates request nodes to send messages as soon as they notice a change in the routing tablea change in the routing table
RIP 2 Packet FormatRIP 2 Packet Format Command -- The command field is used to Command -- The command field is used to
specify the purpose of the datagram. specify the purpose of the datagram.
Version -- The RIP version number. The Version -- The RIP version number. The current version is 2. current version is 2.
Address family identifier -- Indicates what Address family identifier -- Indicates what type of address is specified in this type of address is specified in this particular entry. particular entry.
Route tag -- Attribute assigned to a route Route tag -- Attribute assigned to a route which must be preserved and which must be preserved and readvertised with a route. The route tag readvertised with a route. The route tag provides a method of separating internal provides a method of separating internal RIP routes from external RIP routes, which RIP routes from external RIP routes, which may have been imported from an EGP or may have been imported from an EGP or another IGP. another IGP.
IP address -- The destination IP address. IP address -- The destination IP address.
Subnet mask -- Value applied to the IP Subnet mask -- Value applied to the IP address to yield the non-host portion of address to yield the non-host portion of the address. If zero, then no subnet mask the address. If zero, then no subnet mask has been included for this entry. has been included for this entry.
Next hop -- Immediate next hop IP Next hop -- Immediate next hop IP address to which packets to the address to which packets to the destination specified by this route entry destination specified by this route entry should be forwarded. should be forwarded.
Metric -- Represents the total cost of Metric -- Represents the total cost of getting a datagram from the host to that getting a datagram from the host to that destination. destination.
Protocol Structure - RIP & and RIP2: Routing Information Protocol
http://www.colasoft.com/resources/protocol.php?id=RIP2
Max pkt size 512
RIPv2 Packet Format (With/Without Authentication Header)RIPv2 Packet Format (With/Without Authentication Header)
RIPv2 packet with no AuthenticationRIPv2 packet with no Authentication RIPv2 packet with Authentication RIPv2 packet with Authentication headerheader
Example and Routing Table StructureExample and Routing Table Structure
IP Routing table for Router R1IP Routing table for Router R1
Included in RIP routing table
-Address of (net/subnet/host) destination-Metric associated with destination
-Address of next hop router-Recently updated flag
-Several timers
RIP2 ExtensionsRIP2 Extensions
authenticationauthentication routing per subnetrouting per subnet support of multiple metricssupport of multiple metrics routing domainsrouting domains multicastingmulticasting
Addressing ConsiderationAddressing Consideration IP address field in RIP2 IP address field in RIP2
message message (Request/ Response )(Request/ Response ) format can be networks, format can be networks, hosts, or a special code hosts, or a special code used to indicate a default used to indicate a default address - exampleaddress - example– 128.6128.6 Network Address Network Address– 128.6.4.1128.6.4.1 Host Host
addressaddress– 0.0.0.00.0.0.0 Default address Default address
Subnet addresses must not Subnet addresses must not be sent outside the be sent outside the network of which the network of which the subnet is a part.subnet is a part.
0.0.0.0 is used to describe 0.0.0.0 is used to describe a default route.a default route.
SUB Netted network
SUB Netted network
SUB Netted network
128.6 Network
128.10 Network
128.8 Network
Routing Table
Routing Table
Routing Table
S0130.10.65.1
S1130.10.62.2
S2130.10.62.3
S3130.10.64.3
S4130.10.64.4
S5130.10.65.5
AS
TimersTimers Multiple timers for performance regulationMultiple timers for performance regulation Each route contains the following timers.Each route contains the following timers.
– Routing-update timerRouting-update timer. –--- 30 Seconds. –--- 30 Seconds Every 30 seconds, the output process Every 30 seconds, the output process
is instructed to generate a complete is instructed to generate a complete response to every neighboring response to every neighboring router/gateway.router/gateway.
30 seconds updates are triggered by a 30 seconds updates are triggered by a clock not affected system load or clock not affected system load or service.service.
To prevent collisions – 30 second timer To prevent collisions – 30 second timer offset by addition of a small random offset by addition of a small random time.time.
TimersTimers
– Time out timersTime out timers. ---- 180 Seconds. ---- 180 SecondsSet route metric to 16 (Infinity); Set route metric to 16 (Infinity); Route change flag is setRoute change flag is setThe output process is instructed to The output process is instructed to
generate a response message (Notify generate a response message (Notify neighbors).neighbors).
– Garbage collection timerGarbage collection timer. ----- 120 . ----- 120 SecondsSeconds
Route is deleted from routing table.Route is deleted from routing table.The output process is instructed to The output process is instructed to
generate a response message (Notify generate a response message (Notify neighbors).neighbors).
InitializationInitialization
InitializationInitialization– This is done when host first comes online.This is done when host first comes online.– Determine who the neighbors are.Determine who the neighbors are.– Set command field to 1Set command field to 1– Send request for entire routing table from Send request for entire routing table from
neighborsneighbors..
Operations - Operations - Input ProcessingInput Processing Handles the datagram received on RIP port (520).Handles the datagram received on RIP port (520). Do validation ( such as version number etc)Do validation ( such as version number etc)
– If validation fails log the errorIf validation fails log the error Check command field (Request or Response)Check command field (Request or Response) Handling Input Request Message–Handling Input Request Message–
– Initialization Request Initialization Request -- Send entire routing -- Send entire routing table.table.
– Specific request Specific request -- Send only entries -- Send only entries requested.requested.
– Send response immediatelySend response immediately Handling Input Response Message- A response can be Handling Input Response Message- A response can be
received for one of several following reasons.received for one of several following reasons.– Response to a specific query (direct UDP Response to a specific query (direct UDP
connection for the router).connection for the router).– Regular update (Unsolicited response).Regular update (Unsolicited response).– Triggered update caused by a route changeTriggered update caused by a route change. .
Operations –Operations – Output Processing Output Processing Describes the processing used to create Describes the processing used to create responseresponse and and
requestrequest messages. messages. The The out put processingout put processing is triggered by the following is triggered by the following
ways.ways.– By input processing By input processing – By regular routing update ( broadcast/multi cast at By regular routing update ( broadcast/multi cast at
every 30 secs)every 30 secs)– By the triggered updates ( When a route changes)By the triggered updates ( When a route changes)
Generating Request MessageGenerating Request Message– Can send one RequestCan send one Request– Request for entire routing table.Request for entire routing table.
Generating Response MessagesGenerating Response Messages– Response to Request Response to Request
Sent to only one destinationSent to only one destination– Regular updatesRegular updates
Send the entire routing tableSend the entire routing table– Triggered UpdatesTriggered Updates
Create Response messages to neighbors.Create Response messages to neighbors.
Interaction between RIPV1 and Interaction between RIPV1 and RIPV2RIPV2
Limiting NetworksLimiting Networks Disable Auto-SummarizationDisable Auto-Summarization Single SubnetmaskSingle Subnetmask
Security ConsiderationsSecurity Considerations
AuthenticationAuthentication
1. Plaintext Authentication 1. Plaintext Authentication AlgorithmAlgorithm
2.Cryptographic Authentication2.Cryptographic Authentication
1.Keyed Message Digest 51.Keyed Message Digest 5
2.HMAC-SHA12.HMAC-SHA1 Peer SecurityPeer Security Router FiltersRouter Filters
RIPngRIPng
IPv6 compatible version of RIPIPv6 compatible version of RIP complete new protocolcomplete new protocol Uses Uses distance vector algorithmdistance vector algorithm Uses standard port nuber 521 and runs over Uses standard port nuber 521 and runs over
UDPUDP Installs the best route in the RIPng routing Installs the best route in the RIPng routing
tabletable
RIPng v/s RIP-2RIPng v/s RIP-2
RIPngRIPng RIP-2RIP-2
Learns IPv6 route Learns IPv6 route information information
Learns IPv4 route Learns IPv4 route information information
Uses port number 521. Uses port number 521. Uses port number 520 Uses port number 520
Requires no Requires no authentication for RIPng authentication for RIPng protocol packets. protocol packets.
Requires authentication Requires authentication for RIP protocol packets for RIP protocol packets
No support for multiple No support for multiple instances of RIPng. instances of RIPng.
Support for multiple Support for multiple instances of RIP-2 instances of RIP-2
RIP2 - DisadvantagesRIP2 - Disadvantages
RIP-2 supports generic notion of authentication, but only “password” is defined so far. Still not very secure.
RIP2 packet size increases as the number of networks increases hence it is not suitable for large networks.
RIP2 generates more protocol traffic than OSPF, because it propagates routing information by periodically transmitting the entire routing table to neighbor routers
RIP2 may be slow to adjust for link failures.
Solution:OSPF within an ASSolution:OSPF within an AS
Can support fine-grained metrics (vs. Can support fine-grained metrics (vs. RIP)RIP)
Multiple metricsMultiple metrics– Throughput, Delay, Cost, ReliabilityThroughput, Delay, Cost, Reliability
Can compute a different routing table Can compute a different routing table for each metric.for each metric.
OSPFv2 supports an extension that OSPFv2 supports an extension that allows the metric to be used specified allows the metric to be used specified in the packet. in the packet.
ConclusionConclusion
RIP2 offers many substantial features used to increase the efficiency of RIP1
RIP2 have one negative feature of RIP1 - the path between two subnets is based on the fewest number of router hops
RIPng is a complete new protocol designed for Ipv6. It uses the same operations as that of RIP1 and RIP2
ReferencesReferences <<http://www.pmg.com/otw_nwsl/97_w_rip1.htmhttp://www.pmg.com/otw_nwsl/97_w_rip1.htm>> <<http://www.javvin.com/protocolRIP.htmlhttp://www.javvin.com/protocolRIP.html>> <http://www.colasoft.com/resources/protocol.php?id=RIP2><http://www.colasoft.com/resources/protocol.php?id=RIP2> <http://www.protocols.com/pbook/tcpip4.htm><http://www.protocols.com/pbook/tcpip4.htm> <http://www.soi.wide.ad.jp/soi-asia/pkg1/06/43.html><http://www.soi.wide.ad.jp/soi-asia/pkg1/06/43.html> <http://www.cs.berkeley.edu/~kfall/EE122/lec16/sld010.htm><http://www.cs.berkeley.edu/~kfall/EE122/lec16/sld010.htm> <http://www.uniar.ukrnet.net/tcpip/crhbook/chap04.html><http://www.uniar.ukrnet.net/tcpip/crhbook/chap04.html> <http://www.faqs.org/rfcs/rfc2453.html><http://www.faqs.org/rfcs/rfc2453.html> <http://www.faqs.org/rfcs/rfc1723.html><http://www.faqs.org/rfcs/rfc1723.html> <http://www.faqs.org/rfcs/rfc1058.html><http://www.faqs.org/rfcs/rfc1058.html> <http://www.cs.odu.edu/~sudheer/technical/presentations/<http://www.cs.odu.edu/~sudheer/technical/presentations/
IntroductionToRIP2.pdf>IntroductionToRIP2.pdf> http://www.networkdictionary.com/protocols/rip.php?http://www.networkdictionary.com/protocols/rip.php?
PHPSESSID=c2a79111d168fafPHPSESSID=c2a79111d168faf http://www.tcpipguide.com/free/http://www.tcpipguide.com/free/
t_RIPOverviewHistoryStandardsandVersions.htmt_RIPOverviewHistoryStandardsandVersions.htm http://www.cisco.com/univercd/cc/td/doc/product/software/http://www.cisco.com/univercd/cc/td/doc/product/software/
ios121/121cgcr/ip_c/ipcprt2/1cdrip.htmios121/121cgcr/ip_c/ipcprt2/1cdrip.htm http://www.duke.edu/~yy7/ee156/rip.htmhttp://www.duke.edu/~yy7/ee156/rip.htm
Top Related