Database Reference
In-Depth Information
Network Measurement Tools
Debugging RAC network performance issues involves a review of both database-level statistics and network-level
statistics, if database statistics indicate possible network performance issues. It is not possible to discuss every flag
and option in network tools, and so this section discusses important flags for Solaris and Linux platforms. You can
identify the flags in your platform of choice by reviewing man pages or googling for options in the tool.
Ping is useful to validate connectivity to a remote node, traceroute is useful to understand the route taken by
a network packet between the nodes, and netstat is useful to understand various network-level statistics.
Ping Utility
The ping command sends a packet to a remote IP address, waits for a response from the target IP address, computes
the time difference after receiving the response for a packet, and prints the output. By default, the ping utility uses the
ICMP protocol, a lightweight protocol designed for utilities such as ping.
If there are multiple interfaces in the server, you can specify a specific interface using the -i flag in Solaris. In the
following example, eth3 interface will be used to send a packet to a remote host.
$ /usr/sbin/ping -s -i eth3 169.254.10.68
PING 169.254.10.68: 56 data bytes
64 bytes from 169.254.10.68: icmp_seq=0. time=0.814 ms
64 bytes from 169.254.10.68: icmp_seq=1. time=0.611 ms
...
As RAC databases use UDP predominantly, it is beneficial to specify UDP for a ping test instead of the default
ICMP protocol. In the following example, -U flag is specified to test the reachability using UDP through the eth3
interface. UDP requires a port number, and the ping utility sends packets to ports starting with 33434. Also, -i flag
specifies eth3 interface for this test.
$ /usr/sbin/ping -s -U -i eth3 169.254.10.68
PING 169.254.28.111: 56 data bytes
92 bytes from 169.254.10.68: udp_port=33434. Time=0.463 ms
92 bytes from 169.254.10.68: udp_port=33435. time=0.589 ms
92 bytes from 169.254.10.68: udp_port=33436. time=0.607 ms
...
By default, ping sends a small packet of 56 bytes. Typically, a RAC packet size is much bigger than 56 bytes.
Especially, Jumbo Frame setup requires a bigger packet to be sent to the remote node. In the following example, a
packet of 9,000 bytes is sent by the ping utility, and five packets were transmitted. An acknowledgement of 92 bytes
was received in 0.6 ms. The round trip of these packets took approximately 0.6 ms; that is, latency for a transmission of
9,000 bytes and receipt of 56 bytes took approximately 0.6 ms.
$ /usr/sbin/ping -s -U -i eth3 169.254.10.68 9000 5
PING 169.254.10.68: 9000 data bytes
92 bytes from 169.254.10.68: udp_port=33434. time=0.641 ms
92 bytes from 169.254.10.68: udp_port=33435. time=0.800 ms
92 bytes from 169.254.10.68: udp_port=33436. time=0.832 ms
...
 
Search WWH ::




Custom Search