Routing Information Protocol 2 (RIP2) Study_Group_208 Study_Group_208 Shrotri Meghana Dhar Aparna...

30
Routing Information Protocol 2 Routing Information Protocol 2 (RIP2) (RIP2) Study_Group_208 Study_Group_208 Shrotri Meghana Shrotri Meghana Dhar Aparna Dhar Aparna Narkar Priyanka Narkar Priyanka Dulam Vasundhara Dulam Vasundhara Mondedula Kalyani Mondedula Kalyani

Transcript of Routing Information Protocol 2 (RIP2) Study_Group_208 Study_Group_208 Shrotri Meghana Dhar Aparna...

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

RIP Response MessageRIP Response Message

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

Questions???Questions???