• No results found

Proposed Heuristic Algorithm for Load Balancing

5.4 Proposed Heuristic Algorithms

5.4.2 Proposed Heuristic Algorithm for Load Balancing

For the purpose of load balancing of the customer traffic flows across all the inter-domain links, we now propose a second Greedy Heuristic Algorithm to achieve load balancing. As explained before, in this case we split customer traffic flows into different proportions according to different situations and assign them into several different virtual planes. Each plane is assumed

to follow different inter-domain links which are connected to different egress routers to distant prefix destinations, therefore those split customer traffic can follow different paths to the destination. By doing this, a large amount of customer traffic is split into several parts and spread among different paths, which avoids the potential network congestion if a large amount of customer traffic is assigned to one single link and customer traffic can be more evenly spread among inter-domain links, therefore the network is more stable in this way than not using this technology. The flowchart of the proposed heuristic algorithm is shown in Figure 5-5 and the steps are described here.

Step 1. Sort all the destination prefixes in the descending order of the total amount of customer

traffic with that prefix as destination, which is represented . This strategy gives

i e l

higher priority in the egress point assignment for the prefixes with higher traffic volume in order to handle as much traffic as possible. After adopting this strategy, we choose one prefix each time in the sorted order, which is from the prefix with largest traffic to the prefix with smallest traffic.

Step 2. Before starting our algorithm, we need to perform is a step for pre-selection to make sure all the egress routers ready for selection are all feasible for one single destination prefix. If egress router j satisfies these following constraints below, we can say it is feasible:

If thenjeO ut(k) \ / j e J , m e M , k e K (5.18)

V j e J , m e M , k e K (5.19)

k e K i e l

The first constraint ensures the selected egress router can reach the destination prefix, in other words, the egress router can receive advertisement from the destination prefix. The second constraint indicates all the customer traffic going through the selected egress router j could not exceed its inter-domain link bandwidth capacity. As a result, the pre-selection step ensures that the feasible egress routers are able to reach the destination prefix and also satisfy the bandwidth capacity requirements.

Step 3. Take into consideration that our problem is based on single egress selection (SES) problem; therefore to start with we need to find one single egress router for each plane with the best performance considering our purpose of load balancing. As discussed before, given we aim at load balancing, we focus on minimizing the largest bandwidth

Utilization difference among those inter-dom ain links, which m eans we should load m ore traffic on the links with lower bandwidth utilization and load less traffic on the links with larger bandwidth utilization. Therefore each tim e we are always trying to choose links with lower bandwidth utilization to assign the com ing traffic, and considering the assum ption o f equal bandwidth capacity am ong those links, we are trying to choose the links with larger available bandwidth. The larger the available bandwidth o f inter-domain link, the m ore likely that the egress router connected to this inter-dom ain link will be selected. Therefore for the ni^ plane, the egress router whose connecting inter-dom ain link has the rri'^ largest available bandwidth is selected.

S t a r t

Step 1 :

Sort the destination prefixes in the descending order o f the am ount o f total custom er traffic destined to that p refix ______ Select one prefix each tim e in descending order_____

Step 2:

Pre-selection o f egress routers reachable to destination prefixes and capacity constraint

Step 3 :

C onsider one plane for each tim e The egress ro u ter w hose connecting

inter-dom ain link has the largest available b andw idth is selected

Step 4:

Maye all th e planes been considers

Y e s

N o

Step 5:

E ach inter-dom ain link need m in u s th e p art o f traffic assigned to them after assigning the custom er traffic

T

— Step 6:

Select the next prefix until all destinatiorT .^prefixes have b een co n sid ered .

N o

Yes

Stop

Step 4. Repeat step 3 until all the planes have been considered for one single destination prefix. In case of equal available bandwidth during selection procedure, random selection will be adopted as tie-break. The total customer traffic heading to this prefix will be intelligently split and delivered among those selected egress routers.

Step 5. The traffic splitting ratio / / / ’"* as mentioned in the problem formulation (Section

5.3.3) is then calculated for each egress router. The total customer traffic to one prefix ^ t ( i , k ) are split according to the calculated ratio and spread among the selected

ie l

egress routers accordingly. After assigning the customer traffic, all the available bandwidth of inter-domain links would be changed accordingly. If we use only one plane, i.e. the same as normal BGP routing, it can also fit in our algorithm as a special case. In our results we compare the use of one single plane with the result of using multiple routing planes.

Step 6. Select the next prefix in the descending order of customer traffic amount and repeat Step 2 to 5, until all the destination prefixes have been considered.

5.5 Performance Evaluation