Changes between Version 32 and Version 33 of GEC17Agenda/GettingStartedWithGENI_III_GIMI/Procedure/Execute


Ignore:
Timestamp:
08/25/14 14:52:35 (5 years ago)
Author:
dbhat@bbn.com
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GEC17Agenda/GettingStartedWithGENI_III_GIMI/Procedure/Execute

    v32 v33  
    164164
    165165{{{
    166 defProperty('source1', "nodeA", "ID of a resource")
    167 defProperty('source2', "nodeB", "ID of a resource")
    168 defProperty('source3', "nodeC", "ID of a resource")
    169 defProperty('source4', "nodeD", "ID of a resource")
    170 defProperty('source5', "nodeE", "ID of a resource")
    171 
    172 #defProperty('sink1', "nodeA", "ID of a sink")
    173 #defProperty('sink2', "nodeB", "ID of a sink")
    174 #defProperty('sink3', "nodeC", "ID of a sink")
    175 #defProperty('sink4', "nodeD", "ID of a sink")
    176 #defProperty('sink5', "nodeE", "ID of a sink")
     166
     167defProperty('resource1', "nodeA", "ID of a resource")
     168defProperty('resource2', "nodeB", "ID of a resource")
     169defProperty('resource3', "nodeC", "ID of a resource")
     170defProperty('resource4', "nodeD", "ID of a resource")
     171defProperty('resource5', "nodeE", "ID of a resource")
     172
    177173
    178174defProperty('sinkaddr11', '192.168.4.10', "Ping destination address")
     
    193189defProperty('sinkaddr51', '192.168.6.12', "Ping destination address")
    194190
    195 defApplication('ping_app', 'pingmonitor') do |a|
    196     a.path = "/root/pingWrap.rb"
    197     a.version(1, 2, 0)
    198     a.shortDescription = "Wrapper around ping"
    199     a.description = "ping application"
    200     a.defProperty('dest_addr', 'Address to ping', '-a', {:type => :string, :dynamic => false})
    201     a.defProperty('count', 'Number of times to ping', '-c', {:type => :integer, :dynamic => false})
    202     a.defProperty('interval', 'Interval between pings in s', '-i', {:type => :integer, :dynamic => false})
    203 
    204     a.defMeasurement('myping') do |m|
    205      m.defMetric('dest_addr',:string)
    206      m.defMetric('ttl',:int)
    207      m.defMetric('rtt',:float)
    208      m.defMetric('rtt_unit',:string)
    209    end
    210 end
    211 
    212 defGroup('Source1', property.source1) do |node|
    213   node.addApplication("ping_app") do |app|
    214     app.setProperty('dest_addr', property.sinkaddr11)
    215     app.setProperty('count', 30)
    216     app.setProperty('interval', 1)
    217     app.measure('myping', :samples => 1)
    218   end
    219 
    220   node.addApplication("ping_app") do |app|
    221     app.setProperty('dest_addr', property.sinkaddr12)
    222     app.setProperty('count', 30)
    223     app.setProperty('interval', 1)
    224     app.measure('myping', :samples => 1)
    225   end
    226 end
    227 
    228 defGroup('Source2', property.source2) do |node|
    229   node.addApplication("ping_app") do |app|
    230     app.setProperty('dest_addr', property.sinkaddr21)
    231     app.setProperty('count', 30)
    232     app.setProperty('interval', 1)
    233     app.measure('myping', :samples => 1)
    234   end
    235 
    236   node.addApplication("ping_app") do |app|
    237     app.setProperty('dest_addr', property.sinkaddr22)
    238     app.setProperty('count', 30)
    239     app.setProperty('interval', 1)
    240     app.measure('myping', :samples => 1)
    241   end
    242 
    243   node.addApplication("ping_app") do |app|
    244     app.setProperty('dest_addr', property.sinkaddr23)
    245     app.setProperty('count', 30)
    246     app.setProperty('interval', 1)
    247     app.measure('myping', :samples => 1)
    248   end
    249 end
    250 
    251 defGroup('Source3', property.source3) do |node|
    252   node.addApplication("ping_app") do |app|
    253     app.setProperty('dest_addr', property.sinkaddr31)
    254     app.setProperty('count', 30)
    255     app.setProperty('interval', 1)
    256     app.measure('myping', :samples => 1)
    257   end
    258 
    259   node.addApplication("ping_app") do |app|
    260     app.setProperty('dest_addr', property.sinkaddr32)
    261     app.setProperty('count', 30)
    262     app.setProperty('interval', 1)
    263     app.measure('myping', :samples => 1)
    264   end
    265 
    266   node.addApplication("ping_app") do |app|
    267     app.setProperty('dest_addr', property.sinkaddr33)
    268     app.setProperty('count', 30)
    269     app.setProperty('interval', 1)
    270     app.measure('myping', :samples => 1)
    271   end
    272 
    273   node.addApplication("ping_app") do |app|
    274     app.setProperty('dest_addr', property.sinkaddr34)
    275     app.setProperty('count', 30)
    276     app.setProperty('interval', 1)
    277     app.measure('myping', :samples => 1)
    278   end
    279 end
    280 
    281 defGroup('Source4', property.source4) do |node|
    282 
    283   node.addApplication("ping_app") do |app|
    284     app.setProperty('dest_addr', property.sinkaddr41)
    285     app.setProperty('count', 30)
    286     app.setProperty('interval', 1)
    287     app.measure('myping', :samples => 1)
    288   end
    289 
    290   node.addApplication("ping_app") do |app|
    291     app.setProperty('dest_addr', property.sinkaddr42)
    292     app.setProperty('count', 30)
    293     app.setProperty('interval', 1)
    294     app.measure('myping', :samples => 1)
    295   end
    296 end
    297 
    298 defGroup('Source5', property.source5) do |node|
    299   node.addApplication("ping_app") do |app|
    300     app.setProperty('dest_addr', property.sinkaddr51)
    301     app.setProperty('count', 30)
    302     app.setProperty('interval', 1)
    303     app.measure('myping', :samples => 1)
     191defApplication('ping') do |app|
     192  app.description = 'Simple Definition for the ping-oml2 application'
     193  # Define the path to the binary executable for this application
     194  app.binary_path = '/usr/local/bin/ping-oml2'
     195  # Define the configurable parameters for this application
     196  # For example if target is set to foo.com and count is set to 2, then the
     197  # application will be started with the command line:
     198  # /usr/bin/ping-oml2 -a foo.com -c 2
     199  app.defProperty('target', 'Address to ping', '-a', {:type => :string})
     200  app.defProperty('count', 'Number of times to ping', '-c', {:type => :integer})
     201  # Define the OML2 measurement point that this application provides.
     202  # Here we have only one measurement point (MP) named 'ping'. Each measurement
     203  # sample from this MP will be composed of a 4-tuples (addr,ttl,rtt,rtt_unit)
     204  app.defMeasurement('ping') do |m|
     205    m.defMetric('dest_addr',:string)
     206    m.defMetric('ttl',:uint32)
     207    m.defMetric('rtt',:double)
     208    m.defMetric('rtt_unit',:string)
     209  end
     210end
     211
     212defGroup('Source1', property.resource1) do |node|
     213  node.addApplication("ping") do |app|
     214    app.setProperty('target', property.sinkaddr11)
     215    app.setProperty('count', 30)
     216    app.measure('ping', :samples => 1)
     217  end
     218
     219  node.addApplication("ping") do |app|
     220    app.setProperty('target', property.sinkaddr12)
     221    app.setProperty('count', 30)
     222    app.measure('ping', :samples => 1)
     223  end
     224end
     225
     226defGroup('Source2', property.resource2) do |node|
     227  node.addApplication("ping") do |app|
     228    app.setProperty('target', property.sinkaddr21)
     229    app.setProperty('count', 30)
     230    app.measure('ping', :samples => 1)
     231  end
     232
     233  node.addApplication("ping") do |app|
     234    app.setProperty('target', property.sinkaddr22)
     235    app.setProperty('count', 30)
     236    app.measure('ping', :samples => 1)
     237  end
     238
     239  node.addApplication("ping") do |app|
     240    app.setProperty('target', property.sinkaddr23)
     241    app.setProperty('count', 30)
     242    app.measure('ping', :samples => 1)
     243  end
     244end
     245
     246defGroup('Source3', property.resource3) do |node|
     247  node.addApplication("ping") do |app|
     248    app.setProperty('target', property.sinkaddr31)
     249    app.setProperty('count', 30)
     250    app.measure('ping', :samples => 1)
     251  end
     252
     253  node.addApplication("ping") do |app|
     254    app.setProperty('target', property.sinkaddr32)
     255    app.setProperty('count', 30)
     256    app.measure('ping', :samples => 1)
     257  end
     258
     259  node.addApplication("ping") do |app|
     260    app.setProperty('target', property.sinkaddr33)
     261    app.setProperty('count', 30)
     262    app.measure('ping', :samples => 1)
     263  end
     264
     265  node.addApplication("ping") do |app|
     266    app.setProperty('target', property.sinkaddr34)
     267    app.setProperty('count', 30)
     268    app.measure('ping', :samples => 1)
     269  end
     270end
     271
     272defGroup('Source4', property.resource4) do |node|
     273
     274  node.addApplication("ping") do |app|
     275    app.setProperty('target', property.sinkaddr41)
     276    app.setProperty('count', 30)
     277    app.measure('ping', :samples => 1)
     278  end
     279
     280  node.addApplication("ping") do |app|
     281    app.setProperty('target', property.sinkaddr42)
     282    app.setProperty('count', 30)
     283    app.measure('ping', :samples => 1)
     284  end
     285end
     286
     287defGroup('Source5', property.resource5) do |node|
     288  node.addApplication("ping") do |app|
     289    app.setProperty('target', property.sinkaddr51)
     290    app.setProperty('count', 30)
     291    app.measure('ping', :samples => 1)
    304292  end
    305293end
     
    312300  allGroups.stopApplications
    313301  Experiment.done
     302end
     303defGraph 'RTT' do |g|
     304  g.ms('ping').select(:oml_seq, :dest_addr, :rtt)
     305  g.caption "RTT of received packets."
     306  g.type 'line_chart3'
     307  g.mapping :x_axis => :oml_seq, :y_axis => :rtt, :group_by => :dest_addr
     308  g.xaxis :legend => 'oml_seq'
     309  g.yaxis :legend => 'rtt', :ticks => {:format => 's'}
    314310end
    315311}}}