Docstoc

Design of campus network

Document Sample
Design of campus network Powered By Docstoc
					DISTRIBUTED PROCESSING AND
       CLIENT-SERVER
        What is Distributed Processing?
Distributed processing refers to geographical distribution of
   hardware, software, processing, data, and control.


                        Objectives
1) Move data and processing functions closer to the user,
   and thereby improve systems responsiveness and
   reliability.
2) Make remote access transparent to user.


                                                      SYST5030/4030
Possible Advantages
1)     Reduced communication costs
       (data close to location that
       needs it)
2)     Users have control of their own
       data
3)     Ease of incremental upgrades




Source: http://www.cwrl.utexas.edu/~runnion/icons/images/ho_gas_universe_m.jpg   SYST5030/4030
     Possible Pitfalls
1)   Loss of control
2)   Higher manpower costs
3)   Costs
4)   Incompatibilities
5)   Standards
6)   Security
7)   Speed




                             SYST5030/4030
       Decisions
1) File/data partitioning
2) Data allocation
3) Hardware allocation
5) Data ownership
6) Network design
7) Distributed DBMS
8) Security



                            SYST5030/4030
                                  Some applications
 Distributed computing is a science which solves a large
 problem by giving small parts of the problem to many
 computers to solve and then combining the solutions for
 the parts into a solution for the problem.

  Examples:
 •SETI@Home (Help look for aliens)
 •Entropia (Various science and medical research projects)
 •DCypher.Net (Design safer storage vessels for nuclear waste)
 •Golem@Home (Design and evolve robotic life forms)
 •Distributed.net (Cracking encryption schemes)
 •Electric Sheep (Developing Art)

Source: Internet Distributed Computing
Projects http://www.nyx.net/~kpearson/distrib.html.
                                                        SYST5030/4030
More applications




                    SYST5030/4030
   Some “applications”




        FURBEOWULF
highly parallel processing system
                                    SYST5030/4030
               Architecture Concepts


                                      Software architecture
                                      may be divided:
                                      1. Data storage
                                      2. Data access logic
                                      3. Application logic
                                      4. Presentation logic




Host- (or Mainframe-) centric computing
                                                   SYST5030/4030
CLIENT/SERVER
 SYSTEM
• Presentation logic,
  Application logic and
  data are split over two or
  more computers.
• Communication occurs
  over local or wide area
  networks.
                               WORK
                               GROUP              LOCAL
                               SERVER              DATA




                               MAIN -
                               FRAME                ENTER-
W/S           LAN               HOST                 PRISE
                                                     DATA




                                        SYST5030/4030
         2-/3-TIER CLIENT-SERVER
              ARCHITECTURES
2-tier
3-tier




                                   SYST5030/4030
 QUERY PROCESSING ALTERNATIVES

1) Local Processing
   •   Access remote records and pass them to local node
   •   Process records locally
   •   Return them to remote node for updating (if necessary)
2) Remote Processing
   •   Send message to remote node to perform processing
       and return only the information required to the
       requesting node.


                                                      SYST5030/4030
QUERY PROCESSING IN DISTRIBUTED ENVIRONMENT
              QUERY: look up U.S. census bureau records
              For all people with last name of ‘rambelle’

OPTION 1:                                         CENSUS
                                                  BUREAU
                     ASK FOR DATA                 MAIN -                250
     MY                                           FRAME
     PC            GET 250 Million Records                              Mill
                                                                    Records
QUERY is
processed here!

OPTION 2:                                         CENSUS
                                                  BUREAU
  MY SEND RECORDS W/LAST NAME RAMBELLE            MAIN -
                                                  FRAME
  PC         RECEIVE 50 RECORDS


                                               QUERY is
                                               processed here!

                                                        SYST5030/4030
         PIECES OF CLIENT-SERVER SYSTEMS

CLIENT                                                      SERVER

USER INTERFACE          COMMUNICATIONS,                          DBMS
Business Functions        STANDARDS



User Interface:       Increasingly GUI, pen-based, object-oriented
                      WINDOWS, MAC, X-Windows, etc.
Business Functions:   Execution of business logic, validation
                      Achieving business purpose of application
DBMS:                 CREATION, UPDATE, RETRIEVAL, DELETION of
                      DATA. Maintaining Integrity of Data.
Communications:       Transmission of messages/data between nodes in a
                       reliable manner
Standards:            Define uniform way of performing task in a
                      computing environment
                                                         SYST5030/4030
WHY CLIENT-SERVER?
Productivity

Scalability
Open and portable
 Platform independence

 Vendor independence




                          SYST5030/4030
         Fat Server versus Fat Client
Fat Server places more functions on the server.
(e.g., GroupWare servers, object servers)
– easier to manage and deploy

Fat Client places more functions on client.
(e.g., file servers, database servers)
– more traditional
In many cases, the models complement each other and coexist




                                                     SYST5030/4030
                     Middleware
          Client                         Server




Middleware is software that sits between the application
software on both the client and the server. It is the “GLUE”
that lets a client obtain service from a server. There are dozens
of standards for middleware.

Examples of products
ODBC (Open database connectivity)
CORBA (Common object request broker architecture).

                                                       SYST5030/4030
Rules of Thumb for Client-Server Implementation
          Rules of Thumb = heuristics ;)
• Push maximum possible processing onto the client.
• Do all compute intensive tasks on the client.
• Manage all shared resources on the server.
• Manage all data with the server.
• Avoid centralization of services (e.g. split the database).
• Local data should be locally owned and managed.
• Use tiered processing for scalability.
• Minimize amount of data transferred between client and server.
• Cache slowly changing or static data.
• Compress large data transfers if possible.
• Design for remote administration and monitoring.
• Find bottlenecks by analyzing the throughput chain.

                                                    SYST5030/4030
                  Peer-to-Peer (P2P)
“Client/server computing as currently practiced
is merely one step toward fully distributed computing
Nirvana: the decentralized, peer-to-peer collaborative
computing utopia of the 21st century” (Lewis 1995).

        •   Historically, P2P originated in LAN technology (e.g.
            Ethernet).
        •   “Music and movie sharing will only represent five
            percent of the total use [of P2P] in the future” (Clark
            2001). Applications:
             –   Collaboration
             –   Edge service
             –   Intelligent-agent services
             –   File-sharing
             –   Distributed computing (Clark 2001)




                                                                      SYST5030/4030
   HTTP, WWW
Electronic Commerce
– A quick introduction

                  SYST5030/4030
                    HTTP Protocol

“The Hypertext Transfer Protocol
(HTTP) is an application-level
protocol for distributed,
collaborative, hypermedia
information systems. It is a
generic, stateless, object-oriented
protocol which can be used for
many tasks, such as name servers
and distributed object
management systems, through
extension of its request methods.”
(Internet Standards Track Protocol
Definition for HTTP/1.1.)




                                      SYST5030/4030
                           HTTP Details
The HTTP connection has four basic stages :
•   Open the connection - The client contacts the server over a TCP/IP connection at
    the address and port number specified in the URL, with the default port being 80.
•   Make the request - The client sends a message to the server. This message
    contains HTTP request headers that define the transaction method and
    information about the client and its capabilities. This is optionally followed by the
    data being sent to the server. The typical HTTP methods are GET and POST.
•   Send the response - The server sends a response header followed by the data. The
    response header consists of the status of the response and the type of data being
    sent.
•   The connection is closed - The connection is terminated by the server, no
    knowledge of the transaction is retained.



                                                                         SYST5030/4030
           Electronic Commerce:
                         Definitions

• Business transactions conducted by electronic means other than
  conventional telephone service, e.g., Fax or E-mail”
• “Use of Computers to Improve Organizational Performance in a
  Web-Enabled World”
• “Electronic Commerce (EC) is the paperless exchange of
  business information using Electronic Data Interchange (EDI),
  Electronic Mail (E-Mail), computer bulletin boards, FAX,
  Electronic Funds Transfer (EFT), and other similar technologies”
• “The buying and selling of goods and services, and the transfer
  of funds, through digital communications”




                                                           SYST5030/4030
Web and HTTP




               SYST5030/4030
          A Simple Model for EC

                    1,3                   4
       CLIENT                   HTTP             CGI
                    2,6        SERVER          Program
                                          5




1,2.A client connects to the server and downloads a form.
3. The client fills the form (item/quantity requested, shipping
        address, credit card number, etc.) and submits it.
4,5.A CGI program on the server processes the form.
6. The server sends a reply to the client.

                                                      SYST5030/4030
        Planning for Electronic Commerce

•Catalog Software Design Issues
       – Understand how electronic catalogs work.
        – How search engines work.
•Finding the right EC software product.
        – Support for associate program (referral commission)
        – Media management (for managing images)
        – Payment methods/Discounts/S&H/
        – Languages and currency
        – CGI Interface
        – Order tracking
        – Ease of use
•Security of your site.

                             ….FINE
                                                      SYST5030/4030

				
DOCUMENT INFO
Categories:
Tags:
Stats:
views:12
posted:5/19/2012
language:
pages:25