freebsd-dev/sbin
Pawel Jakub Dawidek 7be67fe3d1 Reimplement ggatec/ggated applications.
Change communication protocol to be much more resistant on network
problems and to allow for much better performance.

Better performance is achieved by creating two connections between
ggatec and ggated one for sending the data and one for receiving it.
Every connection is handled by separeted thread, so there is no more
synchronous data flow (send and wait for response), now one threads
sends all requests and another receives the data.

Use two threads in ggatec(8):
- sendtd, which takes I/O requests from the kernel and sends them to the
  ggated daemon on the other end;
- recvtd, which waits for ggated responses and forwards them to the kernel.

Use three threads in ggated(8):
- recvtd, which waits for I/O requests and puts them onto incoming queue;
- disktd, which takes requests from the incoming queue, does disk operations
  and puts finished requests onto outgoing queue;
- sendtd, which takes finished requests from the outgoing queue and sends
  responses back to ggatec.

Because there were major changes in communication protocol, there is no
backward compatibility, from now on, both client and server has to run
on 5.x or 6.x (or at least ggated should be from the same FreeBSD version
on which ggatec is running).

For Gbit networks some buffers need to be increased. I use those settings:
kern.ipc.maxsockbuf=16777216
net.inet.tcp.sendspace=8388608
net.inet.tcp.recvspace=8388608
and I use '-S 4194304 -R 4194304' options for both, ggatec and ggated.

Approved by:	re (scottl)
2005-07-08 21:28:26 +00:00
..
adjkerntz Expand *n't contractions. 2005-02-13 22:25:33 +00:00
atacontrol Open devices RDONLY for ioctls. That makes it work on open devices to which 2005-06-06 20:46:51 +00:00
atm Cleanups for gcc4: 2005-05-02 10:31:27 +00:00
badsect Expand *n't contractions. 2005-02-13 22:25:33 +00:00
bsdlabel Scheduled mdoc(7) sweep. 2005-01-10 16:17:34 +00:00
camcontrol Markup fixes. 2005-06-14 11:24:56 +00:00
ccdconfig Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
clri Give variable an initial value. Use errx() instead of fprintf(). 2005-05-29 16:07:10 +00:00
comcontrol Sort sections. 2005-01-18 10:09:38 +00:00
conscontrol Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
devd Ignore sigpipe so we can properly detach clients to the pipe. 2005-05-16 20:51:46 +00:00
devfs Markup fixes. 2005-06-14 11:24:56 +00:00
dhclient Don't complain when we receive smtp, pop, nntp, www, finger, and irc 2005-06-30 05:50:52 +00:00
dmesg WARNS=6 cleanup: 2005-01-17 13:56:46 +00:00
dump Make gcc4 happy by making consistent signedness. 2005-05-02 10:00:39 +00:00
dumpfs Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
dumpon Sort sections. 2005-01-18 10:09:38 +00:00
fdisk cosmetic changes. 2005-05-01 09:50:02 +00:00
fdisk_pc98 - Merged some missing changes from fdisk/fdisk.c. 2005-05-01 10:08:35 +00:00
ffsinfo Grammatical improvement. 2005-04-08 10:32:22 +00:00
fsck Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
fsck_ffs Make background fsck based summary adjustments actually work by 2005-03-07 08:42:49 +00:00
fsck_msdosfs Prefer the __printflike() macro to GCC's __attribute__ stuff. 2005-03-09 10:10:51 +00:00
fsdb Reword a sentence to conform with our mdoc(7) style. 2005-02-12 23:23:53 +00:00
fsirand Avoid casts as lvalues. 2004-07-28 05:59:22 +00:00
gbde gbde(8) is also rejndael user. 2005-03-11 22:07:04 +00:00
geom Remove trailing spaces. 2005-04-29 07:57:50 +00:00
ggate Reimplement ggatec/ggated applications. 2005-07-08 21:28:26 +00:00
gpt Markup fixes. 2005-06-14 11:24:56 +00:00
growfs Don't define FS_DEBUG by default, as this causes growfs to write debugging 2005-03-31 04:10:31 +00:00
gvinum Start the dreaded NOFOO -> NO_FOO conversion. 2004-12-21 08:47:35 +00:00
idmapd Remove dead code. 2005-04-14 20:27:30 +00:00
ifconfig add pureg/-pureg parameter for controlling pureg ap mode support 2005-07-06 15:39:11 +00:00
init Sort sections. 2005-01-18 10:09:38 +00:00
ip6fw Expand *n't contractions. 2005-02-13 22:25:33 +00:00
ipf Fix the contents of the underneath .depend files and "make checkdpadd". 2005-05-17 14:29:06 +00:00
ipfw Bump document date. Remove EOL whitespace introduced in previous 2005-07-01 10:04:33 +00:00
kldconfig Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
kldload Added the EXIT STATUS section where appropriate. 2005-01-17 07:44:44 +00:00
kldstat Synchronize program's usage() with manpage's SYNOPSIS. 2005-05-21 07:08:32 +00:00
kldunload - Correctly spell MOD_QUIESCE 2005-02-09 22:06:16 +00:00
ldconfig Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
mca Start the dreaded NOFOO -> NO_FOO conversion. 2004-12-21 08:47:35 +00:00
md5 Belatedly update the md5(1) man page to reflect the addition of sha256. 2005-03-10 09:56:39 +00:00
mdconfig We can specify device size in bytes. Document this in usage. 2005-03-01 14:56:49 +00:00
mdmfs Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
mknod Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
mksnap_ffs Make sure we don't pass garbage to the kernel. 2004-12-08 11:54:50 +00:00
mount Remove Xref to mount_hpfs(8), it's not hooked up to the build. 2005-06-16 21:35:33 +00:00
mount_autofs spell "file system" correctly 2005-01-24 20:06:16 +00:00
mount_cd9660 Use MOPT_END in favor of MOPT_NULL, which better describes the purporse 2005-06-10 09:51:43 +00:00
mount_ext2fs Use MOPT_END in favor of MOPT_NULL, which better describes the purporse 2005-06-10 09:51:43 +00:00
mount_hpfs Use MOPT_END in favor of MOPT_NULL, which better describes the purporse 2005-06-10 09:51:43 +00:00
mount_msdosfs Use MOPT_END in favor of MOPT_NULL, which better describes the purporse 2005-06-10 09:51:43 +00:00
mount_nfs Use MOPT_END in favor of MOPT_NULL, which better describes the purporse 2005-06-10 09:51:43 +00:00
mount_nfs4 Use MOPT_END in favor of MOPT_NULL, which better describes the purporse 2005-06-10 09:51:43 +00:00
mount_ntfs Use MOPT_END in favor of MOPT_NULL, which better describes the purporse 2005-06-10 09:51:43 +00:00
mount_nullfs Use MOPT_END in favor of MOPT_NULL, which better describes the purporse 2005-06-10 09:51:43 +00:00
mount_reiserfs Tidy up the markup. 2005-06-24 10:57:53 +00:00
mount_std Use MOPT_END in favor of MOPT_NULL, which better describes the purporse 2005-06-10 09:51:43 +00:00
mount_udf Use MOPT_END in favor of MOPT_NULL, which better describes the purporse 2005-06-10 09:51:43 +00:00
mount_ufs Use MOPT_END in favor of MOPT_NULL, which better describes the purporse 2005-06-10 09:51:43 +00:00
mount_umapfs Use MOPT_END in favor of MOPT_NULL, which better describes the purporse 2005-06-10 09:51:43 +00:00
mount_unionfs Use MOPT_END in favor of MOPT_NULL, which better describes the purporse 2005-06-10 09:51:43 +00:00
natd WARNS=6 and gcc4 cleanup: 2005-05-02 10:13:38 +00:00
newfs When creating a new FFS file system, the block size will indirectly 2005-02-20 06:33:18 +00:00
newfs_msdos Expand *n't contractions. 2005-02-13 22:25:33 +00:00
nfsiod When accessing the sysctl vfs.nfs.iodmax, don't report errors as being 2005-04-07 20:37:04 +00:00
nos-tun Expand *n't contractions. 2005-02-13 22:25:33 +00:00
pfctl Adapt Makefiles for pfctl(8) and authpf(8) to 3.7 sources. 2005-05-03 16:57:38 +00:00
pflogd Fixed misspelling of DPADD. 2004-10-24 14:25:53 +00:00
ping o Store timestamp in network byte order. 2004-09-30 07:35:56 +00:00
ping6 Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
quotacheck Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
rcorder Deal with harmful leading whitespace. 2004-07-02 18:37:52 +00:00
reboot Truncate nextboot.conf file on creation, so existing garbage will be removed. 2005-03-21 23:44:04 +00:00
recoverdisk Start the dreaded NOFOO -> NO_FOO conversion. 2004-12-21 08:47:35 +00:00
restore rscid -> __FBSDID. Mark parameter as __unused when necessary. 2005-05-29 15:57:00 +00:00
route - do DNS lookup for symbolic names specified for a destination 2005-05-23 14:12:32 +00:00
routed Remove #ident directives, they don't exist on the vendor branch anymore. 2005-05-31 20:28:49 +00:00
rtsol Start the dreaded NOFOO -> NO_FOO conversion. 2004-12-21 08:47:35 +00:00
savecore Don't bump bounds every time savecore(8) is run. 2005-06-20 20:01:29 +00:00
sconfig Fix typos. 2004-12-30 01:48:12 +00:00
setkey Fixed the misplaced $FreeBSD$. 2005-02-09 18:07:17 +00:00
shutdown Use new style declarations instead of K&R ones. 2005-01-25 08:40:51 +00:00
slattach Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
spppcontrol Expand contractions. 2005-02-13 23:45:54 +00:00
startslip Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
sunlabel Fix grammar error caused by my previous edit. 2005-03-30 18:54:41 +00:00
swapon Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
sysctl Show descriptions for type CTLTYPE_NODES. 2005-04-13 06:59:07 +00:00
tunefs Expand *n't contractions. 2005-02-13 22:25:33 +00:00
umount Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
Makefile Build mount_reiserfs on every platforms, not only i386 and pc98. 2005-06-21 13:02:45 +00:00
Makefile.inc NOSHARED -> NO_SHARED 2004-12-21 09:59:45 +00:00