Trickles 是一个无状态的高性能网络通讯协议。
传统的操作系统接口和网络协议实现都要求系统必须保持连接双方的状态,这极大的限制了系统的灵活性。而 Tricklets 网络堆栈是无状态的,用于替代 TCP 和伯克利套接字接口。它删除了所有连接状态,包括握手控制、安全和服务端状态。这样的协议可降低内存占用,提升了灵活性,可方便对网络包进行各种转发。这些特性使得 Trickles 非常使用提供网络层服务,例如透明的故障转移、负载均衡、anycast 服务和条纹下载等。
因为协议状态存于客户端和服务器端双方,Trickles 在服务器端对这个状态进行封装并发送给客户端。客户端定期的根据需要将封装后的状态回传给服务器,服务器可根据这个信息生成必要的数据来恢复连接状态。
协议状态封装结构:
Trickles 目前提供了基于 Knoppix 改造的一个 Live CD 版本,该版本的网络内核已经替换为 Trickles ,请点击本介绍底部的 软件下载 按钮。
Trickles 的抽象层: