2016-08-08 2 views
0

После некоторых google я не нашел ответа, который соответствует моей точной ситуации. Это может быть больше информации, чем вам нужно, но я думаю, что мне нужно подготовить почву для моего вопроса. Моя простая цель - прочитать и управлять устройством Cisco IOS либо с последовательной консолью, либо с помощью ssh. Чтобы отвлечь «бизнес-логику» от транспорта, я смотрел на создание потока. Для последовательной консоли после создания последовательного порта я использую basestream, и все работает хорошо. FYI это был мой розетта, как момент для работы потокового последовательного порта. If you must use .NET System.IO.Ports.SerialPort Добавление потока ssh (для меня) привело меня к Sharps и Renci для моего ssh-соединения. Я решил сначала попробовать Renci. Скачан и скомпилирован, чтобы получить мою dll (мой проект находится в VB.NET). Connected, создал поток оболочки, затем передал этот поток тем же функциям, что и используемый последовательный поток. Все работает, кроме случаев, когда я выполняю «показ». У меня есть конечная длина, равная 0, поэтому нет разрывов страниц. Я получаю вывод, но когда я использую ssh, в захвате есть недостающие части. Моя теория находится на последовательной скорости (9600 бод), поток может поддерживать скорость, но на скорости lan (бит 1 гигабайт) я перехватываю буфер. То, что фактически захвачено, немного отличается, но в основном вокруг того же текста области отсутствует. Маленькие экраны, такие как «show ip int br», отлично работают. Я увеличил размер буфера «CreateShellStream» без каких-либо изменений. Я начал смотреть на код Renci, если я правильно понимаю его, он, кажется, не пропускает размер буфера ни к чему. Мысли?Renci.SshNet ShellStream, похоже, отбрасывает символы

ответ

0

У меня был друг, который говорит, что мы все сервер в качестве примера, некоторые из нас хорошие, некоторые плохие. Я должен упасть на меч и быть плохим примером. Сначала в нижней строке находится мой буфер, в который добавлен потоковый вызов, и мои функции чтения более высокого уровня, которые анализировали этот буфер. Я не защищал его с помощью synclock.

Смежные вопросы