NAME¶
rds-gen —
write data from a file to an
RDS socket
rds-sink —
write data from an
RDS socket to a file
SYNOPSIS¶
rds-gen |
[-s
source_address:source_port]
[-d destination_address:destination_port]
[-f input_file]
[-m message_size]
[-l total_bytes]
[-i interval]
rds-sink |
[-s
listen_address:listen_port]
[-f output_file]
[-i interval]
|
|
DESCRIPTION¶
The
rds-gen and
rds-sink utilities are used
to stream data through RDS sockets. rds-gen reads data from a file descriptor
and sends it as messages down an RDS socket. rds-sink receives messages from
an RDS socket and writes it to a file descriptor.
The following options are shared between rds-gen and rds-sink:
- -s
address:port
- Binds the RDS socket to the given address and port. rds-gen
will send messages from this address and port. rds-sink will receive
messages sent to this address and port.
- -f
file
- rds-gen will read data from this file and rds-sink will
write data to this file. If '-' is given as the filename then rds-gen will
use standard input and rds-sink will use standard output.
- -i
interval_seconds
- An iterative summary of the number and size of messages
that are sent and received is written to standard error at this
interval.
In addition, rds-gen supports the following options:
- -d
address:port
- Messages are sent to this destination address and port. If
this option is specified multiple times then the messages are sent to each
destination address in a round-robin fashion.
- -m
message_size
- Specifies the size of the messages that are sent down the
RDS socket. The default message size is 4k. The message size must not be
greater than the buffer size.
- -l
total_bytes
- Specifies the number of bytes that will be sent out the
socket before rds-gen exits. If this is not specified and rds-gen was
given a source file then it will run until it gets EOF from the file. If
no file was given and this option is not specified then rds-gen will send
data indefinitely.
EXAMPLES¶
rds-gen on host src sends infinite data to rds-sink on dest who prints out the
amount of data it receives every second.
$ rds-sink -s dest:22222 -i 1
$ rds-gen -s src:11111 -d
dest:22222
Read 100M from /dev/zero on src and write it to /dev/null on dest, printing
stats on both sides every minute.
$ rds-sink -s dest:22222 -f /dev/null -i
60
$ rds-gen -s src:11111 -f /dev/zero -d
dest:22222 -i 60
Watch rds-gen write data as fast as it can into a local black hole because there
is no bound receiving socket.
$ rds-gen -s src:11111 -d localhost:31337 -i
1