gpt4 book ai didi

python - 移动设备的高效传输协议(protocol)

转载 作者:行者123 更新时间:2023-12-03 17:36:15 26 4
gpt4 key购买 nike

我正在一个具有 GPRS 数据连接的平台上工作。我现在拥有的是一个基于 TCP 或 UDP 的自定义协议(protocol),我正在考虑改变它。当前状态下的设备会定期发送小块数据(比如说 30 秒或 5 分钟——这可以而且可能会改变)。我担心的是,随着时间的推移,正在发送的数据将开始变得越来越复杂。我想要的是:

  • 一种在发送的信息和发送的数据大小之间具有良好平衡(尽可能好)的协议(protocol)(GPRS 需要花钱,所以发送的数据必须尽可能小)
  • 一种在数据包信息发生变化时易于扩展的协议(protocol)

  • 目前我的解决方案是:
  • 自定义协议(protocol)(我现在正在使用)
  • 标准/开放协议(protocol)(我听说过二进制 xml,但还没有找到清楚的东西)。

  • 约束:
  • 该设备的计算能力很小,因此压缩数据是不可能的,除了像 RLE 这样的 CPU 密集度较低的方法。 .
  • 使用的语言是 python 和 很多功能关闭(想象一个剥离的 Python 实现只包含列表、字典、一些基本的字符串操作、异常、功能很少的 sys 模块、元组和其他自定义(非标准)函数)。

  • 鉴于这些限制,什么是通过网络传输数据的好/最佳方法? (我指的是TCP/UDP上面使用的协议(protocol))

    任何信息/提示/经验/实现都是有帮助的。

    谢谢,

    尤利安

    最佳答案

    鉴于您的限制,正确编码的 JSON 听起来是合理的。

  • 它相当轻量级(数据大小 + 引号和 {})
  • 它是可扩展的。您无需预先决定固定格式。添加 key 对于传输和接收都是微不足道的。
  • 您可以使用 eval()获取 Python 字典(因为您的 Python 版本已被剥离)。您也可以使用simplejson在没有任何依赖关系的 Python 2.5+ 中。
  • 它是跨其他语言(JavaScript 等)进行数据交换的常用格式
  • 关于python - 移动设备的高效传输协议(protocol),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5523889/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com