6
Network architecture supporting
wireless applications
The Wireless Application Environment (WAE) architecture is designed to support Mobile
Terminals (MTs) and network applications using different languages and character sets.
WAE user agents have a current language and accept content in a set of well-known
character encoding sets. Origin server-side applications can emit content in one or more
encoding sets and can accept input from the user agent in one or more encoding sets.
Wireless Telephony Application (WTA) is an application framework for telephony ser-
vices. The WTA user agent has the capability for interfacing with mobile network services
available to a mobile telephony device, that is, setting up and receiving phone calls.
The Wireless Application Protocol (WAP) Push framework introduces a means within
the WAP effort to transmit information to a device without a previous user action. In
the client/server model, a client requests a service or information from a server, which
transmits information to the client. In this pull technology, the client pulls information
from the server.
6.1 WAE ARCHITECTURE
The WAE architecture includes networking schemes, content formats, programming lan-
guages, and shared services. Interfaces are not standardized and are specific to a particular
implementation. WAE can work with a browser and a class of user agents used in the
World Wide Web (WWW).
In the Internet WWW, applications present content to a client in a set of standard
data formats that are browsed by client side user agents known as Web browsers.Auser
agent sends requests for one or more data objects or content to an origin server, which
responds with the requested data expressed in one of the standard formats known to
the user agent [i.e., Hypertext Markup Language (HTML)]. The WWW logical model is
shown in Figure 6.1.
Mobile Telecommunications Protocols For Data Networks. Anna Ha´
c
Copyright 2003 John Wiley & Sons, Ltd.
ISBN: 0-470-85056-6
94 NETWORK ARCHITECTURE SUPPORTING WIRELESS APPLICATIONS
Client
User
agent
Response (content)
Request (URL)
Origin server
CGI
scripts,
etc.
Content
Figure 6.1 WWW logical model.
Encoded request
Encoded response
Gateway
Encoders
and
decoders
Origin server
CGI
scripts,
etc.
Content
WAE
user
agent
Client
Request
Response (content)
Figure 6.2 WAE logical model.
All resources on the WWW are named using Internet standard Uniform Resource Loca-
tors (URLs). All classes of data on the WWW are given as specific types, allowing the
user agent to correctly distinguish and present them appropriately. The WWW defines
a variety of standard content formats supported by most browser user agents, including
the HTML, the JavaScript scripting language, and other formats like bitmap image for-
mats. The WWW defines a set of standard networking protocols allowing any browser to
communicate with any origin server, for example, Hypertext Transfer Protocol (HTTP).
The WAE logical model is shown in Figure 6.2. In the WAE model, the content is
transported using standard protocols in the WWW domain and an optimized HTTP-
like protocol in the wireless domain. The content and services in WAE architecture are
hosted on standard Web origin servers using proven technologies like Common Gateway
Interface (CGI). The content is located by using WWW standard URLs. WAE supports
WAE ARCHITECTURE 95
Mobile Network Services such as Call Control and Messaging. WAE architecture supports
low bandwidth and high latency networks and considers CPU processing constraints in
MTs. WAE assumes the existence of gateway functionality responsible for encoding and
decoding data transferred from and to the mobile client. The purpose of the encoding
content delivered to the client is to minimize the size of data sent to the client Over
The Air (OTA), and to minimize the computational energy required by the client to
process the data. The gateway functionality can be added to origin servers or placed in
dedicated gateways.
The main elements of the WAE model are WAE user agents, content generators,
standard content encoding, and WTA. WAE user agents interpret network content ref-
erenced by a URL. Content generators are the applications or services on origin servers,
like CGI scripts, that produce standard content formats in response to requests from user
agents in MTs. Standard content encoding allows a WAE user agent to navigate Web
content. WTA is a collection of telephony-specific extensions for call and feature control
mechanisms providing advanced Mobile Network Services.
WAE is based on the architecture used for WWW proxy servers. The situation in which
a user agent, a browser, must connect through a proxy to reach an origin server, the server
that contains the desired content, is very similar to the case of a wireless device accessing
a server through a gateway. Most connections between the browser and the gateway use
WAP Session Protocol (WSP), regardless of the protocol of the destination server. URL
refers only to the destination server’s protocol and has no bearing on what protocols
may be used in intervening connections. The gateway performs protocol conversion by
translating requests from WSP into other protocols, and translating the responses back
into WSP. Content conversion performed by the gateway is analogous to HTML/HTTP
proxies available on the Web. In the HTTP scheme, the browser communicates with the
gateway using WSP. The gateway provides protocol conversion functions to connect to
an HTTP origin server.
WAE logical layers include user agents such as browsers, phone books, message
editors, and so on, and services and formats including common elements and formats
accessible to user agents such as Wireless Markup Language (WML), WMLScript, image
formats, vCard (electronic business card) and vCalendar (electronic calendar and schedul-
ing exchange) formats, and so on. The WAE client components are shown in Figure 6.3.
WAE allows the integration of domain-specific user agents with varying architectures
and environments. A WTA user agent is specified as an extension to the WAE specifi-
cation for the mobile telephony environments. The WTA extensions allow for accessing
and interacting with mobile telephone features, like call control, and other applications
assumed on the telephones, such as phone books and calendar applications. The features
and capabilities of a user agent are decided by those who implement them.
WAE services and formats include the WML, the WMLScript (Wireless Markup Script-
ing Language), WAE applications, and WAE-supported content formats.
WML is a tag-based document language. It is an application of a generalized markup
language and is specified as an Extensible Markup Language (XML) document type.
WML is optimized for specifying presentation and user interaction on limited capability
devices such as telephones and wireless MTs. WML and its supporting environment
are designed using certain small narrow-band device constraints including small displays,
96 NETWORK ARCHITECTURE SUPPORTING WIRELESS APPLICATIONS
WAE
User agents
Services / formats
WTA user agent
WML user agent
Other agents
Other
applications
and
services
WMLScript
WAP Protocol stack and services
Device OS/services
WTA srvs URLs
WML Other srvs.
& formats
Figure 6.3 WAE client components.
limited user input facilities, narrow-band network connections, limited memory resources,
and limited computational resources.
The WML features include
support for text and images;
support for user input;
navigation and history stack;
international support;
ManMachine Interface (MMI) independence;
narrow-band optimization; and
state and context management.
WMLScript is a lightweight procedural scripting language enhancing the standard
browsing and presentation facilities of WML with behavioral capabilities, supporting
more advanced user interface, adding intelligence to the client, providing a convenient
mechanism to access the device and its peripherals, and reducing the need for round trips
to the origin server. WMLScript is an extended subset of JavaScript for narrow-band
devices and is integrated with WML for future services and in-device applications.
WAE user agents can use URL services. WAE components extend the URL semantics,
for example, in WML, in which URL fragments are extended to allow linking to particular
WMLScript functions. WAE allows formats for data types including images, multipart
messages, and user agent-specific formats.
WML user agent logical architecture is shown in Figure 6.4. A user submits a request
to the origin server using a WML user agent, which requests the service by using a URL
WAE ARCHITECTURE 97
Client Origin server
CGI
scripts,
etc.
Content
WML
user
agent
WAE
services
Gateway
WML encoder
WMLScript
compiler
WML decks
with WMLScript
Figure 6.4 WML user agent logical architecture with gateway.
scheme operation. The origin server replies by sending a single deck in a textual format.
On their way back to the client, textual decks are expected to pass through a gateway
where they are converted into formats better suited for OTA transmission and limited-
device processing. The gateway does all the necessary conversions between the textual
and binary formats. A WML encoder (or tokenizer) in the gateway converts each WML
deck into its binary format. Encoded content is then sent to the client to be displayed and
interpreted.
The user agent may submit one or more additional requests, using a URL scheme, for
WMLScript as the user agent encounters references to them in a WML deck. On its way
back, a WMLScript compiler takes the script as input and compiles it into byte code that
is designed for low bandwidth and thin mobile clients. The compiled byte code is then
sent to the client for interpretation and execution.
Figure 6.5 shows WML user agent logical architecture without a gateway. WAE does
not specify the location where the actual encoding and compilation is done. The origin
servers may have built-in WML encoders and WMLScript compilers. Some services may
Client Origin server
CGI
scripts,
etc.
Content
WML
user
agent
WAE
services
WML encoder
WMLScript
compiler
WML decks
with WMLScript
Figure 6.5 WML user agent logical architecture without a gateway.