Overview • Web and Mobility • HTTP and HTML Chapter 11 • Mobile Web Architectures Mobile Web • Wireless Application Protocol WAP •WML •WMLScript •WTAI Distributed Mobile Computing Computing Group Summer 2002 Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 11/2 World Wide Web and Mobility WWW example • Request to port 80 • Protocol (HTTP, Hypertext Transfer Protocol) and language GET/HTTP/1.0 (HTML, Hypertext Markup Language) of the Web have not been • Response from server designed for mobile applications and mobile devices. HTTP/1.1 200 OK Date: Fri, 20 Jun 2002 14:52:12 GMT • Typical transfer sizes Server: Apache/1.3.26 – HTTP request: 100-350 byte Connection: close – responses avg. <10 kbyte, header 160 byte, GIF 4.1kByte, JPEG Content-Type: text/html 12.8 kbyte, HTML 5.6 kbyte <html> <head> <title>Distributed Computing Group</title> <meta http-equiv="Content-Type" content="text/html; – but also many large files that cannot be ignored charset=iso-8859-1"> <link rel=stylesheet href="styles.css" type="text/css"> </head> <body • The Web is no file system bgcolor="#FFFFFF" text="#000000" link="#0000A0" – Web pages are not simple files to download vlink="#0000A0" alink="#00A000"> <p align="right" style="margin-bottom:0px"> <a – static and dynamic content, interaction with servers via forms, href="index.html"><img border="0" height="117" content transformation, push technologies etc. width="429" src="pics/dcg.gif" alt="Distributed Computing Group"></a> </p> – many hyperlinks, automatic loading and reloading, redirecting <hr size="1" noshade> – a single click might have big consequences! <h1>Distributed Computing Group</h1> <p class="topic"> … Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 11/3 Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 11/4 HTTP 1.0 and mobility HTTP 1.0 and mobility •Characteristics • Caching – stateless, client/server, request/response – quite often disabled by information providers to be able to create user – needs a connection oriented protocol (TCP), one connection per profiles, usage statistics, etc. request (some enhancements in HTTP 1.1) – dynamic objects (counters, time, date, personalization) – primitive caching and security – mobility quite often inhibits caches • Problems – security problems (how to use SSL/TLS together with proxies?) – designed for large bandwidth (compared to wireless access) – today: many user customized pages, dynamically generated on request and low delay via CGI, ASP, ... – big and redundant protocol headers (readable for humans, • Sending to a server with POST method stateless, therefore big headers in ASCII) – can typically not be buffered – uncompressed content transfer – very problematic if currently disconnected – using TCP (3-way-handshake, slow-start) – DNS lookup by client causes additional traffic • Many unsolved problems! Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 11/5 Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 11/6 HTML and mobile devices Approaches toward WWW for mobile devices •HTML • Application gateways, enhanced servers – designed “high” performance computers: color high-resolution – simple clients, pre-calculations in the fixed network display, mouse, hard disk – compression, filtering, content extraction – web pages optimized for design, not for communication – automatic adaptation to network characteristics • Mobile devices •Examples – small, low-resolution displays, very limited input interfaces – picture scaling, color reduction, transformation of the document (small touch-pads, soft-keyboards) format (e.g., PS to TXT), detail studies, clipping, zoom • Many web pages assume existence of additional features – headline extraction, automatic abstract generation – animated GIF, Java applets, Frames, ActiveX, Shockwave, – HDML (handheld device markup language): simple language movie clips, audio, ... similar to HTML requiring a special browser – HDTP (handheld device transport protocol): transport protocol for HDML, developed by Unwired Planet • Web pages ignore the heterogeneity of end-systems • Problems – proprietary approaches, require special enhancements for browsers – heterogeneous devices make approaches more complicated Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 11/7 Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 11/8 Some new issues that might help mobility? WWW in a mobile world: Architectures • Push technology mobile client – real pushing, not a client pull needed, channels etc. • Enhanced browsers integrated – Caching, off-line use enhancement • HTTP/1.1 – Examples: Internet Explorer, browser – client/server use the same connection for several request/response Netscape transactions – multiple requests at beginning of session, several responses in web same order server – enhanced caching of responses (useful if equivalent responses) – semantic transparency not always achievable: disconnected, mobile client performance, availability -> most up-to-date version... • Additional, accompanying application – several more tags and options for controlling caching browser – Pre-fetching, caching, off-line use (public/private, max-age, no-cache etc.) additional – Example: original WebWhacker application – relaxing of transparency on app. request or with warning to user – encoding/compression mechanism, integrity check, security of proxies, authentication, authorization... web •Cookies server Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 11/9 Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 11/10 WWW in a mobile world: Architectures WWW in a mobile world: Architectures • Client Proxy mobile client • Client and network proxy mobile client – Pre-fetching, caching, off-line use – combination of benefits plus client browser browser simplified protocols proxy – Examples: Caubweb, TeleWeb, client Weblicator, WebWhacker, WebEx, proxy – Examples: MobiScape, WebMirror, etc. WebExpress, Mowgli web network web server proxy server mobile client • Network Proxy – adaptive content transformation browser • Additionally many proprietary server extensions possible for bad connections, pre-fetching, – channels caching – content negotiation – Examples: TranSend, Digestor network proxy web server Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 11/11 Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 11/12 Wireless Application Protocol WAP WAP reference model and protocols • Goals Internet WAP – deliver Internet content and enhanced services to mobile devices A-SAP and users (mobile phones, PDAs) HTML, Java Application Layer (WAE) additional services – independence from wireless network standards and applications S-SAP – open for everyone to participate, protocol specifications will be proposed to standardization bodies Session Layer (WSP) [J. Schiller] HTTP – applications should scale well beyond current transport media and TR-SAP TCP device types and should also be applicable to future developments Transaction Layer (WTP) •Platforms SEC-SAP – e.g., GSM (900, 1800, 1900), CDMA IS-95, TDMA IS-136, 3rd generation systems (IMT-2000, UMTS, W-CDMA) SSL/TLS Security Layer (WTLS) • Challenger i-mode T-SAP – A big hit in Japan, now coming to the rest of the world UDP Transport Layer (WDP) – Standardized user interface, designed by provider; thus not open IP media – “SMS” is seen as (most successful) part of i-mode Bearer Services (GSM, CDPD, GPRS, SMS) Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 11/13 Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 11/14 WAP network elements Wireless Application Environment WAE fixed network wireless network • Goals – network independent application environment for wireless devices WML Binary WML Internet HTML WAP – integrated Internet/WWW programming model with high interoperability filter proxy – device and network independent, international support – manufacturers can determine look-and-feel, user interface HTML WML HTML – considerations of slow links, limited memory, low computing power, small filter/ Binary WML display, simple user interface (compared to desktop computers) WAP web HTML proxy server • Components – architecture: application model, micro browser, gateway, server WTA Binary WML – WML: XML-Syntax, based on card stacks, variables, ... server – WMLScript: procedural, loops, conditions, ... (similar to JavaScript) PSTN – WTA: telephone services, such as call control, text messages, phone [J. Schiller] book, ... (accessible from WML/WMLScript) – content formats: vCard, vCalendar, Wireless Bitmap, WML, ... Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 11/15 Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 11/16 WAE logical model Wireless Markup Language (WML) Origin Servers Gateway Client • WML follows deck and card metaphor – WML document consists of many cards, cards are grouped to decks WTA web response encoded – a deck is similar to an HTML page, unit of content transmission user agent server with response – WML describes only intent of interaction in an abstract manner content with content – presentation depends on device capabilities encoders WML other content & user agent • Features server push decoders encoded content push – text and images: only limited capabilities, depends on client content – user interaction: text or password input, options, depends on client other WAE – Navigation: store already visited sites user agents request encoded – context management: global variables request Distributed Computing Group MOBILE COMPUTING
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages8 Page
-
File Size-