2

Во-первых, я не отвечаю за оборудование, поэтому не паникуйте, я задаю такие основные вопросы :)

На работе у нас есть несколько серверов портов RS232 / Ethernet (скажем, 16-портовая версия этого http://www.digi.com/products/serialservers/portserverts)

У меня есть базовое понимание модели OSI и как взаимодействуют протоколы на разных уровнях. Например, http инкапсулируется в пакеты TCP с использованием IP, которые, в свою очередь, инкапсулируются в кадры Ethernet для уровня маршрутизатора с использованием MAC и т.д. И т.д.

Однако я не могу понять, какой протокол на самом деле передается по кабелю cat5 этих серверов портов. Это прямой RS232, который просто переназначил провода на кабель Ethernet? Это протокол RS232, инкапсулированный в некоторый протокол Ethernet (Ethernet - это LLC / MAC, да?)? Я получаю перепутанный протокол - то есть RS232 и LLC находятся на одном уровне?

Мотивация этого вопроса проистекает из моей работы, которая сейчас платит пару штук за серийные анализаторы. По сути, он подключается в линию с cat5, преобразуется в физический разъем RS232, имеет ответвитель с выходом USB, и, наоборот, происходит повторное возобновление cat5. Мне интересно, почему я не могу сделать что-то вроде простого пассивного сетевого подключения Ethernet, использовать два сетевых адаптера Ethernet, соединенных вместе, и контролировать протокол приложения с помощью wireshark. Чтобы исследовать это дальше, я пытаюсь найти, какой именно протокол будет отправлен на серверах портов.

Приветствия.

3 ответа3

3

На самом деле это действительно очень просто. Я, вероятно, написал RS232 для TCP 3 или 4 раза в разных заданиях.

Как это работает в простейшем виде - это часть программного обеспечения, считывающая данные из последовательного порта и напрямую записывающая их в подключенный сокет TCP. Это также делает обратное, данные, считываемые из сокета, напрямую записываются в последовательный порт. Нет протокола инкапсуляции по каналу IP/RS232. Это просто маршруты от одного к другому.

Это почти все, что нужно сделать. Тем не менее, вы часто устанавливаете программное обеспечение на свой компьютер, которое дает вам виртуальный последовательный порт. Этот последовательный порт заканчивает тем, что говорил реальный RS232 на сервере порта. Могут быть некоторые заголовки, вставленные в поток данных для управления контролем потока. Все это удаляется с обоих концов, так что приложение, взаимодействующее с последовательным портом, будет думать, что оно напрямую обращается к реальному порту RS232.

Если вы хотите прослушать эти данные, вам нужно просто прослушать весь трафик, идущий на IP сервера последовательного порта с помощью wireshark. Затем вы увидите, проходят ли данные без изменений по мере их отправки вашим приложением или с некоторыми заголовками, которые будут использоваться для управления потоком.

0

Тот факт, что в некоторых случаях кабели CAT5 и / или модульные разъемы 8P8C (или RJ45) используются для последовательной связи, ничего не значит. RS232 и Ethernet используют абсолютно разные сигналы. Вы не можете заменить последовательный анализатор сетевой картой. Вы можете найти менее дорогую версию анализатора RS232.

0

В двух словах - вы, вероятно, обнаружите, что сеанс RS232 заключен в сеанс TCP.

Все, что я могу сделать, - это дать обоснованное предположение о том, как работают ваши конкретные устройства, но если память и опыт подойдут, ящики будут эффективно преобразовывать сеанс telnet (или, возможно, ssh) в сеанс терминала.

Это означает, что они будут запускать какой-то сетевой стек на той стороне, где вы общаетесь с TCP, и он преобразует это в биты, необходимые для сеанса.

Вам не нужно беспокоиться о MAC-адресах или подобных терминальных серверах (по крайней мере, не настолько, насколько это возможно).

Чтобы конкретно ответить на некоторые ваши вопросы -

  • Кабель CAT 5 передает кадры Ethernet. Пакеты для сеанса TCP будут включены в кадры Ethernet.

  • Порты RJ45 для последовательных интерфейсов "отличаются" от портов RJ45 для Ethernet. Порт физически идентичен, но электрически совершенно другой. (Представьте, что кто-то обрезает последовательный кабель в 2 и обжимает одну сторону кабеля RJ45, что вы можете сделать, чтобы сделать этот кабель). Точная проводка будет зависеть от устройства, которое вы получаете, хотя большинство из них довольно стандартны. (Последовательные кабели, к которым вы можете подключить контакты в желаемом порядке, очень распространены и дешевы, если вы знаете, где искать)

  • RS232 - это не инкапсуляция, это необработанный поток байтов. Это на самом деле не сравнить с ООО (если мое понимание ООО правильно). Это просто необработанные биты на проводе, отправленные с определенной скоростью.

  • Вы не можете подключить Ethernet, потому что он не аналогичен или не сопоставим с Ethernet-устройством. USB на самом деле является последовательным интерфейсом (Universal SERIAL Bus).

  • Я никогда не пробовал, но я думаю, что можно найти линии TX и RX на последовательном кабеле (контакты 2 и 3 из памяти), нажать на копию сигнала [Я не инженер-электрик, поэтому Не слишком много здесь знаю, я бы взломал резистор для обеспечения высокого сопротивления на входе и вставил его в другой последовательный порт [если у вас его нет, через интерфейс USB к последовательному интерфейсу], подключите его в компьютер, на котором запущена терминальная программа, такая как minicom - вам нужно убедиться, что скорость передачи и другие параметры совпадают, но вы должны быть в состоянии сделать это "только для чтения" - хотя вам могут потребоваться отдельные выходы для линии tx и rx в простейшем случае - увидеть обе стороны сделки.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .