<<

Wireless Internet: Layers 3,4,5 Case Study: WAP Module W.int.3.WAP

Dr.M.Y.Wu@CSE Dr.W.Shu@ECE Shanghai Jiaotong University University of New Mexico Shanghai, China Albuquerque, NM, USA W.int.3-2

Wireless Internet: layers 3,4,5 ‰ Internet + wireless + mobility ‰ Mobile IP: network layer, module W.int.1 ‰ Wireless TCP: transport layer, module W.int.2 ‰ WAP: application layer ¾ Wireless Application Protocol stack ¾ WDP ¾ WTLS ¾ WTP ¾ WSP ¾ WAE ¾ WML & WML Script ‰ End

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-3

WAP: Wireless Application Protocol

‰Goals ¾Deliver Internet content and enhanced services to mobile devices and users (mobile phones, PDAs) ¾Independent on wireless network standards

‰Platforms ¾GSM (900, 1800, 1900), ¾CDMA IS-95, ¾TDMA IS-136, ¾3rd generation systems (IMT-2000, UMTS, W-CDMA, 1x EV-DO, …)

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-4

WAP: Wireless Application Protocol

‰ Forum ¾ at www.openmobilealliance.org (Open Mobile Architecture + WAP Forum + SyncML + …)

‰ What special about mobile devices? ¾ Small displays, small memory capacity ¾ No so powerful CPUs, limited network bandwidth ¾ Relative high latency, unreliable connection ¾ High mobility ‰ WAP-enabled devices, need I/O! ¾ Micro-browser, output, for information viewing ¾ Data input, e.g., number buttons or mini keyboard

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-5

WAP: Wireless Application Protocol

‰ providing mobile users of wireless terminals access to telephony and information services ¾Wireless terminals include ™ Wireless phones, pagers, personal digital assistants (PDAs) ¾Designed to work with all wireless network technologies ™ GSM, CDMA, and TDMA ¾Based on existing Internet standards ™ IP, XML, HTML, and HTTP ¾Includes security facilities

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-6

WAP: scope of standardization

‰Browser ¾“micro browser”, similar to existing, well-known browsers in the Internet ‰Script language ¾similar to Java script, adapted to the mobile environment ‰WTA(I) ¾Wireless Telephony Application (Interface): access to all telephone functions ‰Content formats ¾e.g., business cards (vCard), calendar events (vCalender) ‰Protocol layers ¾transport layer, security layer, session layer etc.

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-7 WAP: protocol stack

Application Presentation Session

Transport

Network,UDP

PHY & MAC

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-8 WAP: programming model

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-9

WDP: Wireless Datagram Protocol

‰ Protocol of the network/transport layer within the WAP architecture ¾uses directly transports mechanisms of different network technologies ¾offers a common interface for higher layer protocols ¾allows for transparent communication using different transport technologies ™ GSM [SMS, CSD, USSD, GPRS, ...], ™ IS-136, TETRA, DECT, PHS, IS-95, ... ‰ Goals of WDP ¾a worldwide interoperable transport system

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-10

WDP: Wireless Datagram Protocol

‰ WDP hides details of the various bearer networks from the other layers of WAP

‰ Similar services as UDP

‰ Adaptation to high-layer WAP protocols ¾ Partitioning data into segments of appropriate size for the bearer ¾ Interfacing with the bearer network ‰ Format ¾ Source/destination addresses, port numbers ¾ Payload: user data

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-11

WDP: Wireless Datagram Protocol

‰ WCMP (Wireless Control Message Protocol) ¾ Performs the same support function for WDP as ICMP does for IP ¾ Used in environments that don’t provide IP bearer and don’t lend themselves to the use of ICMP ¾ Used by wireless nodes and WAP gateways to report/control errors encountered in processing WDP datagrams ¾ Can also be used for informational and diagnostic purposes

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-12

WDP: how to use it?

Wireless Data Gateway WTLSWTLS WTLSWTLS WDPWDP && WDPWDP && AdaptationAdaptation AdaptationAdaptation SMSSMS SMSSMS TunnelTunnel TunnelTunnel

GSM-SMS SubnetworkSubnetwork SubnetworkSubnetwork

WAP Proxy

WTLS WTLS WTLS Internet Service Provider WTLS UDPUDP Remote Access Service UDPUDP IPIP Interworking IPIP IPIP Function GSM-CSD PPPPPP PPPPPP Subnetwork Subnetwork PSTNPSTN PSTNPSTN Subnetwork Subnetwork CSD-RFCSD-RF CSD-RFCSD-RF CircuitCircuit CircuitCircuit

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-13

WTLS: Wireless Transport Layer Security

‰ Security services ¾ Provided between WAP-enabled device and a WAP gateway ‰ Security features ¾ Data integrity ™ ensures that data sent between client and gateway are not modified ™ using message authentication ¾ Privacy ™ ensures that the data cannot be read by a third party ™ using encryption ¾ Authentication ™ establishes authentication of the two parties ™ using digital certificates ¾ Denial-of-service protection ™ detects and rejects messages that are replayed or not successfully verified

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-14

WTLS: protocol stack

‰ WTLS consists of two layers of protocols 1. WTLS Record Protocol ™ provides basic security services to various higher-layer protocols 2. Higher-layer protocols: ™ the Handshake Protocol ™ the Change Cipher Spec Protocol ™ the Alert Protocol

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-15 WTLS: protocol stack

‰ Record protocol operation

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-16 WTLS: protocol stack

‰Handshake Protocol Exchange ¾1st phase ™ used to initiate a logical connection and establish security capabilities ¾2nd phase ™ used for server authentication and key exchange ¾3rd phase ™ used for client authentication and key exchange ¾4th phase ™ completes the setting up of a secure connection

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-17

WTP: Wireless Transaction Protocol

‰ Lightweight protocol ¾ suitable for "thin" clients and over low-bandwidth wireless links ¾ A transaction is defined as a request with its response ‰ Three classes of transaction service ¾ Class 0: Unreliable one-way request, no retransmission ¾ Class 1: Reliable one-way request, resend if ACK not received ¾ Class 2: Reliable two-way request-response message ‰ WTP features ¾ Optional user-to-user reliability: WTP user triggers confirmation of each received message ¾ Optional out-of-band data on acknowledgments ¾ PDU concatenation and delayed acknowledgment to reduce the number of messages sent ¾ Asynchronous transactions

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-18

WSP: Wireless Session Protocol

‰Transaction-oriented protocol ¾ based on the concept of a request and a reply

‰Provides applications with interface for two session services: 1. Connection-oriented session service ™ operates above reliable transport protocol WTP 2. Connectionless session service ™ operates above unreliable transport protocol WDP

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-19

WSP: Wireless Session Protocol

1. Connection-oriented session service ¾ Operates above reliable transport protocol WTP ¾ Establish reliable session from client to server and release ¾ Agree on common level of protocol functionality using capability negotiation ¾ Exchange content between client and server using compact encoding ¾ Suspend and resume a session ¾ Push content from server to client in a unsynchronized manner

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-20

WSP: Wireless Session Protocol

‰WSP transaction types ¾Session establishment ™ client WSP user requests session with server WSP user ¾Session termination ™ client WSP user initiates termination ¾Session suspend and resume ™ initiated with suspend and resume requests ¾Transaction ™ exchange of data between a client and server ¾Nonconfirmed data push ™ used to send unsolicited information from server to client ¾Confirmed data push ™ server receives delivery confirmation from client

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-21

WAE: Wireless Application Environment

‰ WAE specifies an application framework for wireless devices

‰ WAE elements: ¾WAE User agents – that executes in the wireless device ¾Content generators – applications that produce standard content formats in response to requests from user agents in the mobile terminal ¾Standard content encoding – defined to allow a WAE user agent to navigate Web content ¾Wireless telephony applications (WTA) ™ collection of telephony-specific extensions for call and feature control mechanisms

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-22

WAE: client components

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-23

WML:

‰ Text and image support – formatting and layout commands ‰ A WML document consists of multiple cards ¾ Each card represents a screen of information ‰ Cards can be grouped together in a deck ¾ A WML deck is similar to an HTML page

‰ Deck/card organizational metaphor ¾ WML documents subdivided into cards, which specify one or more units of interaction ¾ Support for navigation among cards and decks ™ includes provisions for event handling; ™ used for navigation or executing scripts

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-24 WML Script

‰ A complement to WML ¾ Scripting language for defining script-type programs ¾ in a user device with limited processing power and memory ‰ WMLScript capabilities: ¾ Check validity of user input before it’s sent ¾ Access device facilities and peripherals ¾ Interact with user without introducing round trips to origin server ‰ WMLScript features: ¾ JavaScript-based scripting language ¾ Procedural logic, event-based ¾ Compiled implementation ¾ Integrated into WAE

@ by Dr.Shu@UNM & Dr.Wu@SJTU W.int.3-25

Wireless Internet: layers 3,4,5 ‰ Internet + wireless + mobility ‰ Mobile IP: network layer, module W.int.1 ‰ Wireless TCP: transport layer, module W.int.2 ‰ WAP: application layer ¾ Wireless Application Protocol stack ¾ WDP ¾ WTLS ¾ WTP ¾ WSP ¾ WAE ¾ WML & WML Script ‰ End

@ by Dr.Shu@UNM & Dr.Wu@SJTU