networks 1 © 2000 franz kurfess course overview principles of operating systems introduction ...

75
Networks Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems Introduction Computer System Structures Operating System Structures Processes Process Synchronization Deadlocks CPU Scheduling Memory Management Virtual Memory File Management Security Networks Distributed Systems Case Studies Conclusions

Post on 19-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 11 © 2000 Franz Kurfess

Course OverviewPrinciples of Operating Systems

Course OverviewPrinciples of Operating Systems

Introduction Computer System

Structures Operating System

Structures Processes Process Synchronization Deadlocks CPU Scheduling

Memory Management Virtual Memory File Management Security Networks Distributed Systems Case Studies Conclusions

Page 2: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 22 © 2000 Franz Kurfess

Chapter Overview Networking

Chapter Overview Networking

Motivation Objectives Topology Network Types Communication Design Strategies

Examples Client/Server Model Middleware Important Concepts and

Terms Chapter Summary

Page 3: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 33 © 2000 Franz Kurfess

MotivationMotivation resource sharing

users can access all resources available on the machines connected to the network

computation speedup computation-intensive tasks can be partitioned into subtasks and

distributed over several computers on the network specialized or more powerful computers can be used instead of or in

addition to the local machine of the user

reliability the overall system can continue to operate even if some of its

components fail

communication fast exchange of information remote procedure calls

Page 4: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 44 © 2000 Franz Kurfess

ObjectivesObjectives

be aware of benefits and problems of computers connected via networks

know relevant network topologies and network types understand the issues involved in communication of

computers via networks apply networking concepts to the client/server model

Page 5: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 55 © 2000 Franz Kurfess

TerminologyTerminology site

indicates the location of computer systems

host specific system at a site frequently implies the execution of a program or the

availability of services

local resources all the resources available directly within a specific

computer system system local sometimes also refers to a particular site, not one

single computer system

Page 6: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 66 © 2000 Franz Kurfess

Terminology cont. Terminology cont. remote resources

mainly for exchange of information sometimes specialized resource types

network operating system users are aware of the individual machines in the network resources are accessible via login or explicit transfer of data

distributed operating system users are unaware of the underlying machines and networks remote resources are accessible in the same way as local

resources

Page 7: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 77 © 2000 Franz Kurfess

Computer NetworkComputer Network

set of computers linked to each other through some type of network physical link virtual link

indirect via other computers

logical link more abstract level, independent of the physical realization

Page 8: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 88 © 2000 Franz Kurfess

Computer Network DiagramComputer Network Diagram

Network

logicallink

physicallink

Page 9: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 99 © 2000 Franz Kurfess

Network TopologyNetwork Topology

describes the interconnection structure of the network fully connected partially connected hierarchical network

tree structure

star network ring network bus network

unless otherwise noted, the topology refers to the physical interconnections

Page 10: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 1010 © 2000 Franz Kurfess

Comparison CriteriaComparison Criteria

important properties of the configuration site refers to one or several computers with a single access

point to the network link is a connection between two sites

basic cost setup of the communication between two sites

communication cost costs of transferring a message from one site to another time required for the transfer

reliability effects of a failure in a link or site

Page 11: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 1111 © 2000 Franz Kurfess

Fully ConnectedFully Connected

each site is directly linked with all the others basic cost

high: requires a direct link between every two sites quadratic w.r.t. the number of sites

communication cost low: no intermediate steps

reliability very high if messages can be rerouted

Page 12: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 1212 © 2000 Franz Kurfess

Fully Connected DiagramFully Connected Diagram

Page 13: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 1313 © 2000 Franz Kurfess

Partially ConnectedPartially Connected

direct links exist between some pairs of sites basic cost

lower than for the fully connected network

communication cost higher than for the fully connected network

reliability lower than for the fully connected network

Page 14: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 1414 © 2000 Franz Kurfess

Partially Connected DiagramPartially Connected Diagram

Page 15: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 1515 © 2000 Franz Kurfess

Hierarchical NetworkHierarchical Network the sites are organized as a tree

often used for corporate networks headquarters -> main offices -> regional offices

basic cost much lower than fully, usually lower than partially conn.

communication cost higher than for the fully connected network acceptable if communication patterns match the hierarchical

structure

reliability medium: the failure of a site or link partitions the network into

disjoint subtrees

Page 16: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 1616 © 2000 Franz Kurfess

Hierarchical Network DiagramHierarchical Network Diagram

Page 17: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 1717 © 2000 Franz Kurfess

Star NetworkStar Network all sites in the network are linked to a central hub

the hub may be a special device for communication only, or a regular site

basic cost linear with the number of sites

communication cost very low if there isn’t too much traffic central hub may become a bottleneck

reliability depends on the central hub: if it fails, the network is completely

partitioned the failure of a site or link affects only that site

Page 18: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 1818 © 2000 Franz Kurfess

Star Network DiagramStar Network Diagram

Page 19: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 1919 © 2000 Franz Kurfess

Ring NetworkRing Network

each site is connected to its two neighbors links can be uni- or bi-directional

basic cost linear with the number of sites

communication cost linear with the number of sites n-1 transfers for unidirectional, n/2 transfers for bi-

directional links in the worst case

reliability low: the failure of one site or link partitions the network

Page 20: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 2020 © 2000 Franz Kurfess

Ring Network DiagramRing Network Diagram

Page 21: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 2121 © 2000 Franz Kurfess

Directional Ring Network Diagram

Directional Ring Network Diagram

unidirectional bi-directional

Page 22: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 2222 © 2000 Franz Kurfess

Bus NetworkBus Network

single shared link (bus) multiple simultaneous access must be coordinated

all sites are directly connected to the bus basic cost

linear with the number of sites

communication cost low as long as traffic is not too high network contention can become a problem for high traffic

situations

reliability the bus is the critical component

Page 23: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 2323 © 2000 Franz Kurfess

Bus Network DiagramBus Network Diagram

linear bus ring bus

Page 24: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 2424 © 2000 Franz Kurfess

Hybrid NetworksHybrid Networks

combination of different network topologies different topologies usually use different protocols

requires routers or bridges to translate between different protocols and routing mechanisms

more or less unavoidable in practice Ethernet LAN hierarchical WAN

Page 25: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 2525 © 2000 Franz Kurfess

Hybrid Network DiagramHybrid Network Diagrambridge node

Page 26: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 2626 © 2000 Franz Kurfess

Network TypesNetwork Types

geographical distribution of networks local area networks (LANs)

single or adjacent buildings

wide area networks (WANs) sites distributed over a large geographical area

has a major impact in the design of networks speed, reliability, protocol, security

Page 27: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 2727 © 2000 Franz Kurfess

Local Area NetworksLocal Area Networks

connect sites within a small geographical area make resources available to all sites

applications, files, special devices

high-speed communication links Mega-Bit to Giga-Bit per second transfer rate wire, optical fiber, infrared requires expensive links

gateways provide access to other networks other LANs WANs Internet

Page 28: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 2828 © 2000 Franz Kurfess

LAN ExamplesLAN Examples

Ethernet usually wire (shielded or twisted-pair cable) TCP/IP protocol variations

10BaseT 100BaseT

FDDI optical fiber token ring protocol 100 MBit/s

Page 29: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 2929 © 2000 Franz Kurfess

Wide Area NetworksWide Area Networks

connect geographically distributed sites exchange of information access to special purpose computers

not useful for access to peripheral devices

links must cross long distances speed, reliability, security problems may involve other organizations

Page 30: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 3030 © 2000 Franz Kurfess

WAN TechnologyWAN Technology

link technology telephone lines microwave links satellite connections

specialized communication processors interface to LANs (protocol, transfer rate) transmission of information routing billing, usage statistics

Page 31: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 3131 © 2000 Franz Kurfess

WAN ExamplesWAN Examples

Arpanet Internet company networks

Page 32: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 3232 © 2000 Franz Kurfess

Internet as WAN ExampleInternet as WAN Example

LANs are connected to regional networks regional network are connected with routers and

high-speed links special purpose links telephone connections

connections from LANs to the Internet telephone modems (up to 50 KBit/s) ISDN (up to 128 KBit/s) T1 connections (1.544 MBit/s)

can be combined into multiple links

Page 33: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 3333 © 2000 Franz Kurfess

CommunicationCommunication

internal workings of networks naming routing packet strategies connection strategies contention

Page 34: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 3434 © 2000 Franz Kurfess

NamingNaming the entities to exchange information are processes processes must specify the recipient

sometimes also the sender names are more appropriate for human users

must be unique, at least within the horizon of the user computers use numbers internally

hierarchical numbering scheme for unique addresses mapping of names to numbers (addresses)

single file with all names and addresses impractical for large systems

distributed scheme more complicated to implement

Page 35: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 3535 © 2000 Franz Kurfess

Domain Name ServiceDomain Name Service

naming scheme used in the Internet specifies the naming structure of sites and hosts conversion from names to addresses

logical names consist of several fields separated by periods www.cis.njit.edu

refers to a host named www in the CIS department at NJIT

Page 36: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 3636 © 2000 Franz Kurfess

Name Resolution Name Resolution

the name is parsed in reverse order edu indicates that the requested host is in an educational

institution, and the name server for the edu domain is contacted for the address of njit.edu refers

the edu name server returns the address of the host acting as name server for njit.edu refers

the njit.edu returns the address of the cis.njit.edu name server, or directly the address of the requested host

this results in an Internet address (IP-address) of the form 128.132.55.116

caching improves access speed and reliability

Page 37: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 3737 © 2000 Franz Kurfess

RoutingRouting

in WANs there are usually multiple potential connection from host A to host B

a routing table contains information about possible communication paths alternative routes speed, costs

routing schemes fixed virtual dynamic

Page 38: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 3838 © 2000 Franz Kurfess

Fixed RoutingFixed Routing

the path from host A to host B is specified in advance

it does not change unless severe obstacles are encountered e.g. hardware failure

used for heavily used connections minimization of communication costs or transfer time

Page 39: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 3939 © 2000 Franz Kurfess

Virtual RoutingVirtual Routing

the path from A to B is fixed for the duration of one session

different paths for different sessions are possible more flexible than fixed routing reasonably easy to administrate

parts of a message take the same path

Page 40: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 4040 © 2000 Franz Kurfess

Dynamic RoutingDynamic Routing

the path for a message from A to B is chosen at the time of sending the message

different messages from the same session may take different paths composition of messages at the receiver can become

complicated messages may arrive out of order

takes into account the traffic conditions link failures, load changes

Page 41: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 4141 © 2000 Franz Kurfess

RouterRouter

responsible for routing messages can be a computer, or a special purpose device

has routing tables for the networks it is connected to possibly cached copies of the name files from the name

server

examines the destination IP address and decides where to send the message

Page 42: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 4242 © 2000 Franz Kurfess

Packet StrategiesPacket Strategies

variable-length messages are commonly implemented through fixed-length packets datagrams, frames are alternative names for packets

connections are established to transfer packets constituting a message to increase reliability, acknowledgment packets can be

sent

Page 43: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 4343 © 2000 Franz Kurfess

Connection StrategiesConnection Strategies

establishing communication between processes that want to exchange information

circuit switching a connection is established for the whole duration of the

session similar to the telephone system inefficient resource utilization

message switching packet switching

Page 44: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 4444 © 2000 Franz Kurfess

Circuit SwitchingCircuit Switching

a connection is established for the whole duration of the session similar to the telephone system

inefficient resource utilization the communication line is reserved even if there is no

activity

little overhead for individual messages

Page 45: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 4545 © 2000 Franz Kurfess

Message SwitchingMessage Switching

a connection is established for the transfer of one particular message similar to letters sent through the postal service

better resource utilization many messages can use the same link no waste due to inactivity of individual processes

more overhead for messages each message must contain administrative information

receiver, sender, etc.

Page 46: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 4646 © 2000 Franz Kurfess

Packet SwitchingPacket Switching

individual packets from one message are sent separately

very good resource utilization better load balancing efficient treatment of packets since all are of the same

size

overhead for individual packets receiver, sender

packets must be reassembled into messages may not be suitable for time-sensitive information

Page 47: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 4747 © 2000 Franz Kurfess

ContentionContention

several hosts may want to use a link simultaneously mainly relevant for bus topologies

without coordination, data will be scrambled and becomes useless

solutions collision detection token passing message slots

Page 48: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 4848 © 2000 Franz Kurfess

Collision DetectionCollision Detection

a host can only use a link if it is free if two hosts start transmitting at the same time, a

collision will occur the collision must be detected the hosts will try again with some random delay

many collisions in high-traffic situations limited number of hosts on a network segment used in the Ethernet protocol

CSMA/CD: carrier sense with multiple access/collision detection

Page 49: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 4949 © 2000 Franz Kurfess

Token PassingToken Passing

a unique message (token) circulates in the network normally a ring topology

a host may transmit only if it has the token must wait until the token arrives forwards the token after the transmission is finished precautions must be taken for a lost token

constant performance, independent of traffic load worse than CSMA/CD in low traffic, better for high traffic

used in IBM Token Ring networks

Page 50: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 5050 © 2000 Franz Kurfess

Message SlotsMessage Slots

a number of fixed-length message slots circulate in the system normally a ring topology variable-size messages may have to be partitioned

a host must wait until an empty slot arrives used int the Cambridge Digital Communication Ring

experimental system little experience with performance

Page 51: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 5151 © 2000 Franz Kurfess

Network DesignNetwork Design

complex problem involving various levels of abstraction names, IP addresses, messages, packets

coordination between different protocols one approach is to partition the problem into several

layers ISO/OSI protocol layers ISO/OSI network model

Page 52: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 5252 © 2000 Franz Kurfess

OSI ModelOSI Model

Open Systems Interconnection (OSI) reference model

developed by the International Organization for Standardization (ISO)

is commonly used as abstract model TCP/IP is much more widely used in practice

less complex more mature

Page 53: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 5353 © 2000 Franz Kurfess

OSI LayersOSI Layers

Physical

Data Link

Network

Transport

Session

Presentation

Applicationinteraction with the userfile transfer, remote login, email, distributed data bases

conversion of different formats and data representations;characters (ASCII, ISO), transmission modes

communication protocols between processesremote login, file and mail transfer (at the process level)

transfer of data between processesmessage handling, error recovery, flow control

independence from network technologiesnetwork routing, addressing, connection management

reliable transfer of information on physical linkspacket handling, error detection and recovery on lower level

transmission of a bit stream over the physical mediummechanical and electrical network interface

Page 54: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 5454 © 2000 Franz Kurfess

Network ExampleNetwork Example

exchange of information between hosts on different Ethernet networks

TCP/IP TCP: transmission control protocol IP: Internet protocol very widely used

available for practically all computer systems

simpler than the ISO/OSI model four layers instead of seven

Ethernet very popular LAN

Page 55: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 5555 © 2000 Franz Kurfess

TCP/IP ExampleTCP/IP Example

physical

network accessprotocol 1

IP

TCP

application

Network 1

physical

network accessprotocol 1

IP

TCP

application

Network 2

Router

Host A Host B

IP

NAP 1 NAP 2

logical connection

Page 56: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 5656 © 2000 Franz Kurfess

Client/Server ComputingClient/Server Computing

applications are separated into tasks client tasks

user interface, presentation, some processing

server tasks data management, storage, computation-intensive processing

cooperation between client and server clients request services from servers servers return results to clients

network environment frequently LAN, sometimes WAN

Page 57: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 5757 © 2000 Franz Kurfess

Client/Server DiagramClient/Server Diagram

[Stallings 98]

ServersClients

Network(LAN, WAN)

Page 58: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 5858 © 2000 Franz Kurfess

Client/Server ArchitectureClient/Server Architecture

[Stallings 98]

Hardware Platform

Operating System

Communication

Application Logic(Client Side)

PresentationServices

Hardware Platform

Operating System

Communication

Application Logic(Server Side)

ClientServer

Request

Response

Protocol

Page 59: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 5959 © 2000 Franz Kurfess

Client/Server Example: Data Base

Client/Server Example: Data Base

[Stallings 98]

Hardware Platform

Operating System

Application Logic(Client Side)

Data BaseLogic

Hardware Platform

Operating System

Communication

Application Logic(Server Side)

Client

Server

Request

Response

Protocol

PresentationServices

Communication

Data BaseLogic & DBMS

Page 60: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 6060 © 2000 Franz Kurfess

Client/Server UsageClient/Server Usage

a data base is a good example for client/server centralized maintenance possibly large storage space requirements computation-intensive operations

sorting, searching, joins

powerful server with large hard disk(s) client provides user interface, smaller computations potential problem: balance between client & server

searching should not be done by the client network traffic to transfer the whole data base computation power required

Page 61: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 6161 © 2000 Franz Kurfess

Client/Server AdvantagesClient/Server Advantages

lower cost than mainframes better utilization of PCs, workstations distribution or centralization of critical services

possible, as needed

resource sharing load distribution

Page 62: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 6262 © 2000 Franz Kurfess

Client/Server ProblemsClient/Server Problems

client administration different platforms (hardware, OS, language)

software distribution reliable verifiable

security network information

integration of various systems legacy systems multi-vendor, multi-platform environments

Page 63: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 6363 © 2000 Franz Kurfess

MiddlewareMiddleware

tools and methods that provide a uniform access mechanism to systems across all platforms standardized interfaces and protocols

examples Common Object Request Broker Architecture (CORBA) Common Object Model (COM), Object Linking and

Embedding (OLE) Java

Page 64: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 6464 © 2000 Franz Kurfess

Middleware DiagramMiddleware Diagram

Middleware(distributed system services)

Application

Platform

[Stallings 98]

APIs

PlatformInterfaces

Page 65: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 6565 © 2000 Franz Kurfess

Middleware ExampleMiddleware Example

ObjectRequest Broker

DBMSServlet

OODBMSServlet

CORBAServlet

Server Middleware

WebServer

CustomServer

Servers

Web Browser

CORBAClient

CustomClient

CustomServlet

Data Base ServerClients

Page 66: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 6666 © 2000 Franz Kurfess

Tiered ArchitecturesTiered Architectures

distinction between various types of networked computer system

drive towards a global shared information space (WWW) dynamic, executable content platform-independent implementation

integration of existing systems

Page 67: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 6767 © 2000 Franz Kurfess

Tiered Architectures cont.Tiered Architectures cont.

utilization of resources processing power of underutilized computers access to networked resources

total cost of ownership (TCO) basic costs for infrastructure cost per computer system

Page 68: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 6868 © 2000 Franz Kurfess

Single-Tiered ArchitectureSingle-Tiered Architecture

typical mainframe with directly connected terminals all resources are available through the mainframe advantages and problems

easy to manage high cost low flexibility connectivity

usually star network with mainframe as central hub

Page 69: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 6969 © 2000 Franz Kurfess

Single-Tier DiagramSingle-Tier Diagram

mainframe

terminals

Page 70: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 7070 © 2000 Franz Kurfess

Two-Tiered ArchitectureTwo-Tiered Architecture typical client/server model

server provides various services clients have limited processing power

advantages and problems lower cost better use of desktop processing power higher flexibility

access to services on various servers

more difficult to manage and program connectivity

flexible, usually LAN

separation of business logic from client processing

Page 71: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 7171 © 2000 Franz Kurfess

Two-Tier DiagramTwo-Tier Diagram

servers

PCs, workstations

Page 72: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 7272 © 2000 Franz Kurfess

Three-Tiered ArchitectureThree-Tiered Architecture integration of existing systems (“legacy” systems)

frequently via middleware reduction of management and program development

problems through platform-independent methods CORBA, Java

advantages and problems reasonable to manage and program

platform-independent applications intermediate components

high flexibility integration of legacy systems

LAN-based connectivity

Page 73: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 7373 © 2000 Franz Kurfess

Three-Tier DiagramThree-Tier Diagram

PCs, workstations

servers

mainframes

Page 74: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 7474 © 2000 Franz Kurfess

Important Concepts and TermsImportant Concepts and Terms application layer bus computer system CSMA/CD distributed operating system Ethernet fully connected hierarchical network host ISO/OSI model Internet local machine middleware

network operating system node operating system partially connected physical layer processes, tasks remote resource ring service site star TCP/IP tier topology

Page 75: Networks 1 © 2000 Franz Kurfess Course Overview Principles of Operating Systems  Introduction  Computer System Structures  Operating System Structures

Networks Networks 7575 © 2000 Franz Kurfess

Chapter SummaryChapter Summary

most computer systems are connected to networks local area network (LAN) wide area network (WAN), especially Internet

networking enables communication, collaboration, and access to shared resources

networks require infrastructure interconnections (links) protocols

a client/server model is frequently used in networks middleware integrates various platforms and applications

on networks