Distributed System lecture1

What is Distributed System?

It is a collection of autonomous computing elements(hardware devices eg.computers, or software processes) that appears to its users as a single coherent system.

The definition also is :
A distributed system is a network that consists of autonomous computers which are connected using a distribution middleware. They help in sharing different resources and capabilities to provide users with a single and integrated coherent network.

Some challenges in Distributed Systems.

1.Distributed reads and writes.

Write: Broadcast values after a write.
Read: Wait until all server apply the write operation.

clipboard.png

2.How to build distributed systems --- Middleware

Middleware is software, in the context of distributed system, that provides services to enable various components of a distributed system to communicate and manage data.(wiki))

Middleware layer is the software layer that lies between operating system and the applicants on each side of a distributed computer network.(Quora)

It can be considered as the OS of Distributed Systems.

clipboard.png

3.Two Generals Problem.

Two Roman Generals want to co-ordinate an attack on the enemy. Both must attack simultaneously. Otherwise, both will lose. Only way to communicate is via a messenger. But messengers can get captured/lost.

Is it possible to design a protocol that ensures the two generals always attack simultaneously?

The answer is NO.

clipboard.png

Solving the Two Generals Problem requires common knowledge.

Common knowledge is a special kind of knowledge for a group of agents. There is common knowledge of p in a group of agents G when all the agents in G know p, they all know that they know p, they all know that they all know that they know p, and so on ad infinitum.

However, common knowledge cannot be achieved with unreliable communication channels.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章