Upload
smith-kumar
View
212
Download
0
Embed Size (px)
Citation preview
8/22/2019 wap_intro
1/25
Intro Wireless Application
Protocol
WebTP Meeting
H. Wilson So14 Feb, 2000.
8/22/2019 wap_intro
2/25
Outline
What is Wireless Application Protocol?
Architecture Overview (layers)
Bottom up description of the stack
Relation to WebTP and differences
8/22/2019 wap_intro
3/25
What is WAP?
"WAP specifies an application frameworkand network protocols for wireless devices
such as mobile telephones, pagers, andpersonal digital assistants (PDAs)."
WAP is the mobile phone industrys
answer to interactive web applications.WAP defines its own set of protocols but
models after existing web protocols.
8/22/2019 wap_intro
4/25
WAP and the Web
GSM, CDMA, etc.
WDP
WTLSWTP
WML
WML Script
IP
UDP
TLS (from SSL)no counterpart
HTML
JavaScript
Rationale: reuse as much as possible from IP world,
but optimize for the wireless world (i.e. compression,
adapt to high-loss rate.)
8/22/2019 wap_intro
5/25
Accessing Web from Cell
Phones
8/22/2019 wap_intro
6/25
WAP Protocol Architecture
8/22/2019 wap_intro
7/25
Protocol Features
8/22/2019 wap_intro
8/25
WAP Reference Model
8/22/2019 wap_intro
9/25
1. Datagram Protocol
(WDP)
Goal: To allow transport, security, andsession protocols to operate independent
of the underlying bearer (e.g. GSM,CDMA, etc.)
To provide a UDP-like interface
8/22/2019 wap_intro
10/25
WDP Basic Features
Port Numbers: Demux lower layer packetsto different higher layers
Segmentation/Reassembly: only present ifunderlying bearer does not support italready
Details: More than you ever want to knowabout the differences between some 30kinds of cellular data network.
8/22/2019 wap_intro
11/25
WDP Summary
If bearer (e.g. GSM USSD) speaks IP,WDP equals UDP.
Otherwise, WDP adapts to the underlyingnetwork and provides Demux &Segmentation normally provided by
UDP/IP.Reliable transport builds on top of WDP,
not the underlying bearer even if bearer
speaks IP
8/22/2019 wap_intro
12/25
2. WTLS (Transport Layer
Security)
Goal: provides the upper-level layer ofWAP with a secure transport service
interface that preserves the transportservice interface (datagram) below it.
Security level of WTLS depends on the
requirements of the given application
8/22/2019 wap_intro
13/25
WTLS Handshake
8/22/2019 wap_intro
14/25
Handshake Simplified
Client says HelloServer says Hello
Server sends Public Key
Initiates key exchange
Client generates
Session Key
Server acks session
key
Encrypted Data Encrypted Data
8/22/2019 wap_intro
15/25
WTLS Summary
Very similar to SSL, but SSL is usuallyimplemented on top of TCP; WTLS
includes retransmission mechanismClient/Server can authenticate each other
(optional)
Client/Server can negotiate ciphers to beused
Client/Server can negotiate a datagram
mode that has no sequence numbers
8/22/2019 wap_intro
16/25
3. WTP (Transaction
Protocol)
Goal: A light-weight transaction protocolnecesaary for interactive "browsing"applications.
T stands for Transaction, not transport.
WTP is message-oriented protocol, notstream-based.
Each new transaction has a newTransaction ID (~ seq no.)
Provides 3 classes of service
8/22/2019 wap_intro
17/25
Class 0 (Unreliable 1-way)
Sender sends a message but does notwait for an ack
Receiver delives message to applicationw/o checking for duplicates
No acks are sent
Sample app: unreliable weather update(push)
8/22/2019 wap_intro
18/25
Class 1 (Reliable 1-way)
Sender sends a message and waits for anack (retx if necessary)
Receiver checks for duplicates beforedelivering message to application
Acks are sent and retransmitted if client
retransmits request erroneously
8/22/2019 wap_intro
19/25
Class 2 (Reliable 2-way)
Sender sends a message and waits for anack (retx if necessary)
Receiver checks for duplicates beforedelivering message to application
Ack for request is piggy-backed on top of
the reply from the server applicationClient acks the receipt of the result
8/22/2019 wap_intro
20/25
WTP Duplicate Detection
Since there is no handshake, how does itdetect duplicates?
For class 0, duplicate packets aredelivered with checking.
Server initiates handshake to verify (and
resynchronize TrasactionID if necessary)
8/22/2019 wap_intro
21/25
WTP Duplicate Detection
Client Server
Class 1, TID =1
Class 1, TID =1
TimeoutAck TID = 1
Verify TID = 1
Abort
8/22/2019 wap_intro
22/25
WTP Duplicate Detection
Client Server
Class 1, TID =1
Class 0, TID =2
Ack TID = 1
Verify TID = 1
Ok
Class 0, TID =3
Class 0, TID =N
Class 1, TID =1
8/22/2019 wap_intro
23/25
WTP: Other interesting
features
User-level acks (more precisely,application-level acks)
May do Segmentation and ReassemblyAllow multiple messages (PDUs) to be
concatenated into one SDU (link-layer
frames)Re-transmit bit to distinguish fresh vs.
retransmitted packets
8/22/2019 wap_intro
24/25
Relation to WebTP
WAP uses a transaction oriented protocol,WebTP advocates ADUs
WAP allows per PDU-level reliability oversame connection
WAP does not require handshake, WebTP
has a Fast WebTP option.Unclear: congestion / flow control in WAP
8/22/2019 wap_intro
25/25
Areas need to be improved
A tradeoff between connection setup andduplicate detection is required, but
analysis is missing.WAP often talks about keeps states for
some time but never really discuss why
their system is correct.