第四章 序列化与反序列化协议
第五章 协议栈
5.3 可靠性设计
- 客户端连接超时
客户端重连机制
为了保证服务端能够有充足的时间释放句柄资源,在首次断链时客户端需要等待INTERVAL时间之后再发起重连,而不是失败后就立即重连。
客户端重复握手保护
当客户端握手成功之后,在链路处于正常状态下,不允许客户端重复握手,以防止客户端在异常状态下反复重连导致句柄资源被耗尽。
消息缓存重发
- 心跳机制
5.4 安全性设计
为了保证整个集群环境的安全,内部长连接采用基于IP地址的安全认证机制,服务端握手请求消息的IO地址进行合法校验:如果在白名单之内,则校验通过,否则拒绝对方请求。
总结
协议描述了分布式服务框架的通信契约,序列化和反序列化框架用于协议消息对象和二进制数组之间的相互转换,通信框架在技术上承载协议,协议要落地,需要依赖通信框架提供的基础通信能力。