Это должно быть просто, очень просто, но мне тяжело с этим.
Проблема Я ищу проект с открытым исходным кодом, в Java, который будет общаться с использованием протокола RFC2217.Я не нахожу недостатка в терминальных серверах Java RFC2217, но мне нужен клиент.Если все эти люди пишут серверы, кто-то должен был написать клиента!Правильно?Я просто не могу найти один в Java .
Контекст У нас есть аппаратное обеспечение ( SeaLINK + 16 Ultra ), которое физически подключено к дюжине последовательных устройств и принимает сетевые соединения TCP для управления ими.Это устройство подключено к сети с сервером, имеющим виртуальные COM-порты, которые наше приложение использует для связи с этими дюжинами устройств.
По сути, наш сервер в конечном итоге отправляет сетевые данные на это устройство SeaLINK, и это устройство преобразует трафик TCP в COMданные и передает их через последовательный порт на подключенные последовательные устройства.Сервер и устройство SeaLINK для связи используют протокол, указанный в RFC2217.
Команды, которые необходимо отправить на эти последовательные устройства, очень просты (Cisco IOS).Короткие строки, такие как «enable», «write memory», «reload» и т. Д.
Проблема заключается в том, что для виртуальных COM-портов, включенных на нашем сервере, требуются драйверы, которые являются ОГРОМНЫМИ для установки в Linux и некросс-платформенный.Кроме того, все наше приложение написано на Java, поэтому, если бы мы могли просто найти сетевой пакет Java, который может «говорить по RFC2217», мы могли бы решить наши проблемы в кратчайшие сроки, и наше приложение не нужно было бы связывать с драйверами.
Краткое описание Все, что мне нужно сделать, это «обернуть» эти команды в пакеты TCP, которые соответствуют RFC2217.Где-то должен быть java-клиент, который предоставляет вам командную строку, и он открывает сокет и передает ваши символы способом, совместимым с RFC2217.
То есть мне не придется заниматься установкойдрайверы или использование виртуальных COM-портов локально.Все, что мне нужно было бы сделать, это запустить код в следующем формате:
RFC2217Client magicJavaClient;
magicJavaClient.setServer("192.168.40.5");
magicJavaClient.setPort(4162);
magicJavaClient.connect();
magicJavaClient.send("enable");
magicJavaClient.send("write memory");
magicJavaClient.close();
Черт, я бы даже согласился на то, что создавало виртуальные ком-порты локально - до тех пор, пока все это Java.Примерно так: COM Redirector - это как раз то, что мне нужно, но не в Java.Заранее благодарим за любые предложения!
Обновление NVTCom , похоже, тот тип клиента RFC2217 на основе java, который я ищу, но он настолько плохо документирован, что его практически невозможно использовать.Есть ли другие клиенты там?Мы бы даже рассмотрели коммерческое решение.