]> git.proxmox.com Git - mirror_kronosnet.git/log
mirror_kronosnet.git
8 years agoUpdate TODO
Fabio M. Di Nitto [Sat, 28 Nov 2015 13:42:16 +0000 (14:42 +0100)]
Update TODO

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
8 years ago[PMTUd] Fix crash and calculation when using crypto
Fabio M. Di Nitto [Sat, 28 Nov 2015 08:13:33 +0000 (09:13 +0100)]
[PMTUd] Fix crash and calculation when using crypto

most of the problem was around incorrect typing of variables
and incorrect calculation when using signing without encryption.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
8 years ago[libtap] automatic restore IPv6 address when recovering from MTU flapping
Fabio M. Di Nitto [Fri, 27 Nov 2015 16:38:18 +0000 (17:38 +0100)]
[libtap] automatic restore IPv6 address when recovering from MTU flapping

NOTE: if a user manually changes MTU < 1280, your IPv6 addresses
are gone for good.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
8 years agoUpdate TODO list
Fabio M. Di Nitto [Fri, 27 Nov 2015 14:33:09 +0000 (15:33 +0100)]
Update TODO list

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
8 years agoUpdate TODO list
Fabio M. Di Nitto [Thu, 26 Nov 2015 13:53:20 +0000 (14:53 +0100)]
Update TODO list

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
8 years ago[crypto] align crypto_authenticate_and_decrypt API to crypto_encrypt_and_sign
Fabio M. Di Nitto [Wed, 25 Nov 2015 19:15:22 +0000 (20:15 +0100)]
[crypto] align crypto_authenticate_and_decrypt API to crypto_encrypt_and_sign

2 issues solved by this change:

1) API were different and crypto_authenticate_and_decrypt would trash the
   incoming packet, that we might want to keep for later usage
   (re-switch for example)

2) By using an extre pre-allocated buffer while decrypting incoming packets
   we save a whole memcpy and that reduces latency on crypto communications:

pre-patch:

[root@kronosnet-node1-br0 ~]# ping 192.168.12.2 -f -c 1000 -s 65000
PING 192.168.12.2 (192.168.12.2) 65000(65028) bytes of data.

--- 192.168.12.2 ping statistics ---
1000 packets transmitted, 1000 received, 0% packet loss, time 5302ms
rtt min/avg/max/mdev = 5.102/5.283/22.679/0.947 ms, pipe 3, ipg/ewma 5.307/5.223 ms

post-patch:

[root@kronosnet-node1-br0 ~]# ping 192.168.12.2 -f -c 1000 -s 65000
PING 192.168.12.2 (192.168.12.2) 65000(65028) bytes of data.

--- 192.168.12.2 ping statistics ---
1000 packets transmitted, 1000 received, 0% packet loss, time 5196ms
rtt min/avg/max/mdev = 4.997/5.154/6.661/0.129 ms, ipg/ewma 5.201/5.173 ms

(using aes256 and sha1)

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
8 years ago[send/recv] init recv buffer array only once
Fabio M. Di Nitto [Sun, 22 Nov 2015 14:18:40 +0000 (15:18 +0100)]
[send/recv] init recv buffer array only once

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
8 years ago[internal] define/use PCKT_FRAG_MAX instead of UINT8_MAX
Fabio M. Di Nitto [Sun, 22 Nov 2015 14:01:00 +0000 (15:01 +0100)]
[internal] define/use PCKT_FRAG_MAX instead of UINT8_MAX

makes the code more readable

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
8 years agoFix error message
Fabio M. Di Nitto [Sun, 22 Nov 2015 08:17:37 +0000 (09:17 +0100)]
Fix error message

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
8 years ago[send/recv] use recvmmsg on network sockets
Fabio M. Di Nitto [Sun, 22 Nov 2015 08:12:18 +0000 (09:12 +0100)]
[send/recv] use recvmmsg on network sockets

On my test systems this change reduces the latency of fragmented packets
from 0.27ms to 0.235ms in average. There are still some optimizations
on how buffers can be initialized that could shave some time on this code
path.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
8 years agoUpdate TODO
Fabio M. Di Nitto [Sun, 22 Nov 2015 08:12:04 +0000 (09:12 +0100)]
Update TODO

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
8 years agoUpdate copyright dates
Fabio M. Di Nitto [Wed, 18 Nov 2015 09:36:11 +0000 (10:36 +0100)]
Update copyright dates

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
8 years ago[build] update configure.ac
Fabio M. Di Nitto [Wed, 18 Nov 2015 09:31:00 +0000 (10:31 +0100)]
[build] update configure.ac

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
8 years ago[send/recv] fix data filling in the frag code
Fabio M. Di Nitto [Mon, 16 Nov 2015 06:20:13 +0000 (07:20 +0100)]
[send/recv] fix data filling in the frag code

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
8 years ago[send/recv] use sendmmsg to reduce latency
Fabio M. Di Nitto [Mon, 16 Nov 2015 06:11:34 +0000 (07:11 +0100)]
[send/recv] use sendmmsg to reduce latency

On my test systems this change reduces the latency from 0.7ms to 0.25ms
when sending 65000 bytes packet and using internal re-assembly code.

Internally use N buffers to split the incoming data and reduce by N frags
the amount of memcpy between kernel and userland.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
8 years ago[internal] reduce memory footprint further down
Fabio M. Di Nitto [Mon, 16 Nov 2015 04:16:25 +0000 (05:16 +0100)]
[internal] reduce memory footprint further down

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[global] reduce memory footprint by a long shot
Fabio M. Di Nitto [Sun, 20 Sep 2015 11:30:19 +0000 (13:30 +0200)]
[global] reduce memory footprint by a long shot

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[send/recv] add simplistic packet re-assembly code
Fabio M. Di Nitto [Sat, 24 Oct 2015 05:23:31 +0000 (07:23 +0200)]
[send/recv] add simplistic packet re-assembly code

this will probably explode if you are using multiple links
in round-robin or active-active mode.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years agoRevert "[global] reduce memory footprint by a long shot"
Fabio M. Di Nitto [Wed, 21 Oct 2015 13:48:37 +0000 (15:48 +0200)]
Revert "[global] reduce memory footprint by a long shot"

This reverts commit 4b4290a2fafbeb4d08bf489caa35ea4c205b18b9.

9 years ago[global] reduce memory footprint by a long shot
Fabio M. Di Nitto [Sun, 20 Sep 2015 11:30:19 +0000 (13:30 +0200)]
[global] reduce memory footprint by a long shot

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[threads] cleanup header
Fabio M. Di Nitto [Sun, 20 Sep 2015 10:05:23 +0000 (12:05 +0200)]
[threads] cleanup header

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[cleanup] remove unused headers around
Fabio M. Di Nitto [Sun, 20 Sep 2015 08:53:26 +0000 (10:53 +0200)]
[cleanup] remove unused headers around

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[threads] split send recv threads in separate file
Fabio M. Di Nitto [Sun, 20 Sep 2015 08:38:42 +0000 (10:38 +0200)]
[threads] split send recv threads in separate file

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[threads] split dsthandler thread in separate file
Fabio M. Di Nitto [Sun, 20 Sep 2015 08:34:10 +0000 (10:34 +0200)]
[threads] split dsthandler thread in separate file

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[threads] split pmtud thread in separate file
Fabio M. Di Nitto [Sun, 20 Sep 2015 08:22:02 +0000 (10:22 +0200)]
[threads] split pmtud thread in separate file

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[threads] split heartbeat thread in separate file
Fabio M. Di Nitto [Sun, 20 Sep 2015 08:16:17 +0000 (10:16 +0200)]
[threads] split heartbeat thread in separate file

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[threads] implement outgoing pckt fragmentation based on PMTUd
Fabio M. Di Nitto [Sun, 20 Sep 2015 06:36:38 +0000 (08:36 +0200)]
[threads] implement outgoing pckt fragmentation based on PMTUd

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years agoUpdate TODO list
Fabio M. Di Nitto [Wed, 16 Sep 2015 05:01:20 +0000 (07:01 +0200)]
Update TODO list

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[global] restrict max packet size to 65536 bytes
Fabio M. Di Nitto [Wed, 16 Sep 2015 04:10:09 +0000 (06:10 +0200)]
[global] restrict max packet size to 65536 bytes

and apply workaround in data buf allocation while we cleanup
the whole buffer allocation handling situation

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[test] disable crypto rekey test for now
Fabio M. Di Nitto [Tue, 15 Sep 2015 18:34:33 +0000 (20:34 +0200)]
[test] disable crypto rekey test for now

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[knetd] fix libqb logging filter
Fabio M. Di Nitto [Tue, 15 Sep 2015 09:35:49 +0000 (11:35 +0200)]
[knetd] fix libqb logging filter

Thanks to Chrissie for the awesome work as usual

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[test] fix ping_test data print and add some more info
Fabio M. Di Nitto [Tue, 15 Sep 2015 09:11:23 +0000 (11:11 +0200)]
[test] fix ping_test data print and add some more info

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[handle] add missing include
Fabio M. Di Nitto [Sun, 13 Sep 2015 08:57:10 +0000 (10:57 +0200)]
[handle] add missing include

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[handle] fix knet_send sock handling to use correct data flow
Fabio M. Di Nitto [Sun, 13 Sep 2015 08:01:58 +0000 (10:01 +0200)]
[handle] fix knet_send sock handling to use correct data flow

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[handle] fix init order to have more debug in case of sockpair error
Fabio M. Di Nitto [Sun, 13 Sep 2015 07:56:34 +0000 (09:56 +0200)]
[handle] fix init order to have more debug in case of sockpair error

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[commodity] add knet_send/knet_recv api calls
Fabio M. Di Nitto [Sun, 13 Sep 2015 07:45:50 +0000 (09:45 +0200)]
[commodity] add knet_send/knet_recv api calls

based on readv/writev man page, it is highly discouraged to mix
different kind of write/read operations on a given fd (for example
a read with a writev).

since not many finds using iovec that pleasent, those 2 functions
do wrap the more common buff/buff_len calls into iovec implementations.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[handle] API change warning: add support for knet_handle_new to create proper sockpairs
Fabio M. Di Nitto [Sun, 13 Sep 2015 06:26:01 +0000 (08:26 +0200)]
[handle] API change warning: add support for knet_handle_new to create proper sockpairs

this is a small facility for applications that don't want/need to create
socketpairs to read/write data to/from knet and avoids lots of duplicated
socket management on the client side.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[threads] add warning on fragmented packets
Fabio M. Di Nitto [Wed, 9 Sep 2015 04:34:11 +0000 (06:34 +0200)]
[threads] add warning on fragmented packets

also prepare ping_test for it

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[ping] fix sockpair creation to deal with sequence of packets and not streaming
Fabio M. Di Nitto [Tue, 8 Sep 2015 13:52:49 +0000 (15:52 +0200)]
[ping] fix sockpair creation to deal with sequence of packets and not streaming

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[threads] use iovec calls to read/write from datafd
Fabio M. Di Nitto [Tue, 8 Sep 2015 13:34:43 +0000 (15:34 +0200)]
[threads] use iovec calls to read/write from datafd

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[cosmetic] rename net_fd to datafd
Fabio M. Di Nitto [Tue, 8 Sep 2015 12:54:47 +0000 (14:54 +0200)]
[cosmetic] rename net_fd to datafd

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[handle] add missing errno on failure
Fabio M. Di Nitto [Sun, 6 Sep 2015 07:26:42 +0000 (09:26 +0200)]
[handle] add missing errno on failure

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[libtap] change error check code to avoid a segfault and make it more readable
Fabio M. Di Nitto [Sun, 6 Sep 2015 05:55:57 +0000 (07:55 +0200)]
[libtap] change error check code to avoid a segfault and make it more readable

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[listener] fix 2 cosmetic checks and keep around a useful debugging fn
Fabio M. Di Nitto [Tue, 21 Apr 2015 08:23:38 +0000 (10:23 +0200)]
[listener] fix 2 cosmetic checks and keep around a useful debugging fn

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[threads] make ping error message more verbose
Fabio M. Di Nitto [Tue, 21 Apr 2015 08:23:21 +0000 (10:23 +0200)]
[threads] make ping error message more verbose

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years agoUpdate TODO list
Fabio M. Di Nitto [Tue, 21 Apr 2015 08:21:46 +0000 (10:21 +0200)]
Update TODO list

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years agolibtap: don't close pipe fd twice
Christine Caulfield [Tue, 21 Apr 2015 07:48:05 +0000 (08:48 +0100)]
libtap: don't close pipe fd twice

libtap was closing the parent's pipe() fd twice. Sometimes, between the
first and second close, that fd gets reopened by the logging thread as
PF_LOCAL, and used for logging.

Then libtap wakes up again after the fork and closes the fd thinking
it's its pipe fd. knet then opens it again as AF_INET for pinging.

libqb logging then errors on a sendto() and closes it AGAIN, and reopens
it as a PF_LOCAL logging fd. Ping then has a brain haemorrage next time
it comes round to calling sendto().

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
9 years agoUpdate TODO list
Fabio M. Di Nitto [Fri, 20 Mar 2015 07:03:16 +0000 (08:03 +0100)]
Update TODO list

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[host] move dst cache updates to the right logging subsystem
Fabio M. Di Nitto [Thu, 19 Mar 2015 12:29:01 +0000 (13:29 +0100)]
[host] move dst cache updates to the right logging subsystem

and return error codes

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years agoUpdate TODO list
Fabio M. Di Nitto [Thu, 19 Mar 2015 05:52:02 +0000 (06:52 +0100)]
Update TODO list

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[host] create dst_cache sync and async functions and fix link lookup race condition
Fabio M. Di Nitto [Thu, 19 Mar 2015 05:26:13 +0000 (06:26 +0100)]
[host] create dst_cache sync and async functions and fix link lookup race condition

Prior to this change, there was a potential race condition in which, when shutting
down a link, the destination cache would not be updated in time and pckts would
be lost in an invalid socket.

This change introduced a sync version of the dst cache update and protects
outgoing traffic socket lookup with a mutex.

The only downside of this change is that, in future, when we will introduce
complex switching algorithms, we might have to spend a bit more time
recalculating the network topology on link shutdown and halt traffic switching.

Pro is that we have a smaller gap in lost traffic when reconfiguring the local
node.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[threads] simplify code to send data to links
Fabio M. Di Nitto [Wed, 18 Mar 2015 09:43:12 +0000 (10:43 +0100)]
[threads] simplify code to send data to links

in preparation to remove race condition in _dst_cache update,
simplify the access path to common code

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] fix regression in macro expansions
Fabio M. Di Nitto [Wed, 18 Mar 2015 09:40:47 +0000 (10:40 +0100)]
[onwire] fix regression in macro expansions

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] introduce khpi_link_status_ defines to make code simpler to parse
Fabio M. Di Nitto [Thu, 12 Mar 2015 05:02:41 +0000 (06:02 +0100)]
[onwire] introduce khpi_link_status_ defines to make code simpler to parse

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] add define for knet_hostinfo structures size
Fabio M. Di Nitto [Wed, 11 Mar 2015 11:19:18 +0000 (12:19 +0100)]
[onwire] add define for knet_hostinfo structures size

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] rename kf_plink/kf_psize/kf_pdata to their respective more descriptive versions
Fabio M. Di Nitto [Tue, 10 Mar 2015 17:13:45 +0000 (18:13 +0100)]
[onwire] rename kf_plink/kf_psize/kf_pdata to their respective more descriptive versions

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] rename kf_link and kf_time to their respective more descriptive versions
Fabio M. Di Nitto [Tue, 10 Mar 2015 17:07:56 +0000 (18:07 +0100)]
[onwire] rename kf_link and kf_time to their respective more descriptive versions

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] rename kf_seq_num and kf_data to their respective more descriptive versions
Fabio M. Di Nitto [Tue, 10 Mar 2015 16:51:16 +0000 (17:51 +0100)]
[onwire] rename kf_seq_num and kf_data to their respective more descriptive versions

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] add comment
Fabio M. Di Nitto [Tue, 10 Mar 2015 16:47:39 +0000 (17:47 +0100)]
[onwire] add comment

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] more cleanup around _SIZE define usage
Fabio M. Di Nitto [Tue, 10 Mar 2015 14:47:13 +0000 (15:47 +0100)]
[onwire] more cleanup around _SIZE define usage

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] rename various KNET_FRAME_ definitions to KNET_HEADER_
Fabio M. Di Nitto [Mon, 9 Mar 2015 07:11:18 +0000 (08:11 +0100)]
[onwire] rename various KNET_FRAME_ definitions to KNET_HEADER_

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] cleanup and use defines
Fabio M. Di Nitto [Mon, 9 Mar 2015 05:29:15 +0000 (06:29 +0100)]
[onwire] cleanup and use defines

make it easier to understand values and usage of other status info

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] rename link_up_down struct to knet_hostinfo_payload_link_status
Fabio M. Di Nitto [Mon, 9 Mar 2015 05:18:00 +0000 (06:18 +0100)]
[onwire] rename link_up_down struct to knet_hostinfo_payload_link_status

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] rename knet_hinfo_data struct to knet_hostinfo
Fabio M. Di Nitto [Mon, 9 Mar 2015 05:10:09 +0000 (06:10 +0100)]
[onwire] rename knet_hinfo_data struct to knet_hostinfo

and add comments around the various fields

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] add comment in ifout section
Fabio M. Di Nitto [Sun, 8 Mar 2015 08:50:43 +0000 (09:50 +0100)]
[onwire] add comment in ifout section

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] start cleaning host_info data structures
Fabio M. Di Nitto [Sun, 8 Mar 2015 06:39:49 +0000 (07:39 +0100)]
[onwire] start cleaning host_info data structures

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[debug] add tool to print out network pckt header size
Fabio M. Di Nitto [Sun, 8 Mar 2015 06:26:56 +0000 (07:26 +0100)]
[debug] add tool to print out network pckt header size

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] clenaup knet_header_payload_data structure naming
Fabio M. Di Nitto [Sun, 8 Mar 2015 06:05:05 +0000 (07:05 +0100)]
[onwire] clenaup knet_header_payload_data structure naming

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] clenaup knet_header_payload_ping structure naming
Fabio M. Di Nitto [Sun, 8 Mar 2015 05:56:04 +0000 (06:56 +0100)]
[onwire] clenaup knet_header_payload_ping structure naming

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[cleanup] move some values from int to unsigned int
Fabio M. Di Nitto [Sat, 7 Mar 2015 21:53:03 +0000 (22:53 +0100)]
[cleanup] move some values from int to unsigned int

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] clenaup knet_header_payload_pmtud structure naming
Fabio M. Di Nitto [Sat, 7 Mar 2015 08:45:06 +0000 (09:45 +0100)]
[onwire] clenaup knet_header_payload_pmtud structure naming

and add more comments

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] add more comments
Fabio M. Di Nitto [Sat, 7 Mar 2015 08:40:46 +0000 (09:40 +0100)]
[onwire] add more comments

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] add extra comments
Fabio M. Di Nitto [Sat, 7 Mar 2015 08:39:41 +0000 (09:39 +0100)]
[onwire] add extra comments

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] cleanup knet_header_payload union
Fabio M. Di Nitto [Sat, 7 Mar 2015 08:37:28 +0000 (09:37 +0100)]
[onwire] cleanup knet_header_payload union

use longer name to make it easier to identify nesting of structures

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] rename knet_frame_data to knet_header_payload
Fabio M. Di Nitto [Sat, 7 Mar 2015 07:44:59 +0000 (08:44 +0100)]
[onwire] rename knet_frame_data to knet_header_payload

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[onwire] rename knet_frame to knet_header
Fabio M. Di Nitto [Sat, 7 Mar 2015 07:30:49 +0000 (08:30 +0100)]
[onwire] rename knet_frame to knet_header

also start renaming variables around to make it easier to understand
the level of nesting and add comments for each field

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[internal] start renaming things to make code look decent
Fabio M. Di Nitto [Sat, 7 Mar 2015 05:55:57 +0000 (06:55 +0100)]
[internal] start renaming things to make code look decent

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[internals] Simplify code maintanance by shuffling around some variables
Fabio M. Di Nitto [Sat, 7 Mar 2015 05:08:05 +0000 (06:08 +0100)]
[internals] Simplify code maintanance by shuffling around some variables

this allows creation of better #define to maintain some parts of the
code related to buffers allocations.

As a bonus, gcc does a better job at packing structs outside of a union
and we save 4 bytes onwire.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[knetd] Fix internal MTU calculation to include tap ethernet frame
Fabio M. Di Nitto [Thu, 5 Mar 2015 12:02:53 +0000 (13:02 +0100)]
[knetd] Fix internal MTU calculation to include tap ethernet frame

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[PMTUd] fix mutex deadlock on socket error
Fabio M. Di Nitto [Wed, 4 Mar 2015 06:56:43 +0000 (07:56 +0100)]
[PMTUd] fix mutex deadlock on socket error

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[listeners] Use IP_FREEBIND options on sockets
Fabio M. Di Nitto [Wed, 4 Mar 2015 05:32:31 +0000 (06:32 +0100)]
[listeners] Use IP_FREEBIND options on sockets

this allows us to bind to IPs that are not yet on the system and
survive the infamous ifdown/ifup <device> test

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[pingd] fix ping flood on sock errors
Fabio M. Di Nitto [Tue, 3 Mar 2015 12:26:46 +0000 (13:26 +0100)]
[pingd] fix ping flood on sock errors

if we get an error on sendto, we would ping flood the link because
the ping_last timestamp was not being updated.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[libknet] rename tap to send to link
Fabio M. Di Nitto [Tue, 3 Mar 2015 06:51:13 +0000 (07:51 +0100)]
[libknet] rename tap to send to link

plain and simple cleanup

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years agoUpdate TODO list
Fabio M. Di Nitto [Mon, 2 Mar 2015 08:29:10 +0000 (09:29 +0100)]
Update TODO list

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[knetd] add support for pmtud frequency
Fabio M. Di Nitto [Mon, 2 Mar 2015 08:24:13 +0000 (09:24 +0100)]
[knetd] add support for pmtud frequency

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[PMUTd] add call to get pmtud interval value
Fabio M. Di Nitto [Mon, 2 Mar 2015 08:23:30 +0000 (09:23 +0100)]
[PMUTd] add call to get pmtud interval value

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[knetd] Use pmtud values to set tap device MTU
Fabio M. Di Nitto [Mon, 2 Mar 2015 06:47:27 +0000 (07:47 +0100)]
[knetd] Use pmtud values to set tap device MTU

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[PMTUd] fix notification callback to add private data
Fabio M. Di Nitto [Sat, 28 Feb 2015 07:47:45 +0000 (08:47 +0100)]
[PMTUd] fix notification callback to add private data

this is necessary to identify the callback when driving multiple
knet instances within the same daemon.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years agoUpdate TODO list
Fabio M. Di Nitto [Sat, 28 Feb 2015 05:25:15 +0000 (06:25 +0100)]
Update TODO list

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[PMTUd] add support for pmtud_get for who doesn't want notifications
Fabio M. Di Nitto [Mon, 1 Dec 2014 13:45:08 +0000 (14:45 +0100)]
[PMTUd] add support for pmtud_get for who doesn't want notifications

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[PMTUd] add support for PMTUd changes notifications
Fabio M. Di Nitto [Mon, 1 Dec 2014 05:07:28 +0000 (06:07 +0100)]
[PMTUd] add support for PMTUd changes notifications

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
9 years ago[PMTUd] distinguish between link_mtu and data_mtu
Fabio M. Di Nitto [Sun, 30 Nov 2014 15:24:35 +0000 (16:24 +0100)]
[PMTUd] distinguish between link_mtu and data_mtu

link_mtu is the pure MTU over the link and doesn't account for knet headers.
data_mtu is what can be really transmitted onwire by the application.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
10 years ago[PMTUd] add support for timer config and fix critical shutdown deadlock in condwait
Fabio M. Di Nitto [Thu, 23 Oct 2014 05:26:11 +0000 (07:26 +0200)]
[PMTUd] add support for timer config and fix critical shutdown deadlock in condwait

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
10 years ago[PMTUD] change error message
Fabio M. Di Nitto [Thu, 23 Oct 2014 04:21:13 +0000 (06:21 +0200)]
[PMTUD] change error message

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
10 years ago[PMTUd] fix scary message at startup
Fabio M. Di Nitto [Thu, 23 Oct 2014 04:18:23 +0000 (06:18 +0200)]
[PMTUd] fix scary message at startup

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
10 years ago[PMTUD] fix threads to work with crypto
Fabio M. Di Nitto [Tue, 21 Oct 2014 10:12:30 +0000 (12:12 +0200)]
[PMTUD] fix threads to work with crypto

temporary disable re-keying test as it seems to be break PMTUd

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
10 years ago[PMTUD] change variable names to make it easier to read
Fabio M. Di Nitto [Mon, 20 Oct 2014 04:09:08 +0000 (06:09 +0200)]
[PMTUD] change variable names to make it easier to read

still doesn't work with crypto enable, but part of the code is getting
ready for it.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
10 years ago[nss] fix calculation for crypto header to include SALT_SIZE
Fabio M. Di Nitto [Fri, 29 Aug 2014 11:08:56 +0000 (13:08 +0200)]
[nss] fix calculation for crypto header to include SALT_SIZE

and propagate block size up in the layers to allow PMTUd thread
to round buffers and do crypted PMTUd packets.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
10 years ago[link] add rudimentary PMTUD support.
Fabio M. Di Nitto [Thu, 28 Aug 2014 15:14:47 +0000 (17:14 +0200)]
[link] add rudimentary PMTUD support.

1) It won't work with crypto enable yet
2) values are not really used yet for anything
3) no API calls implemented yet

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
10 years ago[listener] check setsockopts return codes
Fabio M. Di Nitto [Mon, 11 Aug 2014 17:39:56 +0000 (19:39 +0200)]
[listener] check setsockopts return codes

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>