OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-2.0/] [packages/] [net/] [common/] [v2_0/] [doc/] [running_nc_tests] - Blame information for rev 663

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 27 unneback
The network performance tests are split into two parts, one
2
[nc6_test_master] which runs on a host (like Linux or FreeBSD) and the
3
other [nc6_test_slave] which runs on the target platform.  Note that
4
these tests supplant older versions (nc_test_XXX) which did not
5
support IPv6 addressing.
6
 
7
To run the tests, start the slave part first.  On the target hardware,
8
run the program "nc6_test_slave".  It will display a set of information
9
on the console (use serial console only as using a network console
10
would severely impact the numbers) similar to this:
11
 
12
    RedBoot> lo ipv6.test;g
13
    Entry point: 0x00040040, address range: 0x00040000-0x000ae56c
14
    [cyg_net_init] Init: mbinit(0x00000000)
15
    [cyg_net_init] Init: cyg_net_init_devs(0x00000000)
16
    Init device 'cs8900a_eth0'
17
    [cyg_net_init] Init: loopattach(0x00000000)
18
    [cyg_net_init] Init: ifinit(0x00000000)
19
    IFP: 0x000acf1c, next: 0x00117a00
20
    IFP: 0x00117a00, next: 0x00000000
21
    eth0 XXX: driver didn't set ifq_maxlen
22
    [cyg_net_init] Init: domaininit(0x00000000)
23
    [cyg_net_init] Init: cyg_net_add_domain(0x000ad7f8)
24
    New domain internet6 at 0x00000000
25
    [cyg_net_init] Init: cyg_net_add_domain(0x000adfbc)
26
    New domain internet at 0x00000000
27
    [cyg_net_init] Init: cyg_net_add_domain(0x000ad314)
28
    New domain route at 0x00000000
29
    [cyg_net_init] Init: cyg_route_init(0x00000000)
30
    [cyg_net_init] Init: ip6_init2(0x00000000)
31
    [cyg_net_init] Done
32
    Start Network Characterization - SLAVE
33
    BOOTP[eth0] op: REQUEST
34
           htype: Ethernet
35
            hlen: 6
36
            hops: 0
37
             xid: 0xe194048b
38
            secs: 0
39
           flags: 0x80
40
           hw_addr: 00:30:d3:03:04:8b
41
         client IP: 0.0.0.0
42
             my IP: 192.168.1.52
43
         server IP: 192.168.1.101
44
        gateway IP: 0.0.0.0
45
            server: hermes.chez-thomas.org
46
              file: /tftpboot/192.168.1.52/zImage
47
      options:
48
            DHCP message: 3 REQUEST
49
            DHCP server id: 63.225.98.241
50
            DHCP time 51: -1
51
            DHCP time 58: 0
52
            DHCP time 59: 0
53
            subnet mask: 255.255.255.0
54
                gateway: 192.168.1.101
55
          domain server: 63.225.98.241, 206.196.128.1, 205.180.230.20, 205.180.230.21
56
            domain name: chez-thomas.org
57
           IP broadcast: 192.168.1.255
58
            DHCP option: 37/55.9: 54 51 58 59 1 3 6 15 28
59
            DHCP option: 39/57.2: 576
60
            DHCP requested ip: 192.168.1.52
61
    No load = 248826
62
    Set background load = 20%
63
    Set background load = 0%
64
    High Load[20] = 192089 => 23%
65
    Set background load = 20%
66
    Set background load = 0%
67
    Load[10] = 220394 => 12%
68
    Set background load = 20%
69
    Set background load = 0%
70
    Load[15] = 206082 => 18%
71
    Set background load = 20%
72
    Set background load = 0%
73
    Final load[16] = 203142 => 19%
74
    Start test for eth0
75
    Family: 2, Socket: 2, Addr: 0.0.0.0
76
    Family: 28, Socket: 2, Addr: ::
77
 
78
At this point, the slave is ready to accept commands.  The section with
79
lines like "Set background load = 20%" are the slave test self-calibrating
80
a background load level which is used later.
81
 
82
Once the slave is started, then on your host system (Linux), run the
83
'nc6_test_master' program like this:
84
 
85
    [root@ebsa2 gthomas]# ./nc6_test_master 3ffe:302:11:2::192.168.1.52
86
 
87
This command would test against the IPv6 slave.  You can also use an IPv4
88
address.
89
 
90
The master program will then run a sequence of tests.  Each test is accomplished
91
by sending a command "packet" to the slave which initiates a sequence of
92
I/O requests.  These are requests for UDP and TCP traffic patterns, adjusting
93
the slave background load, etc.  The results are displayed by the master
94
program as they are obtained.  For example:
95
 
96
    ================== No load, master at 100% ========================
97
    Start UDP echo [640,1024] - no delays
98
    UDP echo - 1280 bufs of 1024 bytes in 2.03 seconds - 630.54 KB/S - 5.1654 Mbit/S (M = 10^6)
99
       slave sent 640, recvd 640
100
    Start UDP send [640,1024] - no delays
101
    Packets out of sequence - recvd: 51, expected: 50
102
    Packets out of sequence - recvd: 103, expected: 102
103
    Packets out of sequence - recvd: 155, expected: 154
104
    Packets out of sequence - recvd: 207, expected: 206
105
    Packets out of sequence - recvd: 259, expected: 258
106
    Packets out of sequence - recvd: 311, expected: 310
107
    Packets out of sequence - recvd: 363, expected: 362
108
    Packets out of sequence - recvd: 415, expected: 414
109
    Packets out of sequence - recvd: 467, expected: 466
110
    Packets out of sequence - recvd: 519, expected: 518
111
    Packets out of sequence - recvd: 571, expected: 570
112
    Packets out of sequence - recvd: 623, expected: 622
113
    UDP send - 628 bufs of 1024 bytes in 1.46 seconds - 430.14 KB/S - 3.5237 Mbit/S (M = 10^6), 12 out of sequence
114
       slave sent 628, recvd 0
115
    Start UDP recv [640,1024] - no delays
116
    UDP recv - 640 bufs of 1024 bytes in 0.05 seconds - 12800.00 KB/S - 104.8576 Mbit/S (M = 10^6)
117
       slave sent 0, recvd 495
118
    Start TCP echo [640,1024] - no delays
119
    TCP echo - 1280 bufs of 1024 bytes in 2.16 seconds - 592.59 KB/S - 4.8545 Mbit/S (M = 10^6)
120
       slave sent 640, recvd 640
121
    Start TCP send [640,1024] - no delays
122
    TCP send - 640 bufs of 1024 bytes in 0.80 seconds - 800.00 KB/S - 6.5536 Mbit/S (M = 10^6)
123
       slave sent 640, recvd 0
124
    Start TCP recv [640,1024] - no delays
125
    TCP recv - 640 bufs of 1024 bytes in 0.65 seconds - 984.62 KB/S - 8.0660 Mbit/S (M = 10^6)
126
       slave sent 0, recvd 640
127
    Start TCP echo [64,10240] - no delays
128
    TCP echo - 128 bufs of 10240 bytes in 3.80 seconds - 336.84 KB/S - 2.7594 Mbit/S (M = 10^6)
129
       slave sent 64, recvd 64
130
 
131
    ====================== Various slave compute loads ===================
132
    >>>>>>>>>>>> slave processing load at 0%
133
    Start UDP echo [2048,1024] - no delays
134
    UDP echo - 4096 bufs of 1024 bytes in 6.51 seconds - 629.19 KB/S - 5.1543 Mbit/S (M = 10^6)
135
       slave sent 2048, recvd 2048
136
    Start TCP echo [2048,1024] - no delays
137
    TCP echo - 4096 bufs of 1024 bytes in 6.90 seconds - 593.62 KB/S - 4.8630 Mbit/S (M = 10^6)
138
       slave sent 2048, recvd 2048
139
    >>>>>>>>>>>> slave processing load at 10%
140
    Start UDP echo [2048,1024] - no delays
141
    UDP echo - 4096 bufs of 1024 bytes in 6.81 seconds - 601.47 KB/S - 4.9272 Mbit/S (M = 10^6)
142
       slave sent 2048, recvd 2048
143
    Start TCP echo [2048,1024] - no delays
144
    TCP echo - 4096 bufs of 1024 bytes in 7.00 seconds - 585.14 KB/S - 4.7935 Mbit/S (M = 10^6)
145
       slave sent 2048, recvd 2048
146
    >>>>>>>>>>>> slave processing load at 20%
147
    Start UDP echo [2048,1024] - no delays
148
    UDP echo - 4096 bufs of 1024 bytes in 6.81 seconds - 601.47 KB/S - 4.9272 Mbit/S (M = 10^6)
149
       slave sent 2048, recvd 2048
150
    Start TCP echo [2048,1024] - no delays
151
    TCP echo - 4096 bufs of 1024 bytes in 7.32 seconds - 559.56 KB/S - 4.5839 Mbit/S (M = 10^6)
152
       slave sent 2048, recvd 2048
153
    >>>>>>>>>>>> slave processing load at 30%
154
    Start UDP echo [2048,1024] - no delays
155
    UDP echo - 4096 bufs of 1024 bytes in 8.04 seconds - 509.45 KB/S - 4.1734 Mbit/S (M = 10^6)
156
       slave sent 2048, recvd 2048
157
    Start TCP echo [2048,1024] - no delays
158
    TCP echo - 4096 bufs of 1024 bytes in 8.78 seconds - 466.51 KB/S - 3.8217 Mbit/S (M = 10^6)
159
       slave sent 2048, recvd 2048
160
    >>>>>>>>>>>> slave processing load at 40%
161
    Start UDP echo [2048,1024] - no delays
162
    UDP echo - 4096 bufs of 1024 bytes in 10.22 seconds - 400.78 KB/S - 3.2832 Mbit/S (M = 10^6)
163
       slave sent 2048, recvd 2048
164
    Start TCP echo [2048,1024] - no delays
165
    TCP echo - 4096 bufs of 1024 bytes in 10.24 seconds - 400.00 KB/S - 3.2768 Mbit/S (M = 10^6)
166
       slave sent 2048, recvd 2048
167
    >>>>>>>>>>>> slave processing load at 50%
168
    Start UDP echo [2048,1024] - no delays
169
    UDP echo - 4096 bufs of 1024 bytes in 10.22 seconds - 400.78 KB/S - 3.2832 Mbit/S (M = 10^6)
170
       slave sent 2048, recvd 2048
171
    Start TCP echo [2048,1024] - no delays
172
    TCP echo - 4096 bufs of 1024 bytes in 10.24 seconds - 400.00 KB/S - 3.2768 Mbit/S (M = 10^6)
173
       slave sent 2048, recvd 2048
174
 
175
    ====================== Various master loads ===================
176
    Testing IDLE for 10 seconds
177
    IDLE - ticks: 1003, count: 1367315
178
    Start UDP echo [2048,1024] - no delays
179
    UDP echo - 4096 bufs of 1024 bytes in 10.22 seconds - 400.78 KB/S - 3.2832 Mbit/S (M = 10^6)
180
       slave sent 2048, recvd 2048
181
    IDLE - ticks: 1028, count: 641138, 45% idle
182
    Start TCP echo [2048,1024] - no delays
183
    TCP echo - 4096 bufs of 1024 bytes in 10.24 seconds - 400.00 KB/S - 3.2768 Mbit/S (M = 10^6)
184
       slave sent 2048, recvd 2048
185
    IDLE - ticks: 1330, count: 1004010, 55% idle
186
    Start UDP echo [2048,1024] - 10ms delay after 10 packets
187
    UDP echo - 4096 bufs of 1024 bytes in 13.01 seconds - 314.83 KB/S - 2.5791 Mbit/S (M = 10^6)
188
       slave sent 2048, recvd 2048
189
    IDLE - ticks: 1307, count: 1015862, 56% idle
190
    Start TCP echo [2048,1024] - 10ms delay after 10 packets
191
    TCP echo - 4096 bufs of 1024 bytes in 13.26 seconds - 308.90 KB/S - 2.5305 Mbit/S (M = 10^6)
192
       slave sent 2048, recvd 2048
193
    IDLE - ticks: 1633, count: 1410624, 63% idle
194
    Start UDP echo [2048,1024] - 50ms delay after 10 packets
195
    UDP echo - 4096 bufs of 1024 bytes in 21.00 seconds - 195.05 KB/S - 1.5978 Mbit/S (M = 10^6)
196
       slave sent 2048, recvd 2048
197
    IDLE - ticks: 2106, count: 2105817, 73% idle
198
    Start TCP echo [2048,1024] - 50ms delay after 10 packets
199
    TCP echo - 4096 bufs of 1024 bytes in 21.26 seconds - 192.66 KB/S - 1.5783 Mbit/S (M = 10^6)
200
       slave sent 2048, recvd 2048
201
    IDLE - ticks: 2434, count: 2471814, 74% idle
202
    Start UDP echo [2048,1024] - 100ms delay after 10 packets
203
    UDP echo - 4096 bufs of 1024 bytes in 31.28 seconds - 130.95 KB/S - 1.0727 Mbit/S (M = 10^6)
204
       slave sent 2048, recvd 2048
205
    IDLE - ticks: 3135, count: 3508880, 82% idle
206
    Start TCP echo [2048,1024] - 100ms delay after 10 packets
207
    TCP echo - 4096 bufs of 1024 bytes in 31.43 seconds - 130.32 KB/S - 1.0676 Mbit/S (M = 10^6)
208
       slave sent 2048, recvd 2048
209
    IDLE - ticks: 3451, count: 3859323, 82% idle
210
    Start UDP echo [2048,1024] - 10ms delay after 1 packet
211
    UDP echo - 4096 bufs of 1024 bytes in 40.94 seconds - 100.05 KB/S - 0.8196 Mbit/S (M = 10^6)
212
       slave sent 2048, recvd 2048
213
    IDLE - ticks: 4102, count: 4789770, 85% idle
214
    Start TCP echo [2048,1024] - 10ms delay after 1 packet
215
    TCP echo - 4096 bufs of 1024 bytes in 40.96 seconds - 100.00 KB/S - 0.8192 Mbit/S (M = 10^6)
216
       slave sent 2048, recvd 2048
217
    IDLE - ticks: 4407, count: 5147211, 85% idle
218
    ... Done
219
 
220
The slave will display lines like:
221
    UDP echo - 640 buffers, 1024 bytes
222
    UDP send - 640 buffers, 1024 bytes
223
    sendto UDP data: No buffer space available
224
    sendto UDP data: No buffer space available
225
    sendto UDP data: No buffer space available
226
    sendto UDP data: No buffer space available
227
    sendto UDP data: No buffer space available
228
    sendto UDP data: No buffer space available
229
    sendto UDP data: No buffer space available
230
    sendto UDP data: No buffer space available
231
    sendto UDP data: No buffer space available
232
    sendto UDP data: No buffer space available
233
    sendto UDP data: No buffer space available
234
    sendto UDP data: No buffer space available
235
    UDP recv - 640 buffers, 1024 bytes
236
    Packets out of sequence - recvd: 508, expected: 492
237
    Packets out of sequence - recvd: 528, expected: 510
238
    recvfrom timeout, expecting seq #529
239
    recvfrom timeout, expecting seq #530
240
    recvfrom timeout, expecting seq #531
241
    recvfrom timeout, expecting seq #532
242
    recvfrom timeout, expecting seq #533
243
    recvfrom timeout, expecting seq #534
244
    ... giving up
245
    TCP echo - 640 buffers, 1024 bytes
246
    TCP - listen on IPv6/8770
247
    connection from 3ffe:302:11:2:290:27ff:fe8b:8e1d(1085)
248
    TCP send - 640 buffers, 1024 bytes
249
    connection from 3ffe:302:11:2:290:27ff:fe8b:8e1d(1086)
250
    TCP recv - 640 buffers, 1024 bytes
251
    connection from 3ffe:302:11:2:290:27ff:fe8b:8e1d(1087)
252
    TCP echo - 64 buffers, 10240 bytes
253
    connection from 3ffe:302:11:2:290:27ff:fe8b:8e1d(1088)
254
    Set background load = 0%
255
    Set background load = 0%
256
    UDP echo - 2048 buffers, 1024 bytes
257
    TCP echo - 2048 buffers, 1024 bytes
258
    connection from 3ffe:302:11:2:290:27ff:fe8b:8e1d(1089)
259
    Set background load = 10%
260
    UDP echo - 2048 buffers, 1024 bytes
261
    TCP echo - 2048 buffers, 1024 bytes
262
    connection from 3ffe:302:11:2:290:27ff:fe8b:8e1d(1090)
263
    Set background load = 20%
264
    UDP echo - 2048 buffers, 1024 bytes
265
    TCP echo - 2048 buffers, 1024 bytes
266
    connection from 3ffe:302:11:2:290:27ff:fe8b:8e1d(1091)
267
    Set background load = 30%
268
    UDP echo - 2048 buffers, 1024 bytes
269
    TCP echo - 2048 buffers, 1024 bytes
270
    connection from 3ffe:302:11:2:290:27ff:fe8b:8e1d(1092)
271
    Set background load = 40%
272
    UDP echo - 2048 buffers, 1024 bytes
273
    TCP echo - 2048 buffers, 1024 bytes
274
    connection from 3ffe:302:11:2:290:27ff:fe8b:8e1d(1093)
275
    Set background load = 50%
276
    UDP echo - 2048 buffers, 1024 bytes
277
    TCP echo - 2048 buffers, 1024 bytes
278
    connection from 3ffe:302:11:2:290:27ff:fe8b:8e1d(1094)
279
    Start IDLE thread
280
    Stop IDLE thread
281
    Start IDLE thread
282
    UDP echo - 2048 buffers, 1024 bytes
283
    Stop IDLE thread
284
    Start IDLE thread
285
    TCP echo - 2048 buffers, 1024 bytes
286
    connection from 3ffe:302:11:2:290:27ff:fe8b:8e1d(1095)
287
    Stop IDLE thread
288
    Start IDLE thread
289
    UDP echo - 2048 buffers, 1024 bytes
290
    Stop IDLE thread
291
    Start IDLE thread
292
    TCP echo - 2048 buffers, 1024 bytes
293
    connection from 3ffe:302:11:2:290:27ff:fe8b:8e1d(1096)
294
    Stop IDLE thread
295
    Start IDLE thread
296
    UDP echo - 2048 buffers, 1024 bytes
297
    Stop IDLE thread
298
    Start IDLE thread
299
    TCP echo - 2048 buffers, 1024 bytes
300
    connection from 3ffe:302:11:2:290:27ff:fe8b:8e1d(1097)
301
    Stop IDLE thread
302
    Start IDLE thread
303
    UDP echo - 2048 buffers, 1024 bytes
304
    Stop IDLE thread
305
    Start IDLE thread
306
    TCP echo - 2048 buffers, 1024 bytes
307
    connection from 3ffe:302:11:2:290:27ff:fe8b:8e1d(1098)
308
    Stop IDLE thread
309
    Start IDLE thread
310
    UDP echo - 2048 buffers, 1024 bytes
311
    Stop IDLE thread
312
    Start IDLE thread
313
    TCP echo - 2048 buffers, 1024 bytes
314
    connection from 3ffe:302:11:2:290:27ff:fe8b:8e1d(1099)
315
    Stop IDLE thread
316
 
317
Notice that if the host and target are not well balanced (in this example,
318
the host is a fairly fast P-II running with a very good 10/100Mb ethernet
319
controller and the slave is a reasonable [not fast!] ARM board with a very
320
simplistic [read "slow"] network adaptor), then the UDP tests can have
321
synchronization problems.  This is the nature of UDP and is to be expected.

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.