An example of distributed objects and components is CORBA (Common Object Request Broker Architecture). CORBA is an open distributed object computing infrastructure being standardized by the Object Management Group (http://www.omg.org). CORBA simplifies many common network programming tasks used in a net centric application environment. These are object registration, object location, and activation; request demul-tiplexing; framing and error-handling; parameter marshaling and marshaling; and
44 Mobile Computing
operation dispatching. CORBA is vendor-independent infrastructure. A CORBA-based program from any vendor on almost any computer, operating system, programming language and network, can inter operate with a CORBA-based program from the same or another vendor, on almost any other computer, operating system, programming language and network. COBRA is useful in many situations because of the easy way that CORBA integrates machines from so many vendors, with sizes ranging from mainframes through minis and desktops to hand-gelds and embedded systems. One of its most important, as well as the most frequent, uses is in servers that must handle a large number of clients, at high hit rates, with high reliability.
Distributed Object and Components
An example of distributed objects and components is CORBA (Common Object Request Broker Architecture). CORBA is an open distributed object computing infrastructure being standardized by the Object Management Group (http://www.omg.org). CORBA simplifies many common network programming tasks used in a netcentric application environment. These are object registration, object location, and activation; request demul-tiplexing; framing and error-handling; parameter marshalling and demarshalling; and
44 Mobile Computing
operation dispatching. CORBA is vendor-independent infrastructure. A CORBA-based program from any vendor on almost any computer, operating system, programming language and network, can interoperate with a CORBA-based program from the same or another vendor, on almost any other computer, operating system, programming language and network. CORBA is useful in many situations because of the easy way that CORBA integrates machines from so many vendors, with sizes ranging from mainframes through minis and desktops to hand-helds and embedded systems. One of its most important, as well as the most frequent, uses is in servers that must handle a large number of clients, at high hit rates, with high reliability.
44 Mobile Computing
operation dispatching. CORBA is vendor-independent infrastructure. A CORBA-based program from any vendor on almost any computer, operating system, programming language and network, can interoperate with a CORBA-based program from the same or another vendor, on almost any other computer, operating system, programming language and network. CORBA is useful in many situations because of the easy way that CORBA integrates machines from so many vendors, with sizes ranging from mainframes through minis and desktops to hand-helds and embedded systems. One of its most important, as well as the most frequent, uses is in servers that must handle a large number of clients, at high hit rates, with high reliability.
Transaction Processing (TP) Middleware
Transaction Processing Middleware provides tools and an environment for developing transaction-based distributed applications. An ideal TP system will be able to input data into the system at the point of information source and the output of the system is delivered at the point of information sink. In an ideal TI' system, the device for input and output can potentially be different (Figure 2.3). Also, the output can be an unsolicited message for a device. TI' is used in data management, network access, security systems, delivery order processing, airline reservations, customer service, etc. to name a few. TP systems are generally capable of providing services to thousands of clients in a distrib-uted client/server environment. CICS (Customer Information Control System) is one of the early. TP application systems on IBM mainframe computers.
TI' middleware maps numerous client requests through application-service routines to different application tasks. In addition to these processing tasks, TP rniddleware includes numerous management features, such as restarting failed processes, dynamic load balancing and enforcing consistency of distributed data. TI' midclleware is independent of the database architecture. TI' middleware optimizes the use of resources by multiplexing many client
TI' middleware maps numerous client requests through application-service routines to different application tasks. In addition to these processing tasks, TP rniddleware includes numerous management features, such as restarting failed processes, dynamic load balancing and enforcing consistency of distributed data. TI' midclleware is independent of the database architecture. TI' middleware optimizes the use of resources by multiplexing many client
Transaction Processing (TP) Middleware
Transaction Processing Middleware provides tools and an environment for developing transaction-based distributed applications. An ideal TP system will be able to input data into the system at the point of information source and the output of the system is delivered at the point of information sink. In an ideal TI' system, the device for input and output can potentially be different (Figure 2.3). Also, the output can be an unsolicited message for a device. TI' is used in data management, network access, security systems, delivery order processing, airline reservations, customer service, etc. to name a few. TP systems are generally capable of providing services to thousands of clients in a distrib-uted client/server environment. CICS (Customer Information Control System) is one of the early. TP application systems on IBM mainframe computers.
TI' middleware maps numerous client requests through application-service routines to different application tasks. In addition to these processing tasks, TP rniddleware includes numerous management features, such as restarting failed processes, dynamic load balancing and enforcing consistency of distributed data. TI' midclleware is independent of the database architecture. TI' middleware optimizes the use of resources by multiplexing many client
TI' middleware maps numerous client requests through application-service routines to different application tasks. In addition to these processing tasks, TP rniddleware includes numerous management features, such as restarting failed processes, dynamic load balancing and enforcing consistency of distributed data. TI' midclleware is independent of the database architecture. TI' middleware optimizes the use of resources by multiplexing many client
Transaction Processing (TP) Middleware
Transaction Processing Middleware provides tools and an environment for developing transaction-based distributed applications. An ideal TP system will be able to input data into the system at the point of information source and the output of the system is delivered at the point of information sink. In an ideal TI' system, the device for input and output can potentially be different (Figure 2.3). Also, the output can be an unsolicited message for a device. TI' is used in data management, network access, security systems, delivery order processing, airline reservations, customer service, etc. to name a few. TP systems are generally capable of providing services to thousands of clients in a distrib-uted client/server environment. CICS (Customer Information Control System) is one of the early. TP application systems on IBM mainframe computers.
TI' middleware maps numerous client requests through application-service routines to different application tasks. In addition to these processing tasks, TP rniddleware includes numerous management features, such as restarting failed processes, dynamic load balancing and enforcing consistency of distributed data. TI' midclleware is independent of the database architecture. TI' middleware optimizes the use of resources by multiplexing many client
TI' middleware maps numerous client requests through application-service routines to different application tasks. In addition to these processing tasks, TP rniddleware includes numerous management features, such as restarting failed processes, dynamic load balancing and enforcing consistency of distributed data. TI' midclleware is independent of the database architecture. TI' middleware optimizes the use of resources by multiplexing many client
Message-oriented Middleware (MOM)
Message-oriented Middle ware is a middle ware framework that loosely connects differ-net applications through asynchronous exchange of messages. A MOM works over a networked environment without having to know what platform or processor the other application is resident on. The message can contain formatted data, requests for action, or unsolicited response. The MOM system provides a message queue between any two interoperating applications. lithe destination process is out of service or busy, the mes-sage is held in a temporary storage location until it can be processed. MOM is generally asynchronous, peer-to-peer, and works in publish/subscribe fashion. In publish/sub-scribe model one or many objects subscribe to an event. As the event occurs, it will be published by the asynchronous loosely coupled object The MOM will notify the sub-scribe rs about this event. However, most implementations of MOM support synchrony-nous (request/response) message passing as well MOM is most appropriate for event-driven applications. When an event occurs, the publisher application hands off to the messaging middle ware application the responsibility of notifying subscribers that the event has happened. In a net centric environment, MOM can work as the integration platform for different applications. Example of MOM are Message Queue from IBM known as Miseries. The equivalent from Java is,IMS (Java Message Service).
Thursday, September 13, 2012
1 vresentation (Her- I)
This is the user facing system in the first tier. This is the layer of agent applications and systems. These applications run on the client device and offer all the user inter-faces. This tier is responsible for presenting the information to the end user. Humans generally use visual and audio means to receive information from machines (with some exceptions like vibrator in mobile phones). Humans also use keyboard (laptop computers, cell phones), pen (tablet PC, palmtops), touch screen (kiosks), or voice (telephone) to feed the data to the system. In the case of the visual, the presentation of information will be through a screen. Therefore, the visual presentation will relate to rendering on a screen. 'Presentation Tier' includes web browsers (like lilozila, lynx, Internet Explorer and Netscape Navigator), WA? browsers and customized client programs. A mobile computing agent needs to be context-aware and device-independent.
In general, the agent software in the client device is an Internet browser. In some cases, the agent software is an applet running on a browser or a virtual machine (Java Virtual Machine for example). The functions performed by these agent systems can range from relatively simple tasks like accessing some other application through http API, to sophisticated applications like realtime sales and inventory management across multiple vendors. Some of these agents work as a web scraper. In a web scraper, the agent embeds functionality of http browser and functions like an auto-mated web browser. The scraper picks up part of the data from the web page and filters off the remaining data according to some predefined template. These applica-tions can be in Business to Business (B2B) space, Business to Consumer (B2C) space or Business to Employee (B2E) space, or machine to machine (1\4214) space. Applica-tions can range from e-commerce, workflow, supply chain management to legacy applications.
There are agent software in the Internet that access the remote service through telnet interface. There are different flavors of telnet agents in use. These are standard telnet for Unix servers; TN3270 for IBM OS/390; TN5250 for IBM AS/400 or VT3K for HP3000. For some applications, we may need an agent with embedded telnet protocol. This will work like an automated telnet agent (virtual terminal) similar to a web scraper. These types of user agents or programs work as M2NI interface or software robots. These kinds of agents are used quite frequently to make legacy applications mobile. Also, such systems are used in telecommunication world as mediation servers within the OSS (Operation and Support Subsystem).
THREE-TIER ARCHITECTURE
THREE-TIER ARCHITECTURE
To design a system for mobile computing, we need to keep in mind that the system will be used through any network, any bearer, any agent and any device. To have a univer-sal access, it is desirable that the server is connected to a ubiquitous network like the Internet. To have an access from any device, a web browser is desirable. The reason is simple; web browsers are ubiquitous, we get a browser in any computer. The browser agent can be Internet Explorer or Netscape Navigator or Mozila or any other standard
Mobile Computing Architecture 39
agent. Also, the system should preferably be context aware. We will discuss context awareness later.
We have introduced the concept of three-tier architecture. We have also discussed why it is necessary to go for Internet and three-tier architecture for mobile computing. The important question is what a mobile three-tier application actually should consist of. Figure 2.2 depicts a three-tier architecture for a mobile computing environment. These tiers are presentation tier, application tier and data tier. Depending upon the situation, these layers can be further sub layered.
Monday, September 10, 2012
INTERNET—THE UBIQUITOUS NETWORK
For any content to be available anywhere, we need a ubiquitous network that will carry this content. As of today, there are two networks, which are ubiquitous. One is the teleconununication network and the other is the Internet network. Both these networks are in real terms network of networks. Different networks have been joined together using a common protocol (glue). In loose terms it can be stated that SSIt7 is the glue for telecouununicarion network whereas TCP/IP is the glue for Internet. We need one of these networks to transport content from One place to another.
We have three types of ba.sic contents: audio, video and text Some of these contents can tolerate little delay in delivery whereas some cannot. Packet switched networks like Internet are better suited for contents which can tolerate little delay. Telecommunication or circuit switch networks are better-suited for realtirne contents that cannot tolerate delays. A ubiq-uitous application needs to use these networks for taking the content from one place to another. A network can be divided into three main segments viz., Core, Edge and Access. Core: As the name signifies; core is the part of the network that is the backbone. This is the innermost part of the network. The primary functions for the core network is to deliver traffic efficiently at the least cost. Core looks at the traffic more from the bit stream point of view. Long-distance operators and backbone operators own core net-works. This part of the network deals with transmission media and transfer points.
Edge: As the name suggests, this is at the edge of the network. These are generally man-aged and owned by ISPs (Internet Service Providers) or local switches and exchanges. Edge looks at the traffic more from the service point of view. It is also responsible for the distribution of the traffic.
Access: This part of the network services the end point or the device by which the serv-ice will be accessed. This deals with the last mile of transmission. This part is either through a wireline or die wireless. From the mobile computing point of view, this will be mostly through the wireless.
Internet is a network of networks and is available universally. In the last few years, the popularity of web-based applications has made more and more sewices available through the Internet. This had a snowball effect encouraging more networks and more contents to be added to the Web. Therefore, Internet is the preferred bearer network for audio, video or text contents that can tolerate delay. Internet supports many protocols. However, for ubiquitous access, web based application is desirable. A web-based appli cation in the Internet uses HTTP protocol and works like a request/response service. This is similar to conventional client/server application. The fundamental difference between a web application and a conventional client/server paradigm is that in the case of conventional client/server application, the user facing client interface contains part of the business logic. However, in the case of web applications, the client will be a thin client without any business logic. The thin client or the agent software in the diem device will relate only to the rendering functions. Such user agents will be a web browser like Mozila, Internet Explorer or Netscape Navigator.
The types of client devices that can access the Internet are rapidly expanding. These client devices are networked either through the wireless or through a wireline. The server on the contrary, is likely to be connected to the access network through wired LAN. In addition to standard computers of different shapes and sizes, client devices can be Personal Digital Assistants (PDA) such as the PaImPilot, Sharp Zaurus, or il'aq; hand-held personal computers such as the EPOC, Symbian, Psion and numerous Windows-CE machines; mobile phones with GPRS/WAP and 3G capability such as Nokia, Sony Ericsson etc; Internet-capable phones such as the Smartphone (cellular) and Screenphone (wired); set-top boxes such as WebTV etc. Even good old voice-based telephone can be used as the client device. Voice-activated Internet browser will be very useful for visually challenged people. To fulfill the promise of universal access to the Internet, devices with very diverse capabilities need to be catered to. For the wireless, the devices range from the small footprint mobile phone to the large footprint laptop comouters.
Edge: As the name suggests, this is at the edge of the network. These are generally man-aged and owned by ISPs (Internet Service Providers) or local switches and exchanges. Edge looks at the traffic more from the service point of view. It is also responsible for the distribution of the traffic.
Access: This part of the network services the end point or the device by which the serv-ice will be accessed. This deals with the last mile of transmission. This part is either through a wireline or die wireless. From the mobile computing point of view, this will be mostly through the wireless.
Internet is a network of networks and is available universally. In the last few years, the popularity of web-based applications has made more and more sewices available through the Internet. This had a snowball effect encouraging more networks and more contents to be added to the Web. Therefore, Internet is the preferred bearer network for audio, video or text contents that can tolerate delay. Internet supports many protocols. However, for ubiquitous access, web based application is desirable. A web-based appli cation in the Internet uses HTTP protocol and works like a request/response service. This is similar to conventional client/server application. The fundamental difference between a web application and a conventional client/server paradigm is that in the case of conventional client/server application, the user facing client interface contains part of the business logic. However, in the case of web applications, the client will be a thin client without any business logic. The thin client or the agent software in the diem device will relate only to the rendering functions. Such user agents will be a web browser like Mozila, Internet Explorer or Netscape Navigator.
The types of client devices that can access the Internet are rapidly expanding. These client devices are networked either through the wireless or through a wireline. The server on the contrary, is likely to be connected to the access network through wired LAN. In addition to standard computers of different shapes and sizes, client devices can be Personal Digital Assistants (PDA) such as the PaImPilot, Sharp Zaurus, or il'aq; hand-held personal computers such as the EPOC, Symbian, Psion and numerous Windows-CE machines; mobile phones with GPRS/WAP and 3G capability such as Nokia, Sony Ericsson etc; Internet-capable phones such as the Smartphone (cellular) and Screenphone (wired); set-top boxes such as WebTV etc. Even good old voice-based telephone can be used as the client device. Voice-activated Internet browser will be very useful for visually challenged people. To fulfill the promise of universal access to the Internet, devices with very diverse capabilities need to be catered to. For the wireless, the devices range from the small footprint mobile phone to the large footprint laptop comouters.
HISTORY OF INTERNET
Followirg the succesthil launch of Sputnik in 1937 by the Russians, USA felt the need of research in certain focused areas. Therefore. Advance Research Project Agency IARPAt was forricel to fund Science and 'technology projects and position USA as a leader in technology Internet represents one of the best eke:up/es of the benefits of sustained investment on research and development through ARP& Beginning with the early research in packet switching. the government. industry and academia have been partners in evolving and deploying the exciting Internet technology. People in almost all parts of life starting from education. IT, telecommunications. business, and society at large have felt the influence of this pervasive information ir.frastructurc. Today, almost anybody and everybody on the street uses terms like laculty@iiitb.ac.in' or 'hup://wwwisoc.org' In the early sixties, Leonard Kleinoxk developed the basic principles of packet swi:ching at 34 Lt During the same period Paul Ratan in a series of RAND Corporation reports recommended several ways to accomphsh packet switch network as well In 1965 Lawrence C. Roberts in avociation with Thomas Merrill, connected the 1X-2 computer in Massachusetts to the (2:32 in California with a low speed dial up telephone line ere minis the first computer network. In 1171 Ray "lomlinson at t3BN wrote the software to send and read simple electronic mail. In October 1972 demonstration of the ARRANET was done at the International Computer Communication Conference (.1CCOi. This was the first public demonsuation of this new network technology to the public. It was also ir PE2 that the initial *hoc application. electronic mail, was introduced. In I97J work began on the Transmission Control Protocol ,:Tcr; at a Stanford University laboratory headed by Vincent Cerf. In 19S6. the U.S. NSF ;National Science Foundation; Undated the development oldie NSFNEI which provides a major backbone communication service for the Internet. In Eaton°, major international backbones such as NORDUN ET and others provide con-nectivity, to a huge number ',Networks. Internet slowly evolved as the universal network of netwoi la, which cosmetic almost every data networks oldie world with a each spread over the whole earth. It can be debated as to what the definition and scope of this global network is. (hi 24 October 1995, the Federal Net-working Council IFNCi unanimously passed a revolutionist LO officially define die mini Internet. Attending to this CeS011iti011, the definition of Internet is 'Internet refers to the global information system that i is /obi-all, linked together by a globally unique address sliace based on the Internet Protocol P: or its subsequent extensional-on; ire is able to support communications using the Transmission Control Protectionism Protocol „TSP/IP: mule at its subsequent exterisionalfol/nw-rms, arid/or other Irreparable protocols; and 1.iift provides, uses or
HISTORY OF COMPUTERS
Nothing has changed the world around us the way digital technology and computers have. Computers have entered even, aspect of our life and the environment around us. The origin of computers can be traced back to thousands of years. Though different forms of computers were in existence for centuries, the real transformation happened with elec-tronic or digital computers. The development of electronic computer started during the Second World War. In 1911 German engineer Konrad Zuse had developed a computer called Z3 CO design airplanes and missiles. In 1943, the British developed a computer called Colossus for cryptanalysis to decode encrypted messages transacted by Germans. With a team of engineers in 1944, Howard II. Aiken developed the Harvard-IBM Automatic Sequence Controlled Calculator Mark 1, or Mark I for short. This is consid-ered as the early general-purpose computer. In 1945 John von Neumann introduced the concept of stored program. Another general-purpose computer development spurred by the War was the Electronic Numerical Integrator and Computer, better known as ENIAC, developed by John Presper Eckert and John W Mauchly in 1946. In 1917, the invention of the transistor by John Bardeen; Walter H. Brattain, and William Shockley at Bell Labs changed the development scenario of digital computers. The transistor replaced the large, energy-hungry vacuum tube in first generation computers. Jack Kilby, an engi-neer with Texas Instruments, developed the integrated circuit (IC; in 1958. IC combined all the essential electronic components (inductor, resistor, capacitor etc.) onto a small sil-icon disc, which was made from quartz. By the 1980s, very large scale integration (VLSI:: squeezed hundreds of thousands of components onto a chip. VLSI led the development Of third generation computers. All these early computers contained all the components we find today in any modem day computers like printers, persistent storage, memory, operating systems and stored programs. However, one aspect of modem-day computers was missing in these machines-that was the networking aspect of today's computers.
STANDARD BODIES
The International Organization for Standardization (ISO) (http://ww-wiso.ch) is a worldwide federation of national standards bodies from more than 140 countries, one from each country. ISO is a non-gov-ernmental organization established in 1947 The mission of ISO is to promote the development of standardization and related activities in the world with a view to facilitating the international exchange of goods and services, and to developing cooperation in the spheres of intellec-tual, scientific, technological and economic activity Though ISO is commonly believed as the acronym for International Standard Organization, in fact the word 'ISO' is derived from the Greek isos, meaning 'equal'. Sometimes ISO makes its own standard, sometime it adapts standards from its member organizations and makes it an international standard. One of the most widely known standard from ISO is IS09000. IS09000 relates to Software quality. The famous 7-layer model for Open System Interconnection (OSI) is ISO standard (IS07498). For Information security ISO has come up with the recommendation ISO 17799.
International Organization for Standardization
International Organization for Standardization
Who makes the standards
There are many institutes that generate and provide standards across the world. There are standard bodies at the regional or country level; also, there are bodies at the inter-national level. Based on the area of operations, standard bodies are formed by the governments, professional institutes or industry consortiums. These standard bodies sometime also function as regulators. In India there is a standard body under the Government of India, which is called Bureau of Indian Standard or simply BIS (www.bis.org.in). A standards process include following steps: 1. Consensus on a proposed standard by a group or 'consensus body' that includes representatives from materially affected and interested parties. 2. Broad-based public review and comment on draft standards. 3. Consideration of and response to comments submitted by voting members of the relevant consensus body and by public review comm enters. 4. Incorporation of approved changes into a draft standard. 5. Right to appeal by any participant that believes that due process principles were not sufficiently respected during the standards development in accordance with the ANSI-accredited procedures of the standards developer.
Sunday, September 9, 2012
LETF
The Internet Engineering Task Force (JEFF) is the standard-making body for Internet and related technologies. IETF is an open international community of network designers, operators, vendors and researchers concerned with the evolution of the Internet architecture and the smooth operation of the Internet. It is open to any individual. The actual tedmical work of the IETF is done in its working groups. Working groups are organized into several areas by topic (e.g., routing, transport, security, etc.). The Internet Assigned Numbers Authority (IANA) is the central coordinator for the assignment of unique IP address. The IANA is chartered by the Internet Society (ISOC) to act as the clearinghouse to assign and coordinate the use of numerous Internet protocol parameters. Standards defined by IETF are called Request For Comment or RFC. The standard for email is defined in RFC821 (Simple Mail Transfer Protocol or SMTP); RFC2616 describes the version 1.1 of Hypertext Transfer Protocol.
STANDARD BODIES
The International Organization for Standardization (ISO) thttp://wwwiso.ch) is a worldwide federation of national standards bodies from more than 140 countries, one from each country. ISO is a nongovernmental organization established in 1947. The mission of ISO is to promote the development of standardization and related activities in the world with a view to facilitating the international exchange of goods and services, and to developing cooperation in the spheres of intellectual, scientific, technological and economic activity. Though ISO is commonly believed as the acronym for International Standard Organization, in fact the word 'ISO' is derived from the Greek isos, meaning 'equal'. Sometimes ISO makes its own standard, sometime it adapts standards from its member organizations and makes it an international standard. One of the most widely known standard from ISO is IS09000. IS09000 relates to Software quality. The famous 7-layer model for Open System Interconnection (OSI) is ISO standard (IS07498). For Information security ISO has come up with the recommendation ISO 17799.
ziEb \var./
International Organization for Standardization
Who makes the standards
There are many institutes that generate and provide standards across the world. There are standard bodies at the regional or country level; also, there are bodies at the inter-national level. Based on the area of operations, standard bodies are formed by the governments, professional institutes or industry consortimns. These standard bodies sometime also function as regulators. In India there is a standard body under the Government of India, which is called Bureau of Indian Standard or simply BIS (www.bis.org.in). A standards process include following steps: I. Consensus on a proposed standard by a group or 'consensus body' that includes representatives from materially affected and interested parties. 2. Broad-based public review and comment on draft standards. 3. Consideration of and response to comments submitted by voting members of the relevant consensus body and by public review commenters. 4. Incorporation of approved changes into a draft standard. 5. Right to appeal by any participant that believes that, due process principles were not sufficiently respected during the standards development in accordance with the ANSI-accredited procedures of the standards developer.
SECURITY IN MOBILE COMPUTING
The security issues in mobile computing environment pose a special challenge. This is because we have to offer services over the air using networks over which we do not have any control. All the infrastructure and technology designed by GSM and other forums are primarily to increase the revenue of the network operators. This makes the technol og-y complex and very much dependent on the network operator. For example, the SMS technology is operator centric; WAP requires WAY gateway. These gateways are installed in the operator's network and managed by the operator. The security policy implemented by the network operator depends on operator's priority and revenue gen-eration potential and not on the need of the content provider. In a mobile computing environment user can move from one network to another, one device to another, one bearer to another. Therefore, theoretically the security
implementations need to be device independent, network independent, bearer inde-pendent, so on and so forth. The requirement is to arrive at a security model, which can offer a homogenous end-to-end security.
implementations need to be device independent, network independent, bearer inde-pendent, so on and so forth. The requirement is to arrive at a security model, which can offer a homogenous end-to-end security.
Subscribe to:
Posts (Atom)