zyx
zyxwvut
zyxwvutsr
IIP for Wireless Communication
Kirti Keshav and Venkatarani P
ECE Department
Indian Institute of Science
Bangalore, 5600 12 INDIA
080-293-2282
kirti Oprotocol.ece.iisc.ernet.in, pallapa@ece.iisc.eriiet.in
zyxwvuts
Ahsrrcict-Th is paper proposes I IP( I ntel I igent Internet Protocol) which effectively addresses the issues involved in wireless communication at Network Layer such a s support for
mobility, frequent loss of connection due to fading, handoffs and security. We have chosen to use Intelligent Agent
technology for our architecture of 1IP because it provides
desirable properties such as Speed-up and Efficiency, Robustness and Reliability, Scalability and Flexibility, Development and Re-usability. We make use of .four Intelligent
Agents namely Principal Agent(PA), Agent for Address
Resolution and Mobility Support(AARMS), Agent for Error Handling a n d Recovcry(AEHR), Agent for Network
Security(ANS) and design each Agent bused on BDI(BeliefDesire-Intention) Architecture. A variant of Blackboard architecture is used for inter-agent communication. Special
carc has been taken to make proposed IP compatible with existing Networks. The proposed work has been simulated and
verified for its operational effectiveness.
While designing the architecture for Intelligent IP, we had
four important design ob.jectives, to make our IP really intelligent cnough to solve the problems in wireless communication
efliciently. This paper presents tlie nrchitecture of Intelligent
IP b x c d on following design objectives:
Intelligent Agent based 1P has to be backward compatible
with existing networks, i.e., it must handle all the existing
ne twork tratli c successfii I I y.
Intclligent IP has to be Rexible; for example, various functionalities of Network layer such a s security. support for mobility are to be evoked only when necded i n order to avoid
excessive processing.
Better cooperation und coniinunication between protocol
layers are key requirements for improving Internet protocol
performance in future. Hence. we have to design in such ;I
f;isliion that later on TCP functionality can be added to form
;I coinpletc 11' stack, based on layer less architecture using
Intel I igent Agcnts.
Rapid development of new protocols. I n future new protocols would be implemented quickly by adding Agents with
new functionnlities ;is required by new protocols.
.
.
1
zy
zyxwvut
zyxwvutsrq
zyxwvutsr
1. INTRODUCTION
Dcsigii ol?jcctivcs
I
Phnitrl lledir
Figure 1. A typical Comm~inicationScenario
2. THEPROPOSED
INTELLIGENT
IP
wI R ELES S c0M M UNI CAT I ON
FOR
In our proposed IP, we make usc of four Agents. Each individual Agent follows BDI Architecture as an internal model.
Every Agent is able to sense the environment i.e., perceptions
are same for all the Agents.
The IIP is intelligent in tlie sense that it learns from the environment dynamically and takes the best decision on the basis
of present and past state information, among the various options available. A brief description of each of the four agents
is as follows.
First Agent,whicli we name as Principal Agent(PA), takes
care of normal 1P functionality. It's possible actions include
passing of arrived packet to tipper layer protocol if destination of packet is host itself, forward packets to appropriate
next hop if packet is meant for another host.
Second Agent, coined a s Agent for Address Resolution and
Mobility Support(AARMS), handles all addressing related
issues of IP layer. I t is responsible for maintenance of routing tables. If the environment is of Wireless type, then this
Agent makes sure that hantloffs and frequent temporary loss
of connection i n wireless link doesn't affect the upper layer
coiinectioiis. It c u i use Mobilc IP for macro mobility (slow
handoffs) a n d either ccllulnr IP or Hierarchical Mobile IP in
case of micro mobility(fast handfiffs) to avoid excess signaling overhead. If other Agents need any information regarding IP addresses, they send request to this Agent. Packets corresponding to various Routing protocols such as RIP,
OSPF, BGP are also to bc handlecl by this Agent for maintnin-
zyxwv
zyx
zyxwv
zyxwvu
zyxwv
zyxwv
TENCON 2003 / 1540
BDI ARCI-III‘ECTCJRE:
W I T H I N EACH
AGENT
BDI architcclures I I I ;ire pl’ncticnl rcxoning iirchilectures. i n
3.
U S E OF
.
which the process of cleoitling what t o do rcsembles the kind
01. prxticnl reasoning t h a t we appear to use i n our evcryday
lives. The basic eoniponciits of ;i BDI architecture are data
struckires representing the bcliels. desires. and intentions of
the ;igent. ancl I’iiiictions that rcpresent its deliberation (tlecicling what intentions to have - i.e.. deciding what to do)
and means-ends reasoning (deciding how to do it). Intentions
play ;I central role in the BDI inodel: they provide stability
for decision making. ;incl act IO focus the agent’s prncticiil
reasoning.
zyxw
zyxw
zyxwvutsrq
We clioose BDI Architecture ;IS ;in internul architecture tor
each agent mainly l‘or two reasons:
.
- -.
I
:
,i
,
:
j
,’
.
~ ...
. ._
..
.
.
- .......
...
....
.
’
Figure 2. Intelligent IP for Wireless Communication
ing routing tnbles. I n future routing protocol corresponding
to Ad-Hoc wireless network are also to be handlccl by this
Agent.
Third Agent. termcd a s Agent for Error Handling and Rccovery(AEHR). is responsible for handling 01’ various error
situations. It handles all ICMP traftic and takes appropriate
actions in fesponse t o it. It also helps AARMS. i n niaintaining routing information. For example. when ICMP Redirect
message comes. suggesting ;I better next hop uclclrcss to destination. it gives this information to AAKMS.
Fourth Agent. Agent for Network Sccurity (ANS). In
Wireless Communication. since data is transmitted in open
medium. security o f data is extremely necessary. This Agent
mainly takes care of all the ‘four aspects of Network security.i.e.. Secrecy. Authentication. Non-repudiation and I n tegrity Control. Currently. we propose to inlike use of IPSec
protocol. Depciidinf upon the current beliefs ancl intentions,
it decides regarding which of the two types o f security a \ gorithms. symnietric encryption algorilhriis (e.g. I h t a Encryption Standard- DES) and One-way hash funclions (e.g..
Message Digest MD5 and Secured Hash Algorithm SHA-I ).
as recoinmended by IPSec protocol, is to be used. IPSec also
provides-waysto sectirc tunnels against false data origins, and
encrypt traffic agninst unwanted network passive or active intruders from listening or modifying actions. Authentication,
which is used for granting user x c e s s to corporate network
and Encryption which is used t o transfer user critical infornlation through unreliable medium of the IP network arc the
most important aspects which iire to be taken care of.
In addition. Principal Agent also acts as the fiicilitator that
manages interaction between Agents for inter-agent communication.
I t is intuitive - we all recognizc the process of deciding
what to do and then how to d o it. and we all have an inforinnl
understanding of the notions of belief, desire. ancl intention.
It gives LIS ii clear functionnl decomposition, which indicxtes what sorts of subsystems might he required to build iin
Agent.
Decisiou
tiicrkiirg pi.occ~.s.s
?/‘cwcIi Agcwt
I f S is an arbitr;uy set. then
zyxwv
b4S)
power-se, of S, ‘rile stateof
n,oment is, il
(13.D,I),
is
B D I A~~~~ i,t any givel,
U C B e l , D C D r : s , r i i ~ r l IC l r r t
An Agent’s belief revision function is :I mapping
IWJ
: t:,( Bel) x
P
--f
p(Br4)
which on the basis of the current percept and current beliefs
dctcrinines a new set of beliefs. The option generation function. riptioris. maps ;I sct of beliefs and a set of intentions to a
set of desires.
fq’tio/ts : (.>(DC,l)
x p ( Z d )
-+ $,(DCS)
The purpose of optiotis function is basically to perform
means-ends reasoning with additional constraints of being
con.ristenf.
A BDI Agent’s deliberation process (deciding what to do) is
represented i n the,fiho. function.
Jdtf!?’ : gJ(Bf!/)
x
(,l(I./j,/,) G)(I//,t)
&,(nCS)
x
which updates the Agent’s intentions on the basis of its previously held intentions. ctirrent beliefs iind clesires.,filtn should
satisfy the following constraint:
VB E $’(BiCl),VDE p(Dcs),VI
E K>(ZUt)
\
zyxw
zyxwvu
zyxwvuts
zyxwvutsr
zyxwvutsrqponm
zyxwvutsrqponmlkji
zyxwvutsrqpo
Poster Papers / 1541
jiltcr(L?, D , I ) c I U D .
In other words, current intcntions are either previously held
intentions or newly adopted options.
The exrciite function will then return executable intentions
which correspond to directly executable actions:
The Agent decision function, ac/ior?of a BDI Agent is then a
function
nctiolls : P
--f
.4
and is defined by the following pseudo-code.
function action(p: P):A
begin
B := /v/(B,p)
D := optio~s(B,I)
1 :=/?Ikr(B,D,l)
return e.uxote(1)
end function action
Figure 3. Inter Agent Communication
5.
IMPLEMENTATION OF
IIP
zyxwvutsrq
Sorrie Beliqji o/'llP :v Agents
All Agents share set of common beliefs. Here is a small set
of coininon bcliefs which are useful at network layer.
Whether communication is over wireless or wire-line link
can be known by the IP addresses of communicating hosts.
Loss rate
Rate of environment change
Security required or not
Type of Application-Multimedia or Data Centric
System related facts
- Buffer space available
- Processing power available
4. METHODOF INTER AGENT
C OM M U N ICATI ON
I n proposed architecture, communication between Agents
is achicvcd using a Blackboard consisting of four regions,
which are divided among four Agents. Each Agent has its
own region, where it can write. But every other Agent has
permission to read i n memory areas of other agents. Due to
this mechanism, every Agent knows what other Agents has
to say. Synchronization among Agents is achieved by making tise of global flags. Above scheme has been implemented
using shared inernory concept. Each of the Agent has been
implemented using different process. A set of four memory
areas are created by Principal Agent. Then these memory
arcas are attached by other Agents to their process address
space.
Proposed lntelligent 1P is implemented at Application layer in
Linux Machine. Linux kernel implcments a generic-purpose
protocol, called PF-PACKET, which allows us to create a
socket that receives packets directly from the network card
driver. Hence, any other protocols handling is skipped, and
any packets can be received. Using this PFPACKET Socket
facility, we are able to bypass the tistial TCP/IP stack and receive the Ethernet frames directly at the Application layer.
Since presently we are concentrating. on IP layer only, at
Transport layer we are using U.DP.
Advnntuges y f iniplenienting IIP ot Application I q w
PF-Packet Socket type through which we are able to receive packets directly at Application layer is ;I stantlard socket
type, which is available on all Unix machines, so our implementation is portable on all Unix machines.
At Application layer, we have access to facilities of modern
high level language constructs. We are using facilities such as
shared memory and processes. Each of our Agent is implemented as a process and to coinmunicate among themselves,
they use shared memory.
Now we present some case studies, to give an idea of how
IIP reacts intelligently to different environment scenarios at
network layer.
Case Stirdies
Each Agent in the.system, gets the common perceptidn from
the environment. But since intentions of different Agents differ, each Agent responds independently to an event and update> itself with new options and intentions for future de-
zyxwv
zyxwv
zyx
zyxwvut
TENCON 2003 / 1542
care-of-address and it should now receive tunneled packets
with new care-of-address.
Case 6: If a mobile node is about to make handoffs, then
AGENT3 takes action by stopping the data transfer for a brief
interval and start buffering the data being transferred. After hantl-off has been completed. normal data transfer is resu nied.
Case 7: Similarly if Agents sense from :the environment that
link quality is poor due to fading effects, then system starts
taking precautionary measures by reducing the data transfer
rate and buffering the data being transrnitted, so that even if
some packets are lost, they can be retransmitted locally only,
instead of from the original sotirce.
6. WIRELESSNETWORKSETUP
&
EXPERIMENTS
\
i
zyxwv
zyxwvutsrqponm
We used the Wireless Network Setup as shown in Figure
4. Experiments were perfoinetl using the machines namely
EOD. WLAN and JALAW. While WLAN is connected to network with both wireless and wireline link, JALAW is having
only wireless link with network.
Processing T h e
zyxwvutsrqpo
As a benchmarking test, an ICMP ECHO REQUEST coming
Figure 4. Wireless Network setup
cision. To make our implementation compatible to existing
TCP/IP structure, we support 161, [7] and RFC79l(for IP).
Case 1: Usual IP traffic is being received by our Intelligent
IP and buffer overflow occurs in receiver's memory. Then
AGENT3 sense this perception from environment, and sends
ICMP-SOURCE-QUENCH message to sender.
Case 2: While receiving data if Agent? finds that 1P is
not able to pass on the packets further, it sends back
ICMP-UNREACH type message.
Case 3: If IP sends data and some intermediate router
finds that better route is available then router sends an
ICMP-REDIRECT message containing the address of better
router. So, Agent2 will get this information from Agent3 and
next packet onward AGENT1 will send packets with destination address mentioned in redirect message.
Case 4: If some intermediate hop finds ,that something is
wrong with the header field of IP packet than i t sends the
source an ICMP-PARAMPROB message. On receiving of
this message AGENT3 tries to locate the error and rectify it.
Case 5: If mobile node moves to a new network, AGENT2,
which is responsible for address related issues , senses this
event and initiate procedures to acquire care-of-address, so
that mobile node can receive packets from Internet hosts without losing existing connections. After acquiring new care-ofaddress Agent2 intimates AGENT1 that it has received new
from the EOD is received by WLAN and in response,WLAN
generates an ICMP ECHO REPLY and send it buck. The
test was made by varying the size of payload on ECHO REQUEST message. When each message arrives or departs.
the time was noted down with micro-seconds resolution at
WLAN. Following graph depicts vuriation of average processing time with variation in payload size o f arriving packets.
Input Proccsinf Time \ < P;iglintl Sizc
linuw Kcriirl +
z
I
.t. . . . . .
0
t
.
t ..
I
0
200
400
600
XIN)
I
I
INMI
I?W
1400
Paylu;id Six
Figure 5. Average Processing Time for Incoming Packets
We can see that our Intelligent Agents based IP implementation's overall processing time for incoming packets is slightly
more than that o f Linux kernel's protocol stack implementa-
zyxwvut
zyxwvu
zyxw
.. -
Poster Papers / 1543
tion. Following reasons can be attributed to this phenomenon.
We have implemented our Intelligent Agent Based IP at
user level in Linux. So when a packet arrives at the Ethernet
interface. kernel always gets the priority to handle packets
over any other user process[lO]. Because of this, even though
our Agent Bused IP receives packet directly from Ethernet
interface, it gets packet after some delay.
For transmitting the response packets also, since we are
using PF-PACKET Socket facility, again user level process,
which is obviously a slower method to transmit than the way
kernel’s TCP/IP stack does.
From the results obtained, we can conclude thnt our Intelligent IP for Wireless Communication is compatible with existing TCP/IP stack and even though we have implcinentetl
our architecture at user level i n Liniix, thereby not having.the
advantage of faster handling of clata as compared to Linux
kernel, overall processing delays arc coniparable to existing
TCP/IP implementation of Lintix kernel. Also our Agent
based architecture has atlcled advantage of bcing flexible.
scalable and reusable. as more Agents can be added easily
as and when new requirements arise.
zyxwvutsrqpo
zyxwvutsrqponmlk
zyxwvutsrq
zyxwvuts
Rotiucl E.@
firtie
This test is to see average round trip time available with our
implementation over il wireless link of bandwidth 2MBps.
From EOD to JALAW on a 2 MBps Wireless link, we transmit ECHO-REQUEST message with varying payload. Both
Server and Client are using our Intelligent Agent Based 1P.
REFERENCES
Gerhard Weiss, “Multiagent Systems: A Modern Approach to Distributed artificial Intclligencc.” The MIT
Press, Massachuseiis.
http://www.computer.org/in ternet/v4n I/joy.htm
M. E. Bratman, “lntentions, Plans, and Practical Rea-
son,” Harvard University. Press: Cambridge, MA. 1987.
P. E. Agre and S. J. Rosenschein, “Comptitationnl Theories of Interaction and Agency,” The MIT Press: Cambridge, MA, 1996.
M. Wooldridgc,
“’Agent-based software errgineering,” IEE Eunsrrctioiis o r 1 S o / t i t w e Gigiirewitig,
144( 1):2637, February 1997.
RFC793, T.Socolofsky, C.KaleA. “Transmission Control Protocol,” September. 198 I .
zyxwvutsrqponmlk
RFC792, J.Postel, “Internet control Message Protocol.”
September, I98 I .
0’
Glitho, R.H., Magedanz, T.. “Applicability of Mobile
Agents to Telecommtinications,”lEEE NetMW/.li.Vol 16,
Issue 3, May/Jun 2002.
Stuart Russell and Peter Norvig, “Artificial IntelligenceA Modern Approach,” Pearson Education. 2001.
M.Beck, H.Bome, M.Dziadzka, U.KuniW, R.Magnus,
D Verworner. “Linux Kernel Intcrnnls,” AddisonWesley, 2000
zyxwvut
Figure 6 . Round Trip Time for Packets with varying payload
The round-trip time estimation is il critical part of TCP, since
the estimated round-trip time is used when determining ii suitable retrmsmissioii ti me-oiit .
As one can note that we are able to achieve very less R T T (6-7
ms) with smnll packets, which shows that once TCP functionality is implemented. our Intelligent agent based IP would be
able to handle interactive applications like Telnet, where response time upto 1501nsis acceptable.
7. RESULTS& CONCLUSION
We have deployed IIP in real-time TCP/IP environmenl
where several FTP transactions, Multimedia stream transfers, etc., are taking place.To test our implementation, we
performed various experiments and compared the parameters
such as average processing time and round trip time.