Академический Документы
Профессиональный Документы
Культура Документы
Execution Environments
Java, i-ppli, .NET
KuVS-Summer-School 50
KuVS-Summer-School
51
Compatibility
support of the same layer 2 protocols as IP no changes to current end-systems and routers required mobile end-systems can communicate with fixed systems
Security
authentication of all registration messages
Terminology
Mobile Node (MN)
system (node) that can change the point of connection to the network without changing its IP address
Example network
HA MN
router home network (physical home network for the MN) router (current physical network for the MN) Internet
mobile end-system
FA foreign
network
CN
end-system router
KuVS-Summer-School
54
MN
3
FA
CN
sender
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
KuVS-Summer-School 55
MN
sender
FA
foreign network
CN
receiver
1. Sender sends to the IP address of the receiver as usual, FA works as default router
KuVS-Summer-School
56
Network integration
Agent Advertisement
HA and FA periodically send advertisement messages into their physical subnets MN 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
Advertisement
HA advertises the IP address of the MN (as for fixed systems), i.e. standard routing information routers 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
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 57
Encapsulation
original IP header
original data
KuVS-Summer-School
58
Encapsulation
Encapsulation of one packet into another as payload
e.g. IPv6 in IPv4 (6Bone), Multicast in Unicast (Mbone) here: e.g. IP-in-IP-encapsulation, minimal encapsulation or GRE (Generic Record Encapsulation)
KuVS-Summer-School
59
Solutions
sender learns the current location of MN direct tunneling to this location HA informs a sender about the location of MN big security problems!
Change of FA
packets on-the-fly during the change can be lost new FA informs old FA to avoid packet loss, old FA now forwards remaining packets to new FA this information also enables the old FA to release resources for the MN
KuVS-Summer-School
60
MN changes location
Data
Data
t
61
KuVS-Summer-School
MN
sender
FA foreign
network
CN
receiver
1. MN sends to FA 2. FA tunnels packets to HA by encapsulation 3. HA forwards the packet to the receiver (standard case)
KuVS-Summer-School 62
KuVS-Summer-School
63
KuVS-Summer-School
64
Firewalls
typically mobile IP cannot be used together with firewalls, special set-ups are needed (such as reverse tunneling)
QoS
many 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 and discussions!
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 65
Mobile Router Manet Mobile Devices Mobile IP, DHCP Fixed Network Router End system
KuVS-Summer-School
66
KuVS-Summer-School
67
Problems
designed for large bandwidth (compared to wireless access) and low delay big and redundant protocol headers (readable for humans, stateless, therefore big headers in ASCII) uncompressed content transfer using standard TCP
huge overhead per request (3-way-handshake) compared with the content, e.g., of a GET request slow-start problematic
today: many user customized pages, dynamically generated on request via CGI, ASP, ...
Mobile devices
often 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, highresolution and many plug-ins
HTTP/1.1
client/server use the same connection for several request/response transactions multiple requests at beginning of session, several responses in same order enhanced 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 user encoding/compression mechanism, integrity check, security of proxies, authentication, authorization...
Platforms
e.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.org now: Open Mobile Alliance www.openmobilealliance.org (Open Mobile Architecture + WAP Forum + SyncML + )
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 72
Script language
similar to Java script, adapted to the mobile environment
WTA/WTAI
Wireless Telephony Application (Interface): access to all telephone functions
Content formats
e.g., business cards (vCard), calendar events (vCalender)
Protocol layers
transport layer, security layer, session layer etc.
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 73
HTTP
WCMP
WAE comprises WML (Wireless Markup Language), WML Script, WTAI etc.
KuVS-Summer-School
74
Binary WML
Goals of WDP
create a worldwide interoperable transport system with the help of WDP adapted to the different underlying technologies transmission services such as SMS, GPRS in GSM might change, new services 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)
KuVS-Summer-School
76
privacy
prevention of tapping
authentication
creation of authenticated relations between a mobile device and a server
WTLS
is based on the TLS (Transport Layer Security) protocol (former SSL, Secure Sockets Layer) optimized for low-bandwidth communication channels
KuVS-Summer-School
77
supports peer-to-peer, client/server and multicast applications low memory requirements, suited to simple devices (< 10kbyte ) efficient for wireless transmission
segmentation/reassembly selective retransmission header compression optimized connection setup (setup with data transfer)
KuVS-Summer-School
78
responder TR-SAP TR-Invoke.ind (SA, SP, DA, DP, A, UD, C=2, H) TR-Invoke.res (H) TR-Result.req (UD*, H)
PDU
U Ack PD DU esult P R
Ack PD U
TR-Result.cnf (H)
KuVS-Summer-School
79
support of client/server, transactions, push technology key management, authentication, Internet security services session management (interruption, resume,...)
Open topics
QoS support Group communication Isochronous media objects management
KuVS-Summer-School
80
Requirements
device and network independent, international support manufacturers can determine look-and-feel, user interface considerations of slow links, limited memory, low computing power, small display, simple user interface (compared to desktop computers)
Components
architecture: application model, browser, gateway, server WML: 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, ...
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 81
push content
request
encoded request
KuVS-Summer-School
82
Features
text and images user interaction navigation context management
KuVS-Summer-School
83
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>
KuVS-Summer-School
84
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>
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/ KuVS-Summer-School 85
WMLScript
Complement to WML Provides general scripting capabilities Features
validity check of user input
check input before sent to server
KuVS-Summer-School
86
Example
calling a number (WML) wtai://wp/mc;07216086415 calling a number (WMLScript) WTAPublic.makeCall("07216086415");
KuVS-Summer-School
87
HTTP Get WML Respond with card for call Play requested voice message Call setup Setup call Setup call
Accept call
Accept call
KuVS-Summer-School
88
KuVS-Summer-School
90
Technology
9.6 kbit/s (enhancements with 28.8 kbit/s), packet oriented (PDC-P) Compact HTML, no security i-mode Email CHTML HTTP TCP IP PDC-P
KuVS-Summer-School
91
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
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.
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 also UMTS!)
KuVS-Summer-School
92
HTML
HTML HTTP
Gateway or Server
i-mode can use WAP protocols (example: i-mode in Germany over GSM/GPRS)
KuVS-Summer-School
93
Number of characters per email Character code set supported User Agent i-mode button
M M M O
KuVS-Summer-School
94
i-mode examples I
KuVS-Summer-School
95
i-mode examples II
KuVS-Summer-School
96
KuVS-Summer-School
97
New applications
Color graphics Animation Large file download Location based services Synchronization with PIMs Pop-up/context sensitive menus
KuVS-Summer-School
98
Service discovery
External services EFI Provisioning Neighbor Discovery Service Lookup
Security services
Crypto libraries Authentication Identification
PKI
Streaming
Secure transport
Secure bearer
IPv4
CSD
IPv6
SMS
FLEX
KuVS-Summer-School
Protocol framework 99
Transfer
J2ME
Provides a uniform platform Restricted functionality compared to standard java platform (JVM)
KuVS-Summer-School
100
Applications of J2ME
Example cellular phones
NTT DoCoMo introduced ippli Applications on PDA, mobile phone, ... Game download, multimedia applications, encryption, system updates Load additional functionality with a push on a button (and pay for it)!
Embedded control
Household devices, vehicles, surveillance systems, device control System update is an important factor
KuVS-Summer-School
101
Applications Profile (MIDP) Configurations (CDC, CLDC) Java Virtual Machine (JVM, KVM) Operating system (EPOC, Palm, WinCE) Hardware (SH4, ARM, 68k, ...)
Configurations
Subset 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
Profiles
Interoperability of heterogeneous devices belonging to the same category MIDP (Mobile Information Device Profile)
Defines interfaces for GUIs, HTTP, application support,
KuVS-Summer-School
102
KuVS-Summer-School
103
Summary J2ME
Idea is more than WAP 1.x or i-mode
Full applications on mobile phones, not only a browser Includes system updates, end-to-end encryption
KuVS-Summer-School
104
Questions?
Mobile IP WAP i-mode Or: .NET, CLR, OS for mobile devices
KuVS-Summer-School
105