IT8602 Mobile Communication
Unit V - Mobile Transport & Application Layer
Kaviya.P
Kamaraj College of Engineering & Technology
Unit V - Mobile Transport & Application Layer
Mobile TCP– WAP – Architecture – WDP – WTLS –
WTP –WSP – WAE – WTA Architecture – WML
Mobile TCP
• The M-TCP protocol tries to avoid the sender window from shrinking or
reverting to slow-start when bit errors cause a packet-loss.
• In Mobile-TCP, TCP connection is divided into fixed and wireless part.
• Wired part – Between Fixed Host (FH) and Supervisory Host (SH)
• Wireless part – Between SH and Mobile Host (MH)
• Many MHs are connected to SH through several base stations
• The SH supervises all the packets transmitted to MH and the acknowledgement
sent by MH.
• When a packet is sent to FH by MH using SH, the wired part uses the normal
unmodified TCP & wireless part uses modified version of TCP known as M-
TCP to deliver data to MH.
Mobile TCP
• This packet is acknowledged only when the MH receives the packet. Thus, it
maintains the TCP semantics.
• In case the acknowledgement is not received by FH, SH decides that MH is
disconnected and sets the sender FH window size to zero. This prevents re-
transmission.
• When SH notices that the MH is connected, it sets the full window size to the
sender FH.
• When MH moves from its current SH region to a new SH region, a state transfer
take places, so that the new SH can maintain TCP connection between FH and MH.
• The wireless side uses an adapted TCP that can recover from packet loss much
faster.
• This modified TCP does not use slow start, thus, M-TCP needs a bandwidth
manager to implement fair sharing over the wireless link.
Mobile TCP
• Advantages
– It maintains the TCP end-to-end semantics.
– If the MH is disconnected, it avoids useless retransmissions, slow starts or
breaking connections by simply shrinking the sender’s window to 0.
– Since it does not buffer data in the SH, it is not necessary to forward buffers to
a new SH. Lost packets will be automatically retransmitted to the new SH.
• Disadvantages
– M-TCP assumes low bit error rates, which is not always a valid assumption.
– A modified TCP on the wireless link not only requires modifications to the
MH protocol software but also new network elements like the bandwidth
manager.
WAPArchitecture
• Wireless application protocol forum (WAP Forum) was founded in June 1997 by Ericsson,
Motorola, Nokia, and Unwired Planet.
• The basic objectives of the WAP Forum are to bring diverse internet content and other data
services to digital cellular phones and other wireless, mobile terminals.
• All solutions must be:
– Interoperable: Allowing terminals and software from different vendors to communicate
with networks from different providers;
– Scalable: Protocols and services should scale with customer needs and number of
customers;
– Efficient: Provision of QoS suited to the characteristics of the wireless and mobile
networks;
– Reliable: Provision of a consistent and predictable platform for deploying services; and
– Secure: Preservation of the integrity of user data, protection of devices and services from
security problems.
WAPArchitecture
WAPArchitecture
Bearers
• The basis for transmission of data is formed by different bearer services. WAP does not
specify bearer services, but uses existing data services and will integrate further services.
• No special interface has been specified between the bearer service and the next higher
layer.
Transport Layer (WDP)
• The transport layer with its wireless datagram protocol (WDP) and the additional
wireless control message protocol (WCMP) – For bearer-specific adaptation.
• The transport layer offers a bearer independent, consistent datagram-oriented service
to the higher layers of the WAP architecture.
• The transport layer service access point (T-SAP) is the common interface to be used by
higher layers independent of the underlying network.
WAPArchitecture
Security Layer (WTLS)
• The security layer with its wireless transport layer security protocol (WTLS) offers its
service at the security SAP (SEC-SAP).
• It can offer data integrity, privacy, authentication, and denial-of-service protection.
Transaction Layer (WTP)
• The WAP transaction layer with its wireless transaction protocol (WTP) offers a
lightweight transaction service at the transaction SAP (TR-SAP).
• This service efficiently provides reliable or unreliable requests and asynchronous
transactions.
WAPArchitecture
Session Layer (WSP)
• The session layer with the wireless session protocol (WSP) offers two services at the
session-SAP (S-SAP), one connection-oriented and one connectionless if used directly on
top of WDP.
• A special service for browsing the web has been defined that offers HTTP/1.1
functionality, long-lived session state, session suspend and resume, session migration and
other features needed for wireless mobile access to the web.
Application Layer (WAE)
• The application layer with the wireless application environment (WAE) offers a
framework for the integration of different WWW and mobile telephony applications.
• It offers many protocols and services with special service access points.
WAPArchitecture
WAPArchitecture
• On the left side, different fixed networks, such as the traditional internet and the public
switched telephone network (PSTN), are shown.
• One cannot change protocols and services of these existing networks.
• So several new elements will be implemented between these networks and the WAP-
enabled wireless, mobile devices in a wireless network on the right-hand side.
• The WWW in the internet offers web pages with the help of HTML and web servers.
• To browse these pages or additional pages with handheld devices, a wireless markup
language (WML) has been defined in WAP.
• Special filters within the fixed network can now translate HTML into WML.
• Web servers can already provide pages in WML, or the gateways between the fixed and
wireless network can translate HTML into WML.
• These gateways not only filter pages but also act as proxies for web access.
• WML is additionally converted into binary WML for more efficient transmission.
Wireless Datagram Protocol (WDP)
• The wireless datagram protocol (WDP) operates on top of many different bearer
services capable of carrying data.
• At the T-SAP, WDP offers a consistent datagram transport service independent of the
underlying bearer.
• To offer this consistent service, the adaptation needed in the transport layer can differ
depending on the services of the bearer.
• If the bearer already offers IP services, UDP is used as WDP.
Wireless Datagram Protocol (WDP)
• WDP offers source and destination port numbers used for multiplexing and
demultiplexing of data respectively.
• The service primitive to send a datagram is TDUnitdata.req with the destination address
(DA), destination port (DP), Source address (SA), source port (SP), and user data
(UD) as mandatory parameters.
• Destination and source address are unique addresses for the receiver and sender of the user
data.
• These could be MSISDNs (i.e., a telephone number), IP addresses, or any other unique
identifiers.
• The T-DUnitdata.ind service primitive indicates the reception of data. Here destination
address and port are only optional parameters.
Wireless Datagram Protocol (WDP)
• If a higher layer requests a service the WDP cannot fulfill, an error is indicated with the T-
DError.ind service primitive .
• An error code (EC) is returned indicating the reason for the error to the higher layer.
• WDP is allowed to use the primitive to indicate local problems, such as a user data size
that is too large.
• If any errors happen when WDP datagrams are sent from one WDP entity to another, the
wireless control message protocol (WCMP) provides error handling mechanisms for
WDP.
• WCMP messages are destination unreachable (route, port, address unreachable),
parameter problem (errors in the packet header), message too big, reassembly failure,
or echo request/reply.
• WDP management entity supports WDP and provides information about changes in the
environment.
Wireless Transport Layer Security (WTLS)
• WTLS can provide different levels of security (for privacy, data integrity, and
authentication) and has been optimized for low bandwidth, high-delay bearer networks.
• WTLS takes into account the low processing power and very limited memory
capacity of the mobile devices for cryptographic algorithms.
• WTLS supports datagram and connection-oriented transport layer protocols.
Wireless Transport Layer Security (WTLS)
• Before data can be exchanged via WTLS, a secure session has to be established.
• The first step is to initiate the session with the SEC-Create primitive.
• Parameters are source address (SA), source port (SP) of the originator, destination
address (DA), destination port (DP) of the peer. The originator proposes a key
exchange suite (KES) (e.g., RSA, DH, ECC), a cipher suite (CS) (e.g., DES, IDEA), and
a compression method (CM).
• The peer answers with parameters for the sequence number mode (SNM), the key
refresh cycle (KR) (i.e., how often keys are refreshed within this secure session), the
session identifier (SID) (which is unique with each peer), and the selected key exchange
suite (KES’), cipher suite (CS’), compression method (CM’).
• The peer also issues a SEC-Exchange primitive. This indicates that the peer wishes to
perform public-key authentication with the client, i.e., the peer requests a client
certificate (CC) from the originator.
Wireless Transport Layer Security (WTLS)
• The negotiation of the security parameters and suites, is indicated on the originator’s
side, followed by the request for a certificate.
• The originator answers with its certificate and issues a SEC-Commit.req primitive.
• The certificate is delivered to the peer side and the SEC-Commit is indicated.
• The WTLS layer of the peer sends back a confirmation to the originator. This concludes
the full handshake for secure session setup.
• After setting up a secure connection between two peers, user data can be exchanged.
• This is done using the simple SEC-Unitdata primitive.
• The parameters are the same here: source address (SA), source port (SP), destination
address (DA), destination port (DP), and user data (UD).
Wireless Transaction Protocol (WTP)
• WTP has been designed to run on very thin clients, such as mobile phones.
• Advantages
– Reliability over datagram services
– Efficiency over connection-oriented services
– Support for transaction-oriented services such as web browsing.
• In this context, a transaction is defined as a request with its response, e.g. for a web page.
• 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)
Wireless Transaction Protocol (WTP)
• Support of different communication scenarios
– Class 0: Unreliable message transfer
• Example: push service
– Class 1: Reliable message transfer without result message
• An invoke message is not followed by a result message
• Example: reliable push service
– Class 2: Reliable message transfer with exactly one reliable result message
• 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.
Wireless Transaction Protocol (WTP)
• 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)
Wireless Transaction Protocol (WTP)
• WTP Class 0 Transaction
SA: Source Address SP: Source Port
DA: Destination Address DP: Destination Port
A: flag (Acknowledgement) UD: User Data
C: Class Type H: Handle
Wireless Transaction Protocol (WTP)
• WTP Class 1 Transaction, No user acknowledgement
• WTP Class 1 Transaction, With user acknowledgement
Wireless Transaction Protocol (WTP)
• WTP Class 2 Transaction, No user acknowledgement
Wireless Transaction Protocol (WTP)
• WTP Class 2 Transaction, With user acknowledgement
Wireless Transaction Protocol (WTP)
• WTP Class 2 Transaction, With hold on, no user acknowledgement
Wireless Session Protocol (WSP)
• WSP provides a shared state between a client and a server to optimize content transfer.
• WSP offers the following general features needed for content exchange between
cooperating clients and servers:
– Session management
– Capability negotiation
– Content encoding
• WAP has specified the wireless session protocol/browsing (WSP/B) which comprises
protocols and services most suited for browsing-type applications.
• WSP/B offers the following features adapted to web browsing:
– HTTP/1.1 functionality
– Exchange of session headers
– Push and pull data transfer
– Asynchronous request
Wireless Session Protocol (WSP)
WSP/B over WTP
• WSP/B uses the three service classes of WTP.
– Class 0 is used for unconfirmed push, session resume, and session management.
– Class 1 is used for Confirmed push
– Class 2 is used for method invocation, session resume, and session management.
WSP/B Session Establishment
• SA – Server Address CA – Client Address RC – Requested Capabilities
• CH – Client Header SH – Server Header NC – Negotiated Capabilities
Wireless Session Protocol (WSP)
WSP/B Session Suspension and Resume
Wireless Session Protocol (WSP)
WSP/B Session Termination
Wireless Session Protocol (WSP)
WSP/B Complete Transaction / Method Invocation
• CTID – Client Transaction Identifier M – Method
• RU – Request URI STID – Server Transaction Identifier
• S – Status RH – Response Header RB – Response Body
Wireless Session Protocol (WSP)
WSP/B over WTP - Method Invocation
Wireless Session Protocol (WSP)
WSP/B Asynchronous, Unordered Requests
Wireless Session Protocol (WSP)
WSP/B Non-confirmed push
WSP/B Confirmed push
• PH – Push Header
• PB – Push Body
• CPID – Client Push Identifier
• SPID – Server Push Identifier
Wireless Session Protocol (WSP)
WSP/B as Connectionless Session Service (Over WDP)
• SA – Server Address CA – Client Address TID – Transaction Identifier
• M – Method RU – Request URI S – Status
• RH – Response Header RB – Response Body PID – Push Identifier
• PH – Push Header PB – Push Body
Wireless Application Environment (WAE)
• WAE focuses on devices with very limited capabilities, narrow-band environments, and
special security and access control features.
• WAE is to minimize over-the-air traffic and resource consumption on the handheld device.
Wireless Application Environment (WAE)
• WAE adopts a model that closely follows the www model, but assumes additional
gateways that can enhance transmission efficiency.
• A client issues an encoded request for an operation on a remote server.
• Encoding is necessary to minimize data sent over the air and to save resources on the
handheld device.
• Decoders in a gateway now translate this encoded request into a standard request as
understood by the origin servers.
• The gateway transfers this request to the appropriate origin server as if it came from a
standard client.
• Origin servers could be standard web servers running HTTP and generating content using
scripts, providing pages using a database, or applying any other (proprietary) technology.
Wireless Application Environment (WAE)
• The origin servers will respond to the request.
• The gateway now encodes the response and its content (if there is any) and transfers the
encoded response with the content to the client.
• The WAE logical model not only includes this standard request/response scheme, but it
also includes push services. Then an origin server pushes content to the gateway.
• The gateway encodes the pushed content and transmits the encoded push content to the
client.
• Several user agents can reside within a client. User agents include such items as: browsers,
phonebooks, message editors etc.
• WML user agent that supports WML, WML script, or both.
• WTA user agent handles access to, and interaction with, mobile telephone features.
• User agent profile (UAProf), which describes the capabilities of a user agent which may
be related to hardware or software.
WTAArchitecture
• WTA is a collection of telephony specific extensions for call and feature control mechanisms,
merging data networks and voice networks.
• WTA should enable third-party developers as well as network operators to create network-
independent content that accesses the basic features of the bearer network.
• WTA extends the basic WAE application model in several ways:
– Content push: A WTA origin server can push content. The client to handle new network
events that were unknown before.
– Access to telephony functions: The wireless telephony application interface provides
many functions to handle telephony events (call accept, call setup, change of phone book
entries etc.).
– Repository for event handlers: The repository represents a persistent storage on the client
for content required to offer WTA services.
– Security model: WTA allows the client to only connect to trustworthy gateways, which then
have to check if the servers providing content are authorized to send this content to the client.
WTAArchitecture
Three classes of libraries have been defined:
• Common network services: Services common to all mobile networks.
– The call control library contains, e.g., functions to set up, accept, and release calls.
– Network text contains functions to send, read, and delete text messages.
– Phonebook allows for the manipulation of the local phonebook entries (e.g. read,
write, delete).
– Miscellaneous contains, e.g., a function to indicate incoming data, e-mail, fax, or
voice messages.
• Network specific services: Libraries in this class depend on the capabilities of the mobile
network.
• Public services: This class contains libraries with publicly available functions, i.e.,
functions third-party providers may use
WTAArchitecture
Example
• Calling a number (WML) - wtai://wp/mc;07216086415
• Calling a number (WMLScript) - WTAPublic.makeCall("07216086415");
• Any network event can trigger the execution of a new service.
• The client has to translate the event into a URI which then can be processed by the WTA
user agent.
WTA Logical Architecture
• The client is connected via a mobile network with a WTA server, other telephone
networks (e.g., fixed PSTN), and a WAP gateway.
• The client may have voice and data connections over the mobile network.
• Other origin servers within the trusted domain may be connected via the WAP gateway.
• A firewall is useful to connect third-party origin servers outside the trusted domain.
WTAArchitecture
WTA Logical Architecture
WTAArchitecture
• WTA Example: Voice Message
Wireless Markup Language (WML)
• WML follows a deck and card metaphor.
• A WML document is made up of multiple cards.
• Cards can be grouped together into a deck.
• A WML deck is similar to an HTML page, in that it is identified by a URL and is the unit
of content transmission.
• A user navigates with the WML browser through a series of WML cards, reviews the
contents, enters requested data, makes choices etc.
• Features:
– Text and Images
– User interaction
– Navigation
– Context Management
Wireless Markup Language (WML)
Example
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.2//EN"
"http://www.wapforum.org/DTD/wml12.dtd">
<wml>
<card title="Input Fields">
<p> Enter Following Information:<br/>
Name: <input name="name" size="12"/>
Age : <input name="age" size="12" format="*N"/>
Sex : <input name="sex" size="12"/>
</p>
</card>
</wml>
WML Script
• Complement to WML.
• Provides general scripting capabilities.
• Based on JavaScript
• Event-based
• The WMLScript compiler can compile one or more such scripts into a WMLScript
compilation unit.
• 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.
WML Script
• Standard Libraries
– Lang
– Float
– String
– URL
– WML Browser
– Dialogs
• 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;
};

IT8602 Mobile Communication - Unit V

  • 1.
    IT8602 Mobile Communication UnitV - Mobile Transport & Application Layer Kaviya.P Kamaraj College of Engineering & Technology
  • 2.
    Unit V -Mobile Transport & Application Layer Mobile TCP– WAP – Architecture – WDP – WTLS – WTP –WSP – WAE – WTA Architecture – WML
  • 3.
    Mobile TCP • TheM-TCP protocol tries to avoid the sender window from shrinking or reverting to slow-start when bit errors cause a packet-loss. • In Mobile-TCP, TCP connection is divided into fixed and wireless part. • Wired part – Between Fixed Host (FH) and Supervisory Host (SH) • Wireless part – Between SH and Mobile Host (MH) • Many MHs are connected to SH through several base stations • The SH supervises all the packets transmitted to MH and the acknowledgement sent by MH. • When a packet is sent to FH by MH using SH, the wired part uses the normal unmodified TCP & wireless part uses modified version of TCP known as M- TCP to deliver data to MH.
  • 4.
    Mobile TCP • Thispacket is acknowledged only when the MH receives the packet. Thus, it maintains the TCP semantics. • In case the acknowledgement is not received by FH, SH decides that MH is disconnected and sets the sender FH window size to zero. This prevents re- transmission. • When SH notices that the MH is connected, it sets the full window size to the sender FH. • When MH moves from its current SH region to a new SH region, a state transfer take places, so that the new SH can maintain TCP connection between FH and MH. • The wireless side uses an adapted TCP that can recover from packet loss much faster. • This modified TCP does not use slow start, thus, M-TCP needs a bandwidth manager to implement fair sharing over the wireless link.
  • 5.
    Mobile TCP • Advantages –It maintains the TCP end-to-end semantics. – If the MH is disconnected, it avoids useless retransmissions, slow starts or breaking connections by simply shrinking the sender’s window to 0. – Since it does not buffer data in the SH, it is not necessary to forward buffers to a new SH. Lost packets will be automatically retransmitted to the new SH. • Disadvantages – M-TCP assumes low bit error rates, which is not always a valid assumption. – A modified TCP on the wireless link not only requires modifications to the MH protocol software but also new network elements like the bandwidth manager.
  • 6.
    WAPArchitecture • Wireless applicationprotocol forum (WAP Forum) was founded in June 1997 by Ericsson, Motorola, Nokia, and Unwired Planet. • The basic objectives of the WAP Forum are to bring diverse internet content and other data services to digital cellular phones and other wireless, mobile terminals. • All solutions must be: – Interoperable: Allowing terminals and software from different vendors to communicate with networks from different providers; – Scalable: Protocols and services should scale with customer needs and number of customers; – Efficient: Provision of QoS suited to the characteristics of the wireless and mobile networks; – Reliable: Provision of a consistent and predictable platform for deploying services; and – Secure: Preservation of the integrity of user data, protection of devices and services from security problems.
  • 7.
  • 8.
    WAPArchitecture Bearers • The basisfor transmission of data is formed by different bearer services. WAP does not specify bearer services, but uses existing data services and will integrate further services. • No special interface has been specified between the bearer service and the next higher layer. Transport Layer (WDP) • The transport layer with its wireless datagram protocol (WDP) and the additional wireless control message protocol (WCMP) – For bearer-specific adaptation. • The transport layer offers a bearer independent, consistent datagram-oriented service to the higher layers of the WAP architecture. • The transport layer service access point (T-SAP) is the common interface to be used by higher layers independent of the underlying network.
  • 9.
    WAPArchitecture Security Layer (WTLS) •The security layer with its wireless transport layer security protocol (WTLS) offers its service at the security SAP (SEC-SAP). • It can offer data integrity, privacy, authentication, and denial-of-service protection. Transaction Layer (WTP) • The WAP transaction layer with its wireless transaction protocol (WTP) offers a lightweight transaction service at the transaction SAP (TR-SAP). • This service efficiently provides reliable or unreliable requests and asynchronous transactions.
  • 10.
    WAPArchitecture Session Layer (WSP) •The session layer with the wireless session protocol (WSP) offers two services at the session-SAP (S-SAP), one connection-oriented and one connectionless if used directly on top of WDP. • A special service for browsing the web has been defined that offers HTTP/1.1 functionality, long-lived session state, session suspend and resume, session migration and other features needed for wireless mobile access to the web. Application Layer (WAE) • The application layer with the wireless application environment (WAE) offers a framework for the integration of different WWW and mobile telephony applications. • It offers many protocols and services with special service access points.
  • 11.
  • 12.
    WAPArchitecture • On theleft side, different fixed networks, such as the traditional internet and the public switched telephone network (PSTN), are shown. • One cannot change protocols and services of these existing networks. • So several new elements will be implemented between these networks and the WAP- enabled wireless, mobile devices in a wireless network on the right-hand side. • The WWW in the internet offers web pages with the help of HTML and web servers. • To browse these pages or additional pages with handheld devices, a wireless markup language (WML) has been defined in WAP. • Special filters within the fixed network can now translate HTML into WML. • Web servers can already provide pages in WML, or the gateways between the fixed and wireless network can translate HTML into WML. • These gateways not only filter pages but also act as proxies for web access. • WML is additionally converted into binary WML for more efficient transmission.
  • 13.
    Wireless Datagram Protocol(WDP) • The wireless datagram protocol (WDP) operates on top of many different bearer services capable of carrying data. • At the T-SAP, WDP offers a consistent datagram transport service independent of the underlying bearer. • To offer this consistent service, the adaptation needed in the transport layer can differ depending on the services of the bearer. • If the bearer already offers IP services, UDP is used as WDP.
  • 14.
    Wireless Datagram Protocol(WDP) • WDP offers source and destination port numbers used for multiplexing and demultiplexing of data respectively. • The service primitive to send a datagram is TDUnitdata.req with the destination address (DA), destination port (DP), Source address (SA), source port (SP), and user data (UD) as mandatory parameters. • Destination and source address are unique addresses for the receiver and sender of the user data. • These could be MSISDNs (i.e., a telephone number), IP addresses, or any other unique identifiers. • The T-DUnitdata.ind service primitive indicates the reception of data. Here destination address and port are only optional parameters.
  • 15.
    Wireless Datagram Protocol(WDP) • If a higher layer requests a service the WDP cannot fulfill, an error is indicated with the T- DError.ind service primitive . • An error code (EC) is returned indicating the reason for the error to the higher layer. • WDP is allowed to use the primitive to indicate local problems, such as a user data size that is too large. • If any errors happen when WDP datagrams are sent from one WDP entity to another, the wireless control message protocol (WCMP) provides error handling mechanisms for WDP. • WCMP messages are destination unreachable (route, port, address unreachable), parameter problem (errors in the packet header), message too big, reassembly failure, or echo request/reply. • WDP management entity supports WDP and provides information about changes in the environment.
  • 16.
    Wireless Transport LayerSecurity (WTLS) • WTLS can provide different levels of security (for privacy, data integrity, and authentication) and has been optimized for low bandwidth, high-delay bearer networks. • WTLS takes into account the low processing power and very limited memory capacity of the mobile devices for cryptographic algorithms. • WTLS supports datagram and connection-oriented transport layer protocols.
  • 17.
    Wireless Transport LayerSecurity (WTLS) • Before data can be exchanged via WTLS, a secure session has to be established. • The first step is to initiate the session with the SEC-Create primitive. • Parameters are source address (SA), source port (SP) of the originator, destination address (DA), destination port (DP) of the peer. The originator proposes a key exchange suite (KES) (e.g., RSA, DH, ECC), a cipher suite (CS) (e.g., DES, IDEA), and a compression method (CM). • The peer answers with parameters for the sequence number mode (SNM), the key refresh cycle (KR) (i.e., how often keys are refreshed within this secure session), the session identifier (SID) (which is unique with each peer), and the selected key exchange suite (KES’), cipher suite (CS’), compression method (CM’). • The peer also issues a SEC-Exchange primitive. This indicates that the peer wishes to perform public-key authentication with the client, i.e., the peer requests a client certificate (CC) from the originator.
  • 18.
    Wireless Transport LayerSecurity (WTLS) • The negotiation of the security parameters and suites, is indicated on the originator’s side, followed by the request for a certificate. • The originator answers with its certificate and issues a SEC-Commit.req primitive. • The certificate is delivered to the peer side and the SEC-Commit is indicated. • The WTLS layer of the peer sends back a confirmation to the originator. This concludes the full handshake for secure session setup. • After setting up a secure connection between two peers, user data can be exchanged. • This is done using the simple SEC-Unitdata primitive. • The parameters are the same here: source address (SA), source port (SP), destination address (DA), destination port (DP), and user data (UD).
  • 19.
    Wireless Transaction Protocol(WTP) • WTP has been designed to run on very thin clients, such as mobile phones. • Advantages – Reliability over datagram services – Efficiency over connection-oriented services – Support for transaction-oriented services such as web browsing. • In this context, a transaction is defined as a request with its response, e.g. for a web page. • 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)
  • 20.
    Wireless Transaction Protocol(WTP) • Support of different communication scenarios – Class 0: Unreliable message transfer • Example: push service – Class 1: Reliable message transfer without result message • An invoke message is not followed by a result message • Example: reliable push service – Class 2: Reliable message transfer with exactly one reliable result message • 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.
  • 21.
    Wireless Transaction Protocol(WTP) • 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)
  • 22.
    Wireless Transaction Protocol(WTP) • WTP Class 0 Transaction SA: Source Address SP: Source Port DA: Destination Address DP: Destination Port A: flag (Acknowledgement) UD: User Data C: Class Type H: Handle
  • 23.
    Wireless Transaction Protocol(WTP) • WTP Class 1 Transaction, No user acknowledgement • WTP Class 1 Transaction, With user acknowledgement
  • 24.
    Wireless Transaction Protocol(WTP) • WTP Class 2 Transaction, No user acknowledgement
  • 25.
    Wireless Transaction Protocol(WTP) • WTP Class 2 Transaction, With user acknowledgement
  • 26.
    Wireless Transaction Protocol(WTP) • WTP Class 2 Transaction, With hold on, no user acknowledgement
  • 27.
    Wireless Session Protocol(WSP) • WSP provides a shared state between a client and a server to optimize content transfer. • WSP offers the following general features needed for content exchange between cooperating clients and servers: – Session management – Capability negotiation – Content encoding • WAP has specified the wireless session protocol/browsing (WSP/B) which comprises protocols and services most suited for browsing-type applications. • WSP/B offers the following features adapted to web browsing: – HTTP/1.1 functionality – Exchange of session headers – Push and pull data transfer – Asynchronous request
  • 28.
    Wireless Session Protocol(WSP) WSP/B over WTP • WSP/B uses the three service classes of WTP. – Class 0 is used for unconfirmed push, session resume, and session management. – Class 1 is used for Confirmed push – Class 2 is used for method invocation, session resume, and session management. WSP/B Session Establishment • SA – Server Address CA – Client Address RC – Requested Capabilities • CH – Client Header SH – Server Header NC – Negotiated Capabilities
  • 29.
    Wireless Session Protocol(WSP) WSP/B Session Suspension and Resume
  • 30.
    Wireless Session Protocol(WSP) WSP/B Session Termination
  • 31.
    Wireless Session Protocol(WSP) WSP/B Complete Transaction / Method Invocation • CTID – Client Transaction Identifier M – Method • RU – Request URI STID – Server Transaction Identifier • S – Status RH – Response Header RB – Response Body
  • 32.
    Wireless Session Protocol(WSP) WSP/B over WTP - Method Invocation
  • 33.
    Wireless Session Protocol(WSP) WSP/B Asynchronous, Unordered Requests
  • 34.
    Wireless Session Protocol(WSP) WSP/B Non-confirmed push WSP/B Confirmed push • PH – Push Header • PB – Push Body • CPID – Client Push Identifier • SPID – Server Push Identifier
  • 35.
    Wireless Session Protocol(WSP) WSP/B as Connectionless Session Service (Over WDP) • SA – Server Address CA – Client Address TID – Transaction Identifier • M – Method RU – Request URI S – Status • RH – Response Header RB – Response Body PID – Push Identifier • PH – Push Header PB – Push Body
  • 36.
    Wireless Application Environment(WAE) • WAE focuses on devices with very limited capabilities, narrow-band environments, and special security and access control features. • WAE is to minimize over-the-air traffic and resource consumption on the handheld device.
  • 37.
    Wireless Application Environment(WAE) • WAE adopts a model that closely follows the www model, but assumes additional gateways that can enhance transmission efficiency. • A client issues an encoded request for an operation on a remote server. • Encoding is necessary to minimize data sent over the air and to save resources on the handheld device. • Decoders in a gateway now translate this encoded request into a standard request as understood by the origin servers. • The gateway transfers this request to the appropriate origin server as if it came from a standard client. • Origin servers could be standard web servers running HTTP and generating content using scripts, providing pages using a database, or applying any other (proprietary) technology.
  • 38.
    Wireless Application Environment(WAE) • The origin servers will respond to the request. • The gateway now encodes the response and its content (if there is any) and transfers the encoded response with the content to the client. • The WAE logical model not only includes this standard request/response scheme, but it also includes push services. Then an origin server pushes content to the gateway. • The gateway encodes the pushed content and transmits the encoded push content to the client. • Several user agents can reside within a client. User agents include such items as: browsers, phonebooks, message editors etc. • WML user agent that supports WML, WML script, or both. • WTA user agent handles access to, and interaction with, mobile telephone features. • User agent profile (UAProf), which describes the capabilities of a user agent which may be related to hardware or software.
  • 39.
    WTAArchitecture • WTA isa collection of telephony specific extensions for call and feature control mechanisms, merging data networks and voice networks. • WTA should enable third-party developers as well as network operators to create network- independent content that accesses the basic features of the bearer network. • WTA extends the basic WAE application model in several ways: – Content push: A WTA origin server can push content. The client to handle new network events that were unknown before. – Access to telephony functions: The wireless telephony application interface provides many functions to handle telephony events (call accept, call setup, change of phone book entries etc.). – Repository for event handlers: The repository represents a persistent storage on the client for content required to offer WTA services. – Security model: WTA allows the client to only connect to trustworthy gateways, which then have to check if the servers providing content are authorized to send this content to the client.
  • 40.
    WTAArchitecture Three classes oflibraries have been defined: • Common network services: Services common to all mobile networks. – The call control library contains, e.g., functions to set up, accept, and release calls. – Network text contains functions to send, read, and delete text messages. – Phonebook allows for the manipulation of the local phonebook entries (e.g. read, write, delete). – Miscellaneous contains, e.g., a function to indicate incoming data, e-mail, fax, or voice messages. • Network specific services: Libraries in this class depend on the capabilities of the mobile network. • Public services: This class contains libraries with publicly available functions, i.e., functions third-party providers may use
  • 41.
    WTAArchitecture Example • Calling anumber (WML) - wtai://wp/mc;07216086415 • Calling a number (WMLScript) - WTAPublic.makeCall("07216086415"); • Any network event can trigger the execution of a new service. • The client has to translate the event into a URI which then can be processed by the WTA user agent. WTA Logical Architecture • The client is connected via a mobile network with a WTA server, other telephone networks (e.g., fixed PSTN), and a WAP gateway. • The client may have voice and data connections over the mobile network. • Other origin servers within the trusted domain may be connected via the WAP gateway. • A firewall is useful to connect third-party origin servers outside the trusted domain.
  • 42.
  • 43.
  • 44.
    Wireless Markup Language(WML) • WML follows a deck and card metaphor. • A WML document is made up of multiple cards. • Cards can be grouped together into a deck. • A WML deck is similar to an HTML page, in that it is identified by a URL and is the unit of content transmission. • A user navigates with the WML browser through a series of WML cards, reviews the contents, enters requested data, makes choices etc. • Features: – Text and Images – User interaction – Navigation – Context Management
  • 45.
    Wireless Markup Language(WML) Example <?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.2//EN" "http://www.wapforum.org/DTD/wml12.dtd"> <wml> <card title="Input Fields"> <p> Enter Following Information:<br/> Name: <input name="name" size="12"/> Age : <input name="age" size="12" format="*N"/> Sex : <input name="sex" size="12"/> </p> </card> </wml>
  • 46.
    WML Script • Complementto WML. • Provides general scripting capabilities. • Based on JavaScript • Event-based • The WMLScript compiler can compile one or more such scripts into a WMLScript compilation unit. • 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.
  • 47.
    WML Script • StandardLibraries – Lang – Float – String – URL – WML Browser – Dialogs • 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; };