手写socket要注意的地方
最简单的代码 http://c.biancheng.net/cpp/html/3031.html
传输的时候数据会不会损坏? 不会,tcp有数据校验
数据包会不会顺序错乱?不会
发送和接受的数据包是不是一一对应?不是,具体搜索粘包相关话题
client disconnect/shutdown when server is receiving data -> server should handle error status -> server should ensure data length as expected
如何处理发送了一半数据就停止而就恶意发送下一个数据的客户端
记录数据包长度,如果接受的长度不足,就一直等下去,如果给定时间还是接受不全,就断掉链接
如何处理服务端死机
客户端重新连接
如何最大化吞吐量?增加tcp连接的数量有用吗
如何做网络压力测试?模拟网络故障测试?
https://www.zhihu.com/question/19867883
https://blog.csdn.net/cjfeii/article/details/115512479
tc(traffic control)一般用来做精细的网络故障模拟。
模拟网络延迟:
模拟网络丢包
模拟包重复
模拟包乱序
查看or删除配置
ref: https://blog.csdn.net/weiweicao0429/article/details/17578011
- 上一篇 Firefox Settings
- 下一篇 Linux下debug rust程序