Multicast Routing Protocols over Ad hoc Networks - Dr. Ayman El

Submitted to Mathematics Department, Faculty of Science, Minufiya University In partial fulfillment of ..... Show how node n1 join to network by using MCT. 101.
3MB taille 13 téléchargements 391 vues
Faculty of Science

Multicast Routing Protocols over Ad hoc Networks A THESIS Submitted to Mathematics Department, Faculty of Science, Minufiya University In partial fulfillment of the requirements for (M. Sc.) in Computer Science

by

Ibrahim Bayomy Ibrahim Omara Demonstrator of Computer Science, Mathematics Department, Faculty of Science, Minufiya University

Supervisors Ass.Prof/ Ayman EL-SAYED

Ass.Prof / Mohammed Amin Ass.Prof.of Computer science, Faculty of Science, Minufiya University [

Ass.Prof.of Computer science & Engineering Faculty of Electronic Engineering, Minufiya University [

]

]

Examiners Committee Prof.Dr. Imane Ali. Saroit Ismail

Prof. Dr. Abdalla A. El_Daoushy

Vice Dean for Education & Student Affairs, Faculty of Computers and Information, Cairo University. [

Prof. of Computer Science, Institute of National Planning.

[

]

Ass.Prof / Mohammed Amin Ass.Prof.of Computer science, Faculty of Science, Minufiya University [

]

2012

]

Acknowledgment

First of all , I am deeply thankful to Allah for all the gifts he has given to me and for everything occurred or to be occurred in my life.

This research would not have come up without the support of some very special people. Above all, I would like to offer my heartfelt thankfulness to Ass.Prof. Dr. Mohammed Amin and Ass.Prof. Dr. Ayman EL-SAYED for supervising thesis and support me with their time and experience. I would like to extend my gratitude to Prof. Dr. Mohammed Abd Ellatiefe Ramadan

Also , my deep thanks to all friends, staff and colleagues in Mathematical Department especially.

This work is presented to all my family especially my parents’ , my wife's , my girl and to my brother's .They have been doing their best to help and encourage me towards success.

I

ABSTRACT Mobile Ad hoc Network (MANET) is a collection of wireless mobile nodes (or routers) dynamically forming a temporary network without the use of any existing network infrastructure or centralized administration. The routers are free to move randomly and organize themselves arbitrarily; thus, the network’s wireless topology may change rapidly and unpredictably. Application of ad hoc networks includes Personals Area Networks

(PAN), military applications, mobile conferencing, Bluetooth and wireless sensor networks. Multicasting is defined as the transmission of datagram’s to a group of hosts identified by a single destination address and hence is intended for group-oriented computing. Application of Multicasting includes Video Conferencing, Push Technologies and distributed Systems…etc. Recent researches take the advantage of building Multicast Routing Protocols on-demand mesh topology rather than tree topology. In mobile ad hoc networks, there are many multicast protocols that apply mesh topology and on-demand concept as "On-Demand Multicast Routing Protocol (ODMRP)", Forwarding Group Multicast

Protocol (FGMP) …etc. The difficulties of MANETs are the scarcity of bandwidth, short lifetime due to power consumption dynamic topology caused by nodes mobility. This problem put in force to simple design. We discussed the architecture of different algorithms as Shortest Path Trees (SPT) that is used in most recent Multicast routing protocols as On-Demand Multicast Routing Protocol “ODMRP”, Minimum Spanning Trees (MST) and Minimum Cost Trees (MCT). This thesis, introduces multicast routing algorithm to reduce the cost of bandwidth of MANET. We determined the minimum multicast tree by finding the Minimum Number of Transmission (MNT) using Minimum Cost Tree (MCT) and virtual mesh based. The proposed algorithm compared to the Shortest Path Tree (SPT) algorithm within On-Demand Multicast Routing Protocol “ODMRP”, the one that most multicast routing protocols in MANET are using, and found to be superior upon bandwidth, throughput, and faster join. II

CONTENTS Chapter 1: Introduction to Mobile Ad Hoc Networks ‘MANETs’ Characteristics, Applications, and Challenges

1

1.1 Introduction

2

1.2 Wireless networks

3

1.2.1 Infrastructure Based Networks

5

1.2.2 Infrastructureless Based Networks

7

1.3 Difference between Cellular and Ad hoc Wireless networks

9

1.4 Characteristics of Mobile Ad hoc Networks

9

1.4.1 Mobility and Network Structure

10

1.4.2 Unreliable for Any Applications

10

1.4.3 Bandwidth Constrains

10

1.4.4 Limited Energy Resources

11

1.5 Applications of Mobile Ad hoc Networks

11

1.5.1 Military Applications

11

1.5.2 Personal Area Network (PAN)

12

1.5.3 Health Care Applications

13

1.5.4 Academic Environment Applications

13

1.5.5 Industrial Environment Applications

14

1.5.6 Search and Rescue Applications

14

1.5.7 Bluetooth

15

1.6 Types of communications

16

1.6.1 Unicast communication

16

1.6.2 Multicast communication

17

1.6.3 Broadcast communication 1.7 Research Challenges of MANETs

18 19

1.7.1 Quality of Service "QoS"

19

III

CONTENTS 1.7.2 Scalability

19

1.7.3 Power Constrains

20

1.7.4 Security

21

1.7.5 Connectivity with the Internet

23

1.7.6 Node Cooperation

23

1.7.7 Transmission Control Protocol (TCP) 1.7.8 Physical Layer and MAC Constraints

24 25 27

1.8 Thesis Objective and Organization

Chapter 2: Routing Protocols for Mobile Ad hoc Networks

28

2.1 Introduction 2.2 Challenges of Routing Protocols over MANETs 2.3 Unicast Routing in MANETs

29 29 30 31 32 33

2.3.1 Proactive Routing Protocols 2.3.2 Reactive Routing Protocols 2.4 Multicast Routing in MANETs

2.4.1 Classifications of multicast routing protocols over MANETs

34

2.4.1.1 Tree-based protocols

34

2.4.1.2 Mesh-based protocols

36

2.4.1.3 Hybrid Routing Protocols

36

2.4.2 Challenges and Issues of Multicast Routing Protocols

37

2.4.2.1 Efficiency

37

2.4.2.2 Robustness

38

2.4.2.3 Scalability

39

2.4.2.4 Quality of Service (QoS)

39

2.4.2.5 Security

40

2.4.2.6 Power control

40

2.5 Broadcast Routing in MANETs

2.5.1 Fully coordinated Broadcasting Algorithms 2.5.2 Non-coordinated Broadcasting Algorithms 2.5.3 Partially Coordinated Broadcasting Algorithms 2.6 Summary

40 41 41 42 42

IV

CONTENTS Chapter 3: Overview Multicast Routing Protocols for MANETs

43

3.1 Introduction

44

3.2 Tree-Based Multicast Routing Protocols

45

3.2.1 Ad hoc Multicast Routing Protocol utilizing Increasing id-numberS (AMRIS) 3.2.2 Bandwidth-Efficient Multicast Routing Protocol

46 49

3.2.3 Multicast Routing Protocol Based on Zone Routing

53

3.2.4 Associativity-Based Ad Hoc Multicast Routing

56

3.3 Mesh-Based Multicast Routing Protocols

59

3.3.1 On-Demand Multicast Routing Protocol (ODMRP)

60

3.3.2 Dynamic Core based Multicast routing Protocol(DCMP)

62

3.3.3 Forwarding Group Multicast Protocol (FGMP)

67

3.4 Stateless Approaches

68

3.4.1 Differential Destination Multicast

69

3.4.2 DSR Simple Multicast and Broadcast Protocol

70

3.5 Summary

Chapter 4: The Proposed Multicast Routing Algorithm

71 72

4.1. Introduction

73

4.2 Performance Evaluation Criteria

74

4.3 Graph Theory

75

4.3.1 Shortest Path Tree Algorithm

77

4.3.2 Minimum Spanning Tree Algorithm

79

4.4 The Proposed algorithm

82

4.4.1 Algorithm function

82

4.4.2 Minimum Cost Tree Algorithm

85

4.5 Related multicast routing protocol

4.5.1 An Example of ODMRP

86 88

4.5.1.1 Soft State

89

4.5.1.2 ODMRP Data Structure

90

4.5.1.2.1 Member Table

90

4.5.1.2.2 Route Table

90

4.5.1.2.3 Forwarding Group Table

91 91

4.6 Our Proposal " ODMR-MCTP "

V

CONTENTS

4.7 Summary

94

Chapter 5: Simulations and Performance Evaluation

95

5.1 Software design

96

5.2 Multicast Routing Protocol

97

5.3 Simulation Parameters

97

5.4 Performance Parameters Evaluation

98

5.4.1 Bandwidth

99

5.4.2 Throughput

99

5.4.3 Faster join

100

5.5 Results and Discussion

101

5.5.1 Needed Bandwidth

102

5.5.2 Throughput

104

5.6 Summary and conclusion

108

Chapter 6: Conclusions and Future Work

109

6.1 Conclusions

110

6.2 Future Work

111

6.3 Outcome from the Thesis

111

REFERENCES

112

VI

LIST OF FIGURES Figure 1.1

Types of wireless Networks.

5

Figure 1.2

An Infrastructure-Based Network.

6

Figure 1.3

Mobile host movement and its communication with base stations range areas in infrastructure based networks.

6

Figure 1.4

Infrastructureless-Based Networks.

8

Figure 1.5

Unicast concepts in deliver data packet to 10 recipients.

16

Figure 1.6

Multicast communications.

17

Figure 1.7

Broadcast communications.

18

Figure 1.8

Ad Hoc Networking with Mobile IP

23

Figure 1.9

Hidden-Terminal Problem

24

Figure 1.10

Exposed-Terminal Problem

25

Figure 2.1

Tree-based topology.

35

Figure 2.2

Mesh-based topology

36

Figure 3.1

Node joining the multicast tree in AMRIS.

47

Figure 3.2

Multicast tree initialization in BEMRP.

51

Figure 3.3

Multicast tree maintenance in broadcast-multicast scheme.

52

Figure 3.4

Multicast tree maintenance in local rejoin scheme.

52

Figure 3.5

Multicast tree optimization in BEMRP.

53

Figure 3.6

Multicast tree initialization in MZRP.

54

Figure 3.7

Multicast tree maintenance in MZRP.

55

Figure 3.8

Multicast tree maintenance in MZRP.

56

Figure 3.9

Multicast tree initialization in ABAM.

57

Figure 3.10

Multicast tree maintenance in ABAM.

58

Figure 3.12

An example of ODMRP

61

Figure 3.13

Mesh Topology in DCMP.

64

Figure 3.14

Topology in DCMP.

66

Figure 3.15

Mesh topology in FGMP.

67

Figure 4.1

Directed graph and undirected graph

76

VII

LIST OF FIGURES Figure 4.2

Continues links show Shortest Path Tree (SPT) graph.

78

Figure 4.3

Flow chart to Shortest Path Trees “SPTs”

79

Figure 4.4

Continues links show Minimum Spanning Tree

81

Figure 4.5

Show Examples of Minimum Spanning Tree

81

Figure 4.6

Minimum Spanning Trees “MSTs”

82

Figure 4.7

Show different distance (bandwidth) between SPT and MCT

83

Figure 4.11

Flow chart to Minimum Cost Tree “MCT”

85

Figure 4.12

Mesh based topology

87

Figure 4.13

Mesh Topology in ODMRP. and initialization tree

89

Figure 4.14

Mesh initialization by source in ODMR-MCTP

92

Figure 4.15

Join Reply control packets propagation in ODMR-MCTP .

92

Figure 4.16

93

Figure 5.1

Final multicast information that each node requires to send and forward data in ODMR-MCTP Show how node n1 join to network

Figure 5.2

Show how node n1 join to network by using SPT

101

Figure 5.3

Show how node n1 join to network by using MCT

101

Figure 5.4

Needed Bandwidth at number of destinations =5

102

Figure 5.5

Needed Bandwidth at number of destinations =10

103

Figure 5.6

Needed Bandwidth at number of destinations =15

104

Figure 5.7

Throughput at number of destinations =5

105

Figure 5.8

Throughput at number of destinations =5

106

Figure 5.9

Throughput at number of destinations =5

107

VIII

100

LIST OF TABLES 9

Table 4.1

Illustrated the major difference between cellular and ad hoc networks. Format of Member Table.

Table 4.2

Format of Route Table.

92

Table 4.3

Format of Forwarding Group Table.

93

Table 5.1

Needed Bandwidth at number of destinations =5

102

Table 5.2

Needed Bandwidth at number of destinations =10

103

Table 5.3

Needed Bandwidth at number of destinations =15

104

Table 5.4

Throughput at number of destinations =5

105

Table 5.5

Throughput at number of destinations =10

106

Table 5.6

Throughput at number of destinations =15

107

Table 1.1

IX

92

ABBREVIATIONS ABAM

Associativity-Based Ad Hoc Multicast Routing Protocol

ACK

Acknowledgment

AMRIS

Ad Hoc Multicast Routing Protocol utilizing Increasing ID Numbers

AMRoute

Ad Hoc Multicast Routing Protocol

ADOV

Ad Hoc On-Demand Distance Vector

BEMRP

Bandwidth-Efficient Multicast Routing Protocol

BSs

Base Stations

CAMP

Core-Assisted Mesh Protocol

CBT

Core Based Tree

DCMP

Dynamic Core-Based Multicast Routing Protocol

DDM

Differential Destination Multicast Routing Protocol

DIS

Distributed Interactive Simulation

DSR

Dynamic Source Routing

DSDV

Destination-Sequenced Distance-Vector

DVMRP

Distance Vector Multicast Routing Protocol

ELBACTD

Extending the Littaral Battle-Space Advanced Concept Technology Demonstration

FGMP

Forwarding Group Multicast Protocol

GHz

gigahertz

GPRS/UMTS IP

General Packet Radio Service/Universal Mobile Telecommunication System Internet Protocol

JIT

Just-In-Time

LAN

Local Area Network

LAM

Light Weight Adaptive Multicast

LGT

Location Guided Tree Construction Algorithm for Small Group Multicast

LOS

Line-Of-Sight

X

ABBREVIATION LPR

Low-cost Packet Radio

MANET

Mobile Ad Hoc Networking

MAC

Medium Access Control

MAODV

Multicast Ad Hoc On-Demand Distance Vector Routing Protocol

MCEDAR

Multicast Core-Extraction Distributed Ad Hoc Routing Protocol

MHs

Mobile Hosts

MBQ

Multicast Broadcast Query

MZRP

Multicast Routing Protocol Based on Zone Routing Protocol

NSMP

Neighbor supporting Ad Hoc Multicast Routing Protocol

ODMRP

On-Demand Multicast Routing Protocol

OLSR

Optimized Link State Routing

PAN

Personal Area Network

PC

personal computer

PDA

Personal Digital Assistant

PLBM

Preferred Link-Based Multicast Protocol

QOS

Quality Of Service

RBM

Reservation Based Multicast Routing Protocol (RBM)

TCP

Transport Control Protocol

TBRPF

Topology Dissemination Based on Reverse Path Forwarding

TTL

Time-To-Live

TORA

Temporally Ordered Routing Algorithm

UTP

Unshielded Twisted Pair

WBM

Weight-Based Multicast Protocol

WLAN

Wireless Local Area Networks

WSN

Wireless Sensor Networks

WWAN

Wireless Wide Area Network

XI

Chapter One Introduction To Mobile Ad Hoc Networks Characteristics, Applications and Challenges

Chapter 1

INTRODUCTION

Chapter One

Introduction To Mobile Ad Hoc Networks Characteristics, Applications and Challenges 1.1 Introduction The main aim of computer communication was to exchange data between two computers. Recently, the aim of computer communication is to make groups of computers

to

communication".

communicate This

with

include

one

video

another, conference,

the

so-called

E-mail

,

“groups multicast

communication …etc [1]. Networking is one of the most interesting communication system and computer science. It enables individual users who utilize several platforms and share information with others from their current locations. Users cannot enjoy with this service, if they alter their locations. This termed as "Wired Networking" which consists of several personal computer, (PC) for short, connected via wired cables as Unshielded Twisted Pair (UTP) cables. More recently, wireless technology has received a great attention. Wireless communications, virtually, allow reaching every location on the earth. Millions of people exchange data or information every day using cellular telephones, Laptops, various types of Personal Digital Assistants (PDAs), and other wireless technology. After the success of wireless communications for exchanging information, wireless technology is beginning to apply to the realm of computing [2].

-2-

personal and business

Chapter 1

INTRODUCTION

This chapter is divided into eight sections. The second and the third sections discuss types of networks and give the differences between cellular and ad hoc wireless networks. The four and the five sections illustrate characteristics of mobile ad hoc networks and applications of mobile ad hoc networks. The six and the seven sections contain types of communications and research challenges of MANETs. Finally, section eight gives thesis objectives and organization.

1.2 Wireless Networks Wireless networking in recent years is becoming an integral part of residential, commercial and military computing applications. The elimination of unsightly and cumbersome wiring, and the increase in mobility made possible by wireless networks are only some of the advantages that have led to the widespread acceptance and popularity of such networks. The rapid worldwide growth in cellular telephone industry and the number of subscribers demonstrate that wireless communication is a robust and viable data and voice transport mechanism.

Wireless Mesh Networks are low cost access networks built on cooperative routing over a backbone composed of stationary wireless routers. These low cost internet access networks, provide flexibility, mobility support and are easy to deploy in many exciting applications [3].

Recent developments in ad hoc wireless networking have eliminated the requirement of fixed infrastructure (central base station as required in cellular networking) for communication between users in a network and expanded the horizon of wireless networking. These networks termed as mobile ad hoc networks (MANET) are a collection of autonomous terminals that communicate with each other by forming a multihop radio network and maintaining connectivity in a decentralized manner. In particular MANET, and wireless sensor networks (WSNs) are finding increasing applications in communication between soldiers in a -3-

Chapter 1

INTRODUCTION

battlefield, emergency-relief-personnel coordinating efforts, earthquake aftermath, natural disaster relief, wired homes, and in today’s highly mobile business environment.

Wireless communication is much more difficult to achieve than wired communication because the surrounding environment interacts with the signal, blocking signal paths while introducing noise and echoes. Consequently, poor quality connections are observed as compared to wired connections: lower bandwidth, high error rates and more frequent spurious disconnections. Wireless communications can also be degraded because of mobility and inefficient battery power control. Users may enter regions of high interference or out-step the coverage of network transceivers. Unlike typical wired networks, the number of devices in a cell varies dynamically, and large concentrations of mobile users, such as at conventions and public events, may overload network capacity.

MANET and WSNs offer many challenging problems to solve, such as routing protocols in the presence of topology changes, Quality of Service (QoS) constraints, and so on. Separate standards and protocols are being developing for cellular, ad hoc wireless and sensor networks.

Wireless networks can be divided mainly into two broad categories, based on how the network is constructed and the underlining network architecture [4]. Figure 1.1 illustrates these two categories and examples for each one.

-4-

Chapter 1

INTRODUCTION

Wireless Networks

Infrastructure Based Networks

Infrastructureless Based (Ad Hoc) Networks

EX: -Cellular Networks EX: -Bluetooth Networks -WWANs -Infrared Networks - WLANs Figure 1.1 Types of wireless Networks

1.2.1 Infrastructure Based Networks The first type of wireless networks is "Infrastructure Based Network.” It consists of two parts: a wired (fixed) and a wireless part as illustrated in Figure 1.2. The wired part is typically a hierarchy of wide area and local area wired networks, used as the backbone networks. The wired backbone connects between special switching wireless nodes called "Base stations". A base station is a computing device equipped with a wireless interface that enables it to connect directly to a mobile host or others within the coverage area of the base station. A mobile host within infrastructure networks connects and communicates with the nearest base station that is within its communication range. A base station uses the wired network to connect to the other base stations. Hence, base stations act as an interface or gateway (i.e. router or relay) between the wireless part and the wired part. As the mobile host travels out the range of one base station and into the range of another base station, a handoff occurs from the old base station to the new base station. Then, the mobile host is able to continue communication seamlessly throughout the network as illustrated in Figure 1.3.

-5-

Chapter 1

INTRODUCTION

Good examples of infrastructure-based network type are wireless cellular networks, wireless wide area networks (WWANs), and wireless local area networks (WLANs). Base station

Wired Backbone

Mobile host

Figure 1.2 an Infrastructure-Based Network

2

a.

1

Mobile host communication only with base station 1

b.

2

c.

1

2

Mobile host move to range of base station 2

1

Mobile host move out of ranges of base stations 1and 2

Figure 1.3 Mobile host movement and its communication with base stations range areas in infrastructure based networks -6-

Chapter 1

INTRODUCTION

1.2.2 Infrastructureless Based (Ad Hoc) Networks The second type of wireless networks is a Mobile Ad hoc NETworks (MANETs) [5]; that is one comes together as needed, not necessarily with any support from the existing infrastructure or any other kind of fixed stations. We can formalize this statement by defining an ad hoc (ad-hoc or ad hoc) network as an autonomous system of mobile hosts (MHs) (also serving as routers) connected by wireless links, the union of which forms a communication network modeled in the form of an arbitrary communication graph. This is in contrast to the well-known single hop cellular network model that supports the needs of wireless communication by installing base stations (BSs) as access points. In these cellular networks, communications between two mobile nodes completely rely on the wired backbone and the fixed BSs. In a MANET, no such infrastructure exists and the network topology may dynamically change in an unpredictable manner since nodes are free to move. Example of Infrastructureless based network type is Mobile Ad hoc Network (MANET) that is collection of wireless mobile nodes (or routers) dynamically forming a temporary network without the use of any existing network infrastructure or centralized administration. The routers are free to move randomly and organize themselves arbitrarily; thus, the networks wireless topology may change rapidly and unpredictably. Such a network may operate in a stand-alone fashion, or may be connected to the Internet. Multihop, mobility, large network size combined with device heterogeneity, bandwidth, and battery power constraints make the design of adequate routing protocols a major challenge. Some form of routing protocol is in general necessary in such an environment, because two hosts that may wish to exchange packets might not be able to communicate directly.

-7-

Chapter 1

INTRODUCTION

Figure 1.4 shows an example of mobile Ad hoc network and its communication topology [6].

5

3

1 5

2

1

4

2

3 ٤ Network topology Figure 1.4 Infrastructureless-Based (Ad Hoc) Networks

An ad hoc network might consist of several home computing devices (such as laptop). Each laptop will be able to communicate directly with other nodes that locate in its transmission range. A good example; shown in figure 1.4, illustrating connection between (1, 2, and 3),(3 and 4), and (1 and 5). But for communicating with laptops that located beyond the transmission range of specific laptop, it needs to use intermediate laptops to relay messages hop by hop. Consider that laptop 4 needs to communicate with laptop5, which locate out of laptop 4 range. We see from figure 1.4 that laptop 5 has a direct wireless link with laptop 1, which is considered as the first hop to achieve laptop "4--5" communication link. Laptop 1 also has its own link with laptop 3 (the second hop) which finally has a link with laptop 4 (the third hop), so laptop 4 needs three wireless links (i.e. three hops) to communicate with laptop 5. In the previous wireless links laptop 1 and laptop 3 act as routers or relays in that wireless links.

-8-

Chapter 1

INTRODUCTION

1.3 Differences between Cellular and Ad hoc Wireless Networks Table 1.1, illustrates the differences between cellular and ad hoc wireless networks [7]. Point of comparison

Cellular networks

Ad hoc networks

Infrastructure networks

Infrastructureless networks

Fixed, prelocated cell sites and base station

No base station, and rapid deployment

Topology

Static backbone network topology

Highly dynamic network topologies with multihop

The environment

Relatively caring environment and stable connectivity

Hostile environment (noise, losses)and irregular connectivity

Planning

Detailed planning before base station can be installed

Ad hoc network automatically forms and adapts to changes

Cost of setup

High setup costs

Cost effective

Time of setup

Large setup time

Less setup time

network architecture

1.4 Characteristics of MANETs A Mobile Ad hoc Network is an autonomous system of mobile nodes with routing capabilities connected by wireless links, the union of them forms a communication network. Either a mobile ad hoc network can be a standalone entity or it can be an extension of wired network. A wireless ad hoc network has unique characteristics that necessitate special solutions. Some of these differences are dynamic topology changes, unreliable, limited bandwidth, and limited energy resources [8]. So, the wealth of knowledge in the area of conventional networking can not apply directly to wireless ad hoc networks.

-9-

Chapter 1

INTRODUCTION

1.4.1 Mobility and Network Structure Mobile ad hoc networks are of a high dynamic topology due to random movement of the nodes anytime, anywhere and at different speeds. In a high mobility environment, multicast routing protocol should be robust enough to react quickly with the mobility of the nodes, and should be adapted to topological changes in order to avoid lossing a data packet during the multicast session. This creates the so-called low Packet Delivery Ratio (PDR: the number of non duplicate data packets successfully delivered to each destination versus the number of data packets supposed to receive at each destination) [2]. In an environment of MANETs with limited capacity, it is very important to minimize control overhead while creating and maintaining the multicast group topology.

1.4.2 Unreliable for Any Applications Wireless physical channels in ad hoc networks are very noisy and their bit error rates are much higher than an ordinary cable interface. Hence, packet losses are common, and network protocols cannot designed on the assumption of perfect transmissions or receptions. In particular, a protocol should be equipped with mechanisms to recover from frequent packet losses. The corrupted packets are not only the data packets but also the control packets of network protocols rely on to coordinate network operation [8].

1.4.3 Bandwidth Constrains Bandwidth is limited in mobile ad hoc networks, in contrast with wired and wireless networks. Also, the available bandwidth for wireless networks is much less than that of wired networks. The protocol overhead in wireless networks is much higher in order to be indemnify for the unreliable channel and to maintain the network topology, which is required for routing. - 10 -

Chapter 1

INTRODUCTION

1.4.4 Limited Energy Resources In mobile ad hoc networks, the mobile hosts operate on battery power that consumed by two ways: First, they might transmit their own data to a desired receiver or destinations. Second, a mobile host might offer itself as an intermediate forwarding node for data exchanging between two other hosts in the network. Thus, the limited energy supply necessitates avoidance of energy waste and energy efficiency of a network can achieved by the collective collaboration of the physical layer, medium access control layer, network layer and upper layers.

1.5 Applications of Mobile Ad hoc Networks There are many applications of MANETs, as Personal Area Network (PAN), military applications, Health Care Applications, Academic Environment Applications,

Industrial

Environment

Applications,

Search

and

Rescue

Applications, and Bluetooth [7].

1.5.1 Military Applications Primary application for ad hoc network is considered military communication. The military environment requires high survivability, fast recovery from failure, reliable communication, and support for real time traffic, but lacks of a fixed network infrastructure. A platoon of soldiers or a fleet of ships may need to establish an ad hoc network. Usually, there are many small networks and the number of networks are larger than the number of nodes per network [2].

- 11 -

Chapter 1

INTRODUCTION

1.5.2 Personal Area Network (PAN) The traditional mobile network is extended from a network, a mobile networks extension can be seen of Bluetooth-based personal area network into the user domain. Bluetooth personal area network could use the General Packet Radio Service/Universal Mobile Telecommunication System (GPRS/UMTS) mobile phone as a gateway to the Internet or to cooperate with Internet Protocol (IP) network [4]. The elements of traffic load in the network, the aggregate traffic of the personal area network would typically exceed that of the mobile phone. The personal area networks are interconnected via laptop computers with links of Bluetooth. In addition, two of the personal area networks are connected to an internet protocol backbone network: first via a single phone. Second, via a local area network access point A personal area network also contains many access types technologies distributed among its devices, which exploit a mobile ad hoc functionality in the personal area network. For example, Laptop computers could have a wireless local area network interface, which provides access of network when using the computer indoors. Thus, the personal area network would use or utilize from total group or collection of all access technologies existing in tools of the personal area network. It is highly expected that the PAN concept matures will allow new devices and new access technologies to be incorporated into the PAN framework. This avoid the need to create hybrid devices, such as a PDA mobile phone combination, because the PAN network will instead allow for wireless integration. It is noticed that the close range radio technology, such as Bluetooth, is a key enabler for introducing the flexibility represented by the PAN concept.

- 12 -

Chapter 1

INTRODUCTION

1.5.3Health Care Applications For professional health care authority, it is much better position to make ready a treatment plan and diagnose for an individual, if they have video information rather than just audio information. Video information may used in selecting the reaction and seeing the enough arrangements for the patient. Such as the level of tiredness of the patient can be selected better with visual video information than with other descriptive information or just audio. Ad hoc networks can be used in exchanging multimedia information between a patient and health care facilities, which is very helpful in critical and emergency situations [7].

1.5.4 Academic Applications Ad hoc network is a collection of mobile nodes or routers, which can be communicated by wireless communication that can be established between the instructors and the students enrolled in their classes. Such instructors can easily use a suitable mechanism to distribute homework's and handouts to all students in the classes. In most faculties one can use either ad hoc networks or present facilities and the students can exchange data or information by a click on a mouse or a key on the keyboard of computers using wireless communication. So, most of the faculties use wireless technology. So, such environment provides faculty and students with a suitable environment to react and complete their mission [7].

- 13 -

Chapter 1

INTRODUCTION

1.5.5 Industrial Applications Wireless communication networks are better than wired networks in most industrial or corporate sites since wired communications use cables that lead to cluttering and crowding of space, that refers to the effect of reliability [7]. Wireless communication technology removes a lot of the pervious drawback of wired networks. While ad hoc networks add many attractive characteristics as movement of devices or mobility and the devices can be easily relocated.

1.5.6 Search and Rescue Applications Ad hoc wireless networks can be used in search and rescue operations, particularly in an earthquake, hurricane, or similar disaster, where disasters leave a large population without communication capabilities and infrastructures. In such cases, ad hoc wireless networks are best solution to these environments. They can be established without much more infrastructures and can be provided communications among various relief organizations for coordinating their rescue operations [2]. Also, ad hoc networks can be used in searching for survivors by using robots that communicate with each other using wireless links. So, the gathered information by this network can be analyzed and processed, and can help to read directly where needed.

- 14 -

Chapter 1

INTRODUCTION

1.5.7 Bluetooth No discussion about the application of ad hoc networks can be done without mentioning the emerging revolutionary wireless technology: Bluetooth. Bluetooth revolutionizes the personal connectivity market by providing freedom from wired connections, enabling low cost short range links between personal, portable, and hand held electronic devices. Bluetooth devices do not depend on infrastructure services for communication; hence, the technology of ad hoc networks is the solution. In fact, Bluetooth is considered the strongest candidate to provide the cheap short-range radio links necessary to enable personal area networks (PANs). Features of Bluetooth technology are as follows [7]:  Operates in the2.56-gigahertz (GHz) ISM band, which is globally available.  Can support up to eight devices in a small network .  10 m to 100 m range.  Low cost.  Extended range with external power amplifier (100 meters).

- 15 -

Chapter 1

INTRODUCTION

1.6 Types of Communications Various types of communication can be differentiated, depending on the number of senders and receivers involved, as Unicast Communications, Multicast Communications and Broadcast Communications [1].

1.6.1 Unicast Communication Unicast

is

equivalent

to

traditional

point-to-point

communication

(1:1 communication) in which there is exactly one sender and one receiver. Consequently, user data is exchanged on a unidirectional basis (as shown in Figure 1.5). A bidirectional exchange of user data therefore requires the existence of two unicast communications. Note that, although user data flows in only one direction in a unidirectional communication, the control data required for the technical control of a communication can be transmitted in the reverse direction. This means, for example, that the receiver can acknowledge to the sender that the data has been received correctly.

Not receivers

10 unicast connection

Source

NR

NR

Network connections

R1 R2 Receivers

10 copy of the same data packets

R10 NR

Figure 1.5 Unicast concepts in deliver data packet to 10 recipients - 16 -

Chapter 1

INTRODUCTION

1.6.2 Multicast Communication In a multicast communication, a single data source transmits user data to one or more than one receiver. The case of a single receiver represents the special case of unicast. This therefore constitutes an extension of unicast communications and is referrees as 1: n communication. In addition, there exist another type of multicast is many of senders to many of receivers, is referred to as m : n. Figure 1.6 shows an example of multicast 1: n. Many applications are base on multicast communication such as Push Technologies, Distributed Databases and Interactive Multimedia Applications.

Not receivers

NR

NR

One unicast connection

Network connections

Source

R1

R2

One copy of the same data packets

R10

NR

Figure 1.6 Multicast communications

- 17 -

Receivers

Chapter 1

INTRODUCTION

1.6.3 Broadcast communication Broadcast is another type of communication and is comparable to multicast since only a single sender exists. However, with broadcast, there is no restriction with respect to the group of receivers (as shown in Figure 1.7); data is sent to all potential receivers. Anyone who is equipped with the required device is capable of receiving the data, with the only restriction being whether the device is activated (such as a radio being turned on). In this sense, broadcast is a simplified version of multicast because it does not require the establishment, addressing, or administration of a group. Television and radio as operated traditionally are two everyday examples of broadcast communication. Not receivers

NR

NR

One unicast connection

Network connections

Source

R1

R2 Receivers

One copy of the same data packets (signals)

R10

NR

Figure 1.7 Broadcast communications - 18 -

Chapter 1

INTRODUCTION

1.7 Research Challenges of MANETs Ad hoc networking is a popular field of study during the last few years. The challenge in the design of protocol architectures for MANETs is efficient convey information using an unreliable physical channel within a highly dynamic set of mobile, limited-range, limited energy, half duplex radios without the support of any infrastructure. This section outlines the major problems and challenges of MANETs.

1.7.1 Quality of Service "QoS" Mobile ad hoc networks (MANETs) consist of wireless mobile nodes without reliance on fixed base stations or wired infrastructures. This Infrastructureless nature of MANETs poses an extreme challenge for the design of conventional and Quality of Service (QoS) routing protocols [9]. Quality of service (QoS) is a measure of the level of service that a particular data gets in the network [10]. The network is expected to guarantee a set of measurable pre specified service attributes to the users in terms of end-to-end performance such as delay, bandwidth, probability of packet loss, delay variance (jitter), and so forth. Power consumption is another QoS attribute, which is more specific to mobile ad hoc networks (MANETs).

1.7.2 Scalability Most of the visionaries depicting applications, which are anticipated to benefit from the ad hoc technology, take scalability as granted. Imagine, for example, the vision of ubiquitous computing where networks can be of "any size". However, it is unclear how such large networks can actually grow.

- 19 -

Chapter 1

INTRODUCTION

Ad hoc networks suffer, by nature, from the scalability problems in capacity. To exemplify this, we may look into simple interference studies. In a non-cooperative network, where omni-directional antennas are being used, the throughput per node decreases at a rate 1/sqrt(N) , where N is the number of nodes [11]. That is, in a network with 100 nodes, a single device gets, at most, approximately one tenth of the theoretical network data rate. This problem, however, cannot be fixed except by physical layer improvements. If the available capacity sets some limits for communications, it will do the protocols. Route acquisition, service location and encryption key exchanges are just few examples of tasks that will require considerable overhead as the network size grows. If the scarce resources are wasted with profuse control traffic, these networks may be didn't seen. Therefore, scalability is a crucial research topic and has to be taken into consideration in the design of solutions for ad hoc networks.

1.7.3 Power Constrains In many kinds of mobile ad hoc networks, the mobile hosts operate on battery power that is consumed by two ways. First, they might transmit their own data to a desired receiver. Secondly, a mobile host might offer itself as an intermediate forwarding node for data going between two other hosts in the network. Providing such last service is likely to be costly in terms of power consumption, but without the availability of such forwarding nodes there can't be ad hoc network. Unlike cellular networks, the lifetime of battery capacity (lifetime of a mobile host) will affect on overall performance of the ad hoc network. In a cellular network, a reduction in the number of active mobile users (e.g. due to battery power depletion or host disconnection) will fortunately reduce the amount of signal interference and channel contentions. However, since ad hoc mobile hosts depend on each other to relay their messages toward their intended destinations, a decrease

- 20 -

Chapter 1

INTRODUCTION

in the number of mobile users can degrade network performance [12]. In mobile ad hoc network, power consumption can be reduced by designing a power-aware network protocol stack. To maximize the lifetime of mobile hosts, routing algorithms in the network must take power constrains into consideration when selecting the best path to a destination, i.e. transmission power can be used as a routing metric. Hence, routes require lower levels of power transmission, which is preferred, but affects on endto-end throughput. On the other hand, transmission with higher power increases the probability of successful transmission, thus increasing end-to-end and throughput. However, it also yields higher interference to other mobile hosts, which could result in a decrease in network capacity. At the data link layer, a transmission from one node to another is potentially overhead by all the neighbors of the transmitting node; thus, all these nodes consume power even though the packet transmission was not directed to them. Since maximum power is consumed during transmission, followed by that during reception and the least when the node is idle [13], some researchers (e.g. in [14]) have suggested that a node should turn off its wireless interface when it is not used.

1.7.4 Security Security issues become more challenging in ad hoc network due to its dynamic nature, which allows any node to freely join as well as leave the network without having a physical address or getting permission. Ad hoc networks are sensitive to different kinds of attacks such as: denial of services, impersonation and eavesdropping …etc [15].

- 21 -

Chapter 1

INTRODUCTION

Basic types of attacks are [16]: 

Worms;

Self-replicating

programs

that

spread

across

a network. 

Viruses; Programs that replicate when a user performs an action.



Server attacks; A client misuses certain flaws in the server and causes the server to behave strangely.



Client attacks; A server exploits certain flaws or bugs in the client and causes it to perform some unintended action.



Network attacks (Denial of Service); A remote attacker exploits a bug in the network, protocol, router, or software and causes the network to fail.



Root attacks; in a multiuser operating system, the attacker obtains the privileges of the root or admin user and gains control over all the other users in the system.

Security is often considered to be the major "roadblock" in the commercial application this technology. Security is indeed one of the most difficult problems to be solved. The "golden age" of this research field can be expected to dawn only after the functional problems on the underlying layers have been agreed on. In addition, MANETs distributed and infrastructureless nature means that centralized security control [17] is hard to implement and the network has to rely on individual security solutions from each mobile node. Furthermore, mobile ad hoc networks are often designed for specific environment and may have to operate with full availability even in adverse conditions. Security solutions applied in networks that are more traditional may not directly suitable [18].

- 22 -

Chapter 1

INTRODUCTION

1.7.5 Connectivity with the Internet Another major problem for a mobile ad hoc network is whether it can establish connectivity to the internet. If a node in an ad hoc networks has connectivity to the internet, this node may offer internet connectivity services to other nodes. One possible solution proceed from the cooperative nature of ad hoc network that is suggested in [19]. The idea is to combine the mobile Internet Protocol "IP" [20] with ad hoc routing. Internetworking an ad hoc networks in the internet can be provided by adopting the mobile Internet Protocol so that a foreign agent can service a mobile node even if the latter is not within the communication range of ad -hoc network. This can be achieved by having a foreign agent participate in the routing protocols of the ad hoc network. Figure 1.8 illustrates this technique.

Home Agent

Foreign Agent

Internet

1 2 Figure 1.8 Ad Hoc Networking with Mobile IP

1.7.6 Node Cooperation For receiving the corresponding service from the others, node cooperation stands in the way of commercial application of the ad hoc technology. Certainly, in many kinds of mobile ad hoc networks, the mobile hosts operate on battery power, hence a critical alarm in node cooperation should not waste its batteries in exchanging gaming data.

- 23 -

Chapter 1

INTRODUCTION

Supporting nodes may corporate for leading the introduction of billing, such as the suggested idea for internet congestion control [21]. Application for any kind of billing mechanism is a challenge; which is still open for research [22].

1.7.7 Transmission Control Protocol (TCP) TCP was designed to work in fixed networks. TCP provides an effective connection-oriented transport control protocol that provides the essential flow control and congestion control required to ensure reliable packet delivery. Because error rates in wired networks are quite low, TCP uses packet losses as an indication of network congestion, and deals with this effectively by making corresponding transmission adjustment to its congestion window. The mobile multihop ad hoc environment brings recent challenge to TCP protocol due to its frequent change in network topology, disconnections, variation in link capability, and high error rate. In a wireless mobile ad hoc networks, packet losses are usually not only caused by network congestion, but by the high error rate from the wireless medium and frequent disconnections from mobility [5]. In addition, variation in link capability could reduce asymmetric links and delayed acknowledgement, which can affect congestion window adjustment as well. As a result, standard TCP flow control and congestion control mechanisms do not work well in mobile ad hoc networks. Improving performance of TCP in wireless mobile multihop ad hoc networks is an active research area.

- 24 -

Chapter 1

INTRODUCTION

1.7.8 Physical Layer and MAC Constraints In mobile ad hoc networks, uses of broadcasting and shared transmission media introduce important property of packet collisions and media contention. In addition, collision detection is not possible because a node is usually unable to listen while it is transmitting. This severally reduces channel utilization as well as throughput, and brings new challenges to conventional Carrier Sense Multiple Access "CSMA" based and Media Access Control "MAC" protocols in general. Among the top issues are the Hidden-Terminal and Exposed-Terminal problems. The Hidden-Terminal problem occurs when two (or more) terminal (hosts), say, A and C cannot detect each other's transmissions (due to being outside of each other transmission range), but their transmission ranges are not disjoint [23]. As shown in Figure 1.9, a collision may occur, when terminal A and C start transmitting toward the same terminal receiver B.

A

B

C

Figure 1.9 Hidden-Terminal Problems

- 25 -

Chapter 1

INTRODUCTION

The Exposed-Terminal problem results from situations in which a permissible transmission from a mobile host (sender) to another host has to be delayed due to the irrelevant transmission activity between two other mobile stations within sender's transmission range. Figure 1.10 depicts a typical scenario in which the Exposed-Terminal problem may occur. Let us assume that terminal A and C can hear transmission from B, but terminal A cannot hear transmission from C. let us also assume that terminal B transmits to terminal A, and terminal C has a frame to transmit to D. According to the CSMA scheme, C senses the medium and finds it busy because of B's transmission, and therefore, refrains from transmitting to D, although this transmission would not cause a collision at A. the Exposed-Terminal problem results in loss of throughput. Many recent researches [24] propose solutions of the Hidden-Terminal, Exposed-Terminal, and the similar problems, thus the performance in MANETs is improved.

A

B

C

D

Figure 1.10 Exposed-Terminal Problems

- 26 -

Chapter 1

INTRODUCTION

1.8 Thesis Objectives and Organization The aim of this thesis is to suggest a multicast routing algorithm that have better overall performance of Mobile Ad hoc Networks (MANETs). This thesis is organized as follow: Chapter two gives a Routing Protocols for Ad hoc Networks. Designs of Multicast Routing Protocols under topology for Ad hoc Networks are discussed in chapter three. Then the Proposed Multicast Routing Algorithm is described in chapter four, and simulation and performance evaluations are introduced in chapter five. Finally, the Conclusion and Future Work is illustrated in chapter six.

- 27 -

Chapter Two

Routing Protocols for Mobile Ad hoc Networks

Chapter 2

Routing Protocols for MANET

Chapter Two

Routing Protocols for Mobile Ad hoc Networks

2.1 Introduction A MANET environment is characterized by energy limited nodes (Mobile Hosts), bandwidth-constrained, variable capacity wireless links and dynamic topology, leading to frequent and unpredictable connectivity changes.

Routing in a MANET depends on many factors including topology, selection of routers, location of request initiator and specific underlying characteristics that could serve as a heuristic in finding the path quickly and efficiently. One of the major challenges in designing a routing protocol for MANETs is that a node at least needs to know the reachability information to its neighbors for determining a packet route, while the network topology can change quite often in a MANET.

Furthermore, as the number of network nodes can be large, finding route to a destination also requires frequent exchange of routing control information among the nodes. Thus, the amount of update traffic can be substantial, and it is even higher when nodes with increased mobility are present. The mobile hosts can impact route maintenance overhead of routing algorithms in such a way that no bandwidth might be left for the transmission of data packets [25].

- 29 -

Chapter 2

Routing Protocols for MANET

In multi hop networks, source and destination nodes can be separated by multiple hops, and thus packets from the source to the destination need to be forwarded by multiple nodes. This forwarding process is known as routing. If there is one destination, this type of communication is called unicast routing. If there are multiple destinations or all the nodes in the network are destined by the source, these types of communication are known as multicast routing and broadcast routing [4]. In this chapter, we introduce challenges and a classification of routing protocols in Mobile Ad hoc Networks "MANETs” (unicast, multicast, and broadcast routing protocols) with more than examples of routing in each routing protocols in MANETs.

2.2 Challenges of Routing Protocols in MANETs There are many challenges facing the design of MANETs routing protocols. First, because of the variable and unpredictable capacity of wireless links, packet losses may happen frequently. Second, the broadcast nature of the wireless medium introduces the hidden terminal and exposed terminal problems. Moreover, in mobile ad hoc networks, node mobility causes frequent topology changes and network partitions. In addition, mobile nodes have restricted power, and bandwidth resources and require effective routing schemes [5].

2.3 Unicast Routing in MANETs Unicast routing protocols is defined as point-to-point communication, where there is exactly one sender and one destination. Therefore, data or messages may be exchanged reliably and in a timely manner. Characteristics of routing protocols in ad hoc must operate with highly dynamic topologies in a network, so characteristics of mobile ad hoc networks make the direct use of these protocols unsuitable. - 30 -

Chapter 2

Routing Protocols for MANET

It is possible to classify unicast routing protocols into many categories based on different criteria [7]; the main classification based on the rout availability, where protocols is classified as either proactive routing protocols or reactive routing protocols.

2.3.1 Proactive Routing Protocols In proactive routing protocols; also called Table driven protocols; each node contains a routing table to all the other nodes in the network. So, when a packet needs to be forward, the route is already known and can be immediately used. In the routing table; each entry contains the path. The routing information or table maintain consistent and updated path for every pair of network nodes by broadcasting at fixed time intervals, as the routing information is usually maintained in tables through control packet exchanges.

Proactive routing protocols are not practical to use for large networks since the algorithm is unsuitable, and the maintenance of a routing table by every node uses a substantial part of the available bandwidth even for relatively small networks. However, when using proactive routing protocols in larger networks even using all of the bandwidth is unsuitable for routing table updated, although proactive routing protocols are already available routes immediately selected from the routing table, which a node experience minimal delay whenever a route is needed.

The various types of proactive routing protocols includes :

Destination-

Sequenced Distance-Vector (DSDV), Optimized Link State Routing (OLSR) and Topology Dissemination Based on Reverse Path Forwarding (TBRPF)…etc [7].

- 31 -

Chapter 2

Routing Protocols for MANET

In Destination Sequenced Distance Vector (DSDV), every node maintained and updated routing information for each pair of network nodes at a fixed time intervals. Each entry in a routing table is marked with a sequence number selected by the destination node. Using these sequences of numbers to select a route from routing table that is updated and maintained periodically.

2.3.2 Reactive Routing Protocols Reactive routing protocols; also called on demand; often use much less bandwidth than proactive routing protocols, but the delay to determine a route can be highly important, as reactive routing protocols employ a Just In Time (JIT) approach, which each node needs no route to a destination until the link of the data packets are sent by the node. There are different types of reactive routing protocols such as: Dynamic Source Routing (DSR), Ad Hoc On-Demand Distance Vector (AODV)[26], Temporally Ordered Routing Algorithm (TORA), Associativity-Based Routing (ABR), and Signal Stability Routing (SSR)…etc [2]. AODV is an on demand routing protocol and elements to the class of Distance Vector Routing Protocols (DV). In a DV every node knows its neighbors and the costs to reach them. A node maintains its own routing table, storing all nodes in the network, the distance and the next hop to them. If a node is not reachable the distance to it is set to infinity. Every node sends its neighbors periodically its whole routing table. So they can check if there is a useful route to another node using this neighbor as next hop. When a link breaks a Count-To-Infinity could happen. The Count-To-Infinity and loop problem is solved with sequence numbers and the registration of the costs. AODV supports Unicast, Broadcast and Multicast without any further protocols.

- 32 -

Chapter 2

Routing Protocols for MANET

In Dynamic Source Routing (DSR) a reactive routing protocol [27], every node broadcasts a route request packet to its neighbors and each node receiving this route and adds its own ID to the packet and rebroadcasts the packet to its neighbors. Repeat previous process until a node receiving the route request packet has a route to the destination, after this process a node replies to the source with a full path from the node to itself and then to the destination. So each node contains a route cache that contains all paths to known destinations, and the route- reply packet will be sent over that route or path. But if a node doesn't have a route to a destination, a forward node leaves a network, or any forward node discovers a broken link in an active route. Then it sends a route error packet to the source, which broadcasts a route request packet to its neighbors until it reaches the destination.

2.4 Multicast Routing in MANETs In multicasting, one or more source sends data packet to the members of a multicast group, possibly through the use of any forward node in the network, which is non multicast group member.

Groups of communication protocols have many objectives such as: sending data packets from a source to the members of a multicast group with a suitable Quality of Service (QoS) [28], maximizing the reuse efficiency [29] that is directly related with the number of retransmissions required to all members of a multicast group with enough packet delivery ratio, and minimizing the wasted energy of the network. Minimizing the wasted energy is important in most devices such as Laptops or mobiles [30].

- 33 -

Chapter 2

Routing Protocols for MANET

2.4.1 Classifications of multicast routing protocols over Mobile Ad hoc Networks Multicast routing protocols over MANETs are classified under different points as multicast topology, initialization, topology maintenance, core or coreless approach and dependency on unicast routing protocol.

Our interest in classifying multicast routing protocols over MANETs is based on selecting routing and topology. Multicast routing protocols can be divided into two main categories under topology; Tree-based protocols and Mesh-based protocols [6].

2.4.1.1 Tree-based protocols The main aim of tree-based approach is only a single shortest path (i.e. route) that must be established between source receiver pair as shown in figure 2.1. Although multicast tree-based routing protocols are efficient and satisfy scalability issue, they have several drawbacks in ad hoc wireless networks due to mobile nature of nodes that participate during multicast session.

Tree-based approach is also divided into two subcategories: source-based tree and shared-based tree approaches. In source-based tree approaches, each source builds its single tree. The protocols that follow this type are Bandwidth-Efficient Multicast Routing Protocol (BEMRP) [31], Multicast Routing Protocol Based on Zone Routing (MZRP) [32], Associativity Based Ad Hoc Multicast Routing (ABAM) [33], Differential Destination Multicast Routing Protocol (DDM) [34], Weight-Based Multicast Protocol (WBM) [35], and Preferred Link-Based Multicast Protocol (PLBM) [36].

- 34 -

Chapter 2

Routing Protocols for MANET Intermediate Multicast Node Basic route

Non multicast node

Source

Receiver

Figure 2.1 Tree-based topology

In shared-based tree approach, all sources share only a single tree that is controlled only by one or more specific node. Many protocols that follow this type of topology like Multicast Ad Hoc On-Demand Distance Vector Routing Protocol (MAODV) [37], Ad Hoc Multicast Routing Protocol utilizing Increasing ID Numbers (AMRIS) [38], Light Weight Adaptive Multicast (LAM) [39], Location Guided Tree Construction Algorithm for Small Group Multicast (LGT) [40], and Reservation Based Multicast Routing Protocol (RBM) [41].

Other trials exist to use source-based and shared-based tree topologies as Adaptive shared tree multicast routing protocol [42]. Each source builds its own tree and multiple sources share this tree that is rooted at a rendezvous point (RP). Two basic drawbacks of tree-based protocols exist. The first drawback of the tree structure is fragile because of unpredictable topology changes due to mobility of nodes. The second drawback is tree reconstruction delay. So, a new topology concept is called Mesh-based establishment.

- 35 -

Chapter 2

Routing Protocols for MANET

2.4.1.2 Mesh-based protocols On the other hand, it has the possibility to provide multiple paths between any source-receiver pair as shown in figure 2.2. It achieves better performance than tree based topology since existence of alternative paths 'virtual links' when a link broken or a node failure due to continue change of network topology. Drawback of mesh based is increasing in data-forwarding by flooding that due to the probability of collisions is higher when a larger number of packets are generated. This category has also many protocols like On-Demand Multicast Routing Protocol (ODMRP) [43], Dynamic Core-Based Multicast Routing Protocol (DCMP) [44], Forwarding Group Multicast Protocol (FGMP) [45], Neighbor Supporting Ad Hoc Multicast Routing Protocol (NSMP) [46], and Core-Assisted Mesh Protocol (CAMP) [47].

Basic route Receiver Source

Alternative route Non multicast node Intermediate Multicast Node

Figure 2.2 Mesh-based topology

2.4.1.3 Hybrid Routing Protocols Hybrid topology protocols try to gather both tree-based and mesh-based advantages in one protocol by constructing shared-based tree topology over mesh topology. This category has also many protocols like Ad Hoc Multicast Routing Protocol (AM Route) [48] and Multicast Core-Extraction Distributed Ad Hoc Routing (MCEDAR) [49]. - 36 -

Chapter 2

Routing Protocols for MANET

2.4.2 Challenges and Issues of Multicast Routing Protocols Multicast routing protocol in MANETs tries to overcome some difficult problems which can be categorized under basic issues or considerations. We can say that the semi-optimal multicast routing protocol is one that can satisfy many challenges and issues from all the following issues [1].

2.4.2.1 Efficiency Efficiency deals with how limited bandwidth of radio channels in MANETs is utilized efficiently to send the maximum number of data packets with the fewer number of control packets, so destinations receive all data packets sent by any source in a smallest time period. Multicast routing protocols that fall under pure mesh-based topology (e.g. ODMRP [43], FGMP [45] and NSMP [46]) is considered inefficient protocols. In such protocols, several routes must be constructed and maintained between any source-receiver pair. Control packets (e.g. join requests and join reply’s) are broadcasted by any source (or by any receiver) and will be rebroadcast by any intermediate node over all these routes. When many sources and receivers join into multicast session, large number of control packets will be produced. They cause inefficient utilization of limited bandwidth of radio channels. Using soft state approach (i.e. periodic transmission of control packets during topology maintenance phase) in these protocols will increase the problem.

- 37 -

Chapter 2

Routing Protocols for MANET

2.4.2.2 Robustness There are several situations in which link disconnection between node pairs occur causing that data packets sent by any source are dropped. This problem results in low packet delivery ratio. So any new proposal should provide multiple routes between any node pairs (like mesh based routing protocols) or it should repair link failure quickly (like tree based routing protocols). The previous possible solutions increase packet delivery ratio and consequently high robustness is the final result. On the other side, pure tree-based topology and soft state protocols (e.g. DDM [34] and LGT [40) are considered semi efficient protocols. In these protocols, only one shortest route will be constructed and maintained between any source-receiver pair. Control packets will travel only through this route during topology maintenance phase which saves limited bandwidth. Applying hard state approach (i.e. control packets will be transmitted only in the case of link disconnection and not periodically) with tree-based topology protocols will improve efficiency (e.g. ABAM [33], BEMRP [31], MZRP [32], WBM [35], PLBM [36] and AMRIS [38]). Generally, efficiency is improved by applying core techniques with any protocol. Core technique prevents nodes from sending control packets among them, but control packets (except data packets headers) travel only from any node to core node which reduce the large number of these control packets (e.g. CAMP [47], DCMP [44], MAODV [37], RBM [41], LAM [39], AMRoute [48] and MCEDAR [49]).

- 38 -

Chapter 2

Routing Protocols for MANET

2.4.2.3 Scalability Scalability and efficiency can be considered as two similar faces for one coin. It means that they affect each other (i.e. as efficiency is improved, scalability is improved too and vice versa). Scalability concerns with observing the operation of a multicast routing protocol, when number of nodes (sources, destinations or intermediate nodes) in multicast session is increased (i.e. group size is increased) or the number of multicast sessions (i.e. number of groups) is increased. We can say that the more nodes in a multicast session, the more control packets will be produced. Scalable multicast routing protocol should reduce the number of control packets. DDM [34] and LGT [40] are basically designed to deal with small groups. The scalability is not their main target. Mesh-based and soft state protocols (e.g. ODMRP [43] and FGMP [45]) suffer from excessive control packets which affect scalability and packet delivery ratio. Applying core techniques in such protocols will improve scalability. For example, dynamic-core technique was used by DCMP [44], while CAMP [47] to reduce control packet overhead founded in ODMRP [43] that used static core technique.

2.4.2.4 Quality of Service (QoS) In military and real time applications, data packets must reach completely to their destinations. Loss of data packets in such applications is not permitted. The previous concept is called Reliability. Besides reliability, throughput, end-to-end delay, and available bandwidth are the main parameters for providing QoS issue. The previously mentioned protocols do not satisfy QoS issue because they are considered as general ideas of applying multicast concept in MANETs. Several multicast routing protocols are posed recently to satisfy reliability (e.g. Adaptive Protocol for Reliable Multicast in Mobile Multihop Radio Networks [50]

- 39 -

Chapter 2

Routing Protocols for MANET

and Reliable Multicast Protocol for Wireless Mobile Multihop Ad Hoc Networks (ReMHoc) [23]). Wireless Ad Hoc Real Time Multicasting Protocol (WARM) [51] tries to achieve bandwidth reuse in real time applications.

2.4.2.5 Security It is one of the most important issues that many protocols neglect. It is related with how to protect multicast session from intruders’ joining or to prevent an unauthenticated node (a non member node) from receiving data packets. No one of the previously mentioned proposals achieve security issue.

2.4.2.6 Power control In ad hoc wireless networks, each mobile host has its own battery power which determines the maximum time that a node is still connected in a multicast session (i.e. lifetime of a node). Several multicast routing protocols suffer from periodic messaging that affect lifetime of battery capacity. So the need of using protocols and algorithms that try to save power consumption of any mobile host become the most future research points [52] overcome power constraints in MANETs. In addition, There are several protocol architectures that modify existing ad hoc network protocols for energy efficiency [53,54].

2.5 Broadcast Routing in MANETs In many applications broadcasting is considered a common operation, as distributed computing problems and graph related. Broadcasting may be used in local area network emulation or serve as a last resort to provide multicast services in networks with rapid changing topologies. Therefore, broadcasting in a MANET is a basic service which needs deeper investigation and tuning.

- 40 -

Chapter 2

Routing Protocols for MANET

In addition, broadcast is widely used to resolve many network layer problems. In the particular case of a MANET where mobility is the rule and not the exception, broadcastings are expected to be performed more frequently[8]. Data need to be broadcast throughout the network in most applications. Thus, broadcasting is an important service in mobile ad hoc networks. For instance, the leader of a search and rescue team may need to connectivity or deal with all members of the team that are connected to the network. Broadcasting algorithms can be classified into three main categories: non-coordinated (stateless), fully coordinated and partially coordinated.

2.5.1 Fully coordinated Algorithms The main aim of a fully coordinated algorithm is to select or detect the smallest sets of rebroadcast nodes that is called a Minimally Connected Dominating Set (MCDS), where the set of these nodes are connected and all nodes are not connected inside the range of transmission of the minimally connected dominating set [8].

2.5.2 Stateless Algorithms A non-coordinated or stateless broadcast algorithms have many examples as gossiping and flooding, where nodes rebroadcast with a predetermined probability or nodes rebroadcast without any coordination. In order to avoid excessive collisions, nodes retransmit with a random assessment delay that is uniformly distributed [8].

- 41 -

Chapter 2

Routing Protocols for MANET

2.5.3 Partially Coordinated Algorithms Partially Coordinated Broadcast (PCB) algorithms can be divided into two sub-categories: passive PCB and active PCB. The principle of passive partially coordinated broadcast algorithm is used analogous to the binary exponential back off scheme of IEEE 802.11, where back off window size is adjusted adaptively by passive listening of the medium. Examples of partially coordinated broadcast algorithms are Counter-based broadcasting (CBB) and Distance based broadcasting (DBB) [8]. And active partially coordinated broadcast algorithm depends on approximate limited scope Minimally Connected Dominating Sets “MCDS’s”

based on

topology information , one hop neighborhood, or two hop neighborhood.

2.6 Summary This chapter discussed many challenges that face Mobile Ad hoc Networks special and partial challenges of Multicast routing protocols over MANETs such as Robustness, Efficiency, Scalability, Security, Quality of Service (QoS), and Power control. In Addition, it discussed the classifications of routing protocols over MANETs, which are divided into three categories: Unicast routing, Multicast routing, and Broadcast routing over MANETs. In the next chapter; we introduce an overview of challenges and classifications of multicast routing protocols in Mobile Ad hoc Networks "MANETs” .

- 42 -

Chapter Three

Overview Multicast Routing Protocols for MANETs

Chapter 3

Overview Multicast Routing Protocols

Chapter Three

Overview Multicast Routing Protocols for Mobile Ad hoc Networks 3.1 Introduction Multicasting defined as the transmission of packets to a group of hosts identified by a single destination address and hence is intended for group-oriented computing. In ad hoc networks, multicasting can efficiently support a variety of applications that are characterized by close collaborative efforts. Multicasting could prove to be an efficient way for providing necessary services and applications. If the group contains all the members of the network, then broadcasting communication considered multicasting. This chapter gives an overview of challenges and classifications of multicast routing protocols in MANETs based on initialization topology. It is divided into five sections. The second and the third sections contain tree-based and meshbased multicast routing protocols. The four section illustrate stateless approaches. Finally, section five gives the summary of this chapter. There are many multicast routing protocols designed for mobile ad hoc networks: (i) tree-based approaches (ii) mesh-based approaches (iii) stateless Multicast, and (iv) hybrid approaches. This can be categorized into two broad categories: (i) tree-based approach and (ii) mesh-based approach [4].

- 44 -

Chapter 3

Overview Multicast Routing Protocols

3.2 Tree-Based Multicast Routing Protocols Tree-based approach creates trees originating at the source and terminating at multicast group members with an objective of minimizing a cost function. For example, shortest path tree algorithm [55] create trees originating at the source with an objective of minimizing the distance between the source and every destination in the multicast group individually. Constrained tree algorithms [59] extend the definition of the cost function from number of hops to other metrics, such as delay. Characteristics of tree based approach can be selected as: easy routing selection at each node, representing shortest paths tree between the nodes. Trees provide a unique path between any two nodes. This minimizes the number of copies packet, and data packet transits at most once for each hop and node in a tree. The schemes of multicast routing protocols in wired networks are source tree based and shared tree based, where many of researchers have tried to apply the tree based approach in multicast routing of mobile ad hoc networks environment. In source based tree, each node has a separate unique rout or path between any two nodes. This route is the shortest path for these nodes. On the other hand, in shared based tree, most nodes shared a routes or paths in the networks. Such route is either shortest path or longer distance than shortest path. The tree based routing has the following disadvantages: a unique path between any two nodes leads to one link failure could mean reconfiguration of the entire tree structure. Further, whenever many packets generated by sources, this will require establishing multicast routings and maintaining them. Hence, it is common to consider using of a shared tree or select a separate tree for each source [57].

- 45 -

Chapter 3

Overview Multicast Routing Protocols

Tree based category have many protocols, like Bandwidth-Efficient Multicast Routing Protocol (BEMRP), Multicast Routing Protocol Based on Zone Routing (MZRP), Associativity-Based Ad Hoc Multicast Routing (ABAM), Differential Destination Multicast Routing Protocol (DDM), Weight-Based Multicast Protocol (WBM), Preferred Link-Based Multicast Protocol (PLBM), Multicast Ad Hoc OnDemand Distance Vector Routing Protocol (MAODV), Ad Hoc Multicast Routing Protocol utilizing Increasing ID Numbers (AMRIS), Light Weight Adaptive Multicast (LAM), Location Guided Tree Construction Algorithm for Small Group Multicast (LGT), Reservation Based Multicast Routing Protocol (RBM), and The Associativity-Based Ad Hoc Multicast (ABAM [58]) [6].

3.2.1 Ad hoc Multicast Routing Protocol utilizing Increasing id-numbers (AMRIS) Ad hoc Multicast Routing Protocol utilizing Increasing id-numberS (AMRIS) [38], creates a shared multicast tree (see Figure 3.1) to support multiple sources and receivers in a multicast session. So, it is one of on-demand protocol. AMRIS dynamically selects id-number(ID) to every node in each multicast session. Depending on the id-number, a multicast delivery tree rooted at a special node with Smallest id-number(Sid) is created, and increasing ID as the tree expands from the Sid. In general, Sid is the source (sender) or the node that initiates a multicast session.

- 46 -

Chapter 3

Overview Multicast Routing Protocols

R2 6

4

7

S1

3

6

00

5

3

I21 2

6

8

4

R3

12

S2 8

5

I1 7

I3 R1

JoinReq control packet JoinAck control packet

Figure 3.1 Node joining the multicast tree in AMRIS

In AMRIS, the first operation is the selection of Sid. If there is only one sender for a group, the Sid is generally the source of the group, and if there are multiple senders, a Sid is selected among the given set of senders. When a Sid is selected, it sends a NEW-SESSION message to its neighbors, contents of this message are Smallest id-number's (Sid), msm-id (multicast session member id), and the routing metrics. Each node receiving the NEW-SESSION message create their own msm-ids, which is larger than the msm-id of the sender. Whenever any node receives multiple NEW-SESSION messages from multiple nodes, it keeps the message with the best routing metrics and calculates its msmids.

- 47 -

Chapter 3

Overview Multicast Routing Protocols

To join continuing session, a node tests the NEW-SESSION message and selects a parent with smallest msm-ids, sending unicast packet to its parent node. Now, the packet includes a JoinReq message. If a parent node is exist in the multicast delivery tree, it replies with a JoinAck (join acknowledge). Otherwise the parent tries to join the multicast tree by sending a JoinReq to its parent. If a node doesn't find any parent node, it creates a branch reconstruction (BR) process to rejoin the tree. BR includes two sub-routines; subroutines 1 (BR1) and subroutines 2 (BR2). BR1 is created when a node has potential parent node for a group. Otherwise, BR2 is created. When a node wants to join the multicast group, it gets the list of potential parent nodes from its neighbor-status table and sends the JoinReq control packet to one of its neighbor nodes. The potential parents are those neighbor nodes which have the msm-ids less than the msm-ids of the node which has to send the JoinReq control packets. Here, in Figure 3.1, node S2 sends the JoinReq to its potential parent node I1. Since node I1 is not in the multicast tree, it repeats the same process by sending the JoinReq to node I2 and I3. After a successful search of the path, node I1 sends JoinAck to its downstream nodes to establish the route. Other members also join the multicast group in the same way. If a node failure or a link breakage, the node with larger msm-id tries to rejoin the tree by utilizing one of the branch reconstruction mechanisms. AMRIS detects the link disconnection by one of the previous mechanisms too. It is noted that, loss packets possibility still arises till the tree reconstructed.

- 48 -

Chapter 3

Overview Multicast Routing Protocols

3.2.2 Bandwidth Efficient Multicast Routing Protocol

Bandwidth efficient multicast routing protocol (BEMRP) [31], achieves low communication overhead and high multicast efficiency, where it attempted to find the nearest forwarding node, rather than the shortest path between source and receiver. Thus, the number of data packet transmissions is reduced. To maintain the multicast tree, it uses a hard state approach. Namely, for rejoining the multicast group, a node transmits the required message only after the link breaks. Therefore, it avoids periodic transmission of messages and bandwidth is saved. To remove unused forwarding nodes, route optimization is done that helps in further reducing the number of message transmissions. The multicast tree initialization phase and the tree maintenance phase are discussed in what follows. In BEMRP, the multicast tree construction is initiated by the receivers. Whenever a receiver wants to join the group, it initiates broadcasting of Join control packets or JoinReq. The existing members of the multicast tree that receiving these packets response with Reply packets. When many Reply packets reach to the requesting node, it chooses one of them and sends a reserve packet on the path taken by the chosen Reply packet. When a new receiver R3 (Figure 3.3) wants to join the multicast group, it floods the join control packet. The nodes S, I1, and R2 of the multicast tree may receive more than one join control packet. After waiting for a specific time, each of these tree nodes chooses one join packet with the smallest hop count traversed. It sends back a Reply packet along the reverse path which the selected Join packet had traversed. When tree node I1 receives Join packets from the previous nodes I9 and I2, it sends a Reply packet to receiver R3 through node I2. The receiver may receive more than one Reply packet. In this case, it selects the Reply packet which has the lowest hop count, and sends a Reserve packet along the reverse path that the selected Reply packet had traversed.

- 49 -

Chapter 3

Overview Multicast Routing Protocols

In figure 3.4, receiver R3 receives Reply packets from source S, receiver R2, and intermediate node I1. Since the Reply packet sent by intermediate node I1 has the lowest hop count that is 3, it sends a reserve packet to node I3, and thus joins the multicast group.

To reduce the control overhead in BEMRP, tree reconfiguration is done only when a link break is detected. There are two approaches to recover from link failures. 1. Broadcast multicast approach: in this approach, the upstream node is responsible for finding a new route to the previous downstream node. This is shown in Figure 3.5. When receiver R3 moves from A to B, it becomes isolated from the remaining part of the tree. The upstream node I3 now floods broadcast packets. After receiving this packet, receiver R3 sends a Reserve packet and joins the group again. 2. Local rejoin approach: in this approach, the downstream node of the broken link

tries to rejoin the multicast group by means of limited flooding of the Join packets. In Figure 3.6, when the link between receiver R3 and its upstream node I3 fails, then R3 floods the Join control packet with a certain Time-To-Live "TTL" value.

- 50 -

Chapter 3

Overview Multicast Routing Protocols

R1 S I1

R2

I9

I4

I10

I5 I2

I6

I11 I3

I12

I7 I8

R3

Reply control packet

Multicast tree node

Join control packet

Multicast group member

Reserve control packet

Non-participating node

Figure 3.3 Multicast tree initialization in BEMRP.

When tree nodes receive the Join control packet, they send back the Reply packet. After receiving the Reply packet, the downstream node R3 rejoins the group by sending a Reserve packet to the new upstream node I4. When a tree node or a receiver node comes within the transmission range of other tree nodes, then unwanted tree nodes are pruned by sending the Quit message. In figure 3.4, when receiver R3 comes within the transmission range of the intermediate node I2, it will receive a multicast packet from node I2 earlier than from node I5. When node R3 receives a multicast packet from node I2, it sends a Reserve packet to node I2 to set up a new route directly to node I2, and sends a Quit packet to node I5. Since node R3 is no more its downstream node, node I5 sends a Quit packet to node I4, node I4 sends a Quit packet to node I3, and node I3 in turn sends a Quit packet to node I2. Thus, unnecessary forwarding nodes are pruned. This mechanism helps to reduce the number of data packet transmissions.

- 51 -

Chapter 3

Overview Multicast Routing Protocols

R1 S I1

R2

I2

I3

I4

I5 A

R3

I6 B Reply control packet

Multicast tree node

Join control packet

Multicast group member

Reserve control packet

Non-participating node

Figure 3.4 Multicast tree maintenance in broadcast-multicast scheme.

R1 S I1

R2 I2

I3 I4

R3

I5 A I6

B Broadcast-multicast control packet

Multicast tree node Multicast group member

Reserve control packet

Non-participating node

Figure 3.5 Multicast tree maintenance in local rejoin scheme. - 52 -

Chapter 3

Overview Multicast Routing Protocols

R1 S I1

R2

I2 I3 R3

I4 I5 Multicast tree node Quit control packet Multicast group member Reserve control packet Non-participating node

Figure 3.6 Multicast tree optimization in BEMRP.

3.2.3 Multicast Routing Protocol Based on Zone Routing In multicast zone routing protocol (MZRP) [32], flooding of packets by each node searches for members of the multicast group is controlled by using the zone routing mechanism. In zone routing, each node is attended with a routing zone. Routing can be constructed, a proactive approach is used inside the zone, whereas a reactive approach is used across zones. Briefly, an attempt to combine the best of both on-demand and table driven routing approaches.

To create a multicast delivery tree over the network, the source initiates a twostage process. In the first stage, the source tries to form the tree inside the zone, and then in the second stage it extends the tree to the entire network.

- 53 -

Chapter 3

Overview Multicast Routing Protocols

In Figure 3.7, to create the tree, initially source S sends a TREE-CREATE control packet to nodes within its zone through unicast routing as it is aware of the topology within its zone. Then node Rl, which is interested in joining the group, replies with a TREE-CREATE-ACK packet and forms the route.

To extend the tree outside the zone, source S sends a TREE-PROPAGATE packet to all the border nodes of the zone. When node B (which is at the border of the zone of node S) receives the TREE-PROPAGATE packet, it sends a TREECREATE packet to each of its zone nodes. Thus, receivers R2 and R3 receive the TREE-CREATE packets and join the multicast session by sending TREECREATE-ACK packets.

R1

R2

B

S

R3

Routing zone of node S TREE-CREATE control packet

Routing zone of node B Multicast tree node

TREE-CREATE-ACK control packet

S Multicast source

TREE-PROPAGATE control packet

R Multicast receiver Non-participating node

Figure 3.7 Multicast tree initialization in MZRP.

- 54 -

Chapter 3

Overview Multicast Routing Protocols

Once the multicast tree is created, the source node periodically transmits TREEREFRESH packets down the tree to refresh the multicast tree. If any tree node does not receive a TREE-REFRESH packet within a specific time period, it removes the corresponding stale multicast route entry. When a link in the multicast tree breaks, downstream nodes are responsible for detecting link breaks and rejoining the multicast group. Due to movement of the intermediate node I (figure 3.8), receiver R2 gets isolated from the rest of the multicast tree. Node R2, first unicast a Join packet to all zone nodes. Since a tree node R3 is already in the zone, it replies back by sending a JoinAck to node R2. Thus receiver R2 again joins the multicast group. It may be that there are no tree nodes in the zone of receiver R2. In this case, receiver R2 does not get any reply from zone nodes, it sends Join Propagate control packets to border nodes (node B), and it joins the tree through intermediate node I (see figure 3.9). I

I

R1

S

R2

B

R3

Routing zone of node R2 Routing zone of node S

Routing zone of node B

Join control packet

Multicast tree node

JoinAck control packet

S Multicast source R Multicast receiver

Non-participating node

Figure 3.8 Multicast tree maintenance in MZRP. - 55 -

Chapter 3

Overview Multicast Routing Protocols

R2 R1

B

S I

R3 Routing zone of node R2 Routing zone of node S

Routing zone of node B

JoinPropagate control packet Non-participating node

Multicast tree node

S Multicast source R Multicast receiver

Figure 3.9 Multicast tree maintenance in MZRP.

3.2.4 Associativity-Based Ad Hoc Multicast Routing Associativity-Based Ad hoc Multicast routing (ABAM) [33], is on-demand source tree based multicast protocol which a path is constructed rely on link stability rather than hop distance. Hence, this multicast protocol is adaptive to the network mobility.

The source node initiates the multicast tree construction phase. Joining a group is a three step process. Flooding by the source, replies along the stable path by the receivers, and path setup by the source. The tree initialization phase is illustrated in figure 3.10. Creating the multicast tree, initially the source broadcasts a Multicast Broadcast Query (MBQ) packet in the network to inform all potential receivers. When an intermediate node receives the Multicast Broadcast Query "MBQ" packet, it appends its ID, and rebroadcasts it. After receiving MBQ packets through different paths, each of the receivers Rl, R2, and R3 responses by sending an MBQ-Reply packet through the most stable path. After receiving a number of

- 56 -

Chapter 3

Overview Multicast Routing Protocols

MBQ-Reply packets, the source sends MC-Setup packets to all receivers in order to establish the multicast tree.

R1 S R2

I1

I2

I3

R3

MBQ packet

Multicast tree node

MBQ-Reply packet

Multicast group member

MC-Setup packet

Non-participating node

Figure 3.10 Multicast tree initialization in ABAM.

Through movement of the nodes, the links break between nodes is expected. ABAM uses different procedures to repair the multicast tree, depending on the type of the moved node; if a leaf receiver R3 moves and the link breaks between it and I3 (as shown in figure 3.11). Consequently, the upstream node I3 of the broken link tries to find a new route to the receiver by transmitting a LocolQuery packet with the Time-To-Life "TTL" field set as 1(1 stands for the hop distance between I1 and R3). When receiver R3 receives a LocalQuery packet from the upstream node, it replies by sending a LocalQuery-Reply message. Receiver R3 now rejoins the multicast group after receiving an MC-Setup packet from the upstream node.

- 57 -

Chapter 3

Overview Multicast Routing Protocols

If the receiver fails to join the group again, then the intermediate upstream node I2 takes the responsibility of finding a route to R3 by transmitting a LocalQuery message with the TTL field value set to 2. This backtracking processes terminate at branch node I1. If all previous attempts fail or a timer finish (this time sets when links break or failure node) at node R3, then receiver R3 sends a JoinQuery packet to join the multicast group. R1 S R2

I1 I2 A

I3

R3

B Multicast tree node

Non-participating node

Multicast group member

Figure 3.11 Multicast tree maintenance in ABAM.

When a branch node moves away, then many receivers connected through that branch node get affected. In figure 3.11, when branch node I1 moves, then receivers R2 and R3 are cutoff from the multicast group. In this case, the branch node I1 broadcasts a LocalQuery packet with TTL field value of 3 (the hop distance between node I1 and the farthest affected receiver R3). ABAM allows a new receiver to join the multicast group by sending a JoinQuery packet. To leave the group, a receiver sends the Leave Message to its upstream node. There are other protocols of tree based routing such as: MAODV [37], LGT [40], LAM[ 56].

- 58 -

Chapter 3

Overview Multicast Routing Protocols

3.3 Mesh Based Multicast Routing Protocols In mesh based multicast routing protocols, each node has the possibility to provide multiple paths between it and other nodes (i.e. source-receiver pair). This is the best suited for multicast in a MANET environment, where the network topology changes frequently. Mesh based tree approach is considered better than tree based approach since tree based determines (selects) a unique path between any source-receiver pair. Further, the availability of alternative paths allow multicast packets to be exchanged to the destinations even if links fail are visible in mesh based tree [4]. Indeed, Mesh-based multicasting is better suited to highly dynamic topologies, simply due to the redundancy associated with this approach. In mesh-based approaches, there is more than one path between the source and multicast group members using shortest path tree algorithms to select this path; thus, even if one of the paths is broken due to mobility the other paths are available. The mesh based routing have disadvantages too. The increased data forwarding overhead consumes more bandwidth. Bandwidth represent constrained resource of mobile ad hoc networks. Second, the chances of data collisions is higher when a larger number of data packets are generated. The problem of mesh based tree is how to minimize data forward overhead that achieve by flooding.

This category also has many protocols like On-Demand Multicast Routing Protocol (ODMRP), Dynamic Core-Based Multicast Routing Protocol (DCMP), Forwarding Group Multicast Protocol (FGMP), Neighbor supporting Ad Hoc Multicast Routing Protocol (NSMP), and Core-Assisted Mesh Protocol (CAMP) [6].

- 59 -

Chapter 3

Overview Multicast Routing Protocols

3.3.1 On-Demand Multicast Routing Protocol (ODMRP) On-demand Multicast Routing Protocol (ODMRP) is a mesh based routing protocol [43], rather than a conventional tree based, multicast approach and uses a forwarding group concept. Only, a subset of nodes forwards the multicast packets via scoped flooding. It applies on demand procedures to dynamically build routes and maintain multicast group membership. And it is well suited for ad hoc wireless networks with mobile hosts where bandwidth is limited, topology changes frequently, and power is constrained. In ODMRP, building a mesh and supplying multiple routes, multicast packets can be delivered to destinations in the face of node movements and topology changes. Also, group membership with multicast routes are established and updated by the source. So, it applies on-demand routing techniques to avoid channel overhead and improve scalability. To establish a mesh for each multicast group, it uses the concept of forwarding group that is a set of nodes responsible for forwarding multicast data on shortest paths between any member pairs. A soft state approach is taken to maintain multicast group members. When a multicast source has packets to send without having routes or paths to receivers, it broadcasts a Join-Query packet to neighbors. This Join-Query packet is periodically broadcasted to neighbors and updates routes as depicted in figure 3.12 (a). When a node receives a non-duplicate JOIN QUERY, it stores the node ID into the routing table and rebroadcasts the packet. As the JOIN QUERY packet reaches to multicast receiver, it creates and broadcasts a JOIN REPLY to its neighbors with checks whether the next hop node ID of one of the entries matches its own ID. If it does, the node realizes that it is on the path to the source and thus is a part of the forwarding group and sets the FG_FLAG, up to it reaches this JOIN REPLY to sources, via the selected shortest path as Figure 3.12 (b).

- 60 -

Chapter 3

Overview Multicast Routing Protocols

Thus, after previous processes the sources can be exchanged data packets with receivers, via selected routes and forwarding groups. These previous processes update the routes between the sources and receivers pairs and creates mesh of nodes.

(a)

(b)

(c)

Figure 3.12 An example of ODMRP:(a) Mesh initialization by source. (b) Join Reply control packets propagation. (c) Final multicast information that each node requires to send and forward data packets.

- 61 -

Chapter 3

Overview Multicast Routing Protocols

In ODMRP, node don't need to be sent to join or leave the group. Any node wants to leave the group, node stops sending Join-Query packets since it does not have any data for sending to the group. And if any node (receiver) don't wants to receive data packet from a particular multicast group, so it does not send the JoinReply for that multicast group.

3.3.2 Dynamic Core-Based Multicast Routing Protocols (DCMP) DCMP [44] is a modification of ODMRP which improves the efficiency of ODMRP by reducing control overhead which leads to improve scalability. In ODMRP, only receivers or intermediate nodes can be response up on receiving JoinReq. But ODMRP has a broadcast nature. DCMP allows to some sources (sources in ODMRP which receives JoinReqs and do nothing) to send its data packets only via a selected other sources (proxies). In DCMP, sources are classified into three types:  Active Sources,  Core Active Sources (Core source for abbreviation), and  Passive Sources. Active sources are similar to sources in ODMRP that flood JoinReq control packets at regular intervals. Core sources plays two main tasks: the first one is to help in constructing mesh topology of network by periodic flooding of JoinReqs as Active source, and the second one is to forward data packets received from one or more passive sources over its mesh. These core sources are dynamic in nature. A passive source does not transmit JoinReq control packets for creation of multicast mesh. A passive source depends on a near core source or active source for forwarding its data packets. The maximum number of passive sources that can be supported by a core source is limited by a parameter called "MaxPassSize". The hop distance between core source and a passive source is bounded by the "MaxHop Parameter".

- 62 -

Chapter 3

Overview Multicast Routing Protocols

In DCMP protocol, when the source has data to send, it floods JoinReq control packets similarly as in ODMRP with one exception that each JoinReq contains an additional flag called "CoreAcceptanceFlag" . The use of sources is as follows. A core source may or may not be able to support more than one passive source due to the "MaxPassSize" parameter restriction. The CoreAcceptanceFlag is reset in the JoinReq packet if it (core source) cannot support more passive sources. By checking this flag, near by active sources come to know whether this core source can support them or not. When an intermediate node receives a non-duplicate JoinReq control packets (it is determined by information inserted in message cache as ODMRP). It broadcasts the packet after storing the up-stream node identification number (ID). A unique identification number is assumed for every node. When the JoinReq control packet is received by the receiver, it builds a JoinReply packet and sends it along the reverse path to the source. When intermediate node along the reverse path receives this JoinReply control packet, they check the next node ID field in the Reply packet. If the nodes ID matches with any of the entries of the field, then it sets its forwarding flag and becomes a forwarding node for that particular multicast group. This node then builds its own Reply packet and broadcasts it. In this way, a route is established by the transmission of the JoinReq and the Reply packets. The previous description of DCMP's mesh creation is the same steps as in ODMRP. When an active source in a multicast group receives a JoinReq packet, it changes its status to a passive source if all the following conditions are satisfied: 

The CoreAcceptanceFlag is set ,



Hop distance traveled by JoinReq must be less than or equal to MaxHop parameter , and



The node ID of the source which receives a JoinReq control packet (hereafter called as "ToBePassive" source) is less than the node ID of the source which sent the JoinReq control packet (hereafter called as "ToBe Core" source).

- 63 -

Chapter 3

Overview Multicast Routing Protocols

If all the above conditions are met, then "ToBePassive" source sends a PassReq control packet to the "ToBeCore", after setting the "CoreReq field" and putting its own ID in the passive source ID field of the packet. The pervious description of DCMP is illustrated as in Figure 3.13 There are four sources S1, S2, S3, S4 and three receivers, each indicated by R in the multicast group. One can assign identification numbers of 1, 2, 3, and 4 to S1, S2, S3, and S4 without any loss of generality. MaxPassSize and MaxHop parameters are taken as 1 and 2 respectively only in this example.

S1 S3

S2 R A S4

R

R

Non-participating node

S

Passive Source

Forwarding Node

S

Core Source

R

Receiver

S Active Source

Figure 3.13 Mesh Topology in DCMP.

Initially to discover the receiver nodes, each source node floods JoinReq (with CoreAcceptanceFlag set). Receivers as well as sources will receive JoinReq packet. Upon receiving the JoinReq packet, each receiver R sends a Reply packet along the reverse path. When an intermediate node receives this Reply packet, it sets its FG-Flag and forwards the Reply packet. In this way (which is similar to ODMRP's operation as shown in figure 3.12), routes between source and receiver node are established.

- 64 -

Chapter 3

Overview Multicast Routing Protocols

When S3 receives a JoinReq packet from S4, it checks the CoreAcceptance Flag. Since (a) initially the CoreAcceptanceFlag is set in the JoinReq packet (sent by S4), (b) the hop distance traveled by the JoinReq packet is 2, and (c) ID of S3 is less than ID of S4. It satisfies all the three conditions prescribed above for status change. Hence, source S3 sends a PassReq packet to S4. In this way, source node S3 changes its status from active source to ToBePassive source and S4 becomes ToBeCore node for S3. After sending the PassReq packet, node S3 sets the Lock flag. So that it will not become core node for other sources and will not send PassReq packets to other sources. Even if S3 gets a PassReq packet from S2, a confirm packet is not sent back to S3. When an intermediate node I receives the PassReq packet, it stores the ID of node S3 in its ConfirmRouteFind table and then forwards the packet to S4. After receiving the PassReq packet, S4 checks its PassiveSupported counter. If the counter is already 1 (as it might have got PassReq from source S2), node S4 does not send a confirm packet to node S3. Hence, at node S3, the Confirm-Wait-timer expires and S3 changes from ToBePassive to active source node. On the other hand, if the counter is 0 at node S4, it sends a confirm packet to S3. S4 then makes an entry for S3 in its PassSourceAddr table, and also increments the PassiveSupported counter. Hence, S4 becomes a forwarding node, i.e. data packets sent by S3 will be forwarded by node S4 to the end recipients. As the PassiveSupported counter is 1 now, future flooding of JoinReq packets by S4 is done with CoreAcceptanceFlag reset. When the intermediate node I receives a confirm packet, it sets its FG-Flag and forwards the confirm packet to S3. After receiving this confirm packet, the ToBePassive node S3 changes from active source to passive source. After this, whenever passive source S3 receives a JoinReq packet from its core source S4, it sends a PassReq packet regardless of the value of CoreAcceptanceFlag in the packet.

- 65 -

Chapter 3

Overview Multicast Routing Protocols

Let us now consider that the relative positions of the nodes have changed due to their mobility (figure 3.14). Now, S3 can get a JoinReq packet from its core node S4 with hop distance 3, which is more than MaxHop. Because of this, S3 wants to discontinue using S4 as the core node. Hence, S3 changes from passive to active source and sends a PassReq packet with the CoreReq field reset. When S4 receives this PassReq packet from S3, it understands that S3 is too far from it, it deletes the entry corresponding to S3 from its PassSourceAddr table and decrements the PassiveSupported counter. This counter is 0 now, future flooding of JoinReq packets by S4 is done with the CoreAcceptanceFlag set.

S3 S1 S3

S2 R A S4

R

R

Non-participating node

S

Passive Source

Forwarding Node

S

Core Source

R

Receiver

S Active Source

Figure 3.14 Change of Topology in DCMP

- 66 -

Chapter 3

Overview Multicast Routing Protocols

3.3.3 Forwarding Group Multicast Protocol (FGMP) Forwarding Group Multicast Protocol (FGMP) [45], is a mesh-based multicast routing protocol, can be viewed as flooding with "limited scope", wherein the flooding is contained within a selected forwarding group (FG) node. In order to form the multicast mesh, each receiver floods the JoinReq control packet in the network. When the sources receive these JoinReq control packets, each source updates its member table and creates a forwarding table. The member table keeps the IDs of all the receivers in the multicast group. After creating the forwarding table, the source forwards this table toward the receivers. When the forwarding table reaches the receivers, the routes between the source-receiver pairs get established. R1 I2 S1 I3 I1 R2 I4

I5

I6 I7

I8

S2 I10

R3

I9

JoinReq packet

Multicast mesh node

JoinReply packet

Multicast group member

JoinReq in both directions

Non-participating node

JoinReply in both directions

Figure 3.15 Mesh topology in FGMP. - 67 -

Chapter 3

Overview Multicast Routing Protocols

In Figure 3.15, when receivers Rl, R2, and R3 want to join the multicast group, they send JoinReq control packets. After receiving the JoinReq control packets, sources Sl and S2 update their member tables. After refreshing the member tables, each source creates its forwarding table and broadcasts it. The forwarding table contains the next-hop information, which is obtained by using the underlying unicast routing protocol. After receiving the forwarding table, neighbor nodes I6 and I9, whose node ID matches with the entry in the forwarding table, set their forwarding flags and become the forwarding nodes for that particular multicast group. Now nodes I6 and I9 build their own forwarding tables and forward them again. In this way, the forwarding tables reach receivers Rl, R2, and R3 along the reverse shortest path and the route is established.

3.4 Stateless Approaches The pervious approaches (tree based and mesh based routing protocols) have the overhead to create and maintain the delivery mesh or tree routing with time. Nodes in mobile ad hoc networks are free to move anytime, anywhere, and at different speeds. Random movement of the nodes lead to a high dynamic topology, especially in a high mobility environment. This leads to increase the overhead in maintaining the

delivery tree or mesh based routing. Thus, for minimizing the effect of this problem, stateless multicast is proposed. The aim of stateless multicast approaches they are used in small group multicast and supposes the underlying routing to interest of forwarding the packet to destinations depend on the addresses. This category also have protocols such as, Differential Destination Multicast (DDM) protocol [60], and DSR Simple Multicast and Broadcast protocol (DSRMB)…etc [61].

- 68 -

Chapter 3

Overview Multicast Routing Protocols

3.4.1 Differential Destination Multicast Differential Destination Multicast (DDM) [33] protocol, dealings with small multicast group, operating in mobile ad hoc networks of any size, different from other routing protocols. It is used in mobile ad hoc networks, it leaves the sources to create a tree with receivers and forwarding nodes as following. In DDM, the sources refer to receivers addresses in multicast data packets by using data header of DDM, the packet headers contain the variable length destination list, and using unicast routing protocol to reach the packets to the destinations. In DDM each node has a Forwarding Set (FS) for each multicast session. This records the path to destinations for this node. Also, each node maintain a Direction Set (DS) to record the particular next hop to destination, and it stands two kinds of approaches: soft state mode and stateless mode. Soft state mode, depending on routing information. Each node in the forwarding path remembers the destinations and information of next hop, by caching this routing information at each node. Otherwise, stateless mode, the nodes along the data forwarding paths need not maintain multicast forwarding states. An intermediate node receiving a DDM packet only needs to look at the header to decide how to forward the packet. At each node; there is a Forwarding Set (FS) contain the multicast Member List (ML) and node also maintain a Direction Set (DS) to record the particular next hop which multicast destination data are forwarded. Otherwise, every intermediate node, the FS is the union of several subsets depend on the data received from upstream neighbors. Associated with each set FS_k, there is a sequence number SEQ(FS_k)which is used to record the last DDM Block Sequence Number seen in a received DDM data packet from an upstream neighbor k.

- 69 -

Chapter 3

Overview Multicast Routing Protocols

DDM deal with two types of packets: data and control packets. The data packets may contain control information. In DDM, the sources update its Member List and replies with an ACK. The membership refreshing becomes source initiated. After interval fixed time, the sources set a POLL flag in the next exchanging data packet. Multicast members need to unicast a JOIN message again to the source to express their continued interest. The members can also leave the session by sending a clear LEAVE message. Control Data "CTRL_DATA" is used to make multicast data to send it to a special destination by using unicast.

3.4.2 DSR simple Multicast and Broadcast Protocol Multicast and broadcast functionality in ad hoc networks have been provided in the DSR simple Multicast and Broadcast protocol (DSR-MB). The DSR simple Multicast and Broadcast protocol (DSR-MB) uses the route discovery mechanism to flood the data in the network (this route discovery mechanism defined by the DSR unicast routing protocol). Though, the DSR-MB is created from DSR, DSR-MB can be applied stand alone routing protocol, and it does not based on unicast routing to apply. DSR-MB, utilizes controlled flooding to distribute data in the network and does not require establishment of a state in the network for data delivery. It is not intended as a general purpose multicast protocol. Its applicability is mainly in environments characterized by very high mobility or by a relatively small number of nodes. In the former case, protocols relying on the establishment of multicast state perform inadequately because they are unable to track the rapid changes in topology. In the latter case, the overhead of keeping multicast state exceeds the overhead of flooding.

- 70 -

Chapter 3

Overview Multicast Routing Protocols

3.5 Summary In this chapter we introduced an overview challenges of multicast routing protocols of Mobile Ad hoc Networks "MANETs” and an overview of multicast routing protocols under topology. They classified into three approaches:  Tree-based approaches (AMRIS – LGT – BEMRP ...).  Mesh-based approaches (ODMRP- DCMRP – CAMP- FGMRP…).  Stateless approaches ( DSR_MP – DDM …). We illustrated, for each approach, how multicast routing protocol creates routes from sources to receivers. In the next chapter, we propose a multicast routing algorithm that reduces the cost MANETs bandwidth by reducing the number of data packet transmissions. We start by investigating some graph theory algorithms based multicast routing protocol.

- 71 -

Chapter Four The Proposed Multicast Routing Algorithm

Chapter 4

Proposed Multicast Routing Algorithm

Chapter Four

The Proposed Multicast Routing Algorithm 4.1 Introduction Energy limited nodes (Mobile Hosts), bandwidth constrained, variable capacity wireless links and dynamic topology characterize the Mobile Ad hoc Network. Routing in a mobile ad hoc depends on many factors including topology, location of request initiator and alternative routers…etc. The specific underlying characteristics of mobile ad hoc could serve as a heuristic in finding the route quickly and efficiently. One of the major challenges in designing a routing protocol for MANETs is the selection of the efficient route and determining the current network topology. In this chapter, we propose a multicast routing algorithm to reduce the cost MANETs bandwidth by reducing the number of data packet transmissions. The key idea is to develop a routing protocol that determine the minimum multicast tree by finding the Minimum Number of Transmission (MNT) using Minimum Cost Tree (MCT) and virtual mesh-based protocol. Using mesh-based would strengthen the proposed algorithm when it applied to a large number nodes network since finding route to a destination also requires frequent exchange of routing control information among the nodes. We utilize the mesh-based routing to generate more than one path from sources to destinations. We compare the proposed algorithm to the Shortest Path Tree (SPT) algorithm, the most multicast routing protocols used in MANETs, upon bandwidth (number of transmission), throughput, and faster join metrics.

- 73 -

Chapter 4

Proposed Multicast Routing Algorithm

This chapter divided into seven sections. The second and third sections discuss performance evaluation criteria and preliminaries of graph theory. Section four and five discuss the "ODMRP" multicast protocol which intended to modify. Finally, section six and seven give our proposed " ODMR-MCTP " protocol and a conclusion of the chapter.

4.2 Performance Evaluation Criteria Several performance evaluation criteria of multicast routing algorithms have been proposed by the communication researchers community. These include the metrics: throughput, quality of services, robustness, energy efficiency, stability, and fairness [8].  Throughput: is defined as the fraction of the raw bandwidth used exclusively for data transmission. It is impossible to use 100% of the bandwidth for data transmissions due to the unavoidable bandwidth used for overhead.  Robustness: is defined as the performance of multicast routing protocols since it should be enough to achieve a high performance as in packet delivery ratio.  Quality of Services QoS: Low delay, high packet delivery ratio, and guaranteed bandwidth are some of the metrics that can define Quality of Services " QoS".  Energy Efficiency: is crucial for lightweight battery operated radios to avoid consuming their limited energy resources.  Fairness: can be achieved by partitioning the network resources (bandwidth) in a balanced fashion among the nodes trying to obtain channel access.  Stability: MANET protocols control a dynamic system, so their performance can become unstable, like many dynamic systems, if certain conditions are not met. - 74 -

Chapter 4

Proposed Multicast Routing Algorithm

4.3 Graph Theory There are various types of graphs, each with its own definition. Unfortunately, some people apply the term “graph” rather loosely, so you can not be sure, which type of graph they are talking about unless you ask them. To motivate the various definitions, we’ll begin with some examples [62]. Example 1 (A computer network): Computers are often linked with one another so that they can interchange information. Given a collection of computers, we would like to describe this linkage in fairly clean terms so that we can answer questions such as “How can we send a message from computer A to computer B using the fewest possible intermediate computers?”. We can do this by making a list, which consists of pairs of computers that are connected. Note that these pairs are unordered. So, if computer C can communicate with computer D, then the reverse is also true. There are sometimes exceptions to this, but they are rare and we will assume that our collection of computers do not have such an exception. Graphs are discrete structures which consist of vertices and edges that connect these vertices. A graph, [63], G = (V, E) consists of V, a nonempty set of vertices or nodes and E, a set of edges. Each edge has either one or two vertices associated with it, called its endpoint, that is said to connect its endpoint. The set of vertices V of graph G may be infinite, a graph with an infinite vertex set is called an infinite graph, and in comparison a graph with a finite vertex is called a finite graph. A graph can be divided into two categories: undirected graph that is their edges are undirected ( see figure 4.1 (a)), and directed graphs that their edges are directed ( see figure 4.1 (b)).

- 75 -

Chapter 4

Proposed Multicast Routing Algorithm

3

4

3

4

2

1

2

(a) Undirected graph

1

(b) Directed graph

Figure 4.1 Directed graph and undirected graph

The development of graph theory is very similar to the development of probability theory, while much of the original work was motivated by efforts to understand games of chance. The large portions of graph theory have been motivated by studying games and recreational mathematics. In general, we use graphs in two situations. First, a graph is a very suitable and natural way of representing the relation between objects (vertices) and lines or edges. In many problems such

pictorial representation are needed. Examples of these

applications are Chemical Molecule, Network Model and Map Colouring. Other examples are signal-flow graphs, and tracing maze… etc [63]. There are many graph algorithms exist; are applicable in computer science branches. In particular, Minimum Spanning Tree (MST) and Shortest Path Tree (SPT) play an important role in multicast routing protocols.

- 76 -

Chapter 4

Proposed Multicast Routing Algorithm

4.2.1 Shortest Path Tree Algorithm The main aim of Shortest Path Tree (SPT) is to find shortest paths from sources and their destinations in a network (graph). The Shortest Path Tree (SPT) algorithm [55] : Input: connected graph G, non-negative edge weights. Output: A tree connecting all sources, forward nodes and receivers of network. Step 0: Pick a vertex as starting node. (Call it S) mark it in red. Step 1: Connect the nearest black neighbor to S, mark it and the edge connecting the vertex in red. Step 2: Find the shortest path tree from S to destinations, (Call it R) Mark all sources (S), receivers(R) and all nodes between them by red colour (continues links). Step 3: Repeat steps 2 until all receivers of a network are marked in red. The red sub graph is the Shortest Path Tree. The previous algorithm finds the distances from a given vertex (source) to every other vertex (destination) in a connected graph G, where G is assumed to have positive weights on its edges. It does so by constructing a tree in the graph G called a shortest path tree. The idea of the algorithm is to begin with set of vertices {source} and enlarge this set vertex by vertex, so that at each stage one knows the distance as defined by a path of shortest length in the tree from that source to every other vertex in V. Figure 4.2 illustrated this algorithm.

- 77 -

Chapter 4

Proposed Multicast Routing Algorithm

source

destination

forward node

idle node

basic path

D3 idle

alternative path

f4 D2

idle

f2

D1 f3 idle

f1

S

Figure 4.2 Continues links show Shortest Path Tree (SPT) graph.

Figure 4.2 illustrates how vertex (S) join with vertices D1, D2,and D3 using Shortest Path Tree "SPT" that finds the shortest distances from a given vertex S (source) to every other vertex (D1, D2,and D3). Since, when source node (S) broadcasts its JoinReq, each intermediate node f1,f2, and f3 receives JoinReq firstly before other nodes. Each one of f1,f2, and f3 rebroadcasts that JoinReq to other nodes in the network. The same operation is done by any intermediate node until JoinReq reaches to D1, D2,and D3. Node D1 sends its JoinReply to S via f3. Also, D2 do the same operation via f1, and D3 via f4 and f2. Then, route or path between S and D1 is established via f3 as and path between S and D2 is established via f1 as . In addition, similar steps establish route between S and D3 via path between S and D3 is established via f4 and f2 as .

- 78 -

Chapter 4

Proposed Multicast Routing Algorithm

The following figure, figure 4.3 gives a flow chart for constructing the shortest path tree. Start

Pick a vertex (Sources) mark its red

Find SPT from S to all R‘s and mark its red

All R’s received Join Req

No

Yes

Red sub graph is SPTs

End

Figure 4.3 Flow chart of Shortest Path Tree “SPT”

4.3.2 Minimum Spanning Tree Algorithm The main aim of Minimum Spanning Tree (MST) is spanning all nodes or vertices (sources nodes, idle nodes, forward nodes and receives nodes) in the network (graph).

- 79 -

Chapter 4

Proposed Multicast Routing Algorithm

The following algorithm finds the minimum distances of all nodes in a connected graph G, where G is assumed to have positive weights on its edges. It does so by constructing a spanning tree with minimum distances between all nodes called a minimum spanning tree. Prim’s Algorithm for producing a minimum spanning tree [64]: Input: connected graph G, non-negative edge weights. Output: a tree connecting all nodes or vertices in the network. Step 1: Select an arbitrary starting node and then connect it to its nearest node, least weight and mark by red colour (continues links). Step 2: Connect the nearest black neighbor to the red sub graph. Mark it and the edge connecting the vertex to the red sub graph in red. Step 3: Repeat step 2 until all nodes have been connected. The red sub graph is the minimum spanning tree. The idea of this algorithm is to begin with any of vertices V = {v0} and enlarge this set vertex by vertex, until connecting all nodes in the graph, result graph is the minimum spanning tree graph. Figure 4.4 describes this algorithm. In figure 4.4, continues links describes a minimum spanning tree

that

connects all vertices (nodes) in the graph. Note that, the number of continues links (hops) is N-1 always (N is number of nodes) in any graph. When N=11, then the number of continues links =10. Two other examples are illustrated in figure 4.5.

- 80 -

Chapter 4

Proposed Multicast Routing Algorithm

source

destination

forward node

idle node

basic path

D3 idle

alternative path

f4 D2

idle

f2

D1 f3 idle

S

Figure 4.4 Continues links show Minimum Spanning Tree.

Figure 4.5 Continues links show Examples of Minimum Spanning Tree (MST).

- 81 -

f1

Chapter 4

Proposed Multicast Routing Algorithm

The following figure, figure 4.6, gives a flow chart for constructing the minimum spanning tree. Start

Pick a vertex (Sources) mark its red

all nodes in a network received Join Req and mark its red

All nodes received Join Req

No

Yes

Red sub graph is MSTs

End

Figure 4.6 Flow chart of Minimum Spanning Tree

“MSTs”

4.4 The Proposed algorithm 4.4.1 preliminaries In this section, we introduce what we call Minimum Cost Tree (MCT) together with virtual mesh topology (alternative paths exist 'virtual links' when link failure is due to continue change of network topology) to achieve better performance than tree based topology.

- 82 -

Chapter 4

Proposed Multicast Routing Algorithm

The main aim of Minimum Cost Tree (MCT) is to find shortest path tree to each receiver from any forward node, any receiver, or any source not only from sources. On the other hand, the main goal of shortest path tree is to find shortest path tree to each receiver from sources only to receivers. This can be illustrated by figure 4.7. Shortest Path Tree (SPT) assumes six numbers of transmissions, which it establishes path between S and D1 via f1 as and path between S and D2 as . In addition, path between S and D3 is established via f3 and f2 as as shown in figure 4.7 (a), where S is source, D1,D2 and D3 are destinations, and f1,f2,f3and f4 are forward nodes. Minimum Cost Tree (MCT) assumes four numbers of transmissions using paths and as figure 4.7 (b).

D3

D3 idle

idle

f3

f3

D1

D1 D2

D2

f2

f2

f1

S

S (a) initialized paths by SPT

(b) initialized paths by MCT

source

destination

forward node

idle node

basic path

alternative path

Figure 4.7 Show different distance (paths) between SPT and MCT - 83 -

f1

Chapter 4

Proposed Multicast Routing Algorithm

This idea is different from Minimum Spanning Tree (MST) in constructing tree since MST spanning all nodes (vertices) in the network (idle nodes, forward nodes and receives nodes) and always assume number of transmissions N-1, N is the number of vertices or nodes. We note that: 1. Minimum Cost Tree is better than Shortest Path Tree in case of number of transmissions or needed bandwidth. 2. Minimum Cost Tree is better than Shortest Path Tree in Throughput reductions (total amount of data a receiver actually receives divided by the time between receiving the first packet and the last packet). 3. Minimum Cost Tree is better than Shortest Path Tree in case of faster join when any node need to join the network it tries to find the nearest destinations, any forward nodes or any sources. 4. We note that Shortest Path Tree offer lower end-to-end delay and delay jitter than Minimum Cost Tree. The aim of SPT algorithm is to construct a tree rooted at the sender and spanning all the receivers. The distance between the sender and each receiver along the tree is become minimum. As a result, the SPT algorithm normally minimize the end-to-end delay as well. The following greedy algorithm will be used for mesh multicast routing tree to achieve higher performances upon bandwidths (minimum number of transmissions) and throughputs.

- 84 -

Chapter 4

Proposed Multicast Routing Algorithm

4.4.2 The Proposed algorithm "MCT" Now, we state the proposed algorithm, which we call " Minimum Cost Tree algorithm". Input: connected graph G, non-negative edge weights (unit weight). Output: a tree connecting all sources, forward nodes and receivers of network. Step 0: Pick a vertex as starting node. (Call it S) mark it in red. Step 1: Find the nearest neighbor of S. (Call it f) Mark both f1 and the edge Sf1 in red to arrive to all receivers. Step2: Find the shortest path tree to each receiver from any forward nodes, any receivers, or any sources. Mark it and the edge connecting the vertex to the red sub graph in red. All black edges in the graph that connect red vertices are alternative paths 'virtual links'. Step 3.Repeat step 2 until all receivers of network are marked in red. The red sub graph is the minimum cost spanning tree. Start

Pick a vertex S (Sources)

Find SPT to each Receivers from any forward nodes, any receivers, or any sources

All Receivers received Join Req

No

Yes

Red sub graph is MCTs End Figure 4.11 Flow chart of Minimum Cost Tree “MCT” - 85 -

Chapter 4

Proposed Multicast Routing Algorithm

The goal of MCT algorithm is to minimize the overall cost of the multicast tree. MCT is no longer difficult to implement, and could potentially offer better performance because they typically consume less bandwidth than SPT. When the multicast group is large enough, the MCT algorithm makes new receivers share as many links as possible with the existing receivers, because the algorithm tries to minimize the number of edges in the tree. Forwarding nodes in a multicast tree, the more traffic it generates in the network, causing more congestion and packet collisions, so Shortest Path Tree (SPT) would still to be considered the better choice for many real-time applications such as video/audio conferencing and distance learning because SPT offer lower end-to-end delay and delay jitter than MCT.

4.5 Related Multicast Routing Protocol In this section we present On-Demand Multicast Routing Protocol (ODMRP) [43], which is a mesh-based multicast routing protocol that provides richer connectivity among multicast members. By building a mesh and supplying multiple routes, multicast packets can be delivered to destinations in the face of node movements and topology changes. To establish a mesh for each multicast group, ODMRP uses the concept of forwarding group. The forwarding group is a subset of nodes responsible for forwarding multicast data on shortest paths between any member pairs. Figure 4.12 illustrates the robustness of a mesh configuration and forwarding group. The sources (S1, S2, and S3) send multicast data packets to three receivers (R1, R2, and R3) via three forwarding nodes (A, B, and C). Suppose that route from S1 to R2 is . In a tree configuration, if the link between nodes A and B breaks or fails, R2 cannot receive any packets from S1 until the tree is reconfigured. On the other hand,

- 86 -

Chapter 4

Proposed Multicast Routing Algorithm

ODMRP already has a redundant route to deliver packets without going through the broken link between node A and B.

Figure 4.12. Mesh based topology

- 87 -

Chapter 4

Proposed Multicast Routing Algorithm

4.5.1 An Example of ODMRP Figure 4.13 shows an example of ODMRP operation. Node S is a multicast source. Nodes R1 and R2 are multicast receivers. In Figure 4.13.a, source broadcasts its JoinReq, each intermediate node I1, I2, and I3 receives JoinReq firstly before other intermediate nodes. Each one of them builds its Route table (RT) and Message cache (MC) as shown in Figure 4.13.a. After that, each one of I1, I2, and I3 rebroadcasts that JoinReq to other nodes in the network. The same operation is done by I4 and I5 until JoinReq reaches to R1 and R2. Node R1 sends its JoinReply to S via I4 and then via I1. Also, R2 do the same operation via I5 and then I3 as shown in Figure 4.13.b. when I4 receives JoinReply from R1. It then sets its FG-Flag and builds its own JoinReply since there is a next node ID entry in the JoinReply received from R1 that matches its ID. I4 builds its own JoinReply by determining its original source ID and its next node ID (the last node that sends JoinReq). Next node ID of I4 is I1, which determined by matching information of each JoinReply that I4 received from R1 and Route table of I4 with the similar information about original source S. The same step is done by I1 to send its JoinReply to S. Then, route between S and R1 is established via I1, I4 as . In addition, similar steps establish route between S and R2 via I3, I5 as . Figure 4.13.c illustrates the process of constructing routes and forwarding group between sources and receivers is completed. At this point, source S multicasts its data packets via selected routes and forwarding group nodes. Source S responsible of maintaining and refreshing information of forwarding group and routes by periodic sending of JoinReq.

- 88 -

Chapter 4

Proposed Multicast Routing Algorithm

(a)

(b)

I6 I6

(c)

I6

Figure 4.13 An example of ODMRP: (a) Mesh initialization by source. (b) Join Reply control packets propagation. (c) Final multicast information that each node requires to send and forward data packets.

4.5.1.1 Soft State In ODMRP, packets don't need to be sent to join or leave the group. If a multicast sources want to leave the group, it stop sending JoinReqs packets since it haven't any multicast data packets to send to the group. If a receivers no longer want to receive from a particular multicast group, it remove the corresponding entries from its Member table (MT) and don't transmit the JoinReplys for these groups. Nodes in the forwarding group are reduced to nonforwarding nodes if no JoinReply received within timeout.

- 89 -

Chapter 4

Proposed Multicast Routing Algorithm

4.5.1.2 ODMRP Data Structure Network host running ODMRP requires building and maintaining the following data Structures: member table, route table, and forwarding group table.

4.5.1.2.1 Member Table Every multicast receiver stores the source information in the member tables. For each multicast group, the node is participating in the source ID and the time when the last received JoinReq from the source is recorded. If no JoinReq is received from a source within the refresh period, that entry is removed from the member table. Table 4.1 shows the format of Member table. Multicast Group Address Join Reply Sent Last Sent time Last Join Req Time flag of Join Reply received Stamp Source Address Source Existance timer Table 4.1 Format of Member Table.

4.5.1.2.2 Route Table Route table is created on-demand and is updated and maintained by each node. An entry is updated or inserted if a non-duplicated JoinReq is received. The node keeps the destination and the next hop node to that destination. The Route table explains the next hop information when transmitting JoinReply. Table 4.2 shows the format of Route table.

Destination Address

Next Node Address

Hop Count

Table 4.2 Format of Route Table. - 90 -

Existance timer

Chapter 4

Proposed Multicast Routing Algorithm

4.5.1.2.3 Forwarding Group Table If a node is forwarding node of the multicast group, it maintains and updates the group information in the Forwarding Group table. Multicast group ID and the time when the node last refreshed are recorded. Table 4.3 explains the format of Forwarding Group Table. Multicast Group Address

Existance Timer

Table 4.3 Format of Forwarding Group Table.

4.6. The Proposed On Demand Multicast Routing-Minimum Cost Tree Protocol 'ODMR-MCTP' In this section, we present ODMR-MCTP to improve performance of ODMRP which affected by high mobility speeds. In ODMRP, source link can be considered as a unicast link because it is established between two specific nodes addresses from sources nodes to receivers nodes by using shortest path tree. This unicast link is the first motive to propose our protocol ODMR-MCTP. In Figure 4.14, source broadcasts its JoinReq, each intermediate node I1, I2, and I3 receives JoinReq firstly before other intermediate nodes. Each one of them builds its Route table (RT) and Message cache (MC) as shown in Figure 4.14. After that, each one of I1, I2, and I3 rebroadcasts that JoinReq to other nodes in the network. The same operation is done by I4 and I5 until JoinReq reaches to R1 and R2 and rebroadcasts that JoinReq to other nodes .

- 91 -

Chapter 4

Proposed Multicast Routing Algorithm

I6

Figure 4.14 Mesh initialization by source in ODMR-MCTP

The main aim of Minimum Cost Tree algorithm is to find shortest path tree to each receiver from any forward node, any receiver, or any source (not only from sources, see figure 4.15). Hence, node R2 sends its JoinReply to S via I5 and then via I3. Also, R1 do the same operation via I6 as shown in Figure 4.15. when I5 receives JoinReply from R2. It then sets its FG-Flag and builds its own JoinReply since there is a next node ID entry in the JoinReply received from R2 that matches its ID. I5 builds its own JoinReply by determining its original source ID and its next node ID. Next node ID of I5 is I3, which determined by matching information of each JoinReply that I5 received from R2 and Route table of I5 with the similar information about original source S.

I6

Figure 4.15 Join Reply control packets propagation in ODMR-MCTP. - 92 -

Chapter 4

Proposed Multicast Routing Algorithm

The same step is done by I3 to send its JoinReply to S. Then, route between S and R2 is established via I3, I5 as . In addition, similar steps establish route between R1 and R2 via I6 as ; in this state, R2 work as receiver and router to R1 . Figure 4.16 illustrates the process of constructing routes and forwarding group between sources and receivers is completed. At this point, source S multicasts its data packets via selected routes and forwarding group nodes. Source S responsible of maintaining and refreshing information of forwarding group and routes by periodic sending of JoinReq.

R1

S

R1

I6

S I6

Figure 4.16 Final multicast information that each node requires to send and forward data in ODMR-MCTP

It is noted that: 1. Minimum Cost Tree is better than Shortest Path Tree in case of number of transmissions or needed bandwidth. 2. Minimum Cost Tree is better than Shortest Path Tree in Throughput reductions (total amount of data a receiver actually receives divided by the time between receiving the first packet and the last packet).

- 93 -

Chapter 4

Proposed Multicast Routing Algorithm

4.7 Summary This chapter gives an overview of some graph theory algorithms (Shortest Path Tree "SPT" and Minimum Spanning Tree "MST") based multicast routing protocol with some figures that show at a glance the mechanism of each algorithm. Also, a multicast routing protocol based on Minimum Cost Tree "MCT" is proposed. In addition, we extend the proposed protocol to the multicast routing protocol (ODMRP) which we call “ODMR-MCTP”. In the next chapter; we evaluate and compare the performance of the proposed multicast routing algorithm (ODMR-MCTP) and the original ODMRP using “MATLAB simulation”. In addition, we can introduce the results and discussion of simulation on metrics bandwidth, throughput and faster join to any node in a network.

- 94 -

Chapter Five Simulations and Performance Evaluation

Chapter 5

Simulations and Performance Evaluation

Chapter Five

Simulations and Performance Evaluation The purpose of this chapter is to study the performance of the two protocols: the original On-Demand Multicast Routing Protocols “ODMRP”, and the proposed On Demand Multicast Routing-Minimum Cost Tree Protocol “ODMR-MCTP” introduced in the previous chapter. We compare ODMRP, and ODMR-MCTP upon bandwidth (number of transmissions), throughput and faster join metrics. This chapter includes six sections. The first and second sections contain software design and related multicast routing protocols. The third section and four illustrate simulation parameters and performance parameters evaluation. Finally, section five and six include results and a conclusion of this chapter.

5.1 Software design We build, evaluate and compare the performance of the proposed multicast routing algorithm (ODMR-MCTP) and the original ODMRP using “MATLAB simulation”. Performance metrics evaluation used to compare are: routing creation, throughput, needed bandwidth and faster join to any new nodes. The comparisons are run on CPU 2.4 GHz, cache128 MB, ram 256 MB and using windows XP operating system.

- 96 -

Chapter 5

Simulations and Performance Evaluation

5.2 Multicast Routing Protocol To evaluate the performance of the proposed multicast routing algorithm Minimum Cost Tree (MCT), we choose ODMRP as a reference protocol for the comparison to our algorithm. ODMRP was chosen for several reasons. First, it is pure mesh-based; hence, it is more robust than any other mesh-based. Second, ODMRP has the added advantage that it does not require a separate unicast routing protocol.

5.3 Simulation Parameters Using the same input values for the compared algorithms allow real comparison between them. In the performance parameters evaluation part, the following parameters are used to compare both the routing creation, throughput, needed bandwidth, and faster join to any new nodes. The following values are used for the compared algorithms:  Numbers of nodes (N) is 100 nodes.  Nodes range taken 1000 m* 1000 m.  Number of physical links taken 196 links.  Number of multicast group is chosen from 10 to 70.  Numbers of virtual Links are different dependent on number of receivers.  Data packet size: 256 bytes.  Network bandwidth: 1 Mbit/Sec.  Pause time of mobility model: 10 Sec.  Range of wireless transmission (coverage area): 250 meters.  Mobility model: fixed.

- 97 -

Chapter 5

Simulations and Performance Evaluation

5.4 Performance Parameters Evaluation After calculating and selecting number of transmissions, and transmitting packets per second for each multicast routing algorithm, which are: Shortest Path Trees ‘SPTs’ and our proposal Minimum Cost Trees ‘MCTs’. The following performance parameters; bandwidth and throughput are measured based on the output of the compared multicast routing algorithms (‘SPTs’ and ‘MCTs’). The proposed multicast routing algorithm (‘MCTs’) objective is to decrease bandwidths, and increasing both the faster join to any node and throughput. The inputs and outputs of both On-Demand Multicast Routing Protocol ‘ODMRP’ and On Demand Multicast Routing Protocol-Minimum Cost Trees ‘ODMR_MCTP’ , is implemented as follows:

Inputs:  Numbers of nodes (N).  Nodes range taken 1000 m* 1000 m.  Number of physical links taken 196 links.  Number of multicast group is taken from 10 to 70.  Total number of packets ( NP ).  Data packets size:256 bytes.  Network bandwidth: 1 Mbit/Sec.  Pause time of mobility model: 10 Sec.  Range of wireless transmission (coverage area): 250 meters.  Smallest arrival time. 

Largest arrival time.

 Initial time and arrival time for each message.

Outputs:  Bandwidth (Number of transmissions).  Throughputs.

- 98 -

Chapter 5

Simulations and Performance Evaluation

Steps: Calculate the following performance parameters (Bandwidth and throughput).

5.4.1 Bandwidth Bandwidth is limited in mobile ad hoc networks; it is used as units of all links. We aimed to minimize bandwidth using ODMR-MCTP by selecting minimum number of transmissions upon links. Bandwidth is calculated as follows: 1. Selecting routes or paths by using MCT (shortest path tree from the receivers to any sources, any forward nodes, or any receivers ). 2. Find minimum number of transmissions (calculate selecting routes or paths) that is the bandwidth. 3. Calculate bandwidth. Bandwidth = number of transmissions as units.

5.4.2 Throughput Throughput define as the amount of data successfully transmitted from a sources to a receivers divided by the time between receiving the first packet and the last packet. Our proposal ODMR-MCTP objective’s is to maximize throughput. Throughput is calculated as follows: 1. Find the initial time to first packet and arrival time to last packet. 2. Calculate throughput. Total number of packets (NP) Throughput =

* 1000 . Receiving last packet time - Receiving first packet time

- 99 -

Chapter 5

Simulations and Performance Evaluation

5.4.3 Faster join In addition, we can illustrate the faster join to any node in a network as shown in figure 5.1, which shows the difference between the proposed algorithm (MCT) and shortest path tree as shown in figures 5.2 and 5.3. When node n1 wants to join the network in figure 5.1, it is noticed that when SPT is used, two numbers of transmissions are required. Namely, the path n1, f3 and S as shown in figure 5.2. In addition, on using MCT (find shortest path from any source or forward node or destinations to new node), only one number of transmission via n1, d1 or n1, d2 is required as shown in figure 5.3.

n1

d2

d1

f3 f1

f2

S Figure 5.1 Show how node n1 join to network

- 100 -

Chapter 5

Simulations and Performance Evaluation

n1

n1

d2

d1

f3 f1

d2

d1

f3

f2

f1

S

f2

S

Figure 5.2 Show how node n1 join to network by using SPT

Figure 5.3 Show how node n1 join to network by using MCT

5.5 Results and Discussion In this section, we compare the performance of the proposed ODMR-MCTP algorithm and the original ODMRP. Three figures (figure 5.4, figure 5.5, and figure 5.6) are used to compare the performance of the proposed algorithm ODMR-MCTP and ODMRP upon bandwidth when number of multicast group chosen from 10 to 70 hosts. In addition, three figures (figure 5.7, figure5.8, and figure 5.9) are used to compare the performance of the proposed algorithm ODMR-MCTP and ODMRP upon throughput at multicast group chosen from 10 to 70 hosts.

- 101 -

Chapter 5

Simulations and Performance Evaluation

5.5.1 Needed Bandwidth First, we compare the performance of ODMRP when it uses Shortest Path Tree (SPT) and the proposed Minimum Cost Tree (MCT) routing algorithm. Figures 5.4, 5.5 and 5.6, show the affections of different multicast routing algorithms on selecting routes or paths between the nodes and number of hops (Bandwidth) that can be used to exchange data or packet between sources and receivers node. It is noted that minimum cost tree consume much less bandwidth (number of links or hops) than shortest path tree; this is due to the dependency of the needed bandwidth on number of links or hops and number of receivers.

Multicast group

10

20

30

40

50

60

70

ODMRP ODMR_MCTP

19

22

32

37

42

39

32

14

18

24

22

25

22

20

Table 5.1 Needed Bandwidth at number of destinations =5

Needed Bandwidth is unit

ODMRP

ODMR-MCTP

60 50 40 30 20 10 0 10

20

30

40

50

60

Number of group member

Figure 5.4 Needed Bandwidth at number of destinations =5 - 102 -

70

Chapter 5

Simulations and Performance Evaluation

Multicast group

10

20

30

40

50

60

70

ODMRP ODMR_MCTP

41

51

48

52

52

51

50

30

37

27

30

32

36

27

Table 5.2 Needed Bandwidth at number of destinations =10

ODMRP

ODMR-MCTP

Needed Bandwidth is unit

60 50 40 30 20 10 0 10

20

30

40

50

60

Number of group member

Figure 5.5 Needed Bandwidth at number of destinations =10

- 103 -

70

Chapter 5

Simulations and Performance Evaluation

Multicast group

10

20

30

40

50

60

70

ODMRP ODMR_MCTP

51

40

49

52

54

52

58

32

36

33

35

34

32

33

Table 5.3 Needed Bandwidth at number of destinations =15

Needed Bandwidth is unit

ODMRP

ODMR-MCTP

60 50 40 30 20 10 0 10

20

30

40

50

60

70

Number of group member

Figure 5.5 Needed Bandwidth at number of destinations =15

5.5.2 Throughput Throughput is the total amount of data a receiver actually receives divided by the time between receiving the first packet and the last packet. We compare the performance of ODMRP that uses Shortest Path Tree (SPT) and the proposed Minimum Cost Tree (MCT) routing algorithms. - 104 -

Chapter 5

Simulations and Performance Evaluation

Data delivery ratio is illustrated at figures 5.4, 5.5 and 5.6. When number of group members increases, the number of forwarding group nodes increases accordingly. Also, group members can be in locations near to sources, which reduce hop distance between sources and receivers. Small hop distance and large forwarding group help in high and fast delivery of data packets. The previous description explains increasing in data delivery ratio as a function of group members. Figures, 5.7, 5.8, and 5.9 shows the affections of different routing algorithms on ODMRP upon throughput criteria. It is noted that MCT achieve better performance than SPT about ODMRP.

Multicast group

10

20

30

40

50

60

70

ODMRP ODMR_MCTP

90

130

170

180

190

180

150

140

150

230

250

280

260

210

Table 5.4 Throughput at number of destinations =5

ODMRP

ODMR_MCTP

Throughput

600 500 400 300 200 100 0 10

20

30

40

50

60

Multicast group member

Figure 5.7 Throughput at number of destinations =5

- 105 -

70

Chapter 5

Simulations and Performance Evaluation

Multicast group

10

20

30

40

50

60

70

ODMRP ODMR_MCTP

300

260

270

310

250

290

280

410

350

320

340

345

320

330

Table 5.5 Throughput at number of destinations =10

ODMRP

ODMR_MCTP

Throughput

600 500 400 300 200 100 0 10

20

30

40

50

Multicast group member

Figure 5.8 Throughput at number of destinations =10

- 106 -

60

70

Chapter 5

Simulations and Performance Evaluation

# of group member

ODMRP ODMR_MCTP

10

20

30

40

50

60

70

260 350

360 400

330 490

330 520

340 540

330 500

330 580

Table 5.6 Throughput at number of destinations =15

ODMRP

ODMR_MCTP

600

Throughput

500 400 300 200 100 0 10

20

30

40

50

60

Multicast group member

Figure 5.9 Throughput at number of destinations =15

- 107 -

70

Chapter 5

Simulations and Performance Evaluation

5.6 Summary and Conclusion In this chapter, we introduced a comparison between the original On-Demand Multicast Routing Protocol “ODMRP” and the proposed On Demand Multicast Routing-Minimum Cost Tree Protocol “ODMR-MCTP”, using MATLAB simulation. Upon the experiments, performance evaluation can be summarized as : 1. On Demand Multicast Routing-Minimum Cost Tree Protocol consume much less bandwidth ( number of transmissions ) than On-Demand Multicast Routing Protocol. 2. On Demand Multicast Routing-Minimum Cost Tree Protocol consume more Throughput than On-Demand Multicast Routing Protocol. 3. Minimum Cost Tree is better than Shortest Path Tree in case of faster join, when any node need to join the network it tries to find the nearest destinations, any forward nodes or any sources.

- 108 -

Chapter Six

Conclusions and Future Work

Chapter 6

Conclusion and Future Work

Chapter Six

Conclusions and Future Work

6.1 Conclusions Multicast is intending for group communication that supports the dissemination of information from a sender to all receive of group. The difficulties of MANETs are the scarcity of bandwidth, short lifetime due to power consumption dynamic topology caused by nodes mobility; this problem put in force to simple design. This thesis proposed a new algorithm that is Minimum Cost Tree "MCT". The main idea of the proposed algorithm "MCT" is to develop a routing protocol that determine the minimum multicast tree by finding the Minimum Number of Transmission (MNT) using MCT and virtual mesh-based protocol. The thesis presents the design and application of our modified multicast routing algorithm Minimum Cost Tree "MCT" that apply on On-Demand Multicast Routing Protocol "ODMRP" what we call ODMR_MCTP for mobile ad hoc networks. It is a modified version of mesh multicast routing protocol to meet scalability issue especially with faster join request, throughput, and minimum using bandwidth of routing protocols. Results and evaluations illustrate the following points:

- 110 -

Chapter 6



Conclusion and Future Work

Minimum Cost Tree can be used to reduce the cost MANETs bandwidth by reducing the number of data packet transmissions.



Minimum Cost Tree is better than Shortest Path Tree in Throughput reductions (total amount of data a receiver actually receives divided by the time between receiving the first packet and the last packet).



Minimum Cost Tree is better than Shortest Path Tree in case of faster join when any node need to join the network it tries to find the nearest destinations, any forward nodes or any sources.

6.2 Future Work Apply the proposed algorithm what we call Minimum Cost Tree "MCT" for all mesh based multicast routing protocols such as Dynamic Core-Based Multicast Routing Protocol (DCMP), Forwarding Group Multicast Protocol (FGMP), Neighbor sup porting Ad Hoc Multicast Routing Protocol (NSMP), Core-Assisted Mesh Protocol (CAMP)and …etc.

6.3 Outcome from the Thesis On Demand Multicast Routing Protocol based Minimum Cost Tree “ODMRMCTP” that reduces the cost MANETs bandwidth by reducing the number of data packet transmissions.

- 111 -

REFERENCES

REFERENCES

REFERENCES [1] R.Wittmann and

M. Zitterbart

" Multicast Communications , Protocols and

Applications "Technical University of Braunschweig, Germany ,2001. [2] C. M. Cordeiro and D. P. Agrawal, " Ad Hoc and Sensor Networks Theory and Applications " 2006. [3] H. P. Sultana , B. P. Kumar and D.V. Hemanth Reddy "A Survey on Performance Evaluation of Routing Protocol Metrics in Wireless Mesh Networks " Proceeding of IJRRCS_Vol. 2, No. 3, June 2011 [4] C. Siva Ram Murthy and B. S. Manoj, “Ad hoc Wireless Networks Architectures and Protocols,” Prentice Hall, PTR., 2004. [5] C. M. Cordeiro and D. P. Agrawal, "Mobile Ad Hoc Networking," Tutorial Presented in the 2nd Brazilian Symposium on Computer Networks, Editors: Jose Rezende, Lucy Pirmez, and Luiz da Costa Carmo - ACS/NCE/UFRJ, CDD 004.6506 - pp. 125-186, May 2002. [6] M. A. Ali, “Mesh-Based Multicast Protocols in Ad-Hoc Networks ,” MS.c thesis, Faculty of Electronic Engineering , Minoufiya University ,Egypt, 2008. [7] S. K. Sarkar, T. G. Basavaraju, and C. Puttamadappa," Ad Hoc Mobile Wireless Networks, Principles, Protocols, and Applications",2008. [8] B. Tavli and W. Heinzelman, “Mobile Ad Hoc Networks, Energy-Efficient Real-Time Data Communications”, The Netherlands, 2006 Springer. [9] S.S. Vasundra , Dr. B. Sathyanarayana, "Effect of Mobility on Multicast Routing ". Proceeding of IJRRCS_Vol. 2, No. 1, March 2011 [10] M. Ayyash , D. Ucci and Kh. Alzoubi " A Proactively Maintained Quality of Service Infrastructure

for

Wireless

Mobile Ad

Hoc Networks

", proceeding

of

JCNIS_Vol2_No2_August 2010. [11] P. Gupta and P. Kumar, "The Capacity of Wireless Networks," IEEE Transactions on Information Theory, 46(2):388^-04, March 2000.

- 113 -

REFERENCES [12] C.-K. Toh, “Maximum Battery Life Routing to Support Ubiquitous Mobile Computing in Wireless Ad Hoc Networks,” IEEE Communications Magazine, vol. 39, no. 6, pp. 138-147, June 2001 [13] C. E. Jones, K. M. Sivalingam, P. Agrawal, and J. C. Chen, “A Survey of Energy Efficient Network Protocols for Wireless Networks,” Wireless Networks, vol. 7, no. 4, pp. 343-358, August 2001. [14] S. Singh and C. S. Raghavendra, “PAMAS: Power Aware Multi-Access Protocol with Signalling for Ad Hoc Networks,” ACM SIGCOMM Computer Communication Review, vol. 28, no. 3, pp. 5-26, July 1998. [15] Y. khamayseh, A. Bader, W. Mardini, and M. BaniYasein, "A New Protocol for Detecting Black Hole Nodes in Ad Hoc Networks". Proceeding of JCNIS_Vol. 3, No. 1, April 2011 [16] U. Banerjee, A. Swaminathan "Taxonomy of Attacks and Attackers in MANETs " Proceeding of IJRRCS_Vol. 2, No. 2, April 2011 [17] J. Moy, “Security Architecture for the Internet Protocol.” RFC 2401, Internet Society, November 1998. [18] L. Zhou and Z. J. Haas, “Securing Ad Hoc Networks,” IEEE Network Magazine, vol. 13, no. 6, November/ December 1999. [19] Y. Sun, E. Belding-Royer, and C. E. Perkins, "Internet Connectivity for Ad Hoc Mobile Networks," International Journal of Wireless Information Networks, special issue on Mobile Ad hoc Networks, 2002. [20] D. P. Agrawal and Q.-A. Zeng, "Introduction to Wireless and Mobile Systems", Brooks/Cole Publishing, 438 pages, August 2002, ISBN No. 0534-40851-6. [21] J. MacKie-Mason and H. Varian, "Pricing the Internet," In Public Access to the Internet, Prentice-Hall, New Jersey, 1994. [22] Y.Yoo and D.P. Agrawal, "Why it pays to be selfish in MANETs," IEEE Wireless Communications Magazine, to appear, 2006. [23] S.-L. Wu, Y.-C. Tseng, and J.-P. Sheu, “Intelligent Medium Access for Mobile Ad Hoc Networks with Busy Tones and Power Control,” Department of Computer Science and Information Engineering, National Central University, Chung-Li, 32054, Taiwan, 2004.

- 114 -

REFERENCES [24] F. Talucci and M. Gerla, “MACA-BI (MACA By Invitation) A Wireless MAC Protocol for High Speed Ad hoc Networking,” in Proceedings of ICUPC’97, Nov. 1997. [25] M.S. Corson, J. Macker, and S. Batsell, "Architectural Considerations for Mobile Mesh Networking," In Proceedings of the IEEE MILCOM, October 1996. [26] C. E. Perkins, E. M. Royer and S. R. Das, "Ad Hoc On demand Distance Vector Routing (AODV)," Internet RFC 3561, July 2003. [27] D. B. Johnson and D. A. Maltz. " Dynamic Source Routing in Ad hoc Wireless Networks. in Mobile Computing", chapter 5, pages 153–181. Kluwer Academic Publishers, 1996. [28] P. Mohapatra, J. Li, and C. Gui, " QoS in Mobile Ad Hoc Networks", IEEE Wireless Communications Magazine, 10:44–52, 2003. [29] B. Williams, "Network Wide Broadcasting Protocols for Mobile Ad Hoc Networks". M.sc. dissertation, Colorado School of Mines, Golden, CO, 2002. [30] W. B. Heinzelman, A. Chandrakasan, and H. Balakrishnan, " An Application-Specific Protocol Architecture for Wireless Micro sensor

Networks", IEEE Transactions

onWireless Communications, 1:660–670, 2002. [31] T. Ozaki, J. B. Kim, and T. Suda, “Bandwidth Efficient Multicast Routing Protocol for Ad Hoc Networks,” Proceeding of IEEE ICCCN’99, pp. 10–17, October 1999. [32] V. Devarapalli, A. A. Seluck, and D. Sidhu, “Mzr: A Multicast Protocol For Mobile Ad Hoc Networks” ,July 2001. [33] C.-K. Toh, G. Guichala, and S. Bunchua, “ABAM: On-Demand Associativity-Based Multicast Routing For Ad Hoc Mobile Networks,” Proceeding of IEEE VTC, pp. 987–993, September 2000. [34] L. Ji and M. S. Corson, “Differential Destination Multicast – A MANET Multicast Routing Protocol For Small Groups,” Proceeding of INFOCOM, pp. 1192–2002, 2001. [35] S. K. Das, B. S. Manoj, and C. Siva Ram Murthy, “Weight Based Multicast Routing Protocol for Ad Hoc Wireless Networks,” Proceeding of IEEE GLOBECOM, vol. 1, pp. 17–21, November 2002.

- 115 -

REFERENCES [36] R. S. Sisodia, I. Karthigeyan, B. S. Manoj, and C. Siva Ram Murthy, “A Preferred Link-Based Multicast Protocol For Wireless Mobile Ad Hoc Networks,” Proceeding of IEEE ICC, vol. 3, pp. 2213–2217, May 2003. [37] E. M. Royer and C. E. Perkins, “Multicast Ad Hoc On-demand Distance Vector (MAODV) Routing,” July 2000. [38] C. W. Wu and Y. C. Tay, “AMRIs: A Multicast Protocol for Ad Hoc Wireless Networks,” in MILCOM’99, Atlantic City, New Jersey, USA, pp. 25–29, November 1999. [39] L. Ji and M. S. Corson, “A Lightweight Adaptive Multicast Algorithm,” in IEEE GLOBECOM’98, Sydney, Australia, pp. 1036–1042, November 1998. [40] K. Chen and K. Nahrstedt, “Effective Location-Guided Tree Construction Algorithms For Small Group Multicast in MANET,” Proceeding of INFOCOM, pp. 1180–1189, 2002. [41] M.S. Corson and S.G. Batsell, “A Reservation-Based Multicast (RBM) Routing Protocol for Mobile Networks: Initial Route Construction Phase,” ACM/Baltzer Wireless Networks, vol. 1, no. 4, pp. 427–450, December 1995. [42] C. C. Chiang, M. Gerla, and L. Zhang, “Adaptive Shared Tree Multicast In Mobile Wireless Networks,” Proceeding of GLOBECOM, pp. 1817–1822, November 1998. [43] M. Gerla, S.J. Lee, and W. Su, “On-Demand Multicast Routing Protocol (ODMRP) for Ad Hoc Networks,”,2000. [44] S. K. Das, B. S. Manoj, and C. Siva Ram Murthy, “A Dynamic Core-Based Multicast Routing Protocol for Ad Hoc Wireless Networks,” Proceeding of ACM MOBIHOC, pp. 24– 35, June 2002. [45] C. C. Chiang, M. Gerla, and L. Zhang, “Forwarding Group Multicast Protocol (FGMP) for Multihop, Mobile Wireless Networks,” AJ. Cluster Comp, Special Issue on Mobile Computing, vol. 1, no. 2, pp. 187–196, 1998. [46] S. J. Lee and C. Kim, “Neighbor Supporting Ad Hoc Multicast Routing Protocol,” Proceeding of ACM MOBIHOC, pp. 37–50, August 2000. [47] J. J. Garcia, L. Aceves and E. L. Madruga, “The Core Assisted Mesh Protocol,” IEEE Journal on Selected Areas in Communications, vol. 17, no. 8, pp. 1380–1394, August 1999.

- 116 -

REFERENCES [48] M. Liu, R. Talpade, A. McAuley, and E. Bommaiah, “AMRoute: Ad Hoc Multicast Routing Protocol,” Technical Report TR 99-8, University of Maryland and the Institute for Systems Research, Department of Defense (DOD), CSHCN, 1999. [49] P. Sinha, R. Sivakumar, and V. Bharghavan, “MCEDAR: Multicast Core-Extraction Distributed Ad Hoc Routing,” in IEEE Wireless Commun. and Net. Conf, pp. 1313– 1317, September 1999. [50] S. K. S. Gupta and P. K. Srimani, “An adaptive protocol for reliable multicast in mobile multihop radio networks,” in IEEE WMCSA’99, New Orleans, Louisiana, USA, pp. 111–122, February 1999 [51] G. D. Kandylis, S. V. Krishnamurthy, S. K. Dao, and Gregory J. Pottie, “Multicasting Sustained cbr and vbr Traffic in Wireless Ad hoc Networks,” Proceeding of IEEE ICC, pp. 543– 549, June 2000. [52] H. Jiang, S. Cheng, Y. He, and B. Sun, “Multicasting Along Energy Efficient Meshes in Mobile Ad Hoc Networks,” Proceeding of IEEE WCNC, vol. 2, pp. 807–811, March 2002. [53] W. Ye, J. Heidemann, and D. Estrin. "An Energy-Efficient MAC Protocol for Wireless Sensor Networks". In Proceedings of the IEEE Conference on Computer communications (INFOCOM), pages 1567–1576, 2002. [54] S. Singh and C. S. Raghavendra. Pamas" Power Aware Multi-Access Protocol with Signaling for Ad hoc Networks". ACM Computer Communication Review, 28:5–26, 1998. [55] D. Bertsekas and R. Gallager, "Data Networks". Prentice-Hall, 1992. [56] V. P. Kompella, J. C. Pasquale, and G. C. Polyzos, "Multicast Routing for Multimedia Communication". IEEE/ACM Transactions on Networking, 1:286–292, 1993. [57] J. J. Garcia-Luna-Aceves and E. Madruga, "A Multicast Routing Protocol for Ad-Hoc Networks," Proceedings of IEEE Infocom, March 1999. [58] C.-K. Toh, G. Guichal, and S. Bunchua, "ABAM: On-Demand Associativity Based Multicast Routing for Ad Hoc Mobile Networks," Proceedings of IEEE VTC Fall Technology Conference, Vol. 3, 2000. [59] L. Ji and M. S. Corson, "A Lightweight Adaptive Multicast Algorithm," IEEE Globecom,pp. 1036-1042, 1998.

- 117 -

REFERENCES [60] L. Ji and M S. Corson, "Differential Destination Multicast - A MANET Multicast Routing Protocol for Small Groups," Proceedings of IEEE Infocom, pp. 11921202,2001. [61] J. Jetcheva, Y.-C. Hu, D. Maltz, and D. Johnson, "A Simple Protocol for Multicast and Broadcast in Mobile Ad Hoc Networks", Internet Draft, draft-ietfmanet- simplembcast-00.txt, June 2001. [62]http://www.personal.kent.edu/~rmuhamma/GraphTheory/MyGraphtheory/grap_ hIntro. htm]. [63] K. H. Rosen "Discrete Mathematics and its Applications", NY 10020 Sixth Edition ,2007. [64] R. Prim, shortest connection networks and some generalization, Bell System Technical journal 36 (1957). 1389-1401.

- 118 -

‫اﻟﻤــﻠﺨـﺺ‬ ‫اﻟﻌﺮﺑـــــــــــﻲ‬

‫ﺑروﺗوﻛـوﻻت اﻹرﺳﺎل اﻟﻣﺗﻌـدد ﻓﻲ اﻟﺷﺑﻛـﺎت اﻟﻼﺳﻠﻛﯾـﺔ‬ ‫ذات اﻟﻌﻘـد اﻟﻣﺗﺣرﻛـــــــﺔ‬

‫ﻣﻠﺨﺺ اﻟﺮﺳـﺎﻟﺔ‬ ‫إن اﻟﺷﺑﻛﺎت اﻟﻼﺳﻠﻛﯾﺔ ذات اﻟﻌﻘد ) اﻟﻧﻘط( اﻟﻣﺗﺣرﻛﺔ )‪ (Mobile Ad hoc Networks‬ھﻲ ﻋﺑﺎرة ﻋن‬ ‫ﻣﺟﻣوﻋﺔ ﻣن اﻟﻧﻘط )‪) (Nodes‬ﻣﺛل أﺟﮭزة اﻟﺣﺎﺳﺑﺎت اﻟﺷﺧﺻﯾﺔ أو اﻟﻣﺣﻣوﻟﺔ أو أﺟﮭزة اﻟﺗﻠﯾﻔون اﻟﺧﻠوﯾﺔ أو أي‬ ‫ﺟﮭﺎز ﯾﺣﻣل ﺟﮭﺎز ﻻﺳﻠﻛﻲ ( و اﻟﺗﻲ ﺗﻌﺗﻣد ﻋﻠﻰ ﺑﻌﺿﮭﺎ اﻟﺑﻌض ﻓﻲ ﻋﻣﻠﯾﺔ اﻻﺗﺻﺎل و ﺗﺑﺎدل اﻟﺑﯾﺎﻧﺎت ﻓﯾﻣﺎ ﺑﯾﻧﮭﻣﺎ‬ ‫ﺑدون اﻻﻋﺗﻣﺎد ﻋﻠﻰ ﻧﻘﺎط اﻻﺗﺻﺎل اﻟوﺳطﯾﺔ اﻟﺛﺎﺑﺗﺔ )‪ (Base Station‬أي إﻧﮭﺎ ﺗﻌﻣل ﻋﻠﻲ ﺑﻧﯾﮫ ﻏﯾر ﺗﺣﺗﯾﮫ‬ ‫) ‪ . ( Infrastructure less‬ﺗﺗﻣﯾز ھذه اﻟﻧﻘط ﺑﺣرﯾﺔ اﻟﺣرﻛﺔ إﻟﻰ أي ﻣوﻗﻊ ﺗرﯾده و ھذا ﯾؤدى إﻟﻰ ظﮭور ﻣﺷﻛﻠﺔ‬ ‫اﻟﺗﻐﯾر اﻟﻣﺳﺗﻣر و اﻟﻐﯾر ﻣﺗوﻗﻊ ﻓﻲ ﺷﻛل اﻟﻣوﺻﻼت ) ‪ ( Links‬اﻟﺗﻲ ﺗرﺑط ھذه اﻟﻧﻘط ﺣﺗﻰ ﯾﺗﻛون‬ ‫ﻣﺎ ﯾﺳﻣﻲ ﺑﺎﻟــــــ )‪.(Topology‬‬ ‫ازداد اﻟداﻓﻊ ﻟدى اﻟﺑﺎﺣﺛﯾن ﻹﯾﺟﺎد و ﺗطوﯾر ﻣﻘﺗرﺣﺎت ﺗطﺑق ﻣﻔﮭوم اﻟﻧﻘل اﻟﻣﺗﻌدد )‪ (Multicast‬ﺑﯾن اﻟﻣﺟﻣوﻋﺔ‬ ‫اﻟواﺣدة و ھو ﻋﺑﺎرة ﻋن ﻧﻘل ﻧﺳﺧﺔ واﺣدة ﻣن ﺣزم اﻟﺑﯾﺎﻧﺎت )‪ (Packets‬ﻣﺛل اﻟﻣﻠﻔﺎت أو اﻟﺻوت أو اﻟﻔﯾدﯾو إﻟﻰ‬ ‫أﻛﺛر ﻣن ﻣﺳﺗﻘﺑل ﻓﻰ وﻗت واﺣد‪ .‬و ﻟذﻟك ﻗﻣﻧﺎ ﺑﻌﻣل دراﺳﮫ ﻟﻣﻌظم اﻟﻣﻘﺗرﺣﺎت اﻟﺗﻰ ﺗطﺑق ﻣﻔﮭوم اﻟﻧﻘل اﻟﻣﺗﻌدد‬ ‫ﻛﻔﻛرة ﻋﺎﻣﺔ‪ .‬ﺗﻘوم ﺑﻌض ھذه اﻟﻣﻘﺗرﺣﺎت ﺑﺑﻧﺎء ﺷﻛل اﻟوﺻﻼت اﻟﺷﺟري )‪ (Tree Topology‬ﺑﯾﻧﻣﺎ اﻟﺑﻌض‬ ‫اﻵﺧر ﯾﺑﻧﻰ اﻟﺷﻛل اﻟﻌﺷواﺋﻲ ﻟﻠوﺻﻼت )‪.(Mesh Topology‬وﻓﺿل اﻟﺑﺎﺣﺛون ﺗطوﯾر اﻟﻣﻘﺗرﺣﺎت اﻟﺗﻰ ﺗﺑﻧﻰ‬ ‫اﻟﺷﻛل اﻟﻌﺷواﺋﻲ ﻟﻠوﺻﻼت )‪ (Mesh Topology‬ﻓﻘد ﺛﺑت أﻧﮭﺎ اﻷﻗدر ﻋﻠﻰ ﺗوﺻﯾل أﻋﻠﻰ ﻧﺳﺑﺔ ﻣن ﺣزم اﻟﺑﯾﺎﻧﺎت‬ ‫إﻟﻰ اﻟﻣﺳﺗﻘﺑﻠﯾن ﺣﯾث أن ھذا اﻟﻧوع ﯾوﻓر أﻛﺛر ﻣن وﺻﻠﺔ ﺑﯾن أي ﻣرﺳل و ﻣﺳﺗﻘﺑل ﺑﻌﻛس اﻟوﺻﻼت اﻟﺷﺟرﯾﺔ‬ ‫)‪ (Tree Topology‬اﻟﺗﻰ ﺗوﻓر ﻓﻘط أﻗﺻر وﺻﻠﺔ ﺑﯾن ﻛل ﻣن اﻟﻣرﺳل و اﻟﻣﺳﺗﻘﺑل و ﻣن ﻋﯾوﺑﮭﺎ اﻧﮭﺎ ﺳرﯾﻌﺔ‬ ‫اﻻﻧﻛﺳﺎر ﻧﺗﯾﺟﺔ ﻟﺣرﻛﺔ اﻟﻧﻘط ﺑﺳرﻋﺔ وﻋﺷواﺋﯾﮫ‪ .‬ﺑﯾﻧﻣﺎ ﻓﻲ اﻟوﺻﻼت اﻟﻌﺷواﺋﯾﺔ )‪(Mesh Topology‬داﺋﻣﺎ ً ﻣﺎ‬ ‫ﯾوﺟد ﺑدﯾل ﻷي وﺻﻠﺔ ﯾﺣدث ﻟﮭﺎ ﻛﺳر ﺑﯾن اﻟﻣرﺳل و اﻟﻣﺳﺗﻘﺑل‪.‬‬

‫‪-٢-‬‬

‫وھﻧﺎك اﻟﻌدﯾد ﻣن اﻟﺑروﺗوﻛوﻻت اﻟﺗﻲ ﺗﻌﻣل ﻋﻠﻲ اﻟﺷﻛل اﻟﻌﺷواﺋﻲ ﻟﻠوﺻﻼت وﻣﻧﮭم ﺑروﺗوﻛول‬ ‫))‪ (On-Demand Multicast Routing Protocol (ODMRP‬أﺣد ﺑروﺗوﻛوﻻت اﻟﻧﻘل اﻟﻣﺗﻌدد اﻟذى ﯾﻘوم‬ ‫ﺑﺈﻧﺷﺎء ﺷﻛل اﻟوﺻﻼت اﻟﻌﺷواﺋﻲ و ﺑروﺗوﻛول آﺧر ﯾﺳﻣﻰ ‪Forwarding Group Multicast Protocol‬‬ ‫)‪ (FGMP‬وآﺧرون ﻣن ﺑروﺗوﻛوﻻت اﻹرﺳﺎل اﻟﻣﺗﻌدد اﻟﺗﻲ ﺗﻌﻣل ﻋﻠﻲ ھذا اﻟﻧوع ﻣن اﻟوﺻﻼت اﻟﻌﺷواﺋﻲ ‪.‬‬ ‫و ﻗد ﺗﺿﻣﻧت اﻟرﺳﺎﻟﺔ ﺳﺗﺔ ﻓﺻول و ذﯾﻠت ﺑﺄﺳﻣﺎء اﻟﻣراﺟﻊ اﻟﻌﻠﻣﯾﺔ و اﻟﻣﻠﺧص اﻟﻌرﺑﻲ ﻟﻠرﺳﺎﻟﺔ‪:‬‬

‫‪ .١‬اﻟﻔﺻل اﻷول‪ :‬ﻣﻘدﻣﺔ ﻻزﻣﮫ ﻟﻘراءة ﺑﻘﯾﺔ اﻟرﺳﺎﻟﺔ و ﺗﺷﻣل اﻟﻣﻔﺎﻫﯾم اﻷﺳﺎﺳﯾﺔ ﻟﻠﺷﺑﻛﺎت‬ ‫وأﻧواع ﻋﻣﻠﯾﺎت اﻻﺗﺻﺎل و ﺧﺻﺎﺋﺻﮭﺎ‪.‬‬

‫‪ .٢‬اﻟﻔﺻل اﻟﺛﺎﻧﻰ‪ :‬ﯾﻘدم‬

‫ﻣﺳﺢ ﻣﻛﺗﺑﻰ ﻟﺑروﺗوﻛوﻻت اﻹرﺳﺎل ﻋﻠﻲ اﻟﺷﺑﻛﺎت اﻟﻼﺳﻠﻛﯾﮫ ذات اﻟﻌﻘد‬

‫اﻟﻣﺗﺣرﻛﮫ ‪.‬‬ ‫‪ .٣‬اﻟﻔﺻل اﻟﺛﺎﻟث‪ :‬ﯾﻘدم ﺗﺣﻠﯾل ﻟﺑروﺗوﻛوﻻت اﻹرﺳﺎل اﻟﻣﺗﻌدد وﺗﺣدﯾد اﻟﻘﺻور ﻓﯾﮭﺎ ﻟﺗوﺑوﻟوﺟﻲ‬ ‫ﻣﺑدﺋﻲ اﻟﺗﻲ ﺗطﺑق ﻋﻠﻲ اﻟﺷﺑﻛﺎت اﻟﻼﺳﻠﻛﯾﮫ ذات اﻟﻌﻘد اﻟﻣﺗﺣرﻛﮫ ‪.‬‬ ‫‪ .٤‬اﻟﻔﺻل اﻟراﺑﻊ‪ :‬ﯾﻘدم ﺗﻌدﯾل ﻣﻘﺗرح ﻟﻠـﺑروﺗوﻛول‬ ‫‪On-Demand Multicast Routing Protocol (ODMRP).‬‬ ‫‪ .٥‬اﻟﻔﺻل اﻟﺧﺎﻣس‪ :‬ﯾﻘدم ﻣﺣﺎﻛﺎة ﻟﺷﺑﻛﮫ ﻻﺳﻠﻛﯾﮫ ذات ﻋﻘد ﻣﺗﺣرﻛﮫ ﻟﻠﺑروﺗوﻛول اﻟﻣﻘﺗرح‬ ‫)‪ (ODMR-MCTP‬ﺑﺈﺳﺗﺧدام اﻟـ ‪ MATLAB‬واﻟﻧﺗﺎﺋﺞ اﻟﺣﺳﺎﺑﯾﮫ ﻟﻣﻘﺎرﻧﺔ‬ ‫اﻟﺑروﺗوﻛول اﻟﻣﻘﺗرح ﻣﻊ اﻟﺑوﺗوﻛوﻻت اﻷﺧرى‪.‬‬ ‫‪ .٦‬اﻟﻔﺻل اﻟﺳﺎدس‪ :‬اﻻﺳﺗﻧﺗﺎج و ﻣﻘﺗرﺣﺎت ﻟﻠﻌﻣل اﻟﻣﺳﺗﻘﺑﻠﻲ‪.‬‬

‫‪ .٧‬ﺛم ذﯾﻠت ھذه اﻟرﺳﺎﻟﺔ ﺑﺄﺳﻣﺎء اﻟﻣراﺟﻊ اﻟﻌﻠﻣﯾﺔ اﻟﺗﻰ ﺗم اﻻﺳﺗﻌﺎﻧﺔ ﺑﮭﺎ ﻹﻧﺟﺎز ھذه اﻟرﺳﺎﻟﮫ و ﻛذﻟك ﻋﻠﻰ‬ ‫اﻟﻣﻠﺧص اﻟﻌرﺑﻲ ﻟﻠرﺳﺎﻟﺔ‪.‬‬

‫‪-٣-‬‬

‫ﻛـﻠﯿﺔ اﻟﻌـﻠﻮم‬

‫ﺑروﺗوﻛـوﻻت اﻹرﺳﺎل اﻟﻣﺗﻌـدد ﻓﻰ اﻟﺷﺑﻛﺎت اﻟﻼﺳﻠﻛﯾﺔ‬ ‫ذات اﻟﻌﻘد اﻟﻣﺗﺣرﻛﺔ‬

‫رﺳﺎﻟﺔ‬ ‫ﻣﻘدﻣﺔ إﻟﻰ ﻗﺳم اﻟرﯾﺎﺿﯾﺎت – ﻛﻠﯾﺔ اﻟﻌﻠوم – ﺟﺎﻣﻌﺔ اﻟﻣﻧوﻓﯾﺔ‬ ‫ﻻﺳﺗﻛﻣﺎل ﻣﺗطﻠﺑﺎت اﻟﺣﺻــول ﻋﻠﻲ درﺟــﺔ اﻟﻣﺎﺟﺳﺗﯾر ﻓﻲ اﻟﻌـﻠوم‬ ‫ﺷﻌﺑﺔ ]ﻋﻠوم اﻟﺣﺎﺳب[‬ ‫ﻣـﻘﺪﻣـﺔ ﻣــﻦ اﻟﻄـــﺎﻟﺐ‬

‫إﺑراھﯾم ﺑﯾوﻣﻰ إﺑراھﯾم ﻋﻣﺎره‬ ‫ﻣﻌﯿﺪ ﺑﻘﺴﻢ اﻟﺮﯾﺎﺿﯿﺎت‪ -‬ﻛﻠﯿﺔ اﻟﻌﻠﻮم – ﺟﺎﻣﻌﺔ اﻟﻤﻨﻮﻓﯿﺔ‬

‫ﺗﺤﺖ إﺷﺮاف‬

‫أ‪.‬د‪ /‬أﯾﻣن اﻟﺳﯾد أﺣﻣد اﻟﺳﯾد‬

‫أ‪.‬د ‪ /‬ﻣﺣﻣد أﻣﯾن ﻋﺑداﻟواﺣد‬

‫أﺳﺘﺎذ ھﻨﺪﺳﺔ و ﻋﻠﻮم اﻟﺤﺎﺳﺐ اﻟﻤﺴﺎﻋﺪ‬ ‫ﻛﻠﯿﺔ اﻟﮭﻨﺪﺳﺔ اﻹﻟﻜﺘﺮوﻧﯿﺔ ‪ -‬ﻣﻨﻮف‬ ‫ﺟﺎﻣﻌﺔ اﻟﻤﻨﻮﻓﯿﺔ‬

‫أﺳﺗﺎذ ﻋﻠوم اﻟﺣﺎﺳب اﻟﻣﺳﺎﻋد‬ ‫ﻛﻠﯾﺔ اﻟﻌﻠوم ‪ -‬ﺷﺑﯾن اﻟﻛوم‬ ‫ﺟﺎﻣﻌﺔ اﻟﻣﻧوﻓﯾﺔ‬

‫]‬

‫]‬

‫[‬

‫[‬

‫ﻟﺠﻨﺔ اﻟﺤﻜﻢ واﻟﻤﻨﺎﻗﺸﺔ‬

‫أ‪.‬د ‪ /‬ﻋﺑداﷲ ﻋﺑداﻟﻌزﯾز اﻟدﻋوش‬

‫أ‪.‬د‪ /‬إﯾﻣﺎن ﻋﻠﻲ ﺛروت إﺳﻣﺎﻋﯾل‬

‫أﺳﺗﺎذ ﻋﻠوم اﻟﺣﺎﺳب‬

‫أﺳﺘﺎذ ووﻛﯿﻞ ﻛﻠﯿﺔ اﻟﺤﺎﺳﺒﺎت واﻟﻤﻌﻠﻮﻣﺎت ﻟﺸﺌﻮن‬ ‫اﻟﺘﻌﻠﯿﻢ واﻟﻄﻼب – ﺟﺎﻣﻌﺔ اﻟﻘﺎھﺮة‬ ‫]‬

‫ﻣﻌﻬد اﻟﺗﺧطﯾط اﻟﻘوﻣﻲ‬

‫[‬

‫أ‪.‬د ‪ /‬ﻣﺣﻣد أﻣﯾن ﻋﺑداﻟواﺣد‬ ‫أﺳﺗﺎذ ﻋﻠوم اﻟﺣﺎﺳب اﻟﻣﺳﺎﻋد‬ ‫ﻛﻠﯾﺔ اﻟﻌﻠوم ‪-‬ﺟﺎﻣﻌﺔ اﻟﻣﻧوﻓﯾﺔ‬ ‫[‬

‫]‬

‫‪٢٠١٢‬‬

‫]‬

‫[‬