Documentation/jBenchmark: wired-test.rb

File wired-test.rb, 2.1 KB (added by Surya Satyavolu, 18 years ago)
Line 
1
2########## Benchmark tests ##################################
3 # The purpose of this experiment is to benchmark the node CPU
4 # capabilities in terms of the maximum offered load that it can
5 # generate and consume on the wired Ethernet link
6
7 # It has one sender and one receiver
8 # Sender, Receiver - Wired interface
9 # UDP flow at 500Mbps
10 # Receiver reports throughput, jitter and packet loss per second
11 # Iperf traffic generator
12 ############################################################
13
14 Experiment.name = "iperf-udp"
15 Experiment.project = "orbit:tutorial"
16
17 #
18 # Define nodes used in experiment
19 #
20 ###########################################
21 # Sender definition and configuration
22 ###########################################
23 defNodes('sender', [4,1]) {|node|
24 node.image = nil # assume the right image to be on disk
25 # use prototype "sender"
26 # and set it's property "destinationHost" to
27 # the receiver node
28 # and bind the remaining properties to the
29 # experiment property space
30 node.prototype("test:proto:iperfudpsender", {
31 'client' => '10.10.4.3', #Send to
32 'use_udp' => nil, #UDP client
33 'sender_rate' => '500M', #Input offered load (bits per sec)
34 'len' => 1400 #Payload length (bytes)
35 })
36 }
37 ###########################################
38 # Receiver definition and configuration
39 ###########################################
40
41 defNodes('receiver', [4,3]) {|node|
42 node.image = nil # assume the right image to be on disk
43 node.prototype("test:proto:iperfudpreceiver" , {
44 'server' => nil, # Server
45 'use_udp' => nil, # Use UDP
46 'len' => 1400, #Payload length (bytes)
47 'report_interval' => 10 #Report interval(seconds)
48 })
49 }
50
51 ###########################################
52 # When nodeAgents have reported "OK" to
53 # the nodeHandler start the application
54 ###########################################
55 whenAllInstalled() {|node|
56
57 nodes('receiver').startApplications
58
59 wait 10
60 nodes('sender').startApplications
61 wait 60
62
63 allNodes.stopApplications
64
65
66 Experiment.done
67
68 }