Optimization of IPv 6 Protocol Independent Multicast-Sparse Mode Multicast Routing Protocol based on Greedy Rendezvous Point Selection Algorithm

Forming of the Multicast tree with the best root considered as center selection problem (typically classified as NP-complete type). Alternatively called center Rendezvous Point (RP) due to the direct impact on the multicast routing protocol in terms of the performance. This research article introduces a new compound solution for multicast RP selection called Greedy based RP Selection Algorithm (GRPSA) to select the best RP for PIM-SM multicast routing protocol in IPv6 multicast domain based on Fitness or cost criteria supported by Dijkstra algorithm. The paperwork passes through two phases. First, MATLAB phase used for GRPSA implementation assisted by Fitness calculation to select the best RP called Native-RP. The second phase investigates the performance of GRPSA using QoS metrics compared to another candidate RPs. Validated using the GNS3 emulator for the core IPv6 multicast network and realized using UDP streaming data sourced from Jperf traffic generator via virtual machines at the network edges. The multicast technology implements a very high-efficiency point-tomultipoint data transmission over IP networks (IPv4 and IPv6). The results show GRPSA-RP performs better than other possible RPs by 25.2%, 25.3%, 46.2% and 62.9%, in terms of data received, bandwidth, jitter and loss respectively on average.


INTRODUCTION
The Rapid growth of Internet communications continues to create new services and network applications.Meanwhile, the massive growth in the number of concurrent users who want simultaneously access shared data in corporate intranets with competitive cost drives the global Internet to provide more shared services.In addition, many real-time applications appeared, such as video conferencing, audio, collaborative environments, IPTV (Lloret et al., 2011).Most multicast applications include a source send messages to a selected group of receptors, but the broadcast and unicast network communication are not optimal for this application kind.So appeared technology called IP multicast (Bartczak and Zwierzykowski, 2012;Joseph and Mulugu, 2011).Multicast utilizes network infrastructure efficiently by requiring the server or source to send out a stream of packets only once to the multicast group's address, the nodes in the network take care of replicating the packet to reach multiple receivers only where necessary (Taqiyuddi et al., 2008).Moreover, the multicast can scales to a larger receiver population by not requiring prior knowledge of who the receivers are or how many there are.In addition, multicasting preserves bandwidth on the network and eliminates traffic redundancy.IP multicast available for both versions of Internet Protocols, IPv4 multicast and IPv6 multicast, but due to the low address space of IPv4 cannot provide the necessary support for multicast communication multicast (Bartczak and Zwierzykowski, 2012;Joseph and Mulugu, 2011).It may happen that multicast will be the main driving force behind the widespread use of the IPv6 protocol (Bilicki, 2006).Multicasting also provides enhanced efficiency by controlling the traffic on your network and reducing the load on network devices.The clients on your network are able to decide whether to listen to a multicast address, so packets only sent to where they are required.In addition, multicasting is scalable across different sized networks but is particularly suited to WAN environments.It enables people at different locations access to streaming data files, like a video, film or lives presentation without taking up excessive bandwidth or broadcasting the data to all users on the network.Multicast communication uses multicast distribution tree for data routing.Typically, defined as either source or share based tree.Source-based tree creates separate multicast routing tree for each source, while shared multicast tree creates one tree for the whole group and shared among all sources.In addition, shared tree has an advantage over source tree because only one routing table needed for the group.Shared multicast trees require the selection of a central router called "Core Point" in the case of CBT multicast protocol (Ballardie, 1997) and "Rendezvous point or RP" in the case of PIM-SM (Fenner et al., 2006).
The current paper focuses on shared tree type using PIM-SM in which the right selection of RP router is very important and considered as an NP-complete problem (Wang et al., 2010;Zappala et al., 2002), which advised to be resolved with a heuristic algorithm.Also, an optimized Greedy-based RP Selection Algorithm (GRPSA) is proposed and implemented to achieve the research contribution.It presents an adaptive approach to evaluating the Defects and Features of the multicast tree through considering both cost and QoS factors, by realizing RP selection with the local search algorithm.Bartczak and Zwierzykowsk (2009) described the comparison between different multicast routing protocols for different approaches.It focuses on similarities and differences between PIM-SM protocol that uses source tree and PIM-DM protocol that practice shared tree.The research covered IPv4 multicast only.Wang et al. (2010) suggested tabu search algorithm in PIM-SM multicast routing to select multicast RP because PIM-SM uses shared tree and the main problem is how to determine the position of the RP.The algorithm selects multicast RP by considering both cost and delay.The outcome of Wang's proposed algorithm indicates good performance in multicast cost, ETE delay and having good expansion and practical feasibility.However the paper doesn't consider RP reselection after the dynamic join and leave of group members (Wang et al., 2010).
Youssef Baddi, Mohamed Dafer, introduces D2V-VNS-RPS (Delay and delay variation constrained algorithm based on Variable Neighborhood Search algorithm for RP Selection problem in PIM-SM protocol).This algorithm selects the RP router by considering tree cost, delay and delay variation.The main motivation behind the use of VNS search algorithm was to solve core selection problem using several neighborhoods to explore different neighborhood structures systematically.Simulation results show that D2VVNS-RPS got better average delay compared to other tested algorithms such as TRPS, DDVCA and Random.The algorithm shows the less cost compared with the tested algorithms (Baddi and El Kettani, 2012) but still, the experiments require further validation using emulators behind simulators for further QoS investigation such as throughput and available bandwidth.
Youssef Baddi, Mohamed Dafer, presented 2DV GRASP-RP (Delay and Delay Variation) algorithm based on Parallel GRASP Procedure (Greedy Randomized Adaptive Search Procedure) using PIM-SM multicast routing protocol to select the right RP by considering cost, delay and delay variation functions.As a result, the algorithm shows good performance in terms of multicast cost, end-to-end delay and other aspects compared to other three algorithms; AKC, DDVCA and Tabu RP Selection algorithm (or TRPS) (Baddi and El Kettani, 2013).It focused on IPv4 multicast only.
Compared to the related works, the current paper introduces further investigation to the effect of the right RP selection on the performance of IPv6 multicast domain using QoS metrics such as throughput, available bandwidth, jitter and loss.Besides, a new algorithm tested and a real traffic generator is deployed for validation.

MATERIALS AND METHODS
Construction of IP Multicast tree and identifying the right RP selection criteria could considered as two most significant traffic-engineering factors in PIM-SMmulticast performance.To achieve our optimization target, the following steps discuss the proposed method: Multicast PIM-SM problem and motivation: The essential problem in building multicast routing tree is how to find a low-cost tree covering all group members plus the path from source.This problem was attributing to a Steiner tree problem (Mehlhorn, 1988) in mathematics and considered as an NP-complete problem (Wang et al., 2010;Zappala et al., 2002).PIM-SM divides the multicast tree into two sub-problems: an RP selection problem and a routing selection problem.RP selection using PIM-SM protocol classified into two types: static and dynamic.When static selection is active, the IP address of RP must define on all routers.Unlike static, the dynamic depends on several ways, but the most important is abootstrap router (BSR) (Bhaskar et al., 2008).It works by sending the relevant information comprising priority and IP address of candidate-RP to all routers of the network.This information obtained from candidate-RP that willingness to be an RP.All routers use a hash function to select one RP address based on IP address, priority and hash-mask-length prepared by BSR.However, these steps do not guarantee the selection of the best RP position.In addition, the static and dynamic mechanisms for RP selection designed without care of cost (or distance of multicast group members).These limitations motivate us for further research contribution.

Basic greedy local search algorithm:
A Local Search (LS) algorithm is an iterative search procedure begins from an initially suitable solution and this solution Fig. 1: Pseudo code for basic greedy local search improves progressively through execution a series of local modifications (or moves).The search then transitions to a "neighbor" that is "best" than the current candidate solution according to an objective function.
The search halts when it faces a local optimum solution in relation to the transformations that it considers.The significant restriction of the method: unless one is quite lucky, this local optimum is often a mediocre solution.
In LS, The quality of the solution obtained in addition to the computing times is commonly highly dependent upon the "richness" of the set of transformations (moves) considered at each iteration of the heuristic (Gendreau and Potvin, 2010).The basic LS (Eiben and Smith, 2015) algorithm is described in Fig. 1.

The proposed algorithm GRPSA for RP selection:
The main goal of the proposed algorithm GRPSA is to solve/optimize the RP selection problem in IP multicast domain.The design, implementation and evaluation of GRPSA are achieved by dividing the research work into two phases; MATLAB phase for RP selection with the best tree rout computationally.The last is performance evaluation phase using GNS3-Jperf for testing and validation in terms of QoS metrics such as, jitter, loss and data received (Total throughput)with consideration of available bandwidth.
The rest of this section discusses the MATLAB implementation phase of GRPSA.Many transitions followed to get the best RP selection guided by a greedy approach based on the Fitness function.The formulation of the fitness function depends on assigning two weights; one weight signifies the impact of the distance from the source node to the selected RP, while the second weight determines the importance of the distance between RP and the destination nodes.The designed fitness function combines these two weights together to find the fitness values Eq. ( 1).If the calculated fitness for child-RP is smaller than the corresponding value of the parent-RP, it will select the child-RP as the new parent-RP, else parent-RP is selected (no change in parent RP): where, ‫ݓ‬ ଵ : The weight associated to the impact of distance between source node and RP ‫ݓ‬ ଶ : The weight associated to the impact of distance between RP and a destination node dist ሺ݊1, ݊2ሻ: Shortest path distance between node n1 and n2.
The following outline activities of GRPSA algorithm, which are detailed next: 1. Set multicast topology (including source, receiver and links) 2. Find adjacency matrix of the network.In summary of MATLAB phase, GRPSA produces the best-shared tree root (Native-RP) that optimizes the routes along the paths from source to destinations via the selected native-RP.To provide fairness as well as to maximize the advantages of multicast among receptors.The design of GRPSA assumes that the expected right RP (of the multicast tree) found close to the middle distance (cost) among the source and receptors.Thus, the RP distance weight set to 0.5 in Fitness function.
Figure 2 to 7 depict the running process of the GRPSA algorithm.It starts by generating a random network topology with 20 nodes (Fig. 2).The symbolic representation of graphs as follows: nodes in the figure denote routers, whereas the directed edges stand for directed links.The initial weights between source to RP and between RP and destination are set to two parameters; wSrc2RP = 0.5, wRP2Dest = 0.5 respectively.Node 11 represents source node (or multicast server) marked with a solid square circle, nodes 2,4,13,14,18 and 20 denote destination nodes, marked with a solid triangle and candidate RP nodes are marked with a solid black circle, child RP denoted by.In Fig. 3, the trace for GRPSA implementation shows that node 19 selected as Parent-RP, then node 6 as Child-RP initially and randomly (represents 1 st two rounds).The calculated fitness value for them are (10 and 8.5) respectively using Eq. ( 1).Through preferring the minimum fitness value, node 6 replaces the current Parent-RP (node 19) and starts the next search which leads to promoting Node 3 as a new Child-RP as illustrated in Fig. 4.
However, the calculated fitness of node 3 was (12) which is greater than node 6 fitness (8.5), so node 3 discarded; as a result, node 6 stays as Parent-RP (Fig. 5).Next, GRPSA search for the next Child-RP node, thus node 16 is selected with calculated fitness value (8).Byfitness comparison, node 16 got Parent-RP vocation temporarily (8 less than 8.5), whereas node 9 promoted as new Child-RP as shown in Fig. 6.
Next, GRPSA greedy algorithm continues discovering all possible Parent-RPs of the topology.Finally, node 1 selected by GRPSA as Native-RP since it has a minimum Fitness value (7) as shown in Fig. 7.

GRPSA PERFORMANCE EVALUATION USING GNS3 AND JPERF (QOS VALIDATION)
This section introduces the performance evaluation phase using GNS3 and Jperf.The environment for more complex tested network topology composes 20 virtual Cisco 7200 routers interconnected via serial links as shown in Fig. 8. Six virtual computers realized as VMWARE virtual machines with 1GB RAM and 10GB HDD per virtual machine.End-to-end connection realized using the server as a source for UDP media streaming, then received by clients over theIPv6 multicast network using GNS3.Window 7 is used in virtual machines.

CONCLUSION
This study introduced a new deployment for IPv6 greedy algorithm called GRPSA based on Fitness criteria to solve RP-selection problem for theIPv6 multicast domain.This minimization problem considered as an NP-complete problem that requires further research investigation.The MATLAB implementation test of the proposed algorithm (GRPSA) depicts the behavior and calculation for finding the best or Native-RP choice among other possible RPs.This choice validated using GNS3 supported with Jperf based on QoS metrics.It is found that the right selection of RP router is very significant due to the direct impact on the tree structure rooted by RP.Furthermore, it affects the performance of multicast routing protocol.Consequently, the received quality and quantity of multicast streaming traffic shows variations in data received(Total throughput),Bandwidth (Average),jitter anddatagram loss, with the distinguished result using GRPSA-RP comparatively.Finally, to save the cost calculations, it could mix the GRPSA target in selecting the best RP for IPv6 multicast with anexisting routing protocol such as OSPF as future work.
3. Compute shortest path (using Dijkstra algorithm) between every pair of nodes in the network 4. Randomly select an initial RP node (Parent-Rp) from all network nodes for the 1 st round of the algorithm.The selected RP node should not belong to the source or destination nodes. 5. Then calculates the fitness value for the selected RP using Eq.(1).6. RP mutation: It generates (Child-RP) from Parent-RP.The mutation operator depends on the proposed fitness function.7. Calculate fitness of Child-RP.8. Compare Parent-RP with Child-RP and select the best one according to the fitness values.9. Iteration = iteration + 1. 10.If (iteration<max iteration) go to step 6 else end.

Table 1 :
Trace for GRPSA rounds to select the best RP based on fitness using Eq. 1 (Multicast topology in Fig.2to 7)

Enable IPv6 and Multicast routing: • Enable IPv6 Unicast routing:
IPv6 multicast network topology (one source and six receivers) using UDP streaming over GNS3 and JPERF forwarding (RPF) check, which identifies the closest interface of the multicast router to the source.Thus, OSPF unicast protocol is used in the tested topology.The GNS3setting and configuration steps for the tested IPv6-multicast network topology are listed as follows:Moreover, the configuration commands (fragment) of IPv6 addressing, OSPF and clock rate for Router 1 interfaces (serial and Ethernet) looks like: