Qt for Windows:使用WinPcap开发高性能UDP服务器
2015-11-05 21:44
591 查看
首先介绍一下WinPcap
WinPcap是Windows下一个网络库,性能极其强悍而且能够接收各种包。
大名鼎鼎的WireShark就是基于这个库开发的。
那么这个库性能到底有多高呢。
我测试了UDP包的接收,每包1400字节大小,WinPcap可以轻松接下4w包每秒(也就是将近430M带宽,更高的我没测试过),Qt的QUdpSocket只能收到1.2w个,ASIO也只能收到2.5w个。
我提取了WinPcap的UDP接收功能,简单的封装了一下。
注:使用时请选择网卡,默认是第一个(index为0)的网卡。
注2:使用前要安装库,库的安装exe已经放在了工程里面。
代码:
https://github.com/188080501/JasonQt_WinPcap
WinPcap是Windows下一个网络库,性能极其强悍而且能够接收各种包。
大名鼎鼎的WireShark就是基于这个库开发的。
那么这个库性能到底有多高呢。
我测试了UDP包的接收,每包1400字节大小,WinPcap可以轻松接下4w包每秒(也就是将近430M带宽,更高的我没测试过),Qt的QUdpSocket只能收到1.2w个,ASIO也只能收到2.5w个。
我提取了WinPcap的UDP接收功能,简单的封装了一下。
注:使用时请选择网卡,默认是第一个(index为0)的网卡。
注2:使用前要安装库,库的安装exe已经放在了工程里面。
代码:
https://github.com/188080501/JasonQt_WinPcap
相关文章推荐
- qt 主窗口中排列多个子窗口的布局问题
- 天嵌开发版 imx6 移植qt
- QT5入门之32-QCustomPlot
- 开发板在qt上环境搭建
- Qt创建first工程报错Circular <- first dependency dropped
- Qt报错 /usr/bin/ld: error: cannot find -lGL
- Qt启动画面(类似Office)
- Pyqt实现无边框窗口拖动及改变窗口大小
- 每日一笔记之2:QT之坐标系统:
- qt如何用指定程序打开当前路径下的文件
- Ubuntu下 嵌入式Qt开发环境的搭建
- 使用Qt开发中国象棋(六):将军和死棋检测
- QT笔记:数据库总结(三)之SQL模型类-QSqlTableModel模型
- QT笔记:数据库总结(一)
- QT5入门之31-QT QTreeWidget
- QT5入门之32-QT QTtableWidget
- QT5入门之31-QT QListWidget
- QTP自动化测试框架简述
- 关于编写QT国际化程序中需要注意的问题
- Qt界面跳转中的超前引用问题