330 likes | 614 Views
The Mobile Internet. Nour El Kadri University Of Ottawa. Mobile Internet. TCP/IP was designed to isolate developers from the idiosyncrasies of the different standards We need something to do the same for the mobile world since the TCP/IP did not cater for wireless links and mobile devices
E N D
The Mobile Internet Nour El Kadri University Of Ottawa
Mobile Internet • TCP/IP was designed to isolate developers from the idiosyncrasies of the different standards • We need something to do the same for the mobile world since the TCP/IP did not cater for wireless links and mobile devices • Transition standards have been developed to bridge the gap. EX: • WAP • Work of 3GPP on Open Service Access (OSA) • 3GPP Mobile Execution Environment (MExE) – Combining WAP with simple Java.
TCP/IP on Mobile Networks • Multiplexing at the Physical and Data Link level • 2G – Circuit switched connections • 2.5G and 3G – Packet switching • Routing is difficult due to adaptation difficulties in TCP/IP to the demands of mobile communications • Mobile IP is a variation of IP at the network layer that caters for some of these difficulties • Mobile IP is an integral part of 3G, but GPRS and CDMA2000 1X support simplified versions of mobile IP
Mobile IP – Routing Packets to Mobile Nodes • Packets contain headers that identify Destination Addresses • IP addresses are organized where addresses in the same network have identical prefixes • As soon as a node or mobile Device like a PDA start moving between networks of different prefixes…..Things start to break down • Regular IP offers two solutions for dealing with this. Neither is feasible in a mobile environment • Update all routing tables with node-specific entries • Assign new IP addresses to the mobile node
The Remedy – Mobile IP • It does not require any changes to software or hardware for the existing installed base of IPv4 and routers except those involved in mobility services. • This is done using: • Tunneling • Care-of-address • Home agents and mobile agents take care of encapsulating messages and sending them to their intended receipients
TCP: The Wireless Link Requires Special Treatment • IP is a best-effort service…No guarantee of delivery • TCP makes sure that packets are received, reassembled and delivered to the application needing them • TCP also addresses flow and congestion control • In wireline, missing acknowledgement is mostly due to congestion • In mobile wireless, missing acknowledgement is rarely due to congestion, it is mostly connection drops and transmission errors • Differentiation between the wireless link and the rest of the network is a partial solution. • GPRS adopts a re-transmission scheme as a solution • Sender and receiver agreements are a problem in wireless due to intolerable delays
The Mobile Internet: Early Precursors • Other challenges include developing presentation languages that accommodate: • The limited screen size • Memory • Power of mobile devices • Limitations of mobile networks • Even HTTP is not suited for wireless due to its stateless nature Solutions have been devised: • AT&T PocketNet • Palm.Net-WebClipping • NTT DoCoMo i-Mode
AT&T PocketNet • Introduced in 1996 by AT&T Wireless • It relies on CDPD which includes a basic TCP/IP protocol stack • It uses HDML instead of HTML and a special microbrowser (UP.View) developed by unwired planet, later renamed as Phone.com (acquired by OpenWave) • HDML introduced the Deck of Cards Metaphor • Devices has tiny screens • Many user applications can be devided into small sets of interaction (cards) • Send all associated screens (cards) all at once to a mobile device • HDML evolved into the Wireless Markup Language the presentation language of WAP
Palm.Net - WebClipping • A web service introduced by Palm in 1998 for its PDAs • Uses a solution called WebClipping • Webclipping stores the static part of web pages on the PDA allowing only the dynamic part to be sent over the wireless link • Several hundred web services have been adapted to run on Palm.Net covering: • Finance • Enterprise applications • Shopping • Information • Entertainment service
NTT DoCoMo i-Mode • Operates on top of PDC-P packet switched network (known as DoPa) which has a built-in TCP/IP stack • It relies on cHTML for content presentation designed by Access Corporation • DoCoMo’s i-Mode servers take care of Authentication and billing for official content providers • i-Mode vs. WAP competition? • Recent move from cHTML to XHTML Basic which is adopted by WAP (known as WAP2.0) for replacement of WML • i-Mode started supporting Java based applications through its i-appli service which relies on Sun’s J2ME providing: • End-to-end security • More interactive applications like games, zoomable maps • Regular traffic updates and similar services
Wireless Application Protocol • WAP Forum founded in 1997 by Phone.com, Ericsson, Nokia and Motorola • Open standard that is device and bearer-independent • Due t its wide adoption, it achieved the badly needed economies of scale • Often criticized as too far a deviation from W3C and IETF standards • Developers find it has presentation constraints and question its security approach • Its limitations are being addressed with time, for instance, WAP 2.0 has support for: • End-to-end security • Color graphics • Animation • Push technology • WAP collaboration with W3C and IETF led to adoption of XHTML Basic (WML2) and support for TCP and HTTP
WAP Architecture • WAP is not a Protocol, but a suite of protocols • It bridges the gap between mobile bearer services and basic Internet Protocols such as: • TCP/IP • HTTP • This was done through gateways in the early stages
WAP Gateway and Legacy Protocol Stack • WAP gateway or proxy was used to interface between WAP protocol Stack and the regular internet protocol stack • WAP content is encoded into a compact binary format before transmission • WAP gateway decodes it into text interpreted by HTTP and vice versa • WAP gateway helps improve communication efficiency, authenticates users, provides support for additional billing functionality
Operating without a WAP Gateway • 2.5G and 3G have a protocol stack that supports the IP protocol. (WAP 2.0, W3C, IETF) • It is a variation of the TCP and HTTP protocols profiled for operation over a wireless link • Wireless HTTP provides: • Compression of content • Secure tunneling between Mobile device and web server • In theory, that should eliminate the gateway • In practice, a gateway is still needed to provide other services like: • Billing • Location-based services • Privacy features • WAP gateway is needed for push services
WAP Legacy Protocol Stacks Before 2.5G and 3G, we needed the gateway and the legacy of protocol stacks which included: • Wireless Datagram Protocol • Wireless Transport Layer Security • Wireless Transaction Protocol • Wireless Session Protocol • Wireless Application Environment
Wireless Datagram Protocol (WDP) • Lower level protocol • Sits between bearer services and upper level protocols in the stack • Depending on the bearer service, its functionality changes • In cases of built-in IP bearers like GPRS and UMTS, its functionality is reduced to that of UDP • It simply insures that packets are delivered to upper layers
Wireless Transport Layer Security • Designed to provide Privacy, Data Integrity and Authentication between two communicating applications • It is based on the TLS protocol commonly used over fixed Internet (formerly known SSL) • TLS operates on top of TCP, thus WTLS has to take on some of that functionality • Designed to operate over low-bandwidth and high-latency connections • Security is a burden, so developers have to choose the level of security needed in a cautious way. • The Gateway poses a security gap.
Wireless Transaction Protocol • Light-weight transaction-oriented protocol – mostly for thin clients with little memory and power • Acts as a substitute for TCP while handling some of HTTP functionality • WTP supports three classes of transaction services • WTP Class 0: for unreliable message transfer • WTP Class 1: for reliable message delivery without a result message • WTP Class 2: for reliable message delivery with a result message confirming reception – useful for banking applications as it allows transaction rollbacks
Wireless Session Protocol • Provides HTTP/1.1 functionality. It allows for sharing of state between client and server to optimize content transfer • It allows for Capability Negotiation: level of protocol functionality during a session • You can resume suspended sessions from where you left • It allows the management of multiple sessions. EX: from a GPRS session to read e-mail to a UMTS session to join a videoconference.
Wireless Application Environment • Most visible part of WAP to both users and developers • It includes • WAP microbrowser • WAP markup and scripting languages • Important part of WAE is the Wireless Telephony Applications Interface (WTAI). It allows users to access telephony applications from WAP sessions
WAP Protocol Stack for Fast Bearers with Built-in IP • Wireless Profiled TCP - version of TCP optimized for wireless Environments • Wireless Profiled TLS – a wireless profile for the TLS protocol found on the wired Internet • Wireless Profiled HTTP – fully interoperable version of HTTP/1.1 allowing for message body compression and secure tunnels • Wireless Application Environment – next slide
The Wireless Application Environment It is the part of WAP that users see. It consists of: • WAP markup and scripting languages • WAP microbrowser • Wireless Telephony Applications Interface
WAP Markup and Scripting Languages • WML referred to as WML1 or WML1.x • WMLScript is the scripting language • With WAP2.0 we have XHTML Basic which is a subset of XHTML recommended by W3C • Deck of cards metaphor • WAP allows for Client-Side logic using its WMLScript which is a bare-bones version of JavaScript. Thus, some processing is done at the client side • Code reusability is possible due to the import of some code that is written for PCs that can be used for WAP. Thanks to W3C.
WAP Microbrowser • Sits on the client with a role of interpreting and presenting content • Content can be written with: legacy WML language, WML Script or XHTML Basic • Some companies have their own microbrowsers like Ericsson and Nokia Other Third party microbrowsers available: • Open Wave’s Mobile Browser • AU-System’s browser for PalmOS, Windows CE and EPOC platforms • Microsoft’s Mobile Explorer • 4thPass KBrowser, runs Sun’s Java KVM
Wireless Telephony Applications Interface • Contains a list of APIs to invoke applications from WAP browser • Accepting restaurant Ads, • Reservations • Saving telephone numbers to address book All without having to quit a WAP browser
The WAP Usability Saga • Deck of Cards Metaphor • Introduction of Persistent Sessions in WSP • Use of WAP User Agent Profiles to better tailor content • Integration of WAP with telephony applications In spite of this there are complaints: • Slow connections • Dead ends or sites being down • Sites with poor signposting • Uneven content quality • Small screens
Evolving Application Architectures- How Open is the Mobile Internet? • Anyone can set up an Internet shop • Click-through economy • 3GPP’s Open Service Architecture • Service Enablers • Personal Service Environment
Java and MExE • Device Independence from bearer services – write once run everywhere • J2ME comes in two different flavors • A connected device configuration • A connected limited device configuration