Wireless Application Protocol-2

  • Upload
    shyas22

  • View
    218

  • Download
    0

Embed Size (px)

Citation preview

  • 8/8/2019 Wireless Application Protocol-2

    1/17

    NRK\MOBILE COMPUTING\U 5\

    TRADINTIONAL TCP

    In this unit, difficulties involved in providing Internet support browsing, email etc - to themobile 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 mobileapplications.

    Based on unique problems associated with the mobile nodes, a set of solutions have beendeveloped. 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) areestablished, the hardware and software become matured and they are not likely to drop packetsor 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 acongestion 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 thelost packets, each of them assume congestion in the network. As sending the data at full rate isunwise, 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. Inthis once, congestion is indicated, the sender reverts to slow start mechanism. It works asfollows:

    The sender starts sending one packet and waits for its response. The waiting period isequal 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, themessage size increases exponentially. Once it is reached, the increment changes to linear. Hereagain, increment is not for ever. Now whenever time out occurs due to missing ACKs, thethreshold 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 bedue to two reasons. One is occasional loss due to error. Other may be due to congestion. In caseof 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 thesame. 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 timewhich is much more than RTT, it reverts to slow start mechanism which is called fastrecovery .

    1

  • 8/8/2019 Wireless Application Protocol-2

    2/17

    NRK\MOBILE COMPUTING\U 5\

    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 startmechanism may be initiated for wrong reasons. Missing ACK in case of mobile nodes is very commonwhich 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 alwayscompensated 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 agentwhile the nodes move to the new foreign agent. This loss is nothing to do with wireless access but it is arerouting problem.

    As already brought out, receipt of the three or more ACK for the same packet is identified as lossof 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 theinter globe. Hence new methods were devised that are discussed below:

    Classical TCPi) Indirect TCP (I-TCP):This method has been developed based on two premises.

    1. TCP performs poorly together with wireless links2. 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, itis 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 TCPconnection separation at a special server at the entry point to a mobile network (eg IWF - Inter WorkingFunction in GSM, GGSN in GPRS etc)

    The foreign acts as proxy and relays all data in both directions. What is important to note in thiscase 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 noticethis 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 foreignagent, if it is lost, the mobile nodes identifies this much faster as the RTT upto proxy is very muchsmaller 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 andthe data are cached. This data is rerouted to new access point along with the current TCP state such assequence number, address, ports etc.

    There are several advantages of this methods . these are :

    2

  • 8/8/2019 Wireless Application Protocol-2

    3/17

    NRK\MOBILE COMPUTING\U 5\

    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 informationregarding 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, theforeign 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 additionallysnoops the packet flow in both directions to recognize acknowledgements. Buffering enables the foreignagent to perform local retransmission in case of packet loss on the wireless link. IF the FA does notreceive ACK within a certain amount of time, either the packet or ACK is lost. Also, FA agent couldreeive a duplicate ACK (similar to TCP) which alsl shows the loss of a packet. Now the FA directlyretransmits 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 thisend, the ACK is not done by the FA. It only forwards the same in either direction. However, the FA canfilter 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. Themobile 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 retransmissiontimer that doubles with each unsuccessful retransmission attempt, upto a maximum of one minute. Thismeans that the sender tries to retransmit an unacknowledged packet every one minute and will give upafter 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 standardhost Supervisory host (SH) connection while an optimized TCP is used on the SHJ-MH connectionThe SH is responsible for exchanging data between both parts similar to the proxy in I-TCPAs it assumeslow bit rate error it does not perform caching and retransmission of data via SH> If a packet is lost onthe 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 notreceive an ACK for some time, it assumes that the MH is disconnected. It then chokes the sender bysetting the senders window size to 0. Setting the window size to 0 forces the sender to go into persistent

    3

  • 8/8/2019 Wireless Application Protocol-2

    4/17

    NRK\MOBILE COMPUTING\U 5\

    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, itopens the window of the sender to the old value. The sender can continue sending at full speed. Thismechanism does not required changes to the senders 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 windows 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, thesender moves on to slow start mechanism assuming congestion. This can be avoided by simulating thefast 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 beforeMH 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 toMH.v) Transmission / Timeout Freezing:

    Normally when the connection is lost, in case of normal TCP, after a time out period, adisconnection 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 actuallyinterrupted from a TCP point of view. IN addition, MAC layer knows the real reason for the interruptionand 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 TCPcan now stop sending and freezes the current state of its congestion window and further timers till onceagain 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.

    4

  • 8/8/2019 Wireless Application Protocol-2

    5/17

    NRK\MOBILE COMPUTING\U 5\

    ii) Freezing the TCP may not work well with some of the TCP mechanism that encryptionwhich 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 smethod, TCP can indirectly request a selective retransmission of packets. The receiver can acknowledgesingle 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 bandwidthrequirement. 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 DisadvantagesIndirect TCP Splits TCP

    connection into twoconnections

    Isolation of wireless link,simple.

    Loss of TCP semantics. Higher latency at handover, security

    problems.Snooping TCP Snoops data and

    acknowledgements,local retransmission

    Transparent for end toend connection, MACintegration possible

    Insufficient isolation of wireless link,security problems

    M-TCP Splits TCPconnection, chokessender via windowsize

    Maintains end to endsemantics, handles longterm and frequentdisconnections

    Bad isolation of wireless link, processing overhead due to bandwidth management, security problems

    FastRetransmission/ FastRecovery

    Avoids slow start ateroaming

    Simple and efficient Mixed layers, not transparent.

    Transmission /Time outfreezing

    Freezes TCP state atdisconnection,resumes after reconnection

    Independent of content,works for longer interruptions

    Changes in TCP required, MACdependent

    Selectiveretransmission

    Retransmits only lostdata.

    Very efficient Slightly more complex receiver software, more buffer space needed

    Transactionoriented TCP

    Combines connectionsetup-/ release anddata retransmission

    Efficient for certainapplications

    Changes in TCP required nottransparent, security problems.

    5

  • 8/8/2019 Wireless Application Protocol-2

    6/17

    NRK\MOBILE COMPUTING\U 5\

    WIRELESS APPLICATION ENVIRONEMNT

    The purpose of the WAE is to create a general purpose application environment based mainly onexisting 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 :

    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

    MicroBrowser (WML,WMLScript, WTA,WTAI)

    Runs on top of WDPProvided lightweight X-oriented serviceUnreliable 1-way requestReliable 1-way/2-way

    req./response

    Lightweight SSLUses WIM/PKI-Cards

    Datagram service ondifferent bearersConvergence betweenbearer services

    Different Wireless Tech.

    6

  • 8/8/2019 Wireless Application Protocol-2

    7/17

    NRK\MOBILE COMPUTING\U 5\

    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 fromWML/WMLScript)Proxy (Method/Push)

    WAP architecture is shown below.

    KeyComponents

    Origin/Web ServerWAP Gateway/ProxyWAP Protocol StackMicro BrowserWML/WML ScriptTranscodersWTA

    7

  • 8/8/2019 Wireless Application Protocol-2

    8/17

    NRK\MOBILE COMPUTING\U 5\

    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 tothe web server. The proxy also encodes the responses from the web server into the compact binary formatunderstood by the client. If the web server provides WAP content (e.g., WML), the WAP proxy retrievesit directly from the web server. However, if the web server provides WWW content (such as HTML), afilter 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 providers telecommunications infrastructure .

    WAP ARCHITECTURE

    Above figures illustrate the variants that are possible if the WAP gateway is integrated or co locatedwith 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).

    8

    CLIENTWML

    WMLSCRIPT

    WTAI

    W A P GATEWAY

    WMLENCODER

    WML

    SCRIPTCOMPILER

    PRPTOCOLADAPTER

    WEB SERVER

    JAVASCRIPT

    ETC

    CONTENT

    WMLDECSKWITH

    WMLSCRIPTS

    WSP/WTPHTTP

    CLIENTWML

    WML

    SCRIPT

    WTAI

    WEB SERVER

    JAVASCRIPTETC

    CONTENT

    WMLDECSKWITH

    WMLSCRIPTS

    WMLENCODER

    WMLSCRIPTCOMPILER

    PRPTOCOLADAPTER

    WSP/WTP

  • 8/8/2019 Wireless Application Protocol-2

    9/17

    NRK\MOBILE COMPUTING\U 5\

    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 thedestination. 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 receptionof 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 islistening, then the WCMP (wireless control message protocol), provides the error messages similar toICMP 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, SPand the originator proposes KES (Key Exchange Suite ), CS (Cipher Suite), CM (CompressionMethod (optional)). The peer answers with parameters for the Sequence Number Mode (SNM), theKey Refresh ( how often the keys are refreshed) and Session Identifier (SID) ( which is unique to each

    peer) and the selected KES, CS and CM.

    T-SAP T-SAPT-DUnitdata.req(DA, DP, SA, SP, UD) T-DUnitdata.ind

    (SA, SP, UD)

    T-DUnitdata.req(DA, DP, SA, SP, UD)

    T-DError.ind(EC) SAP: Service Access PointDA: Destination Address

    DP: Destination PortSA: Source AddressSP: Source PortUD: User DataEC: Error Code

    9

  • 8/8/2019 Wireless Application Protocol-2

    10/17

    NRK\MOBILE COMPUTING\U 5\

    KES: Key Exchange Suite; CS: Cipher Suite ; CM: Compression Mode ; SNM: Sequence NumberMode; 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 publickey authentication with the client, i.e the peer request the Client Certificate (CC) from theoriginator. 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 tothe originator.

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

    iii) WIRELESS TRANSACTION PROTOCOL:

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

    SEC-Create.ind

    (SA, SP, DA, DP, KES, CS, CM)

    originator SEC-SAP

    peer SEC-SAP

    SEC-Create.cnf (SNM, KR, SID, KES, CS, CM)

    SEC-Create.res(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.ind

    SEC-Commit.cnf

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

    sender SEC-SAP

    receiver SEC-SAP

    10

  • 8/8/2019 Wireless Application Protocol-2

    11/17

    NRK\MOBILE COMPUTING\U 5\

    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 andusing 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 onewho 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 automatedacknowledgement by the WTP entity.

    WTP Class 0: This class refers an unreliable service without a result message. The transactions isstateless and cannot be aborted. The primitives transacted are shown below:

    The parameters for TR-Invoke.req are SA, SP, DA, DP, A, UD, C=0, H. In this A flag is used by theinitiator 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 issocket 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 typeservice is required.

    WTP Class 1: This class offers a reliable transaction service but without a result message Here again theinitiator sends an invoke primitive with class value C = 1 and with no user ACK However, with C=1, theresponder (WTP layer) automatically responds with an ACK as shown below in part I

    TR-Invoke.req(SA, SP, DA, DP, A, UD, C=0, H)

    I n v o k e P D U TR-Invoke.ind(SA, SP, DA, DP, A, UD, C=0, H)

    initiator TR-SAP

    responder TR-SAP

    A: Acknowledgement Type

    (WTP/User)C: Class (0,1,2)H: Handle (socket alias)

    11

  • 8/8/2019 Wireless Application Protocol-2

    12/17

    NRK\MOBILE COMPUTING\U 5\

    IN this case, the transaction ends with the initiator receiving the ACK. However, the responder keeps thetransaction state for some time to be able to retransmit the ACK if it receives the same PDU again whichindicates 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 figureshown 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 handleH identification of the for right transaction. The WTP entity can now send the ACK PDU. Typical usefor this transaction class are reliable push services.

    WTP Class 2: This class of transaction service provides the classic requests / response transactions knownfrom many client and service scenarios. Although there are more than one scenarios that are possible, onescenario is explained below with the diagram.

    TR-Invoke.req(SA, SP, DA, DP, A, UD, C=1, H) I n v o k e P D U

    TR-Invoke.ind(SA, SP, DA, DP, A, UD, C=1, H)

    initiator TR-SAP

    responder TR-SAP

    A c k P D U

    TR-Invoke.res(H)

    TR-Invoke.cnf (H)

    TR-Invoke.req(SA, SP, DA, DP, A, UD, C=1, H)

    I n v o k e P D U TR-Invoke.ind(SA, SP, DA, DP, A, UD, C=1, H)

    initiator TR-SAP

    responder TR-SAP

    A c k P D UTR-Invoke.cnf

    (H)

    Part II

    Part I

    12

  • 8/8/2019 Wireless Application Protocol-2

    13/17

    NRK\MOBILE COMPUTING\U 5\

    As shown above, here a user on the initiators side requests the service and the WTP entity sends theinvoke PDU to the responder. The WTP entity on the responders side indicates the request with theTR-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 theinvoke PDU. The initiator can indicate the successful transmission of the invoke message and the resultwith 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 onthe responders side. This example clearly shows the combination of two reliable services (TR Invokeand 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) cancustomize 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.

    TR-Invoke.req(SA, SP, DA, DP, A, UD, C=2, H) I n v o k e P D U

    TR-Invoke.ind

    (SA, SP, DA, DP, A, UD, C=2, H)

    initiator TR-SAP

    responder TR-SAP

    R e s u l t P D U

    TR-Result.req(UD*, H)

    TR-Result.ind(UD*, H)

    Ac k P D U

    TR-Invoke.cnf (H)

    TR-Result.res(H)

    TR-Result.cnf (H)

    13

  • 8/8/2019 Wireless Application Protocol-2

    14/17

    NRK\MOBILE COMPUTING\U 5\

    v) WIRELESS APPLICATION ENVIRONMENTThe Wireless Application Environment (WAE) is a general-purpose application environment based on acombination 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 inan 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, butoptimised 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 andcalendar information.

    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 beunderstood by the origin server. This could be a request to a get a web page or to set up a call for asession etc. The gateway transfers this requests to the appropriate origin server as if it came fromstandard client. Origin servers could be standard web running HTP and generating contents usingscripts, 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 theencoded response with the content to the client. This type of request and response service is known as

    pull serviceThe 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.

    14

    webserver

    other contentserver

    Gateway Client

    other WAE

    user agents

    WMLuser agent

    WTAuser agent

    Push proxy

    encodedrequest

    request

    encodedresponsewithcontent

    responsewithcontent

    pushcontent

    encodedpushcontent

    Method proxy

    encoders&

    decoders

  • 8/8/2019 Wireless Application Protocol-2

    15/17

    NRK\MOBILE COMPUTING\U 5\

    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 Agentsinclude 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 withmobile telephones.

    In order to facilitate different vendors to develop user agents, a standard has been defined called a userprofile (UA Profile), which describes the capabilities of a user agent. The capabilities that can be definedmay 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 calland feature control mechanism, merging data networks and voice networks. It integrates advancedtelephony services using a consistent user interface and allows network operators to increase accessibilityfor 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

    15

    WAE

    User Agents

    WTA User Agent

    WML User agent

    Other Agent

    Services / formats

    WML

    WML Scripts

    WTA Services

    URLs

    Other Services and Formats

    WAP Protocol Stack and Services

    Devices and OS Services

    Other Capabilities and

    Services

    Network Operator Trusted Domain

    WTA Server

    WML ScriptsWTA & WMLServer

    WML DccksWMLServices

    WAP Gateway

    Encoders andDecoders

    Other Servers

    Firewall

    Third Party Server

    Client

    WTA

    Repository

    Mobile N/w

  • 8/8/2019 Wireless Application Protocol-2

    16/17

    NRK\MOBILE COMPUTING\U 5\

    The logical architecture of the WTA is shown above. Not all the components are mandatory. Aminimal configurations could be a single server from the network operator serving all the clients. Theclient is connected via the mobile network with a WTA server, other telephone networks (eg fixed andPSTN) and a WAP gateway. A WML user agent or any other user agent runs on the client. The clientmay have voice and data connection over the mobile network. Other origin servers within the trusteddomain may be connected via the WAP gateway. A firewall is useful to connect third party origin serversoutside 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 thisthe browser, in addition to supporting WML, it also supports XHTML (eXtensible HTML) withXHTMLMP (XHTML Mobile Profile). WAP 2.0 uses the composite capabilities / preferenceprofiles (CC/PP) framework for describing user preferences and device capabilities.

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

    Transport Services : These can be connection oriented or connectionless and provide effective isolationof application services over different bearer services.

    Service Discovery

    Service Discovery

    Application Framework

    Session

    Transfer

    Transport

    Bearer

    ExternalServices

    Provisioning

    NavigationDiscovery

    ServiceLookUp

    SecureTransport

    Secure Bearer

    Multimedia Messaging(E mail)

    WEA/WTA User Agent(WML,XHTMLMP)

    Content Format

    Push

    Capability Negotiations

    Push OTA SynchronisationCookies

    Hypermedia Transfer (WTP+WSP,HTTP)Streaming MMS

    Datagrams (WDP, UDP)Connections (TCP withwireless profile)

    CSD USSDGPRS

    IPv6 SMS FLEXMPAK

    CryptoLibrary

    Authentication

    Identification

    PKI

    IPv4

    16

  • 8/8/2019 Wireless Application Protocol-2

    17/17

    NRK\MOBILE COMPUTING\U 5\

    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 whilestreaming protocols are used to support isochronous data (audio and video). MMS (MultimediaMessaging 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 thecontent. Push OTA (Over the Air Interface) offers reliable and unreliable push services. Cookiesservices is introduced on client to remember multiple hypermedia transfers.

    Application Framework: Basic framework comprised of browsing, email service, support for differentcontent 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 viathe 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, contenttype information etc). The device can get these parameters via the Provisioning Service. AlsoNavigation 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.

    17