OSPF Traffic Routing Protocol in Hybrid Network Ahmed Mahmoud Abo Ghazala National Bank of Egypt Cairo, Egypt abo
[email protected]
Abstract In financial busines, the reliability of any company is important factor to success, in our IT world all data is sent electronically to central processing by network connections.Thus, it should be more than one line connection from branches to head office; many companies prefer to rent a standby network connection from another internet service provider (ISP) with other technology. In this paper we discuss a problem occurs when we apply Open Shortest Path First (OSPF) protocol on a computer network which consist of two lines with different technologies. The first technology is frame relay and the second is MultiProtocol Label Switching (MPLS).We propose three solutions to this problem. First solution is using access list, second solution is using redistribute and, the final is using virtual routing and forwarding (Vrf).We implement our solutions on real environment, we see that using virtual routing and forwarding method is the best solution.
1. Introduction Routing protocol is a protocol used in determining the path of data packet from source to destination. In a system such as Internet, many different routing protocols are currently used. Internet is organized into a collection of Autonomous Systems (ASs), each of which is normally administered by a single entity. Each AS can select its own routing protocol to communicate between the routers in that AS. This is called an Interior Gateway Protocol (IGP) or intradomain routing protocol. The most popular IGP has been the Routing Information Protocol (RIP). A newer IGP is Open Shortest Path First protocol (OSPF). It is intended as a replacement for RIP. The IGP handles routes to destinations within the Autonomous System (AS), but does not calculate routes beyond the AS boundary [15]. Separate routing protocols called Exterier Gateway Protocols (EGP) or interdomain protocols are used between the routers in
Ayman EL-SAYED, IEEE Member Computer Science & Engineering Dept. Faculty of electronic engineering Menouf 32952, Egypt
[email protected]
different ASs. A newer EGP is the Border Gateway Protocol (BGP). Each AS is composed of multiple networks operated under the same authority [16]. OSPF is famous intradomain protocol. When we apply OSPF protocol on pure frame relay network, there is no problem occurring in traffic routing.but When we apply OSPF protocol on a computer network which consists of frame relay and MPLS. We will get a big problem in traffic routing. In this paper, we propose three different ways that will be illustrated for solving this problem. This paper is organized as section 2 produces an introduction of OSPF protocol, section 3 produces an overview of MPLS, section 4 produces a short notes about frame relay, section 5 describes the problem in details, section 6 describes our solutions of this problem and we describe the discussion of our solutions in section 7. Finally, we conclude this paper, in section 8.
2. Open Shortest Path First (OSPF) OSPF has two primary characteristics. The first is that the protocol is open, which means that its specification is in the public domain. The OSPF specification is published as Request for Comments (RFC) 1247. The second principal characteristic is that OSPF is based on the SPF algorithm, which sometimes is referred to as the Dijkstra algorithm, named for the person credited with its creation. OSPF is a link-state routing protocol that calls for the sending of link-state advertisements (LSAs) to all other routers within the same hierarchical area. Information on attached interfaces, metrics used, and other variables are included in OSPF LSAs. As OSPF routers accumulate link-state information, they use the SPF algorithm to calculate the shortest path to each node. Open Shortest Path First (OSPF) is the most commonly used intra-domain Internet routing protocol [8]. OSPF requires routers to exchange routing information with all other routers in AS. Complete network topology knowledge, i.e. the arrangement of all routers and links in the domain, is required. Because each router knows
the complete topology, each router can compute all needed shortest Paths [5]. OSPF is a dynamic protocol and quickly detects topological changes in the AS and calculates new loop-free routes after a short period of convergence [10]. OSPF calculates routes as follows. Each link is assigned a dimensionless metric, called cost or weight. This integer cost ranges from 1 to 65535 (= 216 − 1) and is shown in the link-state database. The cost of a path in the directed graph is the sum of the link costs. Using Dijkstra’s shortest path algorithm [12], OSPF mandates that each router computes a tree of shortest paths with itself as the root [10]. This tree shows the best routes to all destinations in the AS. The destination router in the first hop is extracted into the IP routing table. In the case of multiple shortest paths, some vendors have implemented OSPF so that performs load balancing across paths by equally splitting traffic on the corresponding set of next hops [4].
tocol (RSVP) [7] or Label Distribution Protocol (LDP) [11] to set up LSPs.
3. MultiProtocol Label Switching (MPLS)
In the Figure 1, LSR A uses the destination IP address on each packet to select the LSP, which determines the next hop and initial label for each packet (21 and 17). When LSR B receives the packets, it uses these labels to identify the LSPs, from which it determines the next hops (LSRs D and C) and labels (47 and 11). The egress routers (LSRs D and C) strip off the final label and route the packet out of the network. As MPLS uses only the label to forward packets, it is protocol-independent, hence the term ”Multi-Protocol” in MPLS. Packet forwarding has been defined for all types of layer-2 link technologies, with a different label encoding used in each case.
Multi-protocol label switching (MPLS) is a versatile solution to address the problems faced by present day networks (speed, scalability, quality-of-service (QoS) management, and traffic engineering). MPLS is an advanced forwarding scheme that extends routing with respect to packet forwarding and path controlling. MPLS domain is a contiguous set of routers which operate MPLS routing and forwarding and which are also in one routing or administrative domain [9]. MPLS capable router is called LSR (Label Switching Router). When packets enter a MPLS-based network, Label Edge Routers (LERs) give them a label (identifier). These labels not only contain information based on the routing table entry (i.e., destination, bandwidth, delay, and other metrics), but also refer to the IP header field (source IP address), Layer 4 socket number information, and differentiated service. Once this classification is complete and mapped, different packets are assigned to corresponding Labeled Switch Paths (LSPs), where Label Switch Routers (LSRs) place outgoing labels on the packets. At the ingress LSR of an MPLS domain, IP packets are classified and routed based on a combination of the information carried in the IP header of these packets and local routing information maintained by the LSR. MPLS header, called label (identifier) [2], is then inserted for each packet. Within an MPLS domain, LSR will use the label as the index to look up the forwarding table of the LSR. The packet is processed as specified by the forwarding table entry. The incoming label is replaced by the outgoing label, and the packet is switched to the next LSR. Before a packet leaves an MPLS domain, its MPLS header is removed. This whole process is shown in Figure 1. The paths between the ingress LSRs and egress LSRs are called Label-Switched Paths (LSPs). MPLS uses some signaling protocol such as Resource Reservation Pro-
Figure 1. MPLS forwarding scheme
4 Frame Relay Frame relay is a CCIT and American National Institute (ANSI) standard that defines the process for sending data over a Public Data Network (PDN) In simple terms, Frame Relay is a packet-switched network [13]. It is a communications networking protocol that defines how frames are routed through a fast-packet network based on the address field in the frame. The frames contain header information, which tells the intervening network nodes where to route them, and which output port to use. A Permanent Virtual Circuit, (PVC), is defined to link the sending and receiving end points. The circuit is bi-directional. Frame relay operates at layer 1 and 2 of Open System Interconnection (OSI) model as shown in Figure 2; [6]; frame relay neither changes any thing in the transmission data nor interacts with layer 3 routing. Frame relay networks simplify the switching process by moving the procedures for recovery from errors and congestion, through internodal packet retransmission and flow control, from the network to the network periphery, or end systems. These strategies also are free the link layer for
Figure 3. MultiProtocol label switching bles that are transferred from the others via frame relay link as an internal routing. The diagram of the network is shown in Figure 4.
Figure 2. Layer 2 Frame Relay designating the logical connections and routing information that is normally carried in layer 3 of X.25-based packets [14].
5 Problem Description For scalability, OSPF allows the network to be divided into areas to define a two-level hierarchy and minumize routing update [3]. The problem that we will discuss here is occurring if we apply OSPF protocol on a network that is in hub and spoke topology and each branch have two data lines. One is frame relay connection and another is MPLS connection. First we will discuss what will happen when OSPF is applied on MPLS network. Shown in Figure 3, two routers R1 and R2 have a MPLS connection through LSR1 and LSR2. OSPF protocol is applied between R1 and R2, Border Gateway Protocol (BGP) protocol is applied between LSR1 and LSR2. Thus BGP transfers the routing table of R1 through LSR1 and LSR2 to R2 and also transfers routing table of R2 thought LSR2 and LSR1 to R1 by routing redistribution method [1], this method carries OSPF routing tables over BGP traffic routing table. OSPF routing updates are transferred by BGP. When OSPF calculates the shortest path it considers the routing tables from BGP as an external routing. However, in frame relay network there is no dealing with routing tables because routers are connected like leased line, then no changes in routing tables (because frame relay works in layer 2, not layer 3). Then the routing tables are transferred as it is. The routers consider the routing ta-
Figure 4. Network topology R1 is the head office router and have two branches R2 and R3. The branches have two data connections to the head office. R2 has R2-R1 (frame relay) and R2-LSR2-LSR1-R1 (MPLS). R3 has R3-R1 (frame relay) and R3-LSR2-LSR1R1 (MPLS). OSPF protocol is running among R1, R2 and R3 and BGP protocol is running between LSR1 and LSR2. In normal case all links is up and running. When R1 (i.e. it works as a head office) want to send data to R2 via OSPF protocol, select between two paths, First path is ”R1-R2” namely frame relay path and the second path is ”R1-LSR1LSR2-R2” namely MPLS path. OSPF protocol select between the two paths by weights of the paths. The path that has low weight is selected, but if OSPF has two type of routing (external routing and internal routing) it selects internal routing Regardless of weights values of paths. OSPF always consider the routing that is delivered from another protocol as external routing. R1 and R2 exchange routing tables from the two paths, frame relay path and MPLS path. Frame relay don’t participate in layer three routing tables. It transfers routing tables as it is but, In relation to MPLS, routing tables is delivered by BGP. OSPF consider the routing tables that delivered from BGP as an external routing then R1
consider the routing table from R2 via MPLS path as an external routing whereas R1 consider the routing table from R2 via frame relay path as an internal routing. Then R1 will select frame relay path ”R1-R2” regardless the weights of the two paths. And if R2 want to send data to R1 it will select also frame relay path ”R2-R1” regardless the weights of the two paths. If frame relay link between R1 and R2 is fail then the problem could happen. The traffic will take an undesired path. Figure 5 shows the network topology when the frame relay link is fail. In this network R1 is the head office. R2 and R3 are branches. R1 will be in backbone area (area 0) R2 will be in area 2 and R3 will be in area 3.
its own MPLS backup path without any traffic and use R3 frame relay path. Figure 6 shows the error path that data will take when frame relay link is fail.
Figure 6. Error path will be taken if frame relay is fail This error in OSPF traffic routing may cause congestion in one line and leave another link without any traffic. We propose in this paper several solutions for that problem.
6 Solutions Figure 5. Frame relay link failure After R1-R2 frame relay link is fail OSPF protocol starts to convergence to build its routing table and select another path of data than the failed path, when R2 want to send data to R1 OSPF protocol has two routing paths, first path is ”R2-LSR2-LSR1-R1” and second path is ”R2-LSR2, R3R1”. In all cases R2 will send data to LSR2 thus LSR2 will select between the two paths ”LSR2-LSR1-R1” and ”LSR2R3- R1”. BGP is running in LSR2 BGP calculates link cost by metric and we can control it then BGP will select ”LSR2LSR1-R1” and this is the correct path there is no problem in selection of routing path in this direction. If R1 wants to send data to R2, OSPF protocol will have to select between two routing paths. First path is ”LSR1-LSR2-R2” and the second is ”R3-LSR2-R2” because the first path will be updated to R1 via LSR1 and BGP is running in LSR1. R1 consider this route as an external routing. The second path route update will be delivered to R1 via R3 then it is considered an internal routing because it is delivered from R3 via frame relay link. And R3 take this route update from LSR2. OSPF protocol running in LSR2 then R3 will take the route of R2 as an internal routing and send this updates to R1 via frame relay path R3-R1. Then the routing table that delivered to R1 for R2 via R3 is internal routing. OSPF will select R1-R3-LSR2-R2 the internal routing path regardless of weights of links. It is an error path because R2 will leave
We implement our solution on real environment where R1 is router cisco7500 and R2 and R3 is router Cisco 2600. The solution is applied on 30 routers 2600 connected with 4 routers 7500. The 4 routers are connected in full mesh topology. There are two sites. Each two routers are placed in site. All routers of the 30 routers are the branchs. Any branch has 4 connections to the two sites. Two connections are frame relay connection and two are MPLS connection, shown in Figure 7. For simplicity, we take a router 7500 as a head quarter and two branches only because the branches are identical. This model is shown in Figure 4. The reason of problem is that R3 advertises R2 routing table to R1 as an internal routing whereas LSR1 advertises R2 routing table to R1 as external routing thus we have two way of solutions; first way, there is one method (access list method) and the idea here is preventing R3 from updates R1 by R2 routing table and in second way; there are two methods (Routing conversion method, and Vrf (virtual routing and forwarding) method). It is forcing R3 to advertise R2 routing table to R1 as external routing.
6.1
First way of solutions: method
Access list
This method depends on the idea of preventing R3 from advertising R2 routing table to R1 via frame relay connec-
path if R1-R2 frame relay connection fail instead of R1-R3LSR2-R2 as shown in Figures 6 and 8.
Figure 8. Access list solution
6.2
Second way of solutions
6.2.1 Routing conversion method
Figure 7. the whole network Architecture tion. The idea is that the reason of the problem is R1 get R2 networks advertisement from R3 and R3 get this updates from LSR2 then if we prevent R3 from getting routing update of R2 networks from LSR2 then R3 do not advertise any R2 routing table. When R1-R2 frame relay link fail. R1 will have only one path to R2, it can be done by editing ”access list” as the following: ip access 101 ip deny A.B.C.D any router ospf 1 Redistribute aceess-group 101 in Where A.B.C.D is IP addresses of R2 and 101 is access list ID. The access list ”ip access 101 ip deny A.B.C.D any” means that it can select any packet have source IP addressee like ”A.B.C.D” and have in destination addressee any IP. The statement ”router ospf 1” means that enable OSPF routing protocol at this router with process ID=1. ”Redistribute access-group 101 in” means that applying the access list with ID 101 to the routing table of the OSPF process 1. This means deny any updates of network A.B.C.D in routing table. This access list will be applied in R3 by network administrator and put in global configuration mode. This access list deny any routing updates for R2 from LSR2 to R3 then R3 don’t advertise any routing updates for R2 to R1 then R1 will have only one path to R2 via MPLS . This method is applied and successively overcome the error in routing selection where R1 will select R1-LSR1-LSR2-R2
It depends on making R3 to advertise R2 routing as an external routing. This can be done by make R2 advertise its routing table as an external routing figure 9 show the direction of routing advertisement. by changing the configuration of R2 in order to R2 advertise its routing table as an external routing. This can be done by redistributes the R2 direct network connected under OSPF routing. Then routing table of R1 is advertised to R3 as an external routing. R3 transfers this routing update as it is, via ”R3-R1” frame relay path to R1 then the routing of R2 network is reach to R1 via R3 as an external routing and also LSR1 will advertise R2 routing as external routing. Thus OSPF will select between two external routing paths ”R1-LSR1-LSR2-R2” and ”R2-R3-R1”. We can control path selection process by adjusting the metric of redistribution. The metric is a parameter assigned to the redistribution command to weight the link cost of routing that generated by this redistribution. The following is an example of configuration that will be done in R2. Router ospf 1 Redistribute connected This method successively overcomes the problem and the traffic routing takes the correct path. 6.2.2 Virtual routing and forwarding (Vrf) method This method also depends on make R3 to advertise R2 connected networks as an external routing. Vrf divides router into two virtual routers by creating two Vrf shown in figure 10, one Vrf for each router R2 and R3. Each Vrf has
Figure 9. Routing conversion method its routing table, and then BGP will transfer the routing update from Vrf of R2 to Vrf of R3. The routing tables will transferred as an external routing. When R2 advertises its routing to Vrf of R2, BGP will transfer this routing table to Vrf of R3; this routing table will transfer to R3 as an external routing. R3 transfer the routing table for R2 to R1 via frame relay link as an external routing then we can control the routing selection by metric as happen with the later method.
method it is easy to implement but it is not work at all internetwork operating system CISCO router operating system (IOS) versions but there is no affect to this method in router processor utilization. It is better than the previous method because in this method we haven’t to configure any thing at another branch router. The last method, Vrf is the best one because of no configuration done in customer router and this keeps the main advantage of MPLS in that customer don’t treat with ISP core network and the performance is very good also and this is the important factor, this method has disadvantage that if the two branches want to connect to each other, it has to connect via head quarter routers but the probability of connecting a branch to other is very small because the data processing is centralized. We summary the comparison between three methods of solutions in the following Table: Access list Customer router utilization ISP router utilization Where to configure troubleshooting Complexity of configuration Performance
Routing conversation Increase
Increase dramatically No effect At Customer router Difficult Easy
No effect At Customer router Easy Very Easy
Good
Accepted
Vrf No effect Increase At ISP router Difficult Difficult Very Good
8. Conclusions
Figure 10. VRF divide LSR2 router This method successively overcomes the problem and the traffic routing takes the correct path. All configurations are done at the ISP site there is not any configuration added in customer routers site.
7 Discussion Access list method has many disadvantages that it increases customer router processor utilization (branches) and also is configured at another branch router R3 and also change routing table and that is not recommended but it is easy to configure, if some error happen in configuration it is very difficult to trace the problem, and if any branch want to connect with the another branch we have manually enter to router branch and delete the access list. Routing conversion
We have pointed out the problem of traffic routing in shortest path routing protocol (OSPF) in hybrid network (i.e. using two different technologies like MPLS and frame relay). In this paper, we analysis this problem and propose two ways including three solutions (methods): Access list, Routing conversion and virtual routing and forwarding (Vrf). We implement our solutions on real environment. The main problem is caused by changing in the type of OSPF routing tables from internal to external by MPLS technology Whereas frame relay don’t make such that action. We discovered that one of the proposed solutions called Vrf method is the better one in order to achieve better results, however, this solution is not optimal one, but it could be satisfied.
References [1] Cisco ios software in the telco data communications network. White paper, http://www.cisco.com/en/US/, page 112, 2000. [2] C. J. M. D. A. Boudani, B.Cousin. Multicast routing simulator over mpls networks. the 36th Annual Simulation Symposium, Orlando, Florida, March 2003. [3] A. G. A. Shaikh. Ospf monitoring: Architecture, design and deployment experience. NSDI’04, san francisco, california, USA, page 5770, March 2004.
[4] C. D. Ashwin Sridharan, Roch Guerin. Achieving nearoptimal traffic engineering solutions for current ospf/is-is networks. IEEE INFOCOM, San Francisco California, USA, 2:1167–1177, April 2003. [5] U. Black. IP Routing Protocols, RIP, OSPF, BGP, PNNI and Cisco routing protocols. Prentice Hall Series in Advanced Communications Technologies, 2000. [6] J. T. Buckwalter. Frame Relay: Technology and Practice. ADDISON WESLEY, 2000. [7] D. G. T. L. V. S. D. Awduche, L. Berger and G. Swallow. Rsvp-te: Extensions to rsvp for lsp tunnels. IETF RFC3209, December 2001. [8] A. J. S. C. B. L. H. D. D. Huang, Q.Cao. Addressing intra-domain network security issues through secure linkstate routing protocol: A new architectural framework. Communications of the ACM’05, April 2005. [9] R. C. E. Rosen, A. Viswanathan. Multiprotocol label switching architecture. Internet proposed standard RFC3031, January 2001. [10] I. J. Moy, Proteon. Ospf version 2. Technical Report, RFC1583, Network Working Group, March 1994. [11] N. F. A. F. L. Andersson, P. Doolan and B. Thomas. Ldp specification. IETF RFC3036, January 2001. [12] P. Mirchandani. Implementation of k-shortest path dijkstra algorithm used in all-optical data communication networks. SIE 546 Project, Spring 2004. [13] S. G. P.WOLCOTT. Global diffusion of the internet - i india: Is the elephant learning to dance? Communications of the Association for Information Systems, 11:560–646, January 2003. [14] M. Rahnema. Frame relaying and the fast packet switching concepts and issues. IEEE Network, 5(4):18–23, July 1991. [15] A. S. B. Sharad Agarwal; Nucci. Measuring the shared fate of igp engineering and interdomain traffic. 13th IEEE International Conference on Network Protocols (ICNP), Boston, Massachusetts, USA, pages 236–245, November 2005. [16] S. T. Steve Uhlig. Quantifying the bgp routes diversity inside a tier-1 network. proceedings of IFIP networking, Coimbra, Portugal, May 2006.