Course Overview Principles of Operating Systems Introduction Computer

  • Slides: 75
Download presentation
Course Overview Principles of Operating Systems Introduction Computer System Structures Operating System Structures Process

Course Overview Principles of Operating Systems Introduction Computer System Structures Operating System Structures 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

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

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

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

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 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

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

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

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 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

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 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:

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

Fully Connected Diagram © 2000 Franz Kurfess Networks 12

Partially Connected direct links exist between some pairs of sites basic cost lower than

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

Partially Connected Diagram © 2000 Franz Kurfess Networks 14

Hierarchical Network the sites are organized as a tree often used for corporate networks

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

Hierarchical Network Diagram © 2000 Franz Kurfess Networks 16

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

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

Star Network Diagram © 2000 Franz Kurfess Networks 18

Ring Network each site is connected to its two neighbors links basic can be

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

Ring Network Diagram © 2000 Franz Kurfess Networks 20

Directional Ring Network Diagram unidirectional © 2000 Franz Kurfess bi-directional Networks 21

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

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

Bus Network Diagram linear bus © 2000 Franz Kurfess ring bus Networks 23

Hybrid Networks combination different of different network topologies usually use different protocols requires routers

Hybrid Networks combination different of different network 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

Hybrid Network Diagram bridge node © 2000 Franz Kurfess Networks 25

Network Types geographical distribution of networks local area networks (LANs) single wide area networks

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

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 10 Base.

LAN Examples Ethernet usually wire (shielded or twisted-pair cable) TCP/IP protocol variations 10 Base. T 100 Base. T 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

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

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

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

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 from LANs to the Internet telephone modems (up to 50 KBit/s) ISDN (up to 128 KBit/s) T 1 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

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 must specify the recipient sometimes names

Naming the entities to exchange information are 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 numbering scheme for unique addresses of names to numbers (addresses) file with all names and addresses impractical for large systems distributed more © 2000 Franz Kurfess scheme complicated to implement Networks 34

Domain Name Service naming scheme used in the Internet specifies the naming structure of

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

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

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

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

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

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

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

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 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

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

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

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

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

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

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

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

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

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

OSI Layers Application interaction with the user file transfer, remote login, email, distributed data bases Presentation conversion of different formats and data representations; 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

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 TCP logical connection TCP IP IP network

TCP/IP Example Host A Host B application TCP logical connection TCP IP IP network access protocol 1 physical Network 1 © 2000 Franz Kurfess Router IP NAP 1 NAP 2 Networks 55

Client/Server Computing applications client tasks user interface, presentation, some processing server are separated into

Client/Server Computing applications client tasks user interface, presentation, some processing server are separated into tasks data management, storage, computation-intensive processing cooperation between client and server clients request services from 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

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

Client/Server Architecture Client Server Presentation Services Request Application Logic (Client Side) Response Application Logic (Server Side) Communication Protocol Communication Operating System Hardware Platform © 2000 Franz Kurfess [Stallings 98] Networks 58

Client/Server Example: Data Base Presentation Services Server Application Logic (Client Side) Application Logic (Server

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 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

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

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

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

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

Middleware Diagram Application APIs Middleware (distributed system services) Platform Interfaces Platform © 2000 Franz Kurfess [Stallings 98] Networks 64

Middleware Example Clients Web Browser Servers Web Server Custom Server Data Base Server DBMS

Middleware Example Clients Web Browser Servers Web Server Custom Server Data Base Server DBMS Servlet OODBMS Servlet CORBA Client Custom Client Server Middleware 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

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

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

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

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

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

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

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 and problems to manage and program platform-independent applications intermediate components high 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

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

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

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