Oracle 12C introduces new parameters for network connections in sqlnet.ora file
- SQLNET.COMPRESSION
- SQLNET.COMPRESSION_LEVELS
- SQLNET.THRESHOLD
and there are changes for the parameter
- DEFAULT_SDU_SIZE
SQLNET.COMPRESSION
This parameter enable or disable data compression. Must be set to ON for both server and client to enable compression during connection.
SQLNET.COMPRESSION=ON
This parameter is not applied for Oracle Data Guard streaming redo and SecureFiles LOBs (Large Objects).
- ON – enable data compression
OFF – disable data compression. It’s default value
SQLNET.COMPRESSION_LEVELS
This parameter defines compression level. The compression levels are used at time of negotiation to verify which levels are used at both ends, and to select one level.
SQLNET.COMPRESSION_LEVELS=(high)
Only LOW compression level is supported for Database Resident Connection Pooling (DRCP).
- LOW – low CPU usage and low compression ratio. It’s default value
- HIGH – high CPU usage and high compression ratio.
SQLNET.COMPRESSION_THRESHOLD
To specify the minimum data size, in bytes, for which compression is needed. Compression is not be done if the size of the data to be sent is less than this value.
Default 1024 bytes
SQLNET.COMPRESSION_THRESHOLD=1024
DEFAULT_SDU_SIZE
In previous and current release default value is 8KB. In this release the maximum value has been raised from 64KB to 2MB.
Oracle recommends setting this parameter in both the client-side and server-side sqlnet.ora file to ensure the same SDU size is used throughout a connection. When the configured values of client and database server do not match for a session, the lower of the two values is used.
Remember higher value requires more memory. You should consider to change default value when most of the messages are sized larger (or smaller) than 8196 bytes.
Have a fun 🙂
Tomasz