Введение
Протокол компьютерной связи из системной сетевой архитектуры IBM (SNA).
Synchronous Data Link Control (SDLC) — это протокол компьютерной связи. Он является протоколом второго уровня для системной сетевой архитектуры IBM (SNA). SDLC поддерживает многоточечные соединения, а также коррекцию ошибок. Он также работает, исходя из предположения, что заголовок SNA присутствует после заголовка SDLC. SDLC в основном использовался в мэйнфреймах и системах среднего класса IBM, однако существуют реализации для многих платформ от различных производителей. В США и Канаде SDLC можно встретить в шкафах управления дорожным движением. В 1975 году IBM разработала первый битоориентированный протокол SDLC на основе работ, выполненных для IBM в начале 1970-х годов. Этот де-факто стандарт был принят ISO как High Level Data Link Control (HDLC) в 1979 году.
SDLC работает независимо на каждом канале связи и может функционировать в соединениях типа «точка-точка», «многоточка» или «петля», на коммутируемых или выделенных двух- или четырехпроводных линиях, с использованием полнодуплексного и полудуплексного режимов. Уникальной особенностью SDLC является возможность смешивания полудуплексных вторичных станций с полнодуплексными первичными станциями на четырехпроводных линиях, что позволяет снизить стоимость выделенных каналов. Intel использовала SDLC в качестве базового протокола для BITBUS, который до сих пор популярен в Европе как полевая шина, и включила поддержку в несколько контроллеров (i8044/i8344, i80152). Контроллер 8044 до сих пор производится сторонними производителями. В 1980-х годах другие производители, такие как Zilog, Motorola и National Semiconductor, внедряли аппаратную поддержку SDLC (и немного отличающегося HDLC) в чипы контроллеров связи. В результате в 1980-х годах он широко использовался в различном оборудовании и был очень распространен в корпоративных сетях, ориентированных на мэйнфреймы, которые были нормой в то время. Наиболее распространенными альтернативами SNA с SDLC, вероятно, были DECnet с протоколом сообщений цифровых коммуникаций данных (DDCMP), сетевая архитектура Burroughs (BNA) с управлением связью данных Burroughs (BDLC) и ARPANET с IMP.
multipoint
or loop facilities, on switched or dedicated, two wire or four wire circuits, and with full duplex and half duplex operation. A unique characteristic of SDLC is its ability to mix half duplex secondary stations with full duplex primary stations on four wire circuits, thus reducing the cost of dedicated facilities. Intel used SDLC as a base protocol for BITBUS, still popular in Europe as fieldbus and included support in several controllers (i8044/i8344, i80152). The 8044 controller is still in production by third party vendors. Other vendors putting hardware support for SDLC (and the slightly different HDLC) into communication controller chips of the 1980s included Zilog, Motorola, and National Semiconductor. As a result, a wide variety of equipment in the 1980s used it and it was very common in the mainframe centric corporate networks which were the norm in the 1980s. The most common alternatives for SNA with SDLC were probably DECnet with Digital Data Communications Message Protocol (DDCMP), Burroughs Network Architecture (BNA) with Burroughs Data Link Control (BDLC), and ARPANET with IMPs.
Различия между SDLC и HDLC
HDLC в основном является расширением SDLC, однако некоторые функции были удалены или переименованы.
Расширения HDLC добавлены в SDLC
Некоторые функции были добавлены в HDLC, а затем повторно внедрены в более поздние версии SDLC. Расширенные номера последовательности (с модулем 128) и соответствующий фрейм SNRME U были добавлены в SDLC после публикации стандарта HDLC.
Режим цикла
Особый режим работы SDLC, который поддерживается, например, Zilog SCC, но не был реализован в HDLC, – это режим кольца SDLC. В этом режиме первичная станция и несколько вторичных станций соединены в однонаправленную кольцевую сеть, при этом выход передатчика каждой станции подключен к входу приемника следующей. Каждая вторичная станция отвечает за копирование всех кадров, поступающих на ее вход, чтобы они достигли остальных станций кольца и в конечном итоге вернулись к первичной станции. За исключением этого копирования, вторичная станция работает в полудуплексном режиме; она передает данные только тогда, когда протокол гарантирует отсутствие входящих данных. При отключении вторичной станции реле соединяет ее вход непосредственно с выходом. При включении вторичная станция ожидает подходящего момента, а затем "включается в кольцо", вставляя себя в поток данных с задержкой в один бит. Аналогичный механизм используется для "выключения из кольца" при корректном завершении работы. В режиме кольца SDLC кадры поступают группами, заканчиваясь (после последнего флага) сигналом простоя, состоящим из всех единиц. Первые семь единиц этого сигнала (паттерн 01111111) образуют последовательность "начать" (также называемую EOP, конец опроса), дающую вторичной станции разрешение на передачу. Вторичная станция, желающая передать данные, использует свою задержку в один бит, чтобы преобразовать последний бит единицы в этой последовательности в ноль, превращая его в флаг, а затем передает свои собственные кадры. После своего последнего флага она передает сигнал простоя, состоящий из всех единиц, который будет служить сигналом "начать" для следующей станции в кольце. Группа начинается с команд от первичной станции, и каждая вторичная станция добавляет свои ответы. Когда первичная станция получает сигнал "начать" простоя, она понимает, что вторичные станции закончили передачу, и может передавать новые команды. Ответ маяка (BCN) предназначен для обнаружения разрывов в кольце. Вторичная станция, не получающая входящий трафик в течение длительного времени, начинает отправлять ответные кадры "маяка", сообщая первичной станции о разрыве связи между этой вторичной станцией и ее предшественницей. Поскольку первичная станция также получает копию отправленных ею команд, которые неотличимы от ответов, она добавляет специальный "разворотный" кадр в конце своих команд, чтобы отделить их от ответов. Любая уникальная последовательность, которая не будет интерпретироваться вторичными станциями, подойдет, но обычно используется один нулевой байт. Это "укороченный кадр" с адресом 0 (зарезервированный, неиспользуемый) и без поля управления или последовательности проверки кадра. (Вторичные станции, поддерживающие полнодуплексный режим работы, также интерпретируют это как "последовательность отключения", заставляя их прерывать передачу.)