Важной проблемой, которую нужно учитывать при объединение трех и более компьютеров является проблема их адресации. К адресу узла сети из его изучения можно предъявить следующие требования:
1) Адрес должен уникально индефецировать компьютер в сети любого масштаба
2) Схема назначения адресов, должна сводить к минимуму ручной труд администратора и вероятность дублирование адресов.
3) Адрес должен иметь иерархическую структуру, удобную для построения больших сетей. В больших сетях, состоящих из многих тысяч узлов отсутствие иерархии адреса может привести к больших издержкам т.к. конечным узлам и коммуникационному оборудованию придется оперировать с таблицами адресов, состоящими из тысяч записей.
4) Адрес должен быть удобен для пользователей сети, то есть иметь символьное представление.
5) Адрес должен иметь по возможности компактное представление, чтобы не перегружать память коммуникационной аппаратурой.
Так как все перечисленные требования трудно совместить в рамках, какой либо одной схемы адресации, то на практике обычно используется сразу несколько схем, так что компьютер имеет сразу несколько адресов – имен. Каждый адрес используется в той ситуации, когда соответствующий вид адресации наиболее удобен. Для не возникновения путаницы и чтобы компьютер всегда однозначно определялся своим адресом, используются специальные вспомогательные протоколы, которые по адресу одного типа могут определить, адреса других типов. Наибольшее распространение получили три схемы адресации узлов:
1) Аппаратные адреса – предназначены для сети небольшого или среднего размера и не имеют иерархической структуры. Типичным представителем адреса такого типа является адрес сетевого адаптера локальной сети. Такой адрес используется только аппаратурой, поэтому его пытаются сделать компактным и записывают в виде: 2-ого или 16-ого. При задании аппаратных адресов обычно не требуется выполнение ручной работы т.к. они, либо встраиваются в аппаратуру компании изготовителем, либо генерируются автоматически при каждом новом запуске оборудования. Причем уникальность адреса в пределах сети обеспечивает оборудование. Помимо отсутствия иерархии использование аппаратных адресов связано с еще одним недостатком: при замене аппаратуру изменяется адрес компьютера. Более того при установке нескольких сетевых адаптеров, у компьютера появляется несколько адресов, что не удобно для пользователей сети.
2) Символьные адреса или имена – эти адреса предназначены для запоминания людьми и поэтому обычно несут смысловую нагрузку. Символьные имена легко использовать в сетях любого размера.
3) Числовые составные адреса – передача символьных имен по сети не экономична, поэтому во многих случаях для работы в больших сетях в качестве адресов узлов используют числовые составные адреса фиксированного и компактного формата. Типичным представителем адресов такого типа являются IP адреса. В них поддерживается двухуровневая иерархия, и адрес делится на старшую часть (номер сети) и младшую часть (номер узла). Такое деление позволяет передавать сообщения между сетями только на основании номера сети, а номер узла используется только после доставки сообщения в нужную сеть.
В последнее время чтобы сделать маршрутизацию в крупных сетях более эффективной предлагаются более сложные варианты числовой адресации, в соответствии с которыми адрес имеет три и более составляющих. В современных сетях для адресации узлов, как правило, применяются все три приведенные выше схемы одновременно. Пользователи адресуют компьютеры символьными именами, которые автоматически заменяются в сообщениях, передаваемых по сети на числовые номера. С помощью этих числовых номеров сообщения передаются из одной сети в другую, а после доставки сообщения в сеть назначения вместо числового номера используется аппаратный адрес компьютера. Проблемы установления соответствия между адресами различных типов, который занимается служба разрешения имен (DNS) может решаться, как полностью централизованными, так и распределенными средствами. В случае централизованного подхода в сети выделяется один компьютер (сервер имен), в котором хранится таблица соответствия друг к другу имен различных типов (например, символьных имен и числовых номеров). Все остальные компьютеры обращаются к серверу имен, чтобы по символьному имени найти числовой номер компьютера, с которым необходимо обменяться данными.
При распределенном подходе каждый компьютер сам решает задачу установления соответствия между именами (например: если пользователь указал для узла назначения числовой номер, то перед началом передачи данных компьютер отправитель посылает всем компьютерам сети сообщение с просьбой опознать это числовое имя. Все компьютеры, получив это сообщение, сравнивают заданный номер со своим собственным, тот компьютер, у которого имя совпадает, посылает ответ, содержащий аппаратный адрес, после чего становиться возможным отправка сообщений по локальной сети. Преимущество распределенного подхода в том, что не требуется выделение специального компьютера и не требуется ручного задания таблицы соответствия имен. Недостаток – это необходимость широковещательных сообщений, которые перегружают сеть т.к. они требуют обязательной обработки всеми узлами, а не только узлом назначения). В настоящее время распределенный подход используется только в небольших локальных сетях.