In distributed systems theory, I have found the definition that a distributed system requires, among others, location and access transparency.

I was wondering if location transparency does not already include access transparency.

Wikipedia defines the two as follows:

Access transparency – Regardless of how resource access and representation has to be performed on each individual computing entity, the users of a distributed system should always access resources in a single, uniform way.

Location transparency – Users of a distributed system should not have to be aware of where a resource is physically located.

If I am not to become aware of where a resource is physically located, doesn't that automatically imply that I have to be able to access all resources in a uniform way?

If yes, could you leave out access transparency from the definition without changing its meaning?


1 Answer 1


There is certainly a strong dependency between these two properties and many examples will point to this conclusion. Think about an API that needs to use the same operations to access both local and remote files. If you already have a list of files, you are unaware of their physical location (e.g., some URL) since you retrieved these files or how they were retrieved (e.g., ftp?). It should imply that you used the same means to retrieve that list of files. But this is not entirely true. Let's simplify Wikipedia's definition:

Access transparency - enables resources to be accessed using identical operations.

Location transparency - enables resources to be accessed without knowledge of their physical or network location.

This 2 forms of transparency are necessary since they refer to 2 different architectural layers. The access transparency refers to the application layer, whereas location transparency refers to the physical layer. Returning to the initial example, you access the list of files using the API, but you are not entirely sure how that list was retrieved or where those files were located before they were retrieved.

  • 1
    $\begingroup$ I believe this only shows that access transparency (a.t.) and location transparency (l.t.) are not equivalent. To justify that l.t does not imply a.t., we need an example where l.t. holds but a.t. does not. However, in your API example, a.t. holds. $\endgroup$
    – Vincent
    Jul 17, 2018 at 9:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.