2016-08-08 24 views
0

Googleの後に、私の正確な状況に合った答えが見つかりませんでした。これはあなたが気にするよりも多くの情報かもしれませんが、私は私の質問のためのステージを設定する必要があると思う。私の簡単な目標は、シリアルコンソールまたはsshを使用してCisco IOSデバイスを読み取り、コマンドすることです。トランスポートから「ビジネスロジック」を抽象化するために、私はストリームを構築することを検討していました。シリアルコンソールの場合、シリアルポートを作成した後、私はベースストリームを使い、すべて正常に動作します。これはシリアルポートをストリーミングするための私のロゼッタの瞬間でした。 If you must use .NET System.IO.Ports.SerialPort sshストリーム(私にとっては)の研究を追加することで、SharpsとRenciは私のssh接続に関わりました。まずRenciを試してみることにしました。私のdllを入手するためにダウンロードしてコンパイルしました(私のプロジェクトはVB.NETにあります)。接続され、シェルストリームを作成し、そのストリームをシリアルストリームと同じ機能に渡しました。私は "ショーラン"をする以外はすべて動作します。私は、ページ区切りがないように、0に設定された私の端末の長さを持っています。私は出力を得るが、私はsshを使用しているときに、キャプチャに欠けている部分がある。私の理論は、ストリームが維持できるシリアル速度(9600ボー)ですが、ラン速度(1ギガビット)ではバッファをオーバーランしています。実際にキャプチャされるのは少し異なりますが、ほとんど同じ領域のテキストが欠落しています。 "show ip int br"のような小さなスクリーングラブは素晴らしい作品です。変更せずに "CreateShellStream"バッファサイズを増やしました。私はRenciコードを調べ始めました。正しく理解していれば、バッファサイズを何かに渡すようには見えません。 考えますか?Renci.SshNet ShellStreamが文字を削除しているようです

答えて

0

私は、すべてのサーバーを例として、私たちのいくつかは良い、いくつか悪いと言う友人がいました。私は剣に落ちて悪い例になる必要があります。 最初に一番下の行はストリーミングコールバックが追加されたバッファで、それより上位のレベルはそのバッファを解析した関数です。 私はそれをsynclockで保護していませんでした。

関連する問題