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