协议 – 协议/数据包设计问题

我正在寻找一个设计客户端 – 服务器应用程序的协议,并需要一些链接到一些可能对我有帮助的资源.

最重要的是我正在尝试创建自己的“数据包”格式,以便最大限度地减少发送的信息量.我正在寻找一些资源来剖析他们的协议,但似乎有些完全缺乏数据包设计,例如SMTP(它只发送由CLRF终止的字符串).在使用自定义数据包的系统上使用SMTP等系统的优点/缺点是什么? SMTP无法使用几个字节来通过位标志覆盖所有命令并节省带宽/空间?

试着试着理解这一切.

最佳答案 没错,但SMTP并没有特别针对空间进行优化,也不是基于数据包的协议.它位于TCP之上,并使用TCP的流功能.您需要确定协议中需要什么:性能敏感吗?潜伏?带宽?

是否需要以超级用户身份运行?如果没有,您可能想要使用UDP或TCP.

你需要保证交货吗?如果是这样,TCP可能是您的最佳选择,除非您处理相当极端的性能或大小问题.

现在很少有协议设计单个数据包,尽管许多协议使用TCP或不太常见的UDP在线路上发送非常具体的数据结构.

如果您想真正优化空间或带宽,请考虑尽可能将数据压缩到单个位和字节中,并定义和打包结构以通过TCP发送它.现代网络适配器无论如何都针对TCP进行了优化,其他策略通常没什么优势.

点赞