My 2 cents for their difference, as being exposed to both knet
(currently) and tipc (several years ago), though limited.
* Network topology - distance among nodes
- knet is flexible among different subnets, and leverage IP routing
infrastructure.
- Well, tipc, by its name, inherits from IPC. The cluster inter node
communication mostly is inside the subnet, no routing in between.
Even further, tipc supports intra node communication. Its capability
and performance is pretty cool.
* in-kernel implementation vs. user space
- knet might be good to work with user space protocol stack, eg. DPDK,
if there is use case push hard for performance.
- tipc is implemented in kernel, naturally good performance for its
application in the kernel land. Though, it does provide userspace
interface.
* cluster membership management
- knet's application, namely, corosync is full fledged together with
pacemaker.
- well, tpic's membership management is limited. Basically, there is no
equivalent implementation in kernel like corosync.
* Community and Industry
- knet is part of Linux HA/ClusterLabs, which helps use cases in
enterprise data centers.
- tipc is part of OpenSAF, which helps use cases in Data
Communication, HPC, etc.
I do think it is a very interesting research topic to merge both
communities at some extent.
Cheers,
Roger
On 12/21/18 7:30 AM, Jan Pokorný wrote:
Hello list,
sometimes, usually when surfing semi-randomly, I get to know about
things that either resemble deja vu to me, or make me feel that
I must have lived in an utter ignorance/tunnel so far.
Now, both thing combined:
https://en.wikipedia.org/wiki/Transparent_Inter-process_Communication
Especially now that I checked the kernel module and userspace utility
lurk on my Linux machine without ever being asked :-)
$ { eval modinfo\ {-F\ description\ ,-F\ version\ ,-F\ license\ }tipc\;
echo; tipc -h; }
TIPC: Transparent Inter Process Communication
2.0.0
Dual BSD/GPL
Transparent Inter-Process Communication Protocol
Usage: tipc [OPTIONS] COMMAND [ARGS] ...
Options:
-h, --help Print help for last given command
Commands:
bearer - Show or modify bearers
link - Show or modify links
media - Show or modify media
nametable - Show nametable
node - Show or modify node related parameters
peer - Peer related operations
socket - Show sockets
Naturally, I am curious how much of an overlap is there, wether there
have been any comparisons/benchmarks conducted, all the these sort of
things incl. whether the was an a priori knowledge, perhaps
inspirational, about this other project.
Kronosnet looks to me more on the pragmatically usable and simple side,
buying also better portability and avoiding complexities (I take the
plugins more like a "look what we can offload from your application
layer" demonstration, yet encryption/auth/integrity protection makes
a great deal of sense there) beyond UDP (which fully suffices when
combined with corosync), something that TIPC covers as well while
providing a lot of other abstractions incl. peer discovery, bells
and unicorns (which might be heavy overkill for that use case).
Any inputs welcome.
_______________________________________________
Users mailing list
Users(a)lists.kronosnet.org
https://lists.kronosnet.org/mailman/listinfo/users