SlideShare a Scribd company logo
Chapter 14:Chapter 14:
Distributed Operating SystemsDistributed Operating Systems
16.2 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Chapter 14: Distributed Operating SystemsChapter 14: Distributed Operating Systems
 Motivation
 Types of Distributed Operating Systems
 Network Structure
 Network Topology
 Communication Structure
 Communication Protocols
 Robustness
 Design Issues
 An Example: Networking
16.3 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Chapter ObjectivesChapter Objectives
 To provide a high-level overview of distributed systems and
the networks that interconnect them
 To discuss the general structure of distributed operating
systems
16.4 Silberschatz, Galvin and Gagne ©2005Operating System Principles
MotivationMotivation
 Distributed system is collection of loosely coupled processors
interconnected by a communications network
 Processors variously called nodes, computers, machines, hosts
 Site is location of the processor
 Reasons for distributed systems
 Resource sharing
 sharing and printing files at remote sites
 processing information in a distributed database
 using remote specialized hardware devices
 Computation speedup – load sharing
 Reliability – detect and recover from site failure, function
transfer, reintegrate failed site
 Communication – message passing
16.5 Silberschatz, Galvin and Gagne ©2005Operating System Principles
A Distributed SystemA Distributed System
16.6 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Types of Distributed Operating SystemsTypes of Distributed Operating Systems
 Network Operating Systems
 Distributed Operating Systems
16.7 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Network-Operating SystemsNetwork-Operating Systems
 Users are aware of multiplicity of machines. Access to
resources of various machines is done explicitly by:
 Remote logging into the appropriate remote machine
(telnet, ssh)
 Remote Desktop (Microsoft Windows)
 Transferring data from remote machines to local
machines, via the File Transfer Protocol (FTP)
mechanism
16.8 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Distributed-Operating SystemsDistributed-Operating Systems
 Users not aware of multiplicity of machines
 Access to remote resources similar to access to local
resources
 Data Migration – transfer data by transferring entire file, or
transferring only those portions of the file necessary for the
immediate task
 Computation Migration – transfer the computation, rather than the
data, across the system
16.9 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Distributed-Operating Systems (Cont.)Distributed-Operating Systems (Cont.)
 Process Migration – execute an entire process, or parts of it, at
different sites
 Load balancing – distribute processes across network to even
the workload
 Computation speedup – subprocesses can run concurrently on
different sites
 Hardware preference – process execution may require
specialized processor
 Software preference – required software may be available at
only a particular site
 Data access – run process remotely, rather than transfer all
data locally
16.10 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Network StructureNetwork Structure
 Local-Area Network (LAN) – designed to cover small geographical
area.
 Multiaccess bus, ring, or star network
 Speed ≈ 10 – 100 megabits/second
 Broadcast is fast and cheap
 Nodes:
 usually workstations and/or personal computers
 a few (usually one or two) mainframes
16.11 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Depiction of typical LANDepiction of typical LAN
16.12 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Network Types (Cont.)Network Types (Cont.)
 Wide-Area Network (WAN) – links geographically separated sites
 Point-to-point connections over long-haul lines (often leased
from a phone company)
 Speed ≈ 1.544 – 45 megbits/second
 Broadcast usually requires multiple messages
 Nodes:
 usually a high percentage of mainframes
16.13 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Communication Processors in a Wide-Area NetworkCommunication Processors in a Wide-Area Network
16.14 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Network TopologyNetwork Topology
 Sites in the system can be physically connected in a variety of
ways; they are compared with respect to the following criteria:
 Basic cost - How expensive is it to link the various sites in the
system?
 Communication cost - How long does it take to send a
message from site A to site B?
 Reliability - If a link or a site in the system fails, can the
remaining sites still communicate with each other?
 The various topologies are depicted as graphs whose nodes
correspond to sites
 An edge from node A to node B corresponds to a direct
connection between the two sites
 The following six items depict various network topologies
16.15 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Network TopologyNetwork Topology
16.16 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Communication StructureCommunication Structure
 Naming and name resolution - How do two processes
locate each other to communicate?
 Routing strategies - How are messages sent through the
network?
 Connection strategies - How do two processes send a
sequence of messages?
 Contention - The network is a shared resource, so how do
we resolve conflicting demands for its use?
The design of a communication network must address four basic
issues:
16.17 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Naming and Name ResolutionNaming and Name Resolution
 Name systems in the network
 Address messages with the process-id
 Identify processes on remote systems by
<host-name, identifier> pair
 Domain name service (DNS) – specifies the naming
structure of the hosts, as well as name to address
resolution (Internet)
16.18 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Routing StrategiesRouting Strategies
 Fixed routing - A path from A to B is specified in advance; path
changes only if a hardware failure disables it
 Since the shortest path is usually chosen, communication costs
are minimized
 Fixed routing cannot adapt to load changes
 Ensures that messages will be delivered in the order in which
they were sent
 Virtual circuit - A path from A to B is fixed for the duration of one
session. Different sessions involving messages from A to B may
have different paths
 Partial remedy to adapting to load changes
 Ensures that messages will be delivered in the order in which
they were sent
16.19 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Routing Strategies (Cont.)Routing Strategies (Cont.)
 Dynamic routing - The path used to send a message form site A
to site B is chosen only when a message is sent
 Usually a site sends a message to another site on the link least
used at that particular time
 Adapts to load changes by avoiding routing messages on
heavily used path
 Messages may arrive out of order
 This problem can be remedied by appending a sequence
number to each message
16.20 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Connection StrategiesConnection Strategies
 Circuit switching - A permanent physical link is established for
the duration of the communication (i.e., telephone system)
 Message switching - A temporary link is established for the
duration of one message transfer (i.e., post-office mailing system)
 Packet switching - Messages of variable length are divided into
fixed-length packets which are sent to the destination
 Each packet may take a different path through the network
 The packets must be reassembled into messages as they
arrive
 Circuit switching requires setup time, but incurs less overhead for
shipping each message, and may waste network bandwidth
 Message and packet switching require less setup time, but
incur more overhead per message
16.21 Silberschatz, Galvin and Gagne ©2005Operating System Principles
ContentionContention
 CSMA/CD - Carrier sense with multiple access (CSMA);
collision detection (CD)
 A site determines whether another message is currently
being transmitted over that link. If two or more sites
begin transmitting at exactly the same time, then they
will register a CD and will stop transmitting
 When the system is very busy, many collisions may
occur, and thus performance may be degraded
 CSMA/CD is used successfully in the Ethernet system, the
most common network system
Several sites may want to transmit information over a link
simultaneously. Techniques to avoid repeated collisions include:
16.22 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Contention (Cont.)Contention (Cont.)
 Token passing - A unique message type, known as a token,
continuously circulates in the system (usually a ring structure)
 A site that wants to transmit information must wait until the
token arrives
 When the site completes its round of message passing, it
retransmits the token
 A token-passing scheme is used by some IBM and HP/Apollo
systems
 Message slots - A number of fixed-length message slots
continuously circulate in the system (usually a ring structure)
 Since a slot can contain only fixed-sized messages, a single
logical message may have to be broken down into a number of
smaller packets, each of which is sent in a separate slot
 This scheme has been adopted in the experimental Cambridge
Digital Communication Ring
16.23 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Communication ProtocolCommunication Protocol
 Physical layer – handles the mechanical and electrical
details of the physical transmission of a bit stream
 Data-link layer – handles the frames, or fixed-length parts
of packets, including any error detection and recovery that
occurred in the physical layer
 Network layer – provides connections and routes packets
in the communication network, including handling the
address of outgoing packets, decoding the address of
incoming packets, and maintaining routing information for
proper response to changing load levels
The communication network is partitioned into the following
multiple layers:
16.24 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Communication Protocol (Cont.)Communication Protocol (Cont.)
 Transport layer – responsible for low-level network access and for
message transfer between clients, including partitioning messages
into packets, maintaining packet order, controlling flow, and
generating physical addresses
 Session layer – implements sessions, or process-to-process
communications protocols
 Presentation layer – resolves the differences in formats among
the various sites in the network, including character conversions,
and half duplex/full duplex (echoing)
 Application layer – interacts directly with the users’ deals with file
transfer, remote-login protocols and electronic mail, as well as
schemas for distributed databases
16.25 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Communication Via ISO NetworkCommunication Via ISO Network
ModelModel
16.26 Silberschatz, Galvin and Gagne ©2005Operating System Principles
The ISO Protocol LayerThe ISO Protocol Layer
16.27 Silberschatz, Galvin and Gagne ©2005Operating System Principles
The ISO Network MessageThe ISO Network Message
16.28 Silberschatz, Galvin and Gagne ©2005Operating System Principles
The TCP/IP Protocol LayersThe TCP/IP Protocol Layers
16.29 Silberschatz, Galvin and Gagne ©2005Operating System Principles
RobustnessRobustness
 Failure detection
 Reconfiguration
16.30 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Failure DetectionFailure Detection
 Detecting hardware failure is difficult
 To detect a link failure, a handshaking protocol can be used
 Assume Site A and Site B have established a link
 At fixed intervals, each site will exchange an I-am-up message
indicating that they are up and running
 If Site A does not receive a message within the fixed interval, it
assumes either (a) the other site is not up or (b) the message was
lost
 Site A can now send an Are-you-up? message to Site B
 If Site A does not receive a reply, it can repeat the message or try
an alternate route to Site B
16.31 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Failure Detection (cont)Failure Detection (cont)
 If Site A does not ultimately receive a reply from Site B, it
concludes some type of failure has occurred
 Types of failures:
- Site B is down
- The direct link between A and B is down
- The alternate link from A to B is down
- The message has been lost
 However, Site A cannot determine exactly why the failure has
occurred
16.32 Silberschatz, Galvin and Gagne ©2005Operating System Principles
ReconfigurationReconfiguration
 When Site A determines a failure has occurred, it must reconfigure
the system:
1. If the link from A to B has failed, this must be broadcast to every
site in the system
2. If a site has failed, every other site must also be notified
indicating that the services offered by the failed site are no longer
available
 When the link or the site becomes available again, this information
must again be broadcast to all other sites
16.33 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Design IssuesDesign Issues
 Transparency – the distributed system should appear as a
conventional, centralized system to the user
 Fault tolerance – the distributed system should continue to
function in the face of failure
 Scalability – as demands increase, the system should easily
accept the addition of new resources to accommodate the
increased demand
 Clusters – a collection of semi-autonomous machines that acts as
a single system
16.34 Silberschatz, Galvin and Gagne ©2005Operating System Principles
Example: NetworkingExample: Networking
 The transmission of a network packet between hosts on an
Ethernet network
 Every host has a unique IP address and a corresponding Ethernet
(MAC) address
 Communication requires both addresses
 Domain Name Service (DNS) can be used to acquire IP addresses
 Address Resolution Protocol (ARP) is used to map MAC addresses
to IP addresses
 If the hosts are on the same network, ARP can be used
 If the hosts are on different networks, the sending host will
send the packet to a router which routes the packet to the
destination network
16.35 Silberschatz, Galvin and Gagne ©2005Operating System Principles
An Ethernet PacketAn Ethernet Packet
End of Chapter 16End of Chapter 16

More Related Content

DOC
Distributed Mutual exclusion algorithms
DOCX
VIRTUALIZATION STRUCTURES TOOLS.docx
PPTX
Replication in Distributed Systems
PPTX
Distributed shred memory architecture
PPTX
Distributed DBMS - Unit 6 - Query Processing
PPTX
Virtual machine security
PPT
distributed shared memory
PPT
Clock synchronization in distributed system
Distributed Mutual exclusion algorithms
VIRTUALIZATION STRUCTURES TOOLS.docx
Replication in Distributed Systems
Distributed shred memory architecture
Distributed DBMS - Unit 6 - Query Processing
Virtual machine security
distributed shared memory
Clock synchronization in distributed system

What's hot (20)

PPT
Gsm radio-interface
PPT
Logical Clocks (Distributed computing)
PPTX
Processor allocation in Distributed Systems
PDF
Fault tolerance
PDF
Distributed Operating System_1
PDF
Course outline of parallel and distributed computing
PPTX
Introduction to Parallel and Distributed Computing
PPT
Synchronization in distributed systems
PDF
CS9222 ADVANCED OPERATING SYSTEMS
PPTX
Distributed operating system
PPTX
Concurrency Control in Distributed Systems.pptx
PDF
CS9222 ADVANCED OPERATING SYSTEMS
PPTX
Distributed file system
PPTX
Interface specification
PPTX
Fault tolerance in distributed systems
PPTX
SLA Management in Cloud
PPT
Communication primitives
PPTX
Matching techniques
Gsm radio-interface
Logical Clocks (Distributed computing)
Processor allocation in Distributed Systems
Fault tolerance
Distributed Operating System_1
Course outline of parallel and distributed computing
Introduction to Parallel and Distributed Computing
Synchronization in distributed systems
CS9222 ADVANCED OPERATING SYSTEMS
Distributed operating system
Concurrency Control in Distributed Systems.pptx
CS9222 ADVANCED OPERATING SYSTEMS
Distributed file system
Interface specification
Fault tolerance in distributed systems
SLA Management in Cloud
Communication primitives
Matching techniques
Ad

Viewers also liked (16)

PDF
Ddb 1.6-design issues
PPT
Design principles of scalable, distributed systems
PPT
Distributed Database System
DOCX
Aos v unit protection and access control
PDF
Rtos princples adn case study
PPTX
Relational algebra calculus
PPTX
Kernel I/O subsystem
PPT
Relational Algebra
PPTX
Introduction to Remote Procedure Call
PDF
Distributed Operating System_4
PPT
remote procedure calls
PPTX
Distributed Systems Real Life Applications
PDF
NFS(Network File System)
PPT
Distributed Systems
PDF
Bill Aulet GEC2016 keynote speech March 16 2016 Medellin Colombia
Ddb 1.6-design issues
Design principles of scalable, distributed systems
Distributed Database System
Aos v unit protection and access control
Rtos princples adn case study
Relational algebra calculus
Kernel I/O subsystem
Relational Algebra
Introduction to Remote Procedure Call
Distributed Operating System_4
remote procedure calls
Distributed Systems Real Life Applications
NFS(Network File System)
Distributed Systems
Bill Aulet GEC2016 keynote speech March 16 2016 Medellin Colombia
Ad

Similar to Design issues of dos (20)

PPT
16.Distributed System Structure
PPT
oooooooooooooooooooooooooooosslide17.ppt
PPT
ossssssssssssssssssssssssssssssslide17.ppt
PPT
ch17.pptgnnv hjg search for my project work on the same line
PDF
ch16-090420015848-phpapp01.pdf
PPT
PPT
Ch15 OS
 
PPT
Chapter 16 - Distributed System Structures
PDF
Distributed Systems in Advanced operating system
PPT
운영체제론 Ch14
PPT
Osimodelwithneworkingoverview 150618094119-lva1-app6892
PPT
Osi model with neworking overview
PPT
Osimodelwithneworkingoverview 150618094119-lva1-app6892
PPTX
Network and Distributed Systems nds.pptx
PPTX
Networking.pptx
PPTX
Networking.pptx
PDF
Google Cloud Platform - Networking 101 overview
PPT
CCNA 1
PPT
Ccna report
16.Distributed System Structure
oooooooooooooooooooooooooooosslide17.ppt
ossssssssssssssssssssssssssssssslide17.ppt
ch17.pptgnnv hjg search for my project work on the same line
ch16-090420015848-phpapp01.pdf
Ch15 OS
 
Chapter 16 - Distributed System Structures
Distributed Systems in Advanced operating system
운영체제론 Ch14
Osimodelwithneworkingoverview 150618094119-lva1-app6892
Osi model with neworking overview
Osimodelwithneworkingoverview 150618094119-lva1-app6892
Network and Distributed Systems nds.pptx
Networking.pptx
Networking.pptx
Google Cloud Platform - Networking 101 overview
CCNA 1
Ccna report

Recently uploaded (20)

PPT
unit 1 ppt.ppthhhhhhhhhhhhhhhhhhhhhhhhhh
PPTX
AC-Unit1.pptx CRYPTOGRAPHIC NNNNFOR ALL
PPT
EGWHermeneuticsffgggggggggggggggggggggggggggggggg.ppt
PDF
Trusted Executive Protection Services in Ontario — Discreet & Professional.pdf
PDF
GREEN BUILDING MATERIALS FOR SUISTAINABLE ARCHITECTURE AND BUILDING STUDY
PPTX
Implications Existing phase plan and its feasibility.pptx
PDF
SEVA- Fashion designing-Presentation.pdf
PPT
Machine printing techniques and plangi dyeing
PPTX
Causes of Flooding by Slidesgo sdnl;asnjdl;asj.pptx
PDF
The Advantages of Working With a Design-Build Studio
PPT
UNIT I- Yarn, types, explanation, process
PDF
Integrated-2D-and-3D-Animation-Bridging-Dimensions-for-Impactful-Storytelling...
PPT
Package Design Design Kit 20100009 PWM IC by Bee Technologies
PPTX
An introduction to AI in research and reference management
PPTX
Fundamental Principles of Visual Graphic Design.pptx
PPTX
ANATOMY OF ANTERIOR CHAMBER ANGLE AND GONIOSCOPY.pptx
PDF
Africa 2025 - Prospects and Challenges first edition.pdf
PDF
Facade & Landscape Lighting Techniques and Trends.pptx.pdf
PPTX
12. Community Pharmacy and How to organize it
PPTX
BSCS lesson 3.pptxnbbjbb mnbkjbkbbkbbkjb
unit 1 ppt.ppthhhhhhhhhhhhhhhhhhhhhhhhhh
AC-Unit1.pptx CRYPTOGRAPHIC NNNNFOR ALL
EGWHermeneuticsffgggggggggggggggggggggggggggggggg.ppt
Trusted Executive Protection Services in Ontario — Discreet & Professional.pdf
GREEN BUILDING MATERIALS FOR SUISTAINABLE ARCHITECTURE AND BUILDING STUDY
Implications Existing phase plan and its feasibility.pptx
SEVA- Fashion designing-Presentation.pdf
Machine printing techniques and plangi dyeing
Causes of Flooding by Slidesgo sdnl;asnjdl;asj.pptx
The Advantages of Working With a Design-Build Studio
UNIT I- Yarn, types, explanation, process
Integrated-2D-and-3D-Animation-Bridging-Dimensions-for-Impactful-Storytelling...
Package Design Design Kit 20100009 PWM IC by Bee Technologies
An introduction to AI in research and reference management
Fundamental Principles of Visual Graphic Design.pptx
ANATOMY OF ANTERIOR CHAMBER ANGLE AND GONIOSCOPY.pptx
Africa 2025 - Prospects and Challenges first edition.pdf
Facade & Landscape Lighting Techniques and Trends.pptx.pdf
12. Community Pharmacy and How to organize it
BSCS lesson 3.pptxnbbjbb mnbkjbkbbkbbkjb

Design issues of dos

  • 1. Chapter 14:Chapter 14: Distributed Operating SystemsDistributed Operating Systems
  • 2. 16.2 Silberschatz, Galvin and Gagne ©2005Operating System Principles Chapter 14: Distributed Operating SystemsChapter 14: Distributed Operating Systems  Motivation  Types of Distributed Operating Systems  Network Structure  Network Topology  Communication Structure  Communication Protocols  Robustness  Design Issues  An Example: Networking
  • 3. 16.3 Silberschatz, Galvin and Gagne ©2005Operating System Principles Chapter ObjectivesChapter Objectives  To provide a high-level overview of distributed systems and the networks that interconnect them  To discuss the general structure of distributed operating systems
  • 4. 16.4 Silberschatz, Galvin and Gagne ©2005Operating System Principles MotivationMotivation  Distributed system is collection of loosely coupled processors interconnected by a communications network  Processors variously called nodes, computers, machines, hosts  Site is location of the processor  Reasons for distributed systems  Resource sharing  sharing and printing files at remote sites  processing information in a distributed database  using remote specialized hardware devices  Computation speedup – load sharing  Reliability – detect and recover from site failure, function transfer, reintegrate failed site  Communication – message passing
  • 5. 16.5 Silberschatz, Galvin and Gagne ©2005Operating System Principles A Distributed SystemA Distributed System
  • 6. 16.6 Silberschatz, Galvin and Gagne ©2005Operating System Principles Types of Distributed Operating SystemsTypes of Distributed Operating Systems  Network Operating Systems  Distributed Operating Systems
  • 7. 16.7 Silberschatz, Galvin and Gagne ©2005Operating System Principles Network-Operating SystemsNetwork-Operating Systems  Users are aware of multiplicity of machines. Access to resources of various machines is done explicitly by:  Remote logging into the appropriate remote machine (telnet, ssh)  Remote Desktop (Microsoft Windows)  Transferring data from remote machines to local machines, via the File Transfer Protocol (FTP) mechanism
  • 8. 16.8 Silberschatz, Galvin and Gagne ©2005Operating System Principles Distributed-Operating SystemsDistributed-Operating Systems  Users not aware of multiplicity of machines  Access to remote resources similar to access to local resources  Data Migration – transfer data by transferring entire file, or transferring only those portions of the file necessary for the immediate task  Computation Migration – transfer the computation, rather than the data, across the system
  • 9. 16.9 Silberschatz, Galvin and Gagne ©2005Operating System Principles Distributed-Operating Systems (Cont.)Distributed-Operating Systems (Cont.)  Process Migration – execute an entire process, or parts of it, at different sites  Load balancing – distribute processes across network to even the workload  Computation speedup – subprocesses can run concurrently on different sites  Hardware preference – process execution may require specialized processor  Software preference – required software may be available at only a particular site  Data access – run process remotely, rather than transfer all data locally
  • 10. 16.10 Silberschatz, Galvin and Gagne ©2005Operating System Principles Network StructureNetwork Structure  Local-Area Network (LAN) – designed to cover small geographical area.  Multiaccess bus, ring, or star network  Speed ≈ 10 – 100 megabits/second  Broadcast is fast and cheap  Nodes:  usually workstations and/or personal computers  a few (usually one or two) mainframes
  • 11. 16.11 Silberschatz, Galvin and Gagne ©2005Operating System Principles Depiction of typical LANDepiction of typical LAN
  • 12. 16.12 Silberschatz, Galvin and Gagne ©2005Operating System Principles Network Types (Cont.)Network Types (Cont.)  Wide-Area Network (WAN) – links geographically separated sites  Point-to-point connections over long-haul lines (often leased from a phone company)  Speed ≈ 1.544 – 45 megbits/second  Broadcast usually requires multiple messages  Nodes:  usually a high percentage of mainframes
  • 13. 16.13 Silberschatz, Galvin and Gagne ©2005Operating System Principles Communication Processors in a Wide-Area NetworkCommunication Processors in a Wide-Area Network
  • 14. 16.14 Silberschatz, Galvin and Gagne ©2005Operating System Principles Network TopologyNetwork Topology  Sites in the system can be physically connected in a variety of ways; they are compared with respect to the following criteria:  Basic cost - How expensive is it to link the various sites in the system?  Communication cost - How long does it take to send a message from site A to site B?  Reliability - If a link or a site in the system fails, can the remaining sites still communicate with each other?  The various topologies are depicted as graphs whose nodes correspond to sites  An edge from node A to node B corresponds to a direct connection between the two sites  The following six items depict various network topologies
  • 15. 16.15 Silberschatz, Galvin and Gagne ©2005Operating System Principles Network TopologyNetwork Topology
  • 16. 16.16 Silberschatz, Galvin and Gagne ©2005Operating System Principles Communication StructureCommunication Structure  Naming and name resolution - How do two processes locate each other to communicate?  Routing strategies - How are messages sent through the network?  Connection strategies - How do two processes send a sequence of messages?  Contention - The network is a shared resource, so how do we resolve conflicting demands for its use? The design of a communication network must address four basic issues:
  • 17. 16.17 Silberschatz, Galvin and Gagne ©2005Operating System Principles Naming and Name ResolutionNaming and Name Resolution  Name systems in the network  Address messages with the process-id  Identify processes on remote systems by <host-name, identifier> pair  Domain name service (DNS) – specifies the naming structure of the hosts, as well as name to address resolution (Internet)
  • 18. 16.18 Silberschatz, Galvin and Gagne ©2005Operating System Principles Routing StrategiesRouting Strategies  Fixed routing - A path from A to B is specified in advance; path changes only if a hardware failure disables it  Since the shortest path is usually chosen, communication costs are minimized  Fixed routing cannot adapt to load changes  Ensures that messages will be delivered in the order in which they were sent  Virtual circuit - A path from A to B is fixed for the duration of one session. Different sessions involving messages from A to B may have different paths  Partial remedy to adapting to load changes  Ensures that messages will be delivered in the order in which they were sent
  • 19. 16.19 Silberschatz, Galvin and Gagne ©2005Operating System Principles Routing Strategies (Cont.)Routing Strategies (Cont.)  Dynamic routing - The path used to send a message form site A to site B is chosen only when a message is sent  Usually a site sends a message to another site on the link least used at that particular time  Adapts to load changes by avoiding routing messages on heavily used path  Messages may arrive out of order  This problem can be remedied by appending a sequence number to each message
  • 20. 16.20 Silberschatz, Galvin and Gagne ©2005Operating System Principles Connection StrategiesConnection Strategies  Circuit switching - A permanent physical link is established for the duration of the communication (i.e., telephone system)  Message switching - A temporary link is established for the duration of one message transfer (i.e., post-office mailing system)  Packet switching - Messages of variable length are divided into fixed-length packets which are sent to the destination  Each packet may take a different path through the network  The packets must be reassembled into messages as they arrive  Circuit switching requires setup time, but incurs less overhead for shipping each message, and may waste network bandwidth  Message and packet switching require less setup time, but incur more overhead per message
  • 21. 16.21 Silberschatz, Galvin and Gagne ©2005Operating System Principles ContentionContention  CSMA/CD - Carrier sense with multiple access (CSMA); collision detection (CD)  A site determines whether another message is currently being transmitted over that link. If two or more sites begin transmitting at exactly the same time, then they will register a CD and will stop transmitting  When the system is very busy, many collisions may occur, and thus performance may be degraded  CSMA/CD is used successfully in the Ethernet system, the most common network system Several sites may want to transmit information over a link simultaneously. Techniques to avoid repeated collisions include:
  • 22. 16.22 Silberschatz, Galvin and Gagne ©2005Operating System Principles Contention (Cont.)Contention (Cont.)  Token passing - A unique message type, known as a token, continuously circulates in the system (usually a ring structure)  A site that wants to transmit information must wait until the token arrives  When the site completes its round of message passing, it retransmits the token  A token-passing scheme is used by some IBM and HP/Apollo systems  Message slots - A number of fixed-length message slots continuously circulate in the system (usually a ring structure)  Since a slot can contain only fixed-sized messages, a single logical message may have to be broken down into a number of smaller packets, each of which is sent in a separate slot  This scheme has been adopted in the experimental Cambridge Digital Communication Ring
  • 23. 16.23 Silberschatz, Galvin and Gagne ©2005Operating System Principles Communication ProtocolCommunication Protocol  Physical layer – handles the mechanical and electrical details of the physical transmission of a bit stream  Data-link layer – handles the frames, or fixed-length parts of packets, including any error detection and recovery that occurred in the physical layer  Network layer – provides connections and routes packets in the communication network, including handling the address of outgoing packets, decoding the address of incoming packets, and maintaining routing information for proper response to changing load levels The communication network is partitioned into the following multiple layers:
  • 24. 16.24 Silberschatz, Galvin and Gagne ©2005Operating System Principles Communication Protocol (Cont.)Communication Protocol (Cont.)  Transport layer – responsible for low-level network access and for message transfer between clients, including partitioning messages into packets, maintaining packet order, controlling flow, and generating physical addresses  Session layer – implements sessions, or process-to-process communications protocols  Presentation layer – resolves the differences in formats among the various sites in the network, including character conversions, and half duplex/full duplex (echoing)  Application layer – interacts directly with the users’ deals with file transfer, remote-login protocols and electronic mail, as well as schemas for distributed databases
  • 25. 16.25 Silberschatz, Galvin and Gagne ©2005Operating System Principles Communication Via ISO NetworkCommunication Via ISO Network ModelModel
  • 26. 16.26 Silberschatz, Galvin and Gagne ©2005Operating System Principles The ISO Protocol LayerThe ISO Protocol Layer
  • 27. 16.27 Silberschatz, Galvin and Gagne ©2005Operating System Principles The ISO Network MessageThe ISO Network Message
  • 28. 16.28 Silberschatz, Galvin and Gagne ©2005Operating System Principles The TCP/IP Protocol LayersThe TCP/IP Protocol Layers
  • 29. 16.29 Silberschatz, Galvin and Gagne ©2005Operating System Principles RobustnessRobustness  Failure detection  Reconfiguration
  • 30. 16.30 Silberschatz, Galvin and Gagne ©2005Operating System Principles Failure DetectionFailure Detection  Detecting hardware failure is difficult  To detect a link failure, a handshaking protocol can be used  Assume Site A and Site B have established a link  At fixed intervals, each site will exchange an I-am-up message indicating that they are up and running  If Site A does not receive a message within the fixed interval, it assumes either (a) the other site is not up or (b) the message was lost  Site A can now send an Are-you-up? message to Site B  If Site A does not receive a reply, it can repeat the message or try an alternate route to Site B
  • 31. 16.31 Silberschatz, Galvin and Gagne ©2005Operating System Principles Failure Detection (cont)Failure Detection (cont)  If Site A does not ultimately receive a reply from Site B, it concludes some type of failure has occurred  Types of failures: - Site B is down - The direct link between A and B is down - The alternate link from A to B is down - The message has been lost  However, Site A cannot determine exactly why the failure has occurred
  • 32. 16.32 Silberschatz, Galvin and Gagne ©2005Operating System Principles ReconfigurationReconfiguration  When Site A determines a failure has occurred, it must reconfigure the system: 1. If the link from A to B has failed, this must be broadcast to every site in the system 2. If a site has failed, every other site must also be notified indicating that the services offered by the failed site are no longer available  When the link or the site becomes available again, this information must again be broadcast to all other sites
  • 33. 16.33 Silberschatz, Galvin and Gagne ©2005Operating System Principles Design IssuesDesign Issues  Transparency – the distributed system should appear as a conventional, centralized system to the user  Fault tolerance – the distributed system should continue to function in the face of failure  Scalability – as demands increase, the system should easily accept the addition of new resources to accommodate the increased demand  Clusters – a collection of semi-autonomous machines that acts as a single system
  • 34. 16.34 Silberschatz, Galvin and Gagne ©2005Operating System Principles Example: NetworkingExample: Networking  The transmission of a network packet between hosts on an Ethernet network  Every host has a unique IP address and a corresponding Ethernet (MAC) address  Communication requires both addresses  Domain Name Service (DNS) can be used to acquire IP addresses  Address Resolution Protocol (ARP) is used to map MAC addresses to IP addresses  If the hosts are on the same network, ARP can be used  If the hosts are on different networks, the sending host will send the packet to a router which routes the packet to the destination network
  • 35. 16.35 Silberschatz, Galvin and Gagne ©2005Operating System Principles An Ethernet PacketAn Ethernet Packet
  • 36. End of Chapter 16End of Chapter 16