简单高效可靠的自定义通信协议(传输协议)
来源:互联网 发布:java下载64位 编辑:程序博客网 时间:2024/05/22 12:47
取“高效简单可靠”这几个形容词还是很虚的,毕竟这是yy出来的东西。
设计的目的在于:在收发双方能够正常运行的情况下,尽可能高的利用网络传输能力(不使用一应一答),以及提高传输效率(无须对每个报文帧进行应答)。
对比Xmodem、Kermit,以及借鉴TCP的协议栈设计思想,设计一套通信协议:
1,定义发送方Sender、接收方Receiver;
2,Sender无需应答即不断地发送数据帧,直到Receiver报告的接收缓冲为空;
3,Receiver逐个处理接收到的数据帧,当接收缓冲区空闲大小大于总大小的一半,或超过1秒(这个时间可设定)未发送ACK时,则发送正响应ACK,正响应ACK中带有下一个期望接收的字节序列号(每个字节对应一个序列号)、可用接收缓冲大小等接收方信息。
4,当Receiver接收出现异常时,发送负响应ACK,带有下一个期望接收的字节序列号、可用缓冲大小、错误码。
5,Sender接收到负响应ACK后,从“下一个期望接收的字节序列号”开始重发数据。
0 0
- 简单高效可靠的自定义通信协议(传输协议)
- 高效的用户数据报协议 和 可靠的传输控制协议
- 一个简单的自定义通信协议(socket)
- 一个简单的自定义通信协议(socket)
- 一个简单的自定义通信协议(socket)
- 一个简单的自定义通信协议(socket)
- 一个简单的自定义通信协议(socket)
- 一个简单的自定义通信协议(socket)
- 一个简单的自定义通信协议(socket)
- 一个简单的自定义通信协议(socket)
- 一个简单的自定义通信协议(socket)
- 一个简单的自定义通信协议(socket)
- 一个简单的自定义通信协议(socket)
- 一种基于UDP的可靠传输协议
- UDT:基于UDP的可靠传输协议
- 可靠的传输层协议——TCP协议
- (TCP-over-UDP library):基于UDP协议之上实现通用、可靠、高效的TCP协议
- (TCP-over-UDP library):基于UDP协议之上实现通用、可靠、高效的TCP协议
- HDU 5050 Divided Land (二进制上的最大公约数)
- 【Linux 移植 】——3、移植 u-boot-2012.04.01 之 修改代码(时钟,SDRAM,UART)
- ubuntu(linux)下截图
- unity官方demo学习之Stealth(十二)角色生命值
- 使用 Python3 抓取网页的简单范例
- 简单高效可靠的自定义通信协议(传输协议)
- LaTeX分情况公式的书写
- 删除数据库关键数据文件后实例是否会崩溃
- Bootstrap CSS——表单(一)
- Android Studio的top level element is not completed问题
- 在C#中动态地添加控件
- 学习ThinkPHP3.2.2:video12,后台目录的组织
- BZOJ 2705: [SDOI2012]Longge的问题(euler函数)
- 数据库以及线程发生死锁的原理及必要条件,如何避免死锁