Bandwidth usage

You can transfer logs between NXLog Agent instances and NXLog Platform in several ways. Some of the modules, such as the TCP and SSL modules, do not provide data compression. On the other hand, the NXLog Transport modules im_batchcompress and om_batchcompress transfer events in compressed and optionally encrypted batches.

The following chart compares the data requirements for the TCP, SSL (with TLSv1.2), and NXLog Transport modules. The dataset consisted of BSD syslog records parsed with the parse_syslog() procedure. The values in this chart reflect the total bi-directional bytes transferred at the packet level. The ratios may vary depending on network conditions and the compressibility of the log data.

NXLog Agent bandwidth usage comparison

As you can see from the chart, transferring logs with the NXLog Transport modules significantly reduces bandwidth usage. The following table further compares sending the same dataset using different methods and modules.

Table 1. Data transfer comparison
Compression method Modules used Event size Diff vs baseline Sender CPU usage Receiver CPU usage EPS sender EPS receiver

None

om_tcp, im_tcp

112

0.00%

141

215.07

83091.8

84169.9

None

om_ssl, im_ssl

301.7

+169.38%

141.34

191.9

33161.4

47482.9

SSLCompression

om_ssl, im_ssl

293.2

+161.79%

138.98

190.69

34497.7

47128.5

Batch compression

om_batchcompress, im_batchcompress

18.4

-83.57%

119.69

181.1

36252.1

77491.8

Compression ratios show that enabling SSL compression yields only a minimal reduction in message size. NXLog Transport fares much better because it compresses data in batches, leading to better compression ratios. For configuration examples using NXLog Transport, see Transfer logs between NXLog Agent instances.

For other strategies to reduce the size of log data, see Filter logs and Trim log events.