You are on page 1of 17

NRK\MOBILE COMPUTING\U – 5\ 1

TRADINTIONAL TCP

In this unit, difficulties involved in providing Internet support – browsing, email etc - to the
mobile devices such as pagers, PDAs and cell phones etc. are discussed.

Traditionally, TCP / IP protocol stack is used for providing connectivity to the stationary
devices. To provide support for the mobile devices, lower layers up to network layers are not sufficient.
While network layer addresses the host, port, transport (TCP / IP ) layer provides dedicated application
(lying above them in protocol stack) by way of multiplexing data to and from applications. In addition,
while UDP provides a connectionless, TCP can give certain guarantee such as in-order delivery or
reliable data transmission using retransmission technique etc. However, these are designed non mobile
applications.

Based on unique problems associated with the mobile nodes, a set of solutions have been
developed. These are : Indirect TCP, Snooping TCP, Mobile TCP, Fast Retransmit/fast recovery,
Transmission / time out freezing, selective retransmission, transaction oriented TCP etc Brief
description of each is given below:

Traditional TCP: To start with, a bit of under standing of the tradition protocol stack is discussed.
Salient features that enhances the TCP performance are:

i. Congestion Control: Once the network system (consisting of routers, bridges, hubs) are
established, the hardware and software become matured and they are not likely to drop packets
or flip bits (0 to 1 or vice versa). However, temporary overload that occurs when a number of
input data (different input links) being addressed to a particular output link This results in a
congestion of a node. Congestion may occur from time to time. In this case, the router drops the
packets which is observed by the receiver. When the senders does not receive the ACK for the
lost packets, each of them assume congestion in the network. As sending the data at full rate is
unwise, each of the senders reduce the data rate which removes the congestion over a period of
time. So even under heavy load, TCP guarantees at lest sharing of the bandwidth.

ii. Slow Start: An important features of as a response to congestion is Slow Start mechanism. In
this once, congestion is indicated, the sender reverts to slow start mechanism. It works as
follows:
The sender starts sending one packet and waits for its response. The waiting period is
equal to RTT. If ACK is received, he doubles the size of the packet and waits of ACK. This
process is repeated till he reaches a threshold limit. That is till he reaches the threshold level, the
message size increases exponentially. Once it is reached, the increment changes to linear. Here
again, increment is not for ever. Now whenever time out occurs due to missing ACKs, the
threshold level is set to half and the congestion is set to one segment and the sender start
sending a single segment. Now the exponential growth goes upto new threshold level.

iii Fast Recovery / Fast Retransmit: In TCP, loss in receipt of the data at the destination can be
due to two reasons. One is occasional loss due to error. Other may be due to congestion. In case
of occasional loss, the receiver sends ACK for the last packet repeatedly for three or four times.
This is an indication for the sender that a packet is lost the and the sender now retransmits the
same. This is called fast retransmit which takes place without much loss of time.

Contrary to this, when a congestion takes place which results in non receipt of ACK for a time
which is much more than RTT, it reverts to slow start mechanism which is called fast
recovery .
NRK\MOBILE COMPUTING\U – 5\ 2

Implications on Mobility:
While slow start is one of most useful mechanism in a fixed network, it drastically reduces the
efficiency of the TCP if used in a mobile receiver or sender. The reason for this is that slow start
mechanism may be initiated for wrong reasons. Missing ACK in case of mobile nodes is very common
which may be due to mobility or due to any interruption.

Also error rates, packet loss on wireless links are order of magnitude and cannot be always
compensated by retransmissions or error correction mechanisms.

Mobility itself can cause packet loss. There are many situation when a soft handover is not
possible for mobile end system. This results in loss of packet that are in transit to the old foreign agent
while the nodes move to the new foreign agent. This loss is nothing to do with wireless access but it is a
rerouting problem.

As already brought out, receipt of the three or more ACK for the same packet is identified as loss
of a single packet and appropriate action is taken and loss of ACK for a time that is much more than
RTT is identified as congestion and slow start mechanism is invoked. Both these cannot be applied for
the Mobile devices as more often, loss of packet can take place for reason other than these as well

Also, for the sake of mobile devices, on cannot change the TCP protocol that encompasses the
inter globe. Hence new methods were devised that are discussed below:

Classical TCP
i) Indirect TCP (I-TCP):
This method has been developed based on two premises.
1. TCP performs poorly together with wireless links
2. TCP within the fixed network cannot be changed.
I-TCP segments a TCP connection to a mobile device into a fixed part and a wireless part. As shown
below. In this, the standard TCP is connected between fixed host and the foreign agent (Access Point).
Where as the ‘Wireless TCP’ is connected between the Access point and the Mobile host.

IN this the access point acts as a proxy for both fixed and mobile nodes. In case of fixed nodes, it
is the mobile node proxy and in case of mobile host, it is the fixed node proxy. Foreign agent (access
point ) is selected as proxy as it controls the mobility of the most host. However one can identify the TCP
connection separation at a special server at the entry point to a mobile network (eg IWF - Inter Working
Function in GSM, GGSN in GPRS etc)

The foreign acts as proxy and relays all data in both directions. What is important to note in this
case is that the foreign agent itself responds to the receipt of data from either hosts and send ACKs by
itself. In case the packet is lost in the wireless medium, the fixed (correspondent ) node will not notice
this as the ACK is already sent by the foreign agent. However, the foreign agent tries to retransmit this
packet locally to maintain reliable data transport. Similarly while the mobile node sends data to foreign
agent, if it is lost, the mobile nodes identifies this much faster as the RTT upto proxy is very much
smaller and it retransmits the lost packet.

IN case of mobility of a mobile to a new access point, this is intimated to the old access point and
the data are cached. This data is rerouted to new access point along with the current TCP state such as
sequence number, address, ports etc.

There are several advantages of this methods . these are :


NRK\MOBILE COMPUTING\U – 5\ 3

i) I-TCP does not required any change in the existing TCP.


ii) Transmission in the wireless link like lost packets, cannot propagate into the fixed
network.
iii) With I-TCP, new mechanism can be introduced in the fixed network.
iv) Partitioning into two connections also allows the use of different transport layer protocol
between the foreign agent and mobile host.

Some of the disadvantages of the systems are listed below;


i) End to end semantics of TCP is lost. The correspondent always assumes that the receiver
has received the packet once it receives the ACKs which always may not be case.
ii) Increased handover latency may be more problematic. The old foreign agent needs to
buffer the packet that are destined for the mobile node till it receives any information
regarding its current position. This may strain the resources of the foreign agent.
iii) The foreign agent is to be a trusted agent. If the user applies end to end encryption, the
foreign agent has to be integrated into all security mechanism.

ii) Snooping TCP:


In this method, the foreign agent buffers all packets with destination mobile host and additionally
snoops the packet flow in both directions to recognize acknowledgements. Buffering enables the foreign
agent to perform local retransmission in case of packet loss on the wireless link. IF the FA does not
receive ACK within a certain amount of time, either the packet or ACK is lost. Also, FA agent could
reeive a duplicate ACK (similar to TCP) which alsl shows the loss of a packet. Now the FA directly
retransmits the packet. From the buffer. Which considerably reduced the retransmission time if it was to
be done by the correspondent node. In addition, end to end TCP semantics is maintained. Towards this
end, the ACK is not done by the FA. It only forwards the same in either direction. However, the FA can
filter the duplicate ACKs.
IN case of transmission of data from Mobile node to Correspondent node, the FA snoops on the data
sequence number and if it identifies a missing packet, it returns negative ACK to the mobile host. The
mobile can now retransmit the missing packet immediately. Reordering is done at the CN.

iii) MOBILE TCP :


In case of Mobile deices, dropping packets when they are out of coverage area are common.
When it happens, In case of normal TCP, a sender tries to retransmit data controlled by retransmission
timer that doubles with each unsuccessful retransmission attempt, upto a maximum of one minute. This
means that the sender tries to retransmit an unacknowledged packet every one minute and will give up
after 12 retransmissions. If connectivity is back earlier than this one, the sender waits for a minimum of
one minute. Later he goes into slow start mechanism as he assumes congestion.

IN M-TCP this problem is attempted. In this, M-TCP tries to improve the overall throughput,
lower delay and maintain end to end semantics of TCP and provides more efficient handover. It is more
suitable for lengthy or frequent disconnections.

M-TCP splits the TCP connections into two parts. An unmodified TCP is used on the standard
host – Supervisory host (SH) connection while an optimized TCP is used on the SHJ-MH connection
The SH is responsible for exchanging data between both parts similar to the proxy in I-TCPAs it assumes
low bit rate error it does not perform caching and retransmission of data via SH> If a packet is lost on
the wireless link, it has to be retransmitted by the original sender. This maintains end to end semantics.

The SH monitors all packets sent to the MH and ACKs returned from the MH. IF the SH does not
receive an ACK for some time, it assumes that the MH is disconnected. It then chokes the sender by
setting the sender’s window size to 0. Setting the window size to 0 forces the sender to go into persistent
NRK\MOBILE COMPUTING\U – 5\ 4

mode. That is the state of the sender will not change no matter how long the receiver is disconnected.
This means that the sender will not try to retransmit data. As soon as the SH detects connectivity, it
opens the window of the sender to the old value. The sender can continue sending at full speed. This
mechanism does not required changes to the sender’s TCP.

Advantages:
i) It maintains TCP end to end semantics.
ii) If the MH is disconnected, it avoids useless retransmissions, slow start or breaking the
connection etc by simply shrinking the sender window’s size to 0.
iii) As lost packets are automatically retransmitted to the new SH, there is no need to buffer
the data whenever, the MH moves to new SH.
Disadvantages:
i) As SH is not a proxy, bit errors are propagated to the sender.
ii) In this case, when a number of nodes move to a new SH, the bandwidth need to be
managed.

iv) Fast Retransmit / Fast Recovery:


Whenever a MH moves to a new FA, it can cause packet loss or timeout at CN. IN this case, the
sender moves on to slow start mechanism assuming congestion. This can be avoided by simulating the
fast retransmit method. In this case, when a MH moves to a new FA, it transmits thee ACK of the last
packet was received. It is indication for the CN to continue transmission at the same rate it did before
MH moves to another FA. This approach puts the CN to fast retransmission mode.

Advantages:
It is simple. Only minor changes in the mobile host software results in performance increase. No
FA or CN host has to be changed.

Disadvantages:
In this the packet losses in the wireless domain are not isolated and are reflected in the wired
domain as well. This results in increased time delay in the retransmitted packets to move from CN to
MH.
v) Transmission / Timeout Freezing:
Normally when the connection is lost, in case of normal TCP, after a time out period, a
disconnection takes place. IN a situation where in a mobile node moving through a tunnel or passing
black out areas, when it comes back, t the connection is lost and it needs to make connection once again.
In this method, this problem is solved.

Mostly, the MAC layer has already noticed connection problems, before the connection is actually
interrupted from a TCP point of view. IN addition, MAC layer knows the real reason for the interruption
and does not assume congestion as TCP would. So, in this case, the MAC layer can inform the TCP layer
of impeding loss of connection or that the current interruption is not caused by congestion. The TCP
can now stop sending and freezes the current state of its congestion window and further timers till once
again MAC layer informs it about the connectivity (whenever it detects).

Advantage:
The advantage of this approach is that it offers a way to resume TCP coonection even after
longer interruptions of the connection. It is independent of any other TCP mechanism, such as ACKs,
sequence numbers etc.

Disadvantages:
i) The software on the mobile host and CN needs to be changed.
NRK\MOBILE COMPUTING\U – 5\ 5

ii) Freezing the TCP may not work well with some of the TCP mechanism that encryption
which use time dependent encryption schemes. These schemes need synchronization after
connection.
vi) Selective Retransmission:
In TCP, acknowledgement are cumulative. That is they acknowledge in order of receipt of packet
upto a certain packet. If a single packet is lost, the sender has to retransmit everything from the lost
packet (go back n retransmission.). This obviously wastes bandwidth. In Selective Retransmission s
method, TCP can indirectly request a selective retransmission of packets. The receiver can acknowledge
single packets, not only trains of in sequence packets. The sender can now determine precisely which
packet is needed and can retransmit it.

The advantages is that sender retransmits only those data that are lost. This lowers bandwidth
requirement. The disadvantage is more complex software on the MH.

vii) Transaction Oriented TCP:


Normally, using TCP requires several trans reception of packets for connection setup, data
transmission and connection release. Even for small data say 10 bytes, connection and release overhead
becomes substantial (around 7 packets.). IF the data requires reliable transport, even for one packet, 7 +
1 packets needs to be sent. IN case of T TCP, data can be combined with connection establishment
packet and connection release packet in either direction. This reduce the total overhead.

Although, it is possible to reduce the overhead, both MH and CN requires software updates.

Comparison of TCP classical enhancement is given in the following table:

Approach Mechanism Advantages Disadvantages


Indirect TCP Splits TCP Isolation of wireless link, Loss of TCP semantics. Higher
connection into two simple. latency at handover, security
connections problems.
Snooping TCP Snoops data and Transparent for end to Insufficient isolation of wireless link,
acknowledgements, end connection, MAC security problems
local retransmission integration possible
M-TCP Splits TCP Maintains end to end Bad isolation of wireless link,
connection, chokes semantics, handles long processing overhead due to
sender via window term and frequent bandwidth management, security
size disconnections problems
Fast Avoids slow start ate Simple and efficient Mixed layers, not transparent.
Retransmission roaming
/ Fast
Recovery
Transmission / Freezes TCP state at Independent of content, Changes in TCP required, MAC
Time out disconnection, works for longer dependent
freezing resumes after interruptions
reconnection
Selective Retransmits only lost Very efficient Slightly more complex receiver
retransmission data. software, more buffer space needed
Transaction Combines connection Efficient for certain Changes in TCP required not
oriented TCP setup-/ release and applications transparent, security problems.
data retransmission
NRK\MOBILE COMPUTING\U – 5\ 6

WIRELESS APPLICATION ENVIRONEMNT

The purpose of the WAE is to create a general purpose application environment based mainly on
existing technologies of the WWW. This should allow service providers, software manufacturers or
hardware vendors to integrate their application so that they can reach wide variety of different wireless
platforms in an efficient way. Some of the features of the Wireless Application Environment are given
below:
• Device and network independent application environment
• Designed for low-bandwidth, wireless devices
• Considerations of slow links, limited memory, low computing power, small display, simple user
interface (compared to desktops)
• Integrated Internet/WWW programming model
• High interoperability

WAP Architecture:

Runs on top of WDP


Provided lightweight X-
MicroBrowser (WML, oriented service
WMLScript, WTA, Unreliable 1-way request
WTAI) Reliable 1-way/2-way
req./response

Lightweight SSL
Uses WIM/PKI-
Cards

Datagram service on
different bearers
Convergence between
bearer services

Different Wireless
Tech.

 Wireless Application Environment Specifies

– WML Microbrowser
– WMLScript Virtual Machine
– WMLScript Standard Library
– Wireless Telephony Application Interface (WTAI)
– WAP content types

Wireless Protocol Stack :


Transmission of data is carried out by different bearer services. WAP does not specify bearer services,
but uses existing data services. Examples are SMS of GSM, circuit switched data of HSCSD (High
NRK\MOBILE COMPUTING\U – 5\ 7

Speed Circuit Switched Data) in GSM, or packet switched data such as GPRS or any other bearer
services such as IS 136, CDMA etc.
Brief details are given below:

 WAE (Wireless Application Environment):


– Architecture: application model, browser, gateway, server
– WML: XML-Syntax, based on card stacks, variables, ...
– WTA: telephone services, such as call control, phone book etc.
 WSP (Wireless Session Protocol):
– Provides HTTP 1.1 functionality
– Supports session management, security, etc.
 WTP (Wireless Transaction Protocol):
– Provides reliable message transfer mechanisms
– Based on ideas from TCP/RPC
 WTLS (Wireless Transport Layer Security):
– Provides data integrity, privacy, authentication functions
– Based on ideas from TLS/SSL
 WDP (Wireless Datagram Protocol):
– Provides transport layer functions
– Based on ideas from UDP

WAE components:
 Architecture –Application model, Micro Browser, Gateway, Server
 User Agents : –WML/WTA/Others
–content formats: vCard, vCalender, Wireless Bitmap, WML.
 WML : –XML-Syntax, based on card stacks, variables,
 WMLScript : –procedural, loops, conditions, ... (similar to JavaScript)
 WTA : –telephone services, such as call control, text messages, phone book, ... (accessible from
WML/WMLScript)
 Proxy (Method/Push)

WAP architecture is shown below.

Key
Components
Origin/Web Server
WAP Gateway/Proxy
WAP Protocol Stack
Micro Browser
WML/WML Script
Transcoders
WTA
NRK\MOBILE COMPUTING\U – 5\ 8

In the example, the WAP client communicates with two servers in the wireless network. The WAP
proxy translates WAP requests to WWW requests thereby allowing the WAP client to submit requests to
the web server. The proxy also encodes the responses from the web server into the compact binary format
understood by the client. If the web server provides WAP content (e.g., WML), the WAP proxy retrieves
it directly from the web server. However, if the web server provides WWW content (such as HTML), a
filter is used to translate the WWW content into WAP content. For example, the HTML filter would
translate HTML into WML. The Wireless Telephony Application (WTA) server is an example origin or
gateway server that responds to requests from the WAP client directly. The WTA server is used to
provide WAP access to features of the wireless network provider’s telecommunications infrastructure.

WAP ARCHITECTURE

W A P GATEWAY
CLIENT WEB SERVER

WML DECSK WITH


WML WML
ENCODER
JAVA

WML SCRIPTS
WML SCRIPT
SCRIPT WML HTTP
WSP/WTP ETC
SCRIPT
COMPILER
WTAI
CONTENT
PRPTOCOL
ADAPTER

CLIENT WEB SERVER


WML
WML DECSK WITH
WML
ENCODER
JAVA
WML
WML SCRIPTS
SCRIPT
SCRIPT WML ETC
WSP/WTP SCRIPT
COMPILER
WTAI
PRPTOCOL CONTENT
ADAPTER

Above figures illustrate the variants that are possible if the WAP gateway is integrated or co located
with the Web server

Brief description of the protocol stack is given below:


i) WIRELESS DATAGRAM PROTOCOL:
• It operates on different bearer services (GSM, CDMA(IS-95), GPRS, 3G(UMTS, W-CDMA,
BLUETOOTH etc)) that are capable of carrying data.
• Closer the bearer services to the IP, the lesser is the complexity in adaptation.
• As typical transport layer, it masks the complexities of the underlying bearer services adaptation
to the top layers.
• WDP offers other functionalities such as segmentation, multiplexing and de multiplexing(for
different applications).
NRK\MOBILE COMPUTING\U – 5\ 9

T-SAP T-SAP
T-DUnitdata.req
(DA, DP, SA, SP, UD) T-DUnitdata.ind
(SA, SP, UD)
T-DUnitdata.req
(DA, DP, SA, SP, UD)
T-DError.ind
SAP: Service Access Point
(EC) DA: Destination Address
DP: Destination Port
SA: Source Address
SP: Source Port
UD: User Data
EC: Error Code
The exchange of service primitive is explained below:
The service primitive, T-DUnitdata.req with destination address (DA), Destination Port (DP), Source
address (SA), Source Port(SP), and user data (UD) as mandatory parameter is sent to the
destination. The source and destination address can be MSISDN ( a telephone number or IP address).
Or any unique identifiers. At the destination T-DUnitdata.ind service primitive indicates the reception
of data. Here the DA and DP are optional as shown below.
IF WDP could not fulfill any requests by higher layer, it sends back T-DError.ind along with the reason.
It is used to indicate local problem such as user data size that is too large etc.
If the WDP service primitive are sent to any destination that are not reachable or no application is
listening, then the WCMP (wireless control message protocol), provides the error messages similar to
ICMP in for IPv4 / IPv6. Typical errors are – destination unreachable, parameter problem, etc.

ii) WIRELESS TRANSPORT LAYER SECURITY (WTLS):


• WTLS is optional service . If requested by an application, a security service can be integrated
into the WAP architecture.
• WTLS can provide different levels of security (for privacy, data integrity and authentication)
• It has been optimized for low band width, high delay bearer networks and low processing power
and very limited memory capacity of the mobile for cryptographic algorithms.
• WTLS supports datagram and connection oriented transport layer protocol.
• In this , the security is provided between peer to peer unlike GSM where the security is restricted
to wireless interface only.
• It is adapted from TLS (Transport Layer Security formerly SSL) but it has optimized
handshaking between peers.
Following diagram depicts the handshaking procedure followed in establishing the security protocol.
The first step is to initiate the session with the SEC-Create primitive. Parameters are DA, DP, SA, SP
and the originator proposes KES (Key Exchange Suite ), CS (Cipher Suite), CM (Compression
Method (optional)). The peer answers with parameters for the Sequence Number Mode (SNM), the
Key Refresh ( how often the keys are refreshed) and Session Identifier (SID) ( which is unique to each
peer) and the selected KES’, CS’ and CM’.
NRK\MOBILE COMPUTING\U – 5\ 10

originator peer
SEC-SAP SEC-SAP

SEC-Create.req
(SA, SP, DA, DP, KES, CS, CM)
SEC-Create.ind
(SA, SP, DA, DP, KES, CS, CM)

SEC-Create.res
(SNM, KR, SID, KES‘, CS‘, CM‘)
SEC-Create.cnf
(SNM, KR, SID, KES‘, CS‘, CM‘)
SEC-Exchange.req

SEC-Exchange.ind

SEC-Exchange.res
(CC)
SEC-Commit.req SEC-Exchange.cnf
(CC)
SEC-Commit.cnf
SEC-Commit.ind

KES: Key Exchange Suite; CS: Cipher Suite ; CM: Compression Mode ; SNM: Sequence Number
Mode; KR: Key Refresh Cycle ; SID: Session Identifier ; CC: Client Certificate

The peer also issued a SEC-Exchange Primitive. This indicates that the peer wishes to perform public
key authentication with the client, i.e the peer request the Client Certificate (CC) from the
originator. The originator answers with the certificate and issues a SEC-Commit.req primitive. This
primitive indicates that the hand shake is complete for the originators side and that the originator
now wants to switch into the newly negotiated connection state. The certificate is delivered to the
peer side and the SE-commit is indicated. The WTLS layer of the peer sends back confirmation to
the originator.

After setting the secure connection between tow peers, user data can be exchanged Which is done using
the SEC – Unit data primitive as shown below:

sender receiver
SEC-SAP SEC-SAP

SEC-Unitdata.req
(SA, SP, DA, DP, UD)
SEC-Unitdata.ind
(SA, SP, DA, DP, UD)

iii) WIRELESS TRANSACTION PROTOCOL:


NRK\MOBILE COMPUTING\U – 5\ 11

Transaction refers to a requests that gets response.


WTP is on top of the WDP or if security is required WTLS. It is designed to run on thin clients like
mobile phones and it offers several advantages to higher layer including an improved reliability over
datagram services and improved efficiency over connection oriented service.
WTP offers the following features to the top layers. The basis is formed from three classes of
transaction services. These are:
• Class 0: Provides unreliable message transfer without any result message.
• Class 1: Provides reliable message services without reliable result message service. (ACK from
WTP only )
• Class 2: Provides reliable message transfer with one reliable result message.(ACK from User
application)
Other characteristics are:
• WTP achieves reliability using Acknowledgements, retransmissions, duplicate removals and
using unique transaction identifiers.
• WTP does not required any connection set up or tear down phase.
• WTP allows for asynchronous transactions, abort of transactions and concatenation of messages
and can report success or failure or reliable messages.
Initiator represents the WTP identity initiating transaction. Responder for the WTP entity is the one
who responds to the Initiators request.

TR-Invoke primitives are used to initiate a new transaction, TR Result to send back the result and TR
Abort to abort existing transactions.
A special features of WTP is its ability to provide user acknowledgment or alternatively, an automated
acknowledgement by the WTP entity.

WTP Class 0: This class refers an unreliable service without a result message. The transactions is
stateless and cannot be aborted. The primitives transacted are shown below:
A: Acknowledgement Type
initiator responder (WTP/User)
TR-SAP TR-SAP C: Class (0,1,2)
H: Handle (socket alias)
TR-Invoke.req
(SA, SP, DA, DP, A, UD, C=0, H) TR-Invoke.ind
Invoke
PDU (SA, SP, DA, DP, A, UD, C=0, H‘)

The parameters for TR-Invoke.req are SA, SP, DA, DP, A, UD, C=0, H. In this A flag is used by the
initiator to select whether expects ACK from user (application) or WTP entity. Handle H provides a
simple index to uniquely identify the transaction and is an aliases for the tuple (SA, SP, DA, DP), that is
socket pair, with only local significance.

As can be seen in the above figure, the responder does not ACK the message and the initiator does not
perform any retransmission. This type of service is used by the application where datagram type
service is required.

WTP Class 1: This class offers a reliable transaction service but without a result message Here again the
initiator sends an invoke primitive with class value C = 1 and with no user ACK However, with C=1, the
responder (WTP layer) automatically responds with an ACK as shown below in part I
NRK\MOBILE COMPUTING\U – 5\ 12

initiator responder
Part I TR-SAP TR-SAP
TR-Invoke.req
(SA, SP, DA, DP, A, UD, C=1, H) TR-Invoke.ind
Invoke
P DU (SA, SP, DA, DP, A, UD, C=1, H‘)
TR-Invoke.cnf U
(H) Ack PD

Part II initiator responder


TR-SAP TR-SAP
TR-Invoke.req
(SA, SP, DA, DP, A, UD, C=1, H) TR-Invoke.ind
Invoke
P DU (SA, SP, DA, DP, A, UD, C=1, H‘)
TR-Invoke.res
(H‘)
TR-Invoke.cnf U
(H) Ack PD

IN this case, the transaction ends with the initiator receiving the ACK. However, the responder keeps the
transaction state for some time to be able to retransmit the ACK if it receives the same PDU again which
indicates the loss of previous ACK.

If a user of the WRP class 1 service requests a user ACK, the sequence of diagram looks like the figure
shown in Part II. In this case, the WTP entity does not send the ACK automatically, but waits for the TR
Invoke.res service primitive from the user. The service primitive must have the appropriate local handle
H’ identification of the for right transaction. The WTP entity can now send the ACK PDU. Typical use
for this transaction class are reliable push services.

WTP Class 2: This class of transaction service provides the classic requests / response transactions known
from many client and service scenarios. Although there are more than one scenarios that are possible, one
scenario is explained below with the diagram.
NRK\MOBILE COMPUTING\U – 5\ 13

initiator responder
TR-SAP TR-SAP
TR-Invoke.req
(SA, SP, DA, DP, A, UD, C=2, H) TR-Invoke.ind
Invoke
PDU (SA, SP, DA, DP, A, UD, C=2, H‘)
TR-Result.req
(UD*, H‘)
TR-Invoke.cnf Result
PDU
(H)
TR-Result.ind
(UD*, H)
TR-Result.res
(H)
Ack PD TR-Result.cnf
U
(H‘)

As shown above, here a user on the initiator’s side requests the service and the WTP entity sends the
invoke PDU to the responder. The WTP entity on the responders’ side indicates the request with the
TR-Invoke.ind primitive to a user. The responders now waits for the processing of the request, the user
on the responder’ side can finally give the results UD* to the WTP entity on the responder side using TR-
Result.req. The result PDU can now be sent back to the initiator, which implicitly acknowledges the
invoke PDU. The initiator can indicate the successful transmission of the invoke message and the result
with the two service primitives TR-Invoke.cnf and TR-Invoke.ind. A user may respond this result with
the TR-Result .res. An ACK PDU is then generate which finally triggers the TR-Result.cnf primitive on
the responder’s side. This example clearly shows the combination of two reliable services (TR Invoke
and TR Result) with an efficient data transmission and acknowledgement.

iv) WIRELESS SESSION PROTOCOL:


Session control is requirement while browsing a web content. This will facilitate the client (customer)
to work where they left the browser or when the network was interrupted. Contend providers (server) can
customize their pages to clients needs and do not have to retransmit the same pages over and over again.
This is called, session management. WSP does this in a limited way in wireless environment.
• WSP operates on top of the datagram service WDP or the Transaction Service WSP.
• For both types, security can be inserted using the WLTS security layer if required.
• WSP provides a shared state between a client and a server to optimize content transfer.

WSP offers following features for content exchange between cooperating client and servers.
• Establish a reliable session from client to server and release that session in orderly manner.
• Capability negotiation: Client and servers can agree upon a common level of protocol
functionality during session establishment. Example parameters are maximum client SDU size,
maximum outstanding requests, protocol options, and server SDU size etc.
• Exchange content between client and server using compact encoding
• Suspend and resume a session.
• Push content from server to client in an unsynchronized manner.
NRK\MOBILE COMPUTING\U – 5\ 14

v) WIRELESS APPLICATION ENVIRONMENT


The Wireless Application Environment (WAE) is a general-purpose application environment based on a
combination of World Wide Web (WWW) and Mobile Telephony technologies. The primary objective of
the WAE effort is to establish an interoperable environment that will allow operators and service
providers to build applications and services that can reach a wide variety of different wireless platforms in
an efficient and useful manner. WAE includes a micro-browser environment containing the following
functionality:
• Wireless Markup Language (WML) – a lightweight markup language, similar to HTML, but
optimised for use in hand-held mobile terminals;
• WMLScript – a lightweight scripting language, similar to JavaScript™;
• Wireless Telephony Application (WTA, WTAI) – telephony services and programming interfaces;
and
• Content Formats – a set of well-defined data formats, including images, phone book records and
calendar information.
Gateway Client

respons encoded WTA


web Method proxy
e respons user agent
server with e
content with
content

Push proxy WML


other content user agent
server
push encode
conten d
t push
content

encoders
& other
decoders WAE
user agents
reques encode
t d
request

WAE Logical model: In this a client issues an encoded requests for an operation on a remote server.
Encoding is necessary to minimize data sent over the air and to save resources on the hand held devices.
The decoders in the gateway now translate this encoded requests into a standard requests as can be
understood by the origin server. This could be a request to a get a web page or to set up a call for a
session etc. The gateway transfers this requests to the appropriate origin server as if it came from
standard client. Origin servers could be standard web running HTP and generating contents using
scripts, providing pages using databases, or applying any other technology. As the origin server
responds to the requests, the gateway now encodes the response and its contents and transfers the
encoded response with the content to the client. This type of request and response service is known as
pull service
The WAE includes push services. Which means that the server pushes content to the gateway.
The gateway encodes the pushed content and transmit the encoded content to the client.
NRK\MOBILE COMPUTING\U – 5\ 15

In the push service, the initiator is the server (mostly), where in the contents like stock quotes,
weather reports, traffic information, receipt of e – mail etc can be pushed to the user by this method.

WAE Client Components are shown below: Several Agents can reside within a client. User Agents
include such items as browsers, phonebooks, message editors etc. WAE assumes a basic WML user
agent that supports WML, WML supports or both. Further domain specific user agents with varying
architecture can also implemented. However, WTA (Wireless Telephone Application) User Agent has
been specified by default for its fundamental service. This agent handles access to and interaction with
mobile telephones.

WAE Other
Capabilit
User Agents WML User agent ies and
Services
WTA User Agent Other Agent

Services / formats WML Scripts URLs

WML WTA Services Other Services and Formats

WAP Protocol Stack and Services

Devices and OS Services

In order to facilitate different vendors to develop user agents, a standard has been defined called a user
profile (UA Profile), which describes the capabilities of a user agent. The capabilities that can be defined
may relate to hardware or software like, display size, operating system, browser version, processor,
memory size, audio / video codecs, or supported network types etc.

Wireless Telephony Application (WTA): WTA is a collection of telephony specific extensions for call
and feature control mechanism, merging data networks and voice networks. It integrates advanced
telephony services using a consistent user interface and allows network operators to increase accessibility
for various special services in their network. WTA enables the third-party developers as well as network
operators to create network independent content that accesses the basic features of the bearer network.
Some of the features include Content push, Access Telephony functions, Security etc

WTA Server Mobile N/w Client


WTA & WML
WML Scripts Server

WML Dccks
WML
Services
WAP Gateway WTA User A
Encoders and
Decoders

Network Operator Trusted Domain

Other Servers

Firewall

Third Party Server


Repository
NRK\MOBILE COMPUTING\U – 5\ 16

The logical architecture of the WTA is shown above. Not all the components are mandatory. A
minimal configurations could be a single server from the network operator serving all the clients. The
client is connected via the mobile network with a WTA server, other telephone networks (eg fixed and
PSTN) and a WAP gateway. A WML user agent or any other user agent runs on the client. The client
may have voice and data connection over the mobile network. Other origin servers within the trusted
domain may be connected via the WAP gateway. A firewall is useful to connect third party origin servers
outside the trusted domain.

WAP 2.0 :
IN July 2001, version two of the wireless application protocol was introduced by the WAP forum which
is the sum combination of WAP1.x, Internet protocols and many mobility specific enhancements. IN this
the browser, in addition to supporting WML, it alsoFramework
Application supports XHTML (eXtensible HTML) with
XHTMLMP (XHTML Mobile Profile). WAP 2.0 uses the composite capabilities / preference
profiles (CC/PP) framework for describing user preferences and device capabilities.

Content Format
Crypto Multimedia Messaging(E mail)
External Library
Services WEA/WTA User Push
Agent(WML,XHTMLMP)

Service Discovery Authentication Capability Negotiations


Cookies
Provisioning Session
Push OTA Synchronisation

Identification
Service Discovery

Navigation Transfer Streaming MMS


Hypermedia Transfer (WTP+WSP,HTTP)
Discovery
PKI
Connections (TCP with
Transport
Datagrams (WDP, UDP) wireless profile)
Service
LookUp
Secure
GPRS
Transport IPv4 CSD USSD
Bearer
MPAK
IPv6 SMS FLEX
Secure Bearer

Description of WAP 2.0 Architecture:


Bearer Network: Similar to WAP 1.x, a number of bearer services are supported(as shown in the
datagram) in this as well. 3rd Generation networks directly offer IP services.

Transport Services: These can be connection oriented or connectionless and provide effective isolation
of application services over different bearer services.
NRK\MOBILE COMPUTING\U – 5\ 17

Transfer Services: The transfer protocols used are HTTP (wireless profiled), combination of WSP /
WTP, streaming protocols and message transfer protocols. HTTP is used for web browsing while
streaming protocols are used to support isochronous data (audio and video). MMS (Multimedia
Messaging Service) transfers asynchronous multimedia content ( JPEG, GIF, text, Coded Audio etc).

Session Service: In order to understand the capabilities, these are shared using capability negotiations.
This includes information about client, server and proxy capabilities and allows customization of the
content. Push OTA (Over the Air Interface) offers reliable and unreliable push services. Cookies
services is introduced on client to remember multiple hypermedia transfers.

Application Framework: Basic framework comprised of browsing, email service, support for different
content formats etc. Various content format that are supported color images, audio, video, calendar
information, phone book entries etc in the form different user agent.

Security Service: Additional security services such as privacy, authentication, integrity and non-
repudiation etc are covered under this.

Service Discovery: In case of vendor applications, External functions or services can be discovered via
the External Functionality Interface (EFI) that are specified in WAP forum. For many network
services, a device needs additional parameters to get access (e.g smart card specifications, content
type information etc). The device can get these parameters via the Provisioning Service. Also
Navigation Discovery provides a secure way to discover new network services. Service Lookup
B provides for discovery of parameters needed for a certain type services with the help of directory.
Mapping of DNS to IP address is one such example.

You might also like