PERVASIVE COMPUTING Unit II Part A 1. What is XML? XML stands for EXtensible Markup Language XML is a markup language much like HTML XML was designed to carry data, not to display data XML tags are not predefined. You must define your own tags XML is designed to be self-descriptive XML is a W3C Recommendation 2. Compare XML and HTML XML and HTML were designed with different goals: XML was designed to transport and store data, with focus on what data is HTML was designed to format and display data, with focus on how data looks XML is Not a Replacement for HTML XML is a complement to HTML. 3. Write short notes on Your Own Tags The tags used in HTML are predefined. HTML documents can only use tags defined in the HTML standard (like <p>, <h1>, etc.). The tags like <to> and <from> are not defined in any XML standard. These tags are "invented" by the author of the XML document. That is because the XML language has no predefined tags. XML allows the author to define his/her own tags and his/her own document structure. 4. How XML brings interoperability between heterogeneous devices? XML is a W3C Recommendation XML is a software- and hardware-independent tool for carrying information. XML is the most common tool for data transmissions between all sorts of applications. XML is used in many aspects of web development, often to simplify data storage and sharing. 5. What is the role of XML in Pervasive computing? In Pervasive computing, XML provides portable and structured information types for display on pervasive (wireless) computing devices such as PDAs, cellular phones, and others. XML is a software- and hardware-independent tool for carrying information. For example, WML (Wireless Markup Language) and VoiceXML are currently evolving standards for describing visual and speech-driven wireless device interfaces. 6. What is WAP? WAP is Wireless Application Protocol that extends internet technology for mobile devices. WAP is used to access services and information WAP is inherited from Internet standards WAP is a protocol designed for micro browsers(wap phones) WAP enables the creating of web applications for mobile devices. 1
7. In what aspects the mobile user interfaces are typically limited? Small display Restricted input capability Limited memory and processing power Low speed network connections with high latency 8. How a HTML page is display in WAP phone? WAP uses WML instead of HTML. The replacement of HTML pages with highly condensed WML pages called cards, reduces the overhead of content representation and reflects the limited display capabilities of mobile devices. 9. List the two main tasks of WAP gateway. Protocol conversion: WAP gateway is the intermediary between client and the server. Communication between server and gateway is made using HTTP protocols, and between gateway, client-phone is made using WAP protocol. Content encoding: Data transferred between the client and the WAP gateway are binary encoded in order to minimize data transfer. 10. List out the WAP Profile Elements. Homepage Connection type & security Bearer Dial up number IP address Authentication type Data call type& speed User name& password 11. Briefly explain OTP OTP stands for Over The air Provisioning, settings profiles via SMS. The user requests a profile by sending a specific SMS message to the service provider. Then the profile is sent in a response message and must be activated by the user. 12. What are all the security issues identified in current WAP Architecture? End-end security Missing secure authentication Unauthenticated OTP Missing public key Infrastructure 13. Write short notes on WAP Micro Browsers To fit into a small wireless terminal, WAP uses a Micro Browser. A Micro Browser is a small piece of software that makes minimal demands on hardware, memory and CPU. It can display information written in a restricted mark-up language called WML. The Micro Browser can also interpret a reduced version of JavaScript called WMLScript. 2
14. What is WML? Who defined it? WML stands for Wireless Markup Language. It is a mark-up language inherited from HTML, but WML is based on XML, so it is much stricter than HTML.It is defined by WAP forum. 15. Define Decks & Cards. WML is used to create pages that can be displayed in a WAP browser. Pages in WML are called DECKS. Decks are constructed as a set of CARDS. 16. List the Standard Libraries available in WML. Lang library Float library String library URL library WML Browser library Dialogs Library 17. What are the functions provided by WML Browser Library? The WML browser provides functions for manipulating the associated WML context, such as loading a new page or updating the display. Another function setvar is used to set value of a WML variable. 18. What is WMLScript? WML uses WML Script to run simple code on the client. WMLScript is a light JavaScript language. However, WML scripts are not embedded in the WML pages. WML pages only contains references to script URLs. WML scripts need to be compiled into byte code on a server before they can run in a WAP browser. 19. Why WML decks & scripts are encoded? The messages exchanged between the WAP gateway and the mobile devices are binary encoded to reduce the number of bytes transferred. Thereby both WML decks and WML Scripts are encoded. 20. Define Pagination? Pagination is also referred to as deck fragmentation.in case of news applications sending large amount of text to mobile device is common, in that case the data is paginated the decks are fragmented. 21. Brief notes on WAP Push. The message which does not requires any form of answer from receiver side use the WAP push service. Example: sports updates, stock quotes. Push operation is triggered from a push initiator by sending a push message to push proxy gateway (PPG) using the Push Access Protocol. Then the PPG deliver the message to mobile device using push over the air protocol (OTA). 3
22. Sketch out the WAP gateway protocol stack. PART B 1. Describe the components of WAP architecture. WAP is designed in a layered fashion so that it can be extensible, flexible, and scalable. As a result, there are five layers: Application Layer Wireless Application Environment (WAE). This layer is of most interest to content developers because it contains, among other things, device specifications and the content development programming languages, WML and WMLScript. Session Layer Wireless Session Protocol (WSP). Unlike HTTP, WSP has been designed by the WAP Forum to provide fast connection suspension and reconnection. It supports HTTP 1.1 functionality and semantics in a binary-encoded format to minimize data transfer to the mobile phone. Transaction Layer Wireless Transaction Protocol (WTP). The WTP runs on top of a datagram service such as User Datagram Protocol (UDP) and is part of the standard suite of TCP/IP protocols used to provide a simplified protocol suitable for low bandwidth wireless stations. It offers three classes of transaction services Class0:provides unreliable one-way messages without confirmation Class1:provide reliable one way message without result Class2: provides reliable two way request-response messages. Security Layer Wireless Transport Layer Security (WTLS). WTLS incorporates security features that are based upon the established Transport Layer Security (TLS) protocol standard. It includes data integrity checks, privacy, service denial, and authentication services. 4
WTLS give several options for key exchange including RSA, Diffie-Hellman, ECC-Elliptic Curve Cryptography. Privacy can be secured using DES-Data Encryption Standard and IDEA-International Data Encryption Algorithm. Transport Layer Wireless Datagram Protocol (WDP). The WDP allows WAP to be bearer-independent by adapting the transport layer of the underlying bearer. The WDP presents a consistent data format to the higher layers of the WAP protocol stack, thereby offering the advantage of bearer independence to application developers. Error during transmission is communicated via WCMP-Wireless Control Message Protocol Each of these layers provides a well-defined interface to the layer above it. This means that the internal workings of any layer are transparent or invisible to the layers above it. The layered architecture allows other applications and services to utilize the features provided by the WAP-stack as well. This makes it possible to use the WAP-stack for services and applications that currently are not specified by WAP. The WAP protocol architecture is shown below alongside a typical Internet Protocol stack. Note that the mobile network bearers in the lower part of the figure above are not part of the WAP protocol stack. 5
2. Explain a. WWW programming model b. WAP programming model In www programming model, the browser at user PC supports HTML and the request as well as response is going to follow the HTTP protocol. The request from HTML browser is send as an HTTP request and the response from server is replies HTTP response. There is no protocol conversion, since the client side has sufficient hardware capabilities and user interfaces such a way to support typical HTML pages. WAP gateway, which is responsible for protocol conversion and data formatting. It acts as the interface between the wired and wireless worlds. Since mobile nodes, WAP phones have 6
limited capabilities they cannot support typical HTML pages.so that protocol conversion and formatting-encoding are carried out to minimize data transfer. 1. The user selects an option on their mobile device that has a URL with WML content assigned to it. 2. The phone sends the URL request via the phone network to a WAP gateway, using the binary encoded WAP protocol. 3. The gateway translates this WAP request into a conventional HTTP request for the specified URL, and sends it on to the Internet. 4. The appropriate Web server picks up the HTTP request. 5. The server processes the request, just as it would be any other request. If the URL refers to a static WML file, the server delivers it. If a CGI script is requested, it is processed and the content returned as usual. 6. The Web server adds the HTTP header to the WML content and returns it to the gateway. 7. The WAP gateway compiles the WML into binary form. 8. The gateway then sends the WML response back to the phone. 9. The phone receives the WML via the WAP protocol. 10. The micro-browser processes the WML and displays the content on the screen. 3. List the WAP profile elements and describe it, and sketch out the sample WAP infrastructure a. Homepage: URL address of the internet start page. b. Connection type: defines communication protocol between WAP phone and dial in router,either continuous-switched or temporary-packet c. Connection security: ON or OFF to bring up or down WTLS session d. Bearer: define the bearer service used for data transfer e. Dial up number: extension of dial in server to which WAP gateway is attached. f. IP address: address of WAP gateway g. Authentication type: defines whether a security certificate is used for client authentication. h. Data call type: defines signaling between mobile phone and dial in server i. Data speed: communication speed between phone and the network, usually 9.6 to 14.4 baud j. User name: generic user name for access k. Password: secret password corresponding to that user <WAP infrastructure diagram is available in book as well as course notes for reference> 7
4. Explain the security issues in WAP architecture and provide the recommended solutions. <List the issues> End-end security Missing secure authentication Unauthenticated OTP Missing public key Infrastructure < Brief notes on each issues- refer course notes> Solutions: Transport layer security Redirect third party gateway <With essential diagram explain it is resolved: refer course notes> 5. Write short notes on a. Wireless Transaction Protocol M.SARAVANA KARTHIKEYAN Wireless Transaction Protocol (WTP). The WTP runs on top of a datagram service such as User Datagram Protocol (UDP) and is part of the standard suite of TCP/IP protocols used to provide a simplified protocol suitable for low bandwidth wireless stations. It offers three classes of transaction services Class0:provides unreliable one-way messages without confirmation Class1:provide reliable one way message without result Class2: provides reliable two way request-response messages. b. Push Access Protocol The message which does not requires any form of answer from receiver side use the WAP push service. Example: sports updates, stock quotes. Push operation is triggered from a push initiator by sending a push message to push proxy gateway (PPG) using the Push Access Protocol. Then the PPG deliver the message to mobile device using push over the air protocol (OTA). c. Micro browsers To fit into a small wireless terminal, WAP uses a Micro Browser. A Micro Browser is a small piece of software that makes minimal demands on hardware, memory and CPU. It can display information written in a restricted mark-up language called WML. The Micro Browser can also interpret a reduced version of JavaScript called WMLScript. 8
6. Write a simple program in WML for Temperature Converter. Temperature converter WML deck: 9
Scree shots: 10