Прозрачность сети в самом общем смысле относится к способности протокола передавать данные по сети способом, который прозрачен (невидим) для тех, кто использует приложения, использующие протокол. Таким образом, пользователи конкретного приложения могут получить доступ к удаленным ресурсам таким же образом, как и к своим собственным локальным ресурсам. Примером этого является облачное хранилище, где удаленные файлы представлены как локально доступные, и облачные вычисления, где обрабатывается соответствующий ресурс.
Термин часто частично правильно применяется в контекст X Window System, который может передавать графические данные по сети и легко интегрировать их с приложениями, работающими и отображаемыми локально; однако некоторые расширения системы X Window не могут работать по сети.
В централизованной системе баз данных единственный доступный ресурс, который должен быть защищенными от пользователя - это данные (то есть система хранения ). В распределенной СУБД необходимо управлять вторым ресурсом примерно таким же образом: сетью. Предпочтительно, чтобы пользователь был защищен от подробностей работы сети. Тогда не будет разницы между приложениями баз данных, которые будут работать в централизованной базе данных, и теми, которые будут работать в распределенной базе данных. Этот вид прозрачности называется прозрачностью сети или прозрачностью распределения . С точки зрения системы управления базами данных (СУБД) прозрачность распределения требует, чтобы пользователи не указывали, где находятся данные.
Некоторые разделили прозрачность распределения на прозрачность местоположения и прозрачность наименования.
Прозрачность расположения в командах, используемых для выполнения задачи, не зависит как от расположения данных, так и от системы, в которой выполняется операция.
Прозрачность именования означает, что каждому объекту в базе данных предоставляется уникальное имя.
Прозрачность в технологии межсетевых экранов может быть определена в сети (IP или уровень Интернета ) или на прикладном уровне.
Прозрачность на IP Layer означает, что клиент нацелен на реальный IP-адрес сервера. Если соединение непрозрачно, то клиент нацелен на промежуточный хост (адрес), который может быть прокси или кэширующим сервером. Прозрачность IP-уровня также может быть определена с точки зрения сервера. Если соединение прозрачное, сервер видит реальный IP клиента. Если он непрозрачен, сервер видит IP-адрес промежуточного хоста.
Прозрачность на уровне приложения означает, что клиентское приложение использует протокол по-другому. Пример прозрачного HTTP-запроса для сервера:
GET / HTTP / 1.1 Host: example.org Connection: Keep-Alive
Пример непрозрачного HTTP-запроса для прокси (кеш):
GET http://foo.bar/ HTTP / 1.1 Прокси-соединение: Keep-Alive
Прозрачность прикладного уровня симметрична, когда с обеих сторон используется один и тот же рабочий режим. Прозрачность асимметрична, когда брандмауэр (обычно прокси) преобразует запросы типа сервера в тип прокси или наоборот.
Прозрачность на уровне IP не означает автоматически прозрачность уровня приложения.