Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 49 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
49
Dung lượng
679,81 KB
Nội dung
Upon rec eiving a packet, cbus interface cards query the cbus controller for the destination line card The cbus controller performs a local route-cache lookup for the destination—if this is the first packet to the destination, the cache lookup fails and the cbus controller sends a query to the CSC card for a route-table lookup The CSC returns the result to the cbus controller, which caches the result and responds to the query from the original line card The receiving line card forwards the packet over the cbus to the appropriate destination line card, and subsequent packets to the same destination can now be autonomously switched over the cbus without the intervention of the centralized CPU This boosted the performance of the AGS+ platform to 80,000 pps Within the AGS+ architecture, interface buffers were maintained on the cbus controller and system buffers on the CSC/4 CPU card Only four of the AGS+ chassis slots could be used for cbus interface cards With the introduction of the 7000 and 7010 series, Cisco maintained the same auxiliary-switching processor design paradigm, but introduced a new range of processor cards The extended Cisco bus included connectivity to every slot—five slots, in the case of the 7000; three slots, in the case of the 7010 The switch processor performed an identical role as the cbus controller: to offload fast-cache lookup from the CPU so that packets that had a cache hit could be forwarded autonomously; and to perform the MAC layer-rewrite, writing the new MAC header to the packet Recognizing that the CPU was now predominantly used for route calculations, Cisco renamed it the route processor, and the auxiliary switching engine was renamed the switch processor An alltime high of 200,000 pps was achieved on the 7000 router performing autonomous switching (see Figure 5-5) Figure 5-5 Cisco 7000 Architecture 100 One additional refinement took place on the 7000 series The silicon switch processor (also known as the silicon switch engine, or SSE) is a hardware-accelerated alternative to the standard switch processor An SSE cache was precomputed on the route processor card and regularly was dumped into the SSP The result was more than 270,000 pps Optimum Switching In 1995, Cisco introduced the 7500 series Refinements relevant to switching included the combination of both the route and the switch processors on a single card, and a new CyBus of 1.077 Gbit/s capacity that was backward-compatible with the cbus interface processors of the 7000 series A new route-cache mechanism, based on an m-trie lookup algorithm, provided switching capacity similar to the 7000 series with SSP—around 270,000 pps Operationally, however, it performed the same role as autonomous switching: offloading switching functions from the Route Switch Processor (RSP) Optimum switching is the default on the 7500 series interfaces Distributed Switching With the introduction of the Versatile Interface Processor (VIP) cards, Cisco made the ultimate step toward a peer multiprocessor architecture Each VIP card contains its own MIPS r4600 RISC processor, runs a mini-IOS kernel, and has configurable levels of SRAM and DRAM Although the VIP1 was available for a short time, most of the installed base consists of VIP2s The distributed features are targeted at the 7500 series (see Figure 5-6), but a VIP1 without distributed features is supported in a 7000 platform equipped with an RSP7000 (combined RP/SP) Figure 5-6 Cisco 7500 Architecture 101 Each VIP card participates in an interprocess communication system with the RSP over the CyBus IPC maintains an up-to-date copy of the RSP's fast switching cache on each VIP card, enabling each to perform switching independent of the RSP, with the exception of the use of packet memory Hence, within the constraints of the system bus, packet throughput is increased linearly with the number of VIP cards installed in the router Switching local to a VIP is performed at more than 120,000 pps, and between VIPs at more than 70,000 pps 102 Netflow Switching As discussed in Chapter 4, "Network Topology and Design," accounting of data traffic is not only important for customer billing, but is a crucial part of traffic engineering For example, knowing the relative size of flows between routers in the network core can help you calculate the most cost-effective topology and circuit size of the core network In terms of operation, Netflow switching is similar to the fast-switching cache: The first packet of any flow is process switched and involves a routing table lookup by the CPU/Route Processor (RP) Subsequent packets in the flow can be switched using a fast-cache lookup rather than an expensive routing table traverse In addition, on platforms capable of autonomous or optimum switching, Netflow cache lookup and packet forwarding can occur without interrupting the RP The differences between Netflow and the fast-cache–based switching paradigms is the information maintained in the cache, as well as the fact that, in Netflow switching, this information can be periodically exported to collector hosts for further post-processing and analysis Per-flow information that is maintained by the Netflow cache includes the following: • • • • • • • • • • • IP source and destination address Next-hop router address Input and output physical interfaces Packet and byte counts Start-of-flow and end-of-flow timestamps TCP/UDP source and destination application port numbers IP protocol (such as TCP, UDP, and so on) Type of service (indicates packet priority in multi-class service) TCP flags Source and destination autonomous system numbers Source and destination subnet masks Other than the obvious accounting capabilities, Netflow switching improves performance in the presence of complicated administrative filtering features, such as access lists As with fast switching, Netflow can operate in centralized or distributed switching mode Distributed mode supports the maintenance and exportation of the cache from individual VIPs Cisco Express Forwarding Operational experience proves that the demand-cache mechanisms described previously did not scale well in highly dynamic routing environments such as the Internet Fast-switching caches must generally be invalidated when there is a change in the routing table Although route holddown can prevent cyclic churn, rebuilding the cache is computationally expensive because packets that initiate cache entries must be process-switched CEF resolves this problem by building and maintaining a forwarding information base (FIB) with entries that include a one-to-one correspondence with entries in the IP routing table Each entry in the FIB points to an IP next-hop that exists in an adjacency table The adjacency table contains the information necessary for MAC-layer rewrites (see Figure 5-7) Figure 5-7 Routing, FIB, and Adjacency Table Entries 103 NOTE Adjacency information is the MAC-layer header to which a router must forward IP packets to another device on the interface Unlike fast-cache entries, which are comprised of host routes only, CEF entries can include hosts, subnets, or even supernets In core-routing environments, the FIB table, therefore, may actually be smaller than a demand-built fast-cache The FIB is created immediately after router boot-up 104 CEF is able to run in centralized or distributed mode (see Figure 5-8) In distributed mode (see Figure 5-9), a FIB and an adjacency database are maintained on each VIP card As with DFS, interprocess communication over the cybus is used to coordinate the distribution of the FIB table Figure 5-8 CEF Operation Figure 5-9 dCEF Operation 105 With the introduction of the Gigabit Switch Router platform family, Cisco replaced the traditional passive backplane used in earlier core products, such as the 7000 and 7500 An active and extensible bit-slicing switching element comprised of a crossbar and associated control ASICs is used to connect line cards for packet-forwarding purposes A central route processor performs systems management, routing, and forwarding table calculations; and is responsible for distributing the CEF table to individual line cards A separate maintenance bus exists between line cards and the RP for bootstrapping and other diagnostic and maintenance operations However, large data transfers, such as CEF table downloads from the RP to the line cards, occur through the switch fabric Although the GSR operates with distributed CEF tables, recursion is carried out at the RP rather than at individual line cards CEF has special handling of access lists and other per-interface intricate features that are comparable, in performance terms, to optimum or autonomous switching However, Netflow can offer superior performance over CEF in the presence of complex access lists and other policyconfiguration features In terms of accounting, CEF maintains basic per-prefix and adjacency packet/byte counts It also can be used with Netflow to provide more comprehensive accounting functions and accelerated performance in the presence of access lists 106 CEF also performs efficient per-packet or per-destination load sharing Prior to CEF, per-packet load sharing was always process-switched CEF is activated globally on routers, but both CEF and fast switching modes can be run concurrently by disabling CEF on a per-interface/VIP basis Concurrent operation is not recommended, however, because this consumes resources for maintenance of both the FIB and the fast switching cache Tag Switching Tag switching aims to solve many of the problems facing large-scale networks Among these are the ever-increasing performance and scalability requirements; along with the need for service differentiation, virtual private networks, and the means to easily control the path of traffic through the network backbone Tag switches—which may be dedicated tag-switching devices or IP routers—forward packets based on a shim,which is an extra field on which to base a switching decision The shim is inserted between the Layer and Layer packet headers In the case of ATM, the shim may be the combination of the VPI and VCI A Tag Distribution Protocol (TDP) is used with standard IP routing protocols to distribute tag information between switches within the network Switching based on tags is extremely efficient and is more readily implemented in hardware than the longest match lookups necessary for forwarding based on IP destination addresses Tag switching is similar to CEF: A forwarding table is created, based on the contents of the IP routing table This Tag Information Base (TIB) is keyed based on incoming tags, and contains entries of the form of outgoing tags, outgoing MAC-layer rewrites, and outgoing interfaces As with CEF, the TIB is prepopulated, based on the IP routing table rather than being built on a packet-forwarding process on demand Therefore, it scales well in dynamic routing environments Cisco's implementation of tag switching works efficiently with CEF because they share common data structures and maintenance mechanisms Packets that arrive without a tag may be CEF or fast-switched, depending on the specific router configuration As with CEF, tag switching can operate in centralized or distributed mode on VIPcapable platforms; it is enabled globally, but may be disabled on a per-interface/VIP basis (see Figure 5-10) Figure 5-10 Tag Switching 107 Routing and Forwarding IP routers are typically capable of multiple routing processes, each of which maintains its own RIB These are either link-state protocols, such as IS-IS or OSPF; or distance-vector protocols, such as RIP, IGRP, and BGP Each routing protocol may have multiple routes to the same destination, and the selection of the best route by each protocol is normally determined on the basis of longest match, followed by other routing protocol metrics The per-protocol decision algorithm can be quite complex and can depend on many locally configured variables that control routing policy 108 Distance-vector routing protocols also may have incoming or outgoing policy filters—that is, they may choose to ignore certain prefixes Link-state protocols, however, not generally have this capability because they must flood consistent topological information Some filtering is possible, but if this is not part of the protocol itself (such as filtering between levels in IS -IS), it must be used with extreme caution Populating the FIBs IP prefixes from each routing process are inserted in the central forwarding information base (FIB) This is the routing table used for actual packet forwarding When there are two equal-length prefixes from the different RIBs or different routing processes or protocols, an administrative distance is applied to break the tie This distance typically is applied to the whole routing process—with the notable exception being BGP, which has different administrative distances for external, internal, and locally generated routes Routes in the central FIB (which are only those actually chosen as the best routes for packetforwarding purposes) may be redistributed between routing protocols This redistribution also may be subject to local policy filters Within a Cisco router, this central FIB is used for process switching Improving FIBs: Fast IP Route-Lookup With the staggering growth of the Internet and consequent demands on core Internet routers, the field of fast IP route-lookup has been the subject of intense interest Although route churn in the Internet is relatively high, packet forwarding, rather than route-computation, is proving to be the critical area requiring optimization This signifies that lookup time is optimized at the expense of routing table update time Route-lookup is the process of finding the best match between the destination IP address of a packet and entries in the routing table This may not be an exact match, but it is the most specific supernet containing the destination IP address This rule does not guarantee a unique choice if non-contiguous subnet masks are used, which is one of many reasons their use is deprecated Most modern lookup techniques assume contiguous masking to achieve efficiency In some cases, the best route actually may be the default route Traditional approaches to route-lookup, such as those implemented in the BSD UNIX operating system, employed tree structures More recently, however, attention has been focused in three areas: hardware-assisted lookups, using content addressable memories or caches; compression techniques, allowing the routing table to fit in the high-speed cache of off-the-shelf processors; and sophisticated hashing techniques Cisco routers use a combination of these techniques, depending on the switching mode employed As you read earlier in this chapter, the evolution of route-lookup and the resultant availability of many lookup techniques means that modern routers may have a number of switching paths Each switching path maintains its own FIB, which is optimized for a certain type of forwarding/switching paradigm, such as demand-built fast route-cache, or a special-purpose, possibly hardware-assisted lookup mechanism Within a Cisco router, such as the c7500, these FIBs are used in a hierarchical manner CEF is an exception: A lookup failure in the CEF FIB results in a packet discard When a lookup fails in the lowest-level FIB, which is usually the fastest, switching of the packet is transferred to a higher-level FIB, which is generally slower Use of a particular FIB often can be configured on a per-interface basis 109 were no available space within network 140.10.0.0 to be assigned for the secondary address on the serial link In that case, you could configure static routes on both routers for the destinations across the other end of the links For example, observe Figure 6-11 If the major network static is configured, then it must be configured on all the routers So, for Figure 6-11, all routers should have a static route to 140.10.0.0 Obviously, this does not scale if there are multiple routers across both ends of the serial link of a discontiguous network The most effective method to accomplish this is to create a static route that advertises the exact routes with the correct mask, instead of creating a major net route In referring to Figure 6-11, a static route would be needed on R1 and R2 Figure 6-11 Static Routes to Support Discontiguous Networks Router R1 R1# config t ip route 140.10.20.0 255.255.255.0 serial ip route 140.10.21.0 255.255.255.0 serial ip route 140.10.21.0 255.255.255.0 serial router rip network 140.10.0.0 network 131.108.0.0 redistribute static default-metric The exact same configuration is required on router R2 for the links behind R1: ip route 140.10.20.0 ip route 140.10.21.0 ip route 140.10.11.0 ip route 140.10.12.0 ip route 140.10.10.0 router rip 255.255.255.0 255.255.255.0 255.255.255.0 255.255.255.0 255.255.255.0 serial serial serial serial serial 0 0 134 network 140.10.0.0 network 131.108.0.0 redistribute static default-metric The solutions for the RIP and discontiguous networks explained here are not long-term, however As a network administrator, you should use these as a workaround strategy and begin planning your network migration to scalable classless protocols such as OSPF, IS-IS, and Enhanced IGRP, which are discussed in Chapter 12 RIP and Classful Masks RIP does not carry masks with the prefix information in its update For all the network prefixes, RIPV1 assumes a natural classful mask Therefore, RIP cannot support supernets Supernetting, as mentioned in Chapter 2, was introduced much later, and RIP existed before classless interdomain routing (CIDR) As a protocol, RIP was designed to have natural classful masks, so RIP does not understand routes that not have natural class masks, such as eight-bit for class A, 16-bit for class B, and 24-bit for class C networks For a CIDR block to be propagated into RIP, it must be broken into each individual network entry Because the Internet soon will use some class A addresses, RIP will not be capable of routing packets to some sites For further explanation, consider the case of CIDR blocks first, and then study RIP in the context of class A networks distributed to multiple companies First, observe the network in Figure 6-12 Here, ISP Alpha.net is advertising routes to the enterprise Beta.com When they own a large address block of the class C network, instead of advertising all individual class C networks, they advertise a single route that covers all the individual class C networks For example, in Figure 612, ISP Alpha.net will not advertise all the class C components of 206.10.0.0/16; for example, it will not advertise 206.10.10.0/24 Figure 6-12 Supernet and Discontiguous Network Support Via the Internet 135 When the CIDR block route of 206.10.0.0/16 is received by router R1, this route typically is received via the Border Gateway Protocol (BGP) because ISPs run BGP with their customers to advertise routes However, you cannot advertise this CIDR block in the RIPV1 network, because RIPV1 is a classful protocol and does not understand any route that does not have a regular class A, B, or C mask To advertise this CIDR block into RIPV1, you must divide this network into all the class C mask networks This does not scale if you are receiving many CIDR routes The next problem involves subnet routes for a class A network As you can see in Figure 6-12, the enterprise Beta.com owns part of a class A network, while some parts of this class A network also are given to other organizations When the ISP advertises other parts of the class A network, Beta.com will be ineffective because this class A network is discontiguous In this case, the previously mentioned techniques for creating a discontiguous network not scale here for two reasons First, you cannot configure the entire Internet with the class A network as secondary Second, you would have to configure static routes for all the organizations that own part of the class A network with the mask of the network, so that you could redistribute all the subnets of network 20.0.0.0 Then, you would have to redistribute those static routes if you received a /16, as shown in Figure 6-11 This /16 would have to be made into /24 masks for all destinations, and then would have to be redistributed because the mask in the AS is /24 for this class A network RIP Timers One of the most important responsibilities of any routing protocol is to respond to the changes in its topologies This is because you can have alternate routes to the destination; redundancy is provided because of the critical nature of business Convergence should be achieved within a limited amount of time so that the application using this network does not time out To respond to the changes in topologies, all distance-vector protocols should have a technique for aging routes RIPV1 updates are sent every 30 seconds by every participating router to all of that router's neighbors 136 If the router does not hear from its neighbor for 180 seconds, the router assumes that the neighbor is down or that the link connecting the two neighbors is down At this point, the route is marked as invalid An invalid timer is used to determine that no fresh information is received about this route This timer is set to 180 seconds for RIP Upon expiration of the invalid timer, hold-down time begins During the hold-down period, the route is marked as possibly down and the metric is set to infinity In addition, the route is advertised to the router's neighbors with an infinity metric When the hold-down timer expires, a request is sent to query neighbors for an alternate route to the destination If a new route was received during the invalid or hold-down period, the router begins advertising this new route The last item is the flush timer, which begins immediately after the invalid timer expires, and lasts 60 seconds after the hold-down expires Upon the expiration of the flush timer (240 seconds), the route is deleted if no replacement route is received The advantage of these timers is that you can determine whether the route was not received because of some transient condition, or that the route has actually been removed This ensures that if an interface has flapped, you can still converge to accommodate the flap The disadvantage, however, is slow convergence As routers and links are becoming faster, network administrators want faster convergence, rather than waiting for a protocol to install an alternate path after a long period of time Limitations of RIPV1 Because RIPV1 has been given historic status, it always should be used with simple topologies that have simple reachability The protocol should be operated in a network that has fixed subnetting and only default routes to connect to the Internet RIP does not support CIDR, and it does not include any security functions In today's complex networking environment, almost no network could be successful, given the limitations mentioned here Therefore, RIP cannot scale to today's dynamic, fast-converging, fastpaced environment RIPV1 limitations include the following issues: • Classfulness: RIPV1 With the current routing structure of the Internet, classless routing protocols would not be capable of propagating a route without a regular class A, B, or C mask In addition, parts of a class A network that are now distributed between different organizations would not be capable of connecting with each other • No support for VLSM RIPV1 does not support VLSM, which means that, as the network grows, the address waste within a network cannot be controlled A network administrator cannot change his mask on point-t o-point links In the discussion of VLSM in Chapter 2, we noted that on serial links in which only two routers connect, it is possible to set a longer subnet mask; for LAN media to which many other machines (hosts or routers) are connected, it is possible to set a shorter subnet mask The address we have saved by setting longer masks on point-to-point links could be used for other point-to-point links • No support fordiscontiguous networks As mentioned in the discussion of RIP's classfulness, some class A networks are being divided among different organizations If these parts of a class A network want to connect 137 to each other, they have to so via the Internet This creates a situation in which a major network is separated by the Internet With a classful protocol such as the IGP, connections would not take place between these sites RIPV1 Configuration Examples Enabling RIPV1 on a network is relatively simple You only need to list the connected networks under the router RIPV1 statement for which you want to enable RIPV1 (see Figure 6-13) Figure 6-13 Enabling RIPV1 on Different Networks The configuration for R1 in Figure 6-13 is as follows: router rip network 140.10.0.0 Notice that network 150.10.0.0 is not listed; R1 will not send out RIPV1 broadcasts via Ethernet 0, and it will not include this network in its updates Notice also that R1 does not need to list network 160.10.0.0 under its router RIPV1 statement; you only need to list the directly connected networks in the router RIPV1 statement You can filter RIPV1 updates for the complete RIPV1 process, or you can filter on a per-interface basis To stop accepting RIPV1 updates for certain networks only, or to stop advertising certain networks through the RIPV1 process, you can use the distribute-list command with the complete RIPV1 process This is useful for avoiding routing loops that are caused during redistribution For example, suppose that RIP originated a route into the routing domain and that the route was redistributed into IGRP IGRP has a lower administrative distance then RIP, and it can overwrite the original RIP route with a physical loop, which causes a routing loop For example, to block RIPV1 updates for network 150.10.0.0 from entering your RIPV1 process, you would use the following configuration: Router rip network 140.10.0.0 distribute-list in access-list deny 150.10.0.0 0.0.255.255 access-list permit 0.0.0.0 255.255.255.255 138 To block the updates for network 150.0.0.0 from entering serial 0, but still allow these updates from other interfaces, you would use the following configuration: network 140.10.0.0 distribute-list in serial When redistributing RIPV1 into any routing protocol, be aware of metric conversion and administrative distances Different routing protocols have different administrative distances, as shown in the following table: Protocol Administrative Distance RIP 120 OSPF Enhanced IGRP IGRP 110 90/170 100 IS-IS BGP ODR 115 20/200 160 Figure 6-14 shows a sample RIP to IGRP redistribution setup Figure 6-14 Routing Loop Created Due to Physical Loop in RIP to IGRP Redistribution 139 As demonstrated in Figure 6-14, if R5 advertises network 170.10.0.0, and R1 is running both RIP and IGRP, then R1 is responsible for redistribution R1 will redistribute 170.10.0.0 into IGRP and will advertise 170.10.0.0 to its IGRP neighbors, which are R2 and R3 Both R2 and R3 will advertise their best metric to each other about 170.10.0.0 R2 learns the route to 170.10.0.0 from R1, and the link speed between R1 and R2 is T3 R3 learns this route from R1, and the link speed between R1 and R3 is T1 R2 will advertise the route to network 170.10.0.0 to R3 Looking at the link speed, which is T3, between R2 and R3, the metric to reach network 170.10.0.0 for R3 is more viable through R2 rather than R1 R3 will install an IGRP route to 170.10.0.0 via R2, and R3 will advertise this route to R1 via IGRP Now, R1 has learned the route to network 170.10.0.0 via RIP from R5, and R1 learned the route from R3 via IGRP R1 now compares the administrative distance between IGRP and the original RIP route IGRP has a lower administrative distance than RIP, which will cause R1 to remove the original RIP route learned from R5 from the routing table, causing a routing loop To avoid any possibility of routing loops, use the distribute-list command to block any routing loops: Config on R1 router rip network 140.10.0.0 network 150.10.0.0 redistribute igrp 109 default-metric router igrp 109 network 140.10.0.0 network 150.10.0.0 redistribute rip default-metric 1 1 distribute-list in 140 access-list deny 170.10.0.0 0.0.255.255 access-list permit 0.0.0.0 255.255.255.255 Notice the default metric command under both RIP and IGRP This command converts different types of metrics used by different routing protocols to the metric format of the redistributing routing protocol RIP uses the hop count as a metric The IGRP metric, on the other hand, is a combination of bandwidth, load, reliability, MTU, and delay; so it is always much greater than 15 Because RIP considers any value greater than 15 unreachable, it will drop an update with a metric higher than 15 The default metric command converts the IGRP route into RIP with the correct metric value that is not unreachable for RIP If the default metric command is not used, then redistribution will be unsuccessful Both IGRP and RIP will consider the metric values to be bogus, and will not redistribute the routes Summary RIP is designed for small homogeneous networks, and could not be adopted as a core routing protocol in today's complex classless networks Considering the rapid growth of the Internet, many destinations would not be routable for RIP RIP's inability to support VLSM causes significant address waste, merely to accommodate the protocol limitations Point-to-point networks that need only two host IDs must have the same mask as the other multipoint interfaces in a network, which results in an enormous waste of valuable address space RIP is also less viable as a core routing protocol because it offers no support for discontiguous networks With part of a class A network distributed between different organizations, that part becomes unroutable with RIP The inability of RIP to consider real-time parameters; as well as its reliance on number of hops without considering parameters such as bandwidth, load, and delay; deems RIP inoperable in large networks Legacy networks still running RIP are in the process of migrating to protocols that will be more successful in today's complex networking environment You will learn more about network migration techniques in Chapter 12 Review Questions 1: What is the maximum number of hops of a RIP network? 2: What is a split horizon? 3: What is the default update timer for RIP? 4: If your OSPF mask for subnetwork 140.10.1.0 is 255.255.255.0, and if your RIP mask is 255.255.255.192, how would you create a static route to accommodate VLSM? 141 Answers: 1: What is the maximum number of hops of a RIP network? A: The maximum number of hops is 15 2: What is a split horizon? A: The route could not be readvertised on the interface on which it was originally received 3: What is the default update timer for RIP? A: The default update timer for RIP is 30 seconds 4: If your OSPF mask for subnetwork 140.10.1.0 is 255.255.255.0, and if your RIP mask is 255.255.255.192, how would you create a static route to accommodate VLSM? A: The following static route should be created on R1 The interface that connects to R1 and R2 is serial 0: ip route 131.108.15.0 255.255.255.192 serial router rip redistribute static default-metric For Further Reading… Cisco IOS Manual Version 11.2 Hartinger, Jake "RIP Version I, Private Communication." 1998–1999 RFC 1058 RFC 1923 Stevens, W Richard TCP/IP Illustrated, Volume Reading, MA: Addison-Wesley, 1994 142 Chapter Routing Information Protocol Version This chapter introduces the fundamental concepts of RIPV2 and explains the changes to version from version We will discuss solutions for discontiguous networks by using version 2, and we will explore today's classless environment and VLSM support A brief discussion on RIP and demand routing is also provided The chapter also covers some configuration parameters in RIP and explains how and where they can be used Specifically, the following issues are covered: Fundamentals of RIP operation This section includes the basic functions of RIP, with new additions to accommodate today's environments RIP over demand circuit routing This section discusses the behavior for backup solutions that accommodate on-demand circuits These circuits are not connected constantly, so they should be implemented so that they cannot be triggered by periodic behavior of protocols Cisco's RIP implementation Cisco RIPV2 support includes VLSM support, authentication, discontiguous network, multicasting, and next hop address support Introduction to RIP Operation RIP version is not operable in today's classless environment Because of its many limitations, it should be used only in moderately sized, fairly homogenous networks With the advent of Classless Interdomain Routing (CIDR), protocols must implement classless behavior As companies grow, so does the consumption of address space Two issues have become clear to most organizations: first, that serial point-to-point links not require eight bits (254 hosts) for the host portion of the IP address; second, that the same subnet can be used by other serial links RIP's limitations introduced the need for different subnet masks for LAN and WAN interfaces It was necessary for RIP to support VLSM, but RIPV1 is incapable of providing this support In addition, there are no IGP/EGP interactions because the protocol does not understand autonomous systems, nor does it allow any authentication RIP's incapability to carry subnet masks also limits it from supporting discontiguous networks The lack of all these features led to an expansion of the protocol The current RIP message contains minimal information, which is used to route packets to the destination The RIP header also has a large amount of unused fields, which it owes to its origin The RIPV2 protocol is designed to accommodate changes in the current Internet environment, and extensions have been added to the protocol As described in Chapter 6, "Routing Information Protocol," all the fields in RIP version are still maintained The changes to the protocol are shown in Figure 7-1 Figure 7-1 RIP Header for Version 143 The extension added in version does not change the protocol, but the added extensions to version 1's message format grant the protocol the capability of accommodating today's networking needs Recall that the first four octets in the RIP packet contain the header The new RIP message format, shown in Figure 7-1, displays the command, version, IP address, metric, and address family identifier, all of which have the same meaning as in version The Version field is set to for this message Authentication is performed per message, and the Address Family Identifier field is used If the address family identifier is 0xFFFF, the remainder of the message is used for authentication The Route Tag field is added to the header and is used for separating the internal routes from the external routes Route tagging should be preserved and readvertised with a route because it keeps track of internal RIP routes versus external RIP routes External RIP routes can be imported from other routing protocols, whereasinternal RIP routes are originated by the RIP routing processes In version 1, eight bytes were set to for future use In version 2, these eight bytes are now used to carry subnet mask and next hop information The first four bytes are set for subnet masks, and the next four bytes are for the next hop The following sections describe the new fields introduced in RIPV2 Subnet Mask Support The Subnet Mask Support field indicates the mask of the route If this field is 0, the subnet mask is not included for that routing entry The Subnet Mask field in RIPV2 assists VLSM because every route that is advertised by the RIPV2 routing process carries the actual mask of the route being advertised This is unlike version 1, in which the router assumes that all the routes with knowledge of the connected network have the same masks as the connected network RIPV1 does not have any subnet mask information, so it cannot support VLSM, CIDR, or discontiguous networks 144 Next Hop The immediate next hop to which packets are sent is specified by this route entry When this field is set to 0.0.0.0, the packet should be forwarded to that advertising router An address other than 0.0.0.0 specified as next hop must be directly connected on the logical subnet over which the advertisement is made Next hop is useful in an environment in which you need to avoid extra hops, as shown in Figure 7-2 Figure 7-2 RIPV2 and Next Hop Routers R1 and R4, shown in Figure 7-2, are running RIP between them; R1 is running OSPF with R2 and R3 R1 learns a route from R2 or R3, instead of advertising itself to R4 as the next hop R1 will advertise R2 or R3 as the next hop to R4 for the destinations that it has learned from those routers R4 will then send traffic directly to R2 or R3, therefore avoiding extra hops Because R1 can inform R4 directly to send traffic, it is unnecessary for R4 to send packets to R1, so that R1 can forward to R3 and R2 Multicast Updates Instead of using broadcast updates, RIP now sends multicast packets to a multicast address of 224.0.0.9 All routers listening to this group will receive the routing update In version 1, updates are sent to the broadcast address 255.255.255.255 Even if the router is not running RIP it will still receive broadcast RIP packets With multicasting, however, only the routers that are configured with RIP will process the RIPV2 updates CIDR Support RIPV2 is able to support classless interdomain routes It can propagate a classless route through redistribution If the route were passed to RIPV1, on the other hand, the updates would be ignored 145 Larger Infinity Most network architects are hindered by RIP's 15-hop limit Version still does not introduce an infinity larger than 16 because of backward-compatibility If a larger infinity was introduced, routers running version would be confused—the routers would not be capable of processing routes with a metric larger than 16 because a 16th hop would indicate that no route to the destination exists RIP Over Demand Circuits RIP version has been modified without drastically changing the protocol This section discusses a few of the enhancements to RIP provided for demand circuits, such as an ISDN or async connection NOTE A demand circuit is a connection that is not in use for normal packet forwarding It provides redundancy and cost savings This is essentially a backup connection that is used only in the case of primary link failure In today's internetworking environment, networks are using ISDN to support the primary sites or to provide connections to a large number of remote sites Such connections may be passing either very little or no data traffic during normal operation The periodic behavior of RIP can cause problems on such circuits RIP has difficulty with periodic updates on point-to-point interfaces with low bandwidth because updates sent every 30 seconds with large routing tables use a large amount of bandwidth This affects the data traffic: When data is sent on this slow-speed link, it competes with the routing updates If you increase the update timer to a larger value, the convergence becomes slower There are two methods for resolving this problem: • • Snapshot routing Triggered RIP Snapshot Routing Snapshot routing is a time-triggered routing update facility that enables a remote "slave" router to learn dynamic routing and service information from a central "master" router during a short active period This learned information is then stored for a user-configurable period of inactivity (T2) until the next active period If no routing updates are exchanged during the activ period (because a DDR e phone number or interface is unavailable), a user-configurable retry period (T3) is activated to ensure that a full inactive period does not pass before an attempt is made to exchange routing information again Snapshot routing updates support IP (RIP and IGRP) Snapshot routing enables routers at remote sites to collect and retain up-to-date network connectivity information Snapshot routing is especially useful for ISDN environments, in which it 146 provides a solution to the problem of implementing and maintaining static routes in large DDR networks Triggered RIP Triggered RIP is designed for routers that exchange all routing information from their neighbors If the router is changed in any way, only the changes are propagated to the neighbor The receiving router should apply the changes immediately Changes can be caused by events such as link flaps, next hop changes, or subnet mask changes Triggered RIP updates are sent only when these criteria are met: • • • • When When When When a request for a routing update is received new information is received the destination changes from a circuit down to a circuit up the network is first powered up Cisco will support this feature as of the IOS 12.0 software release Cisco's RIP Implementation Cisco's RIPV2 supports authentication, key management, route-summarization, CIDR, VLSM, and discontiguous networks This section describes the Cisco implementation of RIPV2, and explains how to enable and run it Enabling and Running Cisco's RIPV2 By default, the Cisco router will send and receive both version and version RIP packets, depending upon the neighboring router To configure the router to process a specific version, you must use the following command: router rip version {1 / 2} At some point, parts of a network may be running legacy RIP version while in the process of migrating to RIP version You can configure certain interfaces to send and receive version routes, and configure other interfaces to receive version routes This is illustrated in Figure 73 Figure 7-3 A RIP Version and Mixed Environment 147 As shown in Figure 7-3, router R1 is running RIP and wants to exchange version updates on the Frame Relay cloud It exchanges version updates on FDDI, and exchanges both version and updates on the Ethernet You can configure the router to send and receive only version updates It is possible to send only version updates or both versions The configuration for R1 is as follows: router rip network 131.108.0.0 interface serial ip rip send version ip rip receive version interface fddi ip rip send version ip rip receive version interface ethernet ip rip send version ip rip receive version RIPV2 and Authentication RIPV2 supports authentication, and Cisco supports two types of authentication on an interface: MD5 and plain-text authentication (the default) MD5 is a block-chain hashing authentication algorithm, used for security The algorithm operates over the entire data packet, including the header, and is used to secure the routing updates If the key matches, the route is accepted; otherwise, it is not A simple key is not as secure as MD5 because it is plain-text authentication 148 ... router rip network 131 .108.0.0 interface serial ip rip send version ip rip receive version interface fddi ip rip send version ip rip receive version interface ethernet ip rip send version ip rip receive... 204.10.10.1 /32 131 .1.1.1 150.150.5 .31 150.150.5 .31 Ethernet 3/ 1 FDDI2/0 FDDI2/0 Again, in the case of network 10.0.0.0, the router has two entries: one for network 10.10.1.1 /32 and another for network. .. 131 .108.5.10, 01:5: 23, Serial 0/1 10.0.0.0/8 [20/10] via 131 .1.1.1, 01:5:11, Ethernet 3/ 1 204.10.0.0/16 [20/40] via 150.150.5 .31 , 00:20: 23, Fddi2/0 204.10.10.1 /32 [20 /30 ] via 150.150.5 .31 , 01:20: 23, Fddi2/0