当前位置:网站首页>TIPC介绍1
TIPC介绍1
2022-07-02 07:33:00 【云端漫步的程狗子】
TIPC作为一个内核模块实现,存在于所有主要的Linux发行版中。它可以配置为通过UDP或直接通过以太网传输消息。消息传递是顺序保证、无丢失和流控制的。延迟时间比任何其他已知协议都要短,而最大吞吐量与TCP相当。
您是否曾经希望即使在cluster 节点之间传输数据时也能使用Unix Domain 套接字?您自己决定要绑定和使用的地址的位置?您不必执行DNS查找和担心IP地址?您不必启动计时器来监视对等套接字的连续存在?但是如果没有这种套接字类型的缺点,比如延迟inode的风险?
欢迎使用透明进程间通信服务,简而言之,TIPC,它为您提供了所有这些,以及更多。
Service Addressing(服务寻址)
A fundamental concept in TIPC is that of Service Addressing which makes it possible for a programmer to chose his own address, bind it to a server socket and let client programs use only that address for sending messages.
TIPC中的一个基本概念是服务寻址,它使程序员可以选择自己的地址,将其绑定到服务器套接字,并让客户端程序仅使用该地址发送消息。
Service Tracking(服务跟踪)
A client wanting to wait for the availablity of a server, uses the Service Tracking mechanism to subscribe for binding and unbinding/close events for sockets with the associated service address.
The service tracking mechanims can also be used for Cluster Topology Tracking, i.e., subscribing for availability/non-availability of cluster nodes.
Likewise, the service tracking mechanims can be used for Cluster Connectivity Tracking, i.e., subscribing for up/down events for individual links between cluster nodes.
想要等待服务器可用性的客户机使用服务跟踪机制为具有关联服务地址的套接字订阅绑定和解除绑定/关闭事件。
服务跟踪机制还可以用于集群拓扑跟踪,即订阅集群节点的可用性/不可用性。
同样地,服务跟踪机制可用于集群连接性跟踪,即,为集群节点之间的单个链路预订向上/向下事件。
Transmission Modes(传输模式)
Using a service address, a client can send datagram messages to a server socket.
Using the same address type, it can establish a connection towards an accepting server socket.
It can also use a service address to create and join a Communication Group, which is the TIPC manifestation of a brokerless message bus.
Multicast with very good performance and scalability is available both in datagram mode and in communication group mode.
使用服务地址,客户机可以向服务器套接字发送数据报(datagram)消息。
使用相同的地址类型,它可以建立到接受服务器套接字的连接。
它还可以使用服务地址创建和加入通信组,这是无代理消息总线的TIPC表现形式。
在数据报模式和通信组模式下,多播都具有很好的性能和可扩展性。
Inter Node Links(节点间链路)
Communication between any two nodes in a cluster is maintained by one or two Inter Node Links, which both guarantee data traffic integrity and monitor the peer node’s availability.
cluster 中任意两个节点之间的通信由一个或两个节点间链路来维持,这两个链路既保证了数据通信的完整性,又监视了对等节点的可用性。
Cluster Scalability(Cluster 可扩展性)
By applying the Overlapping Ring Monitoring algorithm on the inter node links it is possible to scale TIPC clusters up to 1000 nodes with a maintained neighbor failure discovery time of 1-2 seconds. For smaller clusters this time can be made much shorter.
通过在节点间链路上应用重叠环监视算法(Overlapping Ring Moniroring),可以将TIPC集群扩展到1000个节点,保持邻居故障发现时间为1-2秒。对于较小的集群,这个时间可以缩短很多。
Neighbor Discovery
Neighbor Node Discovery in the cluster is done by Ethernet broadcast or UDP multicast, when any of those services are available. If not, configured peer IP addresses can be used.
当这些服务中的任何一个可用时,集群中的邻居节点发现是通过以太网广播或UDP多播来完成的。如果没有,可以使用配置的对等IP地址。
Configuration
在单节点模式下运行TIPC时,不需要任何配置。在集群模式下运行时,TIPC必须至少获得一个节点地址(在linux4.17之前),并告知要连接到哪个接口。“tipc”配置工具使添加和维护更多配置参数成为可能。
Performance(性能)
TIPC消息传输延迟时间优于任何其他已知协议。节点间连接的最大字节吞吐量仍然略低于TCP,而在同一主机上,它们在节点内和容器间的吞吐量上都优于TCP。
边栏推荐
- Appgallery connect scenario development practice - image storage and sharing
- 2022-06-17
- Special topic of binary tree -- acwing 19 The next node of the binary tree (find the successor of the node in the tree)
- 软件产品管理系统有哪些?12个最佳产品管理工具盘点
- 二叉树专题--AcWing 3540. 二叉搜索树建树(实用板子 构建二叉搜索树 并输出前、中、后序遍历)
- 华为快应用中如何实现同时传递事件对象和自定义参数
- UWA report uses tips. Did you get it? (the fourth bullet)
- PCL 投影点云
- Binary tree topic -- Luogu p3884 [jloi2009] binary tree problem (DFS for binary tree depth BFS for binary tree width Dijkstra for shortest path)
- [applinking practical case] share in app pictures through applinking
猜你喜欢
Read H264 parameters from mediarecord recording
JVM之垃圾回收器
How to use ide to automatically sign and debug Hongmeng application
The most detailed MySQL installation tutorial
QT学习日记7——QMainWindow
flink二開,實現了個 batch lookup join(附源碼)
Special topic of binary tree -- acwing 18 Rebuild the binary tree (construct the binary tree by traversing the front and middle order)
UVM learning - build a simple UVM verification platform
Nodejs+express+mysql simple blog building
The URL in the RTSP setup header of the axis device cannot take a parameter
随机推荐
QT学习日记8——资源文件添加
Shell programming 01_ Shell foundation
Special topic of binary tree -- acwing 19 The next node of the binary tree (find the successor of the node in the tree)
UVM factory mechanism
二叉树专题--AcWing 18. 重建二叉树(利用前、中序遍历,构建二叉树)
MySQL lethal serial question 3 -- are you familiar with MySQL locks?
JVM garbage collector
长投学堂上面的账户安全吗?
Win11 arm系统配置.net core环境变量
Use of vscode tool
Read H264 parameters from mediarecord recording
洛谷 P3398 仓鼠找 sugar(树上倍增 lca 判断树中两条路径是否相交 结论)
UVM - usage of common TLM port
使用华为性能管理服务,按需配置采样率
Disassembling Meitu SaaS: driving the plane to change the engine
洛谷 P1892 [BOI2003]团伙(并查集变种 反集)
2022爱分析· 国央企数字化厂商全景报告
【深入浅出玩转FPGA学习2----设计技巧(基本语法)】
主键策略问题
Huawei game failed to initialize init with error code 907135000