我想建立一个持久的tcp connection
例如。与redis or mqtt or socket.io
.
我唯一关心的是 GPRS 移动网络连接的可靠性。
我正在寻找库/方法来实现这些(或其他服务器)之一的客户端,这些服务器可以无损地传递和接收数据。我不关心延迟,但我打算发送任一方向的数据必须毫无问题地到达。
客户端将在android 2.2上实现
MQTT 提供服务质量级别,以保证使用消息握手进行消息传输。如果连接由于某种原因失败,客户端库将在连接返回后重试消息传递。
您需要 QoS > 0,并检查实现在断开连接的情况下是否正确恢复。
嘿 这里有一些可能对你有帮助的信息
TCP 会为您做一些基本的一致性检查。但它只是一个 32 位 CRC,因此您的敏感数据和不可靠网络(GPRS 或其他)的组合意味着您必须实施自己的附加验证方案。我认为MD5 散列对你来说已经足够了,所以除了你的数据,还要发送一个 16 字节的 MD5 指纹。谷歌会告诉你关于 MD5 是如何陈旧、脆弱、过时等的故事,至少 SHA-1 是必须的。这是真的,但在密码学的背景下。我想你不以安全为目标,你只需要一个完整性检查,MD5 绝对没问题,并且具有比其他任何东西都快得多的优势。