* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download World Wide WAP - Information Systems and Internet Security
Server Message Block wikipedia , lookup
Dynamic Host Configuration Protocol wikipedia , lookup
Extensible Authentication Protocol wikipedia , lookup
Wireless USB wikipedia , lookup
Zero-configuration networking wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Policies promoting wireless broadband in the United States wikipedia , lookup
Internet protocol suite wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Wireless security wikipedia , lookup
Real-Time Messaging Protocol wikipedia , lookup
Wireless Application Protocol Kulesh Shanmugasundaram [email protected] Introduction History of WAP Ericsson develop ITTP for VAS - 1995 Unwired Planet develop HDML, HDTP - 1996 Nokia develop Smart Messaging, TTML – 1997 WAP Forum formed in June 1997 Table of Contents 5/25/2017 Architecture Protocol Stack Development Future of WAP Kulesh Shanmugasundaram 2 Architecture of WAP WAP!! WAP! Encoded Request HTTP Request Encoders & Decoders User Agent Encoded Response Clients (handheld device) 5/25/2017 CGI Scripts HTTP Response Gateway (WAP Server) Kulesh Shanmugasundaram content Server (Web Server) 3 Architecture of WAP WTA Server Web Server W M L L M HT Wireless Netw ork WML M W L WAP Server HTML-WML Filters 5/25/2017 Kulesh Shanmugasundaram 4 Architecture of WAP Internet / Intranet Etc. WAP Service Provider Network WAP Server Wireless Netw ork ISDN/PRI RADIUS 5/25/2017 Remote Access Server Mobile Sw itching Center Kulesh Shanmugasundaram 5 Limits… Limited CPU, Memory I’m Popular! Limited Bandwidth Limited Display Limited Keyboard 5/25/2017 Kulesh Shanmugasundaram 6 WAP Protocol Stack Application Layer (WAE) Session Layer (WSP) Other Services & Applications Transaction Layer (WTP) Security Layer (WTLS) Transport Layer (WDP) Bearers: GSM CDMA 5/25/2017 CDPD IS-136 Kulesh Shanmugasundaram iDEN 7 WAP Protocol Stack Makes applications independent of bearers and other hardware External applications and services may access the layers directly Modified to allow for 5/25/2017 Lower Bandwidth (9.6kbps – 14.4kbps) Network latency (6 – 10 seconds on SMS) Unreliable connections Kulesh Shanmugasundaram 8 Wireless Application Environment (WAE) A micro-browser environment containing Addressing Model (URL, URI) Wireless Markup Language (WML) WMLScript Content Formats – WBMP, vCard, vCalendar WTA User Agent 5/25/2017 Handles wireless devices telephony functions Kulesh Shanmugasundaram 9 Wireless Session Protocol (WSP) A strip down version of HTTP/1.1 (“B”) 5/25/2017 Maintain session states Session suspend, resume (long-lived sessions) Facilitate reliable & unreliable data push Protocol feature negotiation Header caching Kulesh Shanmugasundaram 10 Wireless Transaction Protocol (WTP) Three types of transactions Unreliable one-way requests (class 0) Reliable one-way requests (class 1) Reliable two-way request-reply (class 2) Reliability thru [selective] retransmission & delayed acks PDU concatenation Asynchronous transactions 5/25/2017 Kulesh Shanmugasundaram 11 Wireless Transport Layer Security (WTLS) WTLS is an optional layer Privacy thru encryption Data integrity thru MACs Authentication & nonrepudiation thru digital certificates Compression Elliptic Curve Cryptography (ECC) http://www.certicom.com/ 5/25/2017 Kulesh Shanmugasundaram 12 Wireless Datagram Protocol (WDP) Offers consistent services to upper layers and communicate transparently over one of the available bearer services. Global interoperability can be achieved using mediating gateways. IP & IPLess bearers Use UDP for IP bearers (eg. CSD) Follow WAP Specs for others (GSM) Error handling done by WCMP 5/25/2017 Kulesh Shanmugasundaram 13 How limits are handled Low bandwidth High latency WML contents are encoded WSP supports long-lived sessions WTP designed to minimize number of transactions Asynchronous request/response model Client side programming using WMLScript WTA repositories Unreliable connection 5/25/2017 WSP supports long-lived sessions to resume efficiently Selective retransmission of segments by WTP Kulesh Shanmugasundaram 14 How limits are handled (cont…) Small Display Limited input facilities Decks and card makes inter-page navigation easier Limited memory & CPU Decks and card interface Binary encoding of WML contents saves memory Limited set of functionality of WMLScript & libraries Limited battery power 5/25/2017 Minimizing bandwidth needs Kulesh Shanmugasundaram 15 What is in a client? WML WMLScript A lightweight markup language, similar to HTML but optimized for hand-held devices Similar to ECMA Script, enhanced with libraries Micro-browser WTA Libraries 5/25/2017 Kulesh Shanmugasundaram 16 What is in a WAP Server? SNMP Java M A N A G E M E N T 5/25/2017 Logging Billing Data Sub. DB Subscriber Data Encoders Context Manager Server Applications WSP WTP HTTP WTLS WDP/Adaptation TCP/IP Bearers Internet/FW Kulesh Shanmugasundaram 17 What is in a WAP Server? WAP Server bridges the mobile handheld device and rest of the world Usually it is the homepage of the browser in a handheld device WML/HTML Filters Two types of deployment strategies can be used (figures) 5/25/2017 Kulesh Shanmugasundaram 18 What does the web server do? Nothing unusual How to make your web server serve WAP contents. Define these MIME types Document type MIME type Plain WML documents text/vnd.wap.wml Wireless Bitmap Images image/vnd.wap.wbmp Compiled WML documentsapplication/vnd.wap.wmlc WMLScripts text/vnd.wap.wmlscript Compiled WML Scripts application/vnd.wap.wmlscriptc Typical extension .wml .wbmp .wmlc .wmls .wmlsc You are ready to serve WAP contents! 5/25/2017 Kulesh Shanmugasundaram 19 WAP Development Development on the client side: 5/25/2017 Limited memory, limited display, limited power, limited everything… Most programming is done with WML, WMLScript, WTAI Some in ANSI C A Sample code Kulesh Shanmugasundaram 20 WML: “Howdy World!” <?xml version=“1.0”?> <!DOCTYPE WML PUBLIC “-//WAPFORUM//DTD WML 1.1//EN” http://www.wapforum.org/DTD/wml_1.1.xml> <wml> <card> <p> Howdy World! </p> </card> </wml> 5/25/2017 Kulesh Shanmugasundaram 21 WAP Development Development on server side: 5/25/2017 Most of the development is done at WAP Server Vendor dependent development tools Java Servlets, C/C++ & PERL Usually APIs are provided Network operator may develop VAS on WTA Server Kulesh Shanmugasundaram 22 WAP Development What can we develop? 5/25/2017 Tetris, yay! Push technology at its best Access to your intranet Advanced telephony features using WTA Remotely control your house (MultiSens) Anything you wish! Kulesh Shanmugasundaram 23 Future of WAP Internet on a cell-phone Speech API Vendor independent telephony services Streaming media Multicasting Downloadable applications 5/25/2017 Kulesh Shanmugasundaram 24 Resources http://www.wapforum.com http://www.phone.com Nokia WAP Developer Forum http://www.forum.nokia.com/developers/wap/ The Independent WAP/WML FAQ http://wap.colorline.no/wap-faq/ Yahoo! http://search.yahoo.com/bin/search?p=WAP WAP Portal http://www.wapdrive.net/ 5/25/2017 Kulesh Shanmugasundaram 25 The End The End 5/25/2017 Kulesh Shanmugasundaram 26