Branch: refs/heads/master
Home: https://github.com/fabbione/kronosnet
Commit: b525ee6a6b74ec752bcab0337a1cdaa53f85dd3f
https://github.com/fabbione/kronosnet/commit/b525ee6a6b74ec752bcab0337a1cda…
Author: Fabio M. Di Nitto <fdinitto(a)redhat.com>
Date: 2017-02-03 (Fri, 03 Feb 2017)
Changed paths:
M kronosnetd/cfg.h
M kronosnetd/etherfilter.c
M kronosnetd/etherfilter.h
M kronosnetd/vty.h
M kronosnetd/vty_cli_cmds.c
M libknet/handle.c
M libknet/host.c
M libknet/internals.h
M libknet/libknet.h
M libknet/link.c
M libknet/link.h
M libknet/onwire.h
M libknet/tests/api_knet_handle_enable_filter.c
M libknet/tests/api_knet_handle_new.c
M libknet/tests/api_knet_host_add.c
M libknet/tests/api_knet_host_enable_status_change_notify.c
M libknet/tests/api_knet_host_get_host_list.c
M libknet/tests/api_knet_host_get_id_by_host_name.c
M libknet/tests/api_knet_host_remove.c
M libknet/tests/api_knet_send_sync.c
M libknet/tests/knet_bench.c
M libknet/tests/test-common.c
M libknet/threads_dsthandler.c
M libknet/threads_heartbeat.c
M libknet/threads_pmtud.c
M libknet/threads_rx.c
M libknet/threads_tx.c
Log Message:
-----------
[global] Reduce the number of support nodes in a knet from 64K to 256
realistically speaking nobody is ever going to deploy more than 32/64 nodes.
NOTE: this commit changes both onwire and API!
Signed-off-by: Fabio M. Di Nitto <fdinitto(a)redhat.com>
Branch: refs/heads/master
Home: https://github.com/fabbione/kronosnet
Commit: d9560ea968e799de6efd3db4152abe3c4e52dc32
https://github.com/fabbione/kronosnet/commit/d9560ea968e799de6efd3db4152abe…
Author: Fabio M. Di Nitto <fdinitto(a)redhat.com>
Date: 2017-02-02 (Thu, 02 Feb 2017)
Changed paths:
A libknet/threads_rx.c
A libknet/threads_rx.h
A libknet/threads_tx.c
A libknet/threads_tx.h
Log Message:
-----------
[send/recv] split code into separate files (step 1)
Signed-off-by: Fabio M. Di Nitto <fdinitto(a)redhat.com>
Commit: 5e33e759fc5ae2b0450030bb98ddf0ed2c7d63ad
https://github.com/fabbione/kronosnet/commit/5e33e759fc5ae2b0450030bb98ddf0…
Author: Fabio M. Di Nitto <fdinitto(a)redhat.com>
Date: 2017-02-02 (Thu, 02 Feb 2017)
Changed paths:
M libknet/Makefile.am
M libknet/handle.c
M libknet/threads_rx.c
M libknet/threads_rx.h
R libknet/threads_send_recv.c
R libknet/threads_send_recv.h
M libknet/threads_tx.c
M libknet/threads_tx.h
Log Message:
-----------
[send/recv] split RX and TX threads in separate files
Signed-off-by: Fabio M. Di Nitto <fdinitto(a)redhat.com>
Compare: https://github.com/fabbione/kronosnet/compare/f0a4bb6e1d74...5e33e759fc5a
Branch: refs/heads/master
Home: https://github.com/fabbione/kronosnet
Commit: 45a6124bfc71d99f74b6810ec8b45cdfa8118d03
https://github.com/fabbione/kronosnet/commit/45a6124bfc71d99f74b6810ec8b45c…
Author: Fabio M. Di Nitto <fdinitto(a)redhat.com>
Date: 2017-02-02 (Thu, 02 Feb 2017)
Changed paths:
M libknet/transport_sctp.c
Log Message:
-----------
[sctp] Allow internal IPC to operate under RX pressure
Signed-off-by: Fabio M. Di Nitto <fdinitto(a)redhat.com>
Commit: f0a4bb6e1d7449d0686ef401a180fa9f113ac6c0
https://github.com/fabbione/kronosnet/commit/f0a4bb6e1d7449d0686ef401a180fa…
Author: Fabio M. Di Nitto <fdinitto(a)redhat.com>
Date: 2017-02-02 (Thu, 02 Feb 2017)
Changed paths:
M TODO
M libknet/handle.c
M libknet/host.c
M libknet/host.h
M libknet/internals.h
M libknet/link.c
M libknet/onwire.h
M libknet/threads_heartbeat.c
M libknet/threads_heartbeat.h
M libknet/threads_send_recv.c
Log Message:
-----------
[send/recv] Unify and simplify usage of seq_num in packets
IMPORTANT: this commit changes onwire protocol in an incompatible way!
- remove the concet of bcast and mcast seq num and use one tx_seq_num
- stop using LINK_UP_DOWN messages to broadcast node seq num and
transfer this data inside heartbeat messages
- LINK_UP_DOWN messages are currently unused but let's keep the
infrastructure around for future
- minor cleanup in host_set_policy to confirm change of switching
policy in the logs
- _link_updown should use async call to host dstcache update
due to locking context
- switch knet_link_set_enable to use write locking context
since the only reason it was read lock, was due to the need
to send LINK_UP_DOWN messages
- knet_link_set_priority can now use dstcache in sync mode
- add seq_num and heartbeat type (timed/untimed) data to heartbeat
messages. timed messages are generated regularly by hb_thread.
untimed messages are generated by the TX thread to sync seq_num
on heavy load across all connected node. (see comments in the code)
- access to the node seq_num is now mutex locked
- abstract ability to send pings from multiple threads
- special case seq_num == 0 to detect a node crash and coming back
to life before hb_thread can detect the disconnection
- forcefully send ping in the TX thread every SEQ_MAX / 8 packets
to allow nodes to sync seq_num
- optimize TX thread code to prepare the outgoing buffers once
vs multiple times. There is still work that can be done here
to optimize sending to multiple host, but this change
is intrusive enough already as it is
- add logic to clear circular buffers when receiving pings
Signed-off-by: Fabio M. Di Nitto <fdinitto(a)redhat.com>
Compare: https://github.com/fabbione/kronosnet/compare/51de9b3f7c29...f0a4bb6e1d74