RoutingWork.pdf

22
Opnet & La Salle Reports 5 2. Comparative analysis of the routing protocols RIPv2, OSPFv2 and Integrated IS-IS Abstract With the expansion of the existing networks and the emergence of new applications that require a real- time communication, routing protocols become one of the most important decisions in the design of these networks. Nowadays, networks need that the convergence of these protocols is achieved within the minimum amount of time in order to provide high availability in the network. Furthermore, it is necessary that the efficiency of these protocols is high enough to avoid links saturation due to the traffic caused by the routing protocols. But... do the main current protocols accomplish these requirements? 1. Introduction The first question we should make ourselves is why routing protocols are so important. Routing is the act of sending information from a source to a destination. Usually, this information passes through some intermediate devices. The purpose of routing protocols is to provide these intermediate devices the necessary information to send the packet correctly. So, the importance of routing protocols is such that without them the different devices that make up a network are not able to communicate with each other. All routing protocols are defined based on an algorithm. This algorithm must describe some procedures in order to make the routing protocols operate correctly. These procedures are: A procedure to receive and send information about the network. A procedure to find the best path to a destination and install the route in the routing table. And finally, a procedure to detect, react and inform to other devices about changes in the network topology. The two main existing algorithms are Bellman-Ford algorithm [1] and Dijsktra algorithm [2]. Depending on which algorithm is used, the routing protocols are classified in Distance Vector or Link State, respectively. The fundamental difference between them is how they implement the procedures mentioned above. In subsequence paragraphs we will see these differences with more detail. On the other hand, since the appearance of routing IP, there have been mainly eight dynamic routing protocols: EGP, BGP, RIP, RIPv2, IGRP, EIGRP, ISIS and OSPF. This work is based in three of them, which are the main IGP i non proprietary routing protocols: RIPv2 [4], OSPFv2 [5] and Integrated ISIS (which is ISIS for IP) [6]. This work is divided into three sections. First of all, we will see a theoretical analysis of the three routing protocols under study. This analysis has been done from a comparative point of view. Secondly, we will see the methodology used to make the design and implementation of a baseline scenario on which we will test the different routing protocols. We have done this practical analysis with the networks simulation tool OPNET Modeler 12. Finally, we will see some of the obtained results and validate the conclusions arising from their analysis. After all, we will take some conclusions about the work done.

Transcript of RoutingWork.pdf

  • Opnet & La Salle Reports

    5

    2. Comparative analysis of the routing protocols RIPv2, OSPFv2 and Integrated IS-IS

    Abstract

    With the expansion of the existing networks and the emergence of new applications that require a real-time communication, routing protocols become one of the most important decisions in the design of these networks.

    Nowadays, networks need that the convergence of these protocols is achieved within the minimum amount of time in order to provide high availability in the network. Furthermore, it is necessary that the efficiency of these protocols is high enough to avoid links saturation due to the traffic caused by the routing protocols. But... do the main current protocols accomplish these requirements?

    1. Introduction

    The first question we should make ourselves is why routing protocols are so important. Routing is the act of sending information from a source to a destination. Usually, this information passes through some intermediate devices. The purpose of routing protocols is to provide these intermediate devices the necessary information to send the packet correctly. So, the importance of routing protocols is such that without them the different devices that make up a network are not able to communicate with each other.

    All routing protocols are defined based on an algorithm. This algorithm must describe some procedures in order to make the routing protocols operate correctly. These procedures are:

    A procedure to receive and send information about the network. A procedure to find the best path to a destination and install the route in the routing table. And finally, a procedure to detect, react and inform to other devices about changes in the network

    topology.

    The two main existing algorithms are Bellman-Ford algorithm [1] and Dijsktra algorithm [2]. Depending on which algorithm is used, the routing protocols are classified in Distance Vector or Link State, respectively. The fundamental difference between them is how they implement the procedures mentioned above. In subsequence paragraphs we will see these differences with more detail.

    On the other hand, since the appearance of routing IP, there have been mainly eight dynamic routing protocols: EGP, BGP, RIP, RIPv2, IGRP, EIGRP, ISIS and OSPF. This work is based in three of them, which are the main IGPi non proprietary routing protocols: RIPv2 [4], OSPFv2 [5] and Integrated ISIS (which is ISIS for IP) [6].

    This work is divided into three sections. First of all, we will see a theoretical analysis of the three routing protocols under study. This analysis has been done from a comparative point of view. Secondly, we will see the methodology used to make the design and implementation of a baseline scenario on which we will test the different routing protocols. We have done this practical analysis with the networks simulation tool OPNET Modeler 12. Finally, we will see some of the obtained results and validate the conclusions arising from their analysis. After all, we will take some conclusions about the work done.

  • Opnet & La Salle Reports

    6

    2. Theoretical Analysis

    The purpose of the first section of this paper is to give us some basics about the operation of the different protocols from a theoretical point of view. The information given below is based on different sources [3] [4] [5] [6] [7] [8] [9].

    Routing protocols are classified in Distance Vector or Link State protocols according to the method they use to exchange information about the network and to use this information to calculate the best path to a destination. In this section we are going to see the differences between the operation method of two link state protocols: OSPF and ISIS, and one distance vector protocol: RIPv2.

    A. Distance Vector Protocols

    The oldest distance vector protocol is still in use: RIP (Routing Information Protocol) exists in two versions. This work is based in the newest version, which is RIPv2. The new version includes some improvements regarding the previous one; we will see these enhancements later. First, it is important to take a look to the most important features that define the behaviour of distance vector protocols.

    A.1. Basics of distance vector protocols

    A typical distance vector routing protocol uses a routing algorithm in which routers periodically send routing updates to all neighbours by broadcasting their entire routing tables. Nevertheless, there exist other possibilities. The main features of distance vector protocols are the following:

    Periodic and Triggered Updates. Periodic Updates means that at the end of a certain time period, updates will be transmitted. If updates are sent too frequently, congestion and router CPU overloading might occur; if updates are sent too infrequently, convergence time might be unacceptably high.

    Triggered updates are the solution to this problem: if a metric change, a router will immediately sent out an update without waiting for its update timer to expire. Reconvergence will occur far more quickly. Regular updates might still occur along with triggered updates.

    A further refinement is to include in the update only the networks that actually triggered it, rather than the entire route table. This technique reduces the processing time ant the impact on network bandwidth.

    Broadcast and Multicast Updates. When a router first become active on a network, the simplest method to find other routers and announce its own presence is sending the update to the broadcast address (255.255.255.255). Neighbouring devices will hear the broadcasts and will take appropriate actions. The problem with this method is that the hosts and devices not speaking the same routing protocol also receive broadcast updates, thus causing an unnecessary consumption of bandwidth in some links.

    Multicast updates send the information to an IP address only known by those devices who speaks the same routing protocol, so that only these devices will receive the update.

    Full Routing Table Updates. Most distance vector routing protocols take the very simple approach of telling their neighbours everything they know by broadcasting their entire route table. Neighbours receiving these updates glean the information they need and discard everything else.

  • Opnet & La Salle Reports

    7

    Routing by Rumor. Distance Vector algorithms provide road signs to networks. They provide the direction and the distance, but no details about what lies along the route. That is why they are vulnerable to accidental or intentional misdirection.

    Timers and Stability Features. It can happen that a metric change cause that, at a given time, there are some devices in the network with routing information that is no longer valid. These devices can unknowingly forward packets to an unreachable destination. The problem is handled by setting a route invalidation timer for each entry in the routing table, so that if a device no longer hears updates about a specific route, the timer will expire and the route will be marked as unreachable.

    Another common timer in most distance vector routing protocols is Holddown timer. It introduces a certain amount of scepticism to reduce the acceptance of bad routing information. If the distance to a destination increases, the router sets a holddown timer for that route. Until the timer expires, the router will not accept any new updates for the route. The advantage of this procedure is that the likelihood of bad routing information getting into a table is reduced but at the expense of the reconvergence time.

    Split Horizon and Poisoned Reverse. A route pointing back to the router from which packets were received is called a reverse route. Split Horizon is a technique for preventing reverse routes between two routers. Besides not wasting resources, there is a more important reason for not sending reachability information back to the routers from which the information was learned: implementing split horizon prevents the possibility of a routing loop. There are two categories: Split Horizon and Split Horizon with Poisoned Reverse.

    Simplest split horizon works by suppressing information. Split horizon with poisoned reverse is a modification that provides more positive information. The rule for split horizon with poisoned reverse is, when sending updates out to a particular interface, designate any networks that were learned from updates received on that interface as unreachable.

    Counting to Infinity. The situation in which the hop count of a route continues increasing to infinity due to a routing loop is known as counting-to-infinity problem. The way to alleviate the effects of counting to infinity is to define infinity. Most distance vector protocols define infinity to be 16 hops. When a route eventually increment its metric to 16, the network will be considered unreachable. This method is also used by routers to advertise a network as unreachable.

    A.2. Routing Information Protocol (RIP)

    RIPv1 is defined in RFC 1058 [3].

    Operation of RIP

    All RIP messages are encapsulated in UDP segments (port 520). RIP defines two messages types: Request messages and Response messages. The first one is used to ask neighbouring routers to send updates; the Response message carries the updates. The metric used by RIP is hop count, with 1 signifying a directly connected network of the advertising router and 16 signifying an unreachable network.

    On startup, RIP broadcast a packet carrying a Request message out each RIP-enabled interface. The RIP process then starts listening for RIP Requests or Response messages from other routers. Neighbours

  • Opnet & La Salle Reports

    8

    receiving the Request send a Response containing their routing table. When the requesting router receives the Response message it processes the enclosed information.

    If a particular route entry included in the update is new it is entered into de route table along with the address of the advertising router. If the route is for a network that RIP has already entered in the table, the existing entry will be replaced only if the new route has a lower hop count. If the advertised hop count is higher than the recorded hop count and the update was originated by the recorded next-hop router, the route will be marked as unreachable for a specified holddown period. If at the end of that time the same neighbour is still advertising the higher hop count, the new metric will be accepted.

    RIP message format

    Figure 1: RIPv1 message format

    Command. It will be set to 1 if it is a Request message, or 2 if it is a Response message. Version. It will be set to 1 for RIPv1. Address Family Identifier. Usually, it will be set to 2 for IP. IP Address. It is the address of the destination of the route. This entry might be a major network

    address, a subnet or a host route. Metric. It corresponds to the hop count between 1 and 16.

    RIPv1 limitations

    RIP has a very simple operation and that is why it is still a popular routing protocol. But the main limitation of RIPv1 is that it is a classful routing protocol, so that it does not support variable-length subnet masks (VLSM).

    A.3. RIPv2

    RIP Version 2 is defined in RFC 2473 [4] and it is not a new protocol; rather, it is RIPv1 with some extensions to bring it more up to date with modern routing environments. These extensions are:

    Subnetmaskcarriedwitheachrouteentry. Authenticationofroutingupdates. Nexthopaddressescarriedwitheachrouteentry. Externalroutetags.

  • Opnet & La Salle Reports

    9

    Multicastrouteupdates. AdditionofaSubnetMask field to the routingupdateentries,enabling theuseofvariable

    lengthsubnetmasksandqualifyingRIPv2asaclasslessroutingprotocol.

    Figure 2: RIPv2 message format

    As Version 1, RIPv2 updates can contain entries for up to 25 routes. Also like Version 1, RIPv2 operates on UPD port 520. In general, all the operation procedures, timers, and stability functions of RIPv1 remain the same in Version 2, with the exception of the broadcast updates: RIPv2 multicasts updates to other RIPv2-speaking routers, using the reserved class D address 224.0.0.9.

    The basic structure of RIPv2 message format is the same as for RIPv1. All the extensions to the original protocol are carried within what were unused fields. As it is mentioned above, the information added in these unused fields is:

    RouteTag.ItprovidesafieldfortaggingexternalorredistributedroutesintotheRIPv2process. SubnetMask.Itisa32bitmaskthatidentifiesthenetworkandsubnetportionoftheIPv4address. NextHop. It identifies abetternexthop address, ifoneexists, than the addressof the advertising

    router.

    A.4. Comparison between distance vector and link state protocols

    As it has been said before, the main difference between distance vector and link state protocols is the algorithm in which they are based. This difference results in a set of features that are implemented in a very different way for the two types of routing protocols. This makes hard to set an exhaustive comparison between RIP and the two link state protocols under study: OSPF and ISIS.

    A distance vector protocol learns routes and sends them to directly connected neighbours. By contrast, link state protocols advertise the state of all links (through packages known as LSAs) that participate in the routing process, so that the other routers in the area can build the topology database. Thanks to the fact that each device has a total knowledge of the network, the existence of routing loops is completely avoided.

    Furthermore, in link state protocols, the flooding of LSAs takes place on startup and whenever there is a change in the network topology. In this case, a partial update will be sent immediately with only the information about the modified links. If there is no change, the updates will take place after a specific

  • Opnet & La Salle Reports

    10

    amount of time. By contrast, distance vector protocols send the entire routing table every 30 seconds by default. Nevertheless, it is important to note that the initial flooding of LSAs in link state protocols can significantly reduce the capacity of the network to send data and degrade considerably the performance at startup.

    In terms of metric, link state protocols use a metric based on the cost, which contains information about the capacity of each link, while distance vector protocols use a metric based only in the hop count.

    Besides, in link state protocols, areas can be defined in order to reduce the SPF calculation and the size of routing tables and databases. This results in a faster convergence. An important limitation in distance vector protocols is that they cannot be implemented in networks of over 15 hops because they define infinity to be 16 hops.

    Overall, it seems that link state protocols are better than distance vector. But writing a stable implementation of a link state protocol is difficult, and its memory and CPU consumption is quite bigger. Of course, in a network with just a few routers and a simple topology, RIP will meet your needs quite well.

    The most important issues about the differences between distance vector and link state protocols are summarized in the next table:

    DISTANCE VECTOR

    LINK STATE

    Algorithm Bellman-Ford Dijsktra

    Network view Topology knowledge from the neighbour point of view

    Common and complete knowledge of the network topology

    Best Path Calculation

    Based on the fewest number of hops

    Based on the cost (hops, BW, delay...)

    Updates Full routing table Link State Updates Updates Frequency

    Frequently periodic updates

    Triggered updates

    Routing Loops

    Needs additional procedures to avoid them

    By construction, routing loops cannot happen

    CPU and Memory

    Low utilization Intensive

    Simplicity High simplicity Requires a trained network administrator

    Table 1: Distance Vector versus Link State protocols

    B. Link state protocols: Comparison between OSPFv2 and Integrated IS-IS

    OSPF (Open Shortest Path Fist) [5] and Integrated IS-IS (Intermediate-System to Intermediate-System) [6] are link state protocols. They have a quite similar operation, so in the next lines we are going to set a point by point comparative between these two protocols.

    B.1. Messages

    OSPF operates directly over IP (network layer), while IS-IS operates over the data link layer. Both of them unicast or multicast packets, and never broadcast them.

  • Opnet & La Salle Reports

    11

    OSPF messages and LSAs are all structured on 32-bit boundaries, so the format of OSPF messages is fixed and the protocol can only be extended by creating new LSAs. By contrast, IS-IS does not adhere to set boundaries and all messages are constructed of type-specific headers followed by type/length/value (TLV) structures.

    Table 2 associates the OSPF and IS-IS message types by function. OSPF IS-IS FUNCTIONS

    Hello Hello Neighbor discovery Adjacency negotiation Adjacency keepalive

    Database Description

    Complete Sequence Number PDU (CSNP)

    Database synchronization

    Link State Request

    Partial Sequence Number PDU (PSNP)

    Database synchronization

    Link State Acknowled-gement

    No equivalent message, although PSNPs are used as ACKs in some cases

    Database synchronization

    Link State Update

    Link State PDU Database synchronization and flooding

    Table 2: A comparison of OSPF and IS-IS messages by function

    Unlike OSPF, IS-IS messages have subtypes. There are LAN and Point-to-Point Hellos, also subdivided into level 1 and level 2 types. Likewise, CSNPs, PSNPs and LSPs are also subdivided into level 1 and level 2 types.

    Moreover, the OSPF routers LS database is just a collection of all LSAs the router has originated or has heard from other routers. LSAs are sent from one router to its adjacent neighbours in Update messages, which can carry many LSAs. In a similar way, IS-IS database consist of LSPs the local router has originated or heard from other routers.

    OSPF can generate several types of LSAs, whereas an IS-IS router generates at most two LSPs: one for L1 adjacencies and one for L2 adjacencies. To communicate different type of information, an IS-IS router needs to generate different TLVs within the single LSP.

    B.2. addressing

    Each router must be able to uniquely identify itself within the routing domain. This is the purpose of the OSPF router ID (RID) and the IS-IS system ID (SysID). In addition, the router must be able to identify its position within the routing domain. This is the purpose of the area ID (AID).

    An OSPF router uses a 32-bit number for its RID, represented in the same dotted-decimal format as an IP address. The OSPF area ID (AID) is also a 32-bit number that can be expressed in dotted-decimal format or as a simple decimal number.

    In contrast to the OSPF AID and RID, which are expressed separately, the IS-IS AID and SysID are specified together in the Network Entity Title (NET).

  • Opnet & La Salle Reports

    12

    Figure 3: Format of a Network Entity Title

    B.3. Neighbour discovering

    When the OSPF or IS-IS protocol process starts on a router, neighbours must be discovered and adjacencies established. Both protocols send and listen for Hello messages to discover neighbours. Functionally, the Hello protocol is the same for both protocols; they differ only in the details. The Hello protocol performs several functions:

    It discovers neighbouring OSPF or IS-IS routers. It performs three-way-handshaking to ensure bidirectional communication. It communicates information necessary for establishing if an adjacency can be formed. After an adjacency is formed, it is used as a keepalive to detect failed neighbours/adjacencies.

    B.4. adjacencies

    To ensure that two IS-IS or OSPF neighbours can reliably exchange routing information, they form an adjacency.

    In OSPF, neighbors are adjacent when they discover each other, after the three-way-handshaking process, but are not fully adjacent until they complete the database synchronization. OSPF uses a complex, state-machine-driven process to synchronize its databases, whereas IS-IS database synchronization is a much simpler process. In IS-IS there is an assumption that if two neighbours have two-way communication, they can synchronize their databases. Much of this assumption has to do with the fact that the rules for accepting IS-IS LSPs are more flexible than those for accepting OSPF LSAs.

    Designated Router

    OSPF elects a designated router (DR) on all multi-access links. The DR represents the network to the rest of the OSPF area. To minimize the impact of a failed DR, OSPF elects a backup designated router (BDR). Routers that are neither the DR nor the BDR (called DROthers) form adjacencies with both, the DR and the BDR. The DR and BDR are also adjacent, and the BDR synchronizes with the DR just like the DROthers.

    IS-IS designated intermediate systems (DIS) serve the same purpose as OSPF DRs, but differ in several significant ways:

    There is no backup DIS. A full mesh of adjacencies is established, rather than just with the DIS. Separate DISs exist for L1 and L2 adjacencies.

  • Opnet & La Salle Reports

    13

    B.5. flooding

    As we have seen before, OSPF's basic unit of topological information are LSAs. OSPF uses Update packets to send LSAs from one router to another during the flooding process. Whereas LSAs are flooded throughout an area, Update packets are exchanged only between directly connected routers, that is, if an LSA received in an Update packet must be forwarded to another router, it is put into a new Update packet for the next hop.

    Figure 4: The OSPF Update message format

    Like OSPF Updates messages, an IS-IS LSP is the "package" by which information is sent from one router to another. But unlike Updates, IS-IS LSPs are not limited in scope to a single link. They are flooded intact throughout an area. And also unlike Updates, the information contained in a single LSP pertains only to the router that originated it. On the other hand, just as LSAs, LSPs are the basic data structures that the OSPF link state database is built from.

    Figure 5: The IS-IS Link State PDU (LSP)

  • Opnet & La Salle Reports

    14

    In conclusion, it is not possible to draw a direct comparison between OSPF and IS-IS messages. Because IS-IS runs over the data link level rather than the network level, LSPs are themselves packets and do not require a separate means of transport the way LSAs require Update packets.

    B.6. area definition

    Both OSPF and IS-IS use a two-level area hierarchy. All inter-area traffic between lower-level areas must pass through the upper-level area to avoid looping. Area borders are defined by the routers that connect areas, called area border routers (ABRs).

    OSPF calls the upper-level area the backbone area (identified as area 0). The lower-level areas are the nonbackbone areas. In OSPF, at least one of the ABRs interfaces must connect to the backbone area.

    Figure 6: OSPF areas

    Like OSPF, IS-IS uses a two-level hierarchy: the upper-lever area is the level 2 (L2) area, and the lower-level (nonbackbone) areas are level 1 (L1) areas. Unlike OSPF, where different interfaces can be assigned to different areas, an IS-IS router can only belong to a single area: there are L1 routers, L2 routers and L1/L2 routers. So, instead of thinking of IS-IS areas in terms of physical links and logical boundaries, it will be better to think in terms of adjacencies.

    Figure 7: IS-IS areas

    B.7. metrics

    Both OSPF and IS-IS use a dimensionless metric that is best named cost. The metric is assigned to every interface on which the protocol runs, and it is essential to find the shortest path between any two nodes.

    RFC 2328 does not specify a default interface cost for OSPF, but many vendors calculate the cost by dividing 100Mbps by the interface bandwidth.

  • Opnet & La Salle Reports

    15

    In IS-IS, ISO 10589 specifies four different metric fields that can be assigned to an IS-IS interface:

    A default metric, which must be understood by every router in the IS-IS domain. Usually, this metric represents interface cost, the same as the OSPF metric, or the hop count.

    A delay metric. An expense metric. An error metric.

    The use of the default metric is mandatory, and the other metrics are optional.

    B.8. database synchronization

    The key concept behind link state routing protocols is that each router in an area performs localized route calculations based on information in a common topological database. That is why whenever a router becomes active on an OSPF or IS-IS network, it must synchronize its database with its neighbours to guarantee that they are the same. After the initial synchronization, the router must take steps to ensure that it remains synchronized.

    Everything we have seen about OSPF shows that it is a highly structured protocol. Due to the importance of reliable and accurate database synchronization, it is not surprising that a complex state machine, called the neighbour state machine, manages the OSPF synchronization procedure. In OSPF, the Database Description packet (DD) carries only the headers of the LSAs. An OSPF router can describe all of the LSAs in its database by originating DD packets.

    On the other hand, whereas OSPF relies on a strict state machine to manage the process, IS-IS relies on a simple process in which a router periodically describes its complete database to its neighbours through CSNP packets. CSNP packets are used to advertise the complete contents of a router's LS database to L1 or L2 neighbours, while PSNPs carries only some of the LSPs in a router's LS database.

    B.9. shortest path first calculation

    Finally, we are going to see the differences between the algorithm used by OSPF and by IS-IS. So far we have been saying that both protocols use the same algorithm, but that is not really at all since IS-IS uses an improved version of the traditional SPF, known as Incremental SPF (iSPF). This improvement consists on establishing an incremental separation between successive calculations of the SPF.

    Incremental SPF is more efficient than the full SPF algorithm. Incremental SPF allows the system to recompute only the affected part of the SPF tree when there is a topology change. Recomputing only a portion of the tree rather than the entire tree results in faster IS-IS convergence and saves CPU resources.

  • Opnet & La Salle Reports

    16

    3. Network design and implementation with Modeler 12

    OPNET Modeler is a software tool for network modelling and simulation. It allows you to design and study communication networks, devices, protocols, and applications with great flexibility. We have used this simulation tool in order to develop a practical analysis of the routing protocols under study. For this purpose, we have taken advantage of the libraries in OPNET that implement the operation of these protocols.

    A. Methodology

    In OPNET Modeler 12 documentation [10] there is a set of procedures and workflows which serve as a guide for the user to create a network model. We have defined our own workflow based on one diagram contained in OPNET Documentation, introducing some changes to suit the goals we wanted to achieve.

    Figure 8: Workflow

    B. Design of the Baseline Scenario

    In order to create a baseline scenario, OPNET offers different possibilities, including importing the network topology from a VNE Server or creating the scenario manually. For this work the second option was elected, so the next point was to decide which network topology would be used.

  • Opnet & La Salle Reports

    17

    Among the objectives we are seeking, we should emphasize in the study of the convergence time and of the links overload due to the routing protocols traffic. These features, and others that has also been evaluated, cannot be studied in the same way over small networks, where routing protocols hardly introduce overload and there is no so much routes to learn, than in large networks, where these parameters become more critical. However, the chosen scenario cannot be too big either because OPNET is a CPU intensive and memory intensive tool, which means that it uses many resources from the computer where it is executed. This utilization of computer resources, and the amount of time taken for a simulation, is directly related to the size of the simulated scenario.

    To accomplish these requirements, we decided to implement a real network case, with a number of nodes high enough to detect the effects of routing protocols over the network, but reasonably small to allow the computer to work without saturation. So we decided to implement the RedIRIS network, which is a Spanish network that interconnects the main universities and research centers of the country.

    Figure 9: RedIRIS network in OPNET

    The backbone is formed by a set of nodes conveniently distributed throughout the country, interconnected between them with a set of links that forms a mesh network with a 10 Gbps core.

    Inside the node called Nacional we have implemented a full-mesh topology with six nodes (see Figure 10).Inside each one of the other nodes there is a subnetwork formed by a unique router, which is a variation of the Cisco 3660, connected to a 100baseT LAN.

    Figure 10: Full-mesh topology implemented in node Nacional

    B.1. Basic configuration: addressing scheme

    The basic configuration of the baseline scenario did not include yet the configuration of the routing protocols, but it basically refers to the addressing schemes. For that purpose, we have created some environment files that contain the following configurations:

  • Opnet & La Salle Reports

    18

    IP addresses for all connected interfaces of each device in the network (routers and LANs), with their correspondingly subnet mask.

    Default gateway addresses for the 100baseT LAN nodes, pointing to the routers interface to which they are directly connected.

    B.2. Definition of the events

    To test the responsiveness of each protocol when there is a change in the network topology, we had to define some events consisting on failures and recoveries of links and nodes that occur during the simulation.

    Since there were a large number of nodes and links on which we can configure an event, the elected ones would be those that allow us to see better the response of routing protocols. In order to establish these cases, we have used the Survivability Analysis, a tool contained in the Flow Analysis module useful to model the effects of equipment failures in the network.

    Therefore, a simulation to evaluate the effects produced by the failure of each node has been configured. Besides, a simulation to evaluate the effects produced by the failure of two nodes at once has been configured and simulated as well.

    These simulations have provided us the information regarding the capacity of the network to survive in case of a failure, and some statistics concerning the impact of this failure. For instance, the amount of traffic rerouted is one of these statistics; we have chosen those events that have led to a higher amount of rerouted traffic, so that we could clearly observe the behavior of routing protocols in such a case. These events are:

    Failure of the link GaliciaAsturies and the node Nacional.Router1 (200 seconds after the start of the simulation).

    Recovery of the link GaliciaAsturies and the node Nacional.Router1 (500 seconds after the start of the simulation).

    Failure of the node Nacional.Router5 (800 seconds after the start of the simulation). These events have been configured using a node, called Failure Recovery, contained in the library of nodes of OPNET Modeler.

    C. Protocols configuration

    Concerning the protocols configuration, it must be noted that most parameters have been left with the defaults values configured in the OPNET protocol model, including the metrics values and timers initializations.

    All routers in the network start the routing process following a uniform distribution that can vary between 5 and 10 seconds.

    Of course, RIP has been configured to be RIP Version 2 and to operate with multicast updates. Split horizon with poisoned reverse has been left enabled on all interfaces, and the triggered extension is disabled.

  • Opnet & La Salle Reports

    19

    In OSPF and IS-IS scenarios there has not been configured any area, but all routers belong to backbone area (this means that all OSPF routers belong to area 0, and all IS-IS routers are configured with L2 area type). With these protocols it is important to configure the type of interface correctly, especially in the case of IS-IS as it implements different processes depending on the interface type.

    OSPF process uses a metric based on the cost of each interface, calculated as the ratio of the interface bandwidth and a reference bandwidth. IS-IS process uses a metric based on the cost as well, but this cost is calculated depending on the hop count. Remember also that, by default, OSPF uses the SPF algorithm while IS-IS uses the Incremental SPF algorithm.

    Finally, in the IS-IS configuration, the Hello Padding has been left enabled and the NET addresses have been configured in the same way that IP addressing: with environment files.

    D. Simulation parameters and collected statistics

    D.1. collected Statistics

    Within the set of statistics offered by OPNET for the simulation with DES, we have chosen the following.

    Global statistics

    IP > Network Convergence Duration. ISIS > Traffic Sent (bits/sec). OSPF > Total OSPF Protocol Traffic Sent (bits/sec). RIP > Traffic Sent (bits/sec).

    Node statistics

    CPU > Utilization. IP > End-to-end Delay. IP > End-to-end Variation. IP > Processing Delay. Router Convergence > Convergence Duration.

    Link statistics

    Point-to-point > Throughput. Point-to-point > Utilization.

    The collection mode for all these statistics is All Values, since we want to capture every single data during the simulation.

    D.2. Simulation parameters

    All the simulations done with DES have had a duration of 20 minutes, which corresponds to the necessary amount of time so that the different protocols can converge in all the defined events.

  • Opnet & La Salle Reports

    20

    Due to the high CPU utilization of OPNET, we had to carry out techniques for the optimization of the simulations, following the Opnetwork proceeding 1550 [11].

    Within the simulations parameters we had to specify the different environment files that we were using, but the most important issue at this point was to disable the RIP/OSPF/IS-IS efficiency, so that we can appreciate the effects of routing during all the simulation time.

    4. PRACTICAL ANALYSIS

    In the previous section we have mentioned the different statistics collected during the simulations. Now we are going to show and discuss the results of some of them.

    Before we begin this section, it is noteworthy that most of the graphics shown below have been constructed from samples obtained with OPNET, but represented on a spreadsheet to show their cumulative distribution function, instead the value of each sample.

    A. Convergence time

    The fist attribute we have analyzed is the convergence time. In OPNET, the convergence is defined as the absence of changes over a period of time. The next graphic shows the convergence time for each protocol in each one of the defined events.

    Figure 11: Global convergence time

    The first thing we can observe from this graphic is that RIP has an irregular convergence time that is over 80 seconds when there is a failure of a link or node. However, RIP has the lowest initial convergence time. This is due to the simplicity of RIP process: while RIP only has to send its routing table every 30 seconds, OSPF and IS-IS have to carry out the neighbour discovering, adjacency establishments, flooding, synchronization of the LS databases and execution of the SPF algorithm.

    In the case of OSPF and IS-IS, the initial convergence time is quite similar for both, and it is around 30 seconds.

    The graph shown below corresponds to the convergence time cumulative distribution function for each node. It can be seen that the protocol with lowest and more stable convergence times is OSPF. By

    Event 1

    Event 2

    Event 3

    Startup

  • Opnet & La Salle Reports

    21

    contrast, RIP has an irregular and slow convergence because it performs a distributed calculation of the best path: a RIP router receives an update, calculates the best path and then forwards the update. This makes that each router in the network performs the calculation of the best path in a different moment. However, OSPF and IS-IS routers send an update as soon as they receive it, so that all the routers in the network has the information to calculate the best path almost at once, and all of them can converge at the same time.

    Figure 12: Nodes convergence time

    Regarding the differences between OSPF and IS-IS convergence, there are different issues. First of all, we must remember that OSPF starts the database synchronization after the three-way-handshaking, while IS-IS starts this process after bidirectional communication is established. This means that the synchronization process starts earlier in IS-IS protocol. In addition, OSPF implements the SPF algorithm while IS-IS uses the Incremental SPF.

    In the next table we can see the aspects that influence in convergence time: RIP OSPF IS-IS

    Event detection Depends on lower OSI levelsBest path calculation

    Bellman-Ford

    SPF Incremental SPF

    Topology change updates

    Periodic updates

    LSA flooding, adjacencies formed after three-way-handshaking

    LSP flooding, adjacencies formed after bidirectional communication

    Database synchronization

    No database

    Complex FSM Simple process synchronization

    Table 3: Convergence time aspects

    B. Utilization

    The utilization represents the percentage of available bandwidth consumption, where a value of 100 would indicate full usage.

    B.1. Utilization without external traffic

    In order to evaluate the amount of traffic generated by each protocol, first we have done a simulation without the presence of data traffic, that is, only with the traffic generated by the protocols.

  • Opnet & La Salle Reports

    22

    Figure 13: Average links utilization

    Figure 14: Maximum links utilization

    First of all, it should be noticed that the utilization is very low. This is because all the defined links have a bandwidth over 100 Mbps.

    From the graphics obtained we can conclude that OSPF is the protocol that use less the links in average. That is due to the packet size used by each protocol, and the rate they are sent.

    On the one hand, we should remember that RIP sends periodic updates every 30 seconds, and that ISIS also sends CSNP packets periodically to maintain the database synchronization. Instead, OSPF only sends Hello packets periodically (so does IS-IS), but the bandwidth consumption of these packets is negligible. We will see these effects in more detail when we discuss the throughput.

    On the other hand, OSPF sends a different update message, known as LSA, for each destination, while IS-IS send as much as possible destinations in only one packet, known as LPS. Apparently, IS-IS seems to be more efficient since it only transmits one header. However, when there is a topology change, OSPF only needs to send the information concerning the destination that has change, while IS-IS needs to send the whole range of destinations that have been packed together in an unique LSP with the destination that had changed. For that reason, in unstable networks, as is the case, OSPF presents a more desirable behaviour.

    In the maximum utilization graphic, we observe that IS-IS has a higher maximum utilization. By contrast, RIP has the lowest maximum utilization. This is because RIP, although it generates a large amount of

  • Opnet & La Salle Reports

    23

    traffic, makes it in a more regular way. IS-IS and OSPF generate significant traffic peaks due to the flooding and database synchronization processes that take place when a topology change occurs.

    C. Throughput

    The throughput represents the average number of bits successfully received or transmitted by the receiver or transmitter channel per unit time, in bits per second.

    C.1. Throughput without external traffic

    The following figure corresponds to the ten links that generate a higher throughput for each protocol. As it has been said before, RIP generates periodic updates every 30 seconds. The peaks generated by RIP during unstable moments are lower than the peaks generated by the other two protocols. In addition, we can see that OSPF practically only generates traffic in unstable moments, while IS-IS also generates traffic periodically due to the transmission of CSNP packets for the LS database synchronization process.

    Figure 15: Routing protocols throughput: RIP (top left), OSPF (top right) and IS-IS (bottom)

    C.2. Throughput with application traffic

    In order to evaluate how the routing protocols distribute the data traffic over the network, some application traffic has been defined. This traffic has a medium load.

    The graphics obtained are shown in the following figures:

    Figure 16: Average links throughput with application traffic

  • Opnet & La Salle Reports

    24

    Figure 17: Maximum links throughput with application traffic

    In the average throughput graphic we observe that OSPF has a lower bandwidth consumption. This is because of the metric used by each protocol: RIP and IS-IS uses a metric based only on the hop count. However, OSPF uses a metric based on the capacity of the links, so it will prioritize those links with higher bandwidth and the traffic distribution will be more efficient.

    In the maximum throughput graphic we observe that now is OSPF who has higher bandwidth consumption. This fact suggests one of the major limitations of the OSPF routing protocol: it discriminates low-capacity links, so that all traffic passes through links with a higher bandwidth.

    D. CPU utilization without external traffic

    The CPU utilization is the percentage of CPU consumption that models forwarding and processing delays in applications.

    In the figure below it can be seen that IS-IS is the most efficient protocol in terms of CPU consumption, while OSPF is the protocol that uses less percentage of CPU. The explanation for this behaviour is given by the fact that OSPF relies in a complex state machine to manage the database synchronization procedure. RIP and IS-IS have a simplest operation mode.

    Figure 18: CPU utilization

    If we take a look to the processing delay graphics (see Figure 19) we can see that RIP has a higher and more regular processing delay. This is because of the periodic updates with the entire routing table sent by RIP, and because it performs a distributed calculation of the best path. IS-IS has also a regular

  • Opnet & La Salle Reports

    25

    consumption of CPU due to the regular transmission of CSNP packets. By contrast, OSPF practically has only CPU utilization when there is a topology change, but its magnitude is higher than for the case of the other protocols.

    Figure 19: RIP (top left), OSPF (top right) and IS-IS (bottom) processing delay

    E. Delay and jitter

    The delay is the time taken for the packet to reach its destination, in seconds, measured as the difference between the time a packet arrives at its destination and the creation time of the packet. The jitter or delay variation is the variation in time taken for packet to reach its destination, computed as:

    .

    In the results obtained with OPNET, we have not seen any noticeable difference between the delay graphics obtained from each one of the protocols. The average delay is around 3 milliseconds with a standard deviation of 2 milliseconds.

    In terms of delay variation, we have observed that RIP and IS-IS have lower jitter than OSPF, probably due to the complex operations that OSPF has to carry out.

    5. Conclusions

    The simulations have revealed the major constraints of RIPv2 protocol. However, the great advantage of this protocol is its ease of configuration and its lower processing consumption. The link state protocols improve the distance vector protocols shortcomings, especially those related to the network scalability and the adaptability to different types of topologies.

    The next table shows a summarization of the main analyzed attributes of each protocol. RIP OSPF IS-IS

    Convergence Slow Medium Fast Link utilization Inefficient Optimal InefficientMetric

    Hop countCost based on BW

    Cost based on hop count

    CPU Utilization Optimal Inefficient OptimalDelay No differences between protocolsJitter No differences between protocolsLoad balancing No Si Si

    Table 4: Summary

    The bottom line that emerges from this work is that there is no protocol that satisfies all the desirable qualities. All protocols, in their basic forms, work under the same principle: they define costs on the links based on a metric, and this is a common limitation in all routing protocols: once the metric value is set, it does not adapt itself to possible changes in the network.

  • Opnet & La Salle Reports

    26

    6. References

    [1] R.E.Bellman.DynamicProgramming.Princeton,NewJersey:PrincetonUniversityPress;1957.[2] T.H.Cormen,C.E.Leiserson,R.L.Rivest,andC.Stein.IntroductiontoAlgorithms.SecondEdition.MIT

    PressandMcGrawHill,2001.ISBN0262032937.Section24.3:Dijkstra'salgorithm,pp.595601.[3] HEDRICK,C.(1988,June).RoutingInformationProtocol.RFC1058.[4] MALKIN,G.(1998,November).RIPVersion2.RFC2453.[5] MOY,J.(1998,April).OSPFVersion2.RFC2328.[6] CALLON,R.(1990,December).UseofOSIISISforRoutinginTCP/IPandDualEnvironments.RFC1195.[7] DOYLE, J. (2005,November).OSPFand ISIS:Choosingan IGP for LargeScaleNetworks.FirstEdition.

    AddisonWesleyProfessional.ISBN0321168798.[8] DOYLE,J.,CARROL,J.(2005,October).CCIEProfessionalDevelopmentRoutingTCP/IP,VolumeI.Second

    Edition.CiscoPress.ISBN1587052024.[9] GHOUGH, C. (2003,December). CCNP SelfStudy:CCNPBCSI Exam CertificationGuide. Third Edition.

    CiscoPress.ISBN1587200856.[10] OPNET Technologies, Inc. (2006).OPNETModeler12.0Documentation:ModelerDocumentation Set.

    Version12.0,OPNETTechnologies.[11] OPNET Technologies, Inc. OPNETWORKS proceedings 2008. Session 1550: Accelerating Simulations

    Using Efficient Modeling Techniques [online]. Available on Internet:https://enterprise14.opnet.com/4dcgi/PRCD_Main?ViewCONF_ConferenceID=14.

    [12] HONKOLA,J.(2004,April).OSPFandISISEvolution.SeminarofInternetworkingT110.551.[13] IANNACCONE,G.,CHUAH,C.,MORTIER,R.,BHATTACHARYYA,S.,DIOT,C.(2002).Analysisoflinkfailures

    inanIPbackbone.[14] PERLMAN,R. (1991,September).AcomparisonBetweenTwoRoutingProtocols:OSPFand ISIS. IEEE

    NetworkMagazine.[15] PUN,H. (2001,December).ConvergenceBehaviourofRIPandOSPFNetworkProtocols.Universityof

    BritishColumbia.[16] SHAIKH,A., ISETT,C.,GREENBERG,A.,ROUGHAN,M.,GOTTLIEB,J.(2002,November).ACaseStudyof

    OSPFBehaviourinLargeEnterpriseNetwork.IMW02.Marsella,France.[17] DOYLE, J. (2005,November).OSPFand ISIS:Choosingan IGP for LargeScaleNetworks.FirstEdition.

    AddisonWesleyProfessional.ISBN0321168798.[18] DOYLE,J.,CARROL,J.(2005,October).CCIEProfessionalDevelopmentRoutingTCP/IP,VolumeI.Second

    Edition.CiscoPress.ISBN1587052024.[19] GHOUGH, C. (2003,December). CCNP SelfStudy: CCNP BCSI Exam CertificationGuide. Third Edition.

    CiscoPress.ISBN1587200856.[20] MEDHI, D., RAMASAMY, K. (2007). Network Routing: Protocols, Algorithm and Architectures. First

    Edition.MorganKaufmannSeries.ISBN0120885883.