SlideShare ist ein Scribd-Unternehmen logo
1 von 80
Mobile Communications Chapter
        10: Support for Mobility
         File systems
         Data bases
         WWW and Mobility
         WAP (Wireless Application Protocol), i-mode & Co.




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
File systems - Motivation

Goal
      efficient and transparent access to shared files within a mobile environment
       while maintaining data consistency
Problems
      limited resources of mobile computers (memory, CPU, ...)
      low bandwidth, variable bandwidth, temporary disconnection
      high heterogeneity of hardware and software components (no standard PC
       architecture)
      wireless network resources and mobile computer are not very reliable
      standard file systems (e.g., NFS, network file system) are very inefficient,
       almost unusable
Solutions
    replication of data (copying, cloning, caching)
    data collection in advance (hoarding, pre-fetching)




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
File systems - consistency problems

THE big problem of distributed, loosely coupled systems
     are all views on data the same?
     how and when should changes be propagated to what users?

Weak consistency
     many algorithms offering strong consistency (e.g., via atomic updates)
      cannot be used in mobile environments
     invalidation of data located in caches through a server is very problematic if
      the mobile computer is currently not connected to the network
     occasional inconsistencies have to be tolerated, but conflict resolution
      strategies must be applied afterwards to reach consistency again
Conflict detection
     content independent: version numbering, time-stamps
     content dependent: dependency graphs




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
File systems for limited connectivity I

Symmetry
    Client/Server or Peer-to-Peer relations
    support in the fixed network and/or mobile computers
    one file system or several file systems
    one namespace for files or several namespaces

Transparency
    hide the mobility support, applications on mobile computers should not
     notice the mobility
    user should not notice additional mechanisms needed

Consistency model
      optimistic or pessimistic
Caching and Pre-fetching
    single files, directories, subtrees, partitions, ...
    permanent or only at certain points in time




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
File systems for limited connectivity II

Data management
     management of buffered data and copies of data
     request for updates, validity of data
     detection of changes in data

Conflict solving
     application specific or general
     errors



Several experimental systems exist
       Coda (Carnegie Mellon University), Little Work (University of Michigan),
        Ficus (UCLA) etc.


Many systems use ideas from distributed file systems such as, e.g., AFS
  (Andrew File System)



Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
File systems - Coda I

Application transparent extensions of client and server
     changes in the cache manager of a client
     applications use cache replicates of files
     extensive, transparent collection of data in advance for possible future use
      („Hoarding“)
Consistency
     system keeps a record of changes in files and compares files after
      reconnection
     if different users have changed the same file a manual reintegration of the
      file into the system is necessary
     optimistic approach, coarse grained (file size)


          mobile client

            application         cache                        server




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
File systems - Coda II

                                                 States of a client
 Hoarding
      user can pre-determine a file list with
       priorities
      contents of the cache determined by                  hoarding
                                                                               strong
       the list and LRU strategy (Last
                                                                               connection
       Recently Used)                                             weak
      explicit pre-fetching possible             disconnection   connection
      periodic updating                                                           write
 Comparison of files                                                           disconnected
                                                                  connection
      asynchronous, background
      system weighs speed of updating
                                                                               disconnection
       against minimization of network
       traffic                                              emulating
 Cache misses
      modeling of user patience: how long
       can a user wait for data without an
       error message?
      function of file size and bandwidth


Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
File systems - Little Work

   Only changes in the cache manager of the client
   Connection modes and use

                  Connected    Partially       Fetch only             Disconnected
                               Connected
     Method       normal       delayed write   optimistic             abort at cache
                               to the server   replication of files   miss
     Network      continuous   continuous      connection on          none
     requirements high         bandwidth       demand
                  bandwidth
     Application  office, WLAN packet radio    cellular systems       independent
                                               (e.g., GSM) with
                                               costs per call




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
File systems - further examples

   Mazer/Tardo
       file synchronization layer between application and local file system
       caching of complete subdirectories from the server
       “Redirector” responses to requests locally if necessary, via the
        network if possible
       periodic consistency checks with bi-directional updating

   Ficus
       not a client/server approach
       optimistic approach based on replicates, detection of write conflicts,
        conflict resolution
       use of „gossip“ protocols: a mobile computer does not necessarily
        need to have direct connection to a server, with the help of other
        mobile computers updates can be propagated through the network
   MIo-NFS (Mobile Integration of NFS)
       NFS extension, pessimistic approach, only token holder can write
       connected/loosely connected/disconnected


Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Database systems in mobile environments
   Request processing
       power conserving, location dependent, cost efficient
       example: find the fastest way to a hospital

   Replication management
         similar to file systems
   Location management
       tracking of mobile users to provide replicated or location dependent
        data in time at the right place (minimize access delays)
       example: with the help of the HLR (Home Location Register) in
        GSM a mobile user can find a local towing service
   Transaction processing
       “mobile” transactions can not necessarily rely on the same models
        as transactions over fixed networks (ACID: atomicity, consistency,
        isolation, durability)
       therefore models for “weak” transaction




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
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 sizes
       HTTP request: 100-350 byte
       responses avg. <10 kbyte, header 160 byte, GIF 4.1kByte, JPEG
        12.8 kbyte, HTML 5.6 kbyte
       but also many large files that cannot be ignored

   The Web is no file system
       Web pages are not simple files to download
       static 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!




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WWW example
   Request to port 80:   GET / HTTP/1.0
   or:                   GET / HTTP/1.1
                         Host: www.inf.fu-berlin.de
   Response from server
   HTTP/1.1 200 OK                                                  non persistent
   Date: Wed, 30 Oct 2002 19:44:26 GMT
   Server: Apache/1.3.12 (Unix) mod_perl/1.24
   Last-Modified: Wed, 30 Oct 2002 13:16:31 GMT
   ETag: "2d8190-2322-3dbfdbaf"
   Accept-Ranges: bytes
   Content-Length: 8994
   Connection: close
   Content-Type: text/html

   <DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
   <html>
     <head>
       <title>FU-Berlin: Institut f&uuml;r Informatik</TITLE>
       <base href="http://www.inf.fu-berlin.de">
       <link rel="stylesheet" type="text/css" href="http://www.inf.fu-
       berlin.de/styles/homepage.css">
       <!--script language="JavaScript" src="fuinf.js"-->
       <!--/script-->
     </head>

     <body onResize="self.location.reload();">
   ...




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
HTTP 1.0 and mobility I

   Characteristics
        stateless, client/server, request/response
        needs a connection oriented protocol (TCP), one connection per
         request (some enhancements in HTTP 1.1)
        primitive caching and security

   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 TCP
             huge overhead per request (3-way-handshake) compared with the
              content, e.g., of a GET request
             slow-start problematic
          DNS lookup by client causes additional traffic


Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
HTTP 1.0 and mobility II

Caching
     quite 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 caches
     security 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!


Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
HTML and mobile devices
   HTML
        designed for computers with “high” performance, color high-
         resolution display, mouse, hard disk
        typically, web pages optimized for design, not for communication

   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, 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

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Approaches toward WWW for mobile devices
   Application gateways, enhanced servers
       simple clients, pre-calculations in the fixed network
       compression, filtering, content extraction
       automatic adaptation to network characteristics

   Examples
         picture scaling, color reduction, transformation of the document
          format (e.g., PS to TXT)
         detail studies, clipping, zoom
         headline extraction, automatic abstract generation
         HDML (handheld device markup language): simple language
          similar to HTML requiring a special browser
         HDTP (handheld device transport protocol): transport protocol for
          HDML, developed by Unwired Planet
   Problems
       proprietary approaches, require special enhancements for browsers
       heterogeneous devices make approaches more complicated


Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Some new issues that might help mobility?

      Push technology
           real pushing, not a client pull needed, channels etc.
      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...
      Cookies: well..., stateful sessions, not really integrated...

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
System support for WWW in a mobile world I

Enhanced browsers                          mobile client
    Pre-fetching, caching, off-line use                          integrated
                                                                 enhancement
    e.g. Internet Explorer
                                                    browser


                                                                       web
                                                                      server
Additional, accompanying application
    Pre-fetching, caching, off-line use         mobile client
    e.g. original WebWhacker

                                                     browser
                                                                    additional
                                                                    application



                                                            web
                                                           server


Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
System support for WWW in a mobile world II

Client Proxy                                  mobile client
     Pre-fetching, caching, off-line use
     e.g., Caubweb, TeleWeb, Weblicator,         browser
                                                                client
      WebWhacker, WebEx, WebMirror,                             proxy
      ...

                                                       web
                                                      server
Network Proxy
                                               mobile client
     adaptive content transformation
      for bad connections, pre-fetching,
      caching                                         browser
     e.g., TranSend, Digestor
                                                                network
                                                                 proxy
                                              web
                                             server



Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
System support for WWW in a mobile world III

Client and network proxy                       mobile client
     combination of benefits plus                              client
      simplified protocols                        browser
                                                                proxy
     e.g., MobiScape, WebExpress


                                                    web        network
                                                   server       proxy
Special network subsystem
     adaptive content transformation
                                               mobile client
      for bad connections, pre-fetching,
      caching                                                   client
                                                  browser
     e.g., Mowgli                                              proxy


Additional many proprietary server                  web        network
  extensions possible                              server       proxy
       “channels”, content negotiation, ...


Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WAP - Wireless Application Protocol

   Goals
       deliver Internet content and enhanced services to mobile devices
        and users (mobile phones, PDAs)
       independence from wireless network standards
       open for everyone to participate, protocol specifications will be
        proposed to standardization bodies
       applications should scale well beyond current transport media and
        device types and should also be applicable to future developments
   Platforms
          e.g., GSM (900, 1800, 1900), CDMA IS-95, TDMA IS-136, 3rd
           generation systems (IMT-2000, UMTS, W-CDMA, cdma2000 1x
           EV-DO, …)
   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/
WAP - scope of standardization
   Browser
          “micro browser”, similar to existing, well-known browsers in the
           Internet

   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/
WAP 1.x - reference model and protocols

   Internet          A-SAP     WAP

  HTML, Java       Application Layer (WAE)             additional services
                                                       and applications
                     S-SAP
                        Session Layer (WSP)
     HTTP            TR-SAP
                          Transaction Layer (WTP)
                    SEC-SAP
    SSL/TLS                    Security Layer (WTLS)
                      T-SAP

    TCP/IP,                        Transport Layer (WDP)            WCMP
    UDP/IP,
     media                       Bearers (GSM, CDPD, ...)

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



Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WAP - network elements


               fixed network                              wireless network


 Internet      HTML               WML    WAP       Binary WML
                         filter          proxy


      HTML                        WML
                  HTML
                                         filter/       Binary WML
                                         WAP
       web                        HTML   proxy
      server


                                          WTA      Binary WML
                                         server
                  PSTN


                                     Binary WML: binary file format for clients


Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WDP - Wireless Datagram Protocol

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


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)


Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WDP - Service Primitives




                              T-SAP     T-SAP
            T-DUnitdata.req
            (DA, DP, SA, SP, UD)            T-DUnitdata.ind
                                            (SA, SP, UD)
            T-DUnitdata.req
            (DA, DP, SA, SP, UD)
            T-DError.ind
            (EC)




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Usage of WDP

                                        Wireless Data Gateway
                    WTLS
                    WTLS                                                   WTLS
                                                                           WTLS
GSM-SMS            WDP &
                   WDP &                                                  WDP &
                                                                          WDP &
                  Adaptation
                  Adaptation                                             Adaptation
                                                                         Adaptation
                    SMS
                     SMS                  SMS
                                          SMS             Tunnel
                                                          Tunnel          Tunnel
                                                                           Tunnel
                                                     Subnetwork
                                                     Subnetwork          Subnetwork
                                                                         Subnetwork


                                                                           WAP
GSM-CSD                                                                    Proxy

          WTLS
          WTLS                                                             WTLS
                                                                           WTLS
                                             Internet Service Provider
          UDP
          UDP                                 Remote Access Service         UDP
                                                                            UDP
           IP
            IP           Interworking                     IP
                                                           IP                IP
                                                                              IP
          PPP              Function              PPP
          PPP                                    PPP
                                PSTN            PSTN        Subnetwork
                                                            Subnetwork   Subnetwork
                                                                         Subnetwork
         CSD-RF       CSD-RF    PSTN            PSTN
         CSD-RF       CSD-RF    Circuit         Circuit
                                Circuit         Circuit


Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WTLS - Wireless Transport Layer Security

Goals
       data integrity
            prevention of changes in data
       privacy
            prevention of tapping
       authentication
            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




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Secure session, full handshake
                            originator     peer
                            SEC-SAP      SEC-SAP
  SEC-Create.req
  (SA, SP, DA, DP, KES, CS, CM)
                                             SEC-Create.ind
                                             (SA, SP, DA, DP, KES, CS, CM)
                                             SEC-Create.res
                                             (SNM, KR, SID, KES‘, CS‘, CM‘)
  SEC-Create.cnf                             SEC-Exchange.req
  (SNM, KR, SID, KES‘, CS‘, CM‘)
  SEC-Exchange.ind
  SEC-Exchange.res
  (CC)
  SEC-Commit.req                             SEC-Exchange.cnf
                                             (CC)
                                             SEC-Commit.ind
  SEC-Commit.cnf



Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
SEC-Unitdata - transferring datagrams




                        sender      receiver
                       SEC-SAP     SEC-SAP
SEC-Unitdata.req
(SA, SP, DA, DP, UD)                    SEC-Unitdata.ind
                                        (SA, SP, DA, DP, UD)




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WTP - Wireless Transaction Protocol

Goals
       different transaction services, offloads applications
            application can select reliability, efficiency
       support of different communication scenarios
          class 0: unreliable message transfer
          class 1: reliable message transfer without result message
          class 2: reliable message transfer with exactly one reliable result message
     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)




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Details of WTP I

Support of different communication scenarios
       Class 0: unreliable message transfer
            Example: push service
       Class 1: reliable request
          An invoke message is not followed by a result message
          Example: reliable push service

       Class 2: reliable request/response
          An invoke message is followed by exactly one result message
          With and without ACK
          Example: typical web browsing




No explicit connection setup or release is available
Services for higher layers are called events



Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Details of WTP II

Used Mechanisms
      Reliability
         Unique transaction identifiers (TID)
         Acknowledgements
         Selective retransmission
         Duplicate removal
      Optional: concatenation & separation of messages
      Optional: segmentation & reassembly of messages
      Asynchronous transactions
      Transaction abort, error handling
      Optimized connection setup (includes data transmission)




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WTP Class 0 transaction




                           initiator          responder
                           TR-SAP              TR-SAP
TR-Invoke.req
(SA, SP, DA, DP, A, UD, C=0, H)                    TR-Invoke.ind
                                   Invoke
                                          P   DU   (SA, SP, DA, DP, A, UD, C=0, H‘)




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WTP Class 1 transaction, no user ack & user ack
                             initiator          responder
                             TR-SAP              TR-SAP
  TR-Invoke.req
  (SA, SP, DA, DP, A, UD, C=1, H)                     TR-Invoke.ind
                                     Invoke
                                            P   DU    (SA, SP, DA, DP, A, UD, C=1, H‘)
  TR-Invoke.cnf                                 U
  (H)                                    Ack PD


                             initiator          responder
                             TR-SAP              TR-SAP
  TR-Invoke.req
  (SA, SP, DA, DP, A, UD, C=1, H)                     TR-Invoke.ind
                                     Invoke
                                            P   DU    (SA, SP, DA, DP, A, UD, C=1, H‘)
                                                      TR-Invoke.res
                                                      (H‘)
  TR-Invoke.cnf                                   U
  (H)                                    Ack PD




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WTP Class 2 transaction, no user ack, no hold on

                            initiator            responder
                            TR-SAP                TR-SAP
 TR-Invoke.req
 (SA, SP, DA, DP, A, UD, C=2, H)                      TR-Invoke.ind
                                    Invoke
                                           P   DU     (SA, SP, DA, DP, A, UD, C=2, H‘)
                                                      TR-Result.req
                                                      (UD*, H‘)
 TR-Invoke.cnf                             PDU
 (H)                                Result

 TR-Result.ind
 (UD*, H)
 TR-Result.res
 (H)
                                    Ack PD            TR-Result.cnf
                                             U
                                                      (H‘)




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WTP Class 2 transaction, user ack

                            initiator            responder
                            TR-SAP                TR-SAP
 TR-Invoke.req
 (SA, SP, DA, DP, A, UD, C=2, H)                      TR-Invoke.ind
                                    Invoke
                                           P   DU     (SA, SP, DA, DP, A, UD, C=2, H‘)
                                                      TR-Invoke.res
                                                      (H‘)
 TR-Invoke.cnf                             U
 (H)                                Ack PD            TR-Result.req
                                                      (UD*, H‘)
 TR-Result.ind                             PDU
 (UD*, H)                           Result

 TR-Result.res
 (H)
                                    Ack PD            TR-Result.cnf
                                             U
                                                      (H‘)




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WTP Class 2 transaction, hold on, no user ack


                             initiator            responder
                             TR-SAP                TR-SAP
  TR-Invoke.req
  (SA, SP, DA, DP, A, UD, C=2, H)                      TR-Invoke.ind
                                     Invoke
                                            P   DU     (SA, SP, DA, DP, A, UD, C=2, H‘)
  TR-Invoke.cnf                               U
  (H)                                Ack PD            TR-Result.req
                                                       (UD*, H‘)
  TR-Result.ind                             PDU
                                     Result
  (UD*, H)
  TR-Result.res
  (H)
                                     Ack PD            TR-Result.cnf
                                              U
                                                       (H‘)




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WSP - Wireless Session Protocol

   Goals
          HTTP 1.1 functionality
               Request/reply, content type negotiation, ...
       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




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WSP protocols


                                     WSP


       Connection mode                      Connectionless mode
         (uses WTP)                         (uses WDP or WTLS)


 • Session Management (class 0, 2)         • Method Invocation
 • Method Invocation (Kl. 2)               • Push
 • Error Report                            (in general unreliable)
 • Push (class 0)
 • Confirmed Push (class 1)
 • Session suspend/resume (class 0, 2)



Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WSP/B session establishment


                         client            server
                         S-SAP             S-SAP
  S-Connect.req
  (SA, CA, CH, RC)           Conne              S-Connect.ind
                                  ct P   DU
                                                (SA, CA, CH, RC)
                                                S-Connect.res
                                                (SH, NC)
  S-Connect.cnf                    ply P   DU
  (SH, NC)                  ConnRe


                              WTP Class 2
                              transaction




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WSP/B session suspend/resume

                         client           server
                         S-SAP            S-SAP

  S-Suspend.req               Suspe          S-Suspend.ind
                                   nd PD
                                         U   (R)
  S-Suspend.ind
  (R)                         WTP Class 0
                              transaction

  S-Resume.req
  (SA, CA)
                          ~                  ~
                              Resum          S-Resume.ind
                                    e PDU
                                             (SA, CA)
                                             S-Resume.res
                                    PDU
  S-Resume.cnf                Reply

                              WTP Class 2
                              transaction




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WSP/B session termination




                         client         server
                         S-SAP          S-SAP
  S-Disconnect.req
  (R)                       Discon          S-Disconnect.ind
                                  nect P
  S-Disconnect.ind                       DU (R)
  (R)                         WTP Class 0
                              transaction




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WSP/B method invoke
                         client             server
                         S-SAP              S-SAP
  S-MethodInvoke.req
  (CTID, M, RU)              Metho             S-MethodInvoke.ind
                                  d   PDU
                                               (STID, M, RU)
                                               S-MethodInvoke.res
                                               (STID)
  S-MethodInvoke.cnf
  (CTID)                                       S-MethodResult.req
                                               (STID, S, RH, RB)
  S-MethodResult.ind                    PDU
  (CTID, S, RH, RB)               Reply

  S-MethodResult.res
  (CTID)                                       S-MethodResult.cnf
                                               (STID)

                              WTP Class 2
                              transaction




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WSP/B over WTP - method invocation


                client        initiator           responder     server
                S-SAP         TR-SAP               TR-SAP       S-SAP

S-MethodInvoke.req TR-Invoke.req Invo
                                     ke(Me
                                          thod) TR-Invoke.ind S-MethodInvoke.ind


                                                      TR-Invoke.res S-MethodInvoke.res
                                              U
S-MethodInvoke.cnf TR-Invoke.cnf     Ack PD
                                                      TR-Result.req S-MethodResult.req
                                           eply)
S-MethodResult.ind   TR-Result.ind Result(R


S-MethodResult.res   TR-Result.res   Ack PD
                                              U
                                                      TR-Result.cnf S-MethodResult.cnf




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WSP/B over WTP - asynchronous, unordered requests
                         client       server
                         S-SAP        S-SAP
  S-MethodInvoke_1.req
  S-MethodInvoke_2.req
                                         S-MethodInvoke_2.ind
                                         S-MethodInvoke_1.ind
  S-MethodInvoke_3.req                   S-MethodResult_1.req
                                         S-MethodInvoke_3.ind
  S-MethodResult_1.ind
                                         S-MethodResult_3.req
  S-MethodResult_3.ind
                                         S-MethodResult_2.req
  S-MethodInvoke_4.req
                                         S-MethodInvoke_4.ind
  S-MethodResult_4.ind                   S-MethodResult_4.req

  S-MethodResult_2.ind




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WSP/B - confirmend/non-confirmed push
                         client          server
                         S-SAP           S-SAP
                                             S-Push.req
                                             (PH, PB)
  S-Push.ind                        DU
  (PH, PB)                    Push P

                              WTP Class 0
                              transaction

                         client         server
                         S-SAP          S-SAP
                                            S-ConfirmedPush.req
                                            (SPID, PH, PB)
  S-ConfirmedPush.ind             ush PDU
  (CPID, PH, PB)             ConfP

  S-ConfirmedPush.res
  (CPID)                                    S-ConfirmedPush.cnf
                                            (SPID)
                              WTP Class 1
                              transaction


Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WSP/B over WDP


                             client             server
  S-Unit-MethodInvoke.req    S-SAP              S-SAP
  (SA, CA, TID, M, RU)            Metho            S-Unit-MethodInvoke.ind
                                       d   PDU
                                                   (SA, CA, TID, M, RU)
                                                   S-Unit-MethodResult.req
                                                   (CA, SA, TID, S, RH, RB)
  S-Unit-MethodResult.ind                   PDU
  (CA, SA, TID, S, RH, RB)            Reply
                                                   S-Unit-Push.req
                                                   (CA, SA, PID, PH, PB)
  S-Unit-Push.ind                       D   U
  (CA, SA, PID, PH, PB)           Push P

                                  WDP Unitdata
                                  service




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WAE - Wireless Application Environment
 Goals
      network independent application environment for low-bandwidth, wireless
       devices
      integrated Internet/WWW programming model with high interoperability

 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/
WAE logical model


     Origin Servers                Gateway                 Client


                        response              encoded      WTA
             web
                        with                  response   user agent
            server
                        content               with
                                   encoders
                                              content
                                      &
                                   decoders                WML
        other content
                                                         user agent
           server       push                  encoded
                        content               push
                                              content
                                                            other
                                                            WAE
                                                         user agents
                        request               encoded
                                              request




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Wireless Markup Language (WML)

WML follows deck and card metaphor
    WML document consists of many cards, cards are grouped to decks
    a deck is similar to an HTML page, unit of content transmission
    WML describes only intent of interaction in an abstract manner
    presentation depends on device capabilities



Features
    text and images
    user interaction
    navigation
    context management




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
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>




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WML – example II
<card id="card_two" title="Pizza selection">
        <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>
        Your personal pizza parameter is <b>$(PIZZA)</b>!
        </p>
    </card>
</wml>


Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WMLScript

Complement to WML

Provides general scripting capabilities

Features
       validity check of user input
            check input before sent to server
       access to device facilities
            hardware and software (phone call, address book etc.)
       local user interaction
            interaction without round-trip delay
       extensions to the device software
            configure device, download new functionality after deployment




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WMLScript - example

function pizza_test(pizza_type) {
   var taste = "unknown";
   if (pizza_type = "Margherita") {
        taste = "well... ";
   }
   else {
        if (pizza_type = "Vulcano") {
                taste = "quite hot";
        };
   };
   return taste;
};




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Wireless Telephony Application (WTA)

Collection of telephony specific extensions
Extension of basic WAE application model
       content push
          server can push content to the client
          client may now be able to handle unknown events
       handling of network events
            table indicating how to react on certain events from the network
       access to telephony functions
            any application on the client may access telephony functions
Example
     calling a number (WML)
      wtai://wp/mc;07216086415
     calling a number (WMLScript)
      WTAPublic.makeCall("07216086415");




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WTA logical architecture
                                         other telephone networks
             WTA server
                                                                      client
       WML
      scripts                                    mobile               WTA
                    WTA & WML                    network            user agent
                      server
     WML
     decks
                                             WAP gateway            repository
                     WTA
                    services
                                                encoders
                                                   &                  device
     network operator                           decoders             specific
     trusted domain             other                               functions
                               servers

      third party
                                                 firewall
        servers



Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Voice box example

WTA-User-Agent             WTA-Gateway          WTA-Server          Mobile network           Voice box server
                                                     Indicate new voice message

                                               Generate new deck
      Service Indication          Push URL
 Display deck;
 user selects
                 WSP Get         HTTP Get

                                              Respond with content
          Binary WML              WML

 Display deck;
 user selects
                 WSP Get          HTTP Get
                                               Respond with card
                                  WML               for call
          Binary WML
                                                        Play requested voice message
 Wait for call
                                                                                           Call setup
                                                                              Setup call
                                     Setup call
  Accept call
                                Accept call                                    Accept call
                                                       Voice connection




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WTAI - example with WML only

<?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="Tele voting">
        <do type="accept">
             <go href="#card_two"/>
        </do>
        <p> Please choose your candidate! </p>
    </card>
    <card id="card_two" title="Your selection">
        <do type="accept">
             <go href="wtai://wp/mc;$dialno"/>
        </do>
        <p> Your selection:
        <select name="dialno">
             <option value="01376685">Mickey</option>
             <option value="01376686">Donald</option>
             <option value="01376687">Pluto</option>
        </select>
        </p>
    </card>
</wml>




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WTAI - example with WML and WMLScript I

function voteCall(Nr) {
   var j = WTACallControl.setup(Nr,1);
   if (j>=0) {
        WMLBrowser.setVar("Message", "Called");
        WMLBrowser.setVar("No", Nr);
   }
   else {
        WMLBrowser.setVar("Message", "Error!");
        WMLBrowser.setVar("No", j);
   }
   WMLBrowser.go("showResult");
}




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WTAI - example with WML and WMLScript II
<?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="Tele voting">
        <do type="accept"> <go href="#card_two"/> </do>
        <p> Please choose your candidate! </p>
    </card>
    <card id="card_two" title="Your selection">
        <do type="accept">
            <go href="/myscripts#voteCall($dialno)"/> </do>
        <p> Your selection:
        <select name="dialno">
            <option value="01376685">Mickey</option>
            <option value="01376686">Donald</option>
            <option value="01376687">Pluto</option>
        </select> </p>
    </card>
    <card id="showResult" title="Result">
        <p> Status: $Message $No </p>
    </card>
</wml>

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WAP push architecture with proxy gateway

Push Access Protocol
    Content transmission between server and PPG
    First version uses HTTP

Push OTA (Over The Air) Protocol
    Simple, optimized
    Mapped onto WSP



                               Push Proxy     Push
                 Push OTA       Gateway       Access
       Client                                            Push Initiator
                 Protocol                     Protocol


   User Agents                                               Server
                                    Coding,
                                                           application
                                   checking




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Push/Pull services in WAP I

Service Indication
     Service announcement using a pushed short message
     Service usage via a pull
     Service 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="2002-10-30T17:45:32Z"
      si-expires="2000-10-30T17:50:31Z">
      Salad special: The 5 minute offer
  </indication>
</si>

Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Push/Pull services in WAP II

Service Loading
    short message pushed to a client containing a URI
    User agent decides whether to use the URI via a pull
    Transparent 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>




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Examples for WAP protocol stacks (WAP 1.x)

                                                      WAP standardization
       WAE user agent

                                                         outside WAP
             WAE

                               transaction based
             WSP                   application
                                                           datagram based
             WTP                      WTP                    application
                   WTLS                     WTLS                      WTLS


      UDP          WDP         UDP          WDP           UDP         WDP

        IP         non IP        IP         non IP          IP        non IP
    (GPRS, ...) (SMS, ...)   (GPRS, ...) (SMS, ...)     (GPRS, ...) (SMS, ...)
              1.                       2.                        3.
        typical WAP                                           pure data
       application with                                      application
      complete protocol                                      with/without
            stack                                         additional security


Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
i-mode – first of all a business model!

Access to Internet services in Japan provided by NTT DoCoMo
        Services
              Email, short messages, web, picture exchange, horoscope, ...
        Big success – more than 30 million users
              Many use i-mode as PC replacement
              For many this is the first Internet contact
              Very simple to use, convenient
        Technology
              9.6 kbit/s (enhancements with 28.8 kbit/s), packet oriented (PDC-P)
              Compact HTML plus proprietary tags, special transport layer (Stop/go, ARQ, push,
               connection oriented)


    mobile terminal          mobile network             gateway      content provider
        cHTML + tags                                                   cHTML + tags
          HTTP(S)                                                        HTTP(S)
            TL                  TL      TCP           TCP    TCP          TCP
                                         IP            IP     IP           IP
           PDC-P              PDC-P      L2            L2     L2           L2
                                         L1            L1     L1           L1



Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Email example: i-mode push with SMS



                                         Popular misconception:
              application                WAP was a failure, i-mode is different
                WSP
                                         and a success – wrong from a
                                         technology point of view, right from a
                WTP                      business point of view…
                WDP

                 SMS                          i-mode as a business model:
                                              - content providers get >80%
Operator sends an SMS containing a              of the revenue.
push message if a new email has               - independent of technology
arrived. If the user wants to read the          (GSM/GPRS in Europe,
email, an HTTP get follows with the             PDC-P in Japan – but also
email as response.                              UMTS!)




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
i-mode protocol stack based on WAP 2.0



           user equipment               gateway                server

              cHTML                                            cHTML

               HTTP                                            HTTP
                      SSL                                SSL
               WTCP              WTCP         TCP              TCP
                 IP                IP             IP            IP
                 L2                L2         L2                L2
                 L1                L1         L1                L1




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




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
i-mode – technical requirements

Functions                           Descriptions                                                          Status   Requirement
WEB Access                          Portal Site / Internet Access                                           M      i-mode HTML (cHTML+tags)
E-mail                              Internet e-mail and inter-terminal email                                M      HTTP 1.1
Security                            End-End security                                                        O      SSL (Version 2, 3), TLS 1
Java                                Java application made available                                         O      Compatible i-mode JAVA
Ringing tone download               Ringing melody download                                                 M      SMF based
Image download                      Stand-by screen download                                                M      GIF (O: JPEG)
Voice call notification during i-   Voice termination notified and responded during i-mode                  M      3GPP standard system
mode session                        communications

Content charge billing              Per content charge billed to user                                       M      Specifications depend on each
                                                                                                                   operator’s billing system

Third party payment collection      Content charge collection on behalf of Content Provider                 M      Specifications depend on each
                                                                                                                   operator’s billing system

Reverse billing                     Packet usage charges can be billed to third party                       O      Specifications depend on each
                                                                                                                   operator’s billing system

Subscriber ID transmission          Hashed subscriber ID from the operator’s portal to the CP               M      The ID generation algorithm
                                    transmission on each content access                                            should be determined by each
                                                                                                                   operator and has to be secret

Number of characters per e-         Number of characters (byte) per e-mail                                  M      To be defined by operators (e.g.
mail                                                                                                               500 byte, 1K byte, 10K byte)

Character code set supported        Character code set supported by browser and used to develop content     M      To be defined by operators
User Agent                          Browser specifications to be notified                                   M      HTTP 1.1
i-mode button                       Dedicated button                                                        O      Hard or soft key



 Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
i-mode examples I




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
i-mode examples II




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
i-mode examples III




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WAP 2.0 (July 2001)

New for developers
    XHTML
    TCP with „Wireless Profile“
    HTTP



New applications
      Color graphics
      Animation
      Large file download
      Location based services
      Synchronization with PIMs
      Pop-up/context sensitive menus


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


Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WAP 2.0 architecture

  Service          Security        Multimedia Messaging                Content
 discovery         services               (Email)                      formats

  External           Crypto        WAE/WTA User Agent
                                                                          Push
services EFI        libraries       (WML, XHTMLMP)




                                                                                                                    not acl pp A
                                                                                                                     kr o we m rf
                                                                                                                              a
                    Authenti-




                                                                                                                      i i
Provisioning
                     cation                      Capability Negotiation
                                    Push                                          Cookies
 Navigation                         OTA                  Synchronisation




                                                                                            no ss e S
                  Identification
 Discovery




                                                                                             i
  Service                           Hypermedia transfer            Strea-
                       PKI                                                         MMS
  Lookup                            (WTP+WSP, HTTP)                ming




                                                                                            r e s na T
                                                                                               f    r
                     Secure                                  Connections
                                     Datagrams
                    transport                                  (TCP with
                                    (WDP, UDP)
                                                            wireless profile)




                                                                                                                          kr o we m rf l oc o o P
                                                                                            r e ae B t r ops na T
                                                                                                               r



                                                                                                                                             t r
                     Secure        IPv4      CSD       USSD     GPRS        ...
                     bearer
                                          IPv6     SMS      FLEX    MPAK           ...




                                                                                                                                   a
                                                                                               r
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
WAP 2.0 example protocol stacks

 WAP device    WAP gateway        Web server
    WAE                             WAE
    WSP        WSP                             WAP device       WAP proxy        Web server
                        HTTP            HTTP
    WTP        WTP                               WAE                               WAE
   WTLS       WTLS       TLS            TLS      HTTP‘        HTTP‘     HTTP       HTTP
   WDP        WDP        TCP            TCP      TCP‘         TCP‘      TCP        TCP
   bearer     bearer      IP             IP       IP           IP        IP         IP


        WAP 1.x Server/Gateway/Client            WAP HTTP Proxy with profiled TCP and HTTP



 WAP device      WAP proxy        Web server
   WAE                              WAE        WAP device                        Web server
   HTTP                             HTTP         WAE                               WAE
    TLS                              TLS         HTTP           IP router          HTTP
   TCP‘        TCP‘      TCP        TCP          TCP                               TCP
     IP         IP        IP          IP          IP           IP           IP      IP


        WAP Proxy with TLS tunneling                        WAP direct access



Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Java 2 Platform Micro Edition

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



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


J2ME
    Provides a uniform platform
    Restricted functionality compared to standard java platform (JVM)




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Applications of J2ME

Example cellular phones
    NTT DoCoMo introduced iαppli
    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




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Characteristics and architecture

Java Virtual Machine
     Virtual Hardware (Processor)
                                                                               Applications
     KVM (K Virtual Machine)
              Min. 128 kByte, typ. 256 kByte                                      Profile
              Optimized for low performance devices                              (MIDP)
              Might be a co-processor
                                                                              Configurations
Configurations
                                                                              (CDC, CLDC)
     Subset of standard Java libraries depending technical
      hardware parameters (memory, CPU)
                                                                           Java Virtual Machine
     CLDC (Connected Limited Device Configuration)
                                                                               (JVM, KVM)
              Basic libraries, input/output, security – describes Java
               support for mobile devices
                                                                             Operating system
Profiles                                                                   (EPOC, Palm, WinCE)
     Interoperability of heterogeneous devices belonging to the
      same category                                                             Hardware
     MIDP (Mobile Information Device Profile)                              (SH4, ARM, 68k, ...)
              Defines interfaces for GUIs, HTTP, application support, …




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Hardware independent development




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
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



Platform independent via virtualization
     As long as certain common interfaces are used
     Not valid for hardware specific functions


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




Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/

Weitere ähnliche Inhalte

Was ist angesagt?

WLAN - IEEE 802.11
WLAN - IEEE 802.11WLAN - IEEE 802.11
WLAN - IEEE 802.11Rahul Hada
 
web communication protocols in IoT
web communication protocols in IoTweb communication protocols in IoT
web communication protocols in IoTFabMinds
 
Mac protocols
Mac protocolsMac protocols
Mac protocolsjuno susi
 
Mobile Computing I-Unit Notes
Mobile Computing I-Unit NotesMobile Computing I-Unit Notes
Mobile Computing I-Unit Notesgouse_1210
 
Client Centric Consistency Model
Client Centric Consistency ModelClient Centric Consistency Model
Client Centric Consistency ModelRajat Kumar
 
Levels of Virtualization.docx
Levels of Virtualization.docxLevels of Virtualization.docx
Levels of Virtualization.docxkumari36
 
Introduction To Mobile Computing
Introduction To Mobile ComputingIntroduction To Mobile Computing
Introduction To Mobile ComputingMadhuri Badgujar
 
Mobility Management
Mobility ManagementMobility Management
Mobility ManagementHira Shaukat
 
Handover in Mobile Computing
Handover in Mobile ComputingHandover in Mobile Computing
Handover in Mobile ComputingKABILESH RAMAR
 
Mobile computing unit2,SDMA,FDMA,CDMA,TDMA Space Division Multi Access,Frequ...
Mobile computing unit2,SDMA,FDMA,CDMA,TDMA  Space Division Multi Access,Frequ...Mobile computing unit2,SDMA,FDMA,CDMA,TDMA  Space Division Multi Access,Frequ...
Mobile computing unit2,SDMA,FDMA,CDMA,TDMA Space Division Multi Access,Frequ...Pallepati Vasavi
 

Was ist angesagt? (20)

GSM: Handovers
GSM: HandoversGSM: Handovers
GSM: Handovers
 
TinyOS
TinyOSTinyOS
TinyOS
 
UMTS, Introduction.
UMTS, Introduction.UMTS, Introduction.
UMTS, Introduction.
 
Ch5
Ch5Ch5
Ch5
 
WLAN - IEEE 802.11
WLAN - IEEE 802.11WLAN - IEEE 802.11
WLAN - IEEE 802.11
 
CS8601 MOBILE COMPUTING
CS8601	MOBILE COMPUTING CS8601	MOBILE COMPUTING
CS8601 MOBILE COMPUTING
 
web communication protocols in IoT
web communication protocols in IoTweb communication protocols in IoT
web communication protocols in IoT
 
Mac protocols
Mac protocolsMac protocols
Mac protocols
 
Mobile Computing I-Unit Notes
Mobile Computing I-Unit NotesMobile Computing I-Unit Notes
Mobile Computing I-Unit Notes
 
Domain specific IoT
Domain specific IoTDomain specific IoT
Domain specific IoT
 
Client Centric Consistency Model
Client Centric Consistency ModelClient Centric Consistency Model
Client Centric Consistency Model
 
IS-95 Cdma
IS-95 CdmaIS-95 Cdma
IS-95 Cdma
 
Levels of Virtualization.docx
Levels of Virtualization.docxLevels of Virtualization.docx
Levels of Virtualization.docx
 
IEEE 802.11 and Bluetooth
IEEE 802.11 and BluetoothIEEE 802.11 and Bluetooth
IEEE 802.11 and Bluetooth
 
Mobile IP
Mobile IPMobile IP
Mobile IP
 
Introduction To Mobile Computing
Introduction To Mobile ComputingIntroduction To Mobile Computing
Introduction To Mobile Computing
 
Mobility Management
Mobility ManagementMobility Management
Mobility Management
 
Handover in Mobile Computing
Handover in Mobile ComputingHandover in Mobile Computing
Handover in Mobile Computing
 
Mobile computing unit2,SDMA,FDMA,CDMA,TDMA Space Division Multi Access,Frequ...
Mobile computing unit2,SDMA,FDMA,CDMA,TDMA  Space Division Multi Access,Frequ...Mobile computing unit2,SDMA,FDMA,CDMA,TDMA  Space Division Multi Access,Frequ...
Mobile computing unit2,SDMA,FDMA,CDMA,TDMA Space Division Multi Access,Frequ...
 
Ch2
Ch2Ch2
Ch2
 

Andere mochten auch

C07 wireless la-ns
C07 wireless la-nsC07 wireless la-ns
C07 wireless la-nsRio Nguyen
 
Mobile Communication
Mobile CommunicationMobile Communication
Mobile Communicationstooty s
 
Use of computer and Satellite system
Use of computer and Satellite systemUse of computer and Satellite system
Use of computer and Satellite systemsahar Fatima
 
OWD - Push Notification Server Architecture [DEVCON1_2012]
OWD - Push Notification Server Architecture [DEVCON1_2012]OWD - Push Notification Server Architecture [DEVCON1_2012]
OWD - Push Notification Server Architecture [DEVCON1_2012]Fernando Sela
 
C10 transport protocols
C10 transport protocolsC10 transport protocols
C10 transport protocolsRio Nguyen
 
Final ppt wireless
Final ppt wirelessFinal ppt wireless
Final ppt wirelessPrachi Patki
 
C08 network protocols
C08 network protocolsC08 network protocols
C08 network protocolsRio Nguyen
 
wireless application protocol
wireless application protocol wireless application protocol
wireless application protocol Smriti Agrawal
 
C05 satellite systems
C05 satellite systemsC05 satellite systems
C05 satellite systemsRio Nguyen
 
Mobile Communication Broadcast System Jochen Schiller
Mobile Communication Broadcast System Jochen SchillerMobile Communication Broadcast System Jochen Schiller
Mobile Communication Broadcast System Jochen SchillerSonali Chauhan
 
Wireless local loop
Wireless local loopWireless local loop
Wireless local loopSANJUU7
 
3.Medium Access Control
3.Medium Access Control3.Medium Access Control
3.Medium Access ControlSonali Chauhan
 
MEDIUM ACCESS CONTROL
MEDIUM ACCESS CONTROLMEDIUM ACCESS CONTROL
MEDIUM ACCESS CONTROLjunnubabu
 
Satellite communication Basics
Satellite communication BasicsSatellite communication Basics
Satellite communication BasicsNiranjan Poojary
 
Voice Over IP (VoIP)
Voice Over IP (VoIP)Voice Over IP (VoIP)
Voice Over IP (VoIP)habib_786
 

Andere mochten auch (20)

C07 wireless la-ns
C07 wireless la-nsC07 wireless la-ns
C07 wireless la-ns
 
Mobile Communication
Mobile CommunicationMobile Communication
Mobile Communication
 
Use of computer and Satellite system
Use of computer and Satellite systemUse of computer and Satellite system
Use of computer and Satellite system
 
OWD - Push Notification Server Architecture [DEVCON1_2012]
OWD - Push Notification Server Architecture [DEVCON1_2012]OWD - Push Notification Server Architecture [DEVCON1_2012]
OWD - Push Notification Server Architecture [DEVCON1_2012]
 
C10 transport protocols
C10 transport protocolsC10 transport protocols
C10 transport protocols
 
Mobile Communication
Mobile CommunicationMobile Communication
Mobile Communication
 
Final ppt wireless
Final ppt wirelessFinal ppt wireless
Final ppt wireless
 
C08 network protocols
C08 network protocolsC08 network protocols
C08 network protocols
 
wireless application protocol
wireless application protocol wireless application protocol
wireless application protocol
 
C05 satellite systems
C05 satellite systemsC05 satellite systems
C05 satellite systems
 
Mobile Communication Broadcast System Jochen Schiller
Mobile Communication Broadcast System Jochen SchillerMobile Communication Broadcast System Jochen Schiller
Mobile Communication Broadcast System Jochen Schiller
 
Wireless local loop
Wireless local loopWireless local loop
Wireless local loop
 
3.Medium Access Control
3.Medium Access Control3.Medium Access Control
3.Medium Access Control
 
IT6601 MOBILE COMPUTING
IT6601 MOBILE COMPUTINGIT6601 MOBILE COMPUTING
IT6601 MOBILE COMPUTING
 
MEDIUM ACCESS CONTROL
MEDIUM ACCESS CONTROLMEDIUM ACCESS CONTROL
MEDIUM ACCESS CONTROL
 
Satellite communication Basics
Satellite communication BasicsSatellite communication Basics
Satellite communication Basics
 
Wireless Local Loop
Wireless Local LoopWireless Local Loop
Wireless Local Loop
 
Wireless local loop
Wireless local loopWireless local loop
Wireless local loop
 
CDMA
CDMACDMA
CDMA
 
Voice Over IP (VoIP)
Voice Over IP (VoIP)Voice Over IP (VoIP)
Voice Over IP (VoIP)
 

Ähnlich wie C10 support for-mobility

C11 support for-mobility
C11 support for-mobilityC11 support for-mobility
C11 support for-mobilityRio Nguyen
 
Google File System
Google File SystemGoogle File System
Google File Systemvivatechijri
 
Distributed operating system
Distributed operating systemDistributed operating system
Distributed operating systemMoeez Ahmad
 
Systems Support for Many Task Computing
Systems Support for Many Task ComputingSystems Support for Many Task Computing
Systems Support for Many Task ComputingEric Van Hensbergen
 
[IC Manage] Workspace Acceleration & Network Storage Reduction
[IC Manage] Workspace Acceleration & Network Storage Reduction[IC Manage] Workspace Acceleration & Network Storage Reduction
[IC Manage] Workspace Acceleration & Network Storage ReductionPerforce
 
A cloud enviroment for backup and data storage
A cloud enviroment for backup and data storageA cloud enviroment for backup and data storage
A cloud enviroment for backup and data storageIGEEKS TECHNOLOGIES
 
International Journal of Computer Science and Security Volume (4) Issue (1)
International Journal of Computer Science and Security Volume (4) Issue (1)International Journal of Computer Science and Security Volume (4) Issue (1)
International Journal of Computer Science and Security Volume (4) Issue (1)CSCJournals
 
A cloud environment for backup and data storage
A cloud environment for backup and data storageA cloud environment for backup and data storage
A cloud environment for backup and data storageIGEEKS TECHNOLOGIES
 
seed block algorithm
seed block algorithmseed block algorithm
seed block algorithmDipak Badhe
 
Distributed file systems
Distributed file systemsDistributed file systems
Distributed file systemsSri Prasanna
 
Luxun a Persistent Messaging System Tailored for Big Data Collecting & Analytics
Luxun a Persistent Messaging System Tailored for Big Data Collecting & AnalyticsLuxun a Persistent Messaging System Tailored for Big Data Collecting & Analytics
Luxun a Persistent Messaging System Tailored for Big Data Collecting & AnalyticsWilliam Yang
 
Survey of distributed storage system
Survey of distributed storage systemSurvey of distributed storage system
Survey of distributed storage systemZhichao Liang
 
Other distributed systems
Other distributed systemsOther distributed systems
Other distributed systemsSri Prasanna
 
Desktop as a Service supporting Environmental ‘omics
Desktop as a Service supporting Environmental ‘omicsDesktop as a Service supporting Environmental ‘omics
Desktop as a Service supporting Environmental ‘omicsDavid Wallom
 
Inter-Process-Communication (or IPC for short) are mechanisms provid.pdf
Inter-Process-Communication (or IPC for short) are mechanisms provid.pdfInter-Process-Communication (or IPC for short) are mechanisms provid.pdf
Inter-Process-Communication (or IPC for short) are mechanisms provid.pdfaesalem06
 
International Journal of Computational Engineering Research(IJCER)
 International Journal of Computational Engineering Research(IJCER)  International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER) ijceronline
 
Authenticated Key Exchange Protocols for Parallel Network File Systems
Authenticated Key Exchange Protocols for Parallel Network File SystemsAuthenticated Key Exchange Protocols for Parallel Network File Systems
Authenticated Key Exchange Protocols for Parallel Network File Systems1crore projects
 
Chapter 1-Introduction.ppt
Chapter 1-Introduction.pptChapter 1-Introduction.ppt
Chapter 1-Introduction.pptsirajmohammed35
 

Ähnlich wie C10 support for-mobility (20)

C11 support for-mobility
C11 support for-mobilityC11 support for-mobility
C11 support for-mobility
 
Google File System
Google File SystemGoogle File System
Google File System
 
Distributed operating system
Distributed operating systemDistributed operating system
Distributed operating system
 
191
191191
191
 
Systems Support for Many Task Computing
Systems Support for Many Task ComputingSystems Support for Many Task Computing
Systems Support for Many Task Computing
 
[IC Manage] Workspace Acceleration & Network Storage Reduction
[IC Manage] Workspace Acceleration & Network Storage Reduction[IC Manage] Workspace Acceleration & Network Storage Reduction
[IC Manage] Workspace Acceleration & Network Storage Reduction
 
A cloud enviroment for backup and data storage
A cloud enviroment for backup and data storageA cloud enviroment for backup and data storage
A cloud enviroment for backup and data storage
 
International Journal of Computer Science and Security Volume (4) Issue (1)
International Journal of Computer Science and Security Volume (4) Issue (1)International Journal of Computer Science and Security Volume (4) Issue (1)
International Journal of Computer Science and Security Volume (4) Issue (1)
 
A cloud environment for backup and data storage
A cloud environment for backup and data storageA cloud environment for backup and data storage
A cloud environment for backup and data storage
 
seed block algorithm
seed block algorithmseed block algorithm
seed block algorithm
 
Distributed file systems
Distributed file systemsDistributed file systems
Distributed file systems
 
Luxun a Persistent Messaging System Tailored for Big Data Collecting & Analytics
Luxun a Persistent Messaging System Tailored for Big Data Collecting & AnalyticsLuxun a Persistent Messaging System Tailored for Big Data Collecting & Analytics
Luxun a Persistent Messaging System Tailored for Big Data Collecting & Analytics
 
Survey of distributed storage system
Survey of distributed storage systemSurvey of distributed storage system
Survey of distributed storage system
 
Other distributed systems
Other distributed systemsOther distributed systems
Other distributed systems
 
Desktop as a Service supporting Environmental ‘omics
Desktop as a Service supporting Environmental ‘omicsDesktop as a Service supporting Environmental ‘omics
Desktop as a Service supporting Environmental ‘omics
 
Inter-Process-Communication (or IPC for short) are mechanisms provid.pdf
Inter-Process-Communication (or IPC for short) are mechanisms provid.pdfInter-Process-Communication (or IPC for short) are mechanisms provid.pdf
Inter-Process-Communication (or IPC for short) are mechanisms provid.pdf
 
International Journal of Computational Engineering Research(IJCER)
 International Journal of Computational Engineering Research(IJCER)  International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
 
Os structure
Os structureOs structure
Os structure
 
Authenticated Key Exchange Protocols for Parallel Network File Systems
Authenticated Key Exchange Protocols for Parallel Network File SystemsAuthenticated Key Exchange Protocols for Parallel Network File Systems
Authenticated Key Exchange Protocols for Parallel Network File Systems
 
Chapter 1-Introduction.ppt
Chapter 1-Introduction.pptChapter 1-Introduction.ppt
Chapter 1-Introduction.ppt
 

Kürzlich hochgeladen

Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 

Kürzlich hochgeladen (20)

Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 

C10 support for-mobility

  • 1. Mobile Communications Chapter 10: Support for Mobility  File systems  Data bases  WWW and Mobility  WAP (Wireless Application Protocol), i-mode & Co. Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 2. File systems - Motivation Goal  efficient and transparent access to shared files within a mobile environment while maintaining data consistency Problems  limited resources of mobile computers (memory, CPU, ...)  low bandwidth, variable bandwidth, temporary disconnection  high heterogeneity of hardware and software components (no standard PC architecture)  wireless network resources and mobile computer are not very reliable  standard file systems (e.g., NFS, network file system) are very inefficient, almost unusable Solutions  replication of data (copying, cloning, caching)  data collection in advance (hoarding, pre-fetching) Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 3. File systems - consistency problems THE big problem of distributed, loosely coupled systems  are all views on data the same?  how and when should changes be propagated to what users? Weak consistency  many algorithms offering strong consistency (e.g., via atomic updates) cannot be used in mobile environments  invalidation of data located in caches through a server is very problematic if the mobile computer is currently not connected to the network  occasional inconsistencies have to be tolerated, but conflict resolution strategies must be applied afterwards to reach consistency again Conflict detection  content independent: version numbering, time-stamps  content dependent: dependency graphs Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 4. File systems for limited connectivity I Symmetry  Client/Server or Peer-to-Peer relations  support in the fixed network and/or mobile computers  one file system or several file systems  one namespace for files or several namespaces Transparency  hide the mobility support, applications on mobile computers should not notice the mobility  user should not notice additional mechanisms needed Consistency model  optimistic or pessimistic Caching and Pre-fetching  single files, directories, subtrees, partitions, ...  permanent or only at certain points in time Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 5. File systems for limited connectivity II Data management  management of buffered data and copies of data  request for updates, validity of data  detection of changes in data Conflict solving  application specific or general  errors Several experimental systems exist  Coda (Carnegie Mellon University), Little Work (University of Michigan), Ficus (UCLA) etc. Many systems use ideas from distributed file systems such as, e.g., AFS (Andrew File System) Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 6. File systems - Coda I Application transparent extensions of client and server  changes in the cache manager of a client  applications use cache replicates of files  extensive, transparent collection of data in advance for possible future use („Hoarding“) Consistency  system keeps a record of changes in files and compares files after reconnection  if different users have changed the same file a manual reintegration of the file into the system is necessary  optimistic approach, coarse grained (file size) mobile client application cache server Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 7. File systems - Coda II States of a client Hoarding  user can pre-determine a file list with priorities  contents of the cache determined by hoarding strong the list and LRU strategy (Last connection Recently Used) weak  explicit pre-fetching possible disconnection connection  periodic updating write Comparison of files disconnected connection  asynchronous, background  system weighs speed of updating disconnection against minimization of network traffic emulating Cache misses  modeling of user patience: how long can a user wait for data without an error message?  function of file size and bandwidth Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 8. File systems - Little Work  Only changes in the cache manager of the client  Connection modes and use Connected Partially Fetch only Disconnected Connected Method normal delayed write optimistic abort at cache to the server replication of files miss Network continuous continuous connection on none requirements high bandwidth demand bandwidth Application office, WLAN packet radio cellular systems independent (e.g., GSM) with costs per call Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 9. File systems - further examples Mazer/Tardo  file synchronization layer between application and local file system  caching of complete subdirectories from the server  “Redirector” responses to requests locally if necessary, via the network if possible  periodic consistency checks with bi-directional updating Ficus  not a client/server approach  optimistic approach based on replicates, detection of write conflicts, conflict resolution  use of „gossip“ protocols: a mobile computer does not necessarily need to have direct connection to a server, with the help of other mobile computers updates can be propagated through the network MIo-NFS (Mobile Integration of NFS)  NFS extension, pessimistic approach, only token holder can write  connected/loosely connected/disconnected Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 10. Database systems in mobile environments Request processing  power conserving, location dependent, cost efficient  example: find the fastest way to a hospital Replication management  similar to file systems Location management  tracking of mobile users to provide replicated or location dependent data in time at the right place (minimize access delays)  example: with the help of the HLR (Home Location Register) in GSM a mobile user can find a local towing service Transaction processing  “mobile” transactions can not necessarily rely on the same models as transactions over fixed networks (ACID: atomicity, consistency, isolation, durability)  therefore models for “weak” transaction Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 11. 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 sizes  HTTP request: 100-350 byte  responses avg. <10 kbyte, header 160 byte, GIF 4.1kByte, JPEG 12.8 kbyte, HTML 5.6 kbyte  but also many large files that cannot be ignored The Web is no file system  Web pages are not simple files to download  static 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! Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 12. WWW example Request to port 80: GET / HTTP/1.0 or: GET / HTTP/1.1 Host: www.inf.fu-berlin.de Response from server HTTP/1.1 200 OK non persistent Date: Wed, 30 Oct 2002 19:44:26 GMT Server: Apache/1.3.12 (Unix) mod_perl/1.24 Last-Modified: Wed, 30 Oct 2002 13:16:31 GMT ETag: "2d8190-2322-3dbfdbaf" Accept-Ranges: bytes Content-Length: 8994 Connection: close Content-Type: text/html <DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>FU-Berlin: Institut f&uuml;r Informatik</TITLE> <base href="http://www.inf.fu-berlin.de"> <link rel="stylesheet" type="text/css" href="http://www.inf.fu- berlin.de/styles/homepage.css"> <!--script language="JavaScript" src="fuinf.js"--> <!--/script--> </head> <body onResize="self.location.reload();"> ... Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 13. HTTP 1.0 and mobility I Characteristics  stateless, client/server, request/response  needs a connection oriented protocol (TCP), one connection per request (some enhancements in HTTP 1.1)  primitive caching and security 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 TCP  huge overhead per request (3-way-handshake) compared with the content, e.g., of a GET request  slow-start problematic  DNS lookup by client causes additional traffic Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 14. HTTP 1.0 and mobility II Caching  quite 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 caches  security 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! Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 15. HTML and mobile devices HTML  designed for computers with “high” performance, color high- resolution display, mouse, hard disk  typically, web pages optimized for design, not for communication 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, 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 Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 16. Approaches toward WWW for mobile devices Application gateways, enhanced servers  simple clients, pre-calculations in the fixed network  compression, filtering, content extraction  automatic adaptation to network characteristics Examples  picture scaling, color reduction, transformation of the document format (e.g., PS to TXT)  detail studies, clipping, zoom  headline extraction, automatic abstract generation  HDML (handheld device markup language): simple language similar to HTML requiring a special browser  HDTP (handheld device transport protocol): transport protocol for HDML, developed by Unwired Planet Problems  proprietary approaches, require special enhancements for browsers  heterogeneous devices make approaches more complicated Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 17. Some new issues that might help mobility?  Push technology  real pushing, not a client pull needed, channels etc.  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...  Cookies: well..., stateful sessions, not really integrated... Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 18. System support for WWW in a mobile world I Enhanced browsers mobile client  Pre-fetching, caching, off-line use integrated enhancement  e.g. Internet Explorer browser web server Additional, accompanying application  Pre-fetching, caching, off-line use mobile client  e.g. original WebWhacker browser additional application web server Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 19. System support for WWW in a mobile world II Client Proxy mobile client  Pre-fetching, caching, off-line use  e.g., Caubweb, TeleWeb, Weblicator, browser client WebWhacker, WebEx, WebMirror, proxy ... web server Network Proxy mobile client  adaptive content transformation for bad connections, pre-fetching, caching browser  e.g., TranSend, Digestor network proxy web server Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 20. System support for WWW in a mobile world III Client and network proxy mobile client  combination of benefits plus client simplified protocols browser proxy  e.g., MobiScape, WebExpress web network server proxy Special network subsystem  adaptive content transformation mobile client for bad connections, pre-fetching, caching client browser  e.g., Mowgli proxy Additional many proprietary server web network extensions possible server proxy  “channels”, content negotiation, ... Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 21. WAP - Wireless Application Protocol Goals  deliver Internet content and enhanced services to mobile devices and users (mobile phones, PDAs)  independence from wireless network standards  open for everyone to participate, protocol specifications will be proposed to standardization bodies  applications should scale well beyond current transport media and device types and should also be applicable to future developments Platforms  e.g., GSM (900, 1800, 1900), CDMA IS-95, TDMA IS-136, 3rd generation systems (IMT-2000, UMTS, W-CDMA, cdma2000 1x EV-DO, …) 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/
  • 22. WAP - scope of standardization Browser  “micro browser”, similar to existing, well-known browsers in the Internet 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/
  • 23. WAP 1.x - reference model and protocols Internet A-SAP WAP HTML, Java Application Layer (WAE) additional services and applications S-SAP Session Layer (WSP) HTTP TR-SAP Transaction Layer (WTP) SEC-SAP SSL/TLS Security Layer (WTLS) T-SAP TCP/IP, Transport Layer (WDP) WCMP UDP/IP, media Bearers (GSM, CDPD, ...) WAE comprises WML (Wireless Markup Language), WML Script, WTAI etc. Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 24. WAP - network elements fixed network wireless network Internet HTML WML WAP Binary WML filter proxy HTML WML HTML filter/ Binary WML WAP web HTML proxy server WTA Binary WML server PSTN Binary WML: binary file format for clients Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 25. WDP - Wireless Datagram Protocol Protocol of the transport layer within the WAP architecture  uses directly transports mechanisms of different network technologies  offers a common interface for higher layer protocols  allows for transparent communication using different transport technologies (GSM [SMS, CSD, USSD, GPRS, ...], IS-136, TETRA, DECT, PHS, IS- 95, ...) 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) Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 26. WDP - Service Primitives T-SAP T-SAP T-DUnitdata.req (DA, DP, SA, SP, UD) T-DUnitdata.ind (SA, SP, UD) T-DUnitdata.req (DA, DP, SA, SP, UD) T-DError.ind (EC) Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 27. Usage of WDP Wireless Data Gateway WTLS WTLS WTLS WTLS GSM-SMS WDP & WDP & WDP & WDP & Adaptation Adaptation Adaptation Adaptation SMS SMS SMS SMS Tunnel Tunnel Tunnel Tunnel Subnetwork Subnetwork Subnetwork Subnetwork WAP GSM-CSD Proxy WTLS WTLS WTLS WTLS Internet Service Provider UDP UDP Remote Access Service UDP UDP IP IP Interworking IP IP IP IP PPP Function PPP PPP PPP PSTN PSTN Subnetwork Subnetwork Subnetwork Subnetwork CSD-RF CSD-RF PSTN PSTN CSD-RF CSD-RF Circuit Circuit Circuit Circuit Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 28. WTLS - Wireless Transport Layer Security Goals  data integrity  prevention of changes in data  privacy  prevention of tapping  authentication  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 Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 29. Secure session, full handshake originator peer SEC-SAP SEC-SAP SEC-Create.req (SA, SP, DA, DP, KES, CS, CM) SEC-Create.ind (SA, SP, DA, DP, KES, CS, CM) SEC-Create.res (SNM, KR, SID, KES‘, CS‘, CM‘) SEC-Create.cnf SEC-Exchange.req (SNM, KR, SID, KES‘, CS‘, CM‘) SEC-Exchange.ind SEC-Exchange.res (CC) SEC-Commit.req SEC-Exchange.cnf (CC) SEC-Commit.ind SEC-Commit.cnf Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 30. SEC-Unitdata - transferring datagrams sender receiver SEC-SAP SEC-SAP SEC-Unitdata.req (SA, SP, DA, DP, UD) SEC-Unitdata.ind (SA, SP, DA, DP, UD) Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 31. WTP - Wireless Transaction Protocol Goals  different transaction services, offloads applications  application can select reliability, efficiency  support of different communication scenarios  class 0: unreliable message transfer  class 1: reliable message transfer without result message  class 2: reliable message transfer with exactly one reliable result message  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) Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 32. Details of WTP I Support of different communication scenarios  Class 0: unreliable message transfer  Example: push service  Class 1: reliable request  An invoke message is not followed by a result message  Example: reliable push service  Class 2: reliable request/response  An invoke message is followed by exactly one result message  With and without ACK  Example: typical web browsing No explicit connection setup or release is available Services for higher layers are called events Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 33. Details of WTP II Used Mechanisms  Reliability  Unique transaction identifiers (TID)  Acknowledgements  Selective retransmission  Duplicate removal  Optional: concatenation & separation of messages  Optional: segmentation & reassembly of messages  Asynchronous transactions  Transaction abort, error handling  Optimized connection setup (includes data transmission) Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 34. WTP Class 0 transaction initiator responder TR-SAP TR-SAP TR-Invoke.req (SA, SP, DA, DP, A, UD, C=0, H) TR-Invoke.ind Invoke P DU (SA, SP, DA, DP, A, UD, C=0, H‘) Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 35. WTP Class 1 transaction, no user ack & user ack initiator responder TR-SAP TR-SAP TR-Invoke.req (SA, SP, DA, DP, A, UD, C=1, H) TR-Invoke.ind Invoke P DU (SA, SP, DA, DP, A, UD, C=1, H‘) TR-Invoke.cnf U (H) Ack PD initiator responder TR-SAP TR-SAP TR-Invoke.req (SA, SP, DA, DP, A, UD, C=1, H) TR-Invoke.ind Invoke P DU (SA, SP, DA, DP, A, UD, C=1, H‘) TR-Invoke.res (H‘) TR-Invoke.cnf U (H) Ack PD Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 36. WTP Class 2 transaction, no user ack, no hold on initiator responder TR-SAP TR-SAP TR-Invoke.req (SA, SP, DA, DP, A, UD, C=2, H) TR-Invoke.ind Invoke P DU (SA, SP, DA, DP, A, UD, C=2, H‘) TR-Result.req (UD*, H‘) TR-Invoke.cnf PDU (H) Result TR-Result.ind (UD*, H) TR-Result.res (H) Ack PD TR-Result.cnf U (H‘) Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 37. WTP Class 2 transaction, user ack initiator responder TR-SAP TR-SAP TR-Invoke.req (SA, SP, DA, DP, A, UD, C=2, H) TR-Invoke.ind Invoke P DU (SA, SP, DA, DP, A, UD, C=2, H‘) TR-Invoke.res (H‘) TR-Invoke.cnf U (H) Ack PD TR-Result.req (UD*, H‘) TR-Result.ind PDU (UD*, H) Result TR-Result.res (H) Ack PD TR-Result.cnf U (H‘) Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 38. WTP Class 2 transaction, hold on, no user ack initiator responder TR-SAP TR-SAP TR-Invoke.req (SA, SP, DA, DP, A, UD, C=2, H) TR-Invoke.ind Invoke P DU (SA, SP, DA, DP, A, UD, C=2, H‘) TR-Invoke.cnf U (H) Ack PD TR-Result.req (UD*, H‘) TR-Result.ind PDU Result (UD*, H) TR-Result.res (H) Ack PD TR-Result.cnf U (H‘) Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 39. WSP - Wireless Session Protocol Goals  HTTP 1.1 functionality  Request/reply, content type negotiation, ...  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 Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 40. WSP protocols WSP Connection mode Connectionless mode (uses WTP) (uses WDP or WTLS) • Session Management (class 0, 2) • Method Invocation • Method Invocation (Kl. 2) • Push • Error Report (in general unreliable) • Push (class 0) • Confirmed Push (class 1) • Session suspend/resume (class 0, 2) Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 41. WSP/B session establishment client server S-SAP S-SAP S-Connect.req (SA, CA, CH, RC) Conne S-Connect.ind ct P DU (SA, CA, CH, RC) S-Connect.res (SH, NC) S-Connect.cnf ply P DU (SH, NC) ConnRe WTP Class 2 transaction Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 42. WSP/B session suspend/resume client server S-SAP S-SAP S-Suspend.req Suspe S-Suspend.ind nd PD U (R) S-Suspend.ind (R) WTP Class 0 transaction S-Resume.req (SA, CA) ~ ~ Resum S-Resume.ind e PDU (SA, CA) S-Resume.res PDU S-Resume.cnf Reply WTP Class 2 transaction Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 43. WSP/B session termination client server S-SAP S-SAP S-Disconnect.req (R) Discon S-Disconnect.ind nect P S-Disconnect.ind DU (R) (R) WTP Class 0 transaction Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 44. WSP/B method invoke client server S-SAP S-SAP S-MethodInvoke.req (CTID, M, RU) Metho S-MethodInvoke.ind d PDU (STID, M, RU) S-MethodInvoke.res (STID) S-MethodInvoke.cnf (CTID) S-MethodResult.req (STID, S, RH, RB) S-MethodResult.ind PDU (CTID, S, RH, RB) Reply S-MethodResult.res (CTID) S-MethodResult.cnf (STID) WTP Class 2 transaction Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 45. WSP/B over WTP - method invocation client initiator responder server S-SAP TR-SAP TR-SAP S-SAP S-MethodInvoke.req TR-Invoke.req Invo ke(Me thod) TR-Invoke.ind S-MethodInvoke.ind TR-Invoke.res S-MethodInvoke.res U S-MethodInvoke.cnf TR-Invoke.cnf Ack PD TR-Result.req S-MethodResult.req eply) S-MethodResult.ind TR-Result.ind Result(R S-MethodResult.res TR-Result.res Ack PD U TR-Result.cnf S-MethodResult.cnf Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 46. WSP/B over WTP - asynchronous, unordered requests client server S-SAP S-SAP S-MethodInvoke_1.req S-MethodInvoke_2.req S-MethodInvoke_2.ind S-MethodInvoke_1.ind S-MethodInvoke_3.req S-MethodResult_1.req S-MethodInvoke_3.ind S-MethodResult_1.ind S-MethodResult_3.req S-MethodResult_3.ind S-MethodResult_2.req S-MethodInvoke_4.req S-MethodInvoke_4.ind S-MethodResult_4.ind S-MethodResult_4.req S-MethodResult_2.ind Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 47. WSP/B - confirmend/non-confirmed push client server S-SAP S-SAP S-Push.req (PH, PB) S-Push.ind DU (PH, PB) Push P WTP Class 0 transaction client server S-SAP S-SAP S-ConfirmedPush.req (SPID, PH, PB) S-ConfirmedPush.ind ush PDU (CPID, PH, PB) ConfP S-ConfirmedPush.res (CPID) S-ConfirmedPush.cnf (SPID) WTP Class 1 transaction Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 48. WSP/B over WDP client server S-Unit-MethodInvoke.req S-SAP S-SAP (SA, CA, TID, M, RU) Metho S-Unit-MethodInvoke.ind d PDU (SA, CA, TID, M, RU) S-Unit-MethodResult.req (CA, SA, TID, S, RH, RB) S-Unit-MethodResult.ind PDU (CA, SA, TID, S, RH, RB) Reply S-Unit-Push.req (CA, SA, PID, PH, PB) S-Unit-Push.ind D U (CA, SA, PID, PH, PB) Push P WDP Unitdata service Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 49. WAE - Wireless Application Environment Goals  network independent application environment for low-bandwidth, wireless devices  integrated Internet/WWW programming model with high interoperability 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/
  • 50. WAE logical model Origin Servers Gateway Client response encoded WTA web with response user agent server content with encoders content & decoders WML other content user agent server push encoded content push content other WAE user agents request encoded request Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 51. Wireless Markup Language (WML) WML follows deck and card metaphor  WML document consists of many cards, cards are grouped to decks  a deck is similar to an HTML page, unit of content transmission  WML describes only intent of interaction in an abstract manner  presentation depends on device capabilities Features  text and images  user interaction  navigation  context management Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 52. 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> Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 53. WML – example II <card id="card_two" title="Pizza selection"> <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> Your personal pizza parameter is <b>$(PIZZA)</b>! </p> </card> </wml> Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 54. WMLScript Complement to WML Provides general scripting capabilities Features  validity check of user input  check input before sent to server  access to device facilities  hardware and software (phone call, address book etc.)  local user interaction  interaction without round-trip delay  extensions to the device software  configure device, download new functionality after deployment Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 55. WMLScript - example function pizza_test(pizza_type) { var taste = "unknown"; if (pizza_type = "Margherita") { taste = "well... "; } else { if (pizza_type = "Vulcano") { taste = "quite hot"; }; }; return taste; }; Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 56. Wireless Telephony Application (WTA) Collection of telephony specific extensions Extension of basic WAE application model  content push  server can push content to the client  client may now be able to handle unknown events  handling of network events  table indicating how to react on certain events from the network  access to telephony functions  any application on the client may access telephony functions Example  calling a number (WML) wtai://wp/mc;07216086415  calling a number (WMLScript) WTAPublic.makeCall("07216086415"); Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 57. WTA logical architecture other telephone networks WTA server client WML scripts mobile WTA WTA & WML network user agent server WML decks WAP gateway repository WTA services encoders & device network operator decoders specific trusted domain other functions servers third party firewall servers Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 58. Voice box example WTA-User-Agent WTA-Gateway WTA-Server Mobile network Voice box server Indicate new voice message Generate new deck Service Indication Push URL Display deck; user selects WSP Get HTTP Get Respond with content Binary WML WML Display deck; user selects WSP Get HTTP Get Respond with card WML for call Binary WML Play requested voice message Wait for call Call setup Setup call Setup call Accept call Accept call Accept call Voice connection Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 59. WTAI - example with WML only <?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="Tele voting"> <do type="accept"> <go href="#card_two"/> </do> <p> Please choose your candidate! </p> </card> <card id="card_two" title="Your selection"> <do type="accept"> <go href="wtai://wp/mc;$dialno"/> </do> <p> Your selection: <select name="dialno"> <option value="01376685">Mickey</option> <option value="01376686">Donald</option> <option value="01376687">Pluto</option> </select> </p> </card> </wml> Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 60. WTAI - example with WML and WMLScript I function voteCall(Nr) { var j = WTACallControl.setup(Nr,1); if (j>=0) { WMLBrowser.setVar("Message", "Called"); WMLBrowser.setVar("No", Nr); } else { WMLBrowser.setVar("Message", "Error!"); WMLBrowser.setVar("No", j); } WMLBrowser.go("showResult"); } Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 61. WTAI - example with WML and WMLScript II <?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="Tele voting"> <do type="accept"> <go href="#card_two"/> </do> <p> Please choose your candidate! </p> </card> <card id="card_two" title="Your selection"> <do type="accept"> <go href="/myscripts#voteCall($dialno)"/> </do> <p> Your selection: <select name="dialno"> <option value="01376685">Mickey</option> <option value="01376686">Donald</option> <option value="01376687">Pluto</option> </select> </p> </card> <card id="showResult" title="Result"> <p> Status: $Message $No </p> </card> </wml> Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 62. WAP push architecture with proxy gateway Push Access Protocol  Content transmission between server and PPG  First version uses HTTP Push OTA (Over The Air) Protocol  Simple, optimized  Mapped onto WSP Push Proxy Push Push OTA Gateway Access Client Push Initiator Protocol Protocol User Agents Server Coding, application checking Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 63. Push/Pull services in WAP I Service Indication  Service announcement using a pushed short message  Service usage via a pull  Service 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="2002-10-30T17:45:32Z" si-expires="2000-10-30T17:50:31Z"> Salad special: The 5 minute offer </indication> </si> Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 64. Push/Pull services in WAP II Service Loading  short message pushed to a client containing a URI  User agent decides whether to use the URI via a pull  Transparent 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> Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 65. Examples for WAP protocol stacks (WAP 1.x) WAP standardization WAE user agent outside WAP WAE transaction based WSP application datagram based WTP WTP application WTLS WTLS WTLS UDP WDP UDP WDP UDP WDP IP non IP IP non IP IP non IP (GPRS, ...) (SMS, ...) (GPRS, ...) (SMS, ...) (GPRS, ...) (SMS, ...) 1. 2. 3. typical WAP pure data application with application complete protocol with/without stack additional security Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 66. i-mode – first of all a business model! Access to Internet services in Japan provided by NTT DoCoMo  Services  Email, short messages, web, picture exchange, horoscope, ...  Big success – more than 30 million users  Many use i-mode as PC replacement  For many this is the first Internet contact  Very simple to use, convenient  Technology  9.6 kbit/s (enhancements with 28.8 kbit/s), packet oriented (PDC-P)  Compact HTML plus proprietary tags, special transport layer (Stop/go, ARQ, push, connection oriented) mobile terminal mobile network gateway content provider cHTML + tags cHTML + tags HTTP(S) HTTP(S) TL TL TCP TCP TCP TCP IP IP IP IP PDC-P PDC-P L2 L2 L2 L2 L1 L1 L1 L1 Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 67. Email example: i-mode push with SMS Popular misconception: application WAP was a failure, i-mode is different WSP and a success – wrong from a technology point of view, right from a WTP business point of view… WDP SMS i-mode as a business model: - content providers get >80% Operator sends an SMS containing a of the revenue. push message if a new email has - independent of technology arrived. If the user wants to read the (GSM/GPRS in Europe, email, an HTTP get follows with the PDC-P in Japan – but also email as response. UMTS!) Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 68. i-mode protocol stack based on WAP 2.0 user equipment gateway server cHTML cHTML HTTP HTTP SSL SSL WTCP WTCP TCP TCP IP IP IP IP L2 L2 L2 L2 L1 L1 L1 L1 i-mode can use WAP 2.0/Internet protocols (example: i-mode in Germany over GSM/GPRS) Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 69. i-mode – technical requirements Functions Descriptions Status Requirement WEB Access Portal Site / Internet Access M i-mode HTML (cHTML+tags) E-mail Internet e-mail and inter-terminal email M HTTP 1.1 Security End-End security O SSL (Version 2, 3), TLS 1 Java Java application made available O Compatible i-mode JAVA Ringing tone download Ringing melody download M SMF based Image download Stand-by screen download M GIF (O: JPEG) Voice call notification during i- Voice termination notified and responded during i-mode M 3GPP standard system mode session communications Content charge billing Per content charge billed to user M Specifications depend on each operator’s billing system Third party payment collection Content charge collection on behalf of Content Provider M Specifications depend on each operator’s billing system Reverse billing Packet usage charges can be billed to third party O Specifications depend on each operator’s billing system Subscriber ID transmission Hashed subscriber ID from the operator’s portal to the CP M The ID generation algorithm transmission on each content access should be determined by each operator and has to be secret Number of characters per e- Number of characters (byte) per e-mail M To be defined by operators (e.g. mail 500 byte, 1K byte, 10K byte) Character code set supported Character code set supported by browser and used to develop content M To be defined by operators User Agent Browser specifications to be notified M HTTP 1.1 i-mode button Dedicated button O Hard or soft key Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 70. i-mode examples I Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 71. i-mode examples II Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 72. i-mode examples III Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 73. WAP 2.0 (July 2001) New for developers  XHTML  TCP with „Wireless Profile“  HTTP New applications  Color graphics  Animation  Large file download  Location based services  Synchronization with PIMs  Pop-up/context sensitive menus Goal: integration of WWW, Internet, WAP, i-mode Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 74. WAP 2.0 architecture Service Security Multimedia Messaging Content discovery services (Email) formats External Crypto WAE/WTA User Agent Push services EFI libraries (WML, XHTMLMP) not acl pp A kr o we m rf a Authenti- i i Provisioning cation Capability Negotiation Push Cookies Navigation OTA Synchronisation no ss e S Identification Discovery i Service Hypermedia transfer Strea- PKI MMS Lookup (WTP+WSP, HTTP) ming r e s na T f r Secure Connections Datagrams transport (TCP with (WDP, UDP) wireless profile) kr o we m rf l oc o o P r e ae B t r ops na T r t r Secure IPv4 CSD USSD GPRS ... bearer IPv6 SMS FLEX MPAK ... a r Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 75. WAP 2.0 example protocol stacks WAP device WAP gateway Web server WAE WAE WSP WSP WAP device WAP proxy Web server HTTP HTTP WTP WTP WAE WAE WTLS WTLS TLS TLS HTTP‘ HTTP‘ HTTP HTTP WDP WDP TCP TCP TCP‘ TCP‘ TCP TCP bearer bearer IP IP IP IP IP IP WAP 1.x Server/Gateway/Client WAP HTTP Proxy with profiled TCP and HTTP WAP device WAP proxy Web server WAE WAE WAP device Web server HTTP HTTP WAE WAE TLS TLS HTTP IP router HTTP TCP‘ TCP‘ TCP TCP TCP TCP IP IP IP IP IP IP IP IP WAP Proxy with TLS tunneling WAP direct access Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 76. Java 2 Platform Micro Edition „Java-Boom expected“ (?)  Desktop: over 90% standard PC architecture, Intel x86 compatible, typically MS Windows systems  Do really many people care about platform independent applications? BUT: Heterogeneous, “small“ devices  Internet appliances, cellular phones, embedded control, car radios, ...  Technical necessities (temperature range, form factor, power consumption, …) and economic reasons result in different hardware J2ME  Provides a uniform platform  Restricted functionality compared to standard java platform (JVM) Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 77. Applications of J2ME Example cellular phones  NTT DoCoMo introduced iαppli  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 Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 78. Characteristics and architecture Java Virtual Machine  Virtual Hardware (Processor) Applications  KVM (K Virtual Machine)  Min. 128 kByte, typ. 256 kByte Profile  Optimized for low performance devices (MIDP)  Might be a co-processor Configurations Configurations (CDC, CLDC)  Subset of standard Java libraries depending technical hardware parameters (memory, CPU) Java Virtual Machine  CLDC (Connected Limited Device Configuration) (JVM, KVM)  Basic libraries, input/output, security – describes Java support for mobile devices Operating system Profiles (EPOC, Palm, WinCE)  Interoperability of heterogeneous devices belonging to the same category Hardware  MIDP (Mobile Information Device Profile) (SH4, ARM, 68k, ...)  Defines interfaces for GUIs, HTTP, application support, … Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 79. Hardware independent development Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
  • 80. 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 Platform independent via virtualization  As long as certain common interfaces are used  Not valid for hardware specific functions Limited functionality compared to JVM  Thus, maybe an intermediate solution only – until embedded systems, mobile phones are as powerful as today’s desktop systems Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/