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?
- Freelancing tips for beginnersHow to start freelancing with no experience is a very challenging experience. Online Freelancing is a new way to make money from home and on your own terms. Everyone working online must know these 7 tips aimed at beginners.
- Software Test Metrics and MeasurementsSoftware Test Metrics and Measurements In software projects, it is most important to measure the quality, cost and effectiveness of the project and the processes. Without measuring these, project can’t be completed successfully. This uses Software Test Metrics and Measurements to measure.
- Distributed system Communication techniquesCommunication techniques in Communication techniques distributed system
- Distributed systems in computer ScienceOverview of distributed systems in computer Science Basic Algorithms Various characteristics of distributed systems in computer Science Design issues of distributed systems in computer Science
- Computer MisuseThe Computer Misuse Act is designed to protect computer users against willful attacks and theft of information. Offences under the act include hacking, unauthorized access to computer systems and purposefully spreading malicious and damaging software (malware), such as viruses. The act makes it an offence to access or even attempt to access a computer system without the appropriate authorization. Therefore, even if a hacker tries to get into a system but is unsuccessful they can be prosecuted using this law. The act also outlaws “hacking” software, such as packet sniffers, that can be used to break into or discover ways to get into systems.