Ixia Live Results
[vswitchperf.git] / 3rd_party / ixia / ixnetrfc2544.tcl
1 #!/usr/bin/env tclsh
2
3 # Copyright (c) 2014, Ixia
4 # Copyright (c) 2015-2018, Intel Corporation, Tieto
5 # All rights reserved.
6 #
7 # Redistribution and use in source and binary forms, with or without
8 # modification, are permitted provided that the following conditions
9 # are met:
10 #
11 # 1. Redistributions of source code must retain the above copyright
12 # notice, this list of conditions and the following disclaimer.
13 #
14 # 2. Redistributions in binary form must reproduce the above copyright
15 # notice, this list of conditions and the following disclaimer in the
16 # documentation and/or other materials provided with the distribution.
17 #
18 # 3. Neither the name of the copyright holder nor the names of its
19 # contributors may be used to endorse or promote products derived
20 # from this software without specific prior written permission.
21 #
22 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
23 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
24 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
25 # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
26 # COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
27 # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
28 # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
29 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
30 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
32 # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
33 # POSSIBILITY OF SUCH DAMAGE.
34
35 # This file is a modified version of a script generated by Ixia
36 # IxNetwork.
37
38 lappend auto_path [list $lib_path]
39
40 ###################################################################
41 ########################## Configuration ##########################
42 ###################################################################
43
44 # verify that the IXIA chassis spec is given
45
46 set reqVars [list "machine" "port" "user" "chassis" "card" "port1" "port2" "output_dir" "bidir" "frame_size_list"]
47 set rfc2544test ""
48
49 foreach var $reqVars {
50     set var_ns [namespace which -variable "$var"]
51     if { [string compare $var_ns ""] == 0 } {
52         errorMsg "The '$var' variable is undefined. Did you set it?"
53         return -1
54     }
55 }
56
57 # machine configuration
58
59 set ::IxNserver $machine
60 set ::IxNport   $port
61 set ::biDirect  $bidir
62 set frameSizeList $frame_size_list
63
64 # change to windows path format and append directory
65 set output_dir [string map {"/" "\\"} $output_dir]
66 set output_dir "$output_dir\\rfctests"
67 puts "Output directory is $output_dir"
68
69 proc startRfc2544Test { testSpec trafficSpec } {
70     # Start RFC2544 quickte"$output_dir\\rfctests"st.
71
72     # Configure global variables. See documentation on 'global' for more
73     # information on why this is necessary
74     #   https://www.tcl.tk/man/tcl8.5/tutorial/Tcl13.html
75     global rfc2544test
76           global qt
77           global frameSizeList
78     global sg_rfc2544throughput
79     global sg_rfc2544back2back
80     global output_dir
81
82     # Suffix for stack names
83     # This variable should be incremented after setting sg_stack like:
84     # set sg_stack $ixNetSG_Stack(2)/stack:"protocolnamehere-$stack_number"
85     # incr stack_number
86     set stack_number    1
87
88     # flow spec
89
90     set rfc2544TestType         [dict get $testSpec rfc2544TestType]
91
92     set binary                  [dict get $testSpec binary]
93
94     set duration                [dict get $testSpec duration]
95
96     # check if only one tgen port is requested
97     if {($::port1 == $::port2)} {
98         set twoPorts 0
99         set selfDestined True
100     } else {
101         set twoPorts 1
102         set selfDestined False
103     }
104
105     # RFC2544 to IXIA terminology mapping (it affects Ixia configuration inside this script):
106     # Test    => Trial
107     # Trial   => Iteration
108     if {$binary} {
109         set numTests            [dict get $testSpec tests]
110         set frameRate           100
111         set tolerance           [dict get $testSpec lossrate]
112         set loadType            binary
113     } else {
114         set numTests            1
115         set frameRate           [dict get $testSpec framerate]
116         set tolerance           0.0
117         set loadType            custom
118     }
119
120     set learningFrames          [dict get $testSpec learningFrames]
121
122     set L2CountValue            1
123     set L2Increment             False
124     set L3ValueType             singleValue
125     set L3CountValue            1
126     set L4ValueType             singleValue
127     set L4CountValue            1
128
129     if {$learningFrames} {
130         set learningFrequency   oncePerTest
131         set fastPathEnable      True
132     } else {
133         set learningFrequency   never
134         set fastPathEnable      False
135     }
136
137     set multipleStreams         [dict get $testSpec multipleStreams]
138     set streamType              [dict get $testSpec streamType]
139
140     if {($multipleStreams < 0)} {
141         set multipleStreams     0
142     }
143
144     if {$multipleStreams} {
145         if {($streamType == "L2")} {
146             set L2CountValue    $multipleStreams
147             set L2Increment     True
148         } elseif {($streamType == "L3")} {
149             set L3ValueType     increment
150             set L3CountValue    $multipleStreams
151         } else {
152             set L4ValueType     increment
153             set L4CountValue    $multipleStreams
154         }
155     }
156
157     set flowControl             [dict get $testSpec flowControl]
158     set fastConvergence         True
159     set convergenceDuration     [expr $duration/10]
160
161     # traffic spec
162
163     # extract nested dictionaries
164     set trafficSpec_l2          [dict get $trafficSpec l2]
165     set trafficSpec_l3          [dict get $trafficSpec l3]
166     set trafficSpec_l4          [dict get $trafficSpec l4]
167     set trafficSpec_vlan        [dict get $trafficSpec vlan]
168
169     set frameSize               [dict get $trafficSpec_l2 framesize]
170           set srcMac                  [dict get $trafficSpec_l2 srcmac]
171     set dstMac                  [dict get $trafficSpec_l2 dstmac]
172     set srcPort                 [dict get $trafficSpec_l4 srcport]
173     set dstPort                 [dict get $trafficSpec_l4 dstport]
174
175     set proto                   [dict get $trafficSpec_l3 proto]
176     set srcIp                   [dict get $trafficSpec_l3 srcip]
177     set dstIp                   [dict get $trafficSpec_l3 dstip]
178           set vlanEnabled             [dict get $trafficSpec_vlan enabled]
179           set l3Enabled               [dict get $trafficSpec_l3 enabled]
180           set l4Enabled [dict get $trafficSpec_l4 enabled]
181
182
183     if {$frameSize < 68 } {
184         if {$rfc2544TestType == "back2back"} {
185             puts "INFO: Packet size too small, packet size will be \
186                   increased to 68 for this test"
187         }
188     }
189     # constants
190
191     set VERSION [package require IxTclNetwork]
192
193     ###################################################################
194     ############################ Operation ############################
195     ###################################################################
196
197     puts "Connecting to IxNetwork machine..."
198
199     ixNet connect $::IxNserver -port $::IxNport -version $VERSION
200
201     puts "Connected to IxNetwork machine"
202
203     puts "Configuring IxNetwork machine..."
204
205     set ::_sg_cc 0
206     proc sg_commit {} {ixNet commit}
207
208     ixNet rollback
209     ixNet setSessionParameter version 6.30.701.16
210     ixNet execute newConfig
211     set ixNetSG_Stack(0) [ixNet getRoot]
212
213     #
214     # setting global options
215     #
216     set sg_top [ixNet getRoot]
217     ixNet setMultiAttrs $sg_top/availableHardware \
218      -offChassisHwM {} \
219      -isOffChassis False
220     ixNet setMultiAttrs $sg_top/globals/preferences \
221      -connectPortsOnLoadConfig True \
222      -rebootPortsOnConnect False
223     ixNet setMultiAttrs $sg_top/globals/interfaces \
224      -arpOnLinkup True \
225      -nsOnLinkup True \
226      -sendSingleArpPerGateway True \
227      -sendSingleNsPerGateway True
228     ixNet setMultiAttrs $sg_top/impairment/defaultProfile/checksums \
229      -dropRxL2FcsErrors False \
230      -correctTxL2FcsErrors False \
231      -alwaysCorrectWhenModifying True \
232      -correctTxChecksumOverIp False \
233      -correctTxIpv4Checksum False
234     ixNet setMultiAttrs $sg_top/impairment/defaultProfile/rxRateLimit \
235      -enabled False \
236      -value 8 \
237      -units {kKilobitsPerSecond}
238     ixNet setMultiAttrs $sg_top/impairment/defaultProfile/drop \
239      -enabled False \
240      -clusterSize 1 \
241      -percentRate 0
242     ixNet setMultiAttrs $sg_top/impairment/defaultProfile/reorder \
243      -enabled False \
244      -clusterSize 1 \
245      -percentRate 0 \
246      -skipCount 1
247     ixNet setMultiAttrs $sg_top/impairment/defaultProfile/duplicate \
248      -enabled False \
249      -clusterSize 1 \
250      -percentRate 0 \
251      -duplicateCount 1
252     ixNet setMultiAttrs $sg_top/impairment/defaultProfile/bitError \
253      -enabled False \
254      -logRate 3 \
255      -skipEndOctets 0 \
256      -skipStartOctets 0
257     ixNet setMultiAttrs $sg_top/impairment/defaultProfile/delay \
258      -enabled False \
259      -value 300 \
260      -units {kMicroseconds}
261     ixNet setMultiAttrs $sg_top/impairment/defaultProfile/delayVariation \
262      -uniformSpread 0 \
263      -enabled False \
264      -units {kMicroseconds} \
265      -distribution {kUniform} \
266      -exponentialMeanArrival 0 \
267      -gaussianStandardDeviation 0
268     ixNet setMultiAttrs $sg_top/impairment/defaultProfile/customDelayVariation \
269      -enabled False \
270      -name {}
271     ixNet setMultiAttrs $sg_top/statistics \
272      -additionalFcoeStat2 fcoeInvalidFrames \
273      -csvLogPollIntervalMultiplier 1 \
274      -pollInterval 2 \
275      -guardrailEnabled True \
276      -enableCsvLogging False\
277      -dataStorePollingIntervalMultiplier 1 \
278      -maxNumberOfStatsPerCustomGraph 16 \
279      -additionalFcoeStat1 fcoeInvalidDelimiter \
280      -timestampPrecision 3 \
281      -enableDataCenterSharedStats False \
282      -timeSynchronization syncTimeToTestStart \
283      -enableAutoDataStore False
284     ixNet setMultiAttrs $sg_top/statistics/measurementMode \
285      -measurementMode mixedMode
286     ixNet setMultiAttrs $sg_top/eventScheduler \
287      -licenseServerLocation {127.0.0.1}
288     ixNet setMultiAttrs $sg_top/traffic \
289      -destMacRetryCount 1 \
290      -maxTrafficGenerationQueries 500 \
291      -enableStaggeredTransmit False \
292      -learningFrameSize $frameSize \
293      -useTxRxSync True \
294      -enableDestMacRetry True \
295      -enableMulticastScalingFactor False \
296      -destMacRetryDelay 5 \
297      -largeErrorThreshhold 2 \
298      -refreshLearnedInfoBeforeApply False \
299      -enableMinFrameSize True \
300      -macChangeOnFly False \
301      -waitTime 1 \
302      -enableInstantaneousStatsSupport False \
303      -learningFramesCount 10 \
304      -globalStreamControl continuous \
305      -displayMplsCurrentLabelValue False \
306      -mplsLabelLearningTimeout 30 \
307      -enableStaggeredStartDelay True \
308      -enableDataIntegrityCheck False \
309      -enableSequenceChecking False \
310      -globalStreamControlIterations 1 \
311      -enableStreamOrdering False \
312      -frameOrderingMode none \
313      -learningFramesRate 100
314     ixNet setMultiAttrs $sg_top/traffic/statistics/latency \
315      -enabled True \
316      -mode storeForward
317     ixNet setMultiAttrs $sg_top/traffic/statistics/interArrivalTimeRate \
318      -enabled False
319     ixNet setMultiAttrs $sg_top/traffic/statistics/delayVariation \
320      -enabled False \
321      -statisticsMode rxDelayVariationErrorsAndRate \
322      -latencyMode storeForward \
323      -largeSequenceNumberErrorThreshold 2
324     ixNet setMultiAttrs $sg_top/traffic/statistics/sequenceChecking \
325      -enabled False \
326      -sequenceMode rxThreshold
327     ixNet setMultiAttrs $sg_top/traffic/statistics/advancedSequenceChecking \
328      -enabled False \
329      -advancedSequenceThreshold 1
330     ixNet setMultiAttrs $sg_top/traffic/statistics/cpdpConvergence \
331      -enabled False \
332      -dataPlaneJitterWindow 10485760 \
333      -dataPlaneThreshold 95 \
334      -enableDataPlaneEventsRateMonitor False \
335      -enableControlPlaneEvents False
336     ixNet setMultiAttrs $sg_top/traffic/statistics/packetLossDuration \
337      -enabled False
338     ixNet setMultiAttrs $sg_top/traffic/statistics/dataIntegrity \
339      -enabled False
340     ixNet setMultiAttrs $sg_top/traffic/statistics/errorStats \
341      -enabled False
342     ixNet setMultiAttrs $sg_top/traffic/statistics/prbs \
343      -enabled False
344     ixNet setMultiAttrs $sg_top/traffic/statistics/iptv \
345      -enabled False
346     ixNet setMultiAttrs $sg_top/traffic/statistics/l1Rates \
347      -enabled False
348     ixNet setMultiAttrs $sg_top/quickTest/globals \
349      -productLabel {Your switch/router name here} \
350      -serialNumber {Your switch/router serial number here} \
351      -version {Your firmware version here} \
352      -comments {} \
353      -titlePageComments {} \
354      -maxLinesToDisplay 100 \
355      -enableCheckLinkState False \
356      -enableAbortIfLinkDown False \
357      -enableSwitchToStats True \
358      -enableCapture False \
359      -enableSwitchToResult True \
360      -enableGenerateReportAfterRun False \
361      -enableRebootCpu False \
362      -saveCaptureBeforeRun False \
363      -linkDownTimeout 5 \
364      -sleepTimeAfterReboot 10 \
365      -useDefaultRootPath False \
366      -outputRootPath $::output_dir
367     sg_commit
368     #set sg_top [lindex [ixNet remapIds $sg_top] 0]
369     set ixNetSG_Stack(0) $sg_top
370
371     ###
372     ### /vport area
373     ###
374
375     #
376     # configuring the object that corresponds to /vport:1
377     #
378     set sg_vport [ixNet add $ixNetSG_Stack(0) vport]
379     ixNet setMultiAttrs $sg_vport \
380      -transmitIgnoreLinkStatus False \
381      -txGapControlMode averageMode \
382      -type tenGigLan \
383      -connectedTo ::ixNet::OBJ-null \
384      -txMode interleaved \
385      -isPullOnly False \
386      -rxMode captureAndMeasure \
387      -name {10GE LAN - 001}
388     ixNet setMultiAttrs $sg_vport/l1Config \
389      -currentType tenGigLan
390     ixNet setMultiAttrs $sg_vport/l1Config/tenGigLan \
391      -ppm 0 \
392      -flowControlDirectedAddress "01 80 C2 00 00 01" \
393      -enablePPM False \
394      -autoInstrumentation endOfFrame \
395      -transmitClocking internal \
396      -txIgnoreRxLinkFaults False \
397      -loopback False \
398      -enableLASIMonitoring False \
399      -enabledFlowControl $flowControl
400     ixNet setMultiAttrs $sg_vport/l1Config/tenGigLan/oam \
401      -tlvType {00} \
402      -linkEvents False \
403      -enabled False \
404      -vendorSpecificInformation {00 00 00 00} \
405      -macAddress "00:00:00:00:00:00" \
406      -loopback False \
407      -idleTimer 5 \
408      -tlvValue {00} \
409      -enableTlvOption False \
410      -maxOAMPDUSize 64 \
411      -organizationUniqueIdentifier {000000}
412     ixNet setMultiAttrs $sg_vport/l1Config/tenGigLan/fcoe \
413      -supportDataCenterMode False \
414      -priorityGroupSize priorityGroupSize-8 \
415      -pfcPauseDelay 1 \
416      -pfcPriorityGroups {0 1 2 3 4 5 6 7} \
417      -flowControlType ieee802.1Qbb \
418      -enablePFCPauseDelay False
419     ixNet setMultiAttrs $sg_vport/l1Config/fortyGigLan \
420      -ppm 0 \
421      -flowControlDirectedAddress "01 80 C2 00 00 01" \
422      -enablePPM False \
423      -autoInstrumentation endOfFrame \
424      -transmitClocking internal \
425      -txIgnoreRxLinkFaults False \
426      -loopback False \
427      -enableLASIMonitoring False \
428      -enabledFlowControl $flowControl
429     ixNet setMultiAttrs $sg_vport/l1Config/fortyGigLan/fcoe \
430      -supportDataCenterMode False \
431      -priorityGroupSize priorityGroupSize-8 \
432      -pfcPauseDelay 1 \
433      -pfcPriorityGroups {0 1 2 3 4 5 6 7} \
434      -flowControlType ieee802.1Qbb \
435      -enablePFCPauseDelay False
436     ixNet setMultiAttrs $sg_vport/l1Config/OAM \
437      -tlvType {00} \
438      -linkEvents False \
439      -enabled False \
440      -vendorSpecificInformation {00 00 00 00} \
441      -macAddress "00:00:00:00:00:00" \
442      -loopback False \
443      -idleTimer 5 \
444      -tlvValue {00} \
445      -enableTlvOption False \
446      -maxOAMPDUSize 64 \
447      -organizationUniqueIdentifier {000000}
448     ixNet setMultiAttrs $sg_vport/l1Config/rxFilters/filterPalette \
449      -sourceAddress1Mask {00:00:00:00:00:00} \
450      -destinationAddress1Mask {00:00:00:00:00:00} \
451      -sourceAddress2 {00:00:00:00:00:00} \
452      -pattern2OffsetType fromStartOfFrame \
453      -pattern2Offset 20 \
454      -pattern1Mask {00} \
455      -sourceAddress2Mask {00:00:00:00:00:00} \
456      -destinationAddress2 {00:00:00:00:00:00} \
457      -destinationAddress1 {00:00:00:00:00:00} \
458      -sourceAddress1 {00:00:00:00:00:00} \
459      -pattern1 {00} \
460      -destinationAddress2Mask {00:00:00:00:00:00} \
461      -pattern2Mask {00} \
462      -pattern1Offset 20 \
463      -pattern2 {00} \
464      -pattern1OffsetType fromStartOfFrame
465     ixNet setMultiAttrs $sg_vport/protocols/arp \
466      -enabled False
467     ixNet setMultiAttrs $sg_vport/protocols/bfd \
468      -enabled False \
469      -intervalValue 0 \
470      -packetsPerInterval 0
471     ixNet setMultiAttrs $sg_vport/protocols/bgp \
472      -autoFillUpDutIp False \
473      -disableReceivedUpdateValidation False \
474      -enableAdVplsPrefixLengthInBits False \
475      -enableExternalActiveConnect True \
476      -enableInternalActiveConnect True \
477      -enableVpnLabelExchangeOverLsp True \
478      -enabled False \
479      -externalRetries 0 \
480      -externalRetryDelay 120 \
481      -internalRetries 0 \
482      -internalRetryDelay 120 \
483      -mldpP2mpFecType 6 \
484      -triggerVplsPwInitiation False
485     ixNet setMultiAttrs $sg_vport/protocols/cfm \
486      -enableOptionalLmFunctionality False \
487      -enableOptionalTlvValidation True \
488      -enabled False \
489      -receiveCcm True \
490      -sendCcm True \
491      -suppressErrorsOnAis True
492     ixNet setMultiAttrs $sg_vport/protocols/eigrp \
493      -enabled False
494     ixNet setMultiAttrs $sg_vport/protocols/elmi \
495      -enabled False
496     ixNet setMultiAttrs $sg_vport/protocols/igmp \
497      -enabled False \
498      -numberOfGroups 0 \
499      -numberOfQueries 0 \
500      -queryTimePeriod 0 \
501      -sendLeaveOnStop True \
502      -statsEnabled False \
503      -timePeriod 0
504     ixNet setMultiAttrs $sg_vport/protocols/isis \
505      -allL1RbridgesMac "01:80:c2:00:00:40" \
506      -emulationType isisL3Routing \
507      -enabled False \
508      -helloMulticastMac "01:80:c2:00:00:41" \
509      -lspMgroupPdusPerInterval 0 \
510      -nlpId 192 \
511      -rateControlInterval 0 \
512      -sendP2PHellosToUnicastMac True \
513      -spbAllL1BridgesMac "09:00:2b:00:00:05" \
514      -spbHelloMulticastMac "09:00:2b:00:00:05" \
515      -spbNlpId 192
516     ixNet setMultiAttrs $sg_vport/protocols/lacp \
517      -enablePreservePartnerInfo False \
518      -enabled False
519     ixNet setMultiAttrs $sg_vport/protocols/ldp \
520      -enableDiscardSelfAdvFecs False \
521      -enableHelloJitter True \
522      -enableVpnLabelExchangeOverLsp True \
523      -enabled False \
524      -helloHoldTime 15 \
525      -helloInterval 5 \
526      -keepAliveHoldTime 30 \
527      -keepAliveInterval 10 \
528      -p2mpCapabilityParam 1288 \
529      -p2mpFecType 6 \
530      -targetedHelloInterval 15 \
531      -targetedHoldTime 45 \
532      -useTransportLabelsForMplsOam False
533     ixNet setMultiAttrs $sg_vport/protocols/linkOam \
534      -enabled False
535     ixNet setMultiAttrs $sg_vport/protocols/lisp \
536      -burstIntervalInMs 0 \
537      -enabled False \
538      -ipv4MapRegisterPacketsPerBurst 0 \
539      -ipv4MapRequestPacketsPerBurst 0 \
540      -ipv4SmrPacketsPerBurst 0 \
541      -ipv6MapRegisterPacketsPerBurst 0 \
542      -ipv6MapRequestPacketsPerBurst 0 \
543      -ipv6SmrPacketsPerBurst 0
544     ixNet setMultiAttrs $sg_vport/protocols/mld \
545      -enableDoneOnStop True \
546      -enabled False \
547      -mldv2Report type143 \
548      -numberOfGroups 0 \
549      -numberOfQueries 0 \
550      -queryTimePeriod 0 \
551      -timePeriod 0
552     ixNet setMultiAttrs $sg_vport/protocols/mplsOam \
553      -enabled False
554     ixNet setMultiAttrs $sg_vport/protocols/mplsTp \
555      -apsChannelType {00 02 } \
556      -bfdCcChannelType {00 07 } \
557      -delayManagementChannelType {00 05 } \
558      -enableHighPerformanceMode True \
559      -enabled False \
560      -faultManagementChannelType {00 58 } \
561      -lossMeasurementChannelType {00 04 } \
562      -onDemandCvChannelType {00 09 } \
563      -pwStatusChannelType {00 0B } \
564      -y1731ChannelType {7F FA }
565     ixNet setMultiAttrs $sg_vport/protocols/ospf \
566      -enableDrOrBdr False \
567      -enabled False \
568      -floodLinkStateUpdatesPerInterval 0 \
569      -rateControlInterval 0
570     ixNet setMultiAttrs $sg_vport/protocols/ospfV3 \
571      -enabled False
572     ixNet setMultiAttrs $sg_vport/protocols/pimsm \
573      -bsmFramePerInterval 0 \
574      -crpFramePerInterval 0 \
575      -dataMdtFramePerInterval 0 \
576      -denyGrePimIpPrefix {0.0.0.0/32} \
577      -enableDiscardJoinPruneProcessing False \
578      -enableRateControl False \
579      -enabled False \
580      -helloMsgsPerInterval 0 \
581      -interval 0 \
582      -joinPruneMessagesPerInterval 0 \
583      -registerMessagesPerInterval 0 \
584      -registerStopMessagesPerInterval 0
585     ixNet setMultiAttrs $sg_vport/protocols/ping \
586      -enabled False
587     ixNet setMultiAttrs $sg_vport/protocols/rip \
588      -enabled False
589     ixNet setMultiAttrs $sg_vport/protocols/ripng \
590      -enabled False
591     ixNet setMultiAttrs $sg_vport/protocols/rsvp \
592      -enableControlLspInitiationRate False \
593      -enableShowTimeValue False \
594      -enableVpnLabelExchangeOverLsp True \
595      -enabled False \
596      -maxLspInitiationsPerSec 400 \
597      -useTransportLabelsForMplsOam False
598     ixNet setMultiAttrs $sg_vport/protocols/stp \
599      -enabled False
600     ixNet setMultiAttrs $sg_vport/rateControlParameters \
601      -maxRequestsPerBurst 1 \
602      -maxRequestsPerSec 250 \
603      -minRetryInterval 10 \
604      -retryCount 3 \
605      -sendInBursts False \
606      -sendRequestsAsFastAsPossible False
607     ixNet setMultiAttrs $sg_vport/capture \
608      -controlCaptureTrigger {} \
609      -controlCaptureFilter {} \
610      -hardwareEnabled False \
611      -softwareEnabled False \
612      -displayFiltersDataCapture {} \
613      -displayFiltersControlCapture {} \
614      -controlBufferSize 30 \
615      -controlBufferBehaviour bufferLiveNonCircular
616     ixNet setMultiAttrs $sg_vport/protocolStack/options \
617      -routerSolicitationDelay 1 \
618      -routerSolicitationInterval 4 \
619      -routerSolicitations 3 \
620      -retransTime 1000 \
621      -dadTransmits 1 \
622      -dadEnabled True \
623      -ipv4RetransTime 3000 \
624      -ipv4McastSolicit 4
625     sg_commit
626     set sg_vport [lindex [ixNet remapIds $sg_vport] 0]
627     set ixNetSG_ref(2) $sg_vport
628     set ixNetSG_Stack(1) $sg_vport
629
630     #
631     # configuring the object that corresponds to /vport:1/l1Config/rxFilters/uds:1
632     #
633     set sg_uds $ixNetSG_Stack(1)/l1Config/rxFilters/uds:1
634     ixNet setMultiAttrs $sg_uds \
635      -destinationAddressSelector anyAddr \
636      -customFrameSizeTo 0 \
637      -customFrameSizeFrom 0 \
638      -error errAnyFrame \
639      -patternSelector anyPattern \
640      -sourceAddressSelector anyAddr \
641      -isEnabled True \
642      -frameSizeType any
643     sg_commit
644     set sg_uds [lindex [ixNet remapIds $sg_uds] 0]
645
646     #
647     # configuring the object that corresponds to /vport:1/l1Config/rxFilters/uds:2
648     #
649     set sg_uds $ixNetSG_Stack(1)/l1Config/rxFilters/uds:2
650     ixNet setMultiAttrs $sg_uds \
651      -destinationAddressSelector anyAddr \
652      -customFrameSizeTo 0 \
653      -customFrameSizeFrom 0 \
654      -error errAnyFrame \
655      -patternSelector anyPattern \
656      -sourceAddressSelector anyAddr \
657      -isEnabled True \
658      -frameSizeType any
659     sg_commit
660     set sg_uds [lindex [ixNet remapIds $sg_uds] 0]
661
662     #
663     # configuring the object that corresponds to /vport:1/l1Config/rxFilters/uds:3
664     #
665     set sg_uds $ixNetSG_Stack(1)/l1Config/rxFilters/uds:3
666     ixNet setMultiAttrs $sg_uds \
667      -destinationAddressSelector anyAddr \
668      -customFrameSizeTo 0 \
669      -customFrameSizeFrom 0 \
670      -error errAnyFrame \
671      -patternSelector anyPattern \
672      -sourceAddressSelector anyAddr \
673      -isEnabled True \
674      -frameSizeType any
675     sg_commit
676     set sg_uds [lindex [ixNet remapIds $sg_uds] 0]
677
678     #
679     # configuring the object that corresponds to /vport:1/l1Config/rxFilters/uds:4
680     #
681     set sg_uds $ixNetSG_Stack(1)/l1Config/rxFilters/uds:4
682     ixNet setMultiAttrs $sg_uds \
683      -destinationAddressSelector anyAddr \
684      -customFrameSizeTo 0 \
685      -customFrameSizeFrom 0 \
686      -error errAnyFrame \
687      -patternSelector anyPattern \
688      -sourceAddressSelector anyAddr \
689      -isEnabled True \
690      -frameSizeType any
691     sg_commit
692     set sg_uds [lindex [ixNet remapIds $sg_uds] 0]
693
694     #
695     # configuring the object that corresponds to /vport:1/l1Config/rxFilters/uds:5
696     #
697     set sg_uds $ixNetSG_Stack(1)/l1Config/rxFilters/uds:5
698     ixNet setMultiAttrs $sg_uds \
699      -destinationAddressSelector anyAddr \
700      -customFrameSizeTo 0 \
701      -customFrameSizeFrom 0 \
702      -error errAnyFrame \
703      -patternSelector anyPattern \
704      -sourceAddressSelector anyAddr \
705      -isEnabled True \
706      -frameSizeType any
707     sg_commit
708     set sg_uds [lindex [ixNet remapIds $sg_uds] 0]
709
710     #
711     # configuring the object that corresponds to /vport:1/l1Config/rxFilters/uds:6
712     #
713     set sg_uds $ixNetSG_Stack(1)/l1Config/rxFilters/uds:6
714     ixNet setMultiAttrs $sg_uds \
715      -destinationAddressSelector anyAddr \
716      -customFrameSizeTo 0 \
717      -customFrameSizeFrom 0 \
718      -error errAnyFrame \
719      -patternSelector anyPattern \
720      -sourceAddressSelector anyAddr \
721      -isEnabled True \
722      -frameSizeType any
723     sg_commit
724     set sg_uds [lindex [ixNet remapIds $sg_uds] 0]
725
726     #
727     # configuring the object that corresponds to /vport:1/protocols/static/lan:1
728     #
729     set sg_lan [ixNet add $ixNetSG_Stack(1)/protocols/static lan]
730     ixNet setMultiAttrs $sg_lan \
731      -atmEncapsulation ::ixNet::OBJ-null \
732      -count $L2CountValue \
733      -countPerVc 1 \
734      -enableIncrementMac $L2Increment \
735      -enableIncrementVlan False \
736      -enableSiteId False \
737      -enableVlan False \
738      -enabled True \
739      -frEncapsulation ::ixNet::OBJ-null \
740      -incrementPerVcVlanMode noIncrement \
741      -incrementVlanMode noIncrement \
742      -mac $srcMac \
743      -macRangeMode normal \
744      -numberOfVcs 1 \
745      -siteId 0 \
746      -skipVlanIdZero True \
747      -tpid {0x8100} \
748      -trafficGroupId ::ixNet::OBJ-null \
749      -vlanCount 1 \
750      -vlanId {1} \
751      -vlanPriority {0}
752     sg_commit
753     set sg_lan [lindex [ixNet remapIds $sg_lan] 0]
754
755     if {$twoPorts} {
756         #
757         # configuring the object that corresponds to /vport:2
758         #
759         set sg_vport [ixNet add $ixNetSG_Stack(0) vport]
760         ixNet setMultiAttrs $sg_vport \
761          -transmitIgnoreLinkStatus False \
762          -txGapControlMode averageMode \
763          -type tenGigLan \
764          -connectedTo ::ixNet::OBJ-null \
765          -txMode interleaved \
766          -isPullOnly False \
767          -rxMode captureAndMeasure \
768          -name {10GE LAN - 002}
769         ixNet setMultiAttrs $sg_vport/l1Config \
770          -currentType tenGigLan
771         ixNet setMultiAttrs $sg_vport/l1Config/tenGigLan \
772          -ppm 0 \
773          -flowControlDirectedAddress "01 80 C2 00 00 01" \
774          -enablePPM False \
775          -autoInstrumentation endOfFrame \
776          -transmitClocking internal \
777          -txIgnoreRxLinkFaults False \
778          -loopback False \
779          -enableLASIMonitoring False \
780          -enabledFlowControl $flowControl
781         ixNet setMultiAttrs $sg_vport/l1Config/tenGigLan/oam \
782          -tlvType {00} \
783          -linkEvents False \
784          -enabled False \
785          -vendorSpecificInformation {00 00 00 00} \
786          -macAddress "00:00:00:00:00:00" \
787          -loopback False \
788          -idleTimer 5 \
789          -tlvValue {00} \
790          -enableTlvOption False \
791          -maxOAMPDUSize 64 \
792          -organizationUniqueIdentifier {000000}
793         ixNet setMultiAttrs $sg_vport/l1Config/tenGigLan/fcoe \
794          -supportDataCenterMode False \
795          -priorityGroupSize priorityGroupSize-8 \
796          -pfcPauseDelay 1 \
797          -pfcPriorityGroups {0 1 2 3 4 5 6 7} \
798          -flowControlType ieee802.1Qbb \
799          -enablePFCPauseDelay False
800         ixNet setMultiAttrs $sg_vport/l1Config/fortyGigLan \
801          -ppm 0 \
802          -flowControlDirectedAddress "01 80 C2 00 00 01" \
803          -enablePPM False \
804          -autoInstrumentation endOfFrame \
805          -transmitClocking internal \
806          -txIgnoreRxLinkFaults False \
807          -loopback False \
808          -enableLASIMonitoring False \
809          -enabledFlowControl $flowControl
810         ixNet setMultiAttrs $sg_vport/l1Config/fortyGigLan/fcoe \
811          -supportDataCenterMode False \
812          -priorityGroupSize priorityGroupSize-8 \
813          -pfcPauseDelay 1 \
814          -pfcPriorityGroups {0 1 2 3 4 5 6 7} \
815          -flowControlType ieee802.1Qbb \
816          -enablePFCPauseDelay False
817         ixNet setMultiAttrs $sg_vport/l1Config/OAM \
818          -tlvType {00} \
819          -linkEvents False \
820          -enabled False \
821          -vendorSpecificInformation {00 00 00 00} \
822          -macAddress "00:00:00:00:00:00" \
823          -loopback False \
824          -idleTimer 5 \
825          -tlvValue {00} \
826          -enableTlvOption False \
827          -maxOAMPDUSize 64 \
828          -organizationUniqueIdentifier {000000}
829         ixNet setMultiAttrs $sg_vport/l1Config/rxFilters/filterPalette \
830          -sourceAddress1Mask {00:00:00:00:00:00} \
831          -destinationAddress1Mask {00:00:00:00:00:00} \
832          -sourceAddress2 {00:00:00:00:00:00} \
833          -pattern2OffsetType fromStartOfFrame \
834          -pattern2Offset 20 \
835          -pattern1Mask {00} \
836          -sourceAddress2Mask {00:00:00:00:00:00} \
837          -destinationAddress2 {00:00:00:00:00:00} \
838          -destinationAddress1 {00:00:00:00:00:00} \
839          -sourceAddress1 {00:00:00:00:00:00} \
840          -pattern1 {00} \
841          -destinationAddress2Mask {00:00:00:00:00:00} \
842          -pattern2Mask {00} \
843          -pattern1Offset 20 \
844          -pattern2 {00} \
845          -pattern1OffsetType fromStartOfFrame
846         ixNet setMultiAttrs $sg_vport/protocols/arp \
847          -enabled False
848         ixNet setMultiAttrs $sg_vport/protocols/bfd \
849          -enabled False \
850          -intervalValue 0 \
851          -packetsPerInterval 0
852         ixNet setMultiAttrs $sg_vport/protocols/bgp \
853          -autoFillUpDutIp False \
854          -disableReceivedUpdateValidation False \
855          -enableAdVplsPrefixLengthInBits False \
856          -enableExternalActiveConnect True \
857          -enableInternalActiveConnect True \
858          -enableVpnLabelExchangeOverLsp True \
859          -enabled False \
860          -externalRetries 0 \
861          -externalRetryDelay 120 \
862          -internalRetries 0 \
863          -internalRetryDelay 120 \
864          -mldpP2mpFecType 6 \
865          -triggerVplsPwInitiation False
866         ixNet setMultiAttrs $sg_vport/protocols/cfm \
867          -enableOptionalLmFunctionality False \
868          -enableOptionalTlvValidation True \
869          -enabled False \
870          -receiveCcm True \
871          -sendCcm True \
872          -suppressErrorsOnAis True
873         ixNet setMultiAttrs $sg_vport/protocols/eigrp \
874          -enabled False
875         ixNet setMultiAttrs $sg_vport/protocols/elmi \
876          -enabled False
877         ixNet setMultiAttrs $sg_vport/protocols/igmp \
878          -enabled False \
879          -numberOfGroups 0 \
880          -numberOfQueries 0 \
881          -queryTimePeriod 0 \
882          -sendLeaveOnStop True \
883          -statsEnabled False \
884          -timePeriod 0
885         ixNet setMultiAttrs $sg_vport/protocols/isis \
886          -allL1RbridgesMac "01:80:c2:00:00:40" \
887          -emulationType isisL3Routing \
888          -enabled False \
889          -helloMulticastMac "01:80:c2:00:00:41" \
890          -lspMgroupPdusPerInterval 0 \
891          -nlpId 192 \
892          -rateControlInterval 0 \
893          -sendP2PHellosToUnicastMac True \
894          -spbAllL1BridgesMac "09:00:2b:00:00:05" \
895          -spbHelloMulticastMac "09:00:2b:00:00:05" \
896          -spbNlpId 192
897         ixNet setMultiAttrs $sg_vport/protocols/lacp \
898          -enablePreservePartnerInfo False \
899          -enabled False
900         ixNet setMultiAttrs $sg_vport/protocols/ldp \
901          -enableDiscardSelfAdvFecs False \
902          -enableHelloJitter True \
903          -enableVpnLabelExchangeOverLsp True \
904          -enabled False \
905          -helloHoldTime 15 \
906          -helloInterval 5 \
907          -keepAliveHoldTime 30 \
908          -keepAliveInterval 10 \
909          -p2mpCapabilityParam 1288 \
910          -p2mpFecType 6 \
911          -targetedHelloInterval 15 \
912          -targetedHoldTime 45 \
913          -useTransportLabelsForMplsOam False
914         ixNet setMultiAttrs $sg_vport/protocols/linkOam \
915          -enabled False
916         ixNet setMultiAttrs $sg_vport/protocols/lisp \
917          -burstIntervalInMs 0 \
918          -enabled False \
919          -ipv4MapRegisterPacketsPerBurst 0 \
920          -ipv4MapRequestPacketsPerBurst 0 \
921          -ipv4SmrPacketsPerBurst 0 \
922          -ipv6MapRegisterPacketsPerBurst 0 \
923          -ipv6MapRequestPacketsPerBurst 0 \
924          -ipv6SmrPacketsPerBurst 0
925         ixNet setMultiAttrs $sg_vport/protocols/mld \
926          -enableDoneOnStop True \
927          -enabled False \
928          -mldv2Report type143 \
929          -numberOfGroups 0 \
930          -numberOfQueries 0 \
931          -queryTimePeriod 0 \
932          -timePeriod 0
933         ixNet setMultiAttrs $sg_vport/protocols/mplsOam \
934          -enabled False
935         ixNet setMultiAttrs $sg_vport/protocols/mplsTp \
936          -apsChannelType {00 02 } \
937          -bfdCcChannelType {00 07 } \
938          -delayManagementChannelType {00 05 } \
939          -enableHighPerformanceMode True \
940          -enabled False \
941          -faultManagementChannelType {00 58 } \
942          -lossMeasurementChannelType {00 04 } \
943          -onDemandCvChannelType {00 09 } \
944          -pwStatusChannelType {00 0B } \
945          -y1731ChannelType {7F FA }
946         ixNet setMultiAttrs $sg_vport/protocols/ospf \
947          -enableDrOrBdr False \
948          -enabled False \
949          -floodLinkStateUpdatesPerInterval 0 \
950          -rateControlInterval 0
951         ixNet setMultiAttrs $sg_vport/protocols/ospfV3 \
952          -enabled False
953         ixNet setMultiAttrs $sg_vport/protocols/pimsm \
954          -bsmFramePerInterval 0 \
955          -crpFramePerInterval 0 \
956          -dataMdtFramePerInterval 0 \
957          -denyGrePimIpPrefix {0.0.0.0/32} \
958          -enableDiscardJoinPruneProcessing False \
959          -enableRateControl False \
960          -enabled False \
961          -helloMsgsPerInterval 0 \
962          -interval 0 \
963          -joinPruneMessagesPerInterval 0 \
964          -registerMessagesPerInterval 0 \
965          -registerStopMessagesPerInterval 0
966         ixNet setMultiAttrs $sg_vport/protocols/ping \
967          -enabled False
968         ixNet setMultiAttrs $sg_vport/protocols/rip \
969          -enabled False
970         ixNet setMultiAttrs $sg_vport/protocols/ripng \
971          -enabled False
972         ixNet setMultiAttrs $sg_vport/protocols/rsvp \
973          -enableControlLspInitiationRate False \
974          -enableShowTimeValue False \
975          -enableVpnLabelExchangeOverLsp True \
976          -enabled False \
977          -maxLspInitiationsPerSec 400 \
978          -useTransportLabelsForMplsOam False
979         ixNet setMultiAttrs $sg_vport/protocols/stp \
980          -enabled False
981         ixNet setMultiAttrs $sg_vport/rateControlParameters \
982          -maxRequestsPerBurst 1 \
983          -maxRequestsPerSec 250 \
984          -minRetryInterval 10 \
985          -retryCount 3 \
986          -sendInBursts False \
987          -sendRequestsAsFastAsPossible False
988         ixNet setMultiAttrs $sg_vport/capture \
989          -controlCaptureTrigger {} \
990          -controlCaptureFilter {} \
991          -hardwareEnabled False \
992          -softwareEnabled False \
993          -displayFiltersDataCapture {} \
994          -displayFiltersControlCapture {} \
995          -controlBufferSize 30 \
996          -controlBufferBehaviour bufferLiveNonCircular
997         ixNet setMultiAttrs $sg_vport/protocolStack/options \
998          -routerSolicitationDelay 1 \
999          -routerSolicitationInterval 4 \
1000          -routerSolicitations 3 \
1001          -retransTime 1000 \
1002          -dadTransmits 1 \
1003          -dadEnabled True \
1004          -ipv4RetransTime 3000 \
1005          -ipv4McastSolicit 4
1006         sg_commit
1007         set sg_vport [lindex [ixNet remapIds $sg_vport] 0]
1008         set ixNetSG_ref(10) $sg_vport
1009         set ixNetSG_Stack(1) $sg_vport
1010
1011         #
1012         # configuring the object that corresponds to /vport:2/l1Config/rxFilters/uds:1
1013         #
1014         set sg_uds $ixNetSG_Stack(1)/l1Config/rxFilters/uds:1
1015         ixNet setMultiAttrs $sg_uds \
1016          -destinationAddressSelector anyAddr \
1017          -customFrameSizeTo 0 \
1018          -customFrameSizeFrom 0 \
1019          -error errAnyFrame \
1020          -patternSelector anyPattern \
1021          -sourceAddressSelector anyAddr \
1022          -isEnabled True \
1023          -frameSizeType any
1024         sg_commit
1025         set sg_uds [lindex [ixNet remapIds $sg_uds] 0]
1026
1027         #
1028         # configuring the object that corresponds to /vport:2/l1Config/rxFilters/uds:2
1029         #
1030         set sg_uds $ixNetSG_Stack(1)/l1Config/rxFilters/uds:2
1031         ixNet setMultiAttrs $sg_uds \
1032          -destinationAddressSelector anyAddr \
1033          -customFrameSizeTo 0 \
1034          -customFrameSizeFrom 0 \
1035          -error errAnyFrame \
1036          -patternSelector anyPattern \
1037          -sourceAddressSelector anyAddr \
1038          -isEnabled True \
1039          -frameSizeType any
1040         sg_commit
1041         set sg_uds [lindex [ixNet remapIds $sg_uds] 0]
1042
1043         #
1044         # configuring the object that corresponds to /vport:2/l1Config/rxFilters/uds:3
1045         #
1046         set sg_uds $ixNetSG_Stack(1)/l1Config/rxFilters/uds:3
1047         ixNet setMultiAttrs $sg_uds \
1048          -destinationAddressSelector anyAddr \
1049          -customFrameSizeTo 0 \
1050          -customFrameSizeFrom 0 \
1051          -error errAnyFrame \
1052          -patternSelector anyPattern \
1053          -sourceAddressSelector anyAddr \
1054          -isEnabled True \
1055          -frameSizeType any
1056         sg_commit
1057         set sg_uds [lindex [ixNet remapIds $sg_uds] 0]
1058
1059         #
1060         # configuring the object that corresponds to /vport:2/l1Config/rxFilters/uds:4
1061         #
1062         set sg_uds $ixNetSG_Stack(1)/l1Config/rxFilters/uds:4
1063         ixNet setMultiAttrs $sg_uds \
1064          -destinationAddressSelector anyAddr \
1065          -customFrameSizeTo 0 \
1066          -customFrameSizeFrom 0 \
1067          -error errAnyFrame \
1068          -patternSelector anyPattern \
1069          -sourceAddressSelector anyAddr \
1070          -isEnabled True \
1071          -frameSizeType any
1072         sg_commit
1073         set sg_uds [lindex [ixNet remapIds $sg_uds] 0]
1074
1075         #
1076         # configuring the object that corresponds to /vport:2/l1Config/rxFilters/uds:5
1077         #
1078         set sg_uds $ixNetSG_Stack(1)/l1Config/rxFilters/uds:5
1079         ixNet setMultiAttrs $sg_uds \
1080          -destinationAddressSelector anyAddr \
1081          -customFrameSizeTo 0 \
1082          -customFrameSizeFrom 0 \
1083          -error errAnyFrame \
1084          -patternSelector anyPattern \
1085          -sourceAddressSelector anyAddr \
1086          -isEnabled True \
1087          -frameSizeType any
1088         sg_commit
1089         set sg_uds [lindex [ixNet remapIds $sg_uds] 0]
1090
1091         #
1092         # configuring the object that corresponds to /vport:2/l1Config/rxFilters/uds:6
1093         #
1094         set sg_uds $ixNetSG_Stack(1)/l1Config/rxFilters/uds:6
1095         ixNet setMultiAttrs $sg_uds \
1096          -destinationAddressSelector anyAddr \
1097          -customFrameSizeTo 0 \
1098          -customFrameSizeFrom 0 \
1099          -error errAnyFrame \
1100          -patternSelector anyPattern \
1101          -sourceAddressSelector anyAddr \
1102          -isEnabled True \
1103          -frameSizeType any
1104         sg_commit
1105         set sg_uds [lindex [ixNet remapIds $sg_uds] 0]
1106
1107         #
1108         # configuring the object that corresponds to /vport:2/protocols/static/lan:1
1109         #
1110         set sg_lan [ixNet add $ixNetSG_Stack(1)/protocols/static lan]
1111         ixNet setMultiAttrs $sg_lan \
1112          -atmEncapsulation ::ixNet::OBJ-null \
1113          -count $L2CountValue \
1114          -countPerVc 1 \
1115          -enableIncrementMac $L2Increment \
1116          -enableIncrementVlan False \
1117          -enableSiteId False \
1118          -enableVlan False \
1119          -enabled True \
1120          -frEncapsulation ::ixNet::OBJ-null \
1121          -incrementPerVcVlanMode noIncrement \
1122          -incrementVlanMode noIncrement \
1123          -mac $dstMac \
1124          -macRangeMode normal \
1125          -numberOfVcs 1 \
1126          -siteId 0 \
1127          -skipVlanIdZero True \
1128          -tpid {0x8100} \
1129          -trafficGroupId ::ixNet::OBJ-null \
1130          -vlanCount 1 \
1131          -vlanId {1} \
1132          -vlanPriority {0}
1133         sg_commit
1134         set sg_lan [lindex [ixNet remapIds $sg_lan] 0]
1135     }
1136
1137     ###
1138     ### /availableHardware area
1139     ###
1140
1141     #
1142     # configuring the object that corresponds to /availableHardware/chassis"
1143     #
1144     set sg_chassis [ixNet add $ixNetSG_Stack(0)/availableHardware chassis]
1145     ixNet setMultiAttrs $sg_chassis \
1146      -masterChassis {} \
1147      -sequenceId 1 \
1148      -cableLength 0 \
1149      -hostname $::chassis
1150     sg_commit
1151     set sg_chassis [lindex [ixNet remapIds $sg_chassis] 0]
1152     set ixNetSG_Stack(1) $sg_chassis
1153
1154     #
1155     # configuring the object that corresponds to /availableHardware/chassis/card
1156     #
1157     set sg_card $ixNetSG_Stack(1)/card:$::card
1158     ixNet setMultiAttrs $sg_card \
1159      -aggregationMode normal
1160     sg_commit
1161     set sg_card [lindex [ixNet remapIds $sg_card] 0]
1162     set ixNetSG_ref(19) $sg_card
1163     set ixNetSG_Stack(2) $sg_card
1164
1165     #
1166     # configuring the object that corresponds to /availableHardware/chassis/card/aggregation:1
1167     #
1168     set sg_aggregation $ixNetSG_Stack(2)/aggregation:1
1169     ixNet setMultiAttrs $sg_aggregation \
1170      -mode normal
1171     sg_commit
1172     set sg_aggregation [lindex [ixNet remapIds $sg_aggregation] 0]
1173
1174     #
1175     # configuring the object that corresponds to /availableHardware/chassis/card/aggregation:2
1176     #
1177     set sg_aggregation $ixNetSG_Stack(2)/aggregation:2
1178     ixNet setMultiAttrs $sg_aggregation \
1179      -mode normal
1180     sg_commit
1181     set sg_aggregation [lindex [ixNet remapIds $sg_aggregation] 0]
1182
1183     #
1184     # configuring the object that corresponds to /availableHardware/chassis/card/aggregation:3
1185     #
1186     set sg_aggregation $ixNetSG_Stack(2)/aggregation:3
1187     ixNet setMultiAttrs $sg_aggregation \
1188      -mode normal
1189     sg_commit
1190     set sg_aggregation [lindex [ixNet remapIds $sg_aggregation] 0]
1191
1192     #
1193     # configuring the object that corresponds to /availableHardware/chassis/card/aggregation:4
1194     #
1195     set sg_aggregation $ixNetSG_Stack(2)/aggregation:4
1196     ixNet setMultiAttrs $sg_aggregation \
1197      -mode normal
1198     sg_commit
1199     set sg_aggregation [lindex [ixNet remapIds $sg_aggregation] 0]
1200     ixNet setMultiAttrs $ixNetSG_ref(2) \
1201      -connectedTo $ixNetSG_ref(19)/port:$::port1
1202     sg_commit
1203     if {$twoPorts} {
1204         ixNet setMultiAttrs $ixNetSG_ref(10) \
1205          -connectedTo $ixNetSG_ref(19)/port:$::port2
1206         sg_commit
1207     }
1208     sg_commit
1209
1210     ###
1211     ### /impairment area
1212     ###
1213
1214     #
1215     # configuring the object that corresponds to /impairment/profile:3
1216     #
1217     set sg_profile [ixNet add $ixNetSG_Stack(0)/impairment profile]
1218     ixNet setMultiAttrs $sg_profile \
1219      -enabled False \
1220      -name {Impairment Profile 1} \
1221      -links {} \
1222      -allLinks True \
1223      -priority 1
1224     ixNet setMultiAttrs $sg_profile/checksums \
1225      -dropRxL2FcsErrors False \
1226      -correctTxL2FcsErrors False \
1227      -alwaysCorrectWhenModifying True \
1228      -correctTxChecksumOverIp False \
1229      -correctTxIpv4Checksum False
1230     ixNet setMultiAttrs $sg_profile/rxRateLimit \
1231      -enabled False \
1232      -value 8 \
1233      -units {kKilobitsPerSecond}
1234     ixNet setMultiAttrs $sg_profile/drop \
1235      -enabled True \
1236      -clusterSize 1 \
1237      -percentRate 0
1238     ixNet setMultiAttrs $sg_profile/reorder \
1239      -enabled False \
1240      -clusterSize 1 \
1241      -percentRate 0 \
1242      -skipCount 1
1243     ixNet setMultiAttrs $sg_profile/duplicate \
1244      -enabled False \
1245      -clusterSize 1 \
1246      -percentRate 0 \
1247      -duplicateCount 1
1248     ixNet setMultiAttrs $sg_profile/bitError \
1249      -enabled False \
1250      -logRate 3 \
1251      -skipEndOctets 0 \
1252      -skipStartOctets 0
1253     ixNet setMultiAttrs $sg_profile/delay \
1254      -enabled True \
1255      -value 300 \
1256      -units {kMicroseconds}
1257     ixNet setMultiAttrs $sg_profile/delayVariation \
1258      -uniformSpread 0 \
1259      -enabled False \
1260      -units {kMicroseconds} \
1261      -distribution {kUniform} \
1262      -exponentialMeanArrival 0 \
1263      -gaussianStandardDeviation 0
1264     ixNet setMultiAttrs $sg_profile/customDelayVariation \
1265      -enabled False \
1266      -name {}
1267     sg_commit
1268     set sg_profile [lindex [ixNet remapIds $sg_profile] 0]
1269     set ixNetSG_Stack(1) $sg_profile
1270
1271     #
1272     # configuring the object that corresponds to /impairment/profile:3/fixedClassifier:1
1273     #
1274     set sg_fixedClassifier [ixNet add $ixNetSG_Stack(1) fixedClassifier]
1275     sg_commit
1276     set sg_fixedClassifier [lindex [ixNet remapIds $sg_fixedClassifier] 0]
1277
1278     ###
1279     ### /traffic area
1280     ###
1281
1282     #
1283     # configuring the object that corresponds to /traffic/trafficItem:1
1284     #
1285     set sg_trafficItem [ixNet add $ixNetSG_Stack(0)/traffic trafficItem]
1286     ixNet setMultiAttrs $sg_trafficItem \
1287      -transportRsvpTePreference one \
1288      -trafficItemType l2L3 \
1289      -biDirectional $::biDirect \
1290      -mergeDestinations True \
1291      -hostsPerNetwork 1 \
1292      -transmitMode interleaved \
1293      -ordinalNo 0 \
1294      -trafficType {ethernetVlan} \
1295      -interAsLdpPreference two \
1296      -allowSelfDestined $selfDestined \
1297      -enabled True \
1298      -maxNumberOfVpnLabelStack 2 \
1299      -interAsBgpPreference one \
1300      -suspend False \
1301      -transportLdpPreference two \
1302      -egressEnabled False \
1303      -enableDynamicMplsLabelValues False \
1304      -routeMesh oneToOne \
1305      -name {Traffic Item 1} \
1306      -srcDestMesh oneToOne
1307     sg_commit
1308     set sg_trafficItem [lindex [ixNet remapIds $sg_trafficItem] 0]
1309     set ixNetSG_ref(26) $sg_trafficItem
1310     set ixNetSG_Stack(1) $sg_trafficItem
1311
1312     #
1313     # configuring the object that corresponds to /traffic/trafficItem:1/endpointSet:1
1314     #
1315     set sg_endpointSet [ixNet add $ixNetSG_Stack(1) endpointSet]
1316     if {$twoPorts} {
1317         ixNet setMultiAttrs $sg_endpointSet \
1318          -destinations [list $ixNetSG_ref(10)/protocols] \
1319          -destinationFilter {} \
1320          -sourceFilter {} \
1321          -trafficGroups {} \
1322          -sources [list $ixNetSG_ref(2)/protocols] \
1323          -name {EndpointSet-1}
1324     } else {
1325         ixNet setMultiAttrs $sg_endpointSet \
1326          -destinations [list $ixNetSG_ref(2)/protocols] \
1327          -destinationFilter {} \
1328          -sourceFilter {} \
1329          -trafficGroups {} \
1330          -sources [list $ixNetSG_ref(2)/protocols] \
1331          -name {EndpointSet-1}
1332     }
1333     sg_commit
1334     set sg_endpointSet [lindex [ixNet remapIds $sg_endpointSet] 0]
1335
1336     #
1337     # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1
1338     #
1339     set sg_configElement $ixNetSG_Stack(1)/configElement:1
1340     ixNet setMultiAttrs $sg_configElement \
1341      -crc goodCrc \
1342      -preambleCustomSize 8 \
1343      -enableDisparityError False \
1344      -preambleFrameSizeMode auto \
1345      -destinationMacMode manual
1346     ixNet setMultiAttrs $sg_configElement/frameSize \
1347      -weightedPairs {} \
1348      -fixedSize $frameSizeList \
1349      -incrementFrom 64 \
1350      -randomMin 64 \
1351      -randomMax 1518 \
1352      -quadGaussian {} \
1353      -type fixed \
1354      -presetDistribution cisco \
1355      -incrementStep 1 \
1356      -incrementTo 1518
1357     ixNet setMultiAttrs $sg_configElement/frameRate \
1358      -bitRateUnitsType bitsPerSec \
1359      -rate 10 \
1360      -enforceMinimumInterPacketGap 0 \
1361      -type percentLineRate \
1362      -interPacketGapUnitsType nanoseconds
1363     ixNet setMultiAttrs $sg_configElement/framePayload \
1364      -type incrementByte \
1365      -customRepeat True \
1366      -customPattern {}
1367     ixNet setMultiAttrs $sg_configElement/frameRateDistribution \
1368      -streamDistribution applyRateToAll \
1369      -portDistribution applyRateToAll
1370     ixNet setMultiAttrs $sg_configElement/transmissionControl \
1371      -frameCount 1 \
1372      -minGapBytes 12 \
1373      -interStreamGap 0 \
1374      -interBurstGap 0 \
1375      -interBurstGapUnits nanoseconds \
1376      -type continuous \
1377      -duration 1 \
1378      -repeatBurst 1 \
1379      -enableInterStreamGap False \
1380      -startDelayUnits bytes \
1381      -iterationCount 1 \
1382      -burstPacketCount 1 \
1383      -enableInterBurstGap False \
1384      -startDelay 0
1385     sg_commit
1386     set sg_configElement [lindex [ixNet remapIds $sg_configElement] 0]
1387     set ixNetSG_Stack(2) $sg_configElement
1388
1389     #
1390     # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ethernet-1"
1391     #
1392     set sg_stack $ixNetSG_Stack(2)/stack:"ethernet-$stack_number"
1393     sg_commit
1394     set sg_stack [lindex [ixNet remapIds $sg_stack] 0]
1395     set ixNetSG_Stack(3) $sg_stack
1396     incr stack_number
1397
1398     #
1399     # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ethernet-1"/field:"ethernet.header.destinationAddress-1"
1400     #
1401     set sg_field $ixNetSG_Stack(3)/field:"ethernet.header.destinationAddress-1"
1402     ixNet setMultiAttrs $sg_field \
1403      -singleValue $dstMac \
1404      -seed {1} \
1405      -optionalEnabled True \
1406      -fullMesh False \
1407      -valueList {{00:00:00:00:00:00}} \
1408      -stepValue {00:00:00:00:00:01} \
1409      -fixedBits {00:00:00:00:00:00} \
1410      -fieldValue $dstMac \
1411      -auto False \
1412      -randomMask {00:00:00:00:00:00} \
1413      -trackingEnabled False \
1414      -valueType singleValue \
1415      -activeFieldChoice False \
1416      -startValue $dstMac \
1417      -countValue {1}
1418     sg_commit
1419     set sg_field [lindex [ixNet remapIds $sg_field] 0]
1420
1421     #
1422     # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ethernet-1"/field:"ethernet.header.sourceAddress-2"
1423     #
1424     set sg_field $ixNetSG_Stack(3)/field:"ethernet.header.sourceAddress-2"
1425     ixNet setMultiAttrs $sg_field \
1426      -singleValue $srcMac \
1427      -seed {1} \
1428      -optionalEnabled True \
1429      -fullMesh False \
1430      -valueList {{00:00:00:00:00:00}} \
1431      -stepValue {00:00:00:00:00:00} \
1432      -fixedBits {00:00:00:00:00:00} \
1433      -fieldValue $srcMac \
1434      -auto False \
1435      -randomMask {00:00:00:00:00:00} \
1436      -trackingEnabled False \
1437      -valueType singleValue \
1438      -activeFieldChoice False \
1439      -startValue $srcMac \
1440      -countValue {1}
1441     sg_commit
1442     set sg_field [lindex [ixNet remapIds $sg_field] 0]
1443
1444     #
1445     # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ethernet-1"/field:"ethernet.header.etherType-3"
1446     #
1447     set sg_field $ixNetSG_Stack(3)/field:"ethernet.header.etherType-3"
1448     ixNet setMultiAttrs $sg_field \
1449      -singleValue {800} \
1450      -seed {1} \
1451      -optionalEnabled True \
1452      -fullMesh False \
1453      -valueList {{0xFFFF}} \
1454      -stepValue {0xFFFF} \
1455      -fixedBits {0xFFFF} \
1456      -fieldValue {800} \
1457      -auto True \
1458      -randomMask {0xFFFF} \
1459      -trackingEnabled False \
1460      -valueType singleValue \
1461      -activeFieldChoice False \
1462      -startValue {0xFFFF} \
1463      -countValue {1}
1464     sg_commit
1465     set sg_field [lindex [ixNet remapIds $sg_field] 0]
1466
1467     #
1468     # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ethernet-1"/field:"ethernet.header.pfcQueue-4"
1469     #
1470     set sg_field $ixNetSG_Stack(3)/field:"ethernet.header.pfcQueue-4"
1471     ixNet setMultiAttrs $sg_field \
1472      -singleValue {0} \
1473      -seed {1} \
1474      -optionalEnabled True \
1475      -fullMesh False \
1476      -valueList {{0}} \
1477      -stepValue {0} \
1478      -fixedBits {0} \
1479      -fieldValue {0} \
1480      -auto False \
1481      -randomMask {0} \
1482      -trackingEnabled False \
1483      -valueType singleValue \
1484      -activeFieldChoice False \
1485      -startValue {0} \
1486      -countValue {1}
1487     sg_commit
1488     set sg_field [lindex [ixNet remapIds $sg_field] 0]
1489
1490     if {$vlanEnabled == 1 } {
1491         set sg_stack $ixNetSG_Stack(2)/stack:"vlan-$stack_number"
1492         sg_commit
1493         set sg_stack [lindex [ixNet remapIds $sg_stack] 0]
1494         set ixNetSG_Stack(3) $sg_stack
1495         incr stack_number
1496
1497         set sg_field $ixNetSG_Stack(3)/field:"vlan.header.vlanTag.vlanUserPriority-1"
1498         ixNet setMultiAttrs $sg_field \
1499                 -singleValue $vlanUserPrio \
1500                 -seed 1 \
1501                 -optionalEnabled true \
1502                 -fullMesh false \
1503                 -valueList [list 0] \
1504                 -stepValue 0 \
1505                 -fixedBits 0 \
1506                 -fieldValue $vlanUserPrio \
1507                 -auto false \
1508                 -randomMask 0 \
1509                 -trackingEnabled false \
1510                 -valueType singleValue \
1511                 -activeFieldChoice false \
1512                 -startValue 0 \
1513                 -countValue 1
1514
1515         set sg_field $ixNetSG_Stack(3)/field:"vlan.header.vlanTag.cfi-2"
1516         ixNet setMultiAttrs $sg_field \
1517                 -singleValue $vlanCfi \
1518                 -seed 1 \
1519                 -optionalEnabled true \
1520                 -fullMesh false \
1521                 -valueList [list 0] \
1522                 -stepValue 0 \
1523                 -fixedBits 0 \
1524                 -fieldValue $vlanCfi \
1525                 -auto false \
1526                 -randomMask 0 \
1527                 -trackingEnabled false \
1528                 -valueType singleValue \
1529                 -activeFieldChoice false \
1530                 -startValue 0 \
1531                 -countValue 1
1532
1533         set sg_field $ixNetSG_Stack(3)/field:"vlan.header.vlanTag.vlanID-3"
1534         ixNet setMultiAttrs $sg_field \
1535                 -singleValue $vlanId \
1536                 -seed 1 \
1537                 -optionalEnabled true \
1538                 -fullMesh false \
1539                 -valueList [list 0] \
1540                 -stepValue 0 \
1541                 -fixedBits 0 \
1542                 -fieldValue $vlanId \
1543                 -auto false \
1544                 -randomMask 0 \
1545                 -trackingEnabled false \
1546                 -valueType singleValue \
1547                 -activeFieldChoice false \
1548                 -startValue 0 \
1549                 -countValue 1
1550
1551         set sg_field $ixNetSG_Stack(3)/field:"vlan.header.protocolID-4"
1552         ixNet setMultiAttrs $sg_field \
1553                 -singleValue ffff \
1554                 -seed 1 \
1555                 -optionalEnabled true \
1556                 -fullMesh false \
1557                 -valueList [list 0xffff] \
1558                 -stepValue 0xffff \
1559                 -fixedBits 0xffff \
1560                 -fieldValue ffff \
1561                 -auto true \
1562                 -randomMask 0xffff \
1563                 -trackingEnabled false \
1564                 -valueType singleValue \
1565                 -activeFieldChoice false \
1566                 -startValue 0xffff \
1567                 -countValue 1
1568     }
1569
1570     if {$l3Enabled == 1 } {
1571         #
1572         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"
1573         #
1574         set sg_stack $ixNetSG_Stack(2)/stack:"ipv4-$stack_number"
1575         sg_commit
1576         set sg_stack [lindex [ixNet remapIds $sg_stack] 0]
1577         set ixNetSG_Stack(3) $sg_stack
1578         incr stack_number
1579
1580         #
1581         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.version-1"
1582         #
1583         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.version-1"
1584         ixNet setMultiAttrs $sg_field \
1585          -singleValue {4} \
1586          -seed {1} \
1587          -optionalEnabled True \
1588          -fullMesh False \
1589          -valueList {{4}} \
1590          -stepValue {4} \
1591          -fixedBits {4} \
1592          -fieldValue {4} \
1593          -auto False \
1594          -randomMask {4} \
1595          -trackingEnabled False \
1596          -valueType singleValue \
1597          -activeFieldChoice False \
1598          -startValue {4} \
1599          -countValue {1}
1600         sg_commit
1601         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1602
1603         #
1604         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.headerLength-2"
1605         #
1606         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.headerLength-2"
1607         ixNet setMultiAttrs $sg_field \
1608          -singleValue {5} \
1609          -seed {1} \
1610          -optionalEnabled True \
1611          -fullMesh False \
1612          -valueList {{0}} \
1613          -stepValue {0} \
1614          -fixedBits {0} \
1615          -fieldValue {5} \
1616          -auto True \
1617          -randomMask {0} \
1618          -trackingEnabled False \
1619          -valueType singleValue \
1620          -activeFieldChoice False \
1621          -startValue {0} \
1622          -countValue {1}
1623         sg_commit
1624         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1625
1626         #
1627         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.priority.raw-3"
1628         #
1629         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.raw-3"
1630         ixNet setMultiAttrs $sg_field \
1631          -singleValue {0} \
1632          -seed {1} \
1633          -optionalEnabled True \
1634          -fullMesh False \
1635          -valueList {{0}} \
1636          -stepValue {0} \
1637          -fixedBits {0} \
1638          -fieldValue {0} \
1639          -auto False \
1640          -randomMask {0} \
1641          -trackingEnabled False \
1642          -valueType singleValue \
1643          -activeFieldChoice False \
1644          -startValue {0} \
1645          -countValue {1}
1646         sg_commit
1647         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1648
1649         #
1650         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.priority.tos.precedence-4"
1651         #
1652         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.precedence-4"
1653         ixNet setMultiAttrs $sg_field \
1654          -singleValue {0} \
1655          -seed {1} \
1656          -optionalEnabled True \
1657          -fullMesh False \
1658          -valueList {{0}} \
1659          -stepValue {0} \
1660          -fixedBits {0} \
1661          -fieldValue {000 Routine} \
1662          -auto False \
1663          -randomMask {0} \
1664          -trackingEnabled False \
1665          -valueType singleValue \
1666          -activeFieldChoice True \
1667          -startValue {0} \
1668          -countValue {1}
1669         sg_commit
1670         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1671
1672         #
1673         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.priority.tos.delay-5"
1674         #
1675         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.delay-5"
1676         ixNet setMultiAttrs $sg_field \
1677          -singleValue {0} \
1678          -seed {1} \
1679          -optionalEnabled True \
1680          -fullMesh False \
1681          -valueList {{0}} \
1682          -stepValue {0} \
1683          -fixedBits {0} \
1684          -fieldValue {Normal} \
1685          -auto False \
1686          -randomMask {0} \
1687          -trackingEnabled False \
1688          -valueType singleValue \
1689          -activeFieldChoice True \
1690          -startValue {0} \
1691          -countValue {1}
1692         sg_commit
1693         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1694
1695         #
1696         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.priority.tos.throughput-6"
1697         #
1698         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.throughput-6"
1699         ixNet setMultiAttrs $sg_field \
1700          -singleValue {0} \
1701          -seed {1} \
1702          -optionalEnabled True \
1703          -fullMesh False \
1704          -valueList {{0}} \
1705          -stepValue {0} \
1706          -fixedBits {0} \
1707          -fieldValue {Normal} \
1708          -auto False \
1709          -randomMask {0} \
1710          -trackingEnabled False \
1711          -valueType singleValue \
1712          -activeFieldChoice True \
1713          -startValue {0} \
1714          -countValue {1}
1715         sg_commit
1716         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1717
1718         #
1719         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.priority.tos.reliability-7"
1720         #
1721         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.reliability-7"
1722         ixNet setMultiAttrs $sg_field \
1723          -singleValue {0} \
1724          -seed {1} \
1725          -optionalEnabled True \
1726          -fullMesh False \
1727          -valueList {{0}} \
1728          -stepValue {0} \
1729          -fixedBits {0} \
1730          -fieldValue {Normal} \
1731          -auto False \
1732          -randomMask {0} \
1733          -trackingEnabled False \
1734          -valueType singleValue \
1735          -activeFieldChoice True \
1736          -startValue {0} \
1737          -countValue {1}
1738         sg_commit
1739         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1740
1741         #
1742         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.priority.tos.monetary-8"
1743         #
1744         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.monetary-8"
1745         ixNet setMultiAttrs $sg_field \
1746          -singleValue {0} \
1747          -seed {1} \
1748          -optionalEnabled True \
1749          -fullMesh False \
1750          -valueList {{0}} \
1751          -stepValue {0} \
1752          -fixedBits {0} \
1753          -fieldValue {Normal} \
1754          -auto False \
1755          -randomMask {0} \
1756          -trackingEnabled False \
1757          -valueType singleValue \
1758          -activeFieldChoice True \
1759          -startValue {0} \
1760          -countValue {1}
1761         sg_commit
1762         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1763
1764         #
1765         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.priority.tos.unused-9"
1766         #
1767         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.unused-9"
1768         ixNet setMultiAttrs $sg_field \
1769          -singleValue {0} \
1770          -seed {1} \
1771          -optionalEnabled True \
1772          -fullMesh False \
1773          -valueList {{0}} \
1774          -stepValue {0} \
1775          -fixedBits {0} \
1776          -fieldValue {0} \
1777          -auto False \
1778          -randomMask {0} \
1779          -trackingEnabled False \
1780          -valueType singleValue \
1781          -activeFieldChoice True \
1782          -startValue {0} \
1783          -countValue {1}
1784         sg_commit
1785         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1786
1787         #
1788         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.defaultPHB.defaultPHB-10"
1789         #
1790         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.defaultPHB.defaultPHB-10"
1791         ixNet setMultiAttrs $sg_field \
1792          -singleValue {0} \
1793          -seed {1} \
1794          -optionalEnabled True \
1795          -fullMesh False \
1796          -valueList {{0}} \
1797          -stepValue {0} \
1798          -fixedBits {0} \
1799          -fieldValue {0} \
1800          -auto False \
1801          -randomMask {0} \
1802          -trackingEnabled False \
1803          -valueType singleValue \
1804          -activeFieldChoice False \
1805          -startValue {0} \
1806          -countValue {1}
1807         sg_commit
1808         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1809
1810         #
1811         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.defaultPHB.unused-11"
1812         #
1813         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.defaultPHB.unused-11"
1814         ixNet setMultiAttrs $sg_field \
1815          -singleValue {0} \
1816          -seed {1} \
1817          -optionalEnabled True \
1818          -fullMesh False \
1819          -valueList {{0}} \
1820          -stepValue {0} \
1821          -fixedBits {0} \
1822          -fieldValue {0} \
1823          -auto False \
1824          -randomMask {0} \
1825          -trackingEnabled False \
1826          -valueType singleValue \
1827          -activeFieldChoice False \
1828          -startValue {0} \
1829          -countValue {1}
1830         sg_commit
1831         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1832
1833         #
1834         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.classSelectorPHB.classSelectorPHB-12"
1835         #
1836         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.classSelectorPHB.classSelectorPHB-12"
1837         ixNet setMultiAttrs $sg_field \
1838          -singleValue {8} \
1839          -seed {1} \
1840          -optionalEnabled True \
1841          -fullMesh False \
1842          -valueList {{8}} \
1843          -stepValue {8} \
1844          -fixedBits {8} \
1845          -fieldValue {Precedence 1} \
1846          -auto False \
1847          -randomMask {8} \
1848          -trackingEnabled False \
1849          -valueType singleValue \
1850          -activeFieldChoice False \
1851          -startValue {8} \
1852          -countValue {1}
1853         sg_commit
1854         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1855
1856         #
1857         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.classSelectorPHB.unused-13"
1858         #
1859         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.classSelectorPHB.unused-13"
1860         ixNet setMultiAttrs $sg_field \
1861          -singleValue {0} \
1862          -seed {1} \
1863          -optionalEnabled True \
1864          -fullMesh False \
1865          -valueList {{0}} \
1866          -stepValue {0} \
1867          -fixedBits {0} \
1868          -fieldValue {0} \
1869          -auto False \
1870          -randomMask {0} \
1871          -trackingEnabled False \
1872          -valueType singleValue \
1873          -activeFieldChoice False \
1874          -startValue {0} \
1875          -countValue {1}
1876         sg_commit
1877         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1878
1879         #
1880         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.assuredForwardingPHB.assuredForwardingPHB-14"
1881         #
1882         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.assuredForwardingPHB.assuredForwardingPHB-14"
1883         ixNet setMultiAttrs $sg_field \
1884          -singleValue {10} \
1885          -seed {1} \
1886          -optionalEnabled True \
1887          -fullMesh False \
1888          -valueList {{10}} \
1889          -stepValue {10} \
1890          -fixedBits {10} \
1891          -fieldValue {Class 1, Low drop precedence} \
1892          -auto False \
1893          -randomMask {10} \
1894          -trackingEnabled False \
1895          -valueType singleValue \
1896          -activeFieldChoice False \
1897          -startValue {10} \
1898          -countValue {1}
1899         sg_commit
1900         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1901
1902         #
1903         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.assuredForwardingPHB.unused-15"
1904         #
1905         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.assuredForwardingPHB.unused-15"
1906         ixNet setMultiAttrs $sg_field \
1907          -singleValue {0} \
1908          -seed {1} \
1909          -optionalEnabled True \
1910          -fullMesh False \
1911          -valueList {{0}} \
1912          -stepValue {0} \
1913          -fixedBits {0} \
1914          -fieldValue {0} \
1915          -auto False \
1916          -randomMask {0} \
1917          -trackingEnabled False \
1918          -valueType singleValue \
1919          -activeFieldChoice False \
1920          -startValue {0} \
1921          -countValue {1}
1922         sg_commit
1923         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1924
1925         #
1926         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.expeditedForwardingPHB.expeditedForwardingPHB-16"
1927         #
1928         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.expeditedForwardingPHB.expeditedForwardingPHB-16"
1929         ixNet setMultiAttrs $sg_field \
1930          -singleValue {46} \
1931          -seed {1} \
1932          -optionalEnabled True \
1933          -fullMesh False \
1934          -valueList {{46}} \
1935          -stepValue {46} \
1936          -fixedBits {46} \
1937          -fieldValue {46} \
1938          -auto False \
1939          -randomMask {46} \
1940          -trackingEnabled False \
1941          -valueType singleValue \
1942          -activeFieldChoice False \
1943          -startValue {46} \
1944          -countValue {1}
1945         sg_commit
1946         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1947
1948         #
1949         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.expeditedForwardingPHB.unused-17"
1950         #
1951         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.expeditedForwardingPHB.unused-17"
1952         ixNet setMultiAttrs $sg_field \
1953          -singleValue {0} \
1954          -seed {1} \
1955          -optionalEnabled True \
1956          -fullMesh False \
1957          -valueList {{0}} \
1958          -stepValue {0} \
1959          -fixedBits {0} \
1960          -fieldValue {0} \
1961          -auto False \
1962          -randomMask {0} \
1963          -trackingEnabled False \
1964          -valueType singleValue \
1965          -activeFieldChoice False \
1966          -startValue {0} \
1967          -countValue {1}
1968         sg_commit
1969         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1970
1971         #
1972         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.totalLength-18"
1973         #
1974         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.totalLength-18"
1975         ixNet setMultiAttrs $sg_field \
1976          -singleValue {46} \
1977          -seed {1} \
1978          -optionalEnabled True \
1979          -fullMesh False \
1980          -valueList {{20}} \
1981          -stepValue {20} \
1982          -fixedBits {20} \
1983          -fieldValue {46} \
1984          -auto True \
1985          -randomMask {20} \
1986          -trackingEnabled False \
1987          -valueType singleValue \
1988          -activeFieldChoice False \
1989          -startValue {20} \
1990          -countValue {1}
1991         sg_commit
1992         set sg_field [lindex [ixNet remapIds $sg_field] 0]
1993
1994         #
1995         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.identification-19"
1996         #
1997         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.identification-19"
1998         ixNet setMultiAttrs $sg_field \
1999          -singleValue {0} \
2000          -seed {1} \
2001          -optionalEnabled True \
2002          -fullMesh False \
2003          -valueList {{0}} \
2004          -stepValue {0} \
2005          -fixedBits {0} \
2006          -fieldValue {0} \
2007          -auto False \
2008          -randomMask {0} \
2009          -trackingEnabled False \
2010          -valueType singleValue \
2011          -activeFieldChoice False \
2012          -startValue {0} \
2013          -countValue {1}
2014         sg_commit
2015         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2016
2017         #
2018         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.flags.reserved-20"
2019         #
2020         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.flags.reserved-20"
2021         ixNet setMultiAttrs $sg_field \
2022          -singleValue {0} \
2023          -seed {1} \
2024          -optionalEnabled True \
2025          -fullMesh False \
2026          -valueList {{0}} \
2027          -stepValue {0} \
2028          -fixedBits {0} \
2029          -fieldValue {0} \
2030          -auto False \
2031          -randomMask {0} \
2032          -trackingEnabled False \
2033          -valueType singleValue \
2034          -activeFieldChoice False \
2035          -startValue {0} \
2036          -countValue {1}
2037         sg_commit
2038         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2039
2040         #
2041         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.flags.fragment-21"
2042         #
2043         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.flags.fragment-21"
2044         ixNet setMultiAttrs $sg_field \
2045          -singleValue {0} \
2046          -seed {1} \
2047          -optionalEnabled True \
2048          -fullMesh False \
2049          -valueList {{0}} \
2050          -stepValue {0} \
2051          -fixedBits {0} \
2052          -fieldValue {May fragment} \
2053          -auto False \
2054          -randomMask {0} \
2055          -trackingEnabled False \
2056          -valueType singleValue \
2057          -activeFieldChoice False \
2058          -startValue {0} \
2059          -countValue {1}
2060         sg_commit
2061         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2062
2063         #
2064         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.flags.lastFragment-22"
2065         #
2066         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.flags.lastFragment-22"
2067         ixNet setMultiAttrs $sg_field \
2068          -singleValue {0} \
2069          -seed {1} \
2070          -optionalEnabled True \
2071          -fullMesh False \
2072          -valueList {{0}} \
2073          -stepValue {0} \
2074          -fixedBits {0} \
2075          -fieldValue {Last fragment} \
2076          -auto False \
2077          -randomMask {0} \
2078          -trackingEnabled False \
2079          -valueType singleValue \
2080          -activeFieldChoice False \
2081          -startValue {0} \
2082          -countValue {1}
2083         sg_commit
2084         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2085
2086         #
2087         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.fragmentOffset-23"
2088         #
2089         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.fragmentOffset-23"
2090         ixNet setMultiAttrs $sg_field \
2091          -singleValue {0} \
2092          -seed {1} \
2093          -optionalEnabled True \
2094          -fullMesh False \
2095          -valueList {{0}} \
2096          -stepValue {0} \
2097          -fixedBits {0} \
2098          -fieldValue {0} \
2099          -auto False \
2100          -randomMask {0} \
2101          -trackingEnabled False \
2102          -valueType singleValue \
2103          -activeFieldChoice False \
2104          -startValue {0} \
2105          -countValue {1}
2106         sg_commit
2107         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2108
2109         #
2110         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.ttl-24"
2111         #
2112         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.ttl-24"
2113         ixNet setMultiAttrs $sg_field \
2114          -singleValue {64} \
2115          -seed {1} \
2116          -optionalEnabled True \
2117          -fullMesh False \
2118          -valueList {{64}} \
2119          -stepValue {64} \
2120          -fixedBits {64} \
2121          -fieldValue {64} \
2122          -auto False \
2123          -randomMask {64} \
2124          -trackingEnabled False \
2125          -valueType singleValue \
2126          -activeFieldChoice False \
2127          -startValue {64} \
2128          -countValue {1}
2129         sg_commit
2130         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2131
2132         #
2133         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.protocol-25"
2134         #
2135         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.protocol-25"
2136         ixNet setMultiAttrs $sg_field \
2137          -singleValue {17} \
2138          -seed {1} \
2139          -optionalEnabled True \
2140          -fullMesh False \
2141          -valueList {{61}} \
2142          -stepValue {61} \
2143          -fixedBits {61} \
2144          -fieldValue {UDP} \
2145          -auto True \
2146          -randomMask {61} \
2147          -trackingEnabled False \
2148          -valueType singleValue \
2149          -activeFieldChoice False \
2150          -startValue {61} \
2151          -countValue {1}
2152         sg_commit
2153         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2154
2155         #
2156         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.checksum-26"
2157         #
2158         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.checksum-26"
2159         ixNet setMultiAttrs $sg_field \
2160          -singleValue {0} \
2161          -seed {1} \
2162          -optionalEnabled True \
2163          -fullMesh False \
2164          -valueList {{0}} \
2165          -stepValue {0} \
2166          -fixedBits {0} \
2167          -fieldValue {0} \
2168          -auto True \
2169          -randomMask {0} \
2170          -trackingEnabled False \
2171          -valueType singleValue \
2172          -activeFieldChoice False \
2173          -startValue {0} \
2174          -countValue {1}
2175         sg_commit
2176         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2177
2178         #
2179         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.srcIp-27"
2180         #
2181         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.srcIp-27"
2182         ixNet setMultiAttrs $sg_field \
2183          -singleValue $srcIp \
2184          -seed {1} \
2185          -optionalEnabled True \
2186          -fullMesh False \
2187          -valueList {{0.0.0.0}} \
2188          -stepValue {0.0.0.0} \
2189          -fixedBits {0.0.0.0} \
2190          -fieldValue $srcIp \
2191          -auto False \
2192          -randomMask {0.0.0.0} \
2193          -trackingEnabled False \
2194          -valueType singleValue \
2195          -activeFieldChoice False \
2196          -startValue {0.0.0.0} \
2197          -countValue {1}
2198         sg_commit
2199         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2200
2201         #
2202         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.dstIp-28"
2203         #
2204         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.dstIp-28"
2205         ixNet setMultiAttrs $sg_field \
2206          -singleValue $dstIp \
2207          -seed {1} \
2208          -optionalEnabled True \
2209          -fullMesh False \
2210          -valueList {{0.0.0.0}} \
2211          -stepValue {0.0.0.1} \
2212          -fixedBits {0.0.0.0} \
2213          -fieldValue $dstIp \
2214          -auto False \
2215          -randomMask {0.0.0.0} \
2216          -trackingEnabled False \
2217          -valueType $L3ValueType \
2218          -activeFieldChoice False \
2219          -startValue $dstIp \
2220          -countValue $L3CountValue
2221         sg_commit
2222         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2223
2224         #
2225         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.nop-29"
2226         #
2227         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.nop-29"
2228         ixNet setMultiAttrs $sg_field \
2229          -singleValue {1} \
2230          -seed {1} \
2231          -optionalEnabled False \
2232          -fullMesh False \
2233          -valueList {{1}} \
2234          -stepValue {1} \
2235          -fixedBits {1} \
2236          -fieldValue {1} \
2237          -auto False \
2238          -randomMask {1} \
2239          -trackingEnabled False \
2240          -valueType singleValue \
2241          -activeFieldChoice True \
2242          -startValue {1} \
2243          -countValue {1}
2244         sg_commit
2245         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2246
2247         #
2248         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.type-30"
2249         #
2250         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.type-30"
2251         ixNet setMultiAttrs $sg_field \
2252          -singleValue {130} \
2253          -seed {1} \
2254          -optionalEnabled False \
2255          -fullMesh False \
2256          -valueList {{130}} \
2257          -stepValue {130} \
2258          -fixedBits {130} \
2259          -fieldValue {130} \
2260          -auto False \
2261          -randomMask {130} \
2262          -trackingEnabled False \
2263          -valueType singleValue \
2264          -activeFieldChoice False \
2265          -startValue {130} \
2266          -countValue {1}
2267         sg_commit
2268         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2269
2270         #
2271         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.length-31"
2272         #
2273         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.length-31"
2274         ixNet setMultiAttrs $sg_field \
2275          -singleValue {11} \
2276          -seed {1} \
2277          -optionalEnabled False \
2278          -fullMesh False \
2279          -valueList {{11}} \
2280          -stepValue {11} \
2281          -fixedBits {11} \
2282          -fieldValue {11} \
2283          -auto False \
2284          -randomMask {11} \
2285          -trackingEnabled False \
2286          -valueType singleValue \
2287          -activeFieldChoice False \
2288          -startValue {11} \
2289          -countValue {1}
2290         sg_commit
2291         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2292
2293         #
2294         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.security-32"
2295         #
2296         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.security-32"
2297         ixNet setMultiAttrs $sg_field \
2298          -singleValue {0} \
2299          -seed {1} \
2300          -optionalEnabled False \
2301          -fullMesh False \
2302          -valueList {{0}} \
2303          -stepValue {0} \
2304          -fixedBits {0} \
2305          -fieldValue {Unclassified} \
2306          -auto False \
2307          -randomMask {0} \
2308          -trackingEnabled False \
2309          -valueType singleValue \
2310          -activeFieldChoice False \
2311          -startValue {0} \
2312          -countValue {1}
2313         sg_commit
2314         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2315
2316         #
2317         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.compartments-33"
2318         #
2319         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.compartments-33"
2320         ixNet setMultiAttrs $sg_field \
2321          -singleValue {0} \
2322          -seed {1} \
2323          -optionalEnabled False \
2324          -fullMesh False \
2325          -valueList {{0}} \
2326          -stepValue {0} \
2327          -fixedBits {0} \
2328          -fieldValue {0} \
2329          -auto False \
2330          -randomMask {0} \
2331          -trackingEnabled False \
2332          -valueType singleValue \
2333          -activeFieldChoice False \
2334          -startValue {0} \
2335          -countValue {1}
2336         sg_commit
2337         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2338
2339         #
2340         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.handling-34"
2341         #
2342         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.handling-34"
2343         ixNet setMultiAttrs $sg_field \
2344          -singleValue {0} \
2345          -seed {1} \
2346          -optionalEnabled False \
2347          -fullMesh False \
2348          -valueList {{0}} \
2349          -stepValue {0} \
2350          -fixedBits {0} \
2351          -fieldValue {0} \
2352          -auto False \
2353          -randomMask {0} \
2354          -trackingEnabled False \
2355          -valueType singleValue \
2356          -activeFieldChoice False \
2357          -startValue {0} \
2358          -countValue {1}
2359         sg_commit
2360         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2361
2362         #
2363         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.tcc-35"
2364         #
2365         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.tcc-35"
2366         ixNet setMultiAttrs $sg_field \
2367          -singleValue {0} \
2368          -seed {1} \
2369          -optionalEnabled False \
2370          -fullMesh False \
2371          -valueList {{0}} \
2372          -stepValue {0} \
2373          -fixedBits {0} \
2374          -fieldValue {0} \
2375          -auto False \
2376          -randomMask {0} \
2377          -trackingEnabled False \
2378          -valueType singleValue \
2379          -activeFieldChoice False \
2380          -startValue {0} \
2381          -countValue {1}
2382         sg_commit
2383         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2384
2385         #
2386         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.lsrr.type-36"
2387         #
2388         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.lsrr.type-36"
2389         ixNet setMultiAttrs $sg_field \
2390          -singleValue {131} \
2391          -seed {1} \
2392          -optionalEnabled False \
2393          -fullMesh False \
2394          -valueList {{131}} \
2395          -stepValue {131} \
2396          -fixedBits {131} \
2397          -fieldValue {131} \
2398          -auto False \
2399          -randomMask {131} \
2400          -trackingEnabled False \
2401          -valueType singleValue \
2402          -activeFieldChoice False \
2403          -startValue {131} \
2404          -countValue {1}
2405         sg_commit
2406         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2407
2408         #
2409         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.lsrr.length-37"
2410         #
2411         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.lsrr.length-37"
2412         ixNet setMultiAttrs $sg_field \
2413          -singleValue {8} \
2414          -seed {1} \
2415          -optionalEnabled False \
2416          -fullMesh False \
2417          -valueList {{8}} \
2418          -stepValue {8} \
2419          -fixedBits {8} \
2420          -fieldValue {8} \
2421          -auto False \
2422          -randomMask {8} \
2423          -trackingEnabled False \
2424          -valueType singleValue \
2425          -activeFieldChoice False \
2426          -startValue {8} \
2427          -countValue {1}
2428         sg_commit
2429         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2430
2431         #
2432         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.pointer-38"
2433         #
2434         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.pointer-38"
2435         ixNet setMultiAttrs $sg_field \
2436          -singleValue {4} \
2437          -seed {1} \
2438          -optionalEnabled False \
2439          -fullMesh False \
2440          -valueList {{4}} \
2441          -stepValue {4} \
2442          -fixedBits {4} \
2443          -fieldValue {4} \
2444          -auto False \
2445          -randomMask {4} \
2446          -trackingEnabled False \
2447          -valueType singleValue \
2448          -activeFieldChoice False \
2449          -startValue {4} \
2450          -countValue {1}
2451         sg_commit
2452         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2453
2454         #
2455         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.routeData-39"
2456         #
2457         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.routeData-39"
2458         ixNet setMultiAttrs $sg_field \
2459          -singleValue {0} \
2460          -seed {1} \
2461          -optionalEnabled False \
2462          -fullMesh False \
2463          -valueList {{0}} \
2464          -stepValue {0} \
2465          -fixedBits {0} \
2466          -fieldValue {0} \
2467          -auto False \
2468          -randomMask {0} \
2469          -trackingEnabled False \
2470          -valueType singleValue \
2471          -activeFieldChoice False \
2472          -startValue {0} \
2473          -countValue {1}
2474         sg_commit
2475         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2476
2477         #
2478         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.ssrr.type-40"
2479         #
2480         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.ssrr.type-40"
2481         ixNet setMultiAttrs $sg_field \
2482          -singleValue {137} \
2483          -seed {1} \
2484          -optionalEnabled False \
2485          -fullMesh False \
2486          -valueList {{137}} \
2487          -stepValue {137} \
2488          -fixedBits {137} \
2489          -fieldValue {137} \
2490          -auto False \
2491          -randomMask {137} \
2492          -trackingEnabled False \
2493          -valueType singleValue \
2494          -activeFieldChoice False \
2495          -startValue {137} \
2496          -countValue {1}
2497         sg_commit
2498         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2499
2500         #
2501         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.ssrr.length-41"
2502         #
2503         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.ssrr.length-41"
2504         ixNet setMultiAttrs $sg_field \
2505          -singleValue {8} \
2506          -seed {1} \
2507          -optionalEnabled False \
2508          -fullMesh False \
2509          -valueList {{8}} \
2510          -stepValue {8} \
2511          -fixedBits {8} \
2512          -fieldValue {8} \
2513          -auto False \
2514          -randomMask {8} \
2515          -trackingEnabled False \
2516          -valueType singleValue \
2517          -activeFieldChoice False \
2518          -startValue {8} \
2519          -countValue {1}
2520         sg_commit
2521         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2522
2523         #
2524         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.recordRoute.type-42"
2525         #
2526         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.recordRoute.type-42"
2527         ixNet setMultiAttrs $sg_field \
2528          -singleValue {7} \
2529          -seed {1} \
2530          -optionalEnabled False \
2531          -fullMesh False \
2532          -valueList {{7}} \
2533          -stepValue {7} \
2534          -fixedBits {7} \
2535          -fieldValue {7} \
2536          -auto False \
2537          -randomMask {7} \
2538          -trackingEnabled False \
2539          -valueType singleValue \
2540          -activeFieldChoice False \
2541          -startValue {7} \
2542          -countValue {1}
2543         sg_commit
2544         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2545
2546         #
2547         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.recordRoute.length-43"
2548         #
2549         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.recordRoute.length-43"
2550         ixNet setMultiAttrs $sg_field \
2551          -singleValue {8} \
2552          -seed {1} \
2553          -optionalEnabled False \
2554          -fullMesh False \
2555          -valueList {{8}} \
2556          -stepValue {8} \
2557          -fixedBits {8} \
2558          -fieldValue {8} \
2559          -auto False \
2560          -randomMask {8} \
2561          -trackingEnabled False \
2562          -valueType singleValue \
2563          -activeFieldChoice False \
2564          -startValue {8} \
2565          -countValue {1}
2566         sg_commit
2567         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2568
2569         #
2570         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.streamId.type-44"
2571         #
2572         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.streamId.type-44"
2573         ixNet setMultiAttrs $sg_field \
2574          -singleValue {136} \
2575          -seed {1} \
2576          -optionalEnabled False \
2577          -fullMesh False \
2578          -valueList {{136}} \
2579          -stepValue {136} \
2580          -fixedBits {136} \
2581          -fieldValue {136} \
2582          -auto False \
2583          -randomMask {136} \
2584          -trackingEnabled False \
2585          -valueType singleValue \
2586          -activeFieldChoice False \
2587          -startValue {136} \
2588          -countValue {1}
2589         sg_commit
2590         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2591
2592         #
2593         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.streamId.length-45"
2594         #
2595         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.streamId.length-45"
2596         ixNet setMultiAttrs $sg_field \
2597          -singleValue {4} \
2598          -seed {1} \
2599          -optionalEnabled False \
2600          -fullMesh False \
2601          -valueList {{4}} \
2602          -stepValue {4} \
2603          -fixedBits {4} \
2604          -fieldValue {4} \
2605          -auto False \
2606          -randomMask {4} \
2607          -trackingEnabled False \
2608          -valueType singleValue \
2609          -activeFieldChoice False \
2610          -startValue {4} \
2611          -countValue {1}
2612         sg_commit
2613         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2614
2615         #
2616         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.streamId.id-46"
2617         #
2618         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.streamId.id-46"
2619         ixNet setMultiAttrs $sg_field \
2620          -singleValue {0} \
2621          -seed {1} \
2622          -optionalEnabled False \
2623          -fullMesh False \
2624          -valueList {{0}} \
2625          -stepValue {0} \
2626          -fixedBits {0} \
2627          -fieldValue {0} \
2628          -auto False \
2629          -randomMask {0} \
2630          -trackingEnabled False \
2631          -valueType singleValue \
2632          -activeFieldChoice False \
2633          -startValue {0} \
2634          -countValue {1}
2635         sg_commit
2636         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2637
2638         #
2639         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.type-47"
2640         #
2641         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.type-47"
2642         ixNet setMultiAttrs $sg_field \
2643          -singleValue {68} \
2644          -seed {1} \
2645          -optionalEnabled False \
2646          -fullMesh False \
2647          -valueList {{68}} \
2648          -stepValue {68} \
2649          -fixedBits {68} \
2650          -fieldValue {68} \
2651          -auto False \
2652          -randomMask {68} \
2653          -trackingEnabled False \
2654          -valueType singleValue \
2655          -activeFieldChoice False \
2656          -startValue {68} \
2657          -countValue {1}
2658         sg_commit
2659         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2660
2661         #
2662         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.length-48"
2663         #
2664         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.length-48"
2665         ixNet setMultiAttrs $sg_field \
2666          -singleValue {12} \
2667          -seed {1} \
2668          -optionalEnabled False \
2669          -fullMesh False \
2670          -valueList {{12}} \
2671          -stepValue {12} \
2672          -fixedBits {12} \
2673          -fieldValue {12} \
2674          -auto False \
2675          -randomMask {12} \
2676          -trackingEnabled False \
2677          -valueType singleValue \
2678          -activeFieldChoice False \
2679          -startValue {12} \
2680          -countValue {1}
2681         sg_commit
2682         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2683
2684         #
2685         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.pointer-49"
2686         #
2687         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.pointer-49"
2688         ixNet setMultiAttrs $sg_field \
2689          -singleValue {5} \
2690          -seed {1} \
2691          -optionalEnabled False \
2692          -fullMesh False \
2693          -valueList {{5}} \
2694          -stepValue {5} \
2695          -fixedBits {5} \
2696          -fieldValue {5} \
2697          -auto False \
2698          -randomMask {5} \
2699          -trackingEnabled False \
2700          -valueType singleValue \
2701          -activeFieldChoice False \
2702          -startValue {5} \
2703          -countValue {1}
2704         sg_commit
2705         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2706
2707         #
2708         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.overflow-50"
2709         #
2710         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.overflow-50"
2711         ixNet setMultiAttrs $sg_field \
2712          -singleValue {0} \
2713          -seed {1} \
2714          -optionalEnabled False \
2715          -fullMesh False \
2716          -valueList {{0}} \
2717          -stepValue {0} \
2718          -fixedBits {0} \
2719          -fieldValue {0} \
2720          -auto False \
2721          -randomMask {0} \
2722          -trackingEnabled False \
2723          -valueType singleValue \
2724          -activeFieldChoice False \
2725          -startValue {0} \
2726          -countValue {1}
2727         sg_commit
2728         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2729
2730         #
2731         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.flags-51"
2732         #
2733         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.flags-51"
2734         ixNet setMultiAttrs $sg_field \
2735          -singleValue {0} \
2736          -seed {1} \
2737          -optionalEnabled False \
2738          -fullMesh False \
2739          -valueList {{0}} \
2740          -stepValue {0} \
2741          -fixedBits {0} \
2742          -fieldValue {Timestamps only, in consecutive 32-bit words} \
2743          -auto False \
2744          -randomMask {0} \
2745          -trackingEnabled False \
2746          -valueType singleValue \
2747          -activeFieldChoice False \
2748          -startValue {0} \
2749          -countValue {1}
2750         sg_commit
2751         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2752
2753         #
2754         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.pair.address-52"
2755         #
2756         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.pair.address-52"
2757         ixNet setMultiAttrs $sg_field \
2758          -singleValue {0} \
2759          -seed {1} \
2760          -optionalEnabled False \
2761          -fullMesh False \
2762          -valueList {{0}} \
2763          -stepValue {0} \
2764          -fixedBits {0} \
2765          -fieldValue {0} \
2766          -auto False \
2767          -randomMask {0} \
2768          -trackingEnabled False \
2769          -valueType singleValue \
2770          -activeFieldChoice False \
2771          -startValue {0} \
2772          -countValue {1}
2773         sg_commit
2774         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2775
2776         #
2777         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.pair.timestamp-53"
2778         #
2779         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.pair.timestamp-53"
2780         ixNet setMultiAttrs $sg_field \
2781          -singleValue {0} \
2782          -seed {1} \
2783          -optionalEnabled False \
2784          -fullMesh False \
2785          -valueList {{0}} \
2786          -stepValue {0} \
2787          -fixedBits {0} \
2788          -fieldValue {0} \
2789          -auto False \
2790          -randomMask {0} \
2791          -trackingEnabled False \
2792          -valueType singleValue \
2793          -activeFieldChoice False \
2794          -startValue {0} \
2795          -countValue {1}
2796         sg_commit
2797         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2798
2799         #
2800         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.last-54"
2801         #
2802         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.last-54"
2803         ixNet setMultiAttrs $sg_field \
2804          -singleValue {0} \
2805          -seed {1} \
2806          -optionalEnabled False \
2807          -fullMesh False \
2808          -valueList {{0}} \
2809          -stepValue {0} \
2810          -fixedBits {0} \
2811          -fieldValue {0} \
2812          -auto False \
2813          -randomMask {0} \
2814          -trackingEnabled False \
2815          -valueType singleValue \
2816          -activeFieldChoice False \
2817          -startValue {0} \
2818          -countValue {1}
2819         sg_commit
2820         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2821
2822         #
2823         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.routerAlert.type-55"
2824         #
2825         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.routerAlert.type-55"
2826         ixNet setMultiAttrs $sg_field \
2827          -singleValue {94} \
2828          -seed {1} \
2829          -optionalEnabled False \
2830          -fullMesh False \
2831          -valueList {{0x94}} \
2832          -stepValue {0x94} \
2833          -fixedBits {0x94} \
2834          -fieldValue {94} \
2835          -auto False \
2836          -randomMask {0x94} \
2837          -trackingEnabled False \
2838          -valueType singleValue \
2839          -activeFieldChoice False \
2840          -startValue {0x94} \
2841          -countValue {1}
2842         sg_commit
2843         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2844
2845         #
2846         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.routerAlert.length-56"
2847         #
2848         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.routerAlert.length-56"
2849         ixNet setMultiAttrs $sg_field \
2850          -singleValue {4} \
2851          -seed {1} \
2852          -optionalEnabled False \
2853          -fullMesh False \
2854          -valueList {{0x04}} \
2855          -stepValue {0x04} \
2856          -fixedBits {0x04} \
2857          -fieldValue {4} \
2858          -auto False \
2859          -randomMask {0x04} \
2860          -trackingEnabled False \
2861          -valueType singleValue \
2862          -activeFieldChoice False \
2863          -startValue {0x04} \
2864          -countValue {1}
2865         sg_commit
2866         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2867
2868         #
2869         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.routerAlert.value-57"
2870         #
2871         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.routerAlert.value-57"
2872         ixNet setMultiAttrs $sg_field \
2873          -singleValue {0} \
2874          -seed {1} \
2875          -optionalEnabled False \
2876          -fullMesh False \
2877          -valueList {{0}} \
2878          -stepValue {0} \
2879          -fixedBits {0} \
2880          -fieldValue {Router shall examine packet} \
2881          -auto False \
2882          -randomMask {0} \
2883          -trackingEnabled False \
2884          -valueType singleValue \
2885          -activeFieldChoice False \
2886          -startValue {0} \
2887          -countValue {1}
2888         sg_commit
2889         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2890
2891         #
2892         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"ipv4-2"/field:"ipv4.header.options.pad-58"
2893         #
2894         set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.pad-58"
2895         ixNet setMultiAttrs $sg_field \
2896          -singleValue {0} \
2897          -seed {1} \
2898          -optionalEnabled False \
2899          -fullMesh False \
2900          -valueList {{0}} \
2901          -stepValue {0} \
2902          -fixedBits {0} \
2903          -fieldValue {0} \
2904          -auto True \
2905          -randomMask {0} \
2906          -trackingEnabled False \
2907          -valueType singleValue \
2908          -activeFieldChoice False \
2909          -startValue {0} \
2910          -countValue {1}
2911         sg_commit
2912         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2913     }
2914
2915     if {$l4Enabled == 1 } {
2916         #
2917         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"udp-3"
2918         #
2919         set sg_stack $ixNetSG_Stack(2)/stack:"udp-$stack_number"
2920         sg_commit
2921         set sg_stack [lindex [ixNet remapIds $sg_stack] 0]
2922         set ixNetSG_Stack(3) $sg_stack
2923         incr stack_number
2924
2925         #
2926         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"udp-3"/field:"udp.header.srcPort-1"
2927         #
2928         set sg_field $ixNetSG_Stack(3)/field:"udp.header.srcPort-1"
2929         ixNet setMultiAttrs $sg_field \
2930          -singleValue $srcPort \
2931          -seed {1} \
2932          -optionalEnabled True \
2933          -fullMesh False \
2934          -valueList {{63}} \
2935          -stepValue {63} \
2936          -fixedBits {63} \
2937          -fieldValue $srcPort \
2938          -auto False \
2939          -randomMask {63} \
2940          -trackingEnabled False \
2941          -valueType singleValue \
2942          -activeFieldChoice False \
2943          -startValue $srcPort \
2944          -countValue {1}
2945         sg_commit
2946         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2947
2948         #
2949         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"udp-3"/field:"udp.header.dstPort-2"
2950         #
2951         set sg_field $ixNetSG_Stack(3)/field:"udp.header.dstPort-2"
2952         ixNet setMultiAttrs $sg_field \
2953          -singleValue $dstPort \
2954          -seed {1} \
2955          -optionalEnabled True \
2956          -fullMesh False \
2957          -valueList {{63}} \
2958          -stepValue {1} \
2959          -fixedBits {63} \
2960          -fieldValue $dstPort \
2961          -auto False \
2962          -randomMask {63} \
2963          -trackingEnabled False \
2964          -valueType $L4ValueType \
2965          -activeFieldChoice False \
2966          -startValue $dstPort \
2967          -countValue $L4CountValue
2968         sg_commit
2969         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2970
2971         #
2972         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"udp-3"/field:"udp.header.length-3"
2973         #
2974         set sg_field $ixNetSG_Stack(3)/field:"udp.header.length-3"
2975         ixNet setMultiAttrs $sg_field \
2976          -singleValue {26} \
2977          -seed {1} \
2978          -optionalEnabled True \
2979          -fullMesh False \
2980          -valueList {{8}} \
2981          -stepValue {8} \
2982          -fixedBits {8} \
2983          -fieldValue {26} \
2984          -auto True \
2985          -randomMask {8} \
2986          -trackingEnabled False \
2987          -valueType singleValue \
2988          -activeFieldChoice False \
2989          -startValue {8} \
2990          -countValue {1}
2991         sg_commit
2992         set sg_field [lindex [ixNet remapIds $sg_field] 0]
2993
2994         #
2995         # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"udp-3"/field:"udp.header.checksum-4"
2996         #
2997         set sg_field $ixNetSG_Stack(3)/field:"udp.header.checksum-4"
2998         ixNet setMultiAttrs $sg_field \
2999          -singleValue {0} \
3000          -seed {1} \
3001          -optionalEnabled True \
3002          -fullMesh False \
3003          -valueList {{0}} \
3004          -stepValue {0} \
3005          -fixedBits {0} \
3006          -fieldValue {0} \
3007          -auto True \
3008          -randomMask {0} \
3009          -trackingEnabled False \
3010          -valueType singleValue \
3011          -activeFieldChoice False \
3012          -startValue {0} \
3013          -countValue {1}
3014         sg_commit
3015         set sg_field [lindex [ixNet remapIds $sg_field] 0]
3016     }
3017
3018     #
3019     # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"fcs-4"
3020     #
3021     set sg_stack $ixNetSG_Stack(2)/stack:"fcs-$stack_number"
3022     sg_commit
3023     set sg_stack [lindex [ixNet remapIds $sg_stack] 0]
3024     set ixNetSG_Stack(3) $sg_stack
3025     incr stack_number
3026
3027     #
3028     # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/stack:"fcs-4"/field:"ethernet.fcs-1"
3029     #
3030     set sg_field $ixNetSG_Stack(3)/field:"ethernet.fcs-1"
3031     ixNet setMultiAttrs $sg_field \
3032      -singleValue {0} \
3033      -seed {1} \
3034      -optionalEnabled True \
3035      -fullMesh False \
3036      -valueList {{0}} \
3037      -stepValue {0} \
3038      -fixedBits {0} \
3039      -fieldValue {0} \
3040      -auto True \
3041      -randomMask {0} \
3042      -trackingEnabled False \
3043      -valueType singleValue \
3044      -activeFieldChoice False \
3045      -startValue {0} \
3046      -countValue {1}
3047     sg_commit
3048     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3049
3050     #
3051     # configuring the object that corresponds to /traffic/trafficItem:1/configElement:1/transmissionDistribution
3052     #
3053     set sg_transmissionDistribution $ixNetSG_Stack(2)/transmissionDistribution
3054     ixNet setMultiAttrs $sg_transmissionDistribution \
3055      -distributions {}
3056     sg_commit
3057     set sg_transmissionDistribution [lindex [ixNet remapIds $sg_transmissionDistribution] 0]
3058
3059     #
3060     # configuring the object that corresponds to /traffic/trafficItem:1/transmissionDistribution
3061     #
3062     set sg_transmissionDistribution $ixNetSG_Stack(1)/transmissionDistribution
3063     ixNet setMultiAttrs $sg_transmissionDistribution \
3064      -distributions {}
3065     sg_commit
3066     set sg_transmissionDistribution [lindex [ixNet remapIds $sg_transmissionDistribution] 0]
3067
3068     #
3069     # configuring the object that corresponds to /traffic/trafficItem:1/tracking
3070     #
3071     set sg_tracking $ixNetSG_Stack(1)/tracking
3072     ixNet setMultiAttrs $sg_tracking \
3073      -offset 0 \
3074      -oneToOneMesh False \
3075      -trackBy {trackingenabled0} \
3076      -values {} \
3077      -fieldWidth thirtyTwoBits \
3078      -protocolOffset {Root.0}
3079     ixNet setMultiAttrs $sg_tracking/egress \
3080      -offset {Outer VLAN Priority (3 bits)} \
3081      -enabled False \
3082      -customOffsetBits 0 \
3083      -encapsulation {Ethernet} \
3084      -customWidthBits 0
3085     ixNet setMultiAttrs $sg_tracking/latencyBin \
3086      -enabled False \
3087      -binLimits {1 1.42 2 2.82 4 5.66 8 11.32} \
3088      -numberOfBins 8
3089     sg_commit
3090     set sg_tracking [lindex [ixNet remapIds $sg_tracking] 0]
3091     set ixNetSG_Stack(2) $sg_tracking
3092
3093     #
3094     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ethernet-1"
3095     #
3096     set sg_stack $ixNetSG_Stack(2)/egress/fieldOffset/stack:"ethernet-1"
3097     sg_commit
3098     set sg_stack [lindex [ixNet remapIds $sg_stack] 0]
3099     set ixNetSG_Stack(3) $sg_stack
3100
3101     #
3102     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ethernet-1"/field:"ethernet.header.destinationAddress-1"
3103     #
3104     set sg_field $ixNetSG_Stack(3)/field:"ethernet.header.destinationAddress-1"
3105     ixNet setMultiAttrs $sg_field \
3106      -singleValue {00:00:00:00:00:00} \
3107      -seed {1} \
3108      -optionalEnabled True \
3109      -fullMesh False \
3110      -valueList {{00:00:00:00:00:00}} \
3111      -stepValue {00:00:00:00:00:00} \
3112      -fixedBits {00:00:00:00:00:00} \
3113      -fieldValue {00:00:00:00:00:00} \
3114      -auto False \
3115      -randomMask {00:00:00:00:00:00} \
3116      -trackingEnabled True \
3117      -valueType singleValue \
3118      -activeFieldChoice False \
3119      -startValue {00:00:00:00:00:00} \
3120      -countValue {1}
3121     sg_commit
3122     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3123
3124     #
3125     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ethernet-1"/field:"ethernet.header.sourceAddress-2"
3126     #
3127     set sg_field $ixNetSG_Stack(3)/field:"ethernet.header.sourceAddress-2"
3128     ixNet setMultiAttrs $sg_field \
3129      -singleValue {00:00:00:00:00:00} \
3130      -seed {1} \
3131      -optionalEnabled True \
3132      -fullMesh False \
3133      -valueList {{00:00:00:00:00:00}} \
3134      -stepValue {00:00:00:00:00:00} \
3135      -fixedBits {00:00:00:00:00:00} \
3136      -fieldValue {00:00:00:00:00:00} \
3137      -auto False \
3138      -randomMask {00:00:00:00:00:00} \
3139      -trackingEnabled False \
3140      -valueType singleValue \
3141      -activeFieldChoice False \
3142      -startValue {00:00:00:00:00:00} \
3143      -countValue {1}
3144     sg_commit
3145     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3146
3147     #
3148     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ethernet-1"/field:"ethernet.header.etherType-3"
3149     #
3150     set sg_field $ixNetSG_Stack(3)/field:"ethernet.header.etherType-3"
3151     ixNet setMultiAttrs $sg_field \
3152      -singleValue {800} \
3153      -seed {1} \
3154      -optionalEnabled True \
3155      -fullMesh False \
3156      -valueList {{0xFFFF}} \
3157      -stepValue {0xFFFF} \
3158      -fixedBits {0xFFFF} \
3159      -fieldValue {800} \
3160      -auto True \
3161      -randomMask {0xFFFF} \
3162      -trackingEnabled False \
3163      -valueType singleValue \
3164      -activeFieldChoice False \
3165      -startValue {0xFFFF} \
3166      -countValue {1}
3167     sg_commit
3168     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3169
3170     #
3171     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ethernet-1"/field:"ethernet.header.pfcQueue-4"
3172     #
3173     set sg_field $ixNetSG_Stack(3)/field:"ethernet.header.pfcQueue-4"
3174     ixNet setMultiAttrs $sg_field \
3175      -singleValue {0} \
3176      -seed {1} \
3177      -optionalEnabled True \
3178      -fullMesh False \
3179      -valueList {{0}} \
3180      -stepValue {0} \
3181      -fixedBits {0} \
3182      -fieldValue {0} \
3183      -auto False \
3184      -randomMask {0} \
3185      -trackingEnabled False \
3186      -valueType singleValue \
3187      -activeFieldChoice False \
3188      -startValue {0} \
3189      -countValue {1}
3190     sg_commit
3191     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3192
3193     #
3194     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"
3195     #
3196     set sg_stack $ixNetSG_Stack(2)/egress/fieldOffset/stack:"ipv4-2"
3197     sg_commit
3198     set sg_stack [lindex [ixNet remapIds $sg_stack] 0]
3199     set ixNetSG_Stack(3) $sg_stack
3200
3201     #
3202     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.version-1"
3203     #
3204     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.version-1"
3205     ixNet setMultiAttrs $sg_field \
3206      -singleValue {4} \
3207      -seed {1} \
3208      -optionalEnabled True \
3209      -fullMesh False \
3210      -valueList {{4}} \
3211      -stepValue {4} \
3212      -fixedBits {4} \
3213      -fieldValue {4} \
3214      -auto False \
3215      -randomMask {4} \
3216      -trackingEnabled False \
3217      -valueType singleValue \
3218      -activeFieldChoice False \
3219      -startValue {4} \
3220      -countValue {1}
3221     sg_commit
3222     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3223
3224     #
3225     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.headerLength-2"
3226     #
3227     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.headerLength-2"
3228     ixNet setMultiAttrs $sg_field \
3229      -singleValue {5} \
3230      -seed {1} \
3231      -optionalEnabled True \
3232      -fullMesh False \
3233      -valueList {{0}} \
3234      -stepValue {0} \
3235      -fixedBits {0} \
3236      -fieldValue {5} \
3237      -auto True \
3238      -randomMask {0} \
3239      -trackingEnabled False \
3240      -valueType singleValue \
3241      -activeFieldChoice False \
3242      -startValue {0} \
3243      -countValue {1}
3244     sg_commit
3245     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3246
3247     #
3248     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.raw-3"
3249     #
3250     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.raw-3"
3251     ixNet setMultiAttrs $sg_field \
3252      -singleValue {0} \
3253      -seed {1} \
3254      -optionalEnabled True \
3255      -fullMesh False \
3256      -valueList {{0}} \
3257      -stepValue {0} \
3258      -fixedBits {0} \
3259      -fieldValue {0} \
3260      -auto False \
3261      -randomMask {0} \
3262      -trackingEnabled False \
3263      -valueType singleValue \
3264      -activeFieldChoice False \
3265      -startValue {0} \
3266      -countValue {1}
3267     sg_commit
3268     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3269
3270     #
3271     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.tos.precedence-4"
3272     #
3273     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.precedence-4"
3274     ixNet setMultiAttrs $sg_field \
3275      -singleValue {0} \
3276      -seed {1} \
3277      -optionalEnabled True \
3278      -fullMesh False \
3279      -valueList {{0}} \
3280      -stepValue {0} \
3281      -fixedBits {0} \
3282      -fieldValue {000 Routine} \
3283      -auto False \
3284      -randomMask {0} \
3285      -trackingEnabled False \
3286      -valueType singleValue \
3287      -activeFieldChoice True \
3288      -startValue {0} \
3289      -countValue {1}
3290     sg_commit
3291     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3292
3293     #
3294     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.tos.delay-5"
3295     #
3296     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.delay-5"
3297     ixNet setMultiAttrs $sg_field \
3298      -singleValue {0} \
3299      -seed {1} \
3300      -optionalEnabled True \
3301      -fullMesh False \
3302      -valueList {{0}} \
3303      -stepValue {0} \
3304      -fixedBits {0} \
3305      -fieldValue {Normal} \
3306      -auto False \
3307      -randomMask {0} \
3308      -trackingEnabled False \
3309      -valueType singleValue \
3310      -activeFieldChoice True \
3311      -startValue {0} \
3312      -countValue {1}
3313     sg_commit
3314     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3315
3316     #
3317     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.tos.throughput-6"
3318     #
3319     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.throughput-6"
3320     ixNet setMultiAttrs $sg_field \
3321      -singleValue {0} \
3322      -seed {1} \
3323      -optionalEnabled True \
3324      -fullMesh False \
3325      -valueList {{0}} \
3326      -stepValue {0} \
3327      -fixedBits {0} \
3328      -fieldValue {Normal} \
3329      -auto False \
3330      -randomMask {0} \
3331      -trackingEnabled False \
3332      -valueType singleValue \
3333      -activeFieldChoice True \
3334      -startValue {0} \
3335      -countValue {1}
3336     sg_commit
3337     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3338
3339     #
3340     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.tos.reliability-7"
3341     #
3342     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.reliability-7"
3343     ixNet setMultiAttrs $sg_field \
3344      -singleValue {0} \
3345      -seed {1} \
3346      -optionalEnabled True \
3347      -fullMesh False \
3348      -valueList {{0}} \
3349      -stepValue {0} \
3350      -fixedBits {0} \
3351      -fieldValue {Normal} \
3352      -auto False \
3353      -randomMask {0} \
3354      -trackingEnabled False \
3355      -valueType singleValue \
3356      -activeFieldChoice True \
3357      -startValue {0} \
3358      -countValue {1}
3359     sg_commit
3360     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3361
3362     #
3363     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.tos.monetary-8"
3364     #
3365     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.monetary-8"
3366     ixNet setMultiAttrs $sg_field \
3367      -singleValue {0} \
3368      -seed {1} \
3369      -optionalEnabled True \
3370      -fullMesh False \
3371      -valueList {{0}} \
3372      -stepValue {0} \
3373      -fixedBits {0} \
3374      -fieldValue {Normal} \
3375      -auto False \
3376      -randomMask {0} \
3377      -trackingEnabled False \
3378      -valueType singleValue \
3379      -activeFieldChoice True \
3380      -startValue {0} \
3381      -countValue {1}
3382     sg_commit
3383     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3384
3385     #
3386     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.tos.unused-9"
3387     #
3388     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.unused-9"
3389     ixNet setMultiAttrs $sg_field \
3390      -singleValue {0} \
3391      -seed {1} \
3392      -optionalEnabled True \
3393      -fullMesh False \
3394      -valueList {{0}} \
3395      -stepValue {0} \
3396      -fixedBits {0} \
3397      -fieldValue {0} \
3398      -auto False \
3399      -randomMask {0} \
3400      -trackingEnabled False \
3401      -valueType singleValue \
3402      -activeFieldChoice True \
3403      -startValue {0} \
3404      -countValue {1}
3405     sg_commit
3406     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3407
3408     #
3409     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.defaultPHB.defaultPHB-10"
3410     #
3411     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.defaultPHB.defaultPHB-10"
3412     ixNet setMultiAttrs $sg_field \
3413      -singleValue {0} \
3414      -seed {1} \
3415      -optionalEnabled True \
3416      -fullMesh False \
3417      -valueList {{0}} \
3418      -stepValue {0} \
3419      -fixedBits {0} \
3420      -fieldValue {0} \
3421      -auto False \
3422      -randomMask {0} \
3423      -trackingEnabled False \
3424      -valueType singleValue \
3425      -activeFieldChoice False \
3426      -startValue {0} \
3427      -countValue {1}
3428     sg_commit
3429     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3430
3431     #
3432     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.defaultPHB.unused-11"
3433     #
3434     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.defaultPHB.unused-11"
3435     ixNet setMultiAttrs $sg_field \
3436      -singleValue {0} \
3437      -seed {1} \
3438      -optionalEnabled True \
3439      -fullMesh False \
3440      -valueList {{0}} \
3441      -stepValue {0} \
3442      -fixedBits {0} \
3443      -fieldValue {0} \
3444      -auto False \
3445      -randomMask {0} \
3446      -trackingEnabled False \
3447      -valueType singleValue \
3448      -activeFieldChoice False \
3449      -startValue {0} \
3450      -countValue {1}
3451     sg_commit
3452     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3453
3454     #
3455     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.classSelectorPHB.classSelectorPHB-12"
3456     #
3457     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.classSelectorPHB.classSelectorPHB-12"
3458     ixNet setMultiAttrs $sg_field \
3459      -singleValue {8} \
3460      -seed {1} \
3461      -optionalEnabled True \
3462      -fullMesh False \
3463      -valueList {{8}} \
3464      -stepValue {8} \
3465      -fixedBits {8} \
3466      -fieldValue {Precedence 1} \
3467      -auto False \
3468      -randomMask {8} \
3469      -trackingEnabled False \
3470      -valueType singleValue \
3471      -activeFieldChoice False \
3472      -startValue {8} \
3473      -countValue {1}
3474     sg_commit
3475     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3476
3477     #
3478     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.classSelectorPHB.unused-13"
3479     #
3480     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.classSelectorPHB.unused-13"
3481     ixNet setMultiAttrs $sg_field \
3482      -singleValue {0} \
3483      -seed {1} \
3484      -optionalEnabled True \
3485      -fullMesh False \
3486      -valueList {{0}} \
3487      -stepValue {0} \
3488      -fixedBits {0} \
3489      -fieldValue {0} \
3490      -auto False \
3491      -randomMask {0} \
3492      -trackingEnabled False \
3493      -valueType singleValue \
3494      -activeFieldChoice False \
3495      -startValue {0} \
3496      -countValue {1}
3497     sg_commit
3498     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3499
3500     #
3501     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.assuredForwardingPHB.assuredForwardingPHB-14"
3502     #
3503     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.assuredForwardingPHB.assuredForwardingPHB-14"
3504     ixNet setMultiAttrs $sg_field \
3505      -singleValue {10} \
3506      -seed {1} \
3507      -optionalEnabled True \
3508      -fullMesh False \
3509      -valueList {{10}} \
3510      -stepValue {10} \
3511      -fixedBits {10} \
3512      -fieldValue {Class 1, Low drop precedence} \
3513      -auto False \
3514      -randomMask {10} \
3515      -trackingEnabled False \
3516      -valueType singleValue \
3517      -activeFieldChoice False \
3518      -startValue {10} \
3519      -countValue {1}
3520     sg_commit
3521     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3522
3523     #
3524     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.assuredForwardingPHB.unused-15"
3525     #
3526     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.assuredForwardingPHB.unused-15"
3527     ixNet setMultiAttrs $sg_field \
3528      -singleValue {0} \
3529      -seed {1} \
3530      -optionalEnabled True \
3531      -fullMesh False \
3532      -valueList {{0}} \
3533      -stepValue {0} \
3534      -fixedBits {0} \
3535      -fieldValue {0} \
3536      -auto False \
3537      -randomMask {0} \
3538      -trackingEnabled False \
3539      -valueType singleValue \
3540      -activeFieldChoice False \
3541      -startValue {0} \
3542      -countValue {1}
3543     sg_commit
3544     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3545
3546     #
3547     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.expeditedForwardingPHB.expeditedForwardingPHB-16"
3548     #
3549     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.expeditedForwardingPHB.expeditedForwardingPHB-16"
3550     ixNet setMultiAttrs $sg_field \
3551      -singleValue {46} \
3552      -seed {1} \
3553      -optionalEnabled True \
3554      -fullMesh False \
3555      -valueList {{46}} \
3556      -stepValue {46} \
3557      -fixedBits {46} \
3558      -fieldValue {46} \
3559      -auto False \
3560      -randomMask {46} \
3561      -trackingEnabled False \
3562      -valueType singleValue \
3563      -activeFieldChoice False \
3564      -startValue {46} \
3565      -countValue {1}
3566     sg_commit
3567     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3568
3569     #
3570     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.expeditedForwardingPHB.unused-17"
3571     #
3572     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.expeditedForwardingPHB.unused-17"
3573     ixNet setMultiAttrs $sg_field \
3574      -singleValue {0} \
3575      -seed {1} \
3576      -optionalEnabled True \
3577      -fullMesh False \
3578      -valueList {{0}} \
3579      -stepValue {0} \
3580      -fixedBits {0} \
3581      -fieldValue {0} \
3582      -auto False \
3583      -randomMask {0} \
3584      -trackingEnabled False \
3585      -valueType singleValue \
3586      -activeFieldChoice False \
3587      -startValue {0} \
3588      -countValue {1}
3589     sg_commit
3590     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3591
3592     #
3593     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.totalLength-18"
3594     #
3595     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.totalLength-18"
3596     ixNet setMultiAttrs $sg_field \
3597      -singleValue {92} \
3598      -seed {1} \
3599      -optionalEnabled True \
3600      -fullMesh False \
3601      -valueList {{20}} \
3602      -stepValue {20} \
3603      -fixedBits {20} \
3604      -fieldValue {92} \
3605      -auto True \
3606      -randomMask {20} \
3607      -trackingEnabled False \
3608      -valueType singleValue \
3609      -activeFieldChoice False \
3610      -startValue {20} \
3611      -countValue {1}
3612     sg_commit
3613     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3614
3615     #
3616     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.identification-19"
3617     #
3618     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.identification-19"
3619     ixNet setMultiAttrs $sg_field \
3620      -singleValue {0} \
3621      -seed {1} \
3622      -optionalEnabled True \
3623      -fullMesh False \
3624      -valueList {{0}} \
3625      -stepValue {0} \
3626      -fixedBits {0} \
3627      -fieldValue {0} \
3628      -auto False \
3629      -randomMask {0} \
3630      -trackingEnabled False \
3631      -valueType singleValue \
3632      -activeFieldChoice False \
3633      -startValue {0} \
3634      -countValue {1}
3635     sg_commit
3636     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3637
3638     #
3639     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.flags.reserved-20"
3640     #
3641     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.flags.reserved-20"
3642     ixNet setMultiAttrs $sg_field \
3643      -singleValue {0} \
3644      -seed {1} \
3645      -optionalEnabled True \
3646      -fullMesh False \
3647      -valueList {{0}} \
3648      -stepValue {0} \
3649      -fixedBits {0} \
3650      -fieldValue {0} \
3651      -auto False \
3652      -randomMask {0} \
3653      -trackingEnabled False \
3654      -valueType singleValue \
3655      -activeFieldChoice False \
3656      -startValue {0} \
3657      -countValue {1}
3658     sg_commit
3659     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3660
3661     #
3662     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.flags.fragment-21"
3663     #
3664     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.flags.fragment-21"
3665     ixNet setMultiAttrs $sg_field \
3666      -singleValue {0} \
3667      -seed {1} \
3668      -optionalEnabled True \
3669      -fullMesh False \
3670      -valueList {{0}} \
3671      -stepValue {0} \
3672      -fixedBits {0} \
3673      -fieldValue {May fragment} \
3674      -auto False \
3675      -randomMask {0} \
3676      -trackingEnabled False \
3677      -valueType singleValue \
3678      -activeFieldChoice False \
3679      -startValue {0} \
3680      -countValue {1}
3681     sg_commit
3682     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3683
3684     #
3685     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.flags.lastFragment-22"
3686     #
3687     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.flags.lastFragment-22"
3688     ixNet setMultiAttrs $sg_field \
3689      -singleValue {0} \
3690      -seed {1} \
3691      -optionalEnabled True \
3692      -fullMesh False \
3693      -valueList {{0}} \
3694      -stepValue {0} \
3695      -fixedBits {0} \
3696      -fieldValue {Last fragment} \
3697      -auto False \
3698      -randomMask {0} \
3699      -trackingEnabled False \
3700      -valueType singleValue \
3701      -activeFieldChoice False \
3702      -startValue {0} \
3703      -countValue {1}
3704     sg_commit
3705     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3706
3707     #
3708     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.fragmentOffset-23"
3709     #
3710     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.fragmentOffset-23"
3711     ixNet setMultiAttrs $sg_field \
3712      -singleValue {0} \
3713      -seed {1} \
3714      -optionalEnabled True \
3715      -fullMesh False \
3716      -valueList {{0}} \
3717      -stepValue {0} \
3718      -fixedBits {0} \
3719      -fieldValue {0} \
3720      -auto False \
3721      -randomMask {0} \
3722      -trackingEnabled False \
3723      -valueType singleValue \
3724      -activeFieldChoice False \
3725      -startValue {0} \
3726      -countValue {1}
3727     sg_commit
3728     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3729
3730     #
3731     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.ttl-24"
3732     #
3733     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.ttl-24"
3734     ixNet setMultiAttrs $sg_field \
3735      -singleValue {64} \
3736      -seed {1} \
3737      -optionalEnabled True \
3738      -fullMesh False \
3739      -valueList {{64}} \
3740      -stepValue {64} \
3741      -fixedBits {64} \
3742      -fieldValue {64} \
3743      -auto False \
3744      -randomMask {64} \
3745      -trackingEnabled False \
3746      -valueType singleValue \
3747      -activeFieldChoice False \
3748      -startValue {64} \
3749      -countValue {1}
3750     sg_commit
3751     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3752
3753     #
3754     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.protocol-25"
3755     #
3756     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.protocol-25"
3757     ixNet setMultiAttrs $sg_field \
3758      -singleValue {17} \
3759      -seed {1} \
3760      -optionalEnabled True \
3761      -fullMesh False \
3762      -valueList {{61}} \
3763      -stepValue {61} \
3764      -fixedBits {61} \
3765      -fieldValue {UDP} \
3766      -auto True \
3767      -randomMask {61} \
3768      -trackingEnabled False \
3769      -valueType singleValue \
3770      -activeFieldChoice False \
3771      -startValue {61} \
3772      -countValue {1}
3773     sg_commit
3774     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3775
3776     #
3777     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.checksum-26"
3778     #
3779     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.checksum-26"
3780     ixNet setMultiAttrs $sg_field \
3781      -singleValue {0} \
3782      -seed {1} \
3783      -optionalEnabled True \
3784      -fullMesh False \
3785      -valueList {{0}} \
3786      -stepValue {0} \
3787      -fixedBits {0} \
3788      -fieldValue {0} \
3789      -auto True \
3790      -randomMask {0} \
3791      -trackingEnabled False \
3792      -valueType singleValue \
3793      -activeFieldChoice False \
3794      -startValue {0} \
3795      -countValue {1}
3796     sg_commit
3797     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3798
3799     #
3800     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.srcIp-27"
3801     #
3802     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.srcIp-27"
3803     ixNet setMultiAttrs $sg_field \
3804      -singleValue {0.0.0.0} \
3805      -seed {1} \
3806      -optionalEnabled True \
3807      -fullMesh False \
3808      -valueList {{0.0.0.0}} \
3809      -stepValue {0.0.0.0} \
3810      -fixedBits {0.0.0.0} \
3811      -fieldValue {0.0.0.0} \
3812      -auto False \
3813      -randomMask {0.0.0.0} \
3814      -trackingEnabled False \
3815      -valueType singleValue \
3816      -activeFieldChoice False \
3817      -startValue {0.0.0.0} \
3818      -countValue {1}
3819     sg_commit
3820     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3821
3822     #
3823     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.dstIp-28"
3824     #
3825     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.dstIp-28"
3826     ixNet setMultiAttrs $sg_field \
3827      -singleValue {0.0.0.0} \
3828      -seed {1} \
3829      -optionalEnabled True \
3830      -fullMesh False \
3831      -valueList {{0.0.0.0}} \
3832      -stepValue {0.0.0.0} \
3833      -fixedBits {0.0.0.0} \
3834      -fieldValue {0.0.0.0} \
3835      -auto False \
3836      -randomMask {0.0.0.0} \
3837      -trackingEnabled False \
3838      -valueType singleValue \
3839      -activeFieldChoice False \
3840      -startValue {0.0.0.0} \
3841      -countValue {1}
3842     sg_commit
3843     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3844
3845     #
3846     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.nop-29"
3847     #
3848     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.nop-29"
3849     ixNet setMultiAttrs $sg_field \
3850      -singleValue {1} \
3851      -seed {1} \
3852      -optionalEnabled False \
3853      -fullMesh False \
3854      -valueList {{1}} \
3855      -stepValue {1} \
3856      -fixedBits {1} \
3857      -fieldValue {1} \
3858      -auto False \
3859      -randomMask {1} \
3860      -trackingEnabled False \
3861      -valueType singleValue \
3862      -activeFieldChoice True \
3863      -startValue {1} \
3864      -countValue {1}
3865     sg_commit
3866     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3867
3868     #
3869     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.type-30"
3870     #
3871     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.type-30"
3872     ixNet setMultiAttrs $sg_field \
3873      -singleValue {130} \
3874      -seed {1} \
3875      -optionalEnabled False \
3876      -fullMesh False \
3877      -valueList {{130}} \
3878      -stepValue {130} \
3879      -fixedBits {130} \
3880      -fieldValue {130} \
3881      -auto False \
3882      -randomMask {130} \
3883      -trackingEnabled False \
3884      -valueType singleValue \
3885      -activeFieldChoice False \
3886      -startValue {130} \
3887      -countValue {1}
3888     sg_commit
3889     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3890
3891     #
3892     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.length-31"
3893     #
3894     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.length-31"
3895     ixNet setMultiAttrs $sg_field \
3896      -singleValue {11} \
3897      -seed {1} \
3898      -optionalEnabled False \
3899      -fullMesh False \
3900      -valueList {{11}} \
3901      -stepValue {11} \
3902      -fixedBits {11} \
3903      -fieldValue {11} \
3904      -auto False \
3905      -randomMask {11} \
3906      -trackingEnabled False \
3907      -valueType singleValue \
3908      -activeFieldChoice False \
3909      -startValue {11} \
3910      -countValue {1}
3911     sg_commit
3912     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3913
3914     #
3915     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.security-32"
3916     #
3917     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.security-32"
3918     ixNet setMultiAttrs $sg_field \
3919      -singleValue {0} \
3920      -seed {1} \
3921      -optionalEnabled False \
3922      -fullMesh False \
3923      -valueList {{0}} \
3924      -stepValue {0} \
3925      -fixedBits {0} \
3926      -fieldValue {Unclassified} \
3927      -auto False \
3928      -randomMask {0} \
3929      -trackingEnabled False \
3930      -valueType singleValue \
3931      -activeFieldChoice False \
3932      -startValue {0} \
3933      -countValue {1}
3934     sg_commit
3935     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3936
3937     #
3938     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.compartments-33"
3939     #
3940     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.compartments-33"
3941     ixNet setMultiAttrs $sg_field \
3942      -singleValue {0} \
3943      -seed {1} \
3944      -optionalEnabled False \
3945      -fullMesh False \
3946      -valueList {{0}} \
3947      -stepValue {0} \
3948      -fixedBits {0} \
3949      -fieldValue {0} \
3950      -auto False \
3951      -randomMask {0} \
3952      -trackingEnabled False \
3953      -valueType singleValue \
3954      -activeFieldChoice False \
3955      -startValue {0} \
3956      -countValue {1}
3957     sg_commit
3958     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3959
3960     #
3961     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.handling-34"
3962     #
3963     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.handling-34"
3964     ixNet setMultiAttrs $sg_field \
3965      -singleValue {0} \
3966      -seed {1} \
3967      -optionalEnabled False \
3968      -fullMesh False \
3969      -valueList {{0}} \
3970      -stepValue {0} \
3971      -fixedBits {0} \
3972      -fieldValue {0} \
3973      -auto False \
3974      -randomMask {0} \
3975      -trackingEnabled False \
3976      -valueType singleValue \
3977      -activeFieldChoice False \
3978      -startValue {0} \
3979      -countValue {1}
3980     sg_commit
3981     set sg_field [lindex [ixNet remapIds $sg_field] 0]
3982
3983     #
3984     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.tcc-35"
3985     #
3986     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.tcc-35"
3987     ixNet setMultiAttrs $sg_field \
3988      -singleValue {0} \
3989      -seed {1} \
3990      -optionalEnabled False \
3991      -fullMesh False \
3992      -valueList {{0}} \
3993      -stepValue {0} \
3994      -fixedBits {0} \
3995      -fieldValue {0} \
3996      -auto False \
3997      -randomMask {0} \
3998      -trackingEnabled False \
3999      -valueType singleValue \
4000      -activeFieldChoice False \
4001      -startValue {0} \
4002      -countValue {1}
4003     sg_commit
4004     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4005
4006     #
4007     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.lsrr.type-36"
4008     #
4009     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.lsrr.type-36"
4010     ixNet setMultiAttrs $sg_field \
4011      -singleValue {131} \
4012      -seed {1} \
4013      -optionalEnabled False \
4014      -fullMesh False \
4015      -valueList {{131}} \
4016      -stepValue {131} \
4017      -fixedBits {131} \
4018      -fieldValue {131} \
4019      -auto False \
4020      -randomMask {131} \
4021      -trackingEnabled False \
4022      -valueType singleValue \
4023      -activeFieldChoice False \
4024      -startValue {131} \
4025      -countValue {1}
4026     sg_commit
4027     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4028
4029     #
4030     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.lsrr.length-37"
4031     #
4032     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.lsrr.length-37"
4033     ixNet setMultiAttrs $sg_field \
4034      -singleValue {8} \
4035      -seed {1} \
4036      -optionalEnabled False \
4037      -fullMesh False \
4038      -valueList {{8}} \
4039      -stepValue {8} \
4040      -fixedBits {8} \
4041      -fieldValue {8} \
4042      -auto False \
4043      -randomMask {8} \
4044      -trackingEnabled False \
4045      -valueType singleValue \
4046      -activeFieldChoice False \
4047      -startValue {8} \
4048      -countValue {1}
4049     sg_commit
4050     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4051
4052     #
4053     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.pointer-38"
4054     #
4055     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.pointer-38"
4056     ixNet setMultiAttrs $sg_field \
4057      -singleValue {4} \
4058      -seed {1} \
4059      -optionalEnabled False \
4060      -fullMesh False \
4061      -valueList {{4}} \
4062      -stepValue {4} \
4063      -fixedBits {4} \
4064      -fieldValue {4} \
4065      -auto False \
4066      -randomMask {4} \
4067      -trackingEnabled False \
4068      -valueType singleValue \
4069      -activeFieldChoice False \
4070      -startValue {4} \
4071      -countValue {1}
4072     sg_commit
4073     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4074
4075     #
4076     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.routeData-39"
4077     #
4078     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.routeData-39"
4079     ixNet setMultiAttrs $sg_field \
4080      -singleValue {0} \
4081      -seed {1} \
4082      -optionalEnabled False \
4083      -fullMesh False \
4084      -valueList {{0}} \
4085      -stepValue {0} \
4086      -fixedBits {0} \
4087      -fieldValue {0} \
4088      -auto False \
4089      -randomMask {0} \
4090      -trackingEnabled False \
4091      -valueType singleValue \
4092      -activeFieldChoice False \
4093      -startValue {0} \
4094      -countValue {1}
4095     sg_commit
4096     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4097
4098     #
4099     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.ssrr.type-40"
4100     #
4101     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.ssrr.type-40"
4102     ixNet setMultiAttrs $sg_field \
4103      -singleValue {137} \
4104      -seed {1} \
4105      -optionalEnabled False \
4106      -fullMesh False \
4107      -valueList {{137}} \
4108      -stepValue {137} \
4109      -fixedBits {137} \
4110      -fieldValue {137} \
4111      -auto False \
4112      -randomMask {137} \
4113      -trackingEnabled False \
4114      -valueType singleValue \
4115      -activeFieldChoice False \
4116      -startValue {137} \
4117      -countValue {1}
4118     sg_commit
4119     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4120
4121     #
4122     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.ssrr.length-41"
4123     #
4124     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.ssrr.length-41"
4125     ixNet setMultiAttrs $sg_field \
4126      -singleValue {8} \
4127      -seed {1} \
4128      -optionalEnabled False \
4129      -fullMesh False \
4130      -valueList {{8}} \
4131      -stepValue {8} \
4132      -fixedBits {8} \
4133      -fieldValue {8} \
4134      -auto False \
4135      -randomMask {8} \
4136      -trackingEnabled False \
4137      -valueType singleValue \
4138      -activeFieldChoice False \
4139      -startValue {8} \
4140      -countValue {1}
4141     sg_commit
4142     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4143
4144     #
4145     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.recordRoute.type-42"
4146     #
4147     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.recordRoute.type-42"
4148     ixNet setMultiAttrs $sg_field \
4149      -singleValue {7} \
4150      -seed {1} \
4151      -optionalEnabled False \
4152      -fullMesh False \
4153      -valueList {{7}} \
4154      -stepValue {7} \
4155      -fixedBits {7} \
4156      -fieldValue {7} \
4157      -auto False \
4158      -randomMask {7} \
4159      -trackingEnabled False \
4160      -valueType singleValue \
4161      -activeFieldChoice False \
4162      -startValue {7} \
4163      -countValue {1}
4164     sg_commit
4165     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4166
4167     #
4168     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.recordRoute.length-43"
4169     #
4170     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.recordRoute.length-43"
4171     ixNet setMultiAttrs $sg_field \
4172      -singleValue {8} \
4173      -seed {1} \
4174      -optionalEnabled False \
4175      -fullMesh False \
4176      -valueList {{8}} \
4177      -stepValue {8} \
4178      -fixedBits {8} \
4179      -fieldValue {8} \
4180      -auto False \
4181      -randomMask {8} \
4182      -trackingEnabled False \
4183      -valueType singleValue \
4184      -activeFieldChoice False \
4185      -startValue {8} \
4186      -countValue {1}
4187     sg_commit
4188     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4189
4190     #
4191     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.streamId.type-44"
4192     #
4193     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.streamId.type-44"
4194     ixNet setMultiAttrs $sg_field \
4195      -singleValue {136} \
4196      -seed {1} \
4197      -optionalEnabled False \
4198      -fullMesh False \
4199      -valueList {{136}} \
4200      -stepValue {136} \
4201      -fixedBits {136} \
4202      -fieldValue {136} \
4203      -auto False \
4204      -randomMask {136} \
4205      -trackingEnabled False \
4206      -valueType singleValue \
4207      -activeFieldChoice False \
4208      -startValue {136} \
4209      -countValue {1}
4210     sg_commit
4211     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4212
4213     #
4214     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.streamId.length-45"
4215     #
4216     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.streamId.length-45"
4217     ixNet setMultiAttrs $sg_field \
4218      -singleValue {4} \
4219      -seed {1} \
4220      -optionalEnabled False \
4221      -fullMesh False \
4222      -valueList {{4}} \
4223      -stepValue {4} \
4224      -fixedBits {4} \
4225      -fieldValue {4} \
4226      -auto False \
4227      -randomMask {4} \
4228      -trackingEnabled False \
4229      -valueType singleValue \
4230      -activeFieldChoice False \
4231      -startValue {4} \
4232      -countValue {1}
4233     sg_commit
4234     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4235
4236     #
4237     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.streamId.id-46"
4238     #
4239     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.streamId.id-46"
4240     ixNet setMultiAttrs $sg_field \
4241      -singleValue {0} \
4242      -seed {1} \
4243      -optionalEnabled False \
4244      -fullMesh False \
4245      -valueList {{0}} \
4246      -stepValue {0} \
4247      -fixedBits {0} \
4248      -fieldValue {0} \
4249      -auto False \
4250      -randomMask {0} \
4251      -trackingEnabled False \
4252      -valueType singleValue \
4253      -activeFieldChoice False \
4254      -startValue {0} \
4255      -countValue {1}
4256     sg_commit
4257     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4258
4259     #
4260     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.type-47"
4261     #
4262     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.type-47"
4263     ixNet setMultiAttrs $sg_field \
4264      -singleValue {68} \
4265      -seed {1} \
4266      -optionalEnabled False \
4267      -fullMesh False \
4268      -valueList {{68}} \
4269      -stepValue {68} \
4270      -fixedBits {68} \
4271      -fieldValue {68} \
4272      -auto False \
4273      -randomMask {68} \
4274      -trackingEnabled False \
4275      -valueType singleValue \
4276      -activeFieldChoice False \
4277      -startValue {68} \
4278      -countValue {1}
4279     sg_commit
4280     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4281
4282     #
4283     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.length-48"
4284     #
4285     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.length-48"
4286     ixNet setMultiAttrs $sg_field \
4287      -singleValue {12} \
4288      -seed {1} \
4289      -optionalEnabled False \
4290      -fullMesh False \
4291      -valueList {{12}} \
4292      -stepValue {12} \
4293      -fixedBits {12} \
4294      -fieldValue {12} \
4295      -auto False \
4296      -randomMask {12} \
4297      -trackingEnabled False \
4298      -valueType singleValue \
4299      -activeFieldChoice False \
4300      -startValue {12} \
4301      -countValue {1}
4302     sg_commit
4303     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4304
4305     #
4306     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.pointer-49"
4307     #
4308     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.pointer-49"
4309     ixNet setMultiAttrs $sg_field \
4310      -singleValue {5} \
4311      -seed {1} \
4312      -optionalEnabled False \
4313      -fullMesh False \
4314      -valueList {{5}} \
4315      -stepValue {5} \
4316      -fixedBits {5} \
4317      -fieldValue {5} \
4318      -auto False \
4319      -randomMask {5} \
4320      -trackingEnabled False \
4321      -valueType singleValue \
4322      -activeFieldChoice False \
4323      -startValue {5} \
4324      -countValue {1}
4325     sg_commit
4326     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4327
4328     #
4329     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.overflow-50"
4330     #
4331     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.overflow-50"
4332     ixNet setMultiAttrs $sg_field \
4333      -singleValue {0} \
4334      -seed {1} \
4335      -optionalEnabled False \
4336      -fullMesh False \
4337      -valueList {{0}} \
4338      -stepValue {0} \
4339      -fixedBits {0} \
4340      -fieldValue {0} \
4341      -auto False \
4342      -randomMask {0} \
4343      -trackingEnabled False \
4344      -valueType singleValue \
4345      -activeFieldChoice False \
4346      -startValue {0} \
4347      -countValue {1}
4348     sg_commit
4349     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4350
4351     #
4352     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.flags-51"
4353     #
4354     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.flags-51"
4355     ixNet setMultiAttrs $sg_field \
4356      -singleValue {0} \
4357      -seed {1} \
4358      -optionalEnabled False \
4359      -fullMesh False \
4360      -valueList {{0}} \
4361      -stepValue {0} \
4362      -fixedBits {0} \
4363      -fieldValue {Timestamps only, in consecutive 32-bit words} \
4364      -auto False \
4365      -randomMask {0} \
4366      -trackingEnabled False \
4367      -valueType singleValue \
4368      -activeFieldChoice False \
4369      -startValue {0} \
4370      -countValue {1}
4371     sg_commit
4372     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4373
4374     #
4375     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.pair.address-52"
4376     #
4377     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.pair.address-52"
4378     ixNet setMultiAttrs $sg_field \
4379      -singleValue {0} \
4380      -seed {1} \
4381      -optionalEnabled False \
4382      -fullMesh False \
4383      -valueList {{0}} \
4384      -stepValue {0} \
4385      -fixedBits {0} \
4386      -fieldValue {0} \
4387      -auto False \
4388      -randomMask {0} \
4389      -trackingEnabled False \
4390      -valueType singleValue \
4391      -activeFieldChoice False \
4392      -startValue {0} \
4393      -countValue {1}
4394     sg_commit
4395     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4396
4397     #
4398     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.pair.timestamp-53"
4399     #
4400     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.pair.timestamp-53"
4401     ixNet setMultiAttrs $sg_field \
4402      -singleValue {0} \
4403      -seed {1} \
4404      -optionalEnabled False \
4405      -fullMesh False \
4406      -valueList {{0}} \
4407      -stepValue {0} \
4408      -fixedBits {0} \
4409      -fieldValue {0} \
4410      -auto False \
4411      -randomMask {0} \
4412      -trackingEnabled False \
4413      -valueType singleValue \
4414      -activeFieldChoice False \
4415      -startValue {0} \
4416      -countValue {1}
4417     sg_commit
4418     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4419
4420     #
4421     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.last-54"
4422     #
4423     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.last-54"
4424     ixNet setMultiAttrs $sg_field \
4425      -singleValue {0} \
4426      -seed {1} \
4427      -optionalEnabled False \
4428      -fullMesh False \
4429      -valueList {{0}} \
4430      -stepValue {0} \
4431      -fixedBits {0} \
4432      -fieldValue {0} \
4433      -auto False \
4434      -randomMask {0} \
4435      -trackingEnabled False \
4436      -valueType singleValue \
4437      -activeFieldChoice False \
4438      -startValue {0} \
4439      -countValue {1}
4440     sg_commit
4441     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4442
4443     #
4444     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.routerAlert.type-55"
4445     #
4446     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.routerAlert.type-55"
4447     ixNet setMultiAttrs $sg_field \
4448      -singleValue {94} \
4449      -seed {1} \
4450      -optionalEnabled False \
4451      -fullMesh False \
4452      -valueList {{0x94}} \
4453      -stepValue {0x94} \
4454      -fixedBits {0x94} \
4455      -fieldValue {94} \
4456      -auto False \
4457      -randomMask {0x94} \
4458      -trackingEnabled False \
4459      -valueType singleValue \
4460      -activeFieldChoice False \
4461      -startValue {0x94} \
4462      -countValue {1}
4463     sg_commit
4464     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4465
4466     #
4467     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.routerAlert.length-56"
4468     #
4469     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.routerAlert.length-56"
4470     ixNet setMultiAttrs $sg_field \
4471      -singleValue {4} \
4472      -seed {1} \
4473      -optionalEnabled False \
4474      -fullMesh False \
4475      -valueList {{0x04}} \
4476      -stepValue {0x04} \
4477      -fixedBits {0x04} \
4478      -fieldValue {4} \
4479      -auto False \
4480      -randomMask {0x04} \
4481      -trackingEnabled False \
4482      -valueType singleValue \
4483      -activeFieldChoice False \
4484      -startValue {0x04} \
4485      -countValue {1}
4486     sg_commit
4487     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4488
4489     #
4490     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.routerAlert.value-57"
4491     #
4492     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.routerAlert.value-57"
4493     ixNet setMultiAttrs $sg_field \
4494      -singleValue {0} \
4495      -seed {1} \
4496      -optionalEnabled False \
4497      -fullMesh False \
4498      -valueList {{0}} \
4499      -stepValue {0} \
4500      -fixedBits {0} \
4501      -fieldValue {Router shall examine packet} \
4502      -auto False \
4503      -randomMask {0} \
4504      -trackingEnabled False \
4505      -valueType singleValue \
4506      -activeFieldChoice False \
4507      -startValue {0} \
4508      -countValue {1}
4509     sg_commit
4510     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4511
4512     #
4513     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.pad-58"
4514     #
4515     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.pad-58"
4516     ixNet setMultiAttrs $sg_field \
4517      -singleValue {0} \
4518      -seed {1} \
4519      -optionalEnabled False \
4520      -fullMesh False \
4521      -valueList {{0}} \
4522      -stepValue {0} \
4523      -fixedBits {0} \
4524      -fieldValue {0} \
4525      -auto True \
4526      -randomMask {0} \
4527      -trackingEnabled False \
4528      -valueType singleValue \
4529      -activeFieldChoice False \
4530      -startValue {0} \
4531      -countValue {1}
4532     sg_commit
4533     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4534
4535     #
4536     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"udp-3"
4537     #
4538     set sg_stack $ixNetSG_Stack(2)/egress/fieldOffset/stack:"udp-3"
4539     sg_commit
4540     set sg_stack [lindex [ixNet remapIds $sg_stack] 0]
4541     set ixNetSG_Stack(3) $sg_stack
4542
4543     #
4544     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"udp-3"/field:"udp.header.srcPort-1"
4545     #
4546     set sg_field $ixNetSG_Stack(3)/field:"udp.header.srcPort-1"
4547     ixNet setMultiAttrs $sg_field \
4548      -singleValue {63} \
4549      -seed {1} \
4550      -optionalEnabled True \
4551      -fullMesh False \
4552      -valueList {{63}} \
4553      -stepValue {63} \
4554      -fixedBits {63} \
4555      -fieldValue {Default} \
4556      -auto True \
4557      -randomMask {63} \
4558      -trackingEnabled False \
4559      -valueType singleValue \
4560      -activeFieldChoice False \
4561      -startValue {63} \
4562      -countValue {1}
4563     sg_commit
4564     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4565
4566     #
4567     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"udp-3"/field:"udp.header.dstPort-2"
4568     #
4569     set sg_field $ixNetSG_Stack(3)/field:"udp.header.dstPort-2"
4570     ixNet setMultiAttrs $sg_field \
4571      -singleValue {63} \
4572      -seed {1} \
4573      -optionalEnabled True \
4574      -fullMesh False \
4575      -valueList {{63}} \
4576      -stepValue {63} \
4577      -fixedBits {63} \
4578      -fieldValue {Default} \
4579      -auto True \
4580      -randomMask {63} \
4581      -trackingEnabled False \
4582      -valueType singleValue \
4583      -activeFieldChoice False \
4584      -startValue {63} \
4585      -countValue {1}
4586     sg_commit
4587     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4588
4589     #
4590     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"udp-3"/field:"udp.header.length-3"
4591     #
4592     set sg_field $ixNetSG_Stack(3)/field:"udp.header.length-3"
4593     ixNet setMultiAttrs $sg_field \
4594      -singleValue {72} \
4595      -seed {1} \
4596      -optionalEnabled True \
4597      -fullMesh False \
4598      -valueList {{8}} \
4599      -stepValue {8} \
4600      -fixedBits {8} \
4601      -fieldValue {72} \
4602      -auto True \
4603      -randomMask {8} \
4604      -trackingEnabled False \
4605      -valueType singleValue \
4606      -activeFieldChoice False \
4607      -startValue {8} \
4608      -countValue {1}
4609     sg_commit
4610     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4611
4612     #
4613     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"udp-3"/field:"udp.header.checksum-4"
4614     #
4615     set sg_field $ixNetSG_Stack(3)/field:"udp.header.checksum-4"
4616     ixNet setMultiAttrs $sg_field \
4617      -singleValue {0} \
4618      -seed {1} \
4619      -optionalEnabled True \
4620      -fullMesh False \
4621      -valueList {{0}} \
4622      -stepValue {0} \
4623      -fixedBits {0} \
4624      -fieldValue {0} \
4625      -auto True \
4626      -randomMask {0} \
4627      -trackingEnabled False \
4628      -valueType singleValue \
4629      -activeFieldChoice False \
4630      -startValue {0} \
4631      -countValue {1}
4632     sg_commit
4633     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4634
4635     #
4636     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"fcs-4"
4637     #
4638     set sg_stack $ixNetSG_Stack(2)/egress/fieldOffset/stack:"fcs-4"
4639     sg_commit
4640     set sg_stack [lindex [ixNet remapIds $sg_stack] 0]
4641     set ixNetSG_Stack(3) $sg_stack
4642
4643     #
4644     # configuring the object that corresponds to /traffic/trafficItem:1/tracking/egress/fieldOffset/stack:"fcs-4"/field:"ethernet.fcs-1"
4645     #
4646     set sg_field $ixNetSG_Stack(3)/field:"ethernet.fcs-1"
4647     ixNet setMultiAttrs $sg_field \
4648      -singleValue {0} \
4649      -seed {1} \
4650      -optionalEnabled True \
4651      -fullMesh False \
4652      -valueList {{0}} \
4653      -stepValue {0} \
4654      -fixedBits {0} \
4655      -fieldValue {0} \
4656      -auto True \
4657      -randomMask {0} \
4658      -trackingEnabled False \
4659      -valueType singleValue \
4660      -activeFieldChoice False \
4661      -startValue {0} \
4662      -countValue {1}
4663     sg_commit
4664     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4665
4666     #
4667     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1
4668     #
4669     set sg_egressTracking [ixNet add $ixNetSG_Stack(1) egressTracking]
4670     ixNet setMultiAttrs $sg_egressTracking \
4671      -offset {Outer VLAN Priority (3 bits)} \
4672      -customOffsetBits 0 \
4673      -encapsulation {Ethernet} \
4674      -customWidthBits 0
4675     sg_commit
4676     set sg_egressTracking [lindex [ixNet remapIds $sg_egressTracking] 0]
4677     set ixNetSG_Stack(2) $sg_egressTracking
4678
4679     #
4680     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ethernet-1"
4681     #
4682     set sg_stack $ixNetSG_Stack(2)/fieldOffset/stack:"ethernet-1"
4683     sg_commit
4684     set sg_stack [lindex [ixNet remapIds $sg_stack] 0]
4685     set ixNetSG_Stack(3) $sg_stack
4686
4687     #
4688     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ethernet-1"/field:"ethernet.header.destinationAddress-1"
4689     #
4690     set sg_field $ixNetSG_Stack(3)/field:"ethernet.header.destinationAddress-1"
4691     ixNet setMultiAttrs $sg_field \
4692      -singleValue {00:00:00:00:00:00} \
4693      -seed {1} \
4694      -optionalEnabled True \
4695      -fullMesh False \
4696      -valueList {{00:00:00:00:00:00}} \
4697      -stepValue {00:00:00:00:00:00} \
4698      -fixedBits {00:00:00:00:00:00} \
4699      -fieldValue {00:00:00:00:00:00} \
4700      -auto False \
4701      -randomMask {00:00:00:00:00:00} \
4702      -trackingEnabled True \
4703      -valueType singleValue \
4704      -activeFieldChoice False \
4705      -startValue {00:00:00:00:00:00} \
4706      -countValue {1}
4707     sg_commit
4708     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4709
4710     #
4711     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ethernet-1"/field:"ethernet.header.sourceAddress-2"
4712     #
4713     set sg_field $ixNetSG_Stack(3)/field:"ethernet.header.sourceAddress-2"
4714     ixNet setMultiAttrs $sg_field \
4715      -singleValue {00:00:00:00:00:00} \
4716      -seed {1} \
4717      -optionalEnabled True \
4718      -fullMesh False \
4719      -valueList {{00:00:00:00:00:00}} \
4720      -stepValue {00:00:00:00:00:00} \
4721      -fixedBits {00:00:00:00:00:00} \
4722      -fieldValue {00:00:00:00:00:00} \
4723      -auto False \
4724      -randomMask {00:00:00:00:00:00} \
4725      -trackingEnabled False \
4726      -valueType singleValue \
4727      -activeFieldChoice False \
4728      -startValue {00:00:00:00:00:00} \
4729      -countValue {1}
4730     sg_commit
4731     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4732
4733     #
4734     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ethernet-1"/field:"ethernet.header.etherType-3"
4735     #
4736     set sg_field $ixNetSG_Stack(3)/field:"ethernet.header.etherType-3"
4737     ixNet setMultiAttrs $sg_field \
4738      -singleValue {800} \
4739      -seed {1} \
4740      -optionalEnabled True \
4741      -fullMesh False \
4742      -valueList {{0xFFFF}} \
4743      -stepValue {0xFFFF} \
4744      -fixedBits {0xFFFF} \
4745      -fieldValue {800} \
4746      -auto True \
4747      -randomMask {0xFFFF} \
4748      -trackingEnabled False \
4749      -valueType singleValue \
4750      -activeFieldChoice False \
4751      -startValue {0xFFFF} \
4752      -countValue {1}
4753     sg_commit
4754     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4755
4756     #
4757     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ethernet-1"/field:"ethernet.header.pfcQueue-4"
4758     #
4759     set sg_field $ixNetSG_Stack(3)/field:"ethernet.header.pfcQueue-4"
4760     ixNet setMultiAttrs $sg_field \
4761      -singleValue {0} \
4762      -seed {1} \
4763      -optionalEnabled True \
4764      -fullMesh False \
4765      -valueList {{0}} \
4766      -stepValue {0} \
4767      -fixedBits {0} \
4768      -fieldValue {0} \
4769      -auto False \
4770      -randomMask {0} \
4771      -trackingEnabled False \
4772      -valueType singleValue \
4773      -activeFieldChoice False \
4774      -startValue {0} \
4775      -countValue {1}
4776     sg_commit
4777     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4778
4779     #
4780     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"
4781     #
4782     set sg_stack $ixNetSG_Stack(2)/fieldOffset/stack:"ipv4-2"
4783     sg_commit
4784     set sg_stack [lindex [ixNet remapIds $sg_stack] 0]
4785     set ixNetSG_Stack(3) $sg_stack
4786
4787     #
4788     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.version-1"
4789     #
4790     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.version-1"
4791     ixNet setMultiAttrs $sg_field \
4792      -singleValue {4} \
4793      -seed {1} \
4794      -optionalEnabled True \
4795      -fullMesh False \
4796      -valueList {{4}} \
4797      -stepValue {4} \
4798      -fixedBits {4} \
4799      -fieldValue {4} \
4800      -auto False \
4801      -randomMask {4} \
4802      -trackingEnabled False \
4803      -valueType singleValue \
4804      -activeFieldChoice False \
4805      -startValue {4} \
4806      -countValue {1}
4807     sg_commit
4808     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4809
4810     #
4811     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.headerLength-2"
4812     #
4813     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.headerLength-2"
4814     ixNet setMultiAttrs $sg_field \
4815      -singleValue {5} \
4816      -seed {1} \
4817      -optionalEnabled True \
4818      -fullMesh False \
4819      -valueList {{0}} \
4820      -stepValue {0} \
4821      -fixedBits {0} \
4822      -fieldValue {5} \
4823      -auto True \
4824      -randomMask {0} \
4825      -trackingEnabled False \
4826      -valueType singleValue \
4827      -activeFieldChoice False \
4828      -startValue {0} \
4829      -countValue {1}
4830     sg_commit
4831     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4832
4833     #
4834     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.raw-3"
4835     #
4836     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.raw-3"
4837     ixNet setMultiAttrs $sg_field \
4838      -singleValue {0} \
4839      -seed {1} \
4840      -optionalEnabled True \
4841      -fullMesh False \
4842      -valueList {{0}} \
4843      -stepValue {0} \
4844      -fixedBits {0} \
4845      -fieldValue {0} \
4846      -auto False \
4847      -randomMask {0} \
4848      -trackingEnabled False \
4849      -valueType singleValue \
4850      -activeFieldChoice False \
4851      -startValue {0} \
4852      -countValue {1}
4853     sg_commit
4854     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4855
4856     #
4857     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.tos.precedence-4"
4858     #
4859     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.precedence-4"
4860     ixNet setMultiAttrs $sg_field \
4861      -singleValue {0} \
4862      -seed {1} \
4863      -optionalEnabled True \
4864      -fullMesh False \
4865      -valueList {{0}} \
4866      -stepValue {0} \
4867      -fixedBits {0} \
4868      -fieldValue {000 Routine} \
4869      -auto False \
4870      -randomMask {0} \
4871      -trackingEnabled False \
4872      -valueType singleValue \
4873      -activeFieldChoice True \
4874      -startValue {0} \
4875      -countValue {1}
4876     sg_commit
4877     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4878
4879     #
4880     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.tos.delay-5"
4881     #
4882     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.delay-5"
4883     ixNet setMultiAttrs $sg_field \
4884      -singleValue {0} \
4885      -seed {1} \
4886      -optionalEnabled True \
4887      -fullMesh False \
4888      -valueList {{0}} \
4889      -stepValue {0} \
4890      -fixedBits {0} \
4891      -fieldValue {Normal} \
4892      -auto False \
4893      -randomMask {0} \
4894      -trackingEnabled False \
4895      -valueType singleValue \
4896      -activeFieldChoice True \
4897      -startValue {0} \
4898      -countValue {1}
4899     sg_commit
4900     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4901
4902     #
4903     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.tos.throughput-6"
4904     #
4905     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.throughput-6"
4906     ixNet setMultiAttrs $sg_field \
4907      -singleValue {0} \
4908      -seed {1} \
4909      -optionalEnabled True \
4910      -fullMesh False \
4911      -valueList {{0}} \
4912      -stepValue {0} \
4913      -fixedBits {0} \
4914      -fieldValue {Normal} \
4915      -auto False \
4916      -randomMask {0} \
4917      -trackingEnabled False \
4918      -valueType singleValue \
4919      -activeFieldChoice True \
4920      -startValue {0} \
4921      -countValue {1}
4922     sg_commit
4923     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4924
4925     #
4926     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.tos.reliability-7"
4927     #
4928     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.reliability-7"
4929     ixNet setMultiAttrs $sg_field \
4930      -singleValue {0} \
4931      -seed {1} \
4932      -optionalEnabled True \
4933      -fullMesh False \
4934      -valueList {{0}} \
4935      -stepValue {0} \
4936      -fixedBits {0} \
4937      -fieldValue {Normal} \
4938      -auto False \
4939      -randomMask {0} \
4940      -trackingEnabled False \
4941      -valueType singleValue \
4942      -activeFieldChoice True \
4943      -startValue {0} \
4944      -countValue {1}
4945     sg_commit
4946     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4947
4948     #
4949     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.tos.monetary-8"
4950     #
4951     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.monetary-8"
4952     ixNet setMultiAttrs $sg_field \
4953      -singleValue {0} \
4954      -seed {1} \
4955      -optionalEnabled True \
4956      -fullMesh False \
4957      -valueList {{0}} \
4958      -stepValue {0} \
4959      -fixedBits {0} \
4960      -fieldValue {Normal} \
4961      -auto False \
4962      -randomMask {0} \
4963      -trackingEnabled False \
4964      -valueType singleValue \
4965      -activeFieldChoice True \
4966      -startValue {0} \
4967      -countValue {1}
4968     sg_commit
4969     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4970
4971     #
4972     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.tos.unused-9"
4973     #
4974     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.tos.unused-9"
4975     ixNet setMultiAttrs $sg_field \
4976      -singleValue {0} \
4977      -seed {1} \
4978      -optionalEnabled True \
4979      -fullMesh False \
4980      -valueList {{0}} \
4981      -stepValue {0} \
4982      -fixedBits {0} \
4983      -fieldValue {0} \
4984      -auto False \
4985      -randomMask {0} \
4986      -trackingEnabled False \
4987      -valueType singleValue \
4988      -activeFieldChoice True \
4989      -startValue {0} \
4990      -countValue {1}
4991     sg_commit
4992     set sg_field [lindex [ixNet remapIds $sg_field] 0]
4993
4994     #
4995     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.defaultPHB.defaultPHB-10"
4996     #
4997     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.defaultPHB.defaultPHB-10"
4998     ixNet setMultiAttrs $sg_field \
4999      -singleValue {0} \
5000      -seed {1} \
5001      -optionalEnabled True \
5002      -fullMesh False \
5003      -valueList {{0}} \
5004      -stepValue {0} \
5005      -fixedBits {0} \
5006      -fieldValue {0} \
5007      -auto False \
5008      -randomMask {0} \
5009      -trackingEnabled False \
5010      -valueType singleValue \
5011      -activeFieldChoice False \
5012      -startValue {0} \
5013      -countValue {1}
5014     sg_commit
5015     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5016
5017     #
5018     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.defaultPHB.unused-11"
5019     #
5020     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.defaultPHB.unused-11"
5021     ixNet setMultiAttrs $sg_field \
5022      -singleValue {0} \
5023      -seed {1} \
5024      -optionalEnabled True \
5025      -fullMesh False \
5026      -valueList {{0}} \
5027      -stepValue {0} \
5028      -fixedBits {0} \
5029      -fieldValue {0} \
5030      -auto False \
5031      -randomMask {0} \
5032      -trackingEnabled False \
5033      -valueType singleValue \
5034      -activeFieldChoice False \
5035      -startValue {0} \
5036      -countValue {1}
5037     sg_commit
5038     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5039
5040     #
5041     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.classSelectorPHB.classSelectorPHB-12"
5042     #
5043     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.classSelectorPHB.classSelectorPHB-12"
5044     ixNet setMultiAttrs $sg_field \
5045      -singleValue {8} \
5046      -seed {1} \
5047      -optionalEnabled True \
5048      -fullMesh False \
5049      -valueList {{8}} \
5050      -stepValue {8} \
5051      -fixedBits {8} \
5052      -fieldValue {Precedence 1} \
5053      -auto False \
5054      -randomMask {8} \
5055      -trackingEnabled False \
5056      -valueType singleValue \
5057      -activeFieldChoice False \
5058      -startValue {8} \
5059      -countValue {1}
5060     sg_commit
5061     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5062
5063     #
5064     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.classSelectorPHB.unused-13"
5065     #
5066     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.classSelectorPHB.unused-13"
5067     ixNet setMultiAttrs $sg_field \
5068      -singleValue {0} \
5069      -seed {1} \
5070      -optionalEnabled True \
5071      -fullMesh False \
5072      -valueList {{0}} \
5073      -stepValue {0} \
5074      -fixedBits {0} \
5075      -fieldValue {0} \
5076      -auto False \
5077      -randomMask {0} \
5078      -trackingEnabled False \
5079      -valueType singleValue \
5080      -activeFieldChoice False \
5081      -startValue {0} \
5082      -countValue {1}
5083     sg_commit
5084     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5085
5086     #
5087     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.assuredForwardingPHB.assuredForwardingPHB-14"
5088     #
5089     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.assuredForwardingPHB.assuredForwardingPHB-14"
5090     ixNet setMultiAttrs $sg_field \
5091      -singleValue {10} \
5092      -seed {1} \
5093      -optionalEnabled True \
5094      -fullMesh False \
5095      -valueList {{10}} \
5096      -stepValue {10} \
5097      -fixedBits {10} \
5098      -fieldValue {Class 1, Low drop precedence} \
5099      -auto False \
5100      -randomMask {10} \
5101      -trackingEnabled False \
5102      -valueType singleValue \
5103      -activeFieldChoice False \
5104      -startValue {10} \
5105      -countValue {1}
5106     sg_commit
5107     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5108
5109     #
5110     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.assuredForwardingPHB.unused-15"
5111     #
5112     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.assuredForwardingPHB.unused-15"
5113     ixNet setMultiAttrs $sg_field \
5114      -singleValue {0} \
5115      -seed {1} \
5116      -optionalEnabled True \
5117      -fullMesh False \
5118      -valueList {{0}} \
5119      -stepValue {0} \
5120      -fixedBits {0} \
5121      -fieldValue {0} \
5122      -auto False \
5123      -randomMask {0} \
5124      -trackingEnabled False \
5125      -valueType singleValue \
5126      -activeFieldChoice False \
5127      -startValue {0} \
5128      -countValue {1}
5129     sg_commit
5130     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5131
5132     #
5133     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.expeditedForwardingPHB.expeditedForwardingPHB-16"
5134     #
5135     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.expeditedForwardingPHB.expeditedForwardingPHB-16"
5136     ixNet setMultiAttrs $sg_field \
5137      -singleValue {46} \
5138      -seed {1} \
5139      -optionalEnabled True \
5140      -fullMesh False \
5141      -valueList {{46}} \
5142      -stepValue {46} \
5143      -fixedBits {46} \
5144      -fieldValue {46} \
5145      -auto False \
5146      -randomMask {46} \
5147      -trackingEnabled False \
5148      -valueType singleValue \
5149      -activeFieldChoice False \
5150      -startValue {46} \
5151      -countValue {1}
5152     sg_commit
5153     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5154
5155     #
5156     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.priority.ds.phb.expeditedForwardingPHB.unused-17"
5157     #
5158     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.priority.ds.phb.expeditedForwardingPHB.unused-17"
5159     ixNet setMultiAttrs $sg_field \
5160      -singleValue {0} \
5161      -seed {1} \
5162      -optionalEnabled True \
5163      -fullMesh False \
5164      -valueList {{0}} \
5165      -stepValue {0} \
5166      -fixedBits {0} \
5167      -fieldValue {0} \
5168      -auto False \
5169      -randomMask {0} \
5170      -trackingEnabled False \
5171      -valueType singleValue \
5172      -activeFieldChoice False \
5173      -startValue {0} \
5174      -countValue {1}
5175     sg_commit
5176     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5177
5178     #
5179     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.totalLength-18"
5180     #
5181     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.totalLength-18"
5182     ixNet setMultiAttrs $sg_field \
5183      -singleValue {92} \
5184      -seed {1} \
5185      -optionalEnabled True \
5186      -fullMesh False \
5187      -valueList {{20}} \
5188      -stepValue {20} \
5189      -fixedBits {20} \
5190      -fieldValue {92} \
5191      -auto True \
5192      -randomMask {20} \
5193      -trackingEnabled False \
5194      -valueType singleValue \
5195      -activeFieldChoice False \
5196      -startValue {20} \
5197      -countValue {1}
5198     sg_commit
5199     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5200
5201     #
5202     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.identification-19"
5203     #
5204     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.identification-19"
5205     ixNet setMultiAttrs $sg_field \
5206      -singleValue {0} \
5207      -seed {1} \
5208      -optionalEnabled True \
5209      -fullMesh False \
5210      -valueList {{0}} \
5211      -stepValue {0} \
5212      -fixedBits {0} \
5213      -fieldValue {0} \
5214      -auto False \
5215      -randomMask {0} \
5216      -trackingEnabled False \
5217      -valueType singleValue \
5218      -activeFieldChoice False \
5219      -startValue {0} \
5220      -countValue {1}
5221     sg_commit
5222     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5223
5224     #
5225     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.flags.reserved-20"
5226     #
5227     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.flags.reserved-20"
5228     ixNet setMultiAttrs $sg_field \
5229      -singleValue {0} \
5230      -seed {1} \
5231      -optionalEnabled True \
5232      -fullMesh False \
5233      -valueList {{0}} \
5234      -stepValue {0} \
5235      -fixedBits {0} \
5236      -fieldValue {0} \
5237      -auto False \
5238      -randomMask {0} \
5239      -trackingEnabled False \
5240      -valueType singleValue \
5241      -activeFieldChoice False \
5242      -startValue {0} \
5243      -countValue {1}
5244     sg_commit
5245     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5246
5247     #
5248     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.flags.fragment-21"
5249     #
5250     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.flags.fragment-21"
5251     ixNet setMultiAttrs $sg_field \
5252      -singleValue {0} \
5253      -seed {1} \
5254      -optionalEnabled True \
5255      -fullMesh False \
5256      -valueList {{0}} \
5257      -stepValue {0} \
5258      -fixedBits {0} \
5259      -fieldValue {May fragment} \
5260      -auto False \
5261      -randomMask {0} \
5262      -trackingEnabled False \
5263      -valueType singleValue \
5264      -activeFieldChoice False \
5265      -startValue {0} \
5266      -countValue {1}
5267     sg_commit
5268     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5269
5270     #
5271     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.flags.lastFragment-22"
5272     #
5273     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.flags.lastFragment-22"
5274     ixNet setMultiAttrs $sg_field \
5275      -singleValue {0} \
5276      -seed {1} \
5277      -optionalEnabled True \
5278      -fullMesh False \
5279      -valueList {{0}} \
5280      -stepValue {0} \
5281      -fixedBits {0} \
5282      -fieldValue {Last fragment} \
5283      -auto False \
5284      -randomMask {0} \
5285      -trackingEnabled False \
5286      -valueType singleValue \
5287      -activeFieldChoice False \
5288      -startValue {0} \
5289      -countValue {1}
5290     sg_commit
5291     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5292
5293     #
5294     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.fragmentOffset-23"
5295     #
5296     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.fragmentOffset-23"
5297     ixNet setMultiAttrs $sg_field \
5298      -singleValue {0} \
5299      -seed {1} \
5300      -optionalEnabled True \
5301      -fullMesh False \
5302      -valueList {{0}} \
5303      -stepValue {0} \
5304      -fixedBits {0} \
5305      -fieldValue {0} \
5306      -auto False \
5307      -randomMask {0} \
5308      -trackingEnabled False \
5309      -valueType singleValue \
5310      -activeFieldChoice False \
5311      -startValue {0} \
5312      -countValue {1}
5313     sg_commit
5314     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5315
5316     #
5317     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.ttl-24"
5318     #
5319     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.ttl-24"
5320     ixNet setMultiAttrs $sg_field \
5321      -singleValue {64} \
5322      -seed {1} \
5323      -optionalEnabled True \
5324      -fullMesh False \
5325      -valueList {{64}} \
5326      -stepValue {64} \
5327      -fixedBits {64} \
5328      -fieldValue {64} \
5329      -auto False \
5330      -randomMask {64} \
5331      -trackingEnabled False \
5332      -valueType singleValue \
5333      -activeFieldChoice False \
5334      -startValue {64} \
5335      -countValue {1}
5336     sg_commit
5337     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5338
5339     #
5340     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.protocol-25"
5341     #
5342     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.protocol-25"
5343     ixNet setMultiAttrs $sg_field \
5344      -singleValue {17} \
5345      -seed {1} \
5346      -optionalEnabled True \
5347      -fullMesh False \
5348      -valueList {{61}} \
5349      -stepValue {61} \
5350      -fixedBits {61} \
5351      -fieldValue {UDP} \
5352      -auto True \
5353      -randomMask {61} \
5354      -trackingEnabled False \
5355      -valueType singleValue \
5356      -activeFieldChoice False \
5357      -startValue {61} \
5358      -countValue {1}
5359     sg_commit
5360     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5361
5362     #
5363     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.checksum-26"
5364     #
5365     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.checksum-26"
5366     ixNet setMultiAttrs $sg_field \
5367      -singleValue {0} \
5368      -seed {1} \
5369      -optionalEnabled True \
5370      -fullMesh False \
5371      -valueList {{0}} \
5372      -stepValue {0} \
5373      -fixedBits {0} \
5374      -fieldValue {0} \
5375      -auto True \
5376      -randomMask {0} \
5377      -trackingEnabled False \
5378      -valueType singleValue \
5379      -activeFieldChoice False \
5380      -startValue {0} \
5381      -countValue {1}
5382     sg_commit
5383     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5384
5385     #
5386     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.srcIp-27"
5387     #
5388     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.srcIp-27"
5389     ixNet setMultiAttrs $sg_field \
5390      -singleValue {0.0.0.0} \
5391      -seed {1} \
5392      -optionalEnabled True \
5393      -fullMesh False \
5394      -valueList {{0.0.0.0}} \
5395      -stepValue {0.0.0.0} \
5396      -fixedBits {0.0.0.0} \
5397      -fieldValue {0.0.0.0} \
5398      -auto False \
5399      -randomMask {0.0.0.0} \
5400      -trackingEnabled False \
5401      -valueType singleValue \
5402      -activeFieldChoice False \
5403      -startValue {0.0.0.0} \
5404      -countValue {1}
5405     sg_commit
5406     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5407
5408     #
5409     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.dstIp-28"
5410     #
5411     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.dstIp-28"
5412     ixNet setMultiAttrs $sg_field \
5413      -singleValue {0.0.0.0} \
5414      -seed {1} \
5415      -optionalEnabled True \
5416      -fullMesh False \
5417      -valueList {{0.0.0.0}} \
5418      -stepValue {0.0.0.0} \
5419      -fixedBits {0.0.0.0} \
5420      -fieldValue {0.0.0.0} \
5421      -auto False \
5422      -randomMask {0.0.0.0} \
5423      -trackingEnabled False \
5424      -valueType singleValue \
5425      -activeFieldChoice False \
5426      -startValue {0.0.0.0} \
5427      -countValue {1}
5428     sg_commit
5429     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5430
5431     #
5432     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.nop-29"
5433     #
5434     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.nop-29"
5435     ixNet setMultiAttrs $sg_field \
5436      -singleValue {1} \
5437      -seed {1} \
5438      -optionalEnabled False \
5439      -fullMesh False \
5440      -valueList {{1}} \
5441      -stepValue {1} \
5442      -fixedBits {1} \
5443      -fieldValue {1} \
5444      -auto False \
5445      -randomMask {1} \
5446      -trackingEnabled False \
5447      -valueType singleValue \
5448      -activeFieldChoice True \
5449      -startValue {1} \
5450      -countValue {1}
5451     sg_commit
5452     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5453
5454     #
5455     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.type-30"
5456     #
5457     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.type-30"
5458     ixNet setMultiAttrs $sg_field \
5459      -singleValue {130} \
5460      -seed {1} \
5461      -optionalEnabled False \
5462      -fullMesh False \
5463      -valueList {{130}} \
5464      -stepValue {130} \
5465      -fixedBits {130} \
5466      -fieldValue {130} \
5467      -auto False \
5468      -randomMask {130} \
5469      -trackingEnabled False \
5470      -valueType singleValue \
5471      -activeFieldChoice False \
5472      -startValue {130} \
5473      -countValue {1}
5474     sg_commit
5475     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5476
5477     #
5478     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.length-31"
5479     #
5480     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.length-31"
5481     ixNet setMultiAttrs $sg_field \
5482      -singleValue {11} \
5483      -seed {1} \
5484      -optionalEnabled False \
5485      -fullMesh False \
5486      -valueList {{11}} \
5487      -stepValue {11} \
5488      -fixedBits {11} \
5489      -fieldValue {11} \
5490      -auto False \
5491      -randomMask {11} \
5492      -trackingEnabled False \
5493      -valueType singleValue \
5494      -activeFieldChoice False \
5495      -startValue {11} \
5496      -countValue {1}
5497     sg_commit
5498     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5499
5500     #
5501     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.security-32"
5502     #
5503     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.security-32"
5504     ixNet setMultiAttrs $sg_field \
5505      -singleValue {0} \
5506      -seed {1} \
5507      -optionalEnabled False \
5508      -fullMesh False \
5509      -valueList {{0}} \
5510      -stepValue {0} \
5511      -fixedBits {0} \
5512      -fieldValue {Unclassified} \
5513      -auto False \
5514      -randomMask {0} \
5515      -trackingEnabled False \
5516      -valueType singleValue \
5517      -activeFieldChoice False \
5518      -startValue {0} \
5519      -countValue {1}
5520     sg_commit
5521     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5522
5523     #
5524     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.compartments-33"
5525     #
5526     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.compartments-33"
5527     ixNet setMultiAttrs $sg_field \
5528      -singleValue {0} \
5529      -seed {1} \
5530      -optionalEnabled False \
5531      -fullMesh False \
5532      -valueList {{0}} \
5533      -stepValue {0} \
5534      -fixedBits {0} \
5535      -fieldValue {0} \
5536      -auto False \
5537      -randomMask {0} \
5538      -trackingEnabled False \
5539      -valueType singleValue \
5540      -activeFieldChoice False \
5541      -startValue {0} \
5542      -countValue {1}
5543     sg_commit
5544     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5545
5546     #
5547     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.handling-34"
5548     #
5549     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.handling-34"
5550     ixNet setMultiAttrs $sg_field \
5551      -singleValue {0} \
5552      -seed {1} \
5553      -optionalEnabled False \
5554      -fullMesh False \
5555      -valueList {{0}} \
5556      -stepValue {0} \
5557      -fixedBits {0} \
5558      -fieldValue {0} \
5559      -auto False \
5560      -randomMask {0} \
5561      -trackingEnabled False \
5562      -valueType singleValue \
5563      -activeFieldChoice False \
5564      -startValue {0} \
5565      -countValue {1}
5566     sg_commit
5567     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5568
5569     #
5570     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.security.tcc-35"
5571     #
5572     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.security.tcc-35"
5573     ixNet setMultiAttrs $sg_field \
5574      -singleValue {0} \
5575      -seed {1} \
5576      -optionalEnabled False \
5577      -fullMesh False \
5578      -valueList {{0}} \
5579      -stepValue {0} \
5580      -fixedBits {0} \
5581      -fieldValue {0} \
5582      -auto False \
5583      -randomMask {0} \
5584      -trackingEnabled False \
5585      -valueType singleValue \
5586      -activeFieldChoice False \
5587      -startValue {0} \
5588      -countValue {1}
5589     sg_commit
5590     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5591
5592     #
5593     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.lsrr.type-36"
5594     #
5595     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.lsrr.type-36"
5596     ixNet setMultiAttrs $sg_field \
5597      -singleValue {131} \
5598      -seed {1} \
5599      -optionalEnabled False \
5600      -fullMesh False \
5601      -valueList {{131}} \
5602      -stepValue {131} \
5603      -fixedBits {131} \
5604      -fieldValue {131} \
5605      -auto False \
5606      -randomMask {131} \
5607      -trackingEnabled False \
5608      -valueType singleValue \
5609      -activeFieldChoice False \
5610      -startValue {131} \
5611      -countValue {1}
5612     sg_commit
5613     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5614
5615     #
5616     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.lsrr.length-37"
5617     #
5618     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.lsrr.length-37"
5619     ixNet setMultiAttrs $sg_field \
5620      -singleValue {8} \
5621      -seed {1} \
5622      -optionalEnabled False \
5623      -fullMesh False \
5624      -valueList {{8}} \
5625      -stepValue {8} \
5626      -fixedBits {8} \
5627      -fieldValue {8} \
5628      -auto False \
5629      -randomMask {8} \
5630      -trackingEnabled False \
5631      -valueType singleValue \
5632      -activeFieldChoice False \
5633      -startValue {8} \
5634      -countValue {1}
5635     sg_commit
5636     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5637
5638     #
5639     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.pointer-38"
5640     #
5641     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.pointer-38"
5642     ixNet setMultiAttrs $sg_field \
5643      -singleValue {4} \
5644      -seed {1} \
5645      -optionalEnabled False \
5646      -fullMesh False \
5647      -valueList {{4}} \
5648      -stepValue {4} \
5649      -fixedBits {4} \
5650      -fieldValue {4} \
5651      -auto False \
5652      -randomMask {4} \
5653      -trackingEnabled False \
5654      -valueType singleValue \
5655      -activeFieldChoice False \
5656      -startValue {4} \
5657      -countValue {1}
5658     sg_commit
5659     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5660
5661     #
5662     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.routeData-39"
5663     #
5664     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.routeData-39"
5665     ixNet setMultiAttrs $sg_field \
5666      -singleValue {0} \
5667      -seed {1} \
5668      -optionalEnabled False \
5669      -fullMesh False \
5670      -valueList {{0}} \
5671      -stepValue {0} \
5672      -fixedBits {0} \
5673      -fieldValue {0} \
5674      -auto False \
5675      -randomMask {0} \
5676      -trackingEnabled False \
5677      -valueType singleValue \
5678      -activeFieldChoice False \
5679      -startValue {0} \
5680      -countValue {1}
5681     sg_commit
5682     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5683
5684     #
5685     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.ssrr.type-40"
5686     #
5687     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.ssrr.type-40"
5688     ixNet setMultiAttrs $sg_field \
5689      -singleValue {137} \
5690      -seed {1} \
5691      -optionalEnabled False \
5692      -fullMesh False \
5693      -valueList {{137}} \
5694      -stepValue {137} \
5695      -fixedBits {137} \
5696      -fieldValue {137} \
5697      -auto False \
5698      -randomMask {137} \
5699      -trackingEnabled False \
5700      -valueType singleValue \
5701      -activeFieldChoice False \
5702      -startValue {137} \
5703      -countValue {1}
5704     sg_commit
5705     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5706
5707     #
5708     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.ssrr.length-41"
5709     #
5710     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.ssrr.length-41"
5711     ixNet setMultiAttrs $sg_field \
5712      -singleValue {8} \
5713      -seed {1} \
5714      -optionalEnabled False \
5715      -fullMesh False \
5716      -valueList {{8}} \
5717      -stepValue {8} \
5718      -fixedBits {8} \
5719      -fieldValue {8} \
5720      -auto False \
5721      -randomMask {8} \
5722      -trackingEnabled False \
5723      -valueType singleValue \
5724      -activeFieldChoice False \
5725      -startValue {8} \
5726      -countValue {1}
5727     sg_commit
5728     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5729
5730     #
5731     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.recordRoute.type-42"
5732     #
5733     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.recordRoute.type-42"
5734     ixNet setMultiAttrs $sg_field \
5735      -singleValue {7} \
5736      -seed {1} \
5737      -optionalEnabled False \
5738      -fullMesh False \
5739      -valueList {{7}} \
5740      -stepValue {7} \
5741      -fixedBits {7} \
5742      -fieldValue {7} \
5743      -auto False \
5744      -randomMask {7} \
5745      -trackingEnabled False \
5746      -valueType singleValue \
5747      -activeFieldChoice False \
5748      -startValue {7} \
5749      -countValue {1}
5750     sg_commit
5751     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5752
5753     #
5754     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.recordRoute.length-43"
5755     #
5756     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.recordRoute.length-43"
5757     ixNet setMultiAttrs $sg_field \
5758      -singleValue {8} \
5759      -seed {1} \
5760      -optionalEnabled False \
5761      -fullMesh False \
5762      -valueList {{8}} \
5763      -stepValue {8} \
5764      -fixedBits {8} \
5765      -fieldValue {8} \
5766      -auto False \
5767      -randomMask {8} \
5768      -trackingEnabled False \
5769      -valueType singleValue \
5770      -activeFieldChoice False \
5771      -startValue {8} \
5772      -countValue {1}
5773     sg_commit
5774     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5775
5776     #
5777     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.streamId.type-44"
5778     #
5779     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.streamId.type-44"
5780     ixNet setMultiAttrs $sg_field \
5781      -singleValue {136} \
5782      -seed {1} \
5783      -optionalEnabled False \
5784      -fullMesh False \
5785      -valueList {{136}} \
5786      -stepValue {136} \
5787      -fixedBits {136} \
5788      -fieldValue {136} \
5789      -auto False \
5790      -randomMask {136} \
5791      -trackingEnabled False \
5792      -valueType singleValue \
5793      -activeFieldChoice False \
5794      -startValue {136} \
5795      -countValue {1}
5796     sg_commit
5797     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5798
5799     #
5800     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.streamId.length-45"
5801     #
5802     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.streamId.length-45"
5803     ixNet setMultiAttrs $sg_field \
5804      -singleValue {4} \
5805      -seed {1} \
5806      -optionalEnabled False \
5807      -fullMesh False \
5808      -valueList {{4}} \
5809      -stepValue {4} \
5810      -fixedBits {4} \
5811      -fieldValue {4} \
5812      -auto False \
5813      -randomMask {4} \
5814      -trackingEnabled False \
5815      -valueType singleValue \
5816      -activeFieldChoice False \
5817      -startValue {4} \
5818      -countValue {1}
5819     sg_commit
5820     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5821
5822     #
5823     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.streamId.id-46"
5824     #
5825     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.streamId.id-46"
5826     ixNet setMultiAttrs $sg_field \
5827      -singleValue {0} \
5828      -seed {1} \
5829      -optionalEnabled False \
5830      -fullMesh False \
5831      -valueList {{0}} \
5832      -stepValue {0} \
5833      -fixedBits {0} \
5834      -fieldValue {0} \
5835      -auto False \
5836      -randomMask {0} \
5837      -trackingEnabled False \
5838      -valueType singleValue \
5839      -activeFieldChoice False \
5840      -startValue {0} \
5841      -countValue {1}
5842     sg_commit
5843     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5844
5845     #
5846     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.type-47"
5847     #
5848     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.type-47"
5849     ixNet setMultiAttrs $sg_field \
5850      -singleValue {68} \
5851      -seed {1} \
5852      -optionalEnabled False \
5853      -fullMesh False \
5854      -valueList {{68}} \
5855      -stepValue {68} \
5856      -fixedBits {68} \
5857      -fieldValue {68} \
5858      -auto False \
5859      -randomMask {68} \
5860      -trackingEnabled False \
5861      -valueType singleValue \
5862      -activeFieldChoice False \
5863      -startValue {68} \
5864      -countValue {1}
5865     sg_commit
5866     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5867
5868     #
5869     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.length-48"
5870     #
5871     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.length-48"
5872     ixNet setMultiAttrs $sg_field \
5873      -singleValue {12} \
5874      -seed {1} \
5875      -optionalEnabled False \
5876      -fullMesh False \
5877      -valueList {{12}} \
5878      -stepValue {12} \
5879      -fixedBits {12} \
5880      -fieldValue {12} \
5881      -auto False \
5882      -randomMask {12} \
5883      -trackingEnabled False \
5884      -valueType singleValue \
5885      -activeFieldChoice False \
5886      -startValue {12} \
5887      -countValue {1}
5888     sg_commit
5889     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5890
5891     #
5892     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.pointer-49"
5893     #
5894     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.pointer-49"
5895     ixNet setMultiAttrs $sg_field \
5896      -singleValue {5} \
5897      -seed {1} \
5898      -optionalEnabled False \
5899      -fullMesh False \
5900      -valueList {{5}} \
5901      -stepValue {5} \
5902      -fixedBits {5} \
5903      -fieldValue {5} \
5904      -auto False \
5905      -randomMask {5} \
5906      -trackingEnabled False \
5907      -valueType singleValue \
5908      -activeFieldChoice False \
5909      -startValue {5} \
5910      -countValue {1}
5911     sg_commit
5912     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5913
5914     #
5915     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.overflow-50"
5916     #
5917     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.overflow-50"
5918     ixNet setMultiAttrs $sg_field \
5919      -singleValue {0} \
5920      -seed {1} \
5921      -optionalEnabled False \
5922      -fullMesh False \
5923      -valueList {{0}} \
5924      -stepValue {0} \
5925      -fixedBits {0} \
5926      -fieldValue {0} \
5927      -auto False \
5928      -randomMask {0} \
5929      -trackingEnabled False \
5930      -valueType singleValue \
5931      -activeFieldChoice False \
5932      -startValue {0} \
5933      -countValue {1}
5934     sg_commit
5935     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5936
5937     #
5938     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.flags-51"
5939     #
5940     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.flags-51"
5941     ixNet setMultiAttrs $sg_field \
5942      -singleValue {0} \
5943      -seed {1} \
5944      -optionalEnabled False \
5945      -fullMesh False \
5946      -valueList {{0}} \
5947      -stepValue {0} \
5948      -fixedBits {0} \
5949      -fieldValue {Timestamps only, in consecutive 32-bit words} \
5950      -auto False \
5951      -randomMask {0} \
5952      -trackingEnabled False \
5953      -valueType singleValue \
5954      -activeFieldChoice False \
5955      -startValue {0} \
5956      -countValue {1}
5957     sg_commit
5958     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5959
5960     #
5961     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.pair.address-52"
5962     #
5963     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.pair.address-52"
5964     ixNet setMultiAttrs $sg_field \
5965      -singleValue {0} \
5966      -seed {1} \
5967      -optionalEnabled False \
5968      -fullMesh False \
5969      -valueList {{0}} \
5970      -stepValue {0} \
5971      -fixedBits {0} \
5972      -fieldValue {0} \
5973      -auto False \
5974      -randomMask {0} \
5975      -trackingEnabled False \
5976      -valueType singleValue \
5977      -activeFieldChoice False \
5978      -startValue {0} \
5979      -countValue {1}
5980     sg_commit
5981     set sg_field [lindex [ixNet remapIds $sg_field] 0]
5982
5983     #
5984     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.timestamp.pair.timestamp-53"
5985     #
5986     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.timestamp.pair.timestamp-53"
5987     ixNet setMultiAttrs $sg_field \
5988      -singleValue {0} \
5989      -seed {1} \
5990      -optionalEnabled False \
5991      -fullMesh False \
5992      -valueList {{0}} \
5993      -stepValue {0} \
5994      -fixedBits {0} \
5995      -fieldValue {0} \
5996      -auto False \
5997      -randomMask {0} \
5998      -trackingEnabled False \
5999      -valueType singleValue \
6000      -activeFieldChoice False \
6001      -startValue {0} \
6002      -countValue {1}
6003     sg_commit
6004     set sg_field [lindex [ixNet remapIds $sg_field] 0]
6005
6006     #
6007     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.last-54"
6008     #
6009     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.last-54"
6010     ixNet setMultiAttrs $sg_field \
6011      -singleValue {0} \
6012      -seed {1} \
6013      -optionalEnabled False \
6014      -fullMesh False \
6015      -valueList {{0}} \
6016      -stepValue {0} \
6017      -fixedBits {0} \
6018      -fieldValue {0} \
6019      -auto False \
6020      -randomMask {0} \
6021      -trackingEnabled False \
6022      -valueType singleValue \
6023      -activeFieldChoice False \
6024      -startValue {0} \
6025      -countValue {1}
6026     sg_commit
6027     set sg_field [lindex [ixNet remapIds $sg_field] 0]
6028
6029     #
6030     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.routerAlert.type-55"
6031     #
6032     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.routerAlert.type-55"
6033     ixNet setMultiAttrs $sg_field \
6034      -singleValue {94} \
6035      -seed {1} \
6036      -optionalEnabled False \
6037      -fullMesh False \
6038      -valueList {{0x94}} \
6039      -stepValue {0x94} \
6040      -fixedBits {0x94} \
6041      -fieldValue {94} \
6042      -auto False \
6043      -randomMask {0x94} \
6044      -trackingEnabled False \
6045      -valueType singleValue \
6046      -activeFieldChoice False \
6047      -startValue {0x94} \
6048      -countValue {1}
6049     sg_commit
6050     set sg_field [lindex [ixNet remapIds $sg_field] 0]
6051
6052     #
6053     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.routerAlert.length-56"
6054     #
6055     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.routerAlert.length-56"
6056     ixNet setMultiAttrs $sg_field \
6057      -singleValue {4} \
6058      -seed {1} \
6059      -optionalEnabled False \
6060      -fullMesh False \
6061      -valueList {{0x04}} \
6062      -stepValue {0x04} \
6063      -fixedBits {0x04} \
6064      -fieldValue {4} \
6065      -auto False \
6066      -randomMask {0x04} \
6067      -trackingEnabled False \
6068      -valueType singleValue \
6069      -activeFieldChoice False \
6070      -startValue {0x04} \
6071      -countValue {1}
6072     sg_commit
6073     set sg_field [lindex [ixNet remapIds $sg_field] 0]
6074
6075     #
6076     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.nextOption.option.routerAlert.value-57"
6077     #
6078     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.nextOption.option.routerAlert.value-57"
6079     ixNet setMultiAttrs $sg_field \
6080      -singleValue {0} \
6081      -seed {1} \
6082      -optionalEnabled False \
6083      -fullMesh False \
6084      -valueList {{0}} \
6085      -stepValue {0} \
6086      -fixedBits {0} \
6087      -fieldValue {Router shall examine packet} \
6088      -auto False \
6089      -randomMask {0} \
6090      -trackingEnabled False \
6091      -valueType singleValue \
6092      -activeFieldChoice False \
6093      -startValue {0} \
6094      -countValue {1}
6095     sg_commit
6096     set sg_field [lindex [ixNet remapIds $sg_field] 0]
6097
6098     #
6099     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"ipv4-2"/field:"ipv4.header.options.pad-58"
6100     #
6101     set sg_field $ixNetSG_Stack(3)/field:"ipv4.header.options.pad-58"
6102     ixNet setMultiAttrs $sg_field \
6103      -singleValue {0} \
6104      -seed {1} \
6105      -optionalEnabled False \
6106      -fullMesh False \
6107      -valueList {{0}} \
6108      -stepValue {0} \
6109      -fixedBits {0} \
6110      -fieldValue {0} \
6111      -auto True \
6112      -randomMask {0} \
6113      -trackingEnabled False \
6114      -valueType singleValue \
6115      -activeFieldChoice False \
6116      -startValue {0} \
6117      -countValue {1}
6118     sg_commit
6119     set sg_field [lindex [ixNet remapIds $sg_field] 0]
6120
6121     #
6122     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"udp-3"
6123     #
6124     set sg_stack $ixNetSG_Stack(2)/fieldOffset/stack:"udp-3"
6125     sg_commit
6126     set sg_stack [lindex [ixNet remapIds $sg_stack] 0]
6127     set ixNetSG_Stack(3) $sg_stack
6128
6129     #
6130     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"udp-3"/field:"udp.header.srcPort-1"
6131     #
6132     set sg_field $ixNetSG_Stack(3)/field:"udp.header.srcPort-1"
6133     ixNet setMultiAttrs $sg_field \
6134      -singleValue {63} \
6135      -seed {1} \
6136      -optionalEnabled True \
6137      -fullMesh False \
6138      -valueList {{63}} \
6139      -stepValue {63} \
6140      -fixedBits {63} \
6141      -fieldValue {Default} \
6142      -auto True \
6143      -randomMask {63} \
6144      -trackingEnabled False \
6145      -valueType singleValue \
6146      -activeFieldChoice False \
6147      -startValue {63} \
6148      -countValue {1}
6149     sg_commit
6150     set sg_field [lindex [ixNet remapIds $sg_field] 0]
6151
6152     #
6153     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"udp-3"/field:"udp.header.dstPort-2"
6154     #
6155     set sg_field $ixNetSG_Stack(3)/field:"udp.header.dstPort-2"
6156     ixNet setMultiAttrs $sg_field \
6157      -singleValue {63} \
6158      -seed {1} \
6159      -optionalEnabled True \
6160      -fullMesh False \
6161      -valueList {{63}} \
6162      -stepValue {63} \
6163      -fixedBits {63} \
6164      -fieldValue {Default} \
6165      -auto True \
6166      -randomMask {63} \
6167      -trackingEnabled False \
6168      -valueType singleValue \
6169      -activeFieldChoice False \
6170      -startValue {63} \
6171      -countValue {1}
6172     sg_commit
6173     set sg_field [lindex [ixNet remapIds $sg_field] 0]
6174
6175     #
6176     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"udp-3"/field:"udp.header.length-3"
6177     #
6178     set sg_field $ixNetSG_Stack(3)/field:"udp.header.length-3"
6179     ixNet setMultiAttrs $sg_field \
6180      -singleValue {72} \
6181      -seed {1} \
6182      -optionalEnabled True \
6183      -fullMesh False \
6184      -valueList {{8}} \
6185      -stepValue {8} \
6186      -fixedBits {8} \
6187      -fieldValue {72} \
6188      -auto True \
6189      -randomMask {8} \
6190      -trackingEnabled False \
6191      -valueType singleValue \
6192      -activeFieldChoice False \
6193      -startValue {8} \
6194      -countValue {1}
6195     sg_commit
6196     set sg_field [lindex [ixNet remapIds $sg_field] 0]
6197
6198     #
6199     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"udp-3"/field:"udp.header.checksum-4"
6200     #
6201     set sg_field $ixNetSG_Stack(3)/field:"udp.header.checksum-4"
6202     ixNet setMultiAttrs $sg_field \
6203      -singleValue {0} \
6204      -seed {1} \
6205      -optionalEnabled True \
6206      -fullMesh False \
6207      -valueList {{0}} \
6208      -stepValue {0} \
6209      -fixedBits {0} \
6210      -fieldValue {0} \
6211      -auto True \
6212      -randomMask {0} \
6213      -trackingEnabled False \
6214      -valueType singleValue \
6215      -activeFieldChoice False \
6216      -startValue {0} \
6217      -countValue {1}
6218     sg_commit
6219     set sg_field [lindex [ixNet remapIds $sg_field] 0]
6220
6221     #
6222     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"fcs-4"
6223     #
6224     set sg_stack $ixNetSG_Stack(2)/fieldOffset/stack:"fcs-4"
6225     sg_commit
6226     set sg_stack [lindex [ixNet remapIds $sg_stack] 0]
6227     set ixNetSG_Stack(3) $sg_stack
6228
6229     #
6230     # configuring the object that corresponds to /traffic/trafficItem:1/egressTracking:1/fieldOffset/stack:"fcs-4"/field:"ethernet.fcs-1"
6231     #
6232     set sg_field $ixNetSG_Stack(3)/field:"ethernet.fcs-1"
6233     ixNet setMultiAttrs $sg_field \
6234      -singleValue {0} \
6235      -seed {1} \
6236      -optionalEnabled True \
6237      -fullMesh False \
6238      -valueList {{0}} \
6239      -stepValue {0} \
6240      -fixedBits {0} \
6241      -fieldValue {0} \
6242      -auto True \
6243      -randomMask {0} \
6244      -trackingEnabled False \
6245      -valueType singleValue \
6246      -activeFieldChoice False \
6247      -startValue {0} \
6248      -countValue {1}
6249     sg_commit
6250     set sg_field [lindex [ixNet remapIds $sg_field] 0]
6251
6252     #
6253     # configuring the object that corresponds to /traffic/trafficItem:1/dynamicUpdate
6254     #
6255     set sg_dynamicUpdate $ixNetSG_Stack(1)/dynamicUpdate
6256     ixNet setMultiAttrs $sg_dynamicUpdate \
6257      -enabledSessionAwareTrafficFields {} \
6258      -enabledDynamicUpdateFields {}
6259     sg_commit
6260     set sg_dynamicUpdate [lindex [ixNet remapIds $sg_dynamicUpdate] 0]
6261
6262     ###
6263     ### /quickTest area
6264     ###
6265
6266     #
6267     # configuring the object that corresponds to /quickTest/rfc2544throughput:1
6268     #
6269     if {$rfc2544TestType == "throughput"} {
6270         set sg_rfc2544throughput [ixNet add $ixNetSG_Stack(0)/quickTest rfc2544throughput]
6271             ixNet commit
6272         ixNet setMultiAttrs $sg_rfc2544throughput \
6273          -name {QuickTest1} \
6274          -mode existingMode \
6275          -inputParameters {{}}
6276         ixNet commit
6277         set sizes [join $frameSizeList ","]
6278         set sg_rfc2544throughput [lindex [ixNet remapIds $sg_rfc2544throughput] 0]
6279         ixNet setMultiAttrs $sg_rfc2544throughput/testConfig \
6280          -protocolItem [list ] \
6281          -enableMinFrameSize True \
6282          -framesize $frameSize \
6283          -reportTputRateUnit mbps \
6284          -duration $duration \
6285          -numtrials $numTests \
6286          -trafficType constantLoading \
6287          -burstSize 1 \
6288          -framesPerBurstGap 1 \
6289          -tolerance 0 \
6290          -frameLossUnit {0} \
6291          -staggeredStart False \
6292          -framesizeList $sizes \
6293          -frameSizeMode custom \
6294          -rateSelect percentMaxRate \
6295          -percentMaxRate 100 \
6296          -resolution 0.01 \
6297          -forceRegenerate False \
6298          -reportSequenceError False \
6299          -ipv4rate 50 \
6300          -ipv6rate 50 \
6301          -loadRateList $frameRate \
6302          -fixedLoadUnit percentMaxRate \
6303          -loadRateValue 80 \
6304          -incrementLoadUnit percentMaxRate \
6305          -initialIncrementLoadRate 10 \
6306          -stepIncrementLoadRate 10 \
6307          -maxIncrementLoadRate 100 \
6308           -randomLoadUnit percentMaxRate \
6309          -minRandomLoadRate 10 \
6310          -maxRandomLoadRate 80 \
6311          -countRandomLoadRate 1 \
6312          -minFpsRate 1000 \
6313          -minKbpsRate 64 \
6314          -txDelay 2 \
6315          -delayAfterTransmit 2 \
6316          -minRandomFrameSize 64 \
6317          -maxRandomFrameSize 128 \
6318          -countRandomFrameSize 1 \
6319          -minIncrementFrameSize 64 \
6320          -stepIncrementFrameSize 64 \
6321          -maxIncrementFrameSize 1518 \
6322          -calculateLatency True \
6323          -latencyType storeForward \
6324          -calculateJitter False \
6325          -enableDataIntegrity False \
6326          -enableBackoffIteration False \
6327          -enableSaturationIteration False \
6328          -enableStopTestOnHighLoss False \
6329          -enableBackoffUseAs% False \
6330          -backoffIteration 1 \
6331          -saturationIteration 1 \
6332          -stopTestOnHighLoss 0 \
6333          -loadType $loadType \
6334          -stepLoadUnit percentMaxRate \
6335          -customLoadUnit percentMaxRate \
6336          -comboLoadUnit percentMaxRate \
6337          -binaryLoadUnit percentMaxRate \
6338          -initialBinaryLoadRate 100 \
6339          -minBinaryLoadRate 1 \
6340          -maxBinaryLoadRate 100 \
6341          -binaryResolution 1 \
6342          -binaryBackoff 50 \
6343          -binaryTolerance $tolerance \
6344          -binaryFrameLossUnit % \
6345          -comboFrameLossUnit % \
6346          -stepFrameLossUnit % \
6347          -initialStepLoadRate 10 \
6348          -maxStepLoadRate 100 \
6349          -stepStepLoadRate 10 \
6350          -stepTolerance 0 \
6351          -initialComboLoadRate 10 \
6352          -maxComboLoadRate 100 \
6353          -minComboLoadRate 10 \
6354          -stepComboLoadRate 10 \
6355          -comboResolution 1 \
6356          -comboBackoff 50 \
6357          -comboTolerance 0 \
6358          -binarySearchType linear \
6359          -unchangedValueList {0} \
6360          -enableFastConvergence $fastConvergence \
6361          -fastConvergenceDuration $convergenceDuration \
6362          -fastConvergenceThreshold 10 \
6363          -framesizeFixedValue $frameSize \
6364          -gap 3 \
6365          -unchangedInitial False \
6366          -generateTrackingOptionAggregationFiles False \
6367          -enableExtraIterations False \
6368          -extraIterationOffsets {10, -10} \
6369          -usePercentOffsets False \
6370          -imixDistribution weight \
6371          -imixAdd {0} \
6372          -imixDelete {0} \
6373          -imixData {{{{64}{{TOS S:0 S:0 S:0 S:0 S:0} S:0}{1 40}}{{128}{{TOS S:0 S:0 S:0 S:0 S:0} S:0}{1 30}}{{256}{{TOS S:0 S:0 S:0 S:0 S:0} S:0}{1 30}}}} \
6374          -imixEnabled False \
6375          -imixTemplates none \
6376          -framesizeImixList $frameSize \
6377          -imixTrafficType {UNCHNAGED} \
6378          -mapType {oneToOne} \
6379          -supportedTrafficTypes {mac,ipv4,ipv6,ipmix}
6380         ixNet setMultiAttrs $sg_rfc2544throughput/learnFrames \
6381          -learnFrequency $learningFrequency \
6382          -learnNumFrames 10 \
6383          -learnRate 100 \
6384          -learnWaitTime 1000 \
6385          -learnFrameSize $frameSize \
6386          -fastPathLearnFrameSize $frameSize \
6387          -learnWaitTimeBeforeTransmit 0 \
6388          -learnSendMacOnly False \
6389          -learnSendRouterSolicitation False \
6390          -fastPathEnable $fastPathEnable \
6391          -fastPathRate 100 \
6392          -fastPathNumFrames 10
6393         ixNet setMultiAttrs $sg_rfc2544throughput/passCriteria \
6394          -passCriteriaLoadRateMode average \
6395          -passCriteriaLoadRateValue 100 \
6396          -passCriteriaLoadRateScale mbps \
6397          -enablePassFail False \
6398          -enableRatePassFail False \
6399          -enableLatencyPassFail False \
6400          -enableStandardDeviationPassFail False \
6401          -latencyThresholdValue 10 \
6402          -latencyThresholdScale us \
6403          -latencyThresholdMode average \
6404          -latencyVariationThresholdValue 0 \
6405          -latencyVariationThresholdScale us \
6406          -latencyVarThresholdMode average \
6407          -enableSequenceErrorsPassFail False \
6408          -seqErrorsThresholdValue 0 \
6409          -seqErrorsThresholdMode average \
6410          -enableDataIntegrityPassFail False \
6411          -dataErrorThresholdValue 0 \
6412          -dataErrorThresholdMode average
6413         sg_commit
6414         ixNet commit
6415         set sg_rfc2544throughput [lindex [ixNet remapIds $sg_rfc2544throughput] 0]
6416         set ixNetSG_Stack(1) $sg_rfc2544throughput
6417         #
6418         # configuring the object that corresponds to /quickTest/rfc2544throughput:1/protocols
6419         #
6420         set sg_protocols $ixNetSG_Stack(1)/protocols
6421         ixNet setMultiAttrs $sg_protocols \
6422          -protocolState default \
6423          -waitAfterStart 120 \
6424          -waitAfterStop 30
6425         sg_commit
6426         set sg_protocols [lindex [ixNet remapIds $sg_protocols] 0]
6427
6428         #
6429         # configuring the object that corresponds to /quickTest/rfc2544throughput:1/trafficSelection:1
6430         #
6431         set sg_trafficSelection [ixNet add $ixNetSG_Stack(1) trafficSelection]
6432         ixNet setMultiAttrs $sg_trafficSelection \
6433          -id $ixNetSG_ref(26) \
6434          -includeMode inTest \
6435          -itemType trafficItem
6436         sg_commit
6437
6438         #
6439         # configuring the results folder that corresponds to /quickTest/rfc2544throughput:1
6440         #
6441         ixNet setAttr $sg_rfc2544throughput -resultPath $output_dir
6442         ixNet commit
6443         set sg_trafficSelection [lindex [ixNet remapIds $sg_trafficSelection] 0]
6444         ixNet commit
6445
6446     } elseif {$rfc2544TestType == "back2back"} {
6447         #
6448         # configuring the object that corresponds to /quickTest/rfc2544back2back:2
6449         #
6450         set sg_rfc2544back2back [ixNet add $ixNetSG_Stack(0)/quickTest rfc2544back2back]
6451         ixNet setMultiAttrs $sg_rfc2544back2back \
6452          -name {B2B} \
6453          -mode existingMode \
6454          -inputParameters {{}}
6455         ixNet setMultiAttrs $sg_rfc2544back2back/testConfig \
6456          -protocolItem {} \
6457          -framesize $frameSize \
6458          -reportTputRateUnit mbps \
6459          -rfc2544ImixDataQoS False \
6460          -detailedResultsEnabled True \
6461          -rfc2889ordering noOrdering \
6462          -floodedFramesEnabled False \
6463          -duration $duration \
6464          -numtrials $numTests \
6465          -trafficType constantLoading \
6466          -burstSize 1 \
6467          -framesPerBurstGap 1 \
6468          -tolerance 0 \
6469          -frameLossUnit {0} \
6470          -staggeredStart False \
6471          -framesizeList [list $frameSize] \
6472          -frameSizeMode custom \
6473          -rateSelect percentMaxRate \
6474          -percentMaxRate 100 \
6475          -resolution 0.01 \
6476          -forceRegenerate False \
6477          -reportSequenceError False \
6478          -ipv4rate 50 \
6479          -ipv6rate 50 \
6480          -loadRateList $frameRate \
6481          -minFpsRate 1000 \
6482          -minKbpsRate 64 \
6483          -txDelay 2 \
6484          -delayAfterTransmit 2 \
6485          -minRandomFrameSize 64 \
6486          -maxRandomFrameSize 1518 \
6487          -countRandomFrameSize 1 \
6488          -minIncrementFrameSize 64 \
6489          -stepIncrementFrameSize 64 \
6490          -maxIncrementFrameSize 1518 \
6491          -calculateLatency False \
6492          -calibrateLatency False \
6493          -latencyType cutThrough \
6494          -calculateJitter False \
6495          -enableDataIntegrity False \
6496          -loadType $loadType \
6497          -binaryFrameLossUnit % \
6498          -loadUnit percentMaxRate \
6499          -customLoadUnit percentMaxRate \
6500          -randomLoadUnit percentMaxRate \
6501          -incrementLoadUnit percentMaxRate \
6502          -binaryResolution 1000 \
6503          -binaryBackoff 50 \
6504          -binaryTolerance $tolerance \
6505          -initialIncrementLoadRate 100 \
6506          -stepIncrementLoadRate 10 \
6507          -maxIncrementLoadRate 100 \
6508          -minRandomLoadRate 10 \
6509          -maxRandomLoadRate 80 \
6510          -countRandomLoadRate 1 \
6511          -numFrames {100000} \
6512          -loadRate 100 \
6513          -enableMinFrameSize True \
6514          -gap 3 \
6515          -generateTrackingOptionAggregationFiles False \
6516          -sendFullyMeshed False \
6517          -imixDistribution weight \
6518          -imixAdd {0} \
6519          -imixDelete {0} \
6520          -imixData {{{{64}{{TOS S:0 S:0 S:0 S:0 S:0} S:0}{1 40}}{{128}{{TOS S:0 S:0 S:0 S:0 S:0} S:0}{1 30}}{{256}{{TOS S:0 S:0 S:0 S:0 S:0} S:0}{1 30}}}} \
6521          -imixEnabled False \
6522          -imixTemplates none \
6523          -framesizeImixList $frameSize \
6524          -imixTrafficType {UNCHNAGED} \
6525          -ipRatioMode fixed \
6526          -ipv4RatioList {10,25,50,75,90} \
6527          -ipv6RatioList {90,75,50,25,10} \
6528          -minIncrementIpv4Ratio {10} \
6529          -stepIncrementIpv4Ratio {10} \
6530          -maxIncrementIpv4Ratio {90} \
6531          -minIncrementIpv6Ratio {90} \
6532          -stepIncrementIpv6Ratio {-10} \
6533          -maxIncrementIpv6Ratio {10} \
6534          -minRandomIpv4Ratio {10} \
6535          -maxRandomIpv4Ratio {90} \
6536          -minRandomIpv6Ratio {90} \
6537          -maxRandomIpv6Ratio {10} \
6538          -countRandomIpRatio 1 \
6539          -mapType {oneToOne|manyToMany|fullMesh} \
6540          -supportedTrafficTypes {mac,ipv4,ipv6,ipmix}
6541         ixNet setMultiAttrs $sg_rfc2544back2back/learnFrames \
6542          -learnFrequency $learningFrequency \
6543          -learnNumFrames 10 \
6544          -learnRate 100 \
6545          -learnWaitTime 1000 \
6546          -learnFrameSize 64 \
6547          -fastPathLearnFrameSize 64 \
6548          -learnWaitTimeBeforeTransmit 0 \
6549          -learnSendMacOnly False \
6550          -learnSendRouterSolicitation False \
6551          -fastPathEnable $fastPathEnable \
6552          -fastPathRate 100 \
6553          -fastPathNumFrames 10
6554         ixNet setMultiAttrs $sg_rfc2544back2back/passCriteria \
6555          -passCriteriaLoadRateMode average \
6556          -passCriteriaLoadRateValue 100 \
6557          -passCriteriaLoadRateScale mbps \
6558          -enablePassFail False \
6559          -enableRatePassFail False \
6560          -enableLatencyPassFail False \
6561          -enableStandardDeviationPassFail False \
6562          -latencyThresholdValue 10 \
6563          -latencyThresholdScale us \
6564          -latencyThresholdMode average \
6565          -latencyVariationThresholdValue 0 \
6566          -latencyVariationThresholdScale us \
6567          -latencyVarThresholdMode average \
6568          -enableSequenceErrorsPassFail False \
6569          -seqErrorsThresholdValue 0 \
6570          -seqErrorsThresholdMode average \
6571          -enableDataIntegrityPassFail False \
6572          -dataErrorThresholdValue 0 \
6573          -dataErrorThresholdMode average \
6574          -enableFrameCountPassFail False \
6575          -passCriteriaFrameCountValue 100 \
6576          -passCriteriaFrameCountMode average
6577         sg_commit
6578         set sg_rfc2544back2back [lindex [ixNet remapIds $sg_rfc2544back2back] 0]
6579         set ixNetSG_Stack(1) $sg_rfc2544back2back
6580
6581         #
6582         # configuring the object that corresponds to /quickTest/rfc2544back2back:2/protocols
6583         #
6584         set sg_protocols $ixNetSG_Stack(1)/protocols
6585         ixNet setMultiAttrs $sg_protocols \
6586          -protocolState default \
6587          -waitAfterStart 120 \
6588          -waitAfterStop 30
6589         sg_commit
6590         set sg_protocols [lindex [ixNet remapIds $sg_protocols] 0]
6591
6592         #
6593         # configuring the object that corresponds to /quickTest/rfc2544back2back:2/trafficSelection:1
6594         #
6595         set sg_trafficSelection [ixNet add $ixNetSG_Stack(1) trafficSelection]
6596         ixNet setMultiAttrs $sg_trafficSelection \
6597          -id $ixNetSG_ref(26) \
6598          -includeMode inTest \
6599          -itemType trafficItem
6600         sg_commit
6601         set sg_trafficSelection [lindex [ixNet remapIds $sg_trafficSelection] 0]
6602         ixNet commit
6603     }
6604     #
6605     # getting and applying the RFC2544 test
6606     #
6607     set root [ixNet getRoot]
6608     set qt [ixNet getList $root quickTest]
6609     if {$rfc2544TestType == "throughput"} {
6610         set rfc2544test [ixNet getList $qt rfc2544throughput]
6611     } elseif {$rfc2544TestType == "back2back"} {
6612         set rfc2544test [ixNet getList $qt rfc2544back2back]
6613     }
6614     ixNet exec apply $rfc2544test
6615     after 5000
6616     #
6617     # starting the RFC2544 Throughput test
6618     #
6619     puts "Starting test..."
6620     ixNet exec start $rfc2544test
6621     puts "Checking if [ixNet getA $rfc2544test -name] started...."
6622     set count 0
6623     while { [ixNet getA $rfc2544test/results -isRunning] eq false } {
6624         after 1000
6625         if { $count > 60 } { error "QT failed to start after 1 minute" }
6626         incr count
6627     }
6628     puts "Looking for statistics"
6629     set results_file_name "Traffic Item Statistics"
6630     set results_file_path [getResultFile $results_file_name]
6631     return $results_file_path
6632 }
6633
6634 proc getResultFile { viewName } {
6635     global output_dir
6636     puts "Sleeping 20 seconds to have $viewName view"
6637     after 20000
6638     set root [ixNet getRoot]
6639     set views [ixNet getList $root/statistics view]
6640     foreach view $views {
6641         if { [ixNet getA $view -caption] eq $viewName } {
6642             set trafficView $view
6643             break
6644         }
6645     }
6646     puts "Checking that the $viewName view is ready"
6647     set count 0
6648     while { [ixNet getA $trafficView/data -isReady] eq false } {
6649         after 1000
6650         if { $count > 2 } { break }
6651         incr count
6652     }
6653     puts "Success! $viewName view is ready! "
6654     puts "Changing the CSV path"
6655     set setAttr [ixNet setA $root/statistics -csvFilePath $output_dir]
6656     if { $setAttr != "::ixNet::OK"} {
6657         error "Error"
6658     }
6659     ixNet commit
6660     puts "Enabling CSV logging"
6661     set setAttr [ixNet setA $trafficView -enableCsvLogging True]
6662     if { $setAttr != "::ixNet::OK"} {
6663         error "Error"
6664     }
6665     ixNet commit
6666     puts "Enabled CSV logging"
6667     puts "Getting CSV file name for $trafficView view"
6668     set csv_path [ixNet getA $root/statistics -csvFilePath]
6669     set csv_name [ixNet getA $trafficView -csvFileName]
6670     ixNet commit
6671     return [file join $csv_path $csv_name]
6672 }
6673
6674 proc copyFileResults { sourceFile destFile } {
6675     puts "Coping the file $sourceFile to $destFile..."
6676     set source [dict get $sourceFile source_file]
6677     set dest [dict get $destFile dest_file]
6678     if {[catch {ixNet exec copyFile [ixNet readFrom "$source" -ixNetRelative] [ixNet writeTo "$dest" -overwrite]} errMsg]} {
6679        error "Error while copying results : '$errMsg'"
6680     }
6681 }
6682
6683
6684 proc waitForRfc2544Test { } {
6685     # Wait for- and return results of- RFC2544 quicktest.
6686
6687     global rfc2544test
6688
6689     puts "Waiting for test to complete..."
6690     set result [ixNet exec waitForTest $rfc2544test]
6691     puts "Checking if [ixNet getA $rfc2544test -name] stopped"
6692     set count 0
6693     while { [ixNet getA $rfc2544test/results -isRunning] eq true } {
6694         after 1000
6695         if { $count > 60 } { error "QT failed to stop after 1 minute it finished" }
6696         incr count
6697     }
6698     puts "Finished Test"
6699
6700     return "$result"
6701 }