我有一个 SMPP 适配器,它将 24/7 连接到消息传递网关,并且会话序列号按顺序增加。
这个序列 id 是否有最大值?达到最大值后会发生什么?会自动归零吗?
或者我是否需要重置连接来控制这个序列 ID。
我有一个 SMPP 适配器,它将 24/7 连接到消息传递网关,并且会话序列号按顺序增加。
这个序列 id 是否有最大值?达到最大值后会发生什么?会自动归零吗?
或者我是否需要重置连接来控制这个序列 ID。
我总是给自己提出同样的问题。
在 SMPP 中,序列号的范围可以从0x00000001
( 0x7FFFFFFF
1 到 32767) - 它相当于一个带正符号的 16 位整数。
对于每个提交的 SMPP 请求,序列号应单调增加,如果达到最大值,则应将其重置为0x00000001
.
有关更多详细信息,您可以查看SMPP v3.4 规范- 第 5.1.4 章和SMPP v5.0 规范- 第 4.7.24 章。
规范指出,SMPPP 3.4和SMPP 3.5的序列号范围可能在1和2147483647 之间。一旦 sequence_number 达到最大值,它应该从最小值重新开始。
规范规定序列号用 4 个八位字节定义,因此理论上(和实践中)运算符可以使用大于 2147483647 (2^31 -1)的数字,将其推到指定范围之外。
根据SMMPP 3.4和SMPP 5.0规范:
sequence_number 的范围可以是:0x00000001 到 0x7FFFFFFF。
序列号
八位字节大小:4
类型:整数
对于如何设置 sequence_number 没有具体要求。但是,建议序列号是单调递增的数字。