Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ......

56
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 50 Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin, Computer Systems & Telematics Mobile IP Motivation Basics Problems WAP & Co. 1.x, 2.0, i-mode Execution Environments Java, i-αppli, .NET

Transcript of Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ......

Page 1: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 50

Mobile ComputingPart II: Mobility Support

Prof. Dr.-Ing. Jochen SchillerFU Berlin, Computer Systems & Telematics

Mobile IPMotivationBasicsProblems

WAP & Co.1.x, 2.0, i-mode

Execution EnvironmentsJava, i-αppli, .NET

Page 2: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 51

Motivation for Mobile IP

Routingbased on IP destination address, network prefix (e.g. 129.13.42)determines physical subnetchange of physical subnet implies change of IP address to have atopological correct address (standard IP) or needs special entries in the routing tables

Specific routes to end-systems?change of all routing table entries to forward packets to the right destinationdoes not scale with the number of mobile hosts and frequent changes in the location, security problems

Changing the IP-address?adjust the host IP address depending on the current locationalmost impossible to find a mobile system, DNS updates take to long timeTCP connections break, security problems

Page 3: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 52

Requirements to Mobile IP (RFC 3220, was: 2002)

Transparencymobile end-systems keep their IP addresscontinuation of communication after interruption of link possiblepoint of connection to the fixed network can be changed

Compatibilitysupport of the same layer 2 protocols as IPno changes to current end-systems and routers requiredmobile end-systems can communicate with fixed systems

Securityauthentication of all registration messages

Efficiency and scalabilityonly little additional messages to the mobile system required (connection typically via a low bandwidth radio link)world-wide support of a large number of mobile systems in the whole Internet

Page 4: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 53

Terminology

Mobile Node (MN)system (node) that can change the point of connection to the network without changing its IP address

Home Agent (HA)system in the home network of the MN, typically a routerregisters the location of the MN, tunnels IP datagrams to the COA

Foreign Agent (FA)system in the current foreign network of the MN, typically a routerforwards the tunneled datagrams to the MN, typically also the default router for the MN

Care-of Address (COA)address of the current tunnel end-point for the MN (at FA or MN)actual location of the MN from an IP point of viewcan be chosen, e.g., via DHCP

Correspondent Node (CN)communication partner

Page 5: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 54

Example network

mobile end-systemInternet

router

router

router

end-system

FA

HA

MN

home network

foreign network

(physical home networkfor the MN)

(current physical network for the MN)

CN

Page 6: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 55

Data transfer to the mobile system

Internet

sender

FA

HA

MN

home network

foreignnetwork

receiver

1

2

3

1. Sender sends to the IP address of MN,HA intercepts packet (proxy ARP)

2. HA tunnels packet to COA, here FA, by encapsulation

3. FA forwards the packet to the MN

CN

Page 7: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 56

Data transfer from the mobile system

Internet

receiver

FA

HA

MN

home network

foreignnetwork

sender

1

1. Sender sends to the IP addressof the receiver as usual,FA works as default routerCN

Page 8: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 57

Network integration

Agent AdvertisementHA and FA periodically send advertisement messages into their physical subnetsMN listens to these messages and detects, if it is in the home or a foreign network (standard case for home network)MN reads a COA from the FA advertisement messages

Registration (always limited lifetime!)MN signals COA to the HA via the FA, HA acknowledges via FA to MNthese actions have to be secured by authentication

AdvertisementHA advertises the IP address of the MN (as for fixed systems), i.e. standard routing informationrouters adjust their entries, these are stable for a longer time (HA responsible for a MN over a longer period of time)packets to the MN are sent to the HA, independent of changes in COA/FA

Page 9: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 58

Encapsulation

original IP header original data

new datanew IP header

outer header inner header original data

Page 10: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 59

Encapsulation

Encapsulation of one packet into another as payloade.g. IPv6 in IPv4 (6Bone), Multicast in Unicast (Mbone)here: e.g. IP-in-IP-encapsulation, minimal encapsulation or GRE (Generic Record Encapsulation)

IP-in-IP-encapsulation (mandatory, RFC 2003)tunnel between HA and COA

Care-of address COAIP address of HA

TTLIP identification

IP-in-IP IP checksumflags fragment offset

lengthTOSver. IHL

IP address of MNIP address of CN

TTLIP identification

lay. 4 prot. IP checksumflags fragment offset

lengthTOSver. IHL

TCP/UDP/ ... payload

Page 11: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 60

Optimization of packet forwarding

Triangular Routingsender sends all packets via HA to MNhigher latency and network load

“Solutions”sender learns the current location of MNdirect tunneling to this locationHA informs a sender about the location of MNbig security problems!

Change of FApackets on-the-fly during the change can be lostnew FA informs old FA to avoid packet loss, old FA now forwards remaining packets to new FAthis information also enables the old FA to release resources for the MN

Page 12: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 61

Change of foreign agent

CN HA FAold FAnew MN

MN changeslocation

t

Data Data DataUpdate

ACK

Data Data

RegistrationUpdateACK

DataData Data

Warning

RequestUpdate

ACK

DataData

Page 13: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 62

Reverse tunneling (RFC 3024, was: 2344)

Internet

receiver

FA

HA

MN

home network

foreignnetwork

sender

3

2

1

1. MN sends to FA2. FA tunnels packets to HA

by encapsulation3. HA forwards the packet to the

receiver (standard case)

CN

Page 14: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 63

Mobile IP with reverse tunneling

Router accept often only “topological correct“ addresses (firewall!)a packet from the MN encapsulated by the FA is now topological correctfurthermore multicast and TTL problems solved (TTL in the home network correct, but MN is to far away from the receiver)

Reverse tunneling does not solveproblems with firewalls, the reverse tunnel can be abused to circumvent security mechanisms (tunnel hijacking)optimization of data paths, i.e. packets will be forwarded through the tunnel via the HA to a sender (double triangular routing)

The standard is backwards compatiblethe extensions can be implemented easily and cooperate with current implementations without these extensions Agent Advertisements can carry requests for reverse tunneling

Page 15: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 64

Mobile IP and IPv6

Mobile IP was developed for IPv4, but IPv6 simplifies the protocolssecurity is integrated and not an add-on, authentication of registration is includedCOA can be assigned via auto-configuration (DHCPv6 is one candidate), every node has address auto configurationno need for a separate FA, all routers perform router advertisement which can be used instead of the special agent advertisement; addresses are always co-locatedMN can signal a sender directly the COA, sending via HA not needed in this case (automatic path optimization)„soft“ hand-over, i.e. without packet loss, between two subnets is supported

MN sends the new COA to its old routerthe old router encapsulates all incoming packets for the MN and forwards them to the new COAauthentication is always granted

Page 16: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 65

Problems with Mobile IP

Securityauthentication with FA problematic, for the FA typically belongs to another organization no protocol for key management and key distribution has been standardized in the Internet

Firewallstypically mobile IP cannot be used together with firewalls, special set-ups are needed (such as reverse tunneling)

QoSmany new reservations in case of RSVP (or similar reservation protocols)tunneling makes it hard to give a flow of packets a special treatment needed for the QoS

Security, firewalls, QoS etc. are topics of current research anddiscussions!

Page 17: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 66

Manet: Mobile Ad-hoc Networking

FixedNetwork

MobileDevices

MobileRouter

Manet

Mobile IP, DHCP

Router End system

Page 18: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 67

World Wide Web and mobility

Protocol (HTTP, Hypertext Transfer Protocol) and language (HTML, Hypertext Markup Language) of the Web have not been designed for mobile applications and mobile devices, thus creating many problems!

Typical transfer sizesHTTP request: 100-350 byteresponses avg. <10 kbyte, header 160 byte, GIF 4.1kByte, JPEG 12.8 kbyte, HTML 5.6 kbytebut also many large files that cannot be ignored

The Web is no file systemWeb pages are not simple files to downloadstatic and dynamic content, interaction with servers via forms, content transformation, push technologies etc.many hyperlinks, automatic loading and reloading, redirecting a single click might have big consequences!

Page 19: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 68

HTTP and mobility I

Characteristicsstateless, client/server, request/responseneeds a connection oriented protocol (TCP)primitive caching and security

Problemsdesigned for large bandwidth (compared to wireless access) and low delaybig and redundant protocol headers (readable for humans, stateless, therefore big headers in ASCII)uncompressed content transferusing standard TCP

huge overhead per request (3-way-handshake) compared with the content, e.g., of a GET requestslow-start problematic

DNS lookup by client causes additional traffic

Page 20: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 69

HTTP and mobility II

Cachingquite often disabled by information providers to be able to create user profiles, usage statistics etc.dynamic objects cannot be cached

numerous counters, time, date, personalization, ...mobility quite often inhibits cachessecurity problems

how to use SSL/TLS together with proxies?today: many user customized pages, dynamically generated on request via CGI, ASP, ...

POSTing (i.e., sending to a server)can typically not be buffered, very problematic if currently disconnected

Many unsolved problems!

Page 21: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 70

HTML and mobile devices

HTML designed for computers with “high” performance, color high-resolution display, mouse, hard disktypically, web pages optimized for design, not for communication

Mobile devicesoften only small, low-resolution displays, very limited input interfaces (small touch-pads, soft-keyboards)

Additional “features”animated GIF, Java AWT, Frames, ActiveX Controls, Shockwave, movie clips, audio, ...many web pages assume true color, multimedia support, high-resolution and many plug-ins

Web pages ignore the heterogeneity of end-systems!e.g., without additional mechanisms, large high-resolution pictures would be transferred to a mobile phone with a low-resolution display causing high costs

Page 22: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 71

Some new issues that might help mobility?

Push technologyreal pushing, not a client pull needed, channels etc.

HTTP/1.1client/server use the same connection for several request/response transactionsmultiple requests at beginning of session, several responses in same orderenhanced caching of responses (useful if equivalent responses!)semantic transparency not always achievable: disconnected, performance, availability -> most up-to-date version...several more tags and options for controlling caching (public/private, max-age, no-cache etc.)relaxing of transparency on app. request or with warning to userencoding/compression mechanism, integrity check, security of proxies, authentication, authorization...

Cookies: well..., stateful sessions, not really integrated...

Page 23: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 72

WAP - Wireless Application Protocol

Goalsdeliver Internet content and enhanced services to mobile devices and users (mobile phones, PDAs)independence from wireless network standardsopen for everyone to participate, protocol specifications will be proposed to standardization bodiesapplications should scale well beyond current transport media and device types and should also be applicable to future developments

Platformse.g., GSM (900, 1800, 1900), CDMA IS-95, TDMA IS-136, 3rd

generation systems (IMT-2000, UMTS, W-CDMA)Forum

was: WAP Forum, co-founded by Ericsson, Motorola, Nokia, Unwired Planet, further information www.wapforum.orgnow: Open Mobile Alliance www.openmobilealliance.org(Open Mobile Architecture + WAP Forum + SyncML + …)

Page 24: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 73

WAP - scope of standardization

Browser“micro browser”, similar to existing, well-known browsers in the Internet

Script languagesimilar to Java script, adapted to the mobile environment

WTA/WTAIWireless Telephony Application (Interface): access to all telephone functions

Content formatse.g., business cards (vCard), calendar events (vCalender)

Protocol layerstransport layer, security layer, session layer etc.

Page 25: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 74

WAP 1.x - reference model and protocols

Bearers (GSM, UMTS, CDPD, ...)

Security Layer (WTLS)

Session Layer (WSP)

Application Layer (WAE)

Transport Layer (WDP)TCP/IP,UDP/IP,media

SSL/TLS

HTML, Java

HTTP

Internet WAP

WAE comprises WML (Wireless Markup Language), WML Script, WTAI etc.

Transaction Layer (WTP)

additional services and applications

WCMP

A-SAP

S-SAP

TR-SAP

SEC-SAP

T-SAP

Page 26: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 75

WAP - network elements

wireless networkfixed network

WAPproxy

WTAserver

filter/WAPproxyweb

server

filter

PSTN

Internet

Binary WML: binary file format for clients

Binary WML

Binary WML

Binary WML

HTML

HTML

HTML WML

WMLHTML

Page 27: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 76

WDP - Wireless Datagram Protocol

Protocol of the transport layer within the WAP architectureuses directly transports mechanisms of different network technologiesoffers a common interface for higher layer protocolsallows for transparent communication using different transport technologies (GSM [SMS, CSD, USSD, GPRS, ...], IS-136, TETRA, DECT, PHS, IS-95, ...)

Goals of WDPcreate a worldwide interoperable transport system with the help of WDP adapted to the different underlying technologiestransmission services such as SMS, GPRS in GSM might change, newservices can replace the old ones

Additionally, WCMP (wireless Control Message Protocol) is used for control/error report (similar to ICMP in the TCP/IP protocol suite)

Page 28: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 77

WTLS - Wireless Transport Layer Security

Goalsdata integrity

prevention of changes in dataprivacy

prevention of tappingauthentication

creation of authenticated relations between a mobile device and a server protection against denial-of-service attacks

protection against repetition of data and unverified data

WTLS is based on the TLS (Transport Layer Security) protocol (former SSL, Secure Sockets Layer)optimized for low-bandwidth communication channels

Page 29: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 78

WTP - Wireless Transaction Protocol

Goalsdifferent transaction services, offloads applications

application can select reliability, efficiencysupport of different communication scenarios

class 0: unreliable message transferclass 1: reliable message transfer without result messageclass 2: reliable message transfer with exactly one reliable result message

supports peer-to-peer, client/server and multicast applicationslow memory requirements, suited to simple devices (< 10kbyte )efficient for wireless transmission

segmentation/reassemblyselective retransmissionheader compressionoptimized connection setup (setup with data transfer)

Page 30: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 79

WTP Class 2 transaction, user ack

TR-Invoke.req(SA, SP, DA, DP, A, UD, C=2, H) Invoke PDU

TR-Invoke.ind(SA, SP, DA, DP, A, UD, C=2, H‘)

initiatorTR-SAP

responderTR-SAP

Result PDUTR-Result.ind(UD*, H)

Ack PDU

TR-Invoke.res(H‘)TR-Invoke.cnf

(H) Ack PDUTR-Result.req(UD*, H‘)

TR-Result.res(H) TR-Result.cnf

(H‘)

Page 31: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 80

WSP - Wireless Session Protocol

GoalsHTTP 1.1 functionality

Request/reply, content type negotiation, ...support of client/server, transactions, push technologykey management, authentication, Internet security servicessession management (interruption, resume,...)

Open topicsQoS supportGroup communicationIsochronous media objectsmanagement

Page 32: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 81

WAE - Wireless Application Environment

Goalsnetwork independent application environment for low-bandwidth, wireless devicesintegrated Internet/WWW programming model with high interoperability

Requirementsdevice and network independent, international supportmanufacturers can determine look-and-feel, user interfaceconsiderations of slow links, limited memory, low computing power, small display, simple user interface (compared to desktop computers)

Componentsarchitecture: application model, browser, gateway, serverWML: XML-Syntax, based on card stacks, variables, ...WMLScript: procedural, loops, conditions, ... (similar to JavaScript)WTA: telephone services, such as call control, text messages, phone book, ... (accessible from WML/WMLScript)content formats: vCard, vCalendar, Wireless Bitmap, WML, ...

Page 33: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 82

Origin Servers

WAE logical model

webserver

other contentserver

Gateway Client

otherWAE

user agents

WMLuser agent

WTAuser agent

encoders&

decoders

encodedrequest

request

encodedresponsewithcontent

responsewithcontent

pushcontent

encodedpushcontent

Page 34: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 83

Wireless Markup Language (WML)

WML follows deck and card metaphorWML document consists of many cards, cards are grouped to decksa deck is similar to an HTML page, unit of content transmissionWML describes only intent of interaction in an abstract mannerpresentation depends on device capabilities

Featurestext and imagesuser interactionnavigationcontext management

Page 35: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 84

WML – example I

<?xml version="1.0"?>

<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"

"http://www.wapforum.org/DTD/wml_1.1.xml">

<wml>

<card id="card_one" title="simple example">

<do type="accept">

<go href="#card_two"/>

</do>

<p>

This is a simple first card!

<br/>

On the next one you can choose ...

</p>

</card>

Page 36: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 85

WML – example II

<card id="card_two" title="Pizzawahl">

<do type="accept" label="cont">

<go href="#card_three"/>

</do>

<p>

... your favorite pizza!

<select value="Mar" name="PIZZA">

<option value="Mar">Margherita</option>

<option value="Fun">Funghi</option>

<option value="Vul">Vulcano</option>

</select>

</p>

</card>

<card id="card_three" title="Your Pizza!">

<p>

You personal pizza parameter is <b>$(PIZZA)</b>!

</p>

</card>

</wml>

Page 37: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 86

WMLScript

Complement to WMLProvides general scripting capabilitiesFeatures

validity check of user inputcheck input before sent to server

access to device facilitieshardware and software (phone call, address book etc.)

local user interactioninteraction without round-trip delay

extensions to the device softwareconfigure device, download new functionality after deployment

Page 38: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 87

Wireless Telephony Application (WTA)

Collection of telephony specific extensionsExtension of basic WAE application model

content pushserver can push content to the clientclient may now be able to handle unknown events

handling of network eventstable indicating how to react on certain events from the network

access to telephony functionsany application on the client may access telephony functions

Examplecalling a number (WML)wtai://wp/mc;07216086415

calling a number (WMLScript)WTAPublic.makeCall("07216086415");

Page 39: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 88

Voice box example

Service Indication

WTA-User-Agent WTA-Server Mobile network Voice box server

Generate new deck

Display deck;user selects

Call setup

Accept call

Voice connection

Indicate new voice message

Play requested voice message

Setup call

Accept call Accept call

WTA-Gateway

Push URL

Display deck;user selects WSP Get HTTP Get

Respond with contentWMLBinary WML

WSP Get HTTP GetRespond with card

for callWMLBinary WML

Wait for call

Setup call

Page 40: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 89

Push/Pull services in WAP I

Service IndicationService announcement using a pushed short messageService usage via a pullService identification via a URI

<?xml version="1.0"?>

<!DOCTYPE si PUBLIC "-//WAPFORUM//DTD SI 1.0//EN"

"http://www.wapforum.org/DTD/si.dtd">

<si>

<indication href="http://www.piiiizza4u.de/offer/salad.wml"

created="2000-02-29T17:45:32Z"

si-expires="2000-02-29T17:50:31Z">

Salad special: The 5 minute offer

</indication>

</si>

Page 41: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 90

Push/Pull services in WAP II

Service Loadingshort message pushed to a client containing a URIUser agent decides whether to use the URI via a pullTransparent for users, always looks like a push

<?xml version="1.0"?>

<!DOCTYPE sl PUBLIC "-//WAPFORUM//DTD SL 1.0//EN"

"http://www.wapforum.org/DTD/sl.dtd">

<sl

href="http://www.piiiizza4u.de/offer/salad.wml">

</sl>

Page 42: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 91

i-mode – first of all a business model!

Access to Internet services in Japan provided by NTT DoCoMoServices

Email, short messages, web, picture exchange, horoscope, ...Big success – more than 30 million users

Many use i-mode as PC replacementFor many this is the first Internet contactVery simple to use, convenient

Technology 9.6 kbit/s (enhancements with 28.8 kbit/s), packet oriented (PDC-P)Compact HTML, no security

PDC-PIP

TCPHTTP

Email CHTMLi-mode

Page 43: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 92

Email example: i-mode push with SMS

application

WSP

WTP

WDP

SMS

Operator sends an SMS containing a push message if a new email has arrived. If the user wants to read the email, an HTTP GET follows – with the email as response.

Popular misconception:WAP was a failure, i-mode is different and (thus) a success – wrong from a technology point of view, right from a business point of view…

i-mode as a business model:- content providers get >80%of the revenue.

- independent of technology(GSM/GPRS in Europe,PDC-P in Japan – but alsoUMTS!)

Page 44: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 93

i-mode protocol stack based on WAP 2.0

HTML

HTTP

WTCP

IP

L2

L1

SSL

HTML

HTTP

WTCP

IP

L2

L1

SSL

TCP

IP

L2

L1

User Equipment Gateway or Server

i-mode can use WAP protocols (example: i-mode in Germany over GSM/GPRS)

Page 45: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 94

i-mode – technical requirements

Hard or soft keyODedicated buttoni-mode button

HTTP 1.1MBrowser specifications to be notifiedUser Agent

To be defined by operatorsMCharacter code set supported by browser and used to develop contentCharacter code set supported

To be defined by operators (e.g. 500 byte, 1K byte, 10K byte)

MNumber of characters (byte) per e-mailNumber of characters per e-mail

The ID generation algorithm should be determined by each operator and has to be secret

MHashed subscriber ID from the operator’s portal to the CP transmission on each content access

Subscriber ID transmission

Specifications depend on each operator’s billing system

OPacket usage charges can be billed to third partyReverse billing

Specifications depend on each operator’s billing system

MContent charge collection on behalf of Content ProviderThird party payment collection

Specifications depend on each operator’s billing system

MPer content charge billed to userContent charge billing

3GPP standard systemMVoice termination notified and responded during i-mode communications

Voice call notification during i-mode session

GIFMStand-by screen downloadImage download

SMF basedMRinging melody downloadRinging tone download

Compatible i-mode JAVAOJava application made availableJava

SSL (Version2, 3)OEnd-End securitySecurity

HTTP 1.1MInternet e-mail and inter-terminal emailE-mail

i-mode HTMLMPortal Site / Internet AccessWEB Access

RequirementStatusDescriptionsFunctions

Page 46: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 95

i-mode examples I

Page 47: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 96

i-mode examples II

Page 48: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 97

i-mode examples III

Page 49: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 98

WAP 2.0 (July 2001)

New for developersXHTMLTCP with „Wireless Profile“ (TCP with a certain parameter setting)HTTP

New applicationsColor graphicsAnimationLarge file downloadLocation based servicesSynchronization with PIMsPop-up/context sensitive menus

Goal: integration of WWW, Internet, WAP, i-mode

Page 50: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 99

WAP 2.0 architecture

Servicediscovery

Securityservices

Appl

icat

ion

fram

ewor

kPr

otoc

ol fr

amew

ork

External services EFI

Provisioning

NeighborDiscovery

ServiceLookup

Cryptolibraries

Authenti-cation

Identification

PKI

Securetransport

Securebearer

Sess

ion

Tran

sfer

Tran

spor

tBe

arer

Multimedia Messaging (Email)

WAE/WTA User Agent (WML, XHTML)

Content formats

Push

IPv4

IPv6

CSD

SMS

USSD

FLEX

GUTS

MPAK

...

...

Datagrams(WDP, UDP)

Connections(TCP with

wireless profile)

Hypermedia transfer (WTP+WSP, HTTP)

Strea-ming MMS

PushOTA

Capability Negotiation

Synchronization Cookies

Page 51: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 100

Java 2 Platform Micro Edition

„Java-Boom expected“ (?)Desktop: over 90% standard PC architecture, Intel x86 compatible, typically MS Windows systemsDo really many people care about platform independent applications?

BUT: Heterogeneous, “small“ devicesInternet appliances, cellular phones, embedded control, car radios, ...Technical necessities (temperature range, form factor, power consumption, …) and economic reasons result in different hardware

J2MEProvides a uniform platformRestricted functionality compared to standard java platform (JVM)

Page 52: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 101

Applications of J2ME

Example cellular phonesNTT DoCoMo introduced iαppliApplications on PDA, mobile phone, ...Game download, multimedia applications, encryption, system updatesLoad additional functionality with a push on a button (and pay for it)!

Embedded controlHousehold devices, vehicles, surveillance systems, device controlSystem update is an important factor

Page 53: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 102

Characteristics and architecture

Java Virtual MachineVirtual Hardware (Processor)KVM (K Virtual Machine)

Min. 128 kByte, typ. 256 kByteOptimized for low performance devicesMight be a co-processor

ConfigurationsSubset of standard Java libraries depending technical hardware parameters (memory, CPU)CLDC (Connected Limited Device Configuration)

Basic libraries, input/output, security – describes Java support for mobile devices

ProfilesInteroperability of heterogeneous devices belonging to the same categoryMIDP (Mobile Information Device Profile)

Defines interfaces for GUIs, HTTP, application support, …

Hardware(SH4, ARM, 68k, ...)

Java Virtual Machine(JVM, KVM)

Operating system(EPOC, Palm, WinCE)

Configurations(CDC, CLDC)

Profile(MIDP)

Applications

Page 54: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 103

Hardware independent development

Page 55: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 104

Summary J2ME

Idea is more than WAP 1.x or i-modeFull applications on mobile phones, not only a browserIncludes system updates, end-to-end encryption

Platform independent via virtualizationAs long as certain common interfaces are usedNot valid for hardware specific functions

Limited functionality compared to JVMThus, maybe an intermediate solution only – until embedded systems, mobile phones are as powerful as today’s desktop systems

Page 56: Part II: Mobility Support - TU Braunschweig · 2002. 6. 25. · Prof. Dr.-Ing. Jochen Schiller, ... Mobile Computing Part II: Mobility Support Prof. Dr.-Ing. Jochen Schiller FU Berlin,

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 105

Questions?

Mobile IP

WAP

i-mode

Or:

.NET, CLR, …OS for mobile devices…