Scalable BGP QoS Extension with Multiple Metrics - IEEE Xplore

0 downloads 0 Views 250KB Size Report
korkmaz@cs.utsa.edu. Abstract— Being an important and yet a challenging problem, the QoS-based routing in the converging Internet has received significant ...
Scalable BGP QoS Extension with Multiple Metrics ∗ Tielei Zhang, Yong Cui and Youjian Zhao

Lizheng Fu

Turgay Korkmaz

Department of Computer Science and Technology, Tsinghua University {zhangtl, cy, zhaoyj}@csnet1.cs.tsinghua.edu.cn

Tsinghua Bitway Institute [email protected]

Department of Computer Science, University of Texas at San Antonio [email protected]

Abstract— Being an important and yet a challenging problem, the QoS-based routing in the converging Internet has received significant attention from the research community. However, most of the QoS-based routing research is conducted in the context of intra-domain routing, leaving QoS-based inter-domain routing relatively open. In this paper, we specifically investigate how to extend the current inter-domain routing protocol (BGP) to support multiple QoS metrics. With multiple metrics, a BGP speaker has to advertise multiple routes for each destination to its peer. This will increase the routing message overhead and make QoS-aware BGP unscalable to large networks. Therefore, our focus in this paper is to bring QoS extensions to the original BGP while simultaneously providing high performance and scalability. In response to this, we propose path reduction algorithms, i.e., Contribution Based Reduction (CBR) algorithms, to reduce the number of routes advertised by BGP speakers while maximizing the routing success ratio. Extensive simulations show that our schemes achieve high performance with low complexity in terms of message overhead and computation, making the QoS extension to BGP scalable. Keywords–BGP; QoS; routing; multiple constraints

I. I NTRODUCTION The continuous growth in both commercial and public network traffic with quality-of-service (QoS) requirements is calling for the evolution of the Internet from a simple besteffort network towards a converged one that can provide various levels of QoS guarantees and/or differentiations to voice, video, and data applications. To achieve this goal, it is necessary to improve the current routing protocols, including both intra-domain and inter-domain routing protocols, with QoS extensions [1], [2]. Traditional approach to QoS-based routing is to first acquire the dynamic network state information using link-state protocols and then to compute QoS-based paths using this information along with given QoS requirements. Naturally, this approach is a good fit in intra-domain routing and widely studied in the literature and resulted in QoS-extensions to OSPF [3], [4]. Furthermore, many multi-constrained QoS routing algorithms based on intra-domain routing are proposed, such as H MCOP [5], the limited path heuristic [6], MEFPA [7], etc. However, this approach cannot cope with the scalability and policy issues in the context of inter-domain routing. A natural choice seems to extend BGP with QoS metrics. In [8] the authors propose a new BGP attribute, named the QOS NLRI, ∗ Supported by the National Natural Science Foundation of China under Grant No. 90604029 and 60403035.

to encode QoS metrics associated with the underlying path. However, this work does not consider how to determine or use such information. Fei and Gerla [9] extend MBGP (Multiprotocol Extension to BGP4) for inter-domain QoS Multicast. However, this work does not consider the problem of routing message overhead and the scalability. In [10] authors concentrate on extending BGP with one bandwidth metric. However, more than 2 QoS metrics are common in the QoS context and need to be considered. In this paper, we propose a new scalable extension to BGP with multiple metrics and give the big picture that well integrates the inter-domain and intra-domain routing together. In essence, BGP uses path/distance-vector approach and disseminates an AS-level path to convey just the reachability information. However, for QoS extension with multiple metrics, BGP needs to include the QoS metrics associated with the advertised AS-level path. Furthermore, there will be multiple routes to one single destination with different QoS metrics. Advertising all these paths and the associated QoS metrics would cause significant message overhead. For the scalability reasons, it is necessary to reduce this routing message. In response to this, we propose “path reduction” algorithms, i.e., Contribution Based Reduction (CBR) algorithms that minimize the number of QoS-based routes advertised by BGP while maximizing the feasibility region covered by the advertised paths. The rest of this paper is organized as follows: In Section II we depict our proposed QoS extensions schemes to BGP. In Section III, the path reduction problem is formulated, and then an upper-bounded optimal algorithm and two CBR algorithms are proposed. In Section IV, our schemes are evaluated by extensive simulations. Finally, conclusions appear in Section V. II. S CALABLE Q O S E XTENSION S CHEMES We consider the typical Internet architecture at BGP level, as shown in Fig. 1. The routers in each AS are classified as the border routers (the black dots in Fig. 1) and the internal routers (the white dots in Fig. 1). In Fig. 1, each link (say e) is associated with K independent general weights, w1 (e), w2 (e), . . . , wK (e), where wl (e) ∈ R+ (1 ≤ l ≤ K). Each path (say p) is also associated with K weights, of which the l-th (1 ≤ l ≤ K) is denoted as wl (p). In the conventional BGP, the advertisements propagated between BGP routers are formatted in the UPDATE message.

0-7695-2622-5/06/$20.00 (c) 2006 IEEE

Fig. 1: BGP Scenario.

In the BGP QoS extensions with multiple (say K) QoS metrics, K (K ≥ 2) path weights are added into the UPDATE message. Then these QoS metrics are advertised along with the path information in both intra-AS and inter-AS manners using I-BGP and E-BGP. Though we focus on BGP extension only, BGP will definitely cooperate with some Interior Gateway Protocol (IGP) used inside an AS. For integrity, we describe the big picture in three aspects: IGP, E-BGP and I-BGP. •





In each AS, we run an IGP which may or may not be QoS-aware. If the IGP is QoS-aware, we allow each node to precompute multiple (say L) internal QoS paths to every node within the same AS. Then IGP communicates the information about the L paths and their related QoS metrics to BGP. So each router (border or internal) knows L paths to each other within that AS. If the IGP is not QoS-aware, we could use measurements to obtain QoS metrics about the paths between every two nodes within the same AS. Then each router knows only one path to each other within that AS. Among different ASs, the external BGP (E-BGP) is used to exchange information about paths and related QoS metrics. Border routers (using E-BGP with our QoS extension) within an AS will advertise L precomputed paths for each destination to their neighbors that are the border routers in other ASs. A particular case is that, if an AS is not QoS-aware, border routers within that AS will advertise only one path for each destination node which is within the same AS to their peers in different ASs. The internal BGP (I-BGP) runs among routers within the same AS. According to I-BGP with QoS extension, when a border router (say X) in an AS receives L paths for a destination (d) from another AS, it will send these externally-learned paths to internal nodes. Each node (say u) knows L paths from itself to that border router (X) and now it learned L paths from X to a given destination (d). So each node (u) can concatenate L (u–X) and L (X–d) paths and obtain L ∗ L = L2 (u–d) paths. If a node receives paths from other border routers as well then a node will have at most B ∗ L2 paths, where B is the number of border routers within the same AS. Note such a particular case, if that AS is not QoS-aware, each internal node (u) still obtains only one path to each destination (d) after this routing message exchange.

We denote the number of obtained paths in a border router as M (1 ≤ M ≤ BL2 ). After a node obtains M paths, it first enforces some predefined path selection policies to reject some paths and thus reduce M to N (1 ≤ N ≤ M ). If all the N paths are propagated to other ASs, the increased routing message overhead may affect the scalability of BGP. To reduce the number of routes advertised by BGP routers, we propose path reduction algorithms in Section III to further reduce the number of paths to L (1 ≤ L ≤ N ). Afterwards, each node installs the L selected paths into the local forwarding table, and each border router further propagates such routing results to neighboring ASs. III. PATH R EDUCTION A LGORITHMS A. Problem Formulation First, we introduce some notations used in this paper. The notation w(p)  = (w1 (p), w2 (p), . . . , wK (p)) (K ≥ 2) denotes the weight vector of path p and the notation c = (c1 , c2 , . . . , cK ) denotes the QoS constraint vector. Notation w(p)  ≤ w(q)  denotes wl (p) ≤ wl (q) for all 1 ≤ l ≤ K. Other relational operators and ≥ are defined similarly. Definition 1 (Multi-Constrained Path p): Given a directed graph G(V, E), a source node s, a destination node t and K QoS constraints represented by a constraint vector c = (c1 , c2 , . . . , cK ), the path p = s → v1 → v2 → . . . → t is called a multi-constrained path (MCP), if w(p)  ≤ c. Definition 2 (QoS Request Space S): Given a source node s, a destination node t, a constraint vector c = (c1 , c2 , . . . , cK ) and K maximum values C1 , C2 , . . . , CK for c1 , c2 , . . . , cK , the set S(C1 , C2 , . . . , CK ) = {(c1 , c2 , . . . , cK ) | 0 ≤ c1 ≤ C1 , 0 ≤ c2 ≤ C2 , . . . , 0 ≤ cK ≤ CK } is called the QoS request space from s to t. We write S in brief. For convenience, . we write Cl (p) = Cl when point p ∈ S(C1 , C2 , . . . , CK ). Definition 3 (Feasible Region of a Path F (p)): Given the QoS request space S and a path p from source s to destination t with a weight vector w(p)  = (w1 (p), w2 (p), . . . , wK (p)), the set F (p) = {c | c ∈ S, c ≥ w(p)}  is called the feasible region of path p in S. Definition 4 (Feasible Region of a Path Set F (P )): Given the QoS request space S from source s to destination t and a path set P = {p1 , p2 , . . . , pN } from s to t, the feasible region of path set P in S is defined as  φ , P = φ N (1) F (P ) = i=1 F (pi ) , else In Fig. 2, region OABC represents a QoS request region S(C1 , C2 ), and path p1 and p2 are respectively represented by a point in S. Region BEp1 D represents the feasible region of path p1 , i.e. F (p1 ); while region BM p2 Lp1 D represents the feasible region of path set {p1 , p2 }, i.e. F ({p1 , p2 }). Although any path can be represented by a point in the QoS request space, there may not be any real path that corresponds to a point in the QoS request space. However, similar properties hold for both a point and a path. Therefore, in this paper, a path is regarded as equivalent to a point and

0-7695-2622-5/06/$20.00 (c) 2006 IEEE

——————————————————————————————————————— ContriInc() ContriCapacity(p0 , P AT H0) 1) FOR EACH p in P AT H0 1) P AT H0 = {p1 , p2 , . . . , pN } 2) P AT H1 = φ 2) FOR(l = 1; l ≤ K; l + +) 3) FOR(i = 0; i < L; i + +) 3) IF(wl (p) < wl (p0 )) 4) maxCpty = −1 4) wl (p) = wl (p0 ) 5) FOR EACH p in PATH0 5) Add p into P AT H1 K 6) cpty=ContriCapacity(p, P AT H1) 6) cpty1 = l=1 (Cl − wl (p0 )) 7) IF(cpty > maxCpty) 7) cpty2=Capacity(P AT H1) 8) maxCpty = cpty 8) RETURN cpty1 − cpty2 9) maxp = p 10) Add maxp into P AT H1 11) Delete maxp from P AT H0 12) RETURN P AT H1 ——————————————————————————————————————— (a) Main Routine (b) Sub-Procedure: Computation of δ(C(p0 ; P AT H0)) Fig. 3: The Incremental Contribution Algorithm (ContriInc).

is point L, whose feasible region is BELN . Definition 7 (Capacity of Feasible Region Ψ(F (P ))): Given the QoS request space S(C1 , C2 , . . . , CK ) from source s to destination t and a path set P = {p1 , p2 , . . . , pN }, the capacity of feasible region for P is defined as follows: (i) If P = φ, Ψ(F (P )) = 0 Fig. 2: QoS Request Space S (K = 2).

all path-related concepts also applies to a point in the QoS request space. Definition 5 (Intersection of Paths p1 ∧ p2 ): Given the QoS request space S from source s to destination t and two  1 ), w(p  2 ), a path (or paths p1 , p2 with weight vectors w(p a point in S) p is called the intersection of p1 and p2 , if wl (p ) = max{wl (p1 ), wl (p2 )} for all 1 ≤ l ≤ K, where wl (p ) is the l-th element of the weight vector (or coordinate) of path p . We write as p = p1 ∧ p2 . Definition 6 (Intersection of Path and Path Set p ∧ P ): Given the QoS request space S from source s to destination t, a path p and a path set P = {p1 , p2 , . . . , pN }, the intersection of p and P is defined as  φ , P = φ p∧P = {p ∧ p1 , p ∧ p2 , . . . , p ∧ pN } , else (2) According to definition 5 and 6, the intersection of two paths is also a path (or a point) while the intersection of a path and a path set is a set of paths (or points), so the concept of feasible region can still apply to the intersection of two paths or of a path and a path set. In figure 2, the intersection of p1 and p2

(3)

(ii) If P contains only one path p, i.e. P = {p}, Ψ(F (P )) = Ψ(F ({p})) =

K 

(Cl − wl (p))

(4)

l=1

(iii) If P contains more than one path, we arbitrarily  = P − {p } select a path p ∈ P and then P is obtained. In this case, we define   Ψ(F (P )) = Ψ(F (P ))+Ψ(F ({p }))−Ψ(F (p ∧P )) (5) Definition 8 (Optimal Path Reduction Problem, OPR): Given the QoS request space S from source s to destination t and a path set P = {p1 , p2 , . . . , pN }, the problem is to find a subset π ⊆ P with L (L ≤ N ) elements such that

π = arg

max

π⊆P

Ψ(F (π))

(6)

In definition 7, the concept of capacity intuitively implies a measure of space occupied by the feasible region of a path set in the QoS request space. The greater the capacity is, the more likely the corresponding path set satisfies underlying QoS constraints. In order to solve the OPR problem in definition 8, we propose an upper-bounded optimal algorithm in Subsection III-B and two CBR algorithms in Subsection III-C and III-D.

0-7695-2622-5/06/$20.00 (c) 2006 IEEE

B. The Optimal Algorithm (Optimal) The Optimal algorithm tries all possible combinations of L combinations) and exactly selects the L out of N (totally CN one with maximum capacity of feasible region. When the Optimal considers a certain combination, it will call a sub-procedure Capacity(P AT H) to calculate the capacity of feasible region of P AT H, where P AT H is the set of L paths determined by the current combination. Since this sub-procedure is also called by the ContriInc algorithms in Subsection III-C, we discuss it in detail there for continuity. Though the Optimal gives the best results for path reducL | Capaticy | tion, its time complexity is quite high, i.e., O(CN ), where | Capacity | is the complexity of Capaticy. C. The Incremental Contribution Algorithm (ContriInc) Definition 9 (Contribution Region C(p; P )): Given the QoS request space S from source s to destination t, a path set P = {p1 , p2 , . . . , pN } and a path p ∈ P , the set C(p; P ) = F (p) − F (P ) is called the contribution region of p towards P . Definition 10 (Capacity of Contribution Region ): Given the QoS request space S from source s to destination t, a path set P = {p1 , p2 , . . . , pN } and a path p ∈ P , the capacity of contribution region of p towards P is defined as δ(C(p; P )) = Ψ(F (p)) − Ψ(F (p ∧ P )). The concept in definition 9 implies the contribution of path p towards the feasible region of path set P , and the capacity in definition 10 is a measure of such a contribution. We propose a Contribution Based Reduction (CBR) algorithm with low complexity: the incremental contribution algorithm (ContriInc), as shown in Fig. 3. The idea of the algorithm in Fig. 3(a) is to select a path with the maximum capacity of contribution region from set P AT H0 one by one, delete the path from P AT H0 and add it into P AT H1. Thus, after iterating L times, L paths are stored in P AT H1. The algorithm calls the sub-procedure ContriCapacity (line 6), as shown in Fig. 3(b), which is used to calculate δ(C(p0 ; P AT H0)). In Fig. 3(b), line 1—5 computes P AT H1 = p∧P AT H0, line 6 computes Ψ(F (p0 )) and line 7 computes Ψ(F (P AT H1)) by calling the subprocedure Capacity. The algorithm Capacity(P AT H) is used to calculate Ψ(F (P AT H)). It is a recursive procedure and can be roughly divided into three parts: (i) A path p0 is arbitrarily selected from set P AT H and its capacity of feasible region is figured out. (ii) The entire QoS request space is cut into 2K small request spaces along the K dimensions of p0 and at the same time any path is cut into different small spaces. (iii) In all small spaces except the one p0 belongs to, the capacity of feasible region for every path set is computed recursively, and then the sum of these capacities plus the capacity of feasible region of p0 is just the expected result. Theorem 1: The worst-case time complexity of algorithm K L+1 Capacity is O( (2(2K−1) ). −2)2 Proof: Let C(L) represent the number of comparison times needed when set P AT H0 contains L paths. One path can be

cut into 2K new paths at worst, so we get 2K (L − 1) new paths after one path is removed from the original L paths and used to cut the left (L − 1) paths. These 2K (L − 1) paths are then distributed into 2K small QoS request spaces, so there are (L − 1) paths in each small space. At the same time, it needs (2K − 1)(L − 1) comparisons to cut the left (L − 1) paths. Now, the recurrence relation (i.e., difference equation) can be derived as follows:  C(L) = (2K − 1)(L − 1) + (2K − 1)C(L − 1) C(0) = 0 It can be derived that, 2K − 1 (2K − 1) (2K − 1)L+1 L − − (7) (2K − 2)2 2K − 2 (2K − 2)2 Due to its call to Capacity, the worst-case complexity of the ContriInc algorithm is still exponential with respect to the problem scale according to theorem 1. C(L) =

D. The Improved Incremental Contribution Algorithm (ImprovedInc) The bottleneck in complexity of the ContriInc algorithm lies in the sub-procedure Capacity. Therefore, we propose a improved CBR algorithm with polynomial complexity by improving Capacity. Theorem 2: Suppose that P,N = {p1 , p2 , . . . , pN } is a path set from source s to destination t, subset SU Bli (P,N ) = {pr1 , pr2 , . . . , prl } ⊆ P,N exactly l ), and notation contains l paths (1 ≤ l ≤ N, 1 ≤ i ≤ CN i SEC(SU Bl (P,N )) = pr1 ∧ pr2 ∧ . . . , ∧prl . Then Ψ(F (P,N ))

=

N 

l

l−1

(−1)

CN 

Ψ(F (SEC

i=1

l=1

(8) (SU Bli (P,N )))) Proof: We use mathematical induction with respect to N . When N = 1, the LHS of (8) = Ψ(F (p1 )) = the RHS of (8). Suppose (8) is satisfied by N , then we show (8) is also satisfied by (N + 1) as follows. Ψ(F (P,N +1 )) Ψ(F (P,N )) + Ψ(F {pN +1 }) (According to (5)) −Ψ(F (pN +1 ∧ P,N )) l C N N   = (−1)l−1 Ψ(F (SEC(SU Bli (P,N )))) =

i=1

l=1

+Ψ(F ({pN +1 })) +

N  l=1

(−1)l

(SU Bli (pN +1 ∧ P,N ))))

l C N 

i=1

Ψ(F (SEC

On the other hand, N +1

l CN +1

l=1 N +1

i=1

(−1)l−1

=

Ψ(F (SEC(SU Bli (P,N +1 ))))

Ψ(F (SEC(SU Bli (P,N +1 ))))

l=1 N 

+



l=2

l−1

(−1)

l CN +1



i=1

Ψ(F (SEC(SU Bli (P,N +1 ))))

1 +(−1)N Ψ(F (SEC(SU BN +1 (P,N +1 ))))

0-7695-2622-5/06/$20.00 (c) 2006 IEEE

Ψ(F (SEC(SU B1i (P,N )))) + Ψ(F ({pN +1 }))

i=1 N 

+

+

l=2 N  l=2

l−1

(−1)

l−1

(−1)

l C N 

Ψ(F (SEC(SU Bli (P,N +1 ))))

i=1 l−1 C N i=1

i=1

+Ψ(F ({pN +1 })) +

N  l=1

(−1)l

(SU Bli (pN +1 ∧ P,N ))))

l C N 

i=1

T 

l−1

(−1)

l C N 

0.75 0

Ψ(F (SEC

(1 ≤ T ≤ N )

0.9

Optimal ContriInc ImprovedInc

0.85

0.8

Ψ(F (SEC

i=1 l=1 (SU Bli (P,N )))),

10

0.95

Therefore, (8) is satisfied by (N + 1). Theorem 2 provides another approach to compute the capacity of feasible region of a path set. Eqn. (8) is a sum of N items, so its computation complexity is still high. However, we find that an item has an decreasing impact on the total sum as l increases in (8). Therefore, we make an approximation: M (T ) =

4

1

i Ψ(F (SEC(SU Bl−1 (pN +1

∧P,N )))) + (−1)N Ψ(F (SEC(P,N +1 ))) l C N N   = (−1)l−1 Ψ(F (SEC(SU Bli (P,N )))) l=1

selected L paths divided by the capacity of feasible region of all N paths.

Running Time (msec)

N 

Capacity Ratio

=

(9)

Now we rewrite the function Capacity, computing the capacity of feasible region according to Eqn. (9). If the algorithm in Fig. 3(b) call the rewritten version of Capacity in line 7, the improved version of ContriInc is obtained, denoted as ImprovedInc(T), where T is a parameter representing the computational precision of the algorithm. We now analyze the computation complexity of the ImprovedInc algorithm when T is small. In Fig. 3(a), it is the bottleneck in complexity that lies in calling ContriCapacity (line 6). In Fig. 3(b), the complexity of ContriCapacity can be restricted in O(KnT ) when P AT H1 contains n paths and Tis small. Therefore, the complexity of ImprovedInc L−1 is O( i=1 KiT ) = O(KL(T +1) ). Extensive simulations in Section IV show that the ImprovedInc algorithm achieves very high performance when T = 2. Thus, the ImprovedInc can be restricted in O(KL3 ) complexity in practice. IV. P ERFORMANCE E VALUATION Simulations in this section include two parts: In part IV-A, we evaluate the performance and running time of the proposed CBR algorithms; In part IV-B, we evaluate the success rate and message overhead of the proposed QoS extension schemes to BGP. A. Evaluation of Path Reduction Algorithms We compare two CBR algorithms, i.e., ContriInc and ImprovedInc, with Optimal, in terms of performance and running time. We randomly generate N paths, i.e., wl (pi ) ∼ U nif orm(1, Cl ) for all 1 ≤ l ≤ K and 1 ≤ i ≤ N . In order to evaluate the performance of each algorithm, we define capacity ratio as the capacity of feasible region of the

2

10

0

10

−2

10

Optimal ContriInc ImprovedInc

−4

2

4

6

8

10

12

14

16

10

0

2

4

6

8

10

12

L

L

(a) Capacity Ratio

(b) Running Time

14

Fig. 4: Comparison when L is varied. In Fig. 4, we compare the capacity ratio and running time of each algorithm when L changes. N = 16, K = 3 and T = 2 in simulations. Fig. 4(a) shows that the ContriInc algorithm almost achieves the same capacity ratio with Optimal and the capacity ratio of ImprovedInc is slightly smaller. When L increases from 1, the capacity ratio of each algorithm rapidly rises and when L = 5 or 6, it has been close to one. In Fig. 4(b), the y-axis represents the running time, in logarithmic scale. The running time of Optimal is much longer than the other two algorithms in the mass, especially when L approximates to N/2.

(a) Capacity Ratio

(b) Running Time

Fig. 5: Comparison when K is varied. In Fig. 5, we compare the capacity ratio and running time of each algorithm when K changes. N = 16, L = 5 and T = 2 in simulations. From Fig. 5(a), we find that the capacity ratio of each algorithm just decreases slightly as K increases. While Fig. 5(b) shows that ImprovedInc runs much faster than the other two algorithms. Furthermore, the running time of Optimal or ContriInc is exponential with respect to K, but ImprovedInc is insensitive to K. In Fig. 6, we compare the capacity ratio and running time of each algorithm when T changes. N = 16, L = 10 and K = 3 in simulations. Because Optimal and ContriInc have nothing to do with T , the capacity ratio and running time of them basically remains constant. From Fig. 6(a), we find that the capacity ratio of ImprovedInc has an upward trend when T increases, but it is quite high when T = 2. From Fig. 6(b), it can be found that the running time of ImprovedInc rises

0-7695-2622-5/06/$20.00 (c) 2006 IEEE

16

4

1.005

10

Running Time (msec)

Capacity Ratio

1 0.995 0.99 0.985 0.98 Optimal ContriInc ImprovedInc

0.975

3

10

2

10

Optimal ContriInc ImprovedInc

1

10

0

10

−1

0.97 0

5

10

10

15

0

5

10

T

T

(a) Capacity Ratio

(b) Running Time

15

Fig. 6: Comparison when T is varied. relatively fast as T increases and eventually exceeds that of ContriInc, but ImprovedInc has the lowest time complexity when T ≤ 2. Therefore, it is ideal to let T = 2 in practice.

V. C ONCLUSION In this paper, we extend BGP to support QoS and bring multiple metrics into BGP. In the area of inter-domain routing, this problem is still open. The challenge is how to make BGP aware of multiple QoS metrics and thus multiple routes and at the same time reduce the routing message overhead. We propose the incremental contribution algorithm and its improved version to perform path selection and reduce the number of UPDATE messages. This make our QoS extension to BGP scalable. We also describe a big picture for BGP extension to support multiple QoS metrics. Under this scalable framework, we expect that the traditional protocol systems be well integrated with QoS schemes to provide new techniques supporting new QoS-oriented service in the next generation network.

1

4500 4000

Number of UPDATE

Success Ratio

B. Evaluation of the QoS extension schemes to BGP We implement a simulator to evaluate the QoS routing performance and routing message overhead. The simulator is based on a 2-level top-down topology model generated by BRITE [11]. Both the inter-AS and the intra-AS topologies are generated using Waxman [12] model. We generate a topology with 50 ASs and 50 routers within each AS.

0.9 0.8 0.7 0.6 0.5 0.4

SASP SAW LRAND CBR

0.3 0.2 1

3500

SASP SAW CBR

3000 2500 2000 1500

R EFERENCES

1000 500

2

3

4

5

6

In order to evaluate the performance of each routing system, the success ratio (SR) is defined as the number of satisfied QoS routing requests divided by the number of all the generated routing requests. Fig. 7(a) shows the success ratio after the routing message exchange becomes convergent. It can be found that the CBR routing achieves the biggest success ratio, especially when L is large. As shown in Fig.7(b), we found that the number of UPDATE messages is linear to L in CBR routing and this brings about good scalability of the protocol design. Note that the LRAND routing system is difficult to converge when the network becomes big. It requires quite a lot of UPDATE advertisement, much more than the other routing systems, thus not shown in Fig.7(b).

0 1

2

3

4

5

L

L

(a) Sucess Ratio

(b) Number of UPDATE

Fig. 7: Comparison when L is varied. For comparison, we simulate four BGP-based routing systems: (1) Shortest AS PATH Routing (SASP): The standard shortest path algorithm runs within an AS and the path with the shortest AS PATH is selected in inter-AS routing. This SASP routing is just similar to the real BGP system. (2) Smallest Average Weight Routing (SAW): The shortest path algorithm runs with respect to the average of K weights within an AS and the path with the smallest average of weights is selected in inter-AS routing. (3) L Random Paths Routing (LRAND): Any multi-constrained QoS routing algorithm can be used to precompute L paths within an AS and L paths are randomly selected in inter-AS routing.(4) Our proposed CBR Routing (CBR): Any multi-constrained QoS routing algorithm can be used to precompute L paths within an AS and L good paths are selected using CBR algorithms in inter-AS routing. When simulating CBR routing, we choose ImprovedInc as the path reduction algorithm and the parameters T = 2. In addition, we choose the limited path heuristic [6] as the intraAS routing algorithms when simulating LRAND and CBR routing.

6

[1] E. Crawley, R. Nair, B. Rajagopalan, and H. Sandick, “A framework for QoS-based routing in the Internet,” IETF, Tech. Rep. RFC 2386, August 1998. [2] X. Xiao and L. M. Ni, “Internet QoS: A big picture,” IEEE Network, vol. 13, no. 2, pp. 8–18, March-April 1999. [3] P. e. Van Mieghem, F. Kuipers, T. Korkmaz, M. Krunz, M. Curado, E. Monteiro, X. Masip-Bruin, J. Sol-Pareta, and S. Snchez-Lpez, “Quality of service routing,” in Quality of Future Internet Services, S. et al., Ed. Springer LNCS 2856, 2003, ch. 3, pp. 80–117. [4] R. Guerin, A. Orda, and D. Williams, “QoS routing mechanisms and OSPF extensions,” in GLOBECOM ’97, vol. 3. IEEE, 1997, pp. 1903 –1908. [5] T. Korkmaz and M. Krunz, “Multi-constrained optimal path selection,” in Proceedings of the INFOCOM 2001 Conference, vol. 2. Anchorage, Alaska: IEEE, April 2001, pp. 834–843. [6] X. Yuan and X. Liu, “Heuristic algorithms for multi-constrained quality of service routing,” in Proceedings of the INFOCOM 2001 Conference, vol. 2. Anchorage, Alaska: IEEE, April 2001, pp. 844–853. [7] Y. Cui, K. Xu, and J. Wu, “Precomputation for multi-constrained qos routing in high-speed networks,” in Proceedings of the INFOCOM 2003 Conference, San Francisco, April 2003. [8] C. Jacquene, “Providing quality of service indication by the BGP-4 protocol: the QOS NLRI attribute,” IETF, Tech. Rep. (draft-jacquenetqos-nlri-00.txt), July 2000, (work in progress). [9] A. Fei and M. Gerla., “Extending bgmp for shared-tree interdomain qos multicast.” in Proceedings of IWQoS, 2001., 2001. [10] L. Xiao, K.-S. Lui, J. Wang, and K. Nahrstedt, “Qos extension to bgp,” Proceedings 10th IEEE International Conference on Network Protocols, pp. 100 – 9, 2002. [11] “Boston university representative internet topology generator,” http://www.cs.bu.edu/brite/. [12] B. M. Waxman, “Routing of multipoint connections,” IEEE JSAC, vol. 6(9), pp. 1617–1622, 1988.

0-7695-2622-5/06/$20.00 (c) 2006 IEEE

Suggest Documents