Введение
В компьютерном хранилище логический номер устройства (LUN) — это число, используемое для идентификации логического устройства, которое адресуется протоколом SCSI или протоколами Storage Area Network, инкапсулирующими SCSI, такими как Fibre Channel или iSCSI. LUN может использоваться с любым устройством, поддерживающим операции чтения/записи, например, с ленточным накопителем, но чаще всего применяется для обозначения логического диска, созданного в SAN. Хотя это и не совсем корректно с технической точки зрения, термин "LUN" часто используется также для обозначения самого логического диска.
Примеры
Для примера, типичный многодисковый накопитель имеет несколько физических портов SCSI, каждому из которых присвоен один адрес SCSI-цели. Администратор может отформатировать дисковый массив в RAID, а затем разбить этот RAID на несколько отдельных томов хранения. Для представления каждого тома SCSI-цель настраивается для предоставления логического устройства. Каждая SCSI-цель может предоставлять несколько логических устройств и, таким образом, представлять несколько томов, но это не означает, что эти тома объединены. Компьютер, обращающийся к тому на дисковом массиве, определяет, к какому тому выполнять чтение или запись, используя LUN соответствующего логического устройства. В другом примере: один дисковый накопитель имеет один физический порт SCSI. Обычно он предоставляет только одну цель, которая, в свою очередь, обычно предоставляет только одно логическое устройство, чей LUN равен нулю. Это логическое устройство представляет собой все пространство хранения дискового накопителя.
Использование
Как выбрать LUN: В ранних версиях SCSI инициатор передает блок дескрипторов команд (CDB) цели (физическому устройству), а в CDB содержится 3-битное поле LUN для идентификации логической единицы внутри цели. В современных версиях SCSI инициатор передает CDB непосредственно конкретной логической единице, поэтому LUN присутствует в структурах данных транспортного уровня, а не в CDB. LUN и SCSI Device ID: LUN – не единственный способ идентификации логической единицы. Существует также SCSI Device ID, который однозначно идентифицирует логическую единицу во всей системе. Метки или серийные номера, хранящиеся в томе хранения логической единицы, часто используются для ее идентификации. Однако LUN – это единственный способ для инициатора адресовать команду конкретной логической единице, поэтому инициаторы часто создают, в процессе обнаружения, таблицу соответствия LUN другим идентификаторам. Зависимость от контекста: LUN идентифицирует логическую единицу только в контексте конкретного инициатора. Таким образом, два компьютера, обращающиеся к одному и тому же тому диска, могут знать его по разным LUN. LUN 0: Существует один LUN, который обязательно должен присутствовать в каждой цели: ноль. Логическая единица с LUN равным нулю особенна тем, что должна поддерживать несколько конкретных команд, наиболее важной из которых является Report LUNs, с помощью которой инициатор может узнать все остальные LUN, доступные в данной цели. Однако LUN 0 не обязан предоставлять какие-либо другие сервисы, например, том хранения. Многие цели SCSI содержат только одну логическую единицу (следовательно, ее LUN обязательно равен нулю). Другие имеют небольшое количество логических единиц, соответствующих отдельным физическим устройствам и имеющих фиксированные LUN. Большая система хранения может содержать до тысяч логических единиц, определенных логически с помощью административной команды, при этом LUN может быть выбран администратором или системой.
Другие применения
Термин "логический номер устройства" также применяется к каналу ввода-вывода в определенных языках программирования.