WZP报文封装协议(Web Zip Protocol)同时考虑了网络接入点和网络中间节点的特殊需要。在接入点,采用首发控制字解决组网问题和入网控制(可匿名);在网络中间节点采用转发控制字解决转发问题和二次入网控制(可实名)。
更高级一点的转发节点可根据队列层的信息进行流量优化。所有载荷均通过指令块支持分段,对于跨网转发(重新裁剪和重新组合)、通讯代理服务(增加嵌套)支持良好。
控制层 | 协议标识(1位,必须为1) 协议号(15位,选定的随遇数,同队列层) 协议版本号(4位) 字长指数(4位) 控制字(8位,必须是首发控制字或转发控制字) 加强控制开关(1位) 阻塞优先级(7位,0:禁止转跳;n:超时指数) 后续长度(24位、其余均为80位) 接收者(64位~2M位,接收者公钥) 发送者(64位~2M位,发送者公钥) 访问控制状态(加强控制时,8位) 超时计数器(加强控制时,120位,可增可减) (第一次超时抛弃内容,第二次超时抛弃传送记录) 控制容器(后续长度减除可变部分,默认加密传输) |
队列层 | 协议标识(1位,必须为1) 协议号(15位,选定的随遇数,同控制层) 协议版本号(4位) 字长指数(4位) 控制字(8位,必须是载荷控制字) 加强控制开关(1位) 原定阻塞优先级(7位,由编码器决定,转发时参考) 后续长度(24位、其余均为80位) 数据标识(64位~2M位,随遇数) 防伪标记(64位~2M位,数据的散列的加密) 播放状态1(加强控制时,3位,已停止、预载、可预览、) (准备播放或暂停、卡顿中、降级仍卡顿、失联、其他) 播放状态2(加强控制时,5位,播速,其中8表示1倍速) 超时计数器(加强控制时,120位,可增可减) (第一次超时抛弃内容,第二次超时抛弃传送记录) 控制容器(后续长度减除可变部分,默认加密传输) |
指令块 | 协议标识(1位,必须为0) 指令号(5位) 字长指数(3位) 后续长度(8位、16位、32位、64位) 指令容器 |
说明 | 允许/强烈期待直接在链路层之上实现本协议 由转发节点核实或决定申请者对目标网络的访问权限 穿透现有网络间接实现本协议时,推荐寄生于UDP 可利用代理服务实现对其他网络的访问 |
通常情况下,报文在传递过程中进行四层封装:首发封装(控制层)、转发封装(控制层)、载荷优化封装(队列层)、载荷分段封装(指令块)。
本文直接介绍了该协议的主干部分,详细的说明后续另文补充。