Friday, February 1, 2013

unit 1


CLIENT SERVER TECHNOLOGY
By
 M.JEHAN

Example Diagrams

• Dallas­based  American  airlines  Decision  Technologies  cut 
  their  computing  budget  by  90%­from  $5  million  to  under 
  $500,000
•   As  the  result  of  an  18  month  pjt  that  created  an  open 
  systems network.
• Built  with  $4.5  million  worth  of  multi  vendor  UNIX  based 
  hardware and software.
• The  company  develops  systems  for  companies  such  as 
  American  Airlines,  Lufthansa  German  Airlines,  Ryder 
  Truck Rental and Royal Caribbean Cruise Lines.
• Consolidated  Insurance  Group  in  Wilmington,  Delaware, 
  reduced  capital  expenses  from  $1  million  to  $300,000  and 
  operating  expenses  from  $2.5  million  to  $500,000  in  the 
  first year after replacing its headquarters based IBM 3090 
  mainframe and support staff 30 with 7 micro based servers 
  supported by a staff 10.
Overview of client server computing


Contd..
• When  United  Airlines  Inc.  converted  to  a  client 
  /server  environment  from  mainframe  computer 
  environment,  the  company  saved  millions  in 
  computer  costs  and  improved  flight  schedules  for 
  its  pilots,  which  is  predicted  to  save  nearly  $1.5 
  million a year
• How  are  these  organizations  achieving  such 
  savings? 

Client /Server Computing

What is Client/Server Computing
• Client/Server  computing  uses  local  processing 
  power­ the power of the desk top platform.
• Simple defn.­ Server software accepts requests 
  for  data  from  client  software  and  returns  the 
  result to the client.
• The  client manipulates  the  data  and presents 
  the results to the user.
• Tech  defn.­Most  of  the  application  processing 
  is done on a programmable desktop computer, 
  which  obtains  application  services  from 
  another  computer  in  a  master/slave 
  configuration.
                                            contd..

Contd..
• The  use  of  open  systems  (hardware, 
  software,  operating  systems,  databases 
  and  networks)  enhances  client/server 
  computing.

Application Tasks
 An application can be broken into six tasks: 
User Interface­ what are user actually sees
Presentation  Logic­  what  happens  when  the 
  user interacts with the form on the screen
Application logic
Data requests and results acceptance
Data  integrity­  such  as  validation,  security, 
  completeness
Physical  data  management­  such  as  update, 
  retrieval, deletion, and addition.

Query Language Architecture
• Query languages to support update, create,
  retrieve and delete fns as in the above fig.

Original Client/Server Applications
• GUI require a great deal of processing power to
  create the screen the user sees.
• As app. Tasks were split host and the screen
  generating desktop m/c as in the fig.

Distribution of processing in
     client/server model
• Distribution of processing between the client and
  server is accommodated by the client/server
  model.

Rightsizing
• Client/server technology evolves, the battle cry
  is now rightsizing- design new applications for
  the platform they are best suited for, opposed to
  using a default placement.
• The client/server model allows the app to be split
  into tasks and those tasks performed on
  individual platforms.
• Developers review all the tasks within an
  application and determine whether each task is
  best suited for processing on the server or on
  the client.
• Determining how the tasks are split can be the
  major factor in the success or failure of
  client/server app.Contd…

• Some variations on this theme are:
Downsizing: A host based app. Is downsized
  when it is reengineered to run in a smaller or
  LAN based environment.
Upsizing: App. that haveoutgrown their
  environment are re-engineered to run in a larger
  environment.
– Increasing memory and storage on the server
– Swapping more powerful processor into the server.
– Adding processors to the server
Smartsizing: Technology based smart sizing
  affects the entire organizational structure and
  involves re-engineering and redesigning the
  business process.

Growth in installed micros and
            LANs

• Dollar Savings
Benefits of client/server computing
– Client/server technology allows organizations to protect current
  investments by using existing equipments and protect future
  investments by using scalable, expandable products.
– Client/server based applications can be developed in less time
  than mainframe based applications.
• Increased Productivity
– End user Productivity
• Flexible data access for end users was first provided by 4GLs
– Developers productivity
• Developers can be using client/server development tools
• Most C/S tools make use of object oriented technology
Flexibility and Scalability
– Adding new components or replacing existing ones is as straight
  forward
– Users can choose their own presentation interface
• Resource Utilization
– C/S architecture is designed to use LAN technology efficiently,
  minimizing potential bottlenecks

• Centralized Control
– Full circle in the architecture of IS facilities
Centralized and decentralized control
• Decentralized portion of the computer system consists of
  the processing done in the client and is the responsibility
  of business end user.
• The centralized portion of the responsibility of IS
  professionals-link to the server

• Open Systems
– Client/Server computing to be effective, multiple
  environments must be supported.
– When applications are right sized, it is important that
  there be connectivity among the components of the
  platform
– There must be support for multiple hardware vendors,
  multiple GUI platforms, multiple OS, Multiple DBMS,
  Multiple communication protocols and multiple LAN
  OS
– The benefits of open systems- Interoperability and
  Portability

Evolution of Client/Server Computing
• Hardware Trends
– Power
– Chips
– Memory
– 40MB hard drive is standard on an entry level
  micro.
• Multiple disk drivers.

Capacities of processors

• Software Trends
– Relational Databases
• Multiple structures with multiple management
  techniques
– GUIs
• MS-Windows, openLook and etc.

– Multi threaded Processing
• Thread is a process or an execution
• DOS can execute only one process (thread) at a
  time.
• MS LAN Mgr Network OS – supports multiple
  threads of execution.
• One thread could controlling the printer, one the
  keyboard I/O another executing app. Code.
– Continuing Evolution
• Product that generate GUIs have some intelligence
  about interfaces.

Evolution of Operating Systems
– Micro operating systems evolve, there should
  be some common capabilities. These include
• Portability in the underlying kernel and app.
  Programming interfaces
• Use of 32 bit architecture
• Support for symmetric multiprocessing hardware
• Extensions for multimedia and pen based
  computing
• Portable OS interface for UNIX

Networking Trends
– LAN based implementation
– Token ring running LAN manager

Business Consideration
– Dept. need more than one database.
– Dealing with voice, scanned images, text and
  graphic images.

Overview of Client/Server
      Applications
• A client/server application has three
  components: a Client, a server and a
  network
• Each of these components has a
  hardware and a software component.

   Components of the
Client/Server Applications
• Servers -perform the routine.
• Clients- front ends
– To many users client is the “System”
• The data management software on the
  server is responsible for keeping the data
  “Safe and Sound”.
• Some org. have applications where clients
  need to maintain concurrent connections
  with more than one server-- many-to-many
  relationship.

Components of Client/server computing

• The client hardware is the desktop m/c that runs client
  software.
• It could be a micro or a workstation
• The client software formulates the data requests and
  passes the requests to the network software.
• This s/w send the request to the server , accepts the
  result from the server and passes the result to the client
  software.
• The presentation component produces the interface that
  the user views and interact with.
The Client

The Server
• A server is the machine that runs data
  management software
• Compared to a desktop micro server
  hardware
– increased memory capabilities;
– increased storage capabilities;
– increased power;
– parallel processors;
– improved cycle times;
– and improved reliability

• When evaluating server hardware, the following
  measures should be kept in mind:
• Reliability- How often does it fail? What is the
  mean time between failures?
• Availability- How quickly does the system come
  back into service after a failure? To assure high
  availability, some systems have self healing
  routines, continuous processors, fault –tolerant
  hardware , alarms to high light problems before
  become serious.
• Flexibility and Scalability. How easily can the
  server be expanded as processing needs grow?
• A server has operating system software, data
  management software and a portion of the
  network software

The Network
• The network hardware is the cabling, communicating
  cards and the devices that link the server and the clients.
• Connections must allow servers to access other servers
  and for users (clients) to access data on any network
  node
• The connection devices, such as routers and wire hubs.
• The communication and data flow over the network is
  managed and maintained by the network software.
• The network OS manages the network related input
  /output processes of the server.

Classes of Client/Server
      Applications
• 3 levels:-
– Host based processing
– Client-Based Processing
– Cooperative Processing

• Host-Based Processing
– Most client/server applications has a presentation
  layer running on the desktop machine with all app.
  Processing running on the server/host.
– Presentation layer provides the user with an easy to
  use interface.
– The processing power of the desktop m/c is used to
  produce this interface, which requires a great deal of
  m/c resources
– Host based processing applications require less
  functionality on the client.
– Host based processing does not permit organizations
  to re-think the business process

Classes of Client/Server applications

• Client-based Processing
– Client/server applications puts all the app.
  Logic on the client m/c with the exception of
  data validation routines, which are coded into
  the DBMS on the server.
– Users can access data on any node.
– Many of the host fns –security and reliability
  must be built into these new client server app.

• Cooperative Processing
– app. Uses a fully cooperative peer-to-peer processing
  approach.
– All components of the system are equal and can
  request to provide services to each other.
– The processing is performed where ever computing
  resources (devices, CPU, and memory are available
– A single system can act as a client for other servers
  and a server for other clients.
– Data manipulation may be performed on both the
  client and the server, whichever is more appropriate.

Categories of client/server
      Applications
• Client/Serverapp.Canalsobe
  categorized by their support function.
• ThearchitectureofClient/Server
  computing promotes group interaction,
  whether it is messages, mail, shared data,
  or shared app.
• users of an application can be anywhere
  on the network.

• Office Systems
– Client/Server computing provides a
  framework for electronic communication as in
  the Fig.
– Users on LAN C can Communicate with users
  on LAN A or LAN B

The foundation for electronic communication

• Front-Ends to Existing Systems
– Another category of client/server app. Consists
  of screen emulation systems (screen-scrapers),
  which convert existing character based screens
  to GUI screens.
– No changes are made to the existing app. on
  the server
– Benefits of these systems are ease of use and
  increased worker productivity.
– Existing products facilitate building front-ends
  to existing systems.
– They capture the 3270/5250 data stream and
  map it into a client based display panel.

• Database access
– To provide a GUI for accessing corporate data
– Query oriented app. Provide a single window
  to the data of the organization.
Query oriented Applications

• Transaction-Processing Applications
– Also known as mission-critical applications, include
  order entry, inventory, and point-of-sale systems.
– System must run continuously.
• Investigative applications
– Transaction processing systems work with real time
  data.
– Investigative app. Are designed to support decision
  makers.
– Investigative app. Are often called Decision Support
  Systems (DSS) or Executive Information Systems
  (EIS).
– Ref. next slide pic.

Snapshots of Data for investigative applications

Understanding Client/Server
        Computing
• Dispelling the Myths
Many myths promoted by Marketing literature, others are
promoted by the press, more by omission than inclusion.
– Client/Server Computing is Easily Implemented
– Current Desktop Machines are sufficient
– Minimal Training is Required
– All Data are Relational
– Development time is Shorter

Obstacles-Upfront and Hidden
– Client server computing is not the easy task that
  marketing literature would have us believe.
– They are some very real, and painful, hurdles on the
  road to success
• Costs
– Cost saving prompt organizations to consider
  client/server computing
– Conservative figures for the cost per MIPS (millions of
  instructions per second) are:
– IBM Mainframe-About $100,000
– Midrange-About $50,000(includes some bandwidth
  processors)
– Desktop-About $300

• Mixed Platforms
– In the past, most org. operated homogeneous
  centralized mainframe and midrange
  processors and terminal n/w
– Managed separately-independent systems
  and protocol
– Today, org have at least two micro OS,
  multiple n/w OS and variety of n/w topologies.
• Maintenance
– It is costly and time consuming

• Reliability
– H/w must be stable and include backup units
  and monitoring s/w for the system itself.
• Restructuring Corporate Architecture
– Client/server technology also restructures the
  workflow processing.
– Electronic data interchange (EDI) is an
  example of a modification in workflow
  processing.

Open Systems and Standards
• To Business end users, open systems mean easy access
  to information
• The IEEE – open systems offers the following definition
       “A  comprehensive  and  consistent  set  of  international 
  information  technology  standards  and  functional  standards 
  profiles that specify interfaces, services, and supporting formats to 
  accomplish  interoperability  and  portability  of  applications,  data 
  and people.”
Standards Areas
       Four areas of client/server computing
Platforms­Developed by hardware and software vendors­ such as 
  Intel chips, UNIX, and DOS with Windows.
Networks­N/W protocols­ such as OSI and TCP/IP
Middleware­ Between App. and the OS, includes GUIs, database, 
  E­Mail systems
Applications­  Org.  decide  on  std  app.  to  facilitate  work  group 
  interaction

Existing Standards
• Currently, there are recognized stds for server OS
  environment and for network protocols
UNIX
POSIX-Portable Operating Interface from IEEE is a
  UNIX based specification.
TCP/IP-to connect LAN Based micros to corporate data
  on a UNIX host.
OSI- to provide a common basis for communication
RDA and DRDA - Remote Data Access (RDA)
  Architecture and Distributed Relational Database
  Architecture
– Distributed data management

Open Systems
Components of an open systems environment

• Factors for Success
– Identify the business motivation for the change to
  client/server computing.
– Whether it is reduced costs, increased productivity,
  or a competitive advantage, implementation of the
  new technology.
Internetworking –LAN,WAN
Interoperability-ability to interact
• Considering client m/c, client s/w, n/w, n/w s/w, server
  and server s/w.
Compatible Environments- whenever possible,
  avoid mixing architectures
Perceived Benefits- ease-of use, cost saving,
  response time, functionality, accessible data.

Host
The term "host" is used in several contexts, in each of which it has a slightly
different meaning: 1) In Internet protocol specifications, the term "host"
means any computer that has full two-way access to other computers on the
Internet. A host has a specific "local or host number" that, together with the
network number, forms its unique IP address. If you use
Point-to-Point Protocol to get access to your access provider, you have a
unique IP address for the duration of any connection you make to the
Internet and your computer is a host for that period. In this context, a "host"
is a node in a network.
2) For companies or individuals with a Web site, a host is a computer with a
Web server that serves the pages for one or more Web sites. A host can
also be the company that provides that service, which is known as hosting.
3) In IBM and perhaps other mainframe computer environments, a host is a
mainframe computer (which is now usually referred to as a "large server"). In
this context, the mainframe has intelligent or "dumb" workstations attached
to it that use it as a host provider of services. (This does not mean that the
host only has "servers" and the workstations only have "clients." The
server/client relationship is a programming model independent of this
contextual usage of "host.")
4) In other contexts, the term generally means a device or program that
provides services to some smaller or less capable device or program.

No comments:

Post a Comment