52
8 Chapter 2 Mobility Protocols and Mobile Agents: THE BACKGROUND 2.1 Introduction This chapter discusses the fundamental issues involved in providing next- generation wireless networks: network layer mobility in all-IP wireless networks and role of Mobile Agents. Most retail wireless network users prefer seamless mobility so that they can obtain access to their services anytime and anywhere. This work focuses on the mobility aspect of intelligent agents where mobile agent is a program that acts on behalf of a user or other program, migrating from host to host on a network under its own control [7]. In fact, today most of applications in telecommunications and mobile-computing are based on mobile agents. The chapter begins with the motivation of carrying out the research work and presents the detailed description of fundamentals required to carry out this research work. 2.2 Motivation Mobile communication is developing very rapidly and with the passage of time, new technologies are being introduced to facilitate mobile users more & more. The past technologies are being replaced by new ones and needs for the new technologies to be developed are emerging. One such development is 4G networks also called Next Generation Networks. The introduction of 4G has widened the scope of mobile communication. Now mobile is more or less a portable computer that can serve different purposes. 4G offers higher data rates with seamless roaming. The mobile user can communicate without any disturbance while switching his coverage network. 4G is still passing through research and therefore there are some problems that need to be fixed in order to benefit the users. In this chapter we will discuss various

Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

8

Chapter 2

Mobility Protocols and Mobile Agents: THE BACKGROUND

2.1 Introduction

This chapter discusses the fundamental issues involved in providing next-

generation wireless networks: network layer mobility in all-IP wireless networks and

role of Mobile Agents. Most retail wireless network users prefer seamless mobility so

that they can obtain access to their services anytime and anywhere. This work focuses

on the mobility aspect of intelligent agents where mobile agent is a program that acts

on behalf of a user or other program, migrating from host to host on a network under

its own control [7]. In fact, today most of applications in telecommunications and

mobile-computing are based on mobile agents. The chapter begins with the

motivation of carrying out the research work and presents the detailed description of

fundamentals required to carry out this research work.

2.2 Motivation

Mobile communication is developing very rapidly and with the passage of

time, new technologies are being introduced to facilitate mobile users more & more.

The past technologies are being replaced by new ones and needs for the new

technologies to be developed are emerging.

One such development is 4G networks also called Next Generation Networks.

The introduction of 4G has widened the scope of mobile communication. Now mobile

is more or less a portable computer that can serve different purposes. 4G offers higher

data rates with seamless roaming. The mobile user can communicate without any

disturbance while switching his coverage network.

4G is still passing through research and therefore there are some problems that

need to be fixed in order to benefit the users. In this chapter we will discuss various

Page 2: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

9

challenges 4G is facing and the solutions that have been proposed. Next section

presents an overview of various generations of mobile network.

2.3 Generations of Mobile Network

As on date, there have been three generations of mobile cellular networks

defined by air interfaces and transport technologies. Each generation provided an

increase in functionality to the mobile user. Figure 2.1 depicts the evolution of mobile

communication system. The first generation (1G) was voice-centric and used analog

signaling. The real revolution began with the birth of second-generation (2G)

technologies in which the systems were digital with 10 kbps data transfer rate. Later

on 2G was enhanced to 2.5 G which provided Global Packet Radio Service (GPRS)

and Enhanced Data Rate for Global Evolution (EDGE) packet switching technologies.

Third-generation (3G) was designed to support integrated services such as video,

audio, high speed internet connection, and video conferencing etc.

The brief description of the generations of mobile communication is given in

the following sub sections.

1G

2G

2.5G

3G

4G

Analog

(GSM, CDMA)

(GPRS, EDGE)

(UMTS, 3GPP, WCDMA)

(All Over IP)

Figure 2.1: Evolution of Mobile Communication Systems

Page 3: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

10

2.3.1 First Generation (1G)

First generation of network came into use in July 1978 in USA. 1G consisted

of distributed transceivers that helped in communicating with mobile phone. These

mobile phones were analogue and it could only be used for voice traffic. For the

transmission of signals frequency modulation was in use. There was one 25MHz

frequency band allocation from cell base station to the mobile phone and another

25MHz frequency band allocation for the signal from phone to the base station. In

order to accommodate more users to the network each channel was separated from the

other by a spacing of 30 KHz, but it was not effective enough in terms of the available

spectrum. 1G1 would use Frequency Division Multiple Access (FDMA) [155]

techniques where the user had to wait for the first user to hang up. The network

capacity in 1G was increased by implementing the frequency reuse [159]. The

examples of first generation services are American Mobile Phone Service (AMPS) in

the United States and the Nippon Telegraph and Telephone (NTT) Corporation in

Japan.

2.3.2 Second Generation (2G)

As the mobile communication gained publicity and more people started using

the technology, the existing technology couldn‟t fulfill the needs of the irresistible

majority of people. Therefore new techniques were applied to the existing system to

make it more useful and accommodative known as second generation (2G). The

characteristics of 2G were quiet evident that it would accommodate more users and

provide them good communication services with higher security. 2G was majorly

needed because of the interference and attenuation problems in 1G.

The first 2G system was introduced in Finland in 1991 by Radiolinja (now

part of Elisa Oyj)1. One of the major changes in 2G was to shift from analog to digital

encrypted communication. It also solved the problem of higher number of active

1 http://www.mobile-phone-directory.org/Technology/1G_-_First_Generation

Page 4: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

11

customers in the network. By this more number of users could use the service

simultaneously. It also introduced additional data transfer service known as Short

Messages Services (SMS) rather than only voice data as in 1G.

2G system includes Global System for Mobile (GSM) [184] & it was

developed in 1980s and is currently under control of European Telecommunications

Standards Institute (ETSI) [164]. The GSM can utilize either 900, 1800 and 1900

MHz and started working in Europe in June 1991. Most of its cellular phones can

operate as dual and tri band handsets. Two frequency bands of 25 MHz are used

separately for uplink and downlink communication. Further each band is divided into

124 carrier frequencies separated by 200 KHz. Each of 124 frequencies is further

divided into 8 slots using Time Division Multiple Access (TDMA) [155] techniques

[159]. So each one of these slots represents one communication channel, and user get

992 simultaneous communication channels, which increases the network capacity.

2.3.3 Third Generation (3G) Network

Further considering the heavy demand of high-bandwidth multimedia

applications the need for advanced generation was felt and third generation (3G) was

introduced that could fulfill the growing needs of the mobile users. 3G provided large

amount of bandwidth and uses higher frequency band of 2.5 GHz. 3G can provide

higher data rates both in mobile and in fixed environments. It gives up to 2Mbps in

stationary and about 384 Kbps in mobile environments2. 3G has also provided cost

effective services to mobile users with additional features like video streaming and IP

telephony etc.

3G is the International Telecommunication Union (ITU) standard to represent

third generation mobile telephone system under the scope international mobile

telecommunication program (IMT2000) [35]. 3G can implement various network

technologies such as UMTS [133], GSM [184], WLAN [58], WiMAX [183] and

2 http://www.mobileinfo.com/3G/3G_Wireless.htm.

Page 5: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

12

EDGE3. The first 3G was launched commercially in DoCoMo in Japan in October

2001. Japan along with South Korea implemented 3G rapidly with the generous

support from the government authorities and elsewhere it was slow because of the

expensive equipments of 3G. In Europe Manx Telecom in Isle of Man [159] launched

the first 3G network, but the first commercial 3G in Europe was launched by Telenor

in December 2001.

2.3.4 Fourth Generation (4G)

Fourth generation (4G) also called Next Generation Network (NGN) offers

one platform for different wireless networks. So it is apparent that 4G systems should

integrate all existing and newly developed wireless communication systems instead of

developing new uniform standard to replace all existing technologies. These networks

are connected through one IP core. As shown in figure 2.2, 4G integrates the existing

heterogeneous wireless technologies avoiding the need of new uniform standard for

different wireless systems like World Wide Interoperability for Microwave Access

(WiMAX), Universal Mobile Telecommunications System (UMTS), Wireless Local

Area Network (WLAN) and General Packet Radio Service (GPRS). 4G networks will

increase the data rates incredibly, by providing 100Mbps to 1Gbps in stationary and

mobile environment respectively.

3 http://www.mobileinfo.com/3G/3G_Wireless.htm.

4G

WLAN

???

GSM

CDMA

UMTS WiMAX

GPRS

EDGE

Figure 2.2: Integration of various technologies in 4G

Page 6: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

13

4G uses all IP environments and reduces the latency considerably. 4G can be

considered as a global network where users can find voice, data and video streaming

at anytime and anywhere around the globe. In 4G the integration of network and its

applications is seamless therefore there is no risk of delay. With this feature, users can

access different services, enlarged coverage area, the convenience of a single device,

one bill with lesser total access cost, and more reliable wireless access even with the

failure or loss of one or more networks. Various desirable features of 4G wireless

network are listed as follows:

Full packet switched network

Anytime and anywhere communications based on MIPv6 technology

Integrated services

Higher data transmission with speed up to 100Mbps

Personalized service

Support for multimedia services at low per-bit transmission cost

In addition to various other desirable features, seamless mobility is one of the

most important characteristics [139]. Usually, continuous service is only achieved by

sustaining handoff (or handover) from one network to another which is discussed later

in detail. Next section presents the applications of 4G.

2.4 Applications of 4G

With the increase in the data rates, the mobile phones are made to execute

high performance applications. In 4G, the mobile phone is not only used for calling

but can also be used for variety of other purposes. One such application in 4G is

context awareness [86]. For example, if the mobile user is passing by an office where

he/she is having an appointment to meet someone and they have forgotten the

appointment. If the office location, address and geographical location matches the

one, user has already stored in the phone, he/she will receive information about the

appointment and will be reminded that you need to perform this activity.

Telemedicine is another application of 4G. Using telemedicine a patient can send

Page 7: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

14

general reading like temperature, glucose level and blood pressure to the doctor

online. Moreover, if someone needs to know about their family member‟s health

continuously they can receive all the information through telemedicine by using 4G

technology.

2.5 Handover in 4G

Although the features listed in the previous sections are important but primary

& the most challenging research issue is anytime and anywhere communications

which is usually accomplished with handover procedure [139] where, handover is the

process of shifting the channel i.e. frequency, time slot, spreading code, or

combination of them, associated with the current network connection while data

transmission is in progress. It is often initiated either by crossing a network boundary

or by a drop in quality of the signal in the current channel. Handover has been divided

into two broad categories namely, Horizontal and Vertical Handover.

In Horizontal Handover, mobile node moves around from one access point to

another access point supporting the same network technology as shown in figure 2.3.

The handover decision mainly depends on the quality of channel and resources

available in the target cell and is finally executed if the Received Signal Strength

(RSS) from a neighboring base station exceeds the RSS from the current base station.

So, horizontal handover refers mobility on the same layer. Generally, it is referred to

Figure 2.3: Horizontal Handover

Mobile Node

Network

Page 8: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

15

as the mobility within the same access technology or intra network handover. The

main concern of horizontal handover is to maintain on-going service although change

of IP address occurs due to the movement of a mobile node.

In contrast to horizontal handoff, the vertical handoff process allows the

mobility of mobile node among access points supporting different network

technologies as shown in figure 2.4. Generally it is referred to as inter-network

handover. Different from horizontal handover, in vertical handover in addition to used

access technology, IP address also changes, because the mobile node moves from one

network to another network which usually employs different access technologies.

The main concern of vertical handover is to maintain on-going service

although not only the change of IP addresses but also the change of network takes

place. There exist various factors such as offered bandwidth, RSS, price, power

consumption and speed etc. demanding vertical handover [97]. Table 2.1 shows the

comparison between horizontal and vertical handover.

In fact, in order to continue receiving services while roaming in heterogeneous

networks, each device shall be provided with a compatible Mobile IPv6 protocol and

the same is discussed in the upcoming section.

Network A

Network B

Network C

Figure 2.4: Vertical Handover

Page 9: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

16

Table 2.1: Comparison between Horizontal and Vertical handover

Parameters Horizontal handover Vertical handover

Access technology Not changed Changed

Network interface Not changed Could be changed

QoS parameter Not changed Could be changed

Access technology Single technology Heterogeneous technology

Network interface Single interface Multiple interface

Actually used IP address at a time Single IP address Multiple IP address

QoS parameter Single value Multiple values

Network connection Single connection Multiple connections

2.6 Fundamental Protocols

The objective of 4G is to offer seamless multimedia service to users using All

IP-based infrastructures through heterogeneous access technologies. An All IP-based

4G wireless network has inherent advantages over its predecessors. It is not only

compatible but also independent of the underlying radio access technology4. An IP

wireless network replaces the old Signaling System 7 (SS7) telecommunications

protocol, which is considered massively redundant. This is because SS7 signal

transmission consumes a larger part of network bandwidth even in its ideal state for

the simple reason that it uses a call setup mechanism to reserve bandwidth rather than

time/frequency slots in the radio waves. In contrast, IP networks are connectionless

and use the slots only when they have data to send. Hence there is optimum usage of

the available bandwidth [178].

Even though studies indicate that growth in wireless data traffic is rising

exponentially relative to demand for voice traffic but still wireless communications

are heavily biased towards voice. Since, an All IP core layer is easily scalable; it is

ideally suited to meet the stated challenge. One of the major challenges in design and

implementation of 4G systems is the demand that it should support all the desired

features based on current communication systems and standards. As already mentioned,

the most important research issue is anytime and anywhere communications that too

4 http://labs.oracle.com/features/4g_wireless/

Page 10: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

17

need to be accomplished with unbroken communication. The upcoming sections

explain various fundamental protocols of Internet Engineering Task Force (IETF).

The set of protocols includes the description about MIPv4 [68], MIPv6 [108],

HMIPv6 [162], FMIPv6 [142] and PMIPv6 [149].

2.6.1 Mobile IPv4 (MIPv4)

Internet Protocol version 4 (IPv4) is the fourth revision in the development of

the Internet Protocol (IP) and the first version of the protocol to be widely deployed.

IPv4 is a connectionless protocol for use on packet-switched Link Layer networks

(e.g., Ethernet). It operates on a best effort delivery model; in that it does not

guarantee delivery, nor does it assure proper sequencing or avoidance of duplicate

delivery and uses 32-bit (four-byte) addresses.

IPv4 was not built with the feature of mobility; Mobile IPv4 was designed as

an extension to IPv4 protocol to support mobility. Mobile IP resolves the issue of

mobility by assigning the mobile node a temporary address at each new location,

maintaining the MN‟s original IP address, and, creating and storing a binding between

the two addresses with a router in the mobile node‟s original network [165].

2.6.2 Mobile IPv6 (MIPv6)

MIPv6 is integrated into the base IPv6 protocol and not an add-on feature, as

is case of IPv4 and MIPv4. It is important that all devices are inherently designed to

be mobile and IPv6/MIPv6 allows this. This integrated aspect of IPv6 and MIPv6 also

makes MIPv6 more efficient and much easier to implement.

With the use of voice over IP (VOIP), it is impossible to talk continuously on

a mobile device because when mobile node moves from one location to another the IP

changes and hence communication is breaks. This problem of disconnection is solved

with the help of Mobile IP. Mobile IP detects the new wireless connection after it

loses the previous one and the ongoing communication state is not disturbed. Mobile

Page 11: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

18

IPv6 enables an IPv6 node to be mobile to randomly change its location on an IPv6

network and still maintain existing connections. To maintain the connectivity of IPv6

node, address of the node also changes based on the updated link [108]. Mobile nodes

are made with a specific address through which these nodes are always reachable.

Due to roaming, a mobile device may change its network attachment each

time it moves to a new link. This might cause a trouble for the Internet data packets

that have to reach the mobile node. In order to overcome this issue, Mobile IPv6

protocol was introduced by the Mobile IP Internet Engineering Task Force (IETF)

[27] working group. Figure 2.5 demonstrates the basic working of Mobile IPv6.

When MN is within its home network it uses home address for

communication. When it moves from its home network to foreign network, its home

address is no longer valid.

The moment Mobile Node enters into foreign network its uses Care-of-

Address (CoA) [27]. CoA is a temporary address and it is bonded to the mobile node

Home Address (HA). This scheme hides the changed IP from the upper layers. The

IInntteerrnneett

Correspondent

Host/ Sender

Foreign Agent

Home

Agent

Mobile Host/ Receiver

Figure 2.5: Mobile IP routing

Page 12: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

19

CoA is assigned by its Foreign Agent (FA). When a Correspondent Node (CN) sends

packets for the particular mobile node, the packet is received by Home Agent, Home

Agent forwards these packets to mobile nodes‟s CoA. If mobile node changes it CoA,

it sends a Binding Update (BU) message to Home Agent. Home Agent replies with

BU acknowledgment message [70]. BU updates MN‟s binding information, home

address and CoA. Table 2.2 lists the responsibilities of various components of MIPv6.

Table 2.2 Components used in MIPv6

Components Explanation

Home Link (HL) Home Link establishes link between mobile node and home address.

The home agent resides on this link. This is the link that

conceptually follows the mobile node.

Home Address

(HA)

A mobile node when it is attached to the home link is assigned a

home address. Mobile node is always reachable through this link.

When mobile node is away from home, packets addressed to the

mobile node‟s home address are intercepted by the home agent.

Mobile node is logically connected to the home link because it is

always assigned the home address.

Home Agent (HA)

Home agent acts like a router that maintains registration of mobile

nodes on the home link. When a mobile node is away from its home,

it is required to register its current address with the home agent.

Mobile Node (MN)

Mobile Node is an end user device connected on IPv6 network that

maintains its reachability using its home address. It is aware of its

home address and the global address (care-of-address).

Foreign Link (FL) Any other link to which a mobile node is connected other than its

home link is known as foreign link.

Care-of-Address

(CoA)

CoA is address used by a mobile node while it is attached to foreign

link. A mobile node can be assigned multiple care-of-addresses; but

only one care-of-address is registered as the primary address.

Correspondent

Node (CN)

A node that communicates with a mobile node is called

correspondent node.

Page 13: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

20

On the other hand, MN sends packets to CN directly which makes a triangle

routing. MIPv6 can keep track of MN‟s CoA by timely BU between MN and its HA,

but the problem arises with the packets intended for MN before BU. All the processes

for establishing a new CoA and information exchange between mobile node and home

agent requires lot of time and signaling traffic [159] and hence causing latency and

packet loss. The worst case is when MN is roaming between two Access Routers

(ARs) several times creating a ping pong effect. In this case too many handovers and

location updates are experienced which causes interruption in MN‟s communication

with its CN [68]. So the packets that were intended for the old CoA are dropped.

Because of these reasons MIPv6 is not an efficient scheme that could perform in 4G

high speed data transfers. Further, in MIPv6, various messages are exchanged

between a mobile node and a home agent leading to unnecessary location updates and

handover occurrence in a short time. This frequent roaming causes latency, packet

loss, inefficient utilization of resources such as bandwidth, time and battery etc. In

order to address these issues Hierarchical MIPv6 (HMIPv6) was introduced which is

now discussed in the upcoming section.

2.6.3 Hierarchical Mobile IPv6 (HMIPv6)

Mobile IPv6 maintains reachability and on-going connections between mobile

node and correspondent node during its mobility. To achieve this, mobile node sends

Binding Updates (BU) to its Home Agent (HA) and all correspondent nodes (CNs).

This binding updates requires approximately 1.5 round trip times between mobile

node and to its each correspondent nodes. In addition to this, one more round-trip is

also required to it‟s HA for updation [162]. However, this can be done parallel. These

round trips are required every time when handover occurs to a new access router.

Reducing these round trips during handover was highly desired and also, it

significantly improves the performance of MIPv6. For this reason a new node called

Mobility Anchor Point (MAP) was used that can be located at any level in a

hierarchical network routers [162], including the access router. MAP reduces the

Page 14: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

21

MIPv6 signaling outside the local domain. Table 2.3 lists & explains about various

components deployed in HMIPv6.

Table 2.3 Components used in HMIPv6

Components Explanation

Access Router (AR) An AR is the MN‟s default router. It aggregates the

outbound traffic.

Mobility Anchor Point

(MAP)

A MAP is a router located in a network visited by the

mobile node. This can be used as local home agent by

the mobile node.

Regional Care-of-Address

(RCoA)

A RCoA is an address obtained by the mobile node

from the visited network. A RCoA is an address on

the MAP‟s subnet.

On-Link Care-of-Address

(LCoA)

LCoA is simply referred to as the Care-of-Address.

Here LCoA is used to distinguish it from RCoA.

Local Binding Update (LBU) The mobile node sends a local binding update to the

MAP in order to establish a binding between the

RCoA and LCoA.

Correspondent Node (CN) A node that communicates with a mobile node is

called correspondent node.

In contrast to MIPv6, HMIPv6 had two additions. First, a new function called

Mobile Anchor Point (MAP) and second minor extensions to the mobile node

operation were incorporated. The correspondent node and home agent operation is

similar to MIPv6. MAP acts like a local home agent and will receive packets on

behalf of mobile node and forward them to the mobile node‟s current address as

shown in figure 2.6.

Page 15: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

22

In HMIPv6 [19], number of messages exchanged for binding updates between

Mobile Nodes and its home agent were successfully minimized with MAP. It also

separates the issue of local mobility and global mobility, which means local handoffs

are managed locally without notifying home agent, while global mobility is managed

with the existing MIPv6 protocol.

Each mobile node has two care-of addresses [162] known as regional care-of

address and local care-of address. When mobile node moves into a new region or

domain, initially it gets a regional care-of address from MAP which is forwarded to

its home agent and its correspondents about its “regional location” as its raw location

information.

When the MN moves between two Access Routers (ARs) in the same region

covered by a same MAP, MN will perform the localization updates in the domain and

get a new local care-of address. Now, it sends local registration messages to the MAP,

instead of its home agent. Hence, the signal traffic and handoff latency are reduced

Figure 2.6: Hierarchical Mobile IPv6 (HMIPv6)

Page 16: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

23

because each MN hides its movements in a region from its home agent and

correspondents, and the interim MN can keep uninterrupted communications with its

correspondents [27]. However, the burden of MAP increases since it handles too

many MNs in one domain. Moreover, if MAP died or worked abnormally, the MNs

would also hang up. This gap was bridged by adding few more MAPs per domain.

However, this protocol also posed certain problems such as dynamic load distribution

among MAPs.

2.6.4 Fast Mobile IPv6 (FMIPv6)

The “Fast Mobile IPv6” (FMIPv6) [34] protocol was designed to reduce the

duration of the handover. Moreover it also assists the mobile node to quickly recover

communications. Table 2.4 lists the components of FMIPv6.

Table 2.4 Components used in FMIPv6

Components Explanation

Access Point (AP) A Device connected to an IP subnet offers

wireless connectivity to a MN.

Access Point Identifier (AP-ID) It is the Address of an AP that can also known as

Basic Service Set Identifier (BSSID).

Previous Access Router (PAR) It is MN's default router prior to its handover.

New Access Router (NAR) It is MN's default router subsequent to its

handover.

Previous Care-of-Address (PCoA) The MN's Care of Address valid on PAR's subnet.

New Care-of-Address (NCoA) The MN's Care of Address valid on NAR's subnet.

Router solicitation for Proxy

Advertisement (RtSolPr)

A message from the MN to the PAR requesting

information for a potential handover.

Proxy Router Advertisement (PrRtAdv) A message from the PAR to the MN that provides

information about neighboring links facilitating

expedited movement detection. The message

also acts as a trigger for network-initiated

handover.

Page 17: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

24

FMIPv6 is of two types, one is called predictive and other is called reactive

FMIPv6. When there is ample amount of time available to process the handoff then

predictive FMIPv6 is used, while the reactive FMIPv6 is used if there is insufficient

time to process the handovers. When a MN moves into a network it detects the signal

coming from the APs through its APID. MN sends router solicitation for proxy

advertisement (RtSolPr) message to Proxy Access Router (PAR), then PAR replies

with proxy router advertisement (PrRtAdv) message including new access router‟s

(nAR‟s) prefix value and IP address [55] as shown in figure 2.7.

MN can obtain its CoA from information of PrRtAdv [55]. In order to connect

to a NAR, MN sends an FBU message to its PAR. PAR sends a handover initiation

(HI) message along with MN‟s nCoA to NAR. Once nCoA is accepted NAR starts a

buffer. NAR sends packets to nCoA. NAR also sends handover acknowledgment

(HAcK) back to PAR. Then PAR sends an FBAck message to MN and NAR. PAR

IIPP NNeettwwoorrkk

Mobile Host/ Receiver

Figure 2.7: Fast Mobile IP routing

Previous Access

Router (PAR)

New Access

Router (NAR)

Correspondent

Host/ Sender

Page 18: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

25

starts forwarding packets to NAR. During the time MN is engaged in handovers the

packets arriving are saved in the buffer of nAR which are forwarded to MN once the

handover is completed.

In order to reduce the Binding Update latency, FMIPv6 specifiy a binding

between the Previous CoA and New CoA. Mobile node sends Fast Binding Updates

message to its previous AR to establish tunnel. The mobile node should send FBU

from PAR‟s link or immediately after detecting attachment to NAR. This tunnel

remains active until the mobile node completes the binding update. In the opposite

direction, the mobile node should reverse tunnel packets to previous access router

until it completes binding update. This reverse tunnel ensures the drop in packet loss

due to filtering.

Although Mobile IP, supporting mobility management both in the IPv4 [68]

and IPv6 networks, is a mature standard and fast Mobile IPv6 [142] and hierarchical

Mobile IPv6 [162], have been proposed to improve its performance such as handover

delay and signaling cost, it has not been widely deployed in recent years. The main

cause is that it is a host-based mobility solution which requires the mobile node to

modify its protocol stack. PMIPv6 achieves the function of mobility management

without mobile node‟s participation. Therefore, it is believed to speed up the

deployment of IP mobility management and to be the solution for mobility

management in the future all-IP wireless networks [60]. Next section discusses the

basic functioning of PMIPv6 domain and related work done in this area.

2.7 Proxy Mobile IPv6 (PMIPv6)

Proxy Mobile IPv6 (PMIPv6) [149] is an only network-based mobility

management protocol standardized by IETF. The protocol accommodates various

access technologies such as WiMAX [183], 3GPP [48] and WLAN [58] based access

architectures. PMIPv6 extends signaling and reuses many functionalities of MIPv6.

Various components used in PMIPv6 are listed as follows:

Page 19: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

26

Table 2.5 Components used in PMIPv6

Components Explanation

Local Mobility Anchor (LMA) LMA is act like a home agent for mobile node in

PMIPv6 domain. It manages the mobile node‟s

binding state with the additional capabilities

required for supporting PMIPv6 protocol.

Mobile Access Gateway (MAG) MAG is an access router that manages the

mobility related signaling for mobile node. It is

also responsible for tracking the mobile node‟s

movement.

LMA Address (LMAA) LMAA is the global address that is configured on

the interface of the LMA and is the transport

endpoint of the bi-directional tunnel established

between the LMA and MAG. On this address

MAG sends the PBU messages

Proxy Care-of Address (Proxy-CoA) Proxy CoA is the global address configured on the

egress interface of the MAG and is the transport

endpoint of the tunnel between the LMA and

MAG. LMA views this address as the care-of

address of the MN and registers it in the Binding

Cache entry for that MN.

Proxy Binding Update (PBU) PBU is a request message sent by a MAG to a

MN's LMA for establishing a binding between the

MN's home network prefix(es) assigned to a given

interface of a MN and its current care-of address

(Proxy-CoA).

Proxy Binding Acknowledgement

(PBA)

PBA is a reply message sent by a LMA in

response to a PBU message that it received from a

MAG.

In PMIPv6 the mobility management of a mobile node is handled by network.

In contrast to MIPv6 and HMIPv6 which followed host based mobility, PMIPv6 [158]

Page 20: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

27

follows the network based mobility without requiring the participation of the Mobile

Node. Figure 2.8 depicts the architecture of PMIPv6. In host-based mobility, the

communication was direct between Home Agent and Mobile Node [88] whereas in

PMIPv6, Mobile Access Gateway (MAG) [149] was incorporated that took over the

responsibility of Mobile Node thereby overcoming the limitation of the link

bandwidth and terminal power [88].

Proxy Mobile IPv6 comprises of two core elements i.e. Local Mobility Anchor

(LMA) and the Mobile Access Gateway (MAG), which are responsible for mobility

management. Following subsections provides detailed working of PMIPv6.

2.7.1 Initial Attachment and Signal Flow

Figure 2.9 shows the initial attachment and signal flow operations in PMIPv6. The

interaction among various components is presented as follows:

a) Initially on attaching to MAG, MN-Identifier (MN-ID) of Mobile Node is

authenticated via access security protocols on the network to be accessed.

b) After successful access authentication MAG obtains the MN‟s profile.

c) MAG sends a Proxy Binding Update (PBU) to the LMA of Mobile Node

regarding its current location.

Home Agent

AR AR

Host based Mobility

Movement

Route Update

Home Agent

MAG-AR MAG-AR

Network based Mobility

Movement

Route Update

Figure 2.8 Architecture of PMIPv6

Page 21: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

28

d) After receiving the PBU message, LMA assigns a MN-HNP (Home Network

Prefix) and creates a Binding Cache Entry (BCE) that binds the Proxy-Care of

Address of MAG with MN-HNP.

e) It also establishes a bi-directional tunnel to MAG and sends a Proxy Binding

Acknowledgement (PBA) message including the MN-HNP.

f) After receiving the PBA message, tunnel is being sets up between MAG and

LMA. After that it sends Router Advertisement (RA) message to MN on the

access link to advertise the MN-HNP as the hosted on-link-prefix.

g) On receiving RA messages Mobile Node configures the IP address. After

completion of configuration procedure, MN uses this address for all future

packets delivery.

2.7.2 Handover between two MAGs

When MN moves to another access network belonging to MAGnew as shown

in figure 2.10, MAGprev detects that it has moved away from its access link.

Therefore, it follows the following steps for handover.

LMA : Local Mobility Anchor

PBU : Proxy Binding Update

RA : Router Advertisement Msg.

MN MAG AAA & Policy Server LMA

MN Attachment AAA Query with MN-ID

Change in Network State

RA Bi-Directional Tunnel Setup

CN

Data Packets

Data Packets

PBA with MN-ID, Home Network Prefix

option, LMM

Tunneled Data Packets

PBU with MN-ID, Home Network Prefix

option, Proxy-CoA1

Figure 2.9: PMIPv6 Initial Attachment and Signal Flow

MN : Mobile Node

MAG : Mobile Access Gateway

AAA : Authentication, Authorization and Accounting

Page 22: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

29

a) MAGprev sends a DeRegistration PBU (DeReg PBU) message to LMA with

lifetime value set to zero.

b) Once LMA received DeReg PBU, it sends a PBA message to MAGprev

c) On the other hand when MAGnew detects the attachment of MN, it obtains the

MN-profile using MN-ID. It uses similar authentication steps as performed

during initial attachment.

Unlike MIPv6, PMIPv6 established tunnel between LMA and MAG, and not

the MN. Once bidirectional tunnel is successfully set up, all traffic sent from the MN

gets routed to its LMA through tunnel [88].

PMIPv6 suffers from unacceptable handover latencies and packet losses [113],

where, handover latency means the maximum time interval in which mobile node

does not receive any packet due to the process of handover while on the other hand

packet loss means number of downstream packet lost at the mobile node during

handover period.

PMIPv6 offers a loose coordination of handover control and there is limited

coordination in the LMA, which replaces existing bindings with new ones based on

MN MAGprev AAA & Policy Server LMA

MN Detachment De-Registration PBU by setting lifetime value to 0

PBA

RA

Bi-Directional Tunnel Setup

Figure 2.10: Handover in PMIPv6

MAGnew

MN Attachment

AAA Query with MN-ID

AAA Reply with Profile

PBU

PBA

Page 23: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

30

time-stamps provided in the proxy binding updates. An exhaustive comparison

between MIPv6, FMIPv6, HMIPv6 and PMIPv6 protocols is given in table 2.6.

Though PMIPv6 is able to reduce handover latency but is still suffering from

lots of other drawbacks, such as increase in frequency of packet loss, routing path of

data between two nodes becoming too complicated because of overlapping effect, and

overloading of MAG as the number of mobile nodes becomes large.

Table 2.6: Comparison between MIPv6, FMIPv6, HMIPv6 and PMIPv6

Category MIPv6 FMIPv6 HMIPv6 PMIPv6

Mobility Type Host Based Host Based Host Based Network

Based

Mobility Scope Global

Mobility

Global

Mobility

Local

Mobility

Local

Mobility

Buffering No Yes No Yes

Introduced Entity MN, HA,

FA NAR, PAR MAP LMA, MAG

Traffic Point Link Link MAP LMA

Signaling Overhead on

MH High High Medium Low

Location Registration

Message

Binding

Update

Message

Binding

Update

Message

Binding

Update

Message

Proxy Binding

Update

Message

Address Requirement CoA PCoA,

NCoA

LCoA,

RCoA pHoA

Handover Delay High High High Low

Multi Homing No No Yes Yes

Packet Loss Yes Yes/No Yes Yes

Air Interface Traffic

Overload High High High Low

Tunneling Overhead High High Low Low

Page 24: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

31

The above mentioned issues clearly reflect that it is required to expand

PMIPv6 protocol. A very little time has been spent looking at the more recent work

from other fields. One example of this is the lack of agent-based frameworks within

the community of PMIPv6 networks. There are many properties of agents that make

them well suited to network environments. The adoption of mobile software agents as

architectural elements enables us to achieve the above delegated goals. The next

section explains the motivations behind using Intelligent Agents in PMIPv6 domain.

2.8 Software Agents

The term “Agent” is associated with various prospects and used in many

different perspectives. Agent is a self contained software element and responsible for

performing part of a process. Agents work on predefined rules and may also have the

capability of self learning [152]. Therefore, it may contain some level of intelligence

and are termed as Intelligent Agents. These Agents can be reactive, proactive,

autonomous and mobile. This work focuses on the mobility aspect of intelligent

agents where mobile agent is a program that acts on behalf of a user or other program,

migrating from host to host on a network under its own control [7]. In fact, today most

of applications in telecommunications and mobile-computing are based on mobile

agents. People have been always fascinated with the idea of non-human agencies.

Norman [125] observes that perhaps “the most relevant predecessors to today‟s

intelligent agents are servomechanisms and other control devices, including factory

control and the automated takeoff, landing, and flight control of aircraft.” Alan Kay

[66], provides a thumbnail sketch tracing the more recent roots of software agents:

“The idea of an agent originated with John McCarthy in the mid-1950‟s, and the

term was coined by Oliver G. Selfridge a few years later, when they were both at the

Massachusetts Institute of Technology. They had in view a system that, when given a

goal, could carry out the details of the appropriate computer operations and could

ask for and receive advice, offered in human terms, when it was stuck. An agent

Page 25: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

32

would be a „soft robot‟ living and doing its business within the computer‟s world.”

(Kay 1984).

Software agents came into existence through distributed artificial intelligence

(DAI) in the year 1977. These agents worked on macro issues such as the interaction

and communication between agents, coordination and cooperation, the decomposition

and distribution of tasks etc. As “agent” can be of many flourish varieties, there has

been an explosion in the use, depending upon the functions they performed like data

abstraction and encapsulation [85], primitive or aggregate functions [109], distributed

intelligence computing [155], migrating themselves from host to host to collect

information [21]. The increased popularity of agents produced many different types of

agents such as weak or strong agents, distributed or multi-agent system [84], Belief

Desire Intention (BDI) agents [3], autonomous agents [53], and even emotional agents

[63].

A more specific definition of “Software Agent” is that a software entity which

functions continuously and autonomously in a particular environment, often inhabited

by other agents and processes. As specified in [36] every agent might be having a

varying degree of attributes and few of them are mentioned below:

Reactivity: the ability to selectively sense and act.

Autonomy: independent, proactive and self execution behavior.

Collaborative behavior: can work in collaborative behavior with other agents

to achieve a common goal.

Knowledge-level communication ability: the ability to communicate with

persons and other agents in human alike with language.

Inferential capability: act on task specification using prior knowledge of

general goals and ability to go beyond the information given depending upon

the situation.

Temporal continuity: persistence in nature.

Page 26: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

33

Personality: the capability of manifesting the attributes of a “believable”

character such as emotion.

Adaptivity: being able to learn and improve with experience.

Mobility: being able to migrate in a self-directed way from one host to

another.

Software agents are termed as an Intelligent Agents, when it incorporates

knowledge-based technology and act proactively on perceiving the dynamic state of

its environment. Gilbert [47] describe intelligent agents in terms of three dimensions

of agency, intelligence, and mobility as shown in figure 2.11

Here, Agency is the degree of autonomy and authority in the agent and can be

measured by the nature of the interaction between agent for application, data and

service interactivity. Intelligence is the degree of learning, reasoning, planning and

adaptive behavior of the agent for the system. Mobility is the degree to which agents

themselves travel through the network to accomplish mobile scripts on one machine

to another. Next section provides an overview of evolution of intelligent agents.

2.8.1 Origin of Intelligent Agents

A framework of intelligent agent comprises of objects, components, active

documents and software agents as shown in figure 2.12.

Agency

Service interactivity

Application interactivity

Data interactivity

Representation of user

Asynchrony

Intelligence

Preferences

Reasoning

Planning

Learning

Expert Systems

Sta

tic

Mobil

e sc

ripts

Mobil

e obje

ct

Fix

ed-F

unct

ion A

gen

ts

Inte

llig

ent

Agen

ts

Mobility

Figure 2.11: Scope of Intelligent Agents [47]

Page 27: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

34

In short, software components are the logical collection of homogeneous

objects. An object whose inner functionalities remain abstracted from the outside

world and it just provides an interface to the environment act as a component. It is an

independent entity that can perform a task autonomously by taking input from its

surroundings and further plays the role of an agent especially when it carries out an

action that only changes the state of environment, preserving the autonomous

behavior.

An individual component might not be able to achieve the desired goals and

hence a number of components may collectively work to achieve those goals. These

combinations of components form an active document. In fact, a strong agent is an

active document possessing mobility, autonomy, sociality, veracity etc. But all these

properties in single document is not feasible; therefore instead of referring it as a

weak agent, an active document is referred to as an Active Agent or an Intelligent

Agent.

2.8.2 Intelligent Agent Characteristics

The influx of various approaches under the banner of „agents‟ caused a need to

classify and define this term. However it quickly became apparent that everyone had

their own definition [53] due in part to the historical relationship with the AI

community and the vague notion of intelligence. Numerous definitions for the agents

have been proposed, but in core most have a set of defining characteristics that every

Figure 2.12: Origin of Intelligent Agents [3]

Agent

Active

Documents

Components

Objects

Page 28: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

35

agent must demonstrate. For instance, BDI agents must show explicit beliefs

(knowledge perceived to be true), desires (goals) and intentions (plan to obtain goals)

[75], while Woodridge and Jennings‟ weak agents [101] should be autonomous,

reactive and social. A definition from Franklin & Graesser [163] lists autonomous,

reactive, communicative, adaptive, mobile, flexible, goal-oriented, continuous and

with some form of character or emotion. Using such definitions from the literature, it

has been possible to create a set of primary, secondary and tertiary agent

characteristics. Primary characteristics are inherent to most of the popular agent

definitions while secondary characteristics are the set of extended characteristics

usually associated with agents. The third set of characteristics contains more abstract,

desirable, human-like features.

(A) Primary Characteristics

Autonomous - An agent should be able to execute without the need for human

interaction, although intermittent interaction may be required.

Social / Communicative - An agent should have a high level of

communication with other agents. The most common protocol for agent

communication is the Knowledge Query and Manipulation Language (KQML)

[168].

Reactive / Responsive - An agent should be able to perceive its environment

and react to changes in it.

(B) Secondary Characteristics

Proactive - Proactive agents do not just react to their environment but can take

active steps to change that environment according to their own desires.

Adaptive - Adaptive agents have the ability to adjust their behavior over time

in response to internal knowledge or changes in the environment around them.

Page 29: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

36

Goal-oriented / Intentions - These agents have an explicit internal plan of

action to accomplish a goal or set of objectives.

Persistence / Continuous - Persistent agents have an internal state that

remains consistent over time.

Mobility - Mobile agents can proactively decide to migrate to a different

machine or network while maintaining persistence.

(C) Tertiary Characteristics

Emotion - Agents with the ability to express human-like emotion or mood.

Such agents might also have some form of anthropomorphic character or

appearance.

Intelligence - Agents with the ability to reason, learn and adapt over time.

Honesty - Agents that believe in the truthful nature of the information they

pass on.

These agent characteristics lead to many advantageous features. The very

nature of agents as independent, social entities that can respond to and change their

environment provides a strong foundation for building reliable, robust, flexible,

extensible and scalable systems. Agents can help ease user tasks and adapt to user

requirements. Inspite of their many benefits, agents are not the solution to every

problem. One major disadvantage of building agent systems is that the complexity of

agent interactions and dynamic nature of the agents themselves make it difficult to

predict agent behavior. It can cause problems in safety critical environments where

outcomes need to be assured. However, as the computer world is becoming

increasingly networked and distributed, agents are likely to become the next

engineering paradigm for system development which is being justified by the

applications of intelligent agents as described in the next section.

Page 30: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

37

2.8.3 Applications of Intelligent Agents

Agent technology is used to solve real-world problems in a range of industrial

and commercial applications. Agent-based systems find its applications in various

domains such air traffic control, e-commerce, transport management, process

management, telecommunication system etc. In [123] authors have categorized these

applications in four major areas namely Industrial Applications, Commercial

Applications, Entertainment Applications, and Medical Applications.

2.8.3.1 Industrial Applications

The industrial applications are one of oldest area where agents are used first

time. YAMS system (Yet Another Manufacturing System), which applies the

Contract Net Protocol [171] to manufacturing control. The goal of YAMS is to

efficiently manage the different plants located at different locations of a single

company. YAMS uses a multi-agent system approach. ARCHON [120] is a best

known multi-agent system for process control. Electricity transportation management,

power plants, climate control etc are application areas where process control system is

used. Another industrial application is Air Traffic Control. OASIS [93] is a

sophisticated agent-realized air traffic control system. Agent is instantiated with the

information and goals corresponding to the real-world aircraft. Traffic and

transportation management is well suited agent based application because of its

geographically distributed nature. Future car pooling [12] uses multi-agent system

using two types of agents one representing customers while other is transporter.

Telecommunication systems are also equipped with agent technology because of

distributed networks. These networks are interconnected and need to be monitored

and managed in real-time.

2.8.3.2 Commercial Applications

Commercial Applications generally includes information management, e-

commerce, business process management etc. A large volume of information is

Page 31: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

38

available to us which needs to be managed to get the potential information at right

time and the same can be achieved by using information gathering and information

filtering. For instance, electronic mail system. Email filtering using intelligent agent

reduces the burden of user. It is capable of learning the priorities; delete, forward, sort

and archive mail messages on behalf of user. The WARREN financial portfolio

management system [76] is a multi-agent system that integrates information finding

and filtering in the context of supporting a user manage his financial portfolio. Kasbah

[1] describes “Electronic marketplace” for e-commerce wherein buying and selling is

done by agents. MAGMA [100] proposed a virtual marketplace for electronic

commerce. Business process management project ADEPT [120] proposed agents,

where each agent represents a distinct role or department in the enterprise and is

capable of providing one or more services. The other applications in this area include

supply chain management [96], managing heterogeneous workflows [95] and mobile

agents for inter-organisational workflow management [94].

2.8.3.3 Entertainment Applications

Entertainment Applications such as computer games can be extremely

challenging. Such application needs to be semi-autonomous animate character, which

can naturally be implemented as agents. Highly successful creature game using agent

technology are developed by Grand and Cliff [148]. Wavish et al., [102] also describe

several applications of agent technology to computer games. Interactive theatre and

cinema is another application of entertainment, believable agents that play the part of

humans in theatre-style are used in these applications.

2.8.3.4 Medical Applications

Agents are also used in the area of medical applications like Patient monitory

and Healthcare etc. The guardian system is intended to help manage patient care in

the Surgical Intensive Care Unit (SICU). A prototypical agent-based distributed

medical care system is described in [64]. This system is designed to integrate the

patient management process, which typically involves many individuals.

Page 32: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

39

Next section throws light on various taxonomies given by eminent researchers.

2.8.4 Intelligent Agent Taxonomies

Researchers have proposed number of contemporary taxonomies of agents and

criteria required for being an intelligent software agent.

Nwana [51] identifies three primary attributes namely autonomy, learning and

cooperation. Autonomy refers to the principal that agent can operate on its own

without the need for human guidance. For an agent to be referred to as an intelligent

agent, it must have learning abilities as they interact with their external environment.

The software agents need to possess social ability i.e. the ability to interact with other

agents and possibly humans via some communication languages. The author further

classifies these agents as collaborative agents, reactive agents, interface agents,

information agents, hybrid agents, mobile agents and ants.

Wooldridge and Jennings [101] distinguish agents to be weak agents and

strong agents. A weak agent is an autonomous, social, reactive and proactive. To be

reactive, agents must perceive their environment, and respond in time to changes that

occur. To be proactive, agents just don‟t simply respond to their environment but they

can also take the initiative and carry the task with goal-directed behavior. A strong

agent follows Belief-Desire-Intention (BDI) model [153, 3] and have human

characteristics such as trust and competence.

Jennings et. al [143] defines agents as a computer system in an environment

that can take autonomous actions to meet the objectives. According to the author, the

agent receives sensory input from its environment and its actions affect the

environment. The agent in such an environment is flexible enough to be responsive,

pro-active and social.

Magedanz et. al. [169] divides agents as local agents, networked agents and

mobile agents for single- agent systems, DAI-based agents and MultiAgent Systems

Page 33: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

40

(MAS) respectively. Still there exist advisory agents acting as personal assistants in

email management, web browsing, searching etc.

Number of researchers has classified agents as task-specific and performative

agents such as search agents [101], navigation agents [41], information agents,

softbots [101, 126, 127], knowbots [65], infobots [29] and so on. Depending upon the

responsibilities to be carried out and aims to be achieved, agents with different

attributes are being designed.

Various taxonomies discussed above indicate that agents work in groups

resulting into multiagent systems.

2.8.5 Multi-Agent Systems

Multiagent Systems (MAS) [177] evolves as a result of sociological

relationships among agents. An individual agent can achieve a goal either by using its

own capabilities or by successfully exploiting the capabilities of other agents. MAS

are defined as community of agents arranged in a predefined manner in which at least

one agent referred to as Coordinator or Parent Agent must have an ascribed set of

goals and other agents in the system may adopt the goal. The goal adopting agents are

called as Sociological Agents as shown in figure 2.13.

Interface

Objects Components

Figure 2.13: An Active Document

Page 34: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

41

Once an agent adopts the goal of goal originating agent, a relationship is

created between the two. If the goal cannot be achieved at this level it may again be

forwarded to different homogeneous or heterogeneous adjunct agents. More

precisely, MAS can be defined as a loosely coupled network of problem solvers that

work together to solve problems that are beyond the individual capabilities of

knowledge of each problem solver as shown in Figure 2.14. The significant reasons

for having MAS are:

1. Incomplete viewpoint of the world for each agent.

2. Lack of global system control.

3. Decentralization of data

4. Asynchronous computation.

2.8.5.1 Characteristics of MultiAgent Systems

A MAS inherits most of the advantages of distributed intelligence over

centralized, sequential processing, since it is:

Reliable- MAS is more fault-tolerant and robust.

Coordinator/

Parent Agent Coordination

Rules, Goal Set,

Knowledge Base

Sociological Agents

(Goal Adoption)

Adjunct

Agents

Adjunct

Agents

Adjunct

Agents

Figure 2.14: Multi Agent System

Page 35: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

42

Scalable- Agents can be added or deleted without greatly disrupting the

system.

Adaptive- Agents can re-configure themselves to suit system changes such as

noise, resource allocation and faults.

Concurrent- Agents can reason and perform system tasks in parallel and

asynchronously, resulting in faster and flexible execution of tasks.

Dynamic – Agents can collaborate to form dynamic groups to solve specific

problems, pooling together resources and disband after the problems are

solved releasing resources to local usage.

2.8.5.2 Classification of Agents In MAS

The invasion of various agents in MAS caused a need to classify the agents

according to the behavior these pose in a particular agent-based system. According to

the behavior being posed locally or globally and using definitions from the literature,

it has been possible to classify the agents as Internal Agents, External Agents and

Mediator Agents [101] as shown in figure 2.16.

Reliable

Scalable Adaptive

Concurrent Dynamic

MAS

Figure 2.15: Features of MAS

Page 36: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

43

(A) Internal Agents

Internal Agents are local to a particular architecture and are classified

according to the role being played within the environment i.e. how they behave inside

the system and with each other. Internal Agents can be

Cooperative Agents: Share some common goals.

Self-Interested Agents: Possess distinct goals.

Competitive Agents: Possess mutually exclusive goals.

Destructive Agents: Direct co-agents off beam.

Interface Agents: Take the raw input and ultimately deliver the output by

delegating the task to other agents. Interface agents model human managers

and learn from them how to manage networks.

Informative Agents: Store and forward information to co-agents.

Self

Interested

Task-Oriented

Destructive Cooperative Mobile Ants

Interface Informative

Mediator Agents EXTERNAL

AGENTS

AGENTS

INTERNAL

AGENTS

Figure 2.16: Classification of Agents in MAS

Page 37: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

44

Task-Oriented Agents: Responsible to carry out the main goal. These are the

actual workers.

Reactive Agents: Senses the input from environment and reacts as directed.

Proactive Agents: Senses the input and if not directed, decides on its own to

achieve the probability of success.

(B) External Agents

External Agents are referred to as dynamic agents as these possess the ability

to change their residing locations. These agents move out of a system to perform a

task and these may or may not return to the originating node. Those external agents

that move out to different locations to gather the desired information to carry out a

task and then return to originating node are referred to as Mobile Agents [135].

Mobile agents spread intelligence across networks. The mobility allows them to be

created, deployed and terminated without disrupting the network configuration.

External agents that originate at one node keep on changing their locations and may

die on any other node shall be referred to as Ants [91]. Ants follow the principle of

“STIGMERGY”. Stigmergy is a form of indirect communication through an

environment. The insect ants when move in search of food stimulate a hormone

named as pheromones, which attracts other surrounding ants. The routing of an ant-

based agent is pheromone distribution dependent where pheromone distribution

depends upon the environment in which the agent‟s properties are utilized. Swarm

intelligence stems from the work of ants in which unintelligent Internal and External

agents possibly belonging to heterogeneous platforms work independently or with

relatively small amount of collaboration to achieve a greater goal that requires

intelligence.

Internal Agents initially try to achieve the goal on their own but if they are not

able to make it, then the assistance of external agents may be desired and for this kind

of interaction, an interface between internal agents and external agents is required.

Page 38: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

45

Such an interface is accomplished through Mediator Agents (MA) that also makes

service requester and provider compatible.

Table 2.7 classifies agents according to types, characteristics and their use

attributes. These categories are not mutually dependent and different types of agents

can have different combination of these characteristics. Some agent applications can

use more than one type of agent.

Table 2.7 Classification of Agents

Types Characteristics Use

Interface Agents Autonomy Process Control

Cooperative/Domain Agents Co-operation Manufacturing

Intelligent Agents Learning Ability Air Traffic Control

Information Agents Flexibility Internet Agents

Pro-active Agents Resource Provider Electronic Commerce

Behavior Agents Social Business Process

Management

Collaborative Agents Mobility Medical

Learning Agents Beliefs, desires & Intentions Finger-Print Recognition

Hybrid Agents Emergent Behavior Biometric Analysis

Reactive Agents Co-ordination Authentication

Self-Interested Mutually Exclusive Search Agents

Destructive Agents Directs off beam Viruses

Task-Oriented Workers Personal Assistants

Mobile Agents Emergent Behavior Intrusion-Detection

Ants Pheromones/ Stigmergy Swarm Intelligence

Page 39: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

46

Next section presents details about mobile agents which is the main focus of

this research work.

2.9 Mobile Agents

Traditionally in a client / server architecture client request the server for a

particular service and server respond back the client with the requested service. As

opposed to this traditional approach, mobile agent is a special kind of software that

propagates over the network either periodically or on demand (when required by the

application). It performs data processing autonomously while migrating. The use of

mobile agents leads to a new computing paradigm, which is in marked contrast to the

traditional client/server based computing. In contrast to fixed agents, who remain in a

single location throughout life time, mobile agents may be transported to network in

order to perform specific tasks. Although, there exist various architectures

implementing mobile agents but there are four major implementations i.e. SMART

architecture, D‟Agent Architecture, Grasshopper Architecture, Aglet Architecture that

have played a vital role in the development and hence implementing this paradigm in

different domains.

Wong et al. developed Scalable Mobile and Reliable Technology (SMART)

[182] architecture as shown in figure 2.17.

Agent Proxy

Place

Agent System

Region Manager

User API

Execution

Create Mobility

Destroy

Security

Naming

Locating

Figure 2.17: SMART Architecture [182]

Page 40: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

47

It consists of four layers based on Java Virtual Machine (JVM). These layers

are region manager, agent system, execution places and agent proxy [104]. Lowest

layer region manager uses a finder module to provide naming services and also

provides services to the layer above. Second-lowest layer is known as agent system;

mobile agents can create, migrate and destroy themselves in this layer. The third layer

from the bottom forms the execution environment and contains one or more places,

which may exists for different execution contexts. Topmost layer is known as agent

proxy and provides mobile agent API for application written in SMART.

D‟Agents were developed by Gray et al. [49] and is formerly known as Agent

Tcl, supports distributed information retrieval and characterizes the mobile agent

performance space. This system has five levels consisting of TCP/IP, Server Layer,

C++ Libraries, Virtual Machines which support Java, Tcl Scheme and Agent Layer

[104]. The bottom level, TCP/IP is used to provide transport mechanisms. Second

layer known as server layer allows the implementation of mobile agents on all hosts.

The server is multi-threaded process and executes multiple agents as threads inside a

single process, while each agent is executed inside its own process. The next layer

holds shared libraries i.e. C++ and implements agent functionality. The fourth layer

provides execution environment for supported languages (Java, Tcl and Scheme). The

agents themselves are defined on the top layer. Figure 2.18 is a simplified depiction of

the D‟Agents‟ architecture.

Figure 2.18: D‟ Agent Architecture [49]

Agents

Virtual Machines

Class Libraries

Server Layer

Create Mobility

Destroy

Support Java,

Tcl, Scheme

Implement

agent

Functionalities Execute Java

Threats

Transport Mechanisms

Page 41: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

48

Grasshopper Architecture developed by Pavolu G. 2000 supports development

and execution of mobile agents. The architecture consists of two layers i.e. distributed

agent environment and distributed processing environment. Distributed agent

environment typically includes an agency supporting different services like

MASIFFinder, MAFAgentSystem, execution, management, communication, security

and naming mechanisms. On the other hand distributed processing environment is

structured into regions, agencies and places. Extended functionality includes adapter

interfaces for external hardware/software, task control functions (e.g. itinerary), and

application-specific GUIs. Figure 2.19 is a simplified depiction of Grasshopper.

Aglet developed by Lange D.B. 1997 is one of the best known mobile agent

architectures. It consists of two layers where top layer (runtime layer) supports core

framework and subcomponents for aglet execution, class loading and transfer,

reference management and garbage collection, persistence management etc. The

bottom layer (communication layer) defines methods for creating, transferring,

managing agents in an agent system and protocol independent way. The

communication API is derived from the MASIF standard. The Aglets architecture

Figure 2.19: Grasshopper Architecture [Pavolu 2000]

Distributed Agent Environment

Agency

MASIF

Create Destroy

Suspend

Activate

Locating

Execution

Transport

Management

Communication

Security

Naming

APIs GUIs task

Control

Communication Channel

Enhanced Services

Basic Services

Core Services

Distributed

Processing

Environment

Page 42: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

49

uses the Agent Transfer Protocol (ATP), modelled on the HTTP protocol as the

default implementation of the communication layer as shown in figure 2.20.

2.10 Standardization efforts: The FIPA Standard

The Foundation for Intelligent Physical Agents (FIPA) [130] is a non-profit

standards organization established in 1996. These standards describe the basic

services, life cycle of an agent and agent communication language. This standard

intended to promote the interoperation of homogeneous or heterogeneous agents and

the services they represent. The aim of the standard is to bring commercial world a

step closer to true software components. The advantages of the standard are to provide

ease of upgrade and increased in reuse of software.

FIPA supports the interoperability of agents deployed on heterogeneous agent

frameworks [150]. FIPA is particularly used in the area of wireless network and

service providers to extend its approach to support mobile agents.

FIPA 97 (version 2.0) consists of two core components, where first component

defines the agent platform or agent reference model and second component specifies

the agent communication language. FIPA platforms define a standard protocol based

on speech acts and several standard ontologies. FIPA management ontology includes

registering, querying and deregistering services and various domain-specific ones;

Figure 2.20: Aglet Architecture [Lange D.B. 1997]

Create Destroy

Tracking

Transfer

Management

Serialiasation

Deserialiasation

Mobility

Naming

Locating

Persistence

Management

Security Communication Layer

Runtime Layer

Page 43: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

50

there is no mandatory specific service encoding. Figure 2.21 explains the agent

reference model.

As explained in the figure 2.21 specific capability sets for agents are Agent

Management System (AMS), Directory Facilitator (DF) and Agent Communication

Channel (ACC) to support agent management. The AMS and ACC support the intra

agent communication and DF provides the „yellow pages‟ services to other agents.

The ACC also supports interoperability. The Internal Platform Message Transport

(IPMT) provides a message routing service for agents on a particular platform, which

must be reliable and orderly. Finally Agent Platform can be a combination of

mandatory, normative components of ACC, AMS, IPMT and DF. Depending upon

the developer requirement a single agent can also play the role of ACC, AMS and DF

or three different agents can do these specific tasks.

FIPA agent standards can be designed using FIPA-OS. The reference model

already explained defines the core components of FIPA-OS distribution. FIPA-OS

Figure 2.21: The FIPA 97 agent reference model [150]

Software

Agent FIPA Agent Platform

Agent

Management

System

Directory

Facilitator

Agent

Comms.

Channel

Internal Platform Message Transport

IIOP

IIOP

HTTP etc

ACL

Page 44: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

51

includes implementations of the core components of the FIPA 97 reference model. In

addition, the FIPA-OS distribution includes [150]:

Shells for producing agents and communication between them.

Message and conversation management.

IPTMs supporting dynamic platform configuration.

Multi-layered support for agent communication.

Abstract interfaces and software design patterns.

The FIPA-OS architecture can be envisaged as a non-strict layered model,

supported by an underlying component model (figure 2.22). In a non-strict layered

model, entities in nonadjacent layers can access each other directly. The developer is

able to extend the architecture not only by appending value-added layers, such as

specialist service agents or facilitator agents, but in addition, lower or mid-layers can

be replaced, modified or deleted.

Figure 2.22: FIPA Component Model

Service and User Agents

FIPA Agent Platform DF AMS

IPTM ACL

FIPA - OS ACL parser

Conversation managers

Content parser

Ontologies

Visualisation

Configuration

Agent shells

Persistence

Diagnostics

Transport protocols Profiles

Page 45: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

52

2.11 Agent Frameworks

According to the technical report by Nguyen & Dang [42] there are over 100

products in this category. This section will focus on elaborating most appealing &

promising three toolkits among the available choices. Each framework offers a unique

set of additional features such as standards compliance, mobility, interoperability,

knowledge-based ontologies, graphical interfaces etc.

2.11.1 Java Agent Development framework (JADE)

The Multi Agent architecture is designed and simulated using open source

Java Agent DEvelopment Framework (JADE) [39]. Each JADE program is FIPA-

compliant and must have three FIPA-mandatory subsystems: the AMS (Agent

Management System), the DF (Directory Facilitator), and the ACC (Agent

Communication Channel).

JADE programmers provide the high-level knowledge required for effective

parallel execution of a JADE program [105]. The programmer must specify three

things:

1. Decomposition of the data into the atomic units that the program will access

2. Decomposition of a sequential program into tasks, and

3. Description of how each task will access data when it runs.

JADE is based on shared objects, tasks, and access specifications [106].

(A) Shared Objects

In JADE all parts of the computation access single mutable memory for

abstraction. Every piece of data stored in this memory is called a shared object. The

programmer therefore implicitly aggregates the individual words of memory into

larger granularity objects by allocating data at a certain granularity. No piece of

memory can be part of more than one object.

Page 46: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

53

(B) Tasks

JADE programmers divide each serial computation into blocks of code. These

blocks generate task when they in execution state. Programmers can create

hierarchically structured tasks by decomposing their computation into child class. In

many parallel programming languages tasking constructs explicitly generate parallel

computation. Because JADE is an implicitly parallel language with serial semantics,

JADE programmers ostensibly use tasks only to specify the granularity of the parallel

computation. The JADE implementation, then decides which tasks execute

concurrently.

(C) Access Specifications

In JADE, each task has an access specification that declares how it (and its

child tasks) will read and write individual shared objects. Programmer provides an

initial access specification for each task when that task is created. As the task runs, the

programmer may dynamically update its access specification to more precisely reflect

how the remainder of the task accesses shared objects.

(D) Parallel and Serial Execution

The JADE implementation can analyze which tasks can execute concurrently.

This analysis takes place at the granularity of individual shared objects. The

concurrency pattern can be determined by the dynamic data dependence. If one task is

ready to write an object and another will access the same object, there is dynamic data

dependence between the two tasks, and they must execute sequentially. The task that

would execute first in the serial execution of the program executes first in all parallel

executions. If there is no dynamic data dependence between two tasks, they can

execute concurrently.

Page 47: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

54

(E) Execution Model

When a task runs, it executes its serial computation. It may also decompose its

computation into a set of sub-computations by serially creating child tasks to run each

sub-computation. When a task is created, the implementation executes a programmer-

provided piece of code that generates its access specification. As the program runs,

the implementation analyzes tasks' access specifications to determine when they can

legally execute.

2.11.1.1 Working with JADE

Three major components are used to facilitate the development of multi-agent

system.

1. Runtime environment where JADE agents can “live” and that must be active

on a given host before one or more agents can be executed on that host.

2. Library of classes that programmers have to/can use (directly or by

specializing them) to develop their agents.

3. Graphical tools that allows administrating and monitoring the activity of

running agents.

In JADE, runtime environment container is an instance of JADE. An active

containers form a Platform and a special container known as Main container must

always be active in a single platform and other containers will register with main

container as soon as they start. Each JADE agent runs as a single thread within an

agent container, and collections of containers run within a single JVM platform as

shown in figure 2.23. The distributed nature of JADE allows multiple JADE Agents

and other FIPA-compliant agent platforms to communicate via the Internet Inter-ORB

Protocol (IIOP). IIOP is a message transport protocol, allowing objects to be sent

across networks in a platform independent manner. An agent communication channel,

which is physically distributed across all JADE platforms, provides agents with a

transparent mechanism for converting incoming ACL messages from an external

Page 48: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

55

platform into the ACLMessage format used internally in each JADE platform and

vica versa. Between containers, Java‟s Remote Method Invocation technology

operates as the transport mechanism and agents in the same container will

communicate directly with each other. When an agent communicates with another

agent, the JADE framework will select the most efficient communications method and

therefore appears transparent to the agent and the agent‟s programmer. Tests of the

JADE communications model have shown linear scalability, which mimics that of

RMI when agents are distributed across a network (Vitaglione,Quarta and Cortese

(2002)). The latest version of JADE conforms to the FIPA2000 specification and

currently has many international companies, projects and universities using the

framework

Each container has a dedicated directory facilitator that acts as yellow pages,

providing the other agents in the container with a means to look up agents based on

the services they offer. The JADE platform also contains a front-end container with a

graphical user interface agent that allows users to interact with the platform and

provide a mechanism for controlling each agent. The interface provides methods for

starting, suspending and stopping agents as well as debugging features such as

Agent

Management

System

Directory

facilitator

Agent

Communication

channel

Internal Platform Management

Agent Containers Primary Agent Container

Figure 2.23: Java Agent Development Environment

Page 49: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

56

activating a sniffer to intercept communication packets, and sending custom messages

to agents.

2.11.2 IBM-Aglet or Aglet Software Development Kit (ASDK)

ASDK or IBM-Aglet [30, 132] is an environment for developing mobile

agents based application in JAVA. It is an open source freely available toolkit, with

latest version Aglet 2.5 alpha. It provides good graphical user interface for agent

development. It mainly comprises of two packages-The Aglet Building Environment

(ABE) and the Aglet Workbench. Aglet workbench aims at developing stand alone

mobile agents. The ABE (SDK) comprises of Aglet API, the Aglet Server known as

Tahiti and the Agent Web Launcher called Fiji along with documentation and sample

Aglets. Aglets are basically java objects comprising of two major components i.e.

Aglet Core & Aglet Proxy. Core is holder of all the internal variables and methods of

an agent whereas proxy acts as an interface to the core, shielding it from any

malicious interference from the outside world.

Aglet server Tahiti is an application program that works as agent server for

aglets. It provides users with a good GUI and allows users to create & dispatch an

agent, monitor it, dispose it off when required. It gives user the ability to set agent‟s

access privileges on the server. For an aglet to move to a remote host, it must have

Tahiti server installed on it, which solves some of the security problems. Fiji is an

applet in Java which can create Aglets or retract an existing aglet into client‟s web

browser. This applet accepts an agent‟s URL as parameter and can be embedded in a

web page using HTML, like any other applet. Aglets support both agent mobility as

well as predefined movement of the agent on the network also called as Itinerary.

Although aglet provides weak agent mobility but that too is restricted to its own

servers. Aglet works on Mobile Agent System Interoperability Facility (MASIF).

Agent migration is implemented using socket mechanism. Communication among

agents is achieved using synchronous and asynchronous message passing. Agent

Transfer Protocol (ATP) along with Java Agent Transfer and Communication

Page 50: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

57

Interface (J-ATCI) also help achieve the same. Although Aglet platform has wide user

acceptance but it doesn‟t provide much security. Its security is knitted in the concept

of restricting transfer of aglets only to its own servers. Due to lack of security, state of

aglets can‟t be stored on any other host. No such method is provided by this tool.

Scalability is another problem, since aglets are not interoperable with other platforms

or their agents, due to their restriction of working with their own server. Figure 2.24

given below illustrates the structure of an aglet.

2.11.3 Voyager

Voyager [30] is an agent development tool developed by ObjectSpace, in mid-

1996. ObjectSpace has been taken over by Recursion Software Inc. since 2001 and

it‟s now their commercial product. Latest version available is Voyager 8.0. It‟s a

simple yet powerful technology for creating mobile agents in Java. It was an

improvement over already existing platforms like Aglets, Odyssey, Concordia etc.

which only allowed developers to create agents and launch them into a network to

fulfill its mission. But none allowed sending messages to a moving agent, which made

it difficult to communicate with an agent once it has been launched and also for

agents to communicate with other agents.

Voyager seamlessly integrated fundamental distributed computing with agent

technology. It treats an agent like a special kind of object which can move

independently and can continue its execution while moving around. The agents and

Figure 2.24: Structure of an Aglet [132]

Itinerary Identifier Aglet Core

Aglet Proxy

Page 51: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

58

objects are different only because an agent can move autonomously whereas an object

can‟t. It allows an agent to send and receive Java messages to and from other agent,

even while traversing the network, irrespective of its position in the network. It

supports synchronous, one-way and future message modes. Whenever an agent

moves, it leaves behind a forwarder object which forwards the message to its new

location.

Voyager provides flexible life spans for agents, by supporting a variety of life

span methods:

An agent can live until it has none local or remote references (default life span

of an agent).

Agent can live for a certain amount of time (by default for a single day).

It can live for a particular point in time.

It can live until it remains inactive for a specified time.

An agent can live forever.

Moreover, an agent‟s life span can be changed flexibly as required. Another

attractive feature of this tool is its support for directory service, which is particularly

important in launching a mobile agent from one application to another and for

locating an agent after it moves to some other location in the network. Its directory

structure allows creating and connecting network directories together to generate a

large interlinked directory structure.

Voyager supports weak mobility of agents using RMI technique. It allows all

serializable objects to be mobile using Virtual Code Compiler (VCC) [30]. VCC

utility accepts any .class or .java file and produces a new remote enabled virtual class.

This virtual class is used in further communications with that agent/object. Agents use

moveTo() function and a callback function for migrating to a remote host. On

reaching new host, the agent retrieves the callback function that it sent and resumes its

execution.

Page 52: Chapter 2 Mobility Protocols and Mobile Agents: THE …shodhganga.inflibnet.ac.in/bitstream/10603/10578/11/11_chapter2.pdfpresents an overview of various generations of mobile network

59

Voyager has an associated server called „voyager‟ but it‟s not necessary to

have such server installed on all nodes in the network. Due to this reason agents

created using voyager are provided restricted access on the host servers. Thus,

provision of agent and host security is weak in this tool.

2.12 Conclusions

The chapter provided the motivation behind the research work being carried

out in this thesis. The chapter elaborated on various generations of mobile networks

and also the fundamental protocols. The work was initiated with the idea of injecting

intelligent mobile agents in 4G and hence the details about agents & their properties

had been presented. Various platforms that are in operation have been explored and it

was discovered that JADE is the most suitable platform to be implemented in mobile

network.

Next chapter presents the literature survey by exploring the contribution of

eminent researchers and the drawbacks of fundamentals protocols deployed in mobile

networks and also it aims to highlight the role of mobile agents in telecommunication.