0
1.3kviews
What are the design issues in designing a distributed systems
1 Answer
2
8views

Design Issues or Challenges

  • Heterogeneity
  • Openness
  • Security
  • Scalability
  • Failure handling
  • Concurrency
  • Transparency

Heterogeneity

  • Different networks, hardware, operating systems, programming languages, developers.
  • We set heterogeneities.
  • Middleware: a software layer that provides a programming abstraction as well as masking the heterogeneity.
  • Mobile code: code that can be sent from one computer to another and run at the destination. up protocols to solve these

Openness

  • DS is determined primarily by the openness degree to which new resource-sharing services can be added and be made available for use by a variety of client programs.
  • Open systems are characterized by the fact that their key interfaces are published.
  • Open DS are based on the provision of a uniform published interfaces for access to shared communication mechanism and resources.
  • Open DS can be constrcted from heterogeneous hardware and software.

Security

  • Security for information resources has three components:
    • Confidentiality: protection against disclosure to unauthorized individuals.
    • Integrity: protection against alteration or corruption.
    • Availability: protection against interference with the means to access the resources.
  • Two new security challenges:
    • Denial of service attacks (DoS).
    • Security of mobile code.

Scalability

  • A system is described as scalable if it remains effective when there is a significant increase in the number of resources and the number of users.
  • Challenges:
    • Controlling the cost of resources or money.
    • Controlling the performance loss.
    • Preventing software resources from running out
    • Avoiding preformance bottlenecks.

Failure handling

  • When faults occur in hardware or software, programs may produce incorrect results or they may stop before they have completed the intended computation. -Techniques for dealing with failures:
    • Detecting failures
    • Masking failures
    • Tolerating failures
    • Recovering form failures
    • Redundancy

Concurrency

  • There is a possibility that several clients will attempt to access a shared resource at the same time.
  • ANY object that represents a shared resource in a distributed system must be responsible for ensuring that operates correctly in a concurrent environment.

Transparency

  • Transparency is defined as the concealment from the user and the application programmer of the separation of components in a distributed system, so that the system is perceived as a whole rather than as a collection of independent components.
  • Eight forms of transparency:
    • Access transparency
    • Location transparency
    • Concurrency transparency
    • Replication transparency
    • Failure transparency
    • Mobility transparency
    • Performance transparency
    • Scaling transparency
Please log in to add an answer.