Jumat, 08 Januari 2016

Assigment of Distributed System (Question & Answer)

Question 2.6
 
The host computers used in peer-to-peer systems are often simply desktop computers in users’ offices or homes. What are the implications of this for the availability and security of any shared data objects that they hold and to what extent can any weaknesses be overcome through the use of replication?
 
Answer
 
Problems:
  • people often turn their desktop computers off when not using them. Even if on most of the time, they will be off when user is away for an extended time or the computer is being moved.
  • the owners of participating computers are unlikely to be known to other participants, so their trustworthiness is unknown. With current hardware and operating systems the owner of a computer has total control over the data on it and may change it or delete it at will.
  • network connections to the peer computers are exposed to attack (including denial of service).
The importance of these problems depends on the application. For the music downloading that was the original driving force for peer-to-peer it isn’t very important. Users can wait until the relevant host is running to access a particular piece of music. There is little motivation for users to tamper with the music. But for more conventional applications such as file storage availability and integrity are all-important.
 
Solutions:
 Replication:
  • if data replicas are sufficiently widespread and numerous, the probability that all are unavailable simultaneously can be reduced the a negligible level.
  • one method for ensuring the integrity of data objects stored at multiple hosts (against tampering or accidental error) is to perform an algorithm to establish a consensus about the value of the data (e.g. by exchanging hashes of the object’s value and comparing them). This is discussed in Chapter 15. But there is a simpler solution for objects whose value doesn’t change (e.g. media files such as music, photographs, radio broadcasts or films).
Secure hash identifiers:
  • The object’s identifier is derived from its hash code. The identifier is used to address the object. When the object is received by a client, the hash code can be checked for correspondence with the identifier. The hash algorithms used must obey the properties required of a secure hash algorithm as described in Chapter 7.