奇怪的VM高网络接收吞吐量问题查找
2017-12-28 17:02
453 查看
问题
我们的虚拟环境是Hyper-V ,一次在SCVMM上优化了一个VM的动态内存设置后,把SCVMM的视图调整了一下,加了一些性能参数列。在我按照网络吞吐量进行排序时发现,一个很普通的VM的接收吞吐量在TOP1,当时只是觉得可能是瞬间的流量,没有太在意。后面看了几次都在TOP5 之内,觉得问题可能不正常。排错步骤
VM不太好登录上去看,但是在Hyper-V环境,我们有更好的方法可以进行抓包。那就是Hyper-v网络的高级功能,PORT Mirroring。(大概步骤就是你把VM的网卡设置为镜像的Source,然后在另外一个专门抓包的VM的网卡上设置镜像的Dest),然后你就可以抓Source 的数据包了。参考这个文章配置Hyper-v Network Port Mirroring.我们的专门抓取数据包的是个centos 7的VM ,这是一个含有工具箱的机器,可以在多个机器上漂移,用来排错,在设置了Port Mirroring后,我们这个VM的第二个网卡上设置成promisc,然后抓了一小段时间的数据包。
ifconfig eth1 promisc tcpdump -i eth1 -w client4.cap
揭开真相
拖下来cap包用wireshark进行分析,先对协议进行统计,有个dcerpc的协议占用了75%左右的流量。高峰大概在4Mb/s 了,平均2.5Mb/s 左右,那么如果仔细计算下,60秒就是1分钟的数据量大概就是150Mb,那么10分钟就是1.5Gb,有点吓人,比备份系统的流量都高。
wireshark 对DCE/RPC的解释在这里,而且DCE/RPC的数据主要是和AD的Domain Controller进行交互,就我们内部的应用来看这个很像是使用DCOM访问的数据。
登录到VM本地看看,发现有个深信服的ADSSO应用在这里运行,应该就是它了。看看深信服ADSSO的介绍。
然后本地还有ADSSO的日志,我们看到大量的warning,肯定无疑这个应用的问题了。
最后总结
没有头绪时需要一步步缩小范围才能定位到问题实质,这个问题我们只能找到问题点,虽然自己没有办法解决,但已经确定到一个非常小的点了,下一步看厂商怎么解决。曾经想反编译下应用代码,看看到底是什么逻辑,这效率太低了。后面发现代码是VC写的,反编译到代码比较麻烦相关文章推荐
- 【解决】Select网络模型问题——奇怪的发送接收问题
- 记一次奇怪的网络问题
- 奇怪问题绑定和监听127.0.0.1把网络禁用还是可以成功。当网络断开时accept不会返回错误。网络再次连上时还能正常工作。
- 网络UDP广播包发不出去或接收不到问题
- 【WCF】 套接字连接已中止。这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的。本地套接字超时是“00:00:56.9810000”。
- 一起奇怪的网络问题解决过程
- WCF 套接字连接已中止。这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的
- 208 VM 桥接模式以及网络问题
- WCF 套接字连接已中止。这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的
- 解决Macbook网络连接成功但是图标一直显示正在查找网络问题
- 套接字连接已中止。这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的。本地套接字超时是“00:01:00”
- vm中ubuntu 与arm nfs网络服务器挂载的问题解决
- 解决网络不通数据只有发送不接收的问题
- HttpURLConnection 接收网络数据出现乱码问题
- 奇怪的网络问题
- vm-vm网络配置问题
- Foxmail接收邮件时,报出"网络操作失败","POP3:****"问题的解决办法
- Qemu&KVM第二篇之(4)使用virsh配置VM 网络network 问题
- 访问网络服务器时出现的奇怪问题
- 开发板-PC机(宿主机)-虚拟机(VM)之间网络通信设置方法及须要注意的问题