Whilst, was working on a dataguard network performance issue thought should write something on this.
The most important aspect of the dataguard is network transport, and if the undersized or improper configuration may lead to the redo transport issue and production may show you the log synch waits etc.
The following parameters may be tuned if extra performance is required. Before and after testing should be performed to check the results priory to any Live implementation. Pay attention to log_synch waits in AWR.
Properly Configure TCP Send / Receive Buffer Sizes
Gains have been realised when setting send and receive socket buffer settings up to three times the BDP. BDP is product of the network bandwidth and latency. Socket buffer sizes are set using the Oracle Net parameters RECV_BUF_SIZE and SEND_BUF_SIZE, so that the socket buffer size setting affects only Oracle TCP connections. The operating system may impose limits on the socket buffer size that must be adjusted so Oracle can use larger values. For example, on Linux, the parameters net.core.rmem_max and net.core.wmem_max limit the socket buffer size and must be set larger than RECV_BUF_SIZE and SEND_BUF_SIZE.
Set the send and receive buffer sizes at either the value you calculated or 10 MB, whichever is larger.
For example, if bandwidth is 622 Mbits and latency is 30 ms, then you would calculate the minimum size for the RECV_BUF_SIZE and SEND_BUF_SIZE parameters as follows: 622,000,000 / 8 x 0.030 = 2,332,500 bytes. Then, multiply the BDP 2,332,500 x 3 for a total of 6,997,500.In this example, you would set the initialisation parameters as follows as the calculated figure is <10 MB.
RECV_BUF_SIZE=10000000
SEND_BUF_SIZE=10000000
Increase SDU Size
With Oracle Net Services it is possible to control data transfer by adjusting the size of the Oracle Net setting for the session data unit (SDU). Oracle testing has shown that setting the SDU to its maximum value of 65535 can improve performance for the SYNC transport. You can set SDU on a per connection basis using the SDU parameter in the local naming configuration file (TNSNAMES.ORA) and the listener configuration file (LISTENER.ORA), or you can set the SDU for all Oracle Net connections with the profile parameter DEFAULT_SDU_SIZE in the SQLNET.ORA file.
Note that the ASYNC transport uses the new streaming protocol and increasing the
SDU size from the default has no performance benefit.
TCP protocol stack
To preempt delays in buffer flushing in the TCP protocol stack, disable the TCP Nagle
algorithm by setting TCP.NODELAY=YES in the SQLNET.ORA file on both the
primary and standby systems. However with this, you'll end up with a larger number of smaller packets on the network, and if latency is a problem, this will make matters worse, not better.
Hope this helps
Follow Me!!!