129 QUESTIONS AND ANSWERS
Benefits of distributed systems - ANSWER - resource sharing (one
server many clients)
- economical
- reliability
- availability
- scalability
Consequences of distributed systems - ANSWER - concurrency
-> (distributed computers perform their tasks autonomously, system
accessed by multiple users simultaneously)
- no global clock
-> (clocks on individual computers operate independently
-> communicate via message passing, but this limits accuracy)
- independent failures
-> some components of system may fail while others still run
-> failures of come computers may not be known to others immediately
Computer networks - ANSWER - The internet
- Intranets
- Wireless networks
Intranets - ANSWER - portion of the Internet that is separately
administered by organisations
- features include:
-> a boundary that can be configured to enforce local security policies
-> several local area connections (LAN's) linked by backbone
connections
-> A connection to the Internet via a route allowing users within the
intranet to access services on the Internet
,-> firewalls to protect an intranet by preventing unauthorised messages
leaving or entering by filtering incoming/outgoing messages
Distributed System definition - ANSWER A system in which hardware
or software components located at networked computers communicate
and coordinate their actions only by passing messages
Difference between computer networks and distributed systems -
ANSWER - a computer network is a collection of spatially separated ,
interconnected computers that exchange messages based on specific
protocols
- a distributed system is multiple computers on the network working
together as a system
Wireless networking - ANSWER - allows the integration of small
portable computing devices
Two popular mediums:
- mobile computing (nomadic computing)
- ubiquitous computing
WWW 3 components - ANSWER - HyperText Markup Language
(HTML) - specifies content and layout
- Uniform Resource Locators (URLs) - identify resources stored on the
web
- HyperText Transfer Protocol (HTTP) - used for transferring resources
between web servers and clients (browsers)
Dynamic Pages - ANSWER - allow users to interact with resources by
taking user input, executing programs and returning results
- Programs executed can take different forms:
-> Common Gateway Program (CGI)
-> Servlet
-> Downloaded code - Javascript
Distributed System Challenges - ANSWER - Heterogeneity
- Openness
- Security
,- Scalability
- Failure Handling
- Concurrency
- Transparency
Heterogeneity - ANSWER - DS use hardware and software resources
of varying characteristics
-> networks
-> computer hardware
-> operating systems
-> programming languages
-> implementation by different developers
Approaches to solve:
- using standard protocols
- using agreed message formats and data types
- adhering to an agreed upon application program interface (APIs)
- using middleware
- portable code (can use VM's to run on any OS)
Middleware - ANSWER = a software layer between the distributed
application and the operating systems that provides a programming
abstraction and masks the heterogeneity of the underlying networks,
hardware, OS and programming languages
Services:
- Communication service: provide access transparent
- Naming service: allows remote resources to be looked up by name
similar to directories
- Facilities for storage: Facilities for data persistence
- Distributed Transactions: If an operation fails all referenced data
remains unchanged
- Security: Protection against various kinds of security threats
Openness - ANSWER - refers to the ability to extend the system in
difference ways by adding hardware or software resources
Approaches:
, - publishing key interfaces
- allowing a uniform communication mechanism to communicate over
published interfaces
- ensuring all implementations adhere to the published standardds
Security - ANSWER - 3 Aspects:
-> Confidentiality (protection against disclosure to unauthorised
individuals)
-> Integrity (protection against alteration and corruption)
-> Availability (protection against interference with means of access)
Security Mechanisms
- Encryption
- Authentication
- Authorisation
Security challenges:
- Denial of service attacks
- Security against mobile code
Scalability - ANSWER Challenges:
- cost of physical resources, dobuling resources should double capability
- controlling the performance loss, complexity of algorithms should be
scalable
- Resources should not run out (ie. IP addresses)
- Avoiding performance bottlenecks - decentralised algorithms should be
used to avoid performance bottlenecks
Failure Handling - ANSWER Approaches:
- detecting
- masking
- tolerating
- recovery
- redundancy
Concurrency - ANSWER - multiple clients can access same resources
at same time
Benefits of distributed systems - ANSWER - resource sharing (one
server many clients)
- economical
- reliability
- availability
- scalability
Consequences of distributed systems - ANSWER - concurrency
-> (distributed computers perform their tasks autonomously, system
accessed by multiple users simultaneously)
- no global clock
-> (clocks on individual computers operate independently
-> communicate via message passing, but this limits accuracy)
- independent failures
-> some components of system may fail while others still run
-> failures of come computers may not be known to others immediately
Computer networks - ANSWER - The internet
- Intranets
- Wireless networks
Intranets - ANSWER - portion of the Internet that is separately
administered by organisations
- features include:
-> a boundary that can be configured to enforce local security policies
-> several local area connections (LAN's) linked by backbone
connections
-> A connection to the Internet via a route allowing users within the
intranet to access services on the Internet
,-> firewalls to protect an intranet by preventing unauthorised messages
leaving or entering by filtering incoming/outgoing messages
Distributed System definition - ANSWER A system in which hardware
or software components located at networked computers communicate
and coordinate their actions only by passing messages
Difference between computer networks and distributed systems -
ANSWER - a computer network is a collection of spatially separated ,
interconnected computers that exchange messages based on specific
protocols
- a distributed system is multiple computers on the network working
together as a system
Wireless networking - ANSWER - allows the integration of small
portable computing devices
Two popular mediums:
- mobile computing (nomadic computing)
- ubiquitous computing
WWW 3 components - ANSWER - HyperText Markup Language
(HTML) - specifies content and layout
- Uniform Resource Locators (URLs) - identify resources stored on the
web
- HyperText Transfer Protocol (HTTP) - used for transferring resources
between web servers and clients (browsers)
Dynamic Pages - ANSWER - allow users to interact with resources by
taking user input, executing programs and returning results
- Programs executed can take different forms:
-> Common Gateway Program (CGI)
-> Servlet
-> Downloaded code - Javascript
Distributed System Challenges - ANSWER - Heterogeneity
- Openness
- Security
,- Scalability
- Failure Handling
- Concurrency
- Transparency
Heterogeneity - ANSWER - DS use hardware and software resources
of varying characteristics
-> networks
-> computer hardware
-> operating systems
-> programming languages
-> implementation by different developers
Approaches to solve:
- using standard protocols
- using agreed message formats and data types
- adhering to an agreed upon application program interface (APIs)
- using middleware
- portable code (can use VM's to run on any OS)
Middleware - ANSWER = a software layer between the distributed
application and the operating systems that provides a programming
abstraction and masks the heterogeneity of the underlying networks,
hardware, OS and programming languages
Services:
- Communication service: provide access transparent
- Naming service: allows remote resources to be looked up by name
similar to directories
- Facilities for storage: Facilities for data persistence
- Distributed Transactions: If an operation fails all referenced data
remains unchanged
- Security: Protection against various kinds of security threats
Openness - ANSWER - refers to the ability to extend the system in
difference ways by adding hardware or software resources
Approaches:
, - publishing key interfaces
- allowing a uniform communication mechanism to communicate over
published interfaces
- ensuring all implementations adhere to the published standardds
Security - ANSWER - 3 Aspects:
-> Confidentiality (protection against disclosure to unauthorised
individuals)
-> Integrity (protection against alteration and corruption)
-> Availability (protection against interference with means of access)
Security Mechanisms
- Encryption
- Authentication
- Authorisation
Security challenges:
- Denial of service attacks
- Security against mobile code
Scalability - ANSWER Challenges:
- cost of physical resources, dobuling resources should double capability
- controlling the performance loss, complexity of algorithms should be
scalable
- Resources should not run out (ie. IP addresses)
- Avoiding performance bottlenecks - decentralised algorithms should be
used to avoid performance bottlenecks
Failure Handling - ANSWER Approaches:
- detecting
- masking
- tolerating
- recovery
- redundancy
Concurrency - ANSWER - multiple clients can access same resources
at same time