Intro Wireless Application Protocol Web TP Meeting H
Intro Wireless Application Protocol Web. TP Meeting H. Wilson So 14 Feb, 2000.
Outline z. What is Wireless Application Protocol? z. Architecture Overview (layers) z. Bottom up description of the stack z. Relation to Web. TP and differences
What is WAP? z"WAP specifies an application framework and network protocols for wireless devices such as mobile telephones, pagers, and personal digital assistants (PDAs). " z. WAP is the mobile phone industry’s answer to interactive web applications. z. WAP defines its own set of protocols but models after existing web protocols.
WAP and the Web z GSM, CDMA, etc. z WDP z WTLS z WTP z WML Script z IP z UDP z TLS (from SSL) z no counterpart z HTML z Java. Script Rationale: reuse as much as possible from IP world, but optimize for the wireless world (i. e. compression, adapt to high-loss rate. )
Accessing Web from Cell Phones
WAP Protocol Architecture
Protocol Features
WAP Reference Model
1. Datagram Protocol (WDP) z. Goal: To allow transport, security, and session protocols to operate independent of the underlying bearer (e. g. GSM, CDMA, etc. ) z. To provide a UDP-like interface
WDP Basic Features z. Port Numbers: Demux lower layer packets to different higher layers z. Segmentation/Reassembly: only present if underlying bearer does not support it already z. Details: More than you ever want to know about the differences between some 30 kinds of cellular data network.
WDP Summary z. If bearer (e. g. GSM USSD) speaks IP, WDP equals UDP. z. Otherwise, WDP adapts to the underlying network and provides Demux & Segmentation normally provided by UDP/IP. z. Reliable transport builds on top of WDP, not the underlying bearer even if bearer speaks IP
2. WTLS (Transport Layer Security) z. Goal: provides the upper-level layer of WAP with a secure transport service interface that preserves the transport service interface (datagram) below it. z. Security level of WTLS depends on the requirements of the given application
WTLS Handshake
Handshake Simplified Client says Hello Server sends Public Key Initiates key exchange Client generates Session Key Server acks session key Encrypted Data
WTLS Summary z. Very similar to SSL, but SSL is usually implemented on top of TCP; WTLS includes retransmission mechanism z. Client/Server can authenticate each other (optional) z. Client/Server can negotiate ciphers to be used z. Client/Server can negotiate a “datagram mode” that has no sequence numbers
3. WTP (Transaction Protocol) z. Goal: A light-weight transaction protocol necesaary for interactive "browsing" applications. z. T stands for Transaction, not transport. z. WTP is message-oriented protocol, not stream-based. z. Each new transaction has a new Transaction ID (~ seq no. ) z. Provides 3 classes of service
Class 0 (Unreliable 1 -way) z. Sender sends a message but does not wait for an ack z. Receiver delives message to application w/o checking for duplicates z. No acks are sent z. Sample app: unreliable weather update (push)
Class 1 (Reliable 1 -way) z. Sender sends a message and waits for an ack (retx if necessary) z. Receiver checks for duplicates before delivering message to application z. Acks are sent and retransmitted if client retransmits request erroneously
Class 2 (Reliable 2 -way) z. Sender sends a message and waits for an ack (retx if necessary) z. Receiver checks for duplicates before delivering message to application z. Ack for request is piggy-backed on top of the reply from the server application z. Client acks the receipt of the result
WTP Duplicate Detection z. Since there is no handshake, how does it detect duplicates? z. For class 0, duplicate packets are delivered with checking. z. Server initiates handshake to verify (and resynchronize Trasaction. ID if necessary)
WTP Duplicate Detection Client Class 1, TID =1 Timeout Server Ack TID = 1 Class 1, TID =1 Verify TID = 1 Abort
WTP Duplicate Detection Client Class 1, TID =1 Server Ack TID = 1 Class 0, TID =2 Class 0, TID =3 Class 0, TID =N Class 1, TID =1 Ok Verify TID = 1
WTP: Other interesting features z. User-level acks (more precisely, application-level acks) z. May do Segmentation and Reassembly z. Allow multiple messages (PDUs) to be concatenated into one SDU (link-layer frames) z. Re-transmit bit to distinguish fresh vs. retransmitted packets
Relation to Web. TP z. WAP uses a transaction oriented protocol, Web. TP advocates ADUs z. WAP allows per PDU-level reliability over same connection z. WAP does not require handshake, Web. TP has a Fast Web. TP option. z. Unclear: congestion / flow control in WAP
Areas need to be improved z. A tradeoff between connection setup and duplicate detection is required, but analysis is missing. z. WAP often talks about “keeps states for some time” but never really discuss why their system is correct.
- Slides: 25