2010年3月16日星期二

TIPC 协议(转)

转:http://zh.wikipedia.org/wiki/TIPC
TIPC
维基百科,自由的百科全书
Free software主題首頁
透明进程间通信(Transparent Inter-process Communication, TIPC) 是一种用于进程间通信的网络通信协议,原本是为集群间通信特别设计的。它允许设计人员能够创建可以和其它应用快速可靠地通信应用,无须考虑在其它需要通信的应用在机群环境中的位置。
目录 [隐藏]
1 特点
2 实现
3 承载介质
4 相邻节点链路
4.1 链路建立
4.2 链路持续检测
5 逻辑网络拓扑
5.1 地址模式
6 通信语义
7 协议操作
7.1 报丢失检测
7.2 流控
8 历史
9 参考链接
[编辑]特点

TIPC的一些特点:
网络中服务的位置透明
自动发现机制。
可靠传输。
标准套接字接口支持。
无链接传输,面向链接传输以及多播消息机制。
网络事件订阅。
BSD/GPL双重许可证代码。
[编辑]实现

TIPC项目是TIPC协议的开源实现。TIPC项目组正在关注TIPC的演化,并致力于开发一个自由的可移植的TIPC协议实现。
在Linux和VxWorks中,TIPC已经可用,对Solaris的支持则正在开发当中。用C或C++编写的应用能够创建AF_TIPC协议簇的套结字(Socket)来使用TIPC协议,为Perl, Python和Ruby的插件现在也可使用。
TIPC 协议从Linux kernel版本2.6.16开始已经在内核支持,也可以作为模块置于之前版本的内核。其他操作系统中也有支持,包括Wind River VxWorks和Sun Microsystems的Solaris。
[编辑]承载介质

尽管设计之初是要用于任意介质,目前(2007年10月)的实现只支持以太网.VxWorks实现也支持共享存储,可以被操作系统的多个实例支持,在同一硬件上并发运行。

[编辑]相邻节点链路

[编辑]链路建立
一个TIPC节点在所有配置的接口上定期广播Link Request消息,以发现相邻的集群节点。如果一个以前没有建立过链接的节点收到这样的消息,它会返回一个单播的Link Response消息,这样就在这两个节点之间建立了一个链接.
[编辑]链路持续检测
[编辑]逻辑网络拓扑

逻辑网络拓扑与物理拓扑不一定相同。
[编辑]地址模式
和大多数如IP等网络协议不同,地址并不是与接口关联,而是和整个物理节点关联。一个节点也只能拥有整个网络中唯一的一个地址。
地址模式映射到逻辑网络拓扑。易读的标识为方式,其中Z表示Zone,C代表Cluster,N代表(节点)Node.在内部,地址用一个32位的整数表示,其中8位most significant bit表示Zone,后面12位表示Cluster,12位least significant bit表示节点(Node).
[编辑]通信语义

为了适应用后需要,TIPC允许以下4种不同的通信语义:
Unreliable connectionless messages (SOCK_DGRAM). This is comparable to UDP。
可靠无链接消息(SOCK_RDM).
可靠面向链接消息(SOCK_SEQPACKET).
可靠面向链接字节流(SOCK_STREAM)。可以与TCP相比。
[编辑]协议操作

[编辑]报丢失检测
[编辑]流控
[编辑]历史

TIPC协议最初由Jon Paul Maloy在Ericsson开发,在逐步分发到开源社区之前用于该公司的电信级集群应用已有多年。

[编辑]参考链接

TIPC项目组:http://tipc.sourceforge.net
Linux内核:http://www.kernel.org

没有评论: