Home | History | Annotate | only in /test/stcnv/usr/src/suites/net/nicdrv
Up to higher level directory
NameDateSize
checkenv_def17-Jun-20091.4K
config.vars09-Sep-20094.1K
configure.ksh09-Sep-20096.1K
doc/09-Sep-2009
include/09-Sep-2009
Makefile09-Sep-20091.2K
parameters.env09-Sep-20093.5K
pkgdef/17-Jun-2009
README17-Jun-20099.8K
STC.INFO09-Sep-20093.5K
STF.INFO17-Jun-20091K
tests/17-Jun-2009
tools/09-Sep-2009
unconfigure.ksh09-Sep-20093.1K

README

      1 #
      2 # CDDL HEADER START
      3 #
      4 # The contents of this file are subject to the terms of the
      5 # Common Development and Distribution License (the "License").
      6 # You may not use this file except in compliance with the License.
      7 #
      8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
      9 # or http://www.opensolaris.org/os/licensing.
     10 # See the License for the specific language governing permissions
     11 # and limitations under the License.
     12 #
     13 # When distributing Covered Code, include this CDDL HEADER in each
     14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
     15 # If applicable, add the following below this CDDL HEADER, with the
     16 # fields enclosed by brackets "[]" replaced with your own identifying
     17 # information: Portions Copyright [yyyy] [name of copyright owner]
     18 #
     19 # CDDL HEADER END
     20 #
     21 
     22 #
     23 # Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
     24 # Use is subject to license terms.
     25 #
     26 # ident	"@(#)README	1.6	09/03/04 SMI"
     27 #
     28 
     29 Solaris NIC Driver Test Suite
     30 
     31 ################################################################################
     32 ## Overview
     33 ################################################################################
     34 
     35 This (nicdrv) is a test suite designed to test Network Interface Card drivers.
     36 This test suite uses the STF test harness and operates in the standard manner.
     37 Brief instructions follow on how to interact with this test suite.
     38 
     39 1. Operation Modes:
     40 
     41    This test suite has two modes of operation:
     42         standalone,
     43         two-host (most of the tests)
     44 
     45 
     46 2. Test Cases Included:
     47 
     48         (1) functional: used to ensure that a NIC driver works properly, to
     49             test the primary functionality of a NIC driver, including FTP,
     50             netperf+snoop, ping, NFS, ip_multicast, setting of ndd parameters,
     51             working-mode testing, statistics, vlan, and link aggregation.
     52 
     53         (2) stress: used to stress a NIC driver to verify the driver's 
     54             stability, including loading and unloading of the driver module 
     55             and net traffic stress.
     56 
     57 The "doc/nicdrv.assert" file documents the assertion verified by each
     58 test case.
     59 
     60 
     61 3. Directory Organization:
     62    nicdrv/ -+--- doc: test assertions and other docs
     63             |
     64             +--- include: common libs that are included in test code
     65             |
     66             +--- tests: test code
     67             |
     68             +--- tools:  common tools that are called by test code
     69 
     70 
     71 4. For some planned features and known issues, please refer to the ReleaseNote
     72 file in the "doc" directory.
     73 
     74 #############################################################
     75 ## Hardware requirements
     76 #############################################################
     77 Two machines, consisting of one server and one client are required.
     78 The server is the DUT (Device Under Test) and the client is the SAP 
     79 (System As Peer). 
     80 
     81 * The client should have faster CPU and larger memory size
     82   than Server.  (It will give Server a bigger stress.)
     83 
     84 * If possible, each machine can have two NIC cards of different types:
     85 
     86 One interface (NIC1) on the server is the test target, which is directly
     87 connected to the client.  If the NICs don't support mdi/mdix, cross-over
     88 cables should be used.
     89 
     90 Another interface (NIC0) is connected with external network for command 
     91 control.  You can also use the system console for this purpose.
     92 
     93 A conceptual picture of the test setup is below:
     94 
     95 +----------------+                                   +-------------+
     96 |                |         command control           |             |
     97 | Server  (NIC0)-|<---------external network-------->| Client      |
     98 |                |                                   |             |
     99 | (DUT)   (NIC1)-|<---------tested network---------->|             |
    100 +----------------+          NIC under test           +-------------+ 
    101 
    102 NIC1 is the network interface under test.
    103 
    104 
    105 * If the server and client interfaces under test are connected through a 
    106   network switch with VLAN supported, the VLAN test case of this test
    107   suite requires configuring the two ports on the switch into the 
    108   following VLAN: 30,31,32,33,34,35,36,37,38,39.  If the switch does not
    109   support VLAN, it must be configured to broadcast mode for VLAN. 
    110 
    111 Please refer to the user guide of the switch to configure VLAN.
    112 
    113 #############################################################
    114 ##  Software requirements
    115 #############################################################
    116 
    117 * You should have installed Solaris and driver binaries successfully on 
    118   both machines.  Ensure the driver under test has the correct version.
    119 
    120 * This test suite should be run as the root user.  During test execution,
    121   the NIC driver under test will be 'removed,' so if all of the NICs on 
    122   the system are associated with the same type of driver, please use 
    123   the console to run the test, because the network may be disconnected. 
    124 
    125 * Download and install Solaris Test Framework (STF) packages on server. 
    126         http://opensolaris.org/os/community/testing/testsuites/stf/
    127 
    128     root# pkgadd -d <package-location> SUNWstc-checkenv
    129     root# pkgadd -d <package-location> SUNWstc-stf
    130 
    131 * Install netperf on server.
    132 
    133 For Sun internal users, install the SUNWstc-netperf2 package.
    134     root# pkgadd -d <package-location> SUNWstc-netperf2
    135 
    136 For external users, install netperf from http://www.netperf.org.
    137 For instructions on how to build netperf, please refer to the
    138 INSTALL file in netperf directory.  The recommended netperf 
    139 version to use for this test suite is 2.4.0
    140 
    141 * Set env for root user on server
    142 
    143     root# PATH=/usr/ccs/bin:/opt/SUNWstc-stf/bin/`isainfo -n`:$PATH;
    144     root# export PATH
    145 
    146 * The server and client should be able to use rsh to access each 
    147   other by root, and they should also be able to ping each other
    148   by hostname.  To set this up,
    149 
    150   .  Modify the ~root/.rhosts as applicable, e.g. add 
    151          "<peer's ip_address> root"
    152      or  "<peer's hostname> root"
    153      to the ~root/.rhosts file.
    154 
    155      (Security warning: if you simply put a "+" in the ~root/.rhosts file,
    156      it means "every user from every machine" is authorized to rsh-in as
    157      'root'.  Please use caution when making this entry in the .rhosts.)
    158 
    159    . On both server and client side, enable this network service:
    160         root# svcadm enable -r -s svc:/network/shell:default
    161 
    162    . Append the hostname and corresponding IP address of client or server to the
    163      /etc/hosts file.
    164 
    165 * Ensure the nwam service is disabled on both server and client side.
    166 
    167 	root# svcadm disable svc:/network/physical:nwam
    168 	root# svcadm enable svc:/network/physical:default
    169 
    170 * Ensure that the default system locale on both client and server are C, You
    171   can change the default system locale by setting LANG=C in /etc/default/init 
    172   file.
    173 
    174 #############################################################
    175 ## How to Run:
    176 #############################################################
    177 
    178 1: Install or build nicdrv test suite
    179 
    180 You can run the nicdrv test suite either from a binary package or the
    181 source workspace. The following shows how to install the nicdrv package.
    182 If a package is not available, see Appendix A for instructions on how
    183 to build the nicdrv test suite. 
    184 
    185 * Install NICDRV package.
    186 
    187     root# pkgadd -d <package-location> SUNWstc-driver-nicdrv
    188 
    189 * Change to <SUITE_ROOT> directory where the NICDRV package is installed.
    190 
    191     root# cd /opt/SUNWstc-driver-nicdrv
    192 
    193 2: Check if the client has different architecture from the server.
    194     root# isainfo -n
    195 
    196 Beginning with version 1.7 of the test suite, it is now possible
    197 to perform cross-platform testing by simply installing the test
    198 suite packages for both SPARC and x86 architectures directly on
    199 the 'server' machine.
    200 
    201 Generally, the server and the client have the same CPU architecture
    202 (i.e., both are X86 or SPARC).  However, for cross-platform testing,
    203 where the server's CPU architecture is different from the client's,
    204 it is necessary to install the test suite binaries corresponding to
    205 both architectures on the server system.  Beginning with STC_VERSION 
    206 1.7, it is possible to install both SPARC and x86 packages on a 
    207 single system using pkgadd(1M).  For example, if the client is an 
    208 amd64 system and the server is a SPARC machine, then install both
    209 the sparc and i386 packages on the server:
    210 
    211   root@server# pkgadd -d <sparc-package-location> SUNWstc-driver-nicdrv
    212   root@server# pkgadd -d <i386-package-location>  SUNWstc-driver-nicdrv
    213 
    214 3: Configure test suites
    215 Please set the appropriate values for the mandatory variables
    216 specified in <SUITE_ROOT>/config.vars using 'stf_configure -c'
    217 or 'stf_configure -f'
    218 
    219 The following options need to be changed:
    220 
    221 TST_INT=
    222 TST_NUM=
    223 RMT_INT=
    224 RMT_NUM=
    225 LOCAL_HST=
    226 RMT_HST=
    227 TST_PASS=
    228 NETPERF_HOME=
    229 RUN_MODE=
    230 
    231 For details on the options listed above, please refer to comments of
    232 the config.vars file.
    233 
    234 In the <SUITE_ROOT> directory, run: 
    235 	user$ stf_configure
    236 
    237 4: Execute the test suites still in the <SUITE_ROOT> directory
    238 
    239   	user$ stf_execute -m `isainfo -n`
    240 
    241 5: Examine the results
    242 While the test is being executed, you can view the journal file at:
    243 /var/tmp/SUNstc-driver-nicdrv/results, for example 
    244 "tail -f /var/tmp/SUNWstc-driver-nicdrv/results/journal.hostname1.20070821185114.execute.i386"
    245 (The exact name of the journal file being used will be printed to
    246 the terminal by 'stf_execute')
    247 
    248 Appendix A:
    249 
    250 #############################################################
    251 ## How to Build Test Suite
    252 #############################################################
    253 
    254 * Add C compiler and STF path to environment.
    255 
    256 user$ PATH=/opt/SUNWspro/bin:/opt/SUNWstc-stf/bin/`isainfo -n`:$PATH;
    257 user$ export PATH
    258 
    259 * Change to nicdrv source directory.  Below, WS_ROOT refers to the
    260 root of the STC workspace which contains the nicdrv test suite source.
    261 
    262 user$ cd <WS_ROOT>/usr/src/suites/net/nicdrv
    263 
    264 * Build the nicdrv test suite.
    265 
    266 user$ stf_build package
    267 
    268 * Install the package on the test system(s)
    269 
    270 root# pkgadd -d <WS_ROOT>/packages/`uname -p`  SUNWstc-driver-nicdrv 
    271 
    272 Now you can follow the instructions given earlier in this README for
    273 configuring and executing the test suite.
    274 
    275