WIRELESS Z PACKET:
i8-version(WZPUnit.getVersion() & 3 | WZPUnit.MAGIC_MASK = 1 & 3 | -48 = 0xD1)
i16-tagmask(WZPTag:HAS_BODY(0x1000)|HAS_RESPONSE_CODE(0x4000)|HAS_EXTRA_HEADER(0x2000))
i16-appId
i16-serviceId
i16-serialId
[, u16-responseCode(Non-zero if exist: ...)]
[, varint32-EXTRA_HEADER_LENGTH(max=16383)]
[, varint32-BODY_LENGTH(max=2097151)]
[, bytes-EXTRA_HEADER]
[, bytes-BODY]

默认ExtraHeader是不压缩的,如果里面要存放压缩方法,也是针对Body的
i16-EXTRA_HEADER_code
varint32-EXTRA_HEADER_length
bytes-EXTRA_HEADER(Byte[]-UTF8_String, byte[]{higher, lower}_Number)

敲定解压缩密钥,如果WZPUnit标记了加密就用这个

处理BODY和EXTRA_HEADER正反过程:
应用数据到WZPUnit-是否压缩(EXTRA_HEADER不需要压缩)-是否需要加密-Socket写流
Socket读流-是否需要解密-是否压缩(EXTRA_HEADER不需要解压)-应用数据到WZPUnit

最新文章

  1. Spark环境搭建遇到的问题
  2. python3安装
  3. java.lang.NoClassDefFoundError:TagSupport
  4. putty如何使用
  5. Java私有构造函数不能阻止继承
  6. oracle权限
  7. android 连续点击退出程序
  8. Python教程:操作数据库,MySql的安装详解
  9. Java学习笔记--集合元素的比较Comparable,Comparator
  10. 目标管理剖析与实践– 献给追梦的人 (转)
  11. getDeclaredFields()和getFields()
  12. HDU 4869 Turn the pokers (2014 多校联合第一场 I)
  13. C++拷贝构造函数总结
  14. C++异常(exception)第一篇--综合讲解
  15. 面向对象+canvas 倒计时
  16. react 事件绑定 es5/es6
  17. Codeforces 101623E English Restaurant - 动态规划
  18. 用chrome和anywhere,配合安卓机搭建最简单的移动端页面测试。
  19. cookie 就是一些字符串信息
  20. iOS UITextfield只允许输入数字和字母,长度限制

热门文章

  1. Html.AntiForgeryToken 防止伪造提交
  2. c++学习重点分析
  3. Manjaro Linux下使用powerline
  4. Java使用apache的开源数据处理框架commons-dbutils完成增删改
  5. (转)十步完全理解 SQL
  6. 关于TP中U方法,在wamp中是绝对路径,在nginx中是相对路径?(坑)
  7. [Python Cookbook] Numpy: Iterating Over Arrays
  8. 这一次,我连 web.xml 都不要了,纯 Java 搭建 SSM 环境!
  9. Elasticsearch本地环境安装和常用操作
  10. (入门SpringBoot)SpringBoot发送邮件(十一)