Overview of distributed systems in computer Science
Various characteristics of distributed systems in computer Science
- Network is
- Latency is 0
- Bandwidth – bandwidth is infinite
- Network is secure
- Topology does not change
- There is one administrator
- Transport cost is 0
- The network is homogeneous
Why should we migrate?
Justify why each of the above fallacies are a fallacy
Why build distributed systems in computer Science ?
- Price performance ratio
- Increased reliability – aspect of fault tolerance
- Incremental growth –aspect of scalability and accessibility
- Remote services – doesn’t matter the location where you are. Services should be available
- Mobility – should not matter where you are geographically
Service models distributed systems in computer Science
- Distributed system service models based on the centralized models
- Client server models
- Peer to peer models
- Implementation of client server models that informs thin and thick clients.
- Multi-tier client server architectures
Concept of middleware
Structural design of distributed systems
Why in the architectural concerns of distributed systems there is middleware level and its role
What is it? Why is it? How does it offer services in the distributed systems environment?
Principles of the operating system environment i.e. issues of processes, threads, etc.
Aspect of communication in distributed systems in computer Science
Components of a distributed system have to communicate in order to interact. Having powerful and flexible facilities for communication between processes is essential for any distributed system.
Traditional network communication
Communication is based on low level message passing primitives offered by the transport layer. An important issue in middleware systems is to offer a higher level of abstraction that will make it easier to express communication between processes than the support offered by the interface to the transport layer.
Under communication, the following are key:
- Layered protocols
- RPC / RMI
- Message oriented communication
- Stream oriented communication
- Multicast communication
Protocols in distributed systems in computer Science
What is a protocol?
What is the purpose of layering so that there is an implementation of layered protocols?
Layers are for encapsulation e.g. mailing a letter via post office.
To make it easier to deal with numerous levels and issues involved in communication, the international organization for standardization ISO developed a referenced model that clearly identifies the various levels involved, give them standard names and point out which level should do which job. This model is called the Open System Interconnection Model ISO-OSI reference model.
Look at theses 7 layers
ISO -OSI reference model.
What are the challenges of using this model?
Middleware layer – in distributed systems environment
Middleware is implemented to provide common services and protocols that can be used by different applications. This layer provides a rich set of communication protocols. It facilitates marshaling and un-marshaling of data basically for integrating systems. Further, it provides naming protocols to allow easy sharing of resources.
It also provides security protocols for secure applications.
It provides scaling mechanisms such as for replication and caching.
Provide a diagrammatic representation of the distributed systems models adapted from the reference model for network communication that is the OSI reference model.
Types of communication that are effected based on the distributed systems models
We can view the middleware as an additional service in client server computing. A good example is the email system. Bring out how the system works, bring out a distinction between:
- Transient vs persistent communication
- Asynchronous vs synchronous communication
Study the client server model
Client server computing is basically based on transient synchronous communication. Both client and server have to be active at the time of communication. The client issues a request and blocks until it receives a reply. On the other hand, the server essentially waits only for incoming requests and subsequently processes them.
Issues of designing a distributed system based on this model. What are the new approaches to deal with these issues?
- Computer Science versus Computer engineering.Computer Science versus Computer engineering. There are many different types of engineers, but computer science and computerengineering are two of the most popular. They both involve working withcomputers, but they have different…
- How to make money on YouTubeWhat is YouTube? YouTube is a video-sharing website where users can upload, share, and view videos. YouTube was founded in February 2005 and has since become the most popular video-sharing website in…
- How to Create a Basic HTML PageHTML is the foundation of the World Wide Web. It is the markup language used to structure the content of a web page. HTML is divided into two main parts: the document…
- COMPUTER SCIENCE / IT Project Documentation Example.COMPUTER SCIENCE / IT Project Documentation Example free download. A common question asked of project management leaders is, “What is the value of project documentation, and how can I be sure I’m…
- How to Make Money as a Web DeveloperHow to Make Money as a Web Developer There are many ways to make money as a web developer. Here are some of the most common: 1. Freelance work This is probably…