ati2 - Arsitektur Server [Compatibility Mode]

Preview:

Citation preview

Arsitektur Teknologi InformasiAditya Wikan Mahastama

1Arsitektur Server

Server

● A system which provides certain services to another system, manages the use of resources for the service, and responsible for the computing- File server- Print server- Network server- Database server

● The “other system” can be in another computer system, or in the same computer system

Server – Hardware Architecture

● There is no “real” limit for a server's hardware specification

● Among all things, server is limited by microprocessor performance

● Usually a hard working server employs multiprocessors to serve its tasks

● Multiprocessor servers fall into one of two two major classes:

a. Symmetrical Multiprocessor (Tightly coupled)

b. Loosely coupled

Server – HWA – Tightly Coupled (SMP) Characteristics

● A computer system with many processors● Each processor can access every resources of

the system (symmetrical)● Access is managed by one operating system,

which must support multiprocessors, memory sharing and threads (ex. Windows Server 2003)

● Creating a thread is running a different task for the same process

Server – HWA – Tightly Coupled

Server – HWA – Tightly Coupled

Server – HWA – Tightly CoupledSoftware Execution

Server – HWA – Loosely Coupled Characteristics

● A collection of computer systems with resources, interconnected

● Tasks are distributed among these collection of hardware resources

Server – HWA – Loosely Coupled

Server – HWA – Loosely CoupledSoftware Execution

Server – HWA – Performance

● Processor performance● Memory capacity● Throughput in connections within the system

(bus)● Performance of storage peripherals● Network troughput

Client

● A client system is a system which uses service(s) of the server

● Relies on server for files, devices, processing power

● “Clients” are applications that run on client (user) systems, for example: an e-mail client.

Client – Server Computing

Server

Client system Client system Client system

Client – Server Computing

● Advantages:

- Easy to maintain

- Data consistency

- Resource efficiency● Disadvantages:

- Single point of failure

- Possibility of data bottleneck

Generic Client–Server Architecture

Multiple Servers

Server

Client system Client system

Server Server

● For extra computing power or data storage

● Uses data replication or distributed database

● Viewed by clients as a single service

Client-Server Models

● Fat clients

- The bulk of the application is running on the client

- The client knows how the data is organized and where it is

● Fat servers:

- The clients are less complex

- More of the codes runs on the server

- Network interaction and synchronization is minimised

Client-Server Models

Client-Server Interaction

Dumb Client-Server Model

True Client-Server Model

Distributed Client-Server Model

Distributed Client-Server Interaction

Diskless Node

● Variant of thin client● Using network boot to load the OS● Uses PXE (Preboot Execution Environment)

protocols to find the server and load the kernel● Distributed load, but still uses a lot of

bandwidth!

PXE Setting

Types of Servers

• Application Servers

• Audio/Video Servers

• Chat Servers

• List Servers

• Mail Servers

• News Servers

From A to Z

• Chat Servers

• Fax Servers

• FTP Servers

• Groupware Servers

• IRC Servers

• News Servers

• Proxy Servers

• Telnet Servers

• Web Servers

Karakteristik CS

• Service : Menyediakan layanan terpisah yang berbeda

• Shared resource : Server dapat melayani beberapa client pada saat yang sama dan mengatur pengaksesan Resourcepengaksesan Resource

• Asymmetrical Protocol : antara client dan server merupakan hubungan one-to-many.

• Mix-and-match : tidak tergantung pada platform

• Encapsulation of service : message memberitahu server apa yang akan dikerjakan

Karakteristik CS

• Transparency Location : proses server dapat ditempatkan pada mesin yang sama atau terpisah dengan proses client. Client/server akan menyembunyikan lokasi server dari client.

• Message-based-exchange : antara client dan server berkomunikasi dengan mekanisme pertukaran

• Message-based-exchange : antara client dan server berkomunikasi dengan mekanisme pertukaran message.

• Scalability : sistem C/S dapat dimekarkan baik vertikal maupun horisontal

• Integrity : kode dan data server diatur secara terpusat, sedangkan pada client tetap pada komputer tersendiri

Push Technology – Push Mail

Pull Technology - SMTP

Peer-to-Peer Computing

• Another model of distributed system

• P2P does not distinguish clients and servers

– Instead all nodes are considered peers

– May each act as client, server or both– May each act as client, server or both

– Node must join P2P network

• Registers its service with central lookup service on network, or

• Broadcast request for service and respond to requests for service via discovery protocol

– Examples include Napster and Gnutella

The Client Side

• Today’s clients can perform more roles than just forwarding users requests

• Today’s clients have:

– more computing power– more computing power

– more storage space

• As the Internet usage grow, more and more PCs are connecting to the global net

• Most of the time PCs are idle

• Thin client � Fat client

Decentralization

• A key feature of peer-to-peer networks is

decentralization.

• This has many implications:

– robustness: handal– robustness: handal

– availability of information: selalu ada & tersebar

dimasing2 client

– fault-tolerance tends to come from redundancy

=> satu down yg lain bisa handle

– and shared responsibility: tugas dibagi

Technology Transition

The Client/Server Model

The Peer-to-Peer Model

Pure P2P

�Masing-masing peer berstatus setara (egaliter),

setiap peer berstatus sebagai client juga server.

�Tidak ada server pusat yang mengatur jaringan.

�Tidak ada router yang menjadi pusat jaringan.�Tidak ada router yang menjadi pusat jaringan.

� Bisa terdiri dari > 2 komputer

Why P2P?

• Information - Hard to find, impossible to

catalog and index all of the information

• Bandwidth - Hot links get hotter– Makin bagus informasi, makin laris dan makin tak

terbendung

Makin bagus informasi, makin laris dan makin tak

terbendung

– Makin banyak juga yg “memilikinya” dan tersebar

dimana-mana

• Computing resources - Heavily loaded nodes

get overloaded, idle nodes remain idle

P2P Goals/Benefits

• Cost/data sharing

• Reduce cost: operasional murah

• Resource aggregation (penggabungan) dari berbagai sumber

• Improved reliability : kerja jaringan tidak tergantung • Improved reliability : kerja jaringan tidak tergantung pada satu server

• Increased autonomy (kebebasan) pada masing-masing peer

• Anonymity/privacy masing2 peer

• Scalability : since every peer is alike, it is possible to add more peers to the system and scale to larger networks.

P2P Computing Applications

• File sharing– Improves data availability

– E.g., Napster, Gnutella, Freenet, KaZaA

• Process sharing– For large-scale computations– For large-scale computations

– Data analysis, data mining, scientific computing

– E.g.: SETI@Home, Folding@Home, distributed.net

• Collaborative environments– For remote real-time human collaboration.– Instant messaging, virtual meetings, shared whiteboards,

teleconferencing, tele-presence.– E.g.: talk, IRC, ICQ, AOL Messenger, Jabber, MS

Netmeeting, NCSA Habanero, some of Games

Dangers and Attacks on P2P

• Poisoning (files with contents different to its description)

• Polluting (inserting bad packets into the files)

• Defection (users use the service without sharing)

• Insertion of viruses (attached to other files)• Insertion of viruses (attached to other files)

• Malware (spy originally attached to the files)

• Denial of Service (slow down or stop the network traffic)

• Filtering (some networks don’t allow P2P traffic)

• Identity attacks (tracking down users and disturbing them)

• Spam (sending unsolicited information)

What is Cluster ?

• A cluster is a type of parallel and distributed processing system, which consists of a collection of interconnected stand-alone computers cooperatively working together as a single, integrated computing resource.

• A node

– a single or multiprocessor system with memory, I/O facilities, – a single or multiprocessor system with memory, I/O facilities, & OS

• A cluster:

– generally 2 or more computers (nodes) connected together

– in a single cabinet, or physically separated & connected via a LAN

– appear as a single system to users and applications

– provide a cost-effective way to gain features and benefits

Cluster Architecture

Sequential Applications

Parallel Applications

Parallel Programming Environment

Cluster Middleware

(Single System Image and Availability Infrastructure)

Sequential ApplicationsSequential Applications

Parallel ApplicationsParallel Applications

(Single System Image and Availability Infrastructure)

Cluster Interconnection Network/Switch

PC/Workstation

Network Interface Hardware

Communications

Software

PC/Workstation

Network Interface Hardware

Communications

Software

PC/Workstation

Network Interface Hardware

Communications

Software

PC/Workstation

Network Interface Hardware

Communications

Software

Clustered Systems

– Usually sharing storage via a storage-area network (SAN)

– Provides a high-availability service which survives failures• Asymmetric clustering has one machine in hot-• Asymmetric clustering has one machine in hot-

standby mode

• Symmetric clustering has multiple nodes running applications, monitoring each other

– Some clusters are for high-performance computing (HPC)• Applications must be written to use parallelization

Clustered Systems

Grid Computing

Grid Architecture

What is a Grid?

• Many definitions exist in the literature

• Early defs: Foster and Kesselman, 1998

“A computational grid is a hardware and software infrastructure that provides dependable, consistent, pervasive, and inexpensive access to high-end pervasive, and inexpensive access to high-end computational facilities”

• Kleinrock 1969:

“We will probably see the spread of ‘computer utilities’, which, like present electric and telephone utilities, will service individual homes and offices across the country.”

Why do we need Grids?

• Many large-scale problems cannot be solved

by a single computer

• Globally distributed data and resources

Background: Related technologies

• Cluster computing

• Peer-to-peer computing

• Internet computing

Cluster computing

• Idea: put some PCs together and get them to

communicate

• Cheaper to build than a mainframe

supercomputersupercomputer

• Different sizes of clusters

• Scalable – can grow a cluster by adding more

PCs

Some Grid Applications

• Distributed supercomputing

• High-throughput computing

• On-demand computing

• Data-intensive computing• Data-intensive computing

• Collaborative computing

Example of Grid Computing

• SETI (Search for Extraterrestrial Intelligence) @Home project

• BOINC (Berkeley Open Infrastructure for Network Computing)

Folding@home (abbreviated as FAH or F@h) • Folding@home (abbreviated as FAH or F@h)

• Einstein@Home

• GIMPS – Great Internet Mersenne Prime Search

• LHC@home

• World Community Grid

Next

• Web Architectures