Coro-Telnet和Coro-Telnet+Golang-ssh-proxy性能測試
- 利用perl io::socket::telnet,封裝AE::socket+Coro::handle實(shí)現(xiàn)異步telnet登錄交互
- 利用golang/x/crypto/ssh實(shí)現(xiàn)golang代理ssh登錄交互設(shè)備
- 利用perl coro-telnet+golang代理ssh實(shí)現(xiàn)ssh登錄設(shè)備交互
- 隨協(xié)程并發(fā)數(shù)增大缓苛,性能還可能有很可觀的表現(xiàn)浪慌,新測了450臺華為coro-telnet交互6秒完成吏口,性能很強(qiáng)勁
Benchmarks
- 測試Coro-Telnet登錄50臺cisco設(shè)備執(zhí)行show user和show bfd執(zhí)行效率
50臺全部執(zhí)行操作成功
use 6.5157 sec
real 0m6.560s
user 0m0.190s
sys 0m0.038s
- 測試Coro-telnet使用golang-ssh代理執(zhí)行50臺cisco設(shè)備ssh登錄執(zhí)行兩條操作效率
42臺執(zhí)行成功便瑟,8臺ssh協(xié)議協(xié)商失敗经伙,類似telnet效率
use 7.1813 sec
real 0m7.226s
user 0m0.125s
sys 0m0.018s
- 測試Coro-Telnet登錄50臺華為設(shè)備執(zhí)行display users和display telnet server status執(zhí)行效率
50臺全部執(zhí)行成功
use 2.4691 sec
real 0m2.513s
user 0m0.286s
sys 0m0.072s
- 測試Coro-telnet使用golang-ssh代理執(zhí)行50臺華為設(shè)備ssh登錄執(zhí)行兩條操作效率(display ssh server status)
46臺成功翎猛,4臺不支持ssh登錄拘荡,接近telnet交互效率
use 2.6981 sec
real 0m2.742s
user 0m0.192s
sys 0m0.049s
總結(jié)
隨協(xié)程并發(fā)數(shù)增大臼节,性能還可能有很可觀的表現(xiàn),這只是單進(jìn)程50并發(fā)珊皿,1 cmd下發(fā)基本接近10/s臺的交互效率网缝,新測了450臺華為coro-telnet交互6秒完成,性能很強(qiáng)勁蟋定,同時看得出來coro-telnet比coro-telnet+golang-ssh代理交互效率高粉臊,ssh本身就應(yīng)該比telnet協(xié)議慢,要交互加密等協(xié)議信息驶兜,但效率非常接近6笾佟!另外抄淑,在io字節(jié)數(shù)非常接近的情況下屠凶,華為NE5k系列設(shè)備的響應(yīng)要比思科CRS快的多。