Developing Mobile Applications

Similar documents
Outline. CS5984 Mobile Computing HTTP. HTTP (especially 1.0) Problems 1/2. Dr. Ayman Abdel-Hamid, CS5984. Wireless Web.

Wireless Internet: layers 3,4,5. Wireless Internet: Layers 3,4,5 Case Study: WAP. WAP: Wireless Application Protocol

WAP Push Message Version 16-August-1999

WAP. Bringing the internet to you. Cynthia Luk Marianne Morris Harvey Wong. 4 April, 2002 CMPUT 499

Wireless Access Protocol(WAP) architecture

Page 1. WAP Overview. An overview of the. Wireless Application Protocol to the IAB. Copyright IBM 2000

M.SARAVANA KARTHIKEYAN

Produced by. Mobile Application Development. Higher Diploma in Science in Computer Science. Eamonn de Leastar

Performance Evaluation on WAP and Internet Protocol over 3G Wireless Networks

IMS Client Framework for All IP-Based Communication Networks

Protocol Compliance Statements for the CSG2

Thin Client Content Options

MMS Architecture. Approved Version Sep Open Mobile Alliance OMA-AD-MMS-V1_ A

Multimedia Messaging Service Architecture Overview

Protocol Compliance Statements for the CSG2

WAP via ORBCOMM. Andrew R Cardoza, Sias Mostert.

WAP TM Architecture WAP-210-WAPArch Proposed Version 17-October-2000

Cache Operation. Version 31-Jul Wireless Application Protocol WAP-175-CacheOp a

Chapter 3. Technology Adopted. 3.1 Introduction

Mobile Application Protocols

Internet protocol stack

Continues the Technical Activities Originated in the WAP Forum

Wireless Application Protocol (WAP)

Multimedia Messaging Service Client Transactions

MOBILE IP AND WIRELESS APPLICATION PROTOCOL

WAP WINA Process Document WAP-212-WINAProcess Version 04-Feb-2002

Continues the Technical Activities Originated in the WAP Forum

Location Protocols. Version 12-Sept Wireless Application Protocol WAP-257-LOCPROT a

WAP Provisioning Architecture Overview

Winwap Technologies Oy. WinWAP Browser. Application Environment

WIRELESS APPLICATION PROTOCOL (WAP)

ETSI TS V3.4.0 ( )

Application Level Protocols

Overview. M-commerce vs. E-commerce

Department of Computer Science. Burapha University 6 SIP (I)

SIP Compliance APPENDIX

Govt. of Karnataka, Department of Technical Education Diploma in Computer Science Sixth Semester. Contact Hrs / week: 4 Total hrs: 64

EFFECTS OF COMPRESSION ON SYSTEM THROUGHPUT IN WIRELESS APPLICATION PROTOCOL (WAP) 2.0 ARCHITECTURE. KASHIF KHAN. Masters of Computer Science

Enabling the Wireless Internet

Overview of the Session Initiation Protocol

A Survey Paper on Wireless Access Protocol

GRAPHICAL SIMULATION OF WIRELESS APPLICATION PROTOCOL

A New Internet? RIPE76 - Marseille May Jordi Palet

Lecture 7b: HTTP. Feb. 24, Internet and Intranet Protocols and Applications

OSI Layer OSI Name Units Implementation Description 7 Application Data PCs Network services such as file, print,

Wireless Profiled HTTP

Wireless Application Protocol WAP. F. Ricci 2008/2009

Black Hat Europe 2009

UNIT V MOBILE TRANSPORT LAYER AND SUPPORT FOR MOBILITY

Transport Layer TCP & UDP Week 7. Module : Computer Networks Lecturers : Lucy White Office : 324

Push Architecture. Candidate Version Oct Open Mobile Alliance OMA-AD-Push-V2_ C

SC/CSE 3213 Winter Sebastian Magierowski York University CSE 3213, W13 L8: TCP/IP. Outline. Forwarding over network and data link layers

System Architecture Model Version 1.1 WV Tracking Number: WV-020

ETSI TS V3.1.0 ( )

Compliance with RFC 3261

TSIN02 - Internetworking

CS2402-MOBILE AND PERVASIVE COMPUTING

Table of Contents. WAP Process. WAP Architecture. Wireless Transport Protocol Overview. Wireless Session Protocol Overview

Homework 2 50 points. CSE422 Computer Networking Spring 2018

Information About SIP Compliance with RFC 3261

Multimedia Messaging Service Encapsulation Protocol

The Wireless Application Protocol

Internet. 1) Internet basic technology (overview) 3) Quality of Service (QoS) aspects

User Agent Profile Version 20-May Open Mobile Alliance OMA-UAProf-v2_ C

Internet Architecture. Web Programming - 2 (Ref: Chapter 2) IP Software. IP Addressing. TCP/IP Basics. Client Server Basics. URL and MIME Types HTTP

Multimedia Messaging Service

Client-Server Protocol Transport Bindings

Generic Content Download Over The Air Specification Version 1.0

MMS THE MODERN WIRELESS SOLUTION FOR MULTIMEDIA MESSAGING

CS Mobile and Pervasive Computing

OMA-ETS-DL-OTA-v1_ a Page 1 (24)

Push Access Protocol. Version 29-Apr Wireless Application Protocol WAP-247-PAP a

Class Conformance Requirements

Experimental Evaluation of Transport Services CoAP, HTTP and SPDY for Internet of Things

Avaya one-x Deskphone Edition for 9600 Series IP Telephones Application Programmer Interface (API) Guide

Glossary. ADO.NET ActiveX Data Objects for.net. A set of data access technologies included in the.net Framework class libraries.

MMS-MULTI MEDIA MESSAGING AND MMS-INTERCONNECTION. Brugge, November 2004

Mobile Station Execution Environment (MExE( MExE) Developing web applications for PDAs and Cellphones. WAP (Wireless Application Protocol)

Push Access Protocol. Approved Version Nov Open Mobile Alliance OMA-TS-PAP-V2_ A

Mobile Transport Layer

ETSI TS V5.0.0 ( )

4. B2C,B2E Systems: Concepts and Architectures

Chapter 7. The Application Layer. DNS The Domain Name System. DNS Resource Records. The DNS Name Space Resource Records Name Servers

CCNA Exploration Network Fundamentals. Chapter 04 OSI Transport Layer

3GPP2 MMS STANDARDS AND FEATURES

ROEVER COLLEGE OF ENGINEERING AND TECHNOLOGY Elambalur, Perambalur

TCP/IP Protocol Suite

World-Wide Web Protocols CS 571 Fall Kenneth L. Calvert All rights reserved

POSTER SESSION. Wireless Cardiology Decision Support System. Proceedings Paper. Slide Presentation. Dr. Saji Salam SSI Technologies Chennai, India

SIP System Features. SIP Timer Values. Rules for Configuring the SIP Timers CHAPTER

EEC-682/782 Computer Networks I

Introduction to LAN/WAN. Application Layer (Part III)

Outline 9.2. TCP for 2.5G/3G wireless

COMPUTER NETWORKS AND COMMUNICATION PROTOCOLS. Web Access: HTTP Mehmet KORKMAZ

Hypertext Transport Protocol HTTP/1.1

Mobile Applications - 1 Vehicles transmission of news, road condition etc ad-hoc network with near vehicles to prevent accidents

Internet Draft Intended status: Standards Track Expires: January 16, 2019 D. Xiong Chongqing University of Posts and Telecommunications July 15, 2018

A taste of HTTP v1.1. additions. HTTP v1.1: introduces many complexities no longer an easy protocol to implement. G.Bianchi, G.Neglia, V.

The HTTP protocol. Fulvio Corno, Dario Bonino. 08/10/09 http 1

Internet Protocols. Robin Sharp

Transcription:

Developing Mobile Applications WAP 1

Organizations 3GPP (3G Partnership Program) IETF (Internet Enginering Task Force) W3C (World Wide Web Consortium) OMA (Open Mobile Aliance) IANA (Internet Assigned Number Authority) 2

3GPP An organizations consisting of mobile operators and network manufacturers. Is the standardization body for GSM/GPRS and UMTS. Defines the physical and network layer. Defines services such as: voice telephony SMS IP connectivity 3

IETF www.ietf.org Issues RFC (request for comment) Mainly dealing with layer three, four and five protocols for example IP/TCP/HTTP For web programing the most important are: RFC 2616 - HTTP 1.1 RFC 2396 - URI RFC 2045-9 - MIME 4

W3C Takes care of the seventh i.e. the presentation layer. Most important are XHTML-Basic XML CC/PP (device capabilities and user preferences) SMIL 5

OMA Collaboration between mobile operators and manufacturer to standardize a service layer. The older WAP Forum is now part of OMA. Builds to a large extent its work on standards from IETF and W3C Most important are: WAP/WML/xHTML-MP MMS DRM 6

IANA Is responsible for registration of names and numbers used in the Internet protocols. We are especially interested in the MIME types i.e. tokens that specify media formats. 7

To understand WAP......you need to understand HTTP 8

HTTP http://www.it.kth.se:80/~jm/test.html?greeting=hello http:// host : port / path? query web server Request web proxy Response www.it.kth.se p ~jm/test.html 9

Request Request line Method URL HTTP-version Header general header request header entity (body) header Body most requests do not have a body 10

Methods GET get the resource POST submit information to a resource HEAD only return the header CONNECT request for a TLS tunnel of a proxy PUT, DELETE, TRACE, OPTIONS 11

GET vs POST A GET method that uses a query in the URL should not change the resource. Two or more identical GET methods should result in the same response. When you're adding information to a resource you should us POST. 12

general header Cache control max age, no cache... Connection closing the connection Date Pragma : : 13

request header Accept media types Accept-Charset Accept-Encoding compression Accept-Language From email of user (this should be disabled) Host 14

Media types Text text/html text/vnd.wap.wml Images image/jpeg image/gif Wild cards text/* 15

Response HTTP-version Status-code Reason-phrase Header general response entity header Body the thing we asked for 16

Status code 2xx the request was granted and here is the content 3xx the page has moved to another URL 4xx 404 not found :-( 5xx server error 17

entity header Content-Type Content-Encoding Content-Language Expires for how long is the content valid Last-modified good to know if we only requested the header and have a cached copy 18

Why Another Protocol mobile link high latency > 1s low capacity < 40 kbps unreliable device limited computational power provisioning if we charge we might want to know if it was received 19

HTTP over TCP syn ack ack GET... HTTP 1.1 OK... fin ack fin ack 20

Even worse We might have to do a DNS lookup. This can be avoided if we have a HTTP proxy. A page could contain in-line objects that need to be fetched. Each object could need its own TCP connection (the only way in HTTP 1.0) Do we know that the content was delivered correctly? 21

WAP www.wapforum.org WAE WSP WTP WTLS WDP/WCMP application environment: WML, WTAI session : HTTP session, push transaction : notify, request/respond security: privacy, authentication (SSL/TSL) UDP/ICMP in all networks that support IP Standardization taken over by Open Mobile Alliance 22

WSP options Connection oriented (continuous) WSP over WTP over WDP Connectionless WSP over WDP Secure connection oriented WSP over WTP over WTLS over WDP Secure connectionless WSP over WTLS over WDP 23

Who uses what? A server can chose to use connection less or connection oriented connection when pushing out messages. A terminal is (sometimes manually) configured to use either or when browsing. The default is connection oriented. Built in applications on the device can be pre-configured to use either or. 24

WSP over WDP: connection less byte coded request 0x40... (get) 0x04... (ok) byte coded content 25

WSP over WDP: connection less Advantages no setup time compact: request can be coded in a SMS Disadvantage every request contains the same headers no confirmation what if the content does not fit into one packet 26

WSP over WTP: connection oriented connect ack get connect reply reply ack dis 27

WSP sessions When the session is initiated the server is informed of device capabilities. the accept-headers in the GET A session can be long lived and survives if the connection is broken. 28

WTP: reliable transactions Message oriented not a stream of bytes. Transactions unconfirmed push confirmed push confirmed request reply Reliable retransmission segmentation ordering 29

WAP gateway WBXML WML WSP WSP HTTP HTTP WTP WTP TCP TCP UDP UDP IP IP IP IP mobile net fixed net 30

Operator and the WAP gateway PLMN Internet web server APN Gateway is often provided by the operator but could be anywhere on the Internet. WAP gateway 31

Operate your own WAPgw Kannel open source, C Linux, Cygwin www.kannel.org SoWAP open source, Erlang any Erlang platform sowap.sourceforge.net 32

WAP gateway security WBXML WML WSP WSP HTTP HTTP WTP WTP TLS TLS WTLS WTLS UDP UDP TCP TCP IP IP IP IP 33

Security gap Trust the operator only trust one and limit your customer base trust any Host your own gateway users have to change WAP settings to access your service Don't develop applications that need security no banking, payment, intranet... 34

WAP 2.0 WAE WSP WTP WTLS UDP W-HTTP TLS W-TCP 35

W-HTTP Based on HTTP 1.1 A pipe-line of GET messages using the same TCP connection. Use compression of content. multipart content to include several objects in one reply 36

W-TCP Large initial window Selective ACK Time stamp to measure RTT Large packet size, path MTU discovery Explicit congestion notification Compatible with regular TCP 37

Direct connection W-HTTP HTTP W-TCP TCP IP IP 38

Proxy W-HTTP W-HTTP HTTP HTTP W-TCP W-TCP TCP TCP IP IP IP IP 39

Security W-HTTP TLS End to end security W-HTTP TLS W-TCP W-TCP TCP TCP IP IP IP IP 40

Wireless Application Environment the browse WML, wireless markup language security WIM, wireless identity module user profile UAProf, content negotiation the phone WTA, wireless telephony application 41

WAP 1.2.1 June 2000 WML 1.3 many sites are still WML 1.1 and some phones only support 1.1, difference are small WMLScript 42

WAP 2.0 Jan 2002 XHTML-MP graphics layout style sheets super/sub-set of XHTML-Basic ECMAscripts (newer releases) WML 1.3 WMLscript 43