Transcript Networking

Course Overview
Principles of Operating Systems







Introduction
Computer System
Structures
Operating System
Structures
Processes
Process Synchronization
Deadlocks
CPU Scheduling
© 2000 Franz Kurfess








Memory Management
Virtual Memory
File Management
Security
Networks
Distributed Systems
Case Studies
Conclusions
Networks 1
Chapter Overview
Networking






Motivation
Objectives
Topology
Network Types
Communication
Design Strategies
© 2000 Franz Kurfess





Examples
Client/Server Model
Middleware
Important Concepts and
Terms
Chapter Summary
Networks 2
Motivation
 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
© 2000 Franz Kurfess
Networks 3
Objectives
 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
© 2000 Franz Kurfess
Networks 4
Terminology
 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
© 2000 Franz Kurfess
Networks 5
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
© 2000 Franz Kurfess
Networks 6
Computer 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
© 2000 Franz Kurfess
Networks 7
Computer Network Diagram
logical
link
physical
link
Network
© 2000 Franz Kurfess
Networks 8
Network 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
© 2000 Franz Kurfess
Networks 9
Comparison 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
© 2000 Franz Kurfess
of a failure in a link or site
Networks 10
Fully 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
 low:
cost
no intermediate steps
 reliability
 very
high if messages can be rerouted
© 2000 Franz Kurfess
Networks 11
Fully Connected Diagram
© 2000 Franz Kurfess
Networks 12
Partially Connected
 direct
links exist between some pairs of sites
 basic cost
 lower
than for the fully connected network
 communication
 higher
cost
than for the fully connected network
 reliability
 lower
than for the fully connected network
© 2000 Franz Kurfess
Networks 13
Partially Connected Diagram
© 2000 Franz Kurfess
Networks 14
Hierarchical 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
© 2000 Franz Kurfess
Networks 15
Hierarchical Network Diagram
© 2000 Franz Kurfess
Networks 16
Star 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
© 2000 Franz Kurfess
Networks 17
Star Network Diagram
© 2000 Franz Kurfess
Networks 18
Ring Network
 each
site is connected to its two neighbors
 links
 basic
can be uni- or bi-directional
cost
 linear
with the number of sites
 communication
cost
 linear
with the number of sites
 n-1 transfers for unidirectional, n/2 transfers for bidirectional links in the worst case
 reliability
 low:
the failure of one site or link partitions the network
© 2000 Franz Kurfess
Networks 19
Ring Network Diagram
© 2000 Franz Kurfess
Networks 20
Directional Ring Network
Diagram
unidirectional
© 2000 Franz Kurfess
bi-directional
Networks 21
Bus 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
© 2000 Franz Kurfess
Networks 22
Bus Network Diagram
linear bus
© 2000 Franz Kurfess
ring bus
Networks 23
Hybrid Networks
 combination
 different
of different network topologies
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
© 2000 Franz Kurfess
Networks 24
Hybrid Network Diagram
bridge node
© 2000 Franz Kurfess
Networks 25
Network Types
 geographical
distribution of networks
 local area networks (LANs)
 single
 wide
area networks (WANs)
 sites
 has
or adjacent buildings
distributed over a large geographical area
a major impact in the design of networks
 speed,
© 2000 Franz Kurfess
reliability, protocol, security
Networks 26
Local Area Networks
 connect
sites within a small geographical area
 make resources available to all sites
 applications,
 high-speed
files, special devices
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
© 2000 Franz Kurfess
Networks 27
LAN Examples
 Ethernet
 usually
wire (shielded or twisted-pair cable)
 TCP/IP protocol
 variations


10BaseT
100BaseT
 FDDI
 optical
fiber
 token ring protocol
 100 MBit/s
© 2000 Franz Kurfess
Networks 28
Wide Area Networks
 connect
geographically distributed sites
 exchange of information
 access to special purpose computers
 not
 links
useful for access to peripheral devices
must cross long distances
 speed,
reliability, security problems
 may involve other organizations
© 2000 Franz Kurfess
Networks 29
WAN 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
© 2000 Franz Kurfess
Networks 30
WAN Examples
 Arpanet
 Internet
 company
© 2000 Franz Kurfess
networks
Networks 31
Internet 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
© 2000 Franz Kurfess
Networks 32
Communication
 internal
workings of networks
 naming
 routing
 packet
strategies
 connection strategies
 contention
© 2000 Franz Kurfess
Networks 33
Naming
 the
entities to exchange information are processes
 processes must specify the recipient
 sometimes
 names
 must
also the sender
are more appropriate for human users
be unique, at least within the horizon of the user
 computers
use numbers internally
 hierarchical
 mapping
 single

of names to numbers (addresses)
file with all names and addresses
impractical for large systems
 distributed

numbering scheme for unique addresses
scheme
more complicated to implement
© 2000 Franz Kurfess
Networks 34
Domain 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
© 2000 Franz Kurfess
Networks 35
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
© 2000 Franz Kurfess
Networks 36
Routing
 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
© 2000 Franz Kurfess
Networks 37
Fixed Routing
 the
path from host A to host B is specified in
advance
 it does not change unless severe obstacles are
encountered
 e.g.
 used
hardware failure
for heavily used connections
 minimization
© 2000 Franz Kurfess
of communication costs or transfer time
Networks 38
Virtual 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
© 2000 Franz Kurfess
Networks 39
Dynamic 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
 link
into account the traffic conditions
failures, load changes
© 2000 Franz Kurfess
Networks 40
Router
 responsible
 can
 has
for routing messages
be a computer, or a special purpose device
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
© 2000 Franz Kurfess
Networks 41
Packet 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
© 2000 Franz Kurfess
Networks 42
Connection 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
© 2000 Franz Kurfess
Networks 43
Circuit 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
© 2000 Franz Kurfess
Networks 44
Message Switching
a
connection is established for the transfer of one
particular message
 similar
 better
to letters sent through the postal service
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.
© 2000 Franz Kurfess
Networks 45
Packet 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
 receiver,
for individual packets
sender
 packets
must be reassembled into messages
 may not be suitable for time-sensitive information
© 2000 Franz Kurfess
Networks 46
Contention
 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
© 2000 Franz Kurfess
Networks 47
Collision 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
© 2000 Franz Kurfess
Networks 48
Token Passing
a
unique message (token) circulates in the network
 normally
a
a ring topology
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
 worse
 used
performance, independent of traffic load
than CSMA/CD in low traffic, better for high traffic
in IBM Token Ring networks
© 2000 Franz Kurfess
Networks 49
Message 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
© 2000 Franz Kurfess
Networks 50
Network 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
© 2000 Franz Kurfess
Networks 51
OSI 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
© 2000 Franz Kurfess
Networks 52
OSI Layers
Application
interaction with the user
file transfer, remote login, email, distributed data bases
conversion of different formats and data representations;
Presentation characters (ASCII, ISO), transmission modes
Session
communication protocols between processes
remote login, file and mail transfer (at the process level)
Transport
transfer of data between processes
message handling, error recovery, flow control
Network
independence from network technologies
network routing, addressing, connection management
Data Link
reliable transfer of information on physical links
packet handling, error detection and recovery on lower level
Physical
transmission of a bit stream over the physical medium
mechanical and electrical network interface
© 2000 Franz Kurfess
Networks 53
Network 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
© 2000 Franz Kurfess
Networks 54
TCP/IP Example
Host A
Host B
application
application
TCP
logical connection
TCP
IP
IP
network access
protocol 1
physical
network access
protocol 1
physical
Network 1
© 2000 Franz Kurfess
Router
IP
NAP 1 NAP 2
Network 2
Networks 55
Client/Server Computing
 applications
 client

tasks
user interface, presentation, some processing
 server

are separated into tasks
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
© 2000 Franz Kurfess
LAN, sometimes WAN
Networks 56
Client/Server Diagram
Servers
Clients
Network
(LAN, WAN)
© 2000 Franz Kurfess
[Stallings 98]
Networks 57
Client/Server Architecture
Client
Server
Presentation
Services
Request
Application Logic
(Client Side)
Response
Application Logic
(Server Side)
Communication
Protocol
Communication
Operating System
Operating System
Hardware Platform
Hardware Platform
© 2000 Franz Kurfess
[Stallings 98]
Networks 58
Client
Client/Server Example:
Data Base
Presentation
Services
Server
Application Logic
(Client Side)
Application Logic
(Server Side)
Data Base
Logic
Communication
Request
Response
Data Base
Logic & DBMS
Protocol
Communication
Operating System
Operating System
Hardware Platform
Hardware Platform
© 2000 Franz Kurfess
[Stallings 98]
Networks 59
Client/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
© 2000 Franz Kurfess
Networks 60
Client/Server Advantages
 lower
cost than mainframes
 better utilization of PCs, workstations
 distribution or centralization of critical services
 possible,
as needed
 resource
sharing
 load distribution
© 2000 Franz Kurfess
Networks 61
Client/Server Problems
 client
administration
 different
 software
platforms (hardware, OS, language)
distribution
 reliable
 verifiable
 security
 network
 information
 integration
of various systems
 legacy
systems
 multi-vendor, multi-platform environments
© 2000 Franz Kurfess
Networks 62
Middleware
 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
© 2000 Franz Kurfess
Networks 63
Middleware Diagram
Application
APIs
Middleware
(distributed system services)
Platform
Interfaces
Platform
© 2000 Franz Kurfess
[Stallings 98]
Networks 64
Middleware Example
Clients
Web
Browser
Servers
Data Base Server
DBMS
Servlet
Web
Server
OODBMS
Servlet
CORBA
Client
Custom
Client
Server
Middleware
Custom
Server
Object
Request Broker
CORBA
Servlet
Custom
Servlet
© 2000 Franz Kurfess
Networks 65
Tiered Architectures
 distinction
between various types of networked
computer system
 drive towards a global shared information space
(WWW)
 dynamic,
executable content
 platform-independent implementation
 integration
© 2000 Franz Kurfess
of existing systems
Networks 66
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
© 2000 Franz Kurfess
Networks 67
Single-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
© 2000 Franz Kurfess
Networks 68
Single-Tier Diagram
mainframe
terminals
© 2000 Franz Kurfess
Networks 69
Two-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
© 2000 Franz Kurfess
of business logic from client processing
Networks 70
Two-Tier Diagram
servers
PCs, workstations
© 2000 Franz Kurfess
Networks 71
Three-Tiered Architecture
 integration
 frequently
of existing systems (“legacy” systems)
via middleware
 reduction
of management and program development
problems through platform-independent methods
 CORBA,
Java
 advantages
 reasonable


to manage and program
platform-independent applications
intermediate components
 high

and problems
flexibility
integration of legacy systems
 LAN-based
© 2000 Franz Kurfess
connectivity
Networks 72
Three-Tier Diagram
mainframes
servers
PCs, workstations
© 2000 Franz Kurfess
Networks 73
Important 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
© 2000 Franz Kurfess















network operating system
node
operating system
partially connected
physical layer
processes, tasks
remote
resource
ring
service
site
star
TCP/IP
tier
topology
Networks 74
Chapter 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
© 2000 Franz Kurfess
Networks 75