JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Using Virtual Networks in Oracle Solaris 11.1     Oracle Solaris 11.1 Information Library
search filter icon
search icon

Document Information

Preface

1.  Network Virtualization and Resource Management in Oracle Solaris

2.  Creating and Administering Virtual Networks in Oracle Solaris

3.  Managing Network Resources in Oracle Solaris

4.  Monitoring Network Traffic and Resource Usage in Oracle Solaris

Overview of Network Traffic Flow

Commands for Monitoring Traffic Statistics

Gathering Statistics About Network Traffic on Links

Obtaining Network Traffic Statistics on Network Devices

Obtaining Network Traffic Statistics on Lanes

Obtaining Network Traffic Statistics on Link Aggregations

Gathering Statistics About Network Traffic on Flows

Configuring Network Accounting for Network Traffic

How to Set Up Network Accounting

How to Obtain Historical Statistics on Network Traffic

Index

Gathering Statistics About Network Traffic on Links

You can use the following variants of the dlstat command to gather network traffic information.

Command
Information Provided
dlstat [link]

dlstat -rt [link]

dlstat show-link [link]

Inbound and outbound traffic statistics per lane
dlstat show-link -rt [link]
Inbound and outbound traffic statistics per ring per lane
dlstat show-phys [link]
Inbound and outbound traffic statistics per network physical device
dlstat show-phys -rt [link]
Inbound and outbound traffic statistics per ring per network physical device
dlstat show-aggr [link]

dlstat show-aggr -rt [link]

Inbound and outbound traffic statistics per port per aggregation

You can use either the -r option or the -t option to the dlstat command to restrict the statistics information to the receive side or the transmit side, respectively. Moreover, you can use other options with the dlstat command aside. For more information, refer to the dlstat(1M) man page.

Obtaining Network Traffic Statistics on Network Devices

The dlstat show-phys subcommand provides statistics that refer to the physical network device. As shown in Figure 4-1, the subcommand operates on the hardware rings. which are on the device layer of the network stack. The equivalent subcommand dladm show-phys also operates on the same level of the stack. Compare Figure 4-1 with the network stack illustrated in Oracle Solaris Implementation in Introduction to Oracle Solaris 11 Networking.

The following example shows statistics for all the physical links on the system:

# dlstat show-phys
 LINK   IPKTS    RBYTES    OPKTS     OBYTES
net0    2.14M   257.48M    3.19M    210.88M
net1    1.15M   120.32M    1.00M     98.70M
net2    1.10M   110.10M    1.28     183.00M
...

The output shows both incoming and outgoing traffic statistics on each link on the system. The number of packets and their byte sizes are displayed.

The following example shows receive-side statistics on each of net0's hardware rings:

# dlstat show-phys -r net0
 LINK   TYPE      ID   INDEX    IPKTS     RBYTES
net0      rx   local      --        0          0
net0      rx      hw       1        0          0
net0      rx      hw       2    1.73M      2.61G
net0      rx      hw       3        0          0
net0      rx      hw       4    8.44M     12.71G
net0      rx      hw       5    5.68M      8.56G
net0      rx      hw       6    4.99M      7.38G
net0      rx      hw       7        0          0

In the second output, the net0 device has eight receive rings, which are identified under the INDEX field. An even distribution of packets per ring is an ideal configuration that indicates that the rings are properly allocated to links according to the links' load. An uneven distribution might indicate a disproportionate distribution of rings per link. The resolution of the uneven distribution depends on whether the NIC supports dynamic ring allocation. If it does, you can redistribute rings per link to process packets more evenly. For more information about dynamic ring allocation, see Working With Clients, Transmit Rings, and Receive Rings.

The following example shows information about traffic that is being received on the devices every second. The interval is specified by using the -i option. To stop the display from refreshing, press Control-C.

# dlstat show-phys -r -i 1
LINK  TYPE   INDEX     IPKTS    RBYTES
net0    rx       0   101.91K    32.86M
net1    rx       0     9.61M    14.47G
net2    rx       8      336K         0
net0    rx       0         0         0
net1    rx       0    82.13K   123.69M
net2    rx       0         0         0
...
^C

This example shows the usage of the transmit rings for net1 as a network device.

# dlstat show-phys -t net1
LINK TYPE INDEX   OPKTS   OBYTES
net1   tx     0      44    3.96K
net1   tx     1       0        0
net1   tx     2   1.48M  121.68M
net1   tx     3   2.45M  201.11M
net1   tx     4   1.47M  120.82M
net1   tx     5       0        0
net1   tx     6   1.97M  161.57M
net1   tx     7   4.59M  376.21M
net1   tx     8   2.43M  199.24M
net1   tx     9       0        0
net1   tx     10  3.23M  264.69M
net1   tx     11  1.88M  153.96M

Obtaining Network Traffic Statistics on Lanes

The dlstat show-link subcommand provides statistics that refer to the lanes that are configured over the physical link The lanes are constituted by the datalinks. As shown in Figure 4-1, the subcommand operates on the datalink layer of the network stack. The equivalent subcommand dladm show-link also operates on the same level of the stack. Compare Figure 4-1 with the network stack illustrated in Oracle Solaris Implementation in Introduction to Oracle Solaris 11 Networking.

The following example shows receive-side traffic statistics for vnic0.

# dlstat show-link -r vnic0
 LINK  TYPE    ID  INDEX    IPKTS   RBYTES    INTRS    POLLS  IDROPS
vnic0    rx    hw      2    1.73M    2.61G    1.33M  400.22K       0
vnic0    rx    hw      4    8.44M   12.71G    4.35M    4.09M       0

The previous output shows traffic statistics for the lane vnic0. This lane has been allocated two receive rings (ring 2 and ring 4) for exclusive use. The output shows how these two rings are used for incoming network traffic. However, the data might also reflect the implementation of other resource allocations, such as bandwidth limits and priority processing.

Suppose the following information is displayed for net0, the primary lane:

# dlstat show-link -r net0
LINK TYPE    ID INDEX   IPKTS  RBYTES    INTRS  POLLS  IDROPS
net0   rx local    --       0       0        0      0       0
net0   rx    sw    -- 794.28K   1.19G  794.28K      0       0
...

Based on the output, one of the Rx rings, ring 0, is being shared with another client. Rings are shared if secondary clients are configured without any allocated rings. Ring might not be allocated for the following reasons:

The statistics for interrupt (INTRS) and drops (*DROPS) are also significant. Low interrupt numbers and zero packet drops indicate greater efficiency in performance. If the interrupt numbers or packet drop numbers are high, then you might need to add more resources to the lane.

The following example shows statistics about outbound packets on the rings used by net1, the primary lane. The output shows that net1 uses all of the Tx rings.

# dlstat show-link -t net1
LINK   TYPE   ID  INDEX    OPKTS    OBYTES   ODROPS
net1     tx   hw      0       32     1.44K        0
net1     tx   hw      1        0         0        0
net1     tx   hw      2    1.48M    97.95M        0
net1     tx   hw      3    2.45M   161.87M        0
net1     tx   hw      4    1.47M    97.25M        0
net1     tx   hw      5        0       276        0
net1     tx   hw      6    1.97M   130.25M        0
net1     tx   hw      7    4.59M   302.80M        0
net1     tx   hw      8    2.43M   302.80M        0
net1     tx   hw      9        0         0        0
net1     tx   hw      10   3.23M   213.05M        0
net1     tx   hw      11   1.88M   123.93M        0

The following command shows the usage of receive-side statistics for the link net1. In addition, with the use of the -F option in the command, the output also provides fanout information. Specifically, the fanout count is two (0 and 1). Network traffic that is received on the hardware lane that uses ring 0 is split and passed on across the two fanouts. Likewise, network traffic that is received on the hardware lane that uses ring 1 is also split and divided across the two fanouts.

# dlstat show-link -r -F net1
LINK     ID   INDEX   FOUT   IPKTS
net1  local      --      0       0
net1     hw       0      0  382.47K
net1     hw       0      1        0
net1     hw       1      0  367.50K
net1     hw       1      1  433.24K

Obtaining Network Traffic Statistics on Link Aggregations

The dlstat show-aggr command shows network packet statistics for each aggregation's ports when traffic traverses the aggregation on the system.

# dlstat show-aggr
 LINK            PORT    IPKTS   RBYTES    OPKTS   OBYTES
aggr1              --        0        0        0        0
aggr1            net0        0        0        0        0
aggr1            net1        0        0        0        0

The output indicates the configuration of a link aggregation aggr1 with two underlying links, net0 and net1. As network traffic is received or sent by the system through the aggregation, information about incoming and outgoing packets and their respective sizes is reported for every port. The ports are identified by the underlying links of the aggregation.