Открыть сервис

NCP

NCP (сокр. от англ. NetWare Core Protocol) — это протокол прикладного уровня, разработанный компанией Novell для операционной системы NetWare. Он является ключевым компонентом сетевой архитектуры Novell, обеспечивающим взаимодействие между клиентами и серверами в локальных вычислительных сетях (LAN). NCP предоставляет клиентским рабочим станциям доступ к файлам, принтерам, каталогам и другим сетевым ресурсам, а также управляет аутентификацией пользователей и передачей данных. Протокол был широко распространён в корпоративных сетях в 1980–1990-х годах, однако с развитием альтернативных решений (например, TCP/IP и SMB) его использование значительно сократилось.

История

Разработка и ранние версии

NCP был создан в 1983 году компанией Novell, основанной Деннисом Фэйрклафом, Джеком Дэвисом и Дарреллом Миллером. Первоначально протокол предназначался для операционной системы NetWare 68, работавшей на процессорах Motorola 68000. С выпуском NetWare 86 (1985 год) и NetWare 286 (1986 год) NCP стал стандартом для сетей на базе IBM PC-совместимых компьютеров. В этот период протокол поддерживал только простые операции, такие как открытие и закрытие файлов, чтение и запись данных, а также управление очередями печати.

Расцвет и доминирование

В конце 1980-х — начале 1990-х годов NetWare занимала лидирующие позиции на рынке сетевых операционных систем, особенно в корпоративном сегменте. NCP обеспечивал высокую производительность за счёт оптимизации под архитектуру клиент-сервер. В отличие от конкурирующих протоколов (например, SMB от Microsoft), NCP использовал минимальный объём служебной информации и поддерживал эффективное кэширование на стороне клиента. Это позволяло добиться скорости передачи данных, близкой к скорости работы с локальным диском.

Переход на TCP/IP и упадок

С середины 1990-х годов, с распространением глобальной сети Интернет и протокола TCP/IP, популярность NetWare начала снижаться. Novell предприняла попытку адаптировать NCP для работы поверх TCP/IP, выпустив в 1996 году версию NetWare 4.11 (IntranetWare), которая поддерживала как IPX/SPX, так и TCP/IP. Однако конкуренция со стороны Windows NT (с протоколом SMB/CIFS) и Linux (с NFS) оказалась слишком сильной. В 2000-х годах Novell постепенно утратила рынок, а вместе с ним и актуальность NCP. Последняя версия NetWare (6.5) была выпущена в 2003 году; поддержка прекращена в 2010 году.

Технические характеристики

Архитектура

NCP работает по принципу «запрос-ответ» (request-response). Клиент (рабочая станция) отправляет серверу запрос на выполнение определённой операции (например, открытие файла или аутентификацию), а сервер возвращает результат. Протокол является ориентированным на соединение — перед началом передачи данных устанавливается логическое соединение между клиентом и сервером.

Транспортный уровень

Изначально NCP функционировал поверх протокола IPX (Internetwork Packet Exchange) из стека Novell IPX/SPX. IPX обеспечивал негарантированную доставку дейтаграмм, в то время как SPX (Sequenced Packet Exchange) — гарантированную доставку с установлением соединения. Однако NCP использовал собственные механизмы надёжности, поэтому мог работать как поверх SPX, так и непосредственно поверх IPX. В более поздних версиях (NetWare 5.x и выше) NCP стал поддерживать работу поверх TCP/IP, используя порт 524 (TCP и UDP).

Формат пакета

Пакет NCP состоит из заголовка и полезной нагрузки. Заголовок включает:

  • Тип запроса (например, чтение, запись, создание файла);
  • Идентификатор соединения (уникальный номер, присвоенный клиенту);
  • Длину данных;
  • Контрольную сумму (опционально).

Полезная нагрузка содержит непосредственно данные (например, содержимое файла или команды управления).

Функции и возможности

Управление файлами

NCP поддерживает все стандартные операции с файлами: создание, открытие, закрытие, чтение, запись, удаление, переименование, поиск. Особенностью протокола является поддержка блокировок (file locking) — механизма, предотвращающего одновременное изменение одного и того же файла несколькими пользователями.

Управление каталогами

Протокол позволяет создавать, удалять и переименовывать каталоги, а также выполнять поиск по маске имени. Поддерживается иерархическая структура каталогов, аналогичная файловым системам DOS и Windows.

Аутентификация и безопасность

NCP реализует аутентификацию пользователей с помощью системы Novell Directory Services (NDS) (в NetWare 4.x и выше) или Bindery (в ранних версиях). Аутентификация включает проверку пароля и прав доступа. Протокол поддерживает шифрование паролей (алгоритм RSA) и целостность данных (контрольные суммы).

Управление печатью

NCP обеспечивает отправку заданий на печать на сетевые принтеры, управление очередями печати и мониторинг состояния принтеров.

Прочие функции

Версии и эволюция

NCP для NetWare 2.x и 3.x

В этих версиях NCP работал исключительно поверх IPX. Поддерживалась аутентификация через Bindery (плоская база данных пользователей). Максимальный размер пакета — 512 байт (стандартный для IPX).

NCP для NetWare 4.x

С выходом NetWare 4.0 (1993 год) протокол был расширен для поддержки NDS. Появилась возможность работы поверх TCP/IP (через инкапсуляцию). Размер пакета увеличен до 1024 байт.

NCP для NetWare 5.x и 6.x

В NetWare 5.0 (1998 год) NCP получил нативную поддержку TCP/IP (порт 524). Добавлена поддержка протокола NCP over TCP (NCP/TCP). В NetWare 6.0 (2001 год) введена поддержка IPv6.

Взаимодействие с другими протоколами

IPX/SPX

NCP является прикладным протоколом стека IPX/SPX. IPX отвечает за маршрутизацию и адресацию, SPX — за надёжную доставку. NCP использует IPX для передачи дейтаграмм и SPX для установления соединения.

TCP/IP

В более поздних версиях NCP инкапсулируется в TCP (порт 524) для обеспечения надёжной передачи. Поддержка UDP (порт 524) используется для широковещательных запросов (например, поиск сервера).

SMB/CIFS

NCP является прямым конкурентом протокола SMB (Server Message Block), используемого в Windows. Оба протокола предоставляют аналогичные функции (доступ к файлам и принтерам), но NCP был оптимизирован для работы в локальных сетях с высокой нагрузкой.

Преимущества и недостатки

Преимущества

  • Высокая производительность — минимальные накладные расходы и эффективное кэширование.
  • Надёжность — встроенные механизмы восстановления соединения и повторной передачи.
  • Гибкость — поддержка различных транспортных протоколов (IPX, TCP/IP).
  • Безопасность — шифрование паролей и контроль доступа.

Недостатки

  • Закрытость — протокол является проприетарным, что ограничивало его совместимость с другими системами.
  • Сложность настройки — для работы требовалась специализированная инфраструктура (серверы NetWare, клиентское ПО).
  • Устаревание — с переходом на TCP/IP и Windows Server NCP потерял актуальность.

Применение

Корпоративные сети

NCP активно использовался в организациях, где требовалась высокая производительность файлового обмена и централизованное управление ресурсами. Типичные области применения:

  • Офисы с большим количеством рабочих станций (до нескольких сотен).
  • Образовательные учреждения (университеты, школы).
  • Государственные учреждения.

Наследие

Несмотря на упадок, NCP оставил след в истории сетевых технологий. Многие идеи, реализованные в NCP (например, эффективное кэширование и блокировки файлов), были заимствованы более поздними протоколами. В настоящее время NCP представляет в основном исторический интерес, хотя отдельные устаревшие системы на базе NetWare всё ещё эксплуатируются в некоторых организациях.

Интересные факты

  • Название «NCP» также используется для обозначения протокола Network Control Protocol в стеке PPP (Point-to-Point Protocol), но эти протоколы не связаны между собой.
  • В 1990-х годах Novell занимала до 70% рынка сетевых ОС, и NCP был де-факто стандартом для локальных сетей.
  • Протокол NCP поддерживал работу с файловыми системами FAT и HPFS, а также с собственными томами NetWare (NWFS, NSS).

Источники

  • Novell NetWare Documentation (1990–2003).
  • «NetWare: The Complete Reference» by Tom Sheldon (1996).
  • «Novell’s Guide to NetWare 4.1 Networks» by Cheryl Currid (1995).
  • RFC 524 (NCP over TCP/IP).
  • Статьи из журнала «Byte» (1988–1995).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →