Coro-Telnet和Coro-Telnet+Golang-ssh-proxy性能测试

Coro-Telnet和Coro-Telnet+Golang-ssh-proxy性能测试

  • 利用perl io::socket::telnet,封装AE::socket+Coro::handle实现异步telnet登录交互
  • 利用golang/x/crypto/ssh实现golang代理ssh登录交互设备
  • 利用perl coro-telnet+golang代理ssh实现ssh登录设备交互
  • 随协程并发数增大,性能还可能有很可观的表现,新测了450台华为coro-telnet交互6秒完成,性能很强劲

Benchmarks

  • 测试Coro-Telnet登录50台cisco设备执行show user和show bfd执行效率
    50台全部执行操作成功
use 6.5157 sec
real    0m6.560s
user    0m0.190s
sys     0m0.038s
  • 测试Coro-telnet使用golang-ssh代理执行50台cisco设备ssh登录执行两条操作效率
    42台执行成功,8台ssh协议协商失败,类似telnet效率
use 7.1813 sec
real    0m7.226s
user    0m0.125s
sys     0m0.018s
  • 测试Coro-Telnet登录50台华为设备执行display users和display telnet server status执行效率
    50台全部执行成功
use 2.4691 sec
real    0m2.513s
user    0m0.286s
sys     0m0.072s
  • 测试Coro-telnet使用golang-ssh代理执行50台华为设备ssh登录执行两条操作效率(display ssh server status)
    46台成功,4台不支持ssh登录,接近telnet交互效率
use 2.6981 sec
real    0m2.742s
user    0m0.192s
sys     0m0.049s

总结

随协程并发数增大,性能还可能有很可观的表现,这只是单进程50并发,1 cmd下发基本接近10/s台的交互效率,新测了450台华为coro-telnet交互6秒完成,性能很强劲,同时看得出来coro-telnet比coro-telnet+golang-ssh代理交互效率高,ssh本身就应该比telnet协议慢,要交互加密等协议信息,但效率非常接近!!另外,在io字节数非常接近的情况下,华为NE5k系列设备的响应要比思科CRS快的多。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容