Interested Article - Нуль-модемное соединение

Нуль-модемный переходник, превращающий модемный кабель в нуль-модемный

Нуль-модемное соединение — соединение двух компьютерных устройств по интерфейсу RS-232 без модема .

Изначально стандарт RS-232 предназначался для соединения телетайпа с телефонным модемом — и уже опосредствованно, через модемы, телетайпы общались друг с другом. Поэтому соединение по RS-232 асимметрично: предполагается, что с одной стороны модем, а с другой — источник/потребитель данных. В нуль-модемном соединении линии передачи и приёма соединены непосредственно, крест-накрест , без использования модемов. Нуль-модемное соединение не стандартизовано , поэтому существуют несколько разводок.

Разводка

Нуль-модемный кабель
Разводка для DE-9
Разводка для DB-25

Наиболее сложная из разводок , с которой будет работать даже ПО, которое проверяет сигнал carrier detect (наличие-потеря несущей ).

Назначение гнезда Гнездо
DB-25
Гнездо
DE-9
Направ-
ление
Гнездо
DE-9
Гнездо
DB-25
Назначение
Корпус FG 1 - - 1 FG
Передача TxD 2 3 2 3 RxD
Приём RxD 3 2 3 2 TxD
Запрос передачи RTS 4 7 8 5 CTS
Готов к приёму CTS 5 8 7 4 RTS
SG 7 5 5 7 SG
Готовность модема DSR 6 6 4 20 DTR
Наличие несущего сигнала DCD 8 1
Готовность терминала DTR 20 4 1 8 DCD
6 6 DSR

Без контроля соединения

Простейшая разновидность последовательного кабеля — полное отсутствие контроля соединения. TxD на одном конце соединяется с RxD на другом, «земля» с «землёй» — итого три провода. Работает с ПО, которое не проверяет работу модема (например, с большинством игр) и с устройствами, которым не нужны линии управления модемом.

Замыкание управляющих сигналов на себя

Если ПО нужен именно модем и оно проверяет, есть ли связь, можно его обмануть, замкнув управляющие линии на своём же порту (RTS+CTS; DTR+DSR+DCD). Программа будет «думать», что соединение и аппаратное управление потоком данных есть.

Этот кабель только решает проблемы совместимости, по качеству связи он ничем не лучше предыдущего: при любой ошибке соединения связь разорвётся без видимой причины.

Частичное управление потоком

В этом кабеле линии RTS замкнут на свой же CTS и соединён с чужим DCD, а DTR — с чужим DSR. С соответствующим ПО такой кабель позволяет настроить связь на высоких частотах — до 115 килобод. Но из-за нестандартной разводки требуется особое ПО.

Полное управление потоком

Этот кабель также позволяет высокие скорости; именно эта разводка указана в таблице и на рисунке.

Для управления устройствами Cisco существовала разводка Yost , с COM-порта на 8P8C . Она интересна тем, что в нуль-модемном кабеле (с 8P8C на 8P8C) контакты обжимаются в обратном порядке: 1…8 на одном конце с 8…1 на другом. Кабели заводского производства часто делаются не из витой пары, а из плоского шлейфа и этим отличаются от сетевых патч-кордов .

Опасность

Нуль-модемное соединение не содержит гальванической развязки , как, например, Fast Ethernet. Соединение компьютеров, между массами которых имеется напряжение, чревато выгоранием порта или всей материнской платы (актуально для времени популярности в СССР в 80-е — 90-е, когда бытовые сети с системой заземления TN-C-S или TN-S и розетки с заземляющим контактом были редкостью).

Применение

Изначальное применение нуль-модемного кабеля — соединение двух терминалов (телетайпов) напрямую без модема. Если устройствам для соединения нужен модем, а в действительности они стоят рядом, применялся нуль-модемный кабель.

В 1980-е и 1990-е годы нуль-модемный кабель широко использовался как дешёвая альтернатива локальной сети : сетевые адаптеры были недёшевы, COM-порты были у любого компьютера, а покупка или изготовление нуль-модемного кабеля обходились недорого. В последние версии MS-DOS входила программа ; Norton Commander мог не только передавать файлы, но и «склонировать» себя на другой компьютер по нуль-модему . Многие из DOS-игр того времени ( Grand Prix 2 , Doom , WarCraft II , Duke Nukem 3D …) поддерживали связь и через COM-порты. Как экзотика, в Doom была неофициальная утилита HX8, работавшая по цепочке COM-кабелей. Скорость — до 8 килобайт/с — была низкой даже по тем временам, но для игр это было неважно: они изначально проектировались под 9600- или 14400-бодные модемы. «Контроллер удалённого доступа» Windows допускал соединение через нуль-модем по любому из доступных сетевых протоколов, поэтому Windows-играм достаточно было поддерживать IPX или TCP/IP . С удешевлением Ethernet отпала необходимость в применении нуль-модемной связи для организации локальных сетей.

Сейчас нуль-модемная связь применяется для отладки ядер ОС — из-за простоты драйвера . Это могут делать, например, для Linux, для BSD и WinDbg для Windows. К тому же современные ОС устроены так, что графическая оболочка монопольно захватывает экран и клавиатуру — поэтому, если ОС «вылетит» с аварийным экраном , отладчик не сможет их затребовать, но останется возможность передать аварийную информацию через кабель.

Безмониторные устройства ( коммутаторы , маршрутизаторы , стоечные серверы , разного рода встраиваемые контроллеры ) могут администрироваться, в том числе, и по RS-232. В некоторых устройствах для соединения с компьютерным COM-портом требуется преобразователь напряжений — ими выдаются обычные для электроники ТТЛ-уровни .

В Unix есть виртуальные нуль-модемные соединения (псевдотерминал, ), позволяющие соединять консоли на разных компьютерах через любой доступный канал связи. В DOSBox также есть эмуляция нуль-модемного соединения — для «последовательной» игры через сеть. Стоит заметить, что игра через Интернет не всегда возможна — часто сетевые подсистемы старых игр рассчитывали на низкую сетевую задержку .

См. также

Примечания

  1. . Дата обращения: 6 сентября 2011. 23 августа 2011 года.
  2. : от 6 октября 2011 на Wayback Machine (англ.)
  3. от 29 апреля 2021 на Wayback Machine (англ.)
  4. : от 6 октября 2011 на Wayback Machine (англ.)
  5. . Дата обращения: 3 июля 2011. 1 февраля 2009 года.
  6. У Doom в системных требованиях модем от 12 апреля 2012 на Wayback Machine (англ.) , у Duke Nukem 3d — 14400, у Unreal Tournament — 28800.
  7. от 27 июня 2012 на Wayback Machine (англ.)
Источник —

Same as Нуль-модемное соединение