From a3b094bbf4704f53c13facd5aca6cf8a7ab323a6 Mon Sep 17 00:00:00 2001 From: Tom Henderson Date: Fri, 24 Aug 2012 19:11:51 -0700 Subject: [PATCH] Update mesh test traces due to random variable perturbations --- src/mesh/helper/mesh-helper.cc | 13 +++++++++++++ .../hwmp-proactive-regression-test-0-1.pcap | Bin 9788 -> 9246 bytes .../hwmp-proactive-regression-test-1-1.pcap | Bin 14789 -> 14362 bytes .../hwmp-proactive-regression-test-2-1.pcap | Bin 16178 -> 15849 bytes .../hwmp-proactive-regression-test-3-1.pcap | Bin 15092 -> 15007 bytes .../hwmp-proactive-regression-test-4-1.pcap | Bin 9946 -> 9946 bytes .../test/dot11s/hwmp-proactive-regression.cc | 13 +++++++++---- .../hwmp-reactive-regression-test-0-1.pcap | Bin 16157 -> 19230 bytes .../hwmp-reactive-regression-test-1-1.pcap | Bin 23128 -> 25372 bytes .../hwmp-reactive-regression-test-2-1.pcap | Bin 24512 -> 24393 bytes .../hwmp-reactive-regression-test-3-1.pcap | Bin 27512 -> 24421 bytes .../hwmp-reactive-regression-test-4-1.pcap | Bin 23695 -> 24167 bytes .../hwmp-reactive-regression-test-5-1.pcap | Bin 18198 -> 14858 bytes .../test/dot11s/hwmp-reactive-regression.cc | 13 +++++++++---- .../hwmp-simplest-regression-test-0-1.pcap | Bin 77039 -> 77039 bytes .../hwmp-simplest-regression-test-1-1.pcap | Bin 80402 -> 80402 bytes .../test/dot11s/hwmp-simplest-regression.cc | 12 ++++++++---- ...hwmp-target-flags-regression-test-0-1.pcap | Bin 10539 -> 10441 bytes ...hwmp-target-flags-regression-test-1-1.pcap | Bin 15073 -> 14975 bytes ...hwmp-target-flags-regression-test-2-1.pcap | Bin 13173 -> 13265 bytes ...hwmp-target-flags-regression-test-3-1.pcap | Bin 7297 -> 7389 bytes .../dot11s/hwmp-target-flags-regression.cc | 13 +++++++++---- .../test/dot11s/pmp-regression-test-0-1.pcap | Bin 851 -> 851 bytes .../test/dot11s/pmp-regression-test-1-1.pcap | Bin 851 -> 851 bytes src/mesh/test/dot11s/pmp-regression.cc | 12 ++++++++---- .../test/flame/flame-regression-test-0-1.pcap | Bin 5844 -> 5540 bytes .../test/flame/flame-regression-test-1-1.pcap | Bin 7448 -> 6812 bytes .../test/flame/flame-regression-test-2-1.pcap | Bin 5618 -> 4998 bytes src/mesh/test/flame/flame-regression.cc | 12 ++++++++---- 29 files changed, 64 insertions(+), 24 deletions(-) diff --git a/src/mesh/helper/mesh-helper.cc b/src/mesh/helper/mesh-helper.cc index 5c2bc62e4..fa32c23fe 100644 --- a/src/mesh/helper/mesh-helper.cc +++ b/src/mesh/helper/mesh-helper.cc @@ -22,6 +22,7 @@ #include "ns3/simulator.h" #include "ns3/mesh-point-device.h" #include "ns3/wifi-net-device.h" +#include "ns3/minstrel-wifi-manager.h" #include "ns3/mesh-wifi-interface-mac.h" namespace ns3 { @@ -225,6 +226,18 @@ MeshHelper::AssignStreams (NetDeviceContainer c, int64_t stream) for (std::vector >::iterator i = ifaces.begin (); i != ifaces.end (); i++) { wifi = DynamicCast (*i); + + // Handle any random numbers in the PHY objects. + currentStream += wifi->GetPhy ()->AssignStreams (currentStream); + + // Handle any random numbers in the station managers. + Ptr manager = wifi->GetRemoteStationManager (); + Ptr minstrel = DynamicCast (manager); + if (minstrel) + { + currentStream += minstrel->AssignStreams (currentStream); + } + // Handle any random numbers in the mesh mac and plugins mac = DynamicCast (wifi->GetMac ()); if (mac) { diff --git a/src/mesh/test/dot11s/hwmp-proactive-regression-test-0-1.pcap b/src/mesh/test/dot11s/hwmp-proactive-regression-test-0-1.pcap index 1761ec571f54aaa1e451873f0cc346829f1145fc..31f025edec158fed8a31e4883872c0b4df252012 100644 GIT binary patch literal 9246 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 diff --git a/src/mesh/test/dot11s/hwmp-proactive-regression-test-2-1.pcap b/src/mesh/test/dot11s/hwmp-proactive-regression-test-2-1.pcap index e54a635f9265424e068d17a73831a7d947526891..185e7d99134807e8805979290210bc131afd56a4 100644 GIT binary patch literal 15849 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 literal 15092 zcmd5?ZH!b`8Gi4uv%9eD%u4yFrR+|WV){X|W%())VCVWj=zccUprQP=q3@xUWO<#Xx=VN@A+Y)?Z3;uFHQ)WaojZ#pbaqXndj8Xy7 z5Ixr?bgW3+ubRK=|2t{TEK*_>z+xa+3D5jLBuqmBE6e>{SqatusE>P~Vn04{w+#8w zlqcABCW@iUu?D+*k~sYK13!?iEeH`q9S-}{zMk}sYqal^kPw&uHb$8_cgx=MFXVq{ z_Br_0XaDTS1nHU|BtAV)7&Vbe)N`Gnn;z8~wwF@fU~n745zlDda*k&{K3}lChu>YN z?ODbw%7K|~YZuhwH@Kc?10LjFm8aT5xbidHf;`RBT-@}N_36(DgftX_5DnLBOV;m0 z0t0eCSH^{##>R&W7!86+k7_Ln*XFQ;pB1EQWJv!FMr|QUQ^}Klt?t~{TT6Z){1~v; z+G#C{|4k}Yf@urz8IF5s`@V;x!DOTpoqY&jMH7N)eGp8mdJ@`%hq<3AOS4EXm1yHl zM5P3esMgNfK7+L7mb5q%kG@4)0SY&%E|(hy-P8q8^$ibD-6>QILUd(i5}L%;k2_X5 z!o-=SE@9^Z7ua9>7nH~pe|waj|#%95B?;LT2+=GiyBiS6v|+Xa*}j~#{3cJN*?MScle3<(VJn+qHD}v zz{T_9yOJ<3KSs2$G(XZ%sN{z$Y|U{&m^J3VFj_mHP3+}5LvyW2WOLnmyoK(8DY;iI zI7~oy(8=)@6wZOEF; zOEhnH1T{~)fa;Ua_Ix+J_wK@&j~Fm{KS0g)d^f#4e^Cte(n6r_4p6f_-%Tr)Mo{y# zV3A9nlOx;ny>#7koiQ~TF!^DCn(g^sy7+Pw^|?-N@P-in~+=`>I)o@eqe z|2;Z0nw%d%)l$niTb1zG3f6AT6+>31*o%(a{-l|3w(zg!NTXJjyDvwLX|jDn8#Cz&jX4hZ>Pd`6-t(TrPn^WqL$!=q zbdC9Cz_Bvi{cQpZJ0uCyfnXR+YGLUlmU^x-iMhh=zaj`zKrF1|pHXv}8a}MemFo=6 zb$240tMs*eY-Th8Z9u7%YD(>SXj3bo`v6)ypwIX|Z~=i0bMqZ;O#C9?0w35Yy7Gu4 zObqC{g#CD%Ak6yU(MN?*tIBDNMwS^S9HzC0lCIF0b0Z#l?Je3F67p2MCuIiQP4HIq_ zdv(v$4-?VIVs?I2E}1;zc(!#t~f_qxsZX-U1<-}t$!x0H#K&;ZTP#I#Jt;``B6w1f;ablh z>XF=Y%Ek8Lz|4PVGbCA+MuYigo=IU7~=Bd)1a z&_D2*ovUtnO}*74pFQ-`oUPHCv|<@*(p$l9Is5FPpLT4E zpyp{SP%GPSUZyp{#9YR>%hUEWM$r6Xp`C#5&g8Vs`p<_BL5Qg!;?c(?c3wdmz!PYG zL24Lw527Rn>{N&`yS=yszVnLSG;?EiVR>i(-wm}2?3Dh@?)ljQJH%btUu<0@s$*XC-!CNiD}qY6Gx);-J9J2JYA)!FOIsrIcM*QX7C>Gxn*0?`%nZ z0K33QWNHsqP6ukSo3WC*UE0Me&AFsbO6M)%+96`;~0iae&Dj!syLXQNlDXBIs zOKbt}fC8~GlO>h)e-k}OOQkuFE=E`e?7WgXnid^*+pO0D4ZyAq$rG?sfy?aHLBoKZ zS5iwUyRhgq0J}lF!w=Xg{h8e zq=MP)k@oT`8Pa9-ux2M6{#Mw{*uryv^rV8>{Y_%0(^zvXcI(KL4u2bf-SX&31+&XO zsTiS?r#IqB@ohXWRg+%@>(%U&iV@oThbZbR8-cnxK+Qg>7@^A-BdB@$BTy^L>i+;! Cp;aRQ diff --git a/src/mesh/test/dot11s/hwmp-proactive-regression-test-4-1.pcap b/src/mesh/test/dot11s/hwmp-proactive-regression-test-4-1.pcap index 92375fd08ba56c261a925b962eefb053595d1af0..c31166af3fdea2cd932abf60e8079fc1a414a37b 100644 GIT binary patch literal 9946 zcmd5?ZHQD=7=G`#U(UEQvuY}+>y)cjppB_ykh$u*MD=6r1NuN%5Y3g<)&zfu(S#Ht zf@?wIztzZ()p9kXFoh*S0wGq|GJm;!`0+0-SkOP)^PY3hz30q1cWy)C?16LU&OLXY z_kG^4^UmxJT|9FrK{cet=qORA|K`X)h)XLBBxb5-kHSC=@ttJ0L zN7r;(T(f!owvBw3$9I#6UcoER!6GAKNR+g=#@b9TGD-*{Ar?*Z=p-J+9Q9wt`)BEy zaU{eFfFB`&p?D4z#Vz?pTuzxxRKOL_K)#e5aB230d|iVwvTHq0lYSNWmUM{>iTAK; zu{We=|0nwkkCc>1kSmGu!)K?+60UX8GRLSw&YEm1qP z;8~KV(g#?Z@C*+tPm?qWH@#(8%#0m5PP81K;2C6$p>-?eX!R_@%A=9pu^UMkjCANA zqHj)Ua84Ih1b6l%(P~KIIaoAmlh3&Tz1rrGH!CO+frbb0A+KI5XL!%!7l2xnC7fR* zaxs)MI^_?(bVNl^6B@sA2s7;4A%%G`F-D;MXW}guL)byUMHs}_JueNCXtoV9AGcfv zx%72Ct$-w+C6VQWW{IESVMSIgt+j%xFWnFms##iyXPkgZI$MuWy^h5U)p;9Jw%-g> zc9RjR`AS$A`MR)=wnQ4l57L4(NTS&`$Wxwe z5Zof}YgXWur#tdY#2O~o{Ku}*FV>i^H52U&p z;#=5DdS0!38du^ToAaf^k=SYZ^q}}SutgJ833l(1dfSo0RYLMnU9#ibTxM8GPSH%h zD3Qz%L@C8Z^5a{)@iwqI0C^4-vG5QP$-8H;+mBbC4ZD2Fdc3B3u!8}6@{2E-6Q{`U zTbqd3nk;+3qw&%<5Kb_gtK_*%M+;#Jp#89Gnhj#~~5~ciH1_&C%eTCt^i#E%PSCbR4ao-*KpOnHrUb zzd|2Z$I%W@s|nC6cxC{lTl-x>0Rm5sj86G4z(uF-`;R+>=>;`i@PshcaVTM7$Ds>r zcp}muev2>&-9?LF8)OR-xzr%4k>CQt(|x23V+X@^qye*XkfvMP)Lb}N$(c0zw9NpXVkoI$<9^tLUvWDd9443(BJZ%NJid`|Jv3; z8?MdAlg@9KpBm+k0pq{6bZNPY%9bB2?Q07uxrZkTcc}2 zcvd@sI?%^kP7shWDjH{BhI08G-3B}kwzu!LQRI;YAf5UCK$v8qM_ zfoC-ni1ojNX*odz5%125J%M@^JH5r0C(syRcX+&mok$>NcLnE@ha&5%_1uQ5-p49xnT{?Swt&>8~**l!u=8XOM>tlrE?%FYO<N2?i literal 9946 zcmd5>ZHQD=7=G`#cW2#ocSb7}s@WmbAC=prnJK9gt&vu^_#^)m%nw^XGFVg)B4TJM zMEbD>6@q~uRJys_rj!vxn`uA#)3PpT7PR?GglN+Y5n+4YbMD7EbIzITBsqKF-krJU z?(@FSbDsB{bMK6Of9ybt8Ypa&lSEsBFCVoMt;c6RM#_)NtGI^N7M^po*28D7>Frr_ z=M|nVZF{8Qm6vvGUOd;MqZ#63GWaXLFQcW?i2p&hL%@k5?EXI@oJ10wEFWWK8I>dl zd^wV>*1K*dQ5Wvw!_GfTIZyCc6>xA*fxGW{3j6abh@Jp8ALTO9q-gk}=(`p7aJwi( zi)Fssrx~~?)t0vq-N4O}oZ*1Up@Ix(IN#cUeYesgn8XJBrd1ZfWUtJkEguR79U{wA z6)dF)whQ>iU`k{}f4*p8uSGA^$exF68l`|OTX(Tq{BO`}*hN$Szt|;?{yKbOu#dDK zeZgrac@NHf4>yaMRv2bFwb&!*Ee^Z;iiTCj7EDR5SOYl7Rj%&Bi+r-IZsl{58y5SMKFb{uI)pxh%V zU_)6H$_A78!$~D0qJlc?8sWS2smWoC>%5Wc&vQa(-P-B!eOBE9+XH?4D z1{$hZ>NSf=PsGf(|HB(?$A zOzSd8^MZjoT1=Xx^E9j1f$Gyvpz3KRt688Q@0`Q5P2SBkF&k<28mP%?7HH8t2dYnZ z%~8{2Yb2{#q)T7qTxq_OLz?pp)MPb_wEnaM)u%6k8mq}^cK)f%q2c~XtDpU{esJd2 z%KK)0e&Q?K819b=1;ZzJ?~#I}a;6|pdUinuH~OX^ zT8<;SAU=rc9^fn7m~yFGfwOv`Cb$PS`!33X2gW63uRT?D}Y-KSUxKDfq@75q#&uBDab*G zAo&AndKQ3uH1%qm%Z%JL?ne(=hVp=*{(kmXQzM>fsIh_g68f4w&zE=OleotGpE>Bn zZVPs#!T*!kxz>XH=ErGMd7&*wE_|X!4j#6pNI}78W#ksRmkCrvW(cB|kc;HUm$;({ zY-7v?D))YX-XZ+uqp3HD9K^&WpmGly^yEK5WFFKqe=p)eoYmym!yZkiZG83iG|vCr zVGFy+(KGuk>{Lg$2$L|ocFuXKu{%Aa`a*Mi;K)Mc3;s~yi=dCkCUU!|P*!e2!?un5 zFz!OrM?S11h6pN2e2U!19Rr_N8$W=Us+g1HQe#F#cNs(cLn32)o^7cd0b629kq0uD`_S2ch3{ayV)*k-mpMuYuR)! zT7YfhX=7KHyqoQ!?cEMkpEdwB-X?|{iR#nYxEy}n)N&9oJoTK;IDa<2F$ls$+}n=Y zGT3Q_Q<4_b3unr(J3HONPUO$*8e1&vv;yjJ7f?KQbtxdue>U-$#o{Ppu_-H{D@J_30W=^#bDkm0>YK0_y;`mI?8vVpWh9gFWkA zKqc(qj6sMBXw@MLJFS4q?gE+u?B2tE#$Xo}(5X)??6d;va~Dv|u5JZ1hWrh7!h2jm z$tzF~t=+psxYM!%?OcKaYU-%;d-4j@L&pv~P<`49)VP4c$C&B`M4`pOt+zobG0qqajnH%b4m2dZ8`hx=3JD-YFTZNr}S z<5nZM>2G=X3O8oG>r(~J`j%(ds{wA!K#JEoaa6q25JFSi2;jt(*|dX5>D@-@I2Hi$}i>!2l=rti267QW>Pvyb2MsKKrR&LN1boJ<~Y z5G0i|1vyW4L9TzM3;V4hsTKU%q-BR-R32CVtDx5XD zn&5uBPs#4q;pWV5bPY)0P)Y?34aYGi{3?js9J&mk)g4;!G=~}rW>f`#0G!*QJqs+s zwBgEvfin7Gu-Kt$up5A@?$9D~7Y;QAx!@2ad7m6S?b{wSQSSq|DgXcg diff --git a/src/mesh/test/dot11s/hwmp-proactive-regression.cc b/src/mesh/test/dot11s/hwmp-proactive-regression.cc index 1c44d2b3b..1f7aa655d 100644 --- a/src/mesh/test/dot11s/hwmp-proactive-regression.cc +++ b/src/mesh/test/dot11s/hwmp-proactive-regression.cc @@ -104,21 +104,26 @@ HwmpProactiveRegressionTest::InstallApplications () void HwmpProactiveRegressionTest::CreateDevices () { + int64_t streamsUsed = 0; // 1. setup WiFi YansWifiPhyHelper wifiPhy = YansWifiPhyHelper::Default (); // This test suite output was originally based on YansErrorRateModel wifiPhy.SetErrorRateModel ("ns3::YansErrorRateModel"); YansWifiChannelHelper wifiChannel = YansWifiChannelHelper::Default (); - wifiPhy.SetChannel (wifiChannel.Create ()); + Ptr chan = wifiChannel.Create (); + wifiPhy.SetChannel (chan); // 2. setup mesh MeshHelper mesh = MeshHelper::Default (); mesh.SetStackInstaller ("ns3::Dot11sStack", "Root", Mac48AddressValue (Mac48Address ("00:00:00:00:00:0d"))); mesh.SetMacType ("RandomStart", TimeValue (Seconds (0.1))); mesh.SetNumberOfInterfaces (1); NetDeviceContainer meshDevices = mesh.Install (wifiPhy, *m_nodes); - // Five nodes, one device per node, 3 streams per mac - int64_t streamsUsed = mesh.AssignStreams (meshDevices, 0); - NS_TEST_EXPECT_MSG_EQ (streamsUsed, (3*5), "Stream assignment unexpected value"); + // Five devices, 4 streams per device + streamsUsed += mesh.AssignStreams (meshDevices, streamsUsed); + NS_TEST_ASSERT_MSG_EQ (streamsUsed, (meshDevices.GetN () * 4), "Stream mismatch"); + // No streams used here, by default + streamsUsed += wifiChannel.AssignStreams (chan, streamsUsed); + NS_TEST_ASSERT_MSG_EQ (streamsUsed, (meshDevices.GetN () * 4), "Stream mismatch"); // 3. setup TCP/IP InternetStackHelper internetStack; diff --git a/src/mesh/test/dot11s/hwmp-reactive-regression-test-0-1.pcap b/src/mesh/test/dot11s/hwmp-reactive-regression-test-0-1.pcap index eb87c31c147edcb693a3b1744e62a5dd6ee7e2c2..12da92e478011f42b773176956a70f8a592bd8c8 100644 GIT binary patch literal 19230 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 IZ+>R`KlP}#@Bjb+ diff --git a/src/mesh/test/dot11s/hwmp-reactive-regression-test-1-1.pcap b/src/mesh/test/dot11s/hwmp-reactive-regression-test-1-1.pcap index fcdb5222792f67fd5f9ad024d1e95fc3b017da85..a7b4dedc10b7360546d3839308277bd0292eeb07 100644 GIT binary patch literal 25372 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 literal 23128 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 diff --git a/src/mesh/test/dot11s/hwmp-reactive-regression-test-2-1.pcap b/src/mesh/test/dot11s/hwmp-reactive-regression-test-2-1.pcap index 0904156bd3a173be681baf64e2339e17efad1d08..225dc6858ff3ed9f2c0fcabbc1d708593807b523 100644 GIT binary patch literal 24393 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 literal 24512 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

`h zb%8V)9HQ0>m`*YE0?qzH@M+RW-E@SdG3v%Ih)wlE3DPW|WROPc=HaP^Q5mP|&o*dI zsWsY#t(t0$5@g+SPKYnijj$MDJzlrqGv)6EyBSpePAjzyeA-IMz^k(!H7LfhD`Ewjn>_4~#=rxOWI;%Y5zdI48Ta`*;yS@#Q#ii(JM!SO}Juk+=iEk^qW;Wa~Xf*ybBk~GrrnI31Y5oed9N?(Sq)7=V zhnH^wCOMRRpTWq7lCJ|UH%l7a~r z>~#|iev*q2Rs+GFH@;)SSLVS1G7E&z^6>518w zMEBwNhq7`--nS+m$`VUL6S6;)MWggkmh^>SK@^4M!wTaufgbZO#DxEt9{Q3BTY<-} zG<-ga)Sa5w8eVXJL4uzVAPLu)9_!-YrHcYf(VP5kzBrh7{ELGG#+yeKpY6g6fv(HP zUCixaT}NHc!L;PaO{`oHUS$G&5r7xtFLm=RyKT7kfyj%?EAo+VQJ-0UD^IL4oz=sG zXXy9bV<@M%o@w+DMh9L6{kGpEF1CnOCWP914ft{uZpEmEuUJug*oycnr(i{5NeG`F zN;A71jV{e3V^+D{@mHA+=gp&iX`of!bw@R$8$77z^U7sVVW2g=tl3?NQG+jse$|s0 zpKD6nuzWM`WqbAx4r?E<1~!)Nl8mLG?8VK7TUn*CjGAM(RabFYd8_UqexZO271v=y zOMM#fwWXG(^aVz>*(>bD-pCtum7~uai2rhowqQl6n_aaB_ib}m9mLbq;zniq=}u~7 zDL3HhJBe?+hp{~T8|PLQfBglO#lL)>VRfW!F3leq69{@8KM+um=gp&U4-^P?+Chck z)$}GfsMDZ>J`V8cC2?Bk{VeYB?LKz>nnhefeGf^!u`s-c5be4xahp;f`((+D7Qp11 zMNz)oO&dn`a!Utc_Wrs0Fx7Mivmu5xh7_{ z`y79@MG*pMkEm>`O?te~4(d<4FIa6I)U?_J8o%1i>FiyGBMp0rn;NksJawXtUv1`$ zdw#hEF!}njC}8|**EzcuBTqmx*yHodqk!?NUFXcb42gjeFnQZOQNVZ|W}N-QR#^a3 zm)#o%q@|44Va8c>&<2F)l(9(7QY zJ<_-0SG&=v+SbPL4Xb@nn|l0eH#(~yTWbMKZfnzYX%D)7u&4`ki5p8r^Kc91z`C@9 f`nqIEKa%U9HeJTsW!4#cDcz=R^qj}mhNu32Zh#|+ literal 23695 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 Hn=Stjh88I` diff --git a/src/mesh/test/dot11s/hwmp-reactive-regression-test-5-1.pcap b/src/mesh/test/dot11s/hwmp-reactive-regression-test-5-1.pcap index 48549503768aca3bc216e56cd72f647f75956ef8..bedd4b6a8b494187f4aa300ed3554cd1e15ec9e1 100644 GIT binary patch literal 14858 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 ng+W7?-t0FgQ literal 18198 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 ln0)Z@O2F_UuGQD2h;Gs)ew chan = wifiChannel.Create (); + wifiPhy.SetChannel (chan); + // 2. setup mesh MeshHelper mesh = MeshHelper::Default (); mesh.SetStackInstaller ("ns3::Dot11sStack"); mesh.SetMacType ("RandomStart", TimeValue (Seconds (0.1))); mesh.SetNumberOfInterfaces (1); NetDeviceContainer meshDevices = mesh.Install (wifiPhy, *m_nodes); - // Six nodes, one device per node, 3 streams per mac - int64_t streamsUsed = mesh.AssignStreams (meshDevices, 0); - NS_TEST_EXPECT_MSG_EQ (streamsUsed, (6*3), "Stream assignment unexpected value"); + // Six devices, 4 streams per device + streamsUsed += mesh.AssignStreams (meshDevices, streamsUsed); + NS_TEST_EXPECT_MSG_EQ (streamsUsed, (meshDevices.GetN () * 4), "Stream assignment mismatch"); + streamsUsed += wifiChannel.AssignStreams (chan, streamsUsed); + NS_TEST_EXPECT_MSG_EQ (streamsUsed, (meshDevices.GetN () * 4), "Stream assignment mismatch"); // 3. setup TCP/IP InternetStackHelper internetStack; diff --git a/src/mesh/test/dot11s/hwmp-simplest-regression-test-0-1.pcap b/src/mesh/test/dot11s/hwmp-simplest-regression-test-0-1.pcap index 6287d979e2b5d06c40c425bb48600660921d829c..851d21b2abbf4e23107cb7e7fd4eb53f3f1a6e2c 100644 GIT binary patch delta 1923 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 S!y!(%YEanc!Q6S1P5cia&uYv7 delta 2095 zcmZXVZA@EL7{{OI+|u4kpk>+s8>|;1+rBUg;cX&YiSlK#q##5Wkkl}ok!;WaS%fTh z(`1fCL%EVG7_)AE&}|UWOX(7Wt%eQUhuOGbe3=WrELn^?W&rimJm>V@zTGCxX`l0d z{^$3c=gGYj8>Wd3(|8eqdBs+XQWgNrgHlq5C1&~)wuJ((cu8qU&Z{Vpy~IQYLV@4A ziEBY_wG`wqMdt!Q8(rH14+`Zs(M_D;#NN#?fQRmR0=`07B>Tyoux=!jt$=*0!buMd zEraYc6+AW%_psV@tatEb=F2`(hn#m-%CgfRBA2WfB+UUTDU@F$7AjjE=Q2l!nCgVg zYMz}|Ajhaq0{51U**O9RUD>>bLq#1k zokQyt0icBvwM3tWk#>gN?ngaKIFQOg|`_NF<=o-<|YTL-2SENlh_VDdSx z#v=7<(`-77A7HVOSMz+WZl%7^x|F;JKZO3}3bNR!s?W~o7hxI)satO9EwugDsAsY= zOdR4=PZ|UjuTC*BcB?bJDGaU?R>A$Sg%eCS>pp7ha0)>XHlH}e6y#xx`r!$kpj7Y% z+j(Ncp+w>{XOfLz#m|A`HWy(~4W3Oom`!~Y{7qfV!FIb{cVH!$Q?IgpHrFv7{XCr%=Hnq`8T~8^ofMh(bJrQjOwYZ4v|wlx{*#{$JL8mjYrk} zTNxA*y2UYW^}*>>D=WW}aE=*M8YAK6Q(TNQY*!ubk2yzh;b?zcR-BF=MR#J7cWj4@1n_^(R0Ty_G8ZPE%~v zD3Q9ql*(%Qa)bNv^+#=;U620{JczHufAdxOvKlW7(y*x5YtfnI!C>|U{!&%uYw$3E zd+cRfDnz3n@u(%69wtp`>H%Ey&BfIhYVoiD62@)(2n|=+MwuY3YT|K})+0QoOw`dc z!LEse=sva_cZt=bNszwKGUm{`^XtS0wcn# chan = wifiChannel.Create (); + wifiPhy.SetChannel (chan); // 2. setup mesh MeshHelper mesh = MeshHelper::Default (); mesh.SetStackInstaller ("ns3::Dot11sStack"); mesh.SetMacType ("RandomStart", TimeValue (Seconds (0.1))); mesh.SetNumberOfInterfaces (1); NetDeviceContainer meshDevices = mesh.Install (wifiPhy, *m_nodes); - // Two nodes, one device per node, three streams per device - int64_t streamsUsed = mesh.AssignStreams (meshDevices, 0); - NS_TEST_EXPECT_MSG_EQ (streamsUsed, (2*3), "Stream assignment unexpected value"); + // Two devices, four streams per mesh device + streamsUsed += mesh.AssignStreams (meshDevices, streamsUsed); + NS_TEST_ASSERT_MSG_EQ (streamsUsed, (meshDevices.GetN () * 4), "Stream assignment mismatch"); + streamsUsed += wifiChannel.AssignStreams (chan, streamsUsed); + NS_TEST_ASSERT_MSG_EQ (streamsUsed, (meshDevices.GetN () * 4), "Stream assignment mismatch"); // 3. setup TCP/IP InternetStackHelper internetStack; diff --git a/src/mesh/test/dot11s/hwmp-target-flags-regression-test-0-1.pcap b/src/mesh/test/dot11s/hwmp-target-flags-regression-test-0-1.pcap index f0a7e31bad2b8917ed0009c863e9aa265ec3530f..4a0cb28ee36b666bda59ed60e109b12934b7f9ea 100644 GIT binary patch delta 1351 zcmZWpNoZ3+7@p-#UX!$DvoDEh^IoDgqS#igA`$B=xZr}VQbbeKiqxfb#RU(d)q@8G zY55foLV8e9T0N8;dU4;t1-0nSg9!>2D^iahQvK&8PtrDr%*;36{NML~Gs(c_SDSjO z*y+aJXgj;U0v51<+fRz0E9S&?vI(NJwSwCF!+SqOf2A<(2~njp)`2yIXf zb{yMhv-5d)PutnkaV%QJ_Wgxswu7De3&XLHDml9dg?DTxKZ;{c4O-YEoNwgY`B{pX zyMV20rYNclLgWn9f`a6ysPVosXo={Gmt0DNsf5E{)DcRX>10=(WAIoQNW+P#1krh4 zSt&<0`!x^E5knYcV1*Y2Lo>QPSZizw&vs^zi@lO4otfUr)r!tUJ$aK2%5vdY5X<#W zAzIerynkUx*5ZQXGUH;L@>)S4R~d!svSn;kV45M7q02!Bfi^7)*AU)TCT|X|yPVA9 z0$;_1|S=+fM|J|6_YZ_=sDd=>S+{PTNEnIKpwM`GRf1jbNxBU_c-r{>Kw;-Gjxl!> zI=y|IR3he%@CP^!J40}$Ld~r8t)X-&^!hiloB=t16+H~&xS%z-C}efF1`Y&L?0x|; zy-pUG4P!M1IHsprYeF7kpXNYM)PQe@DDxrbGvH=rlGV+JY-Ni5Lwom%x*b0wTw2&XiB~McXnVHDk z2=%i<@^L=zd99VZQi}ynBuWeLlHA*gORFp9{yg(F(#7c^$oi)je*2QSC5|o)xU8qy zo_NuzQ00#8_6S+uvBYwFYcYyxb(6)4ZjX?;Ly{-&xFeG_Mk)KH6kpAN{bIUFm!r{g zzIr(p8(LCYOet~RP1bFdM9n9Nqj3TYen)CDt+SSLc0t~6@sCU%?uc2GmqCmywkyzjb0^Bw{bwIdR_kN3t}pAa_=kYX1Yx^;qZt delta 1349 zcmZWoT}%{L6uxus&i=8>%(^?fvkUIdE)*gP3Kc?^5SOOJH~9$!Ya?BwO$-&4i1DXQ z1z$8aX?J_l7!#e?M5)0pz7`&-ZL-b^LE>CHyd<>ypFddceZ>|(aAk6!YF&!O9Kjf@0}VMxn9>VsX(%|`MB zd^Wwz#}S0T^N^Cl0S|d8?X(Slb>gttz!&6USW44@04oMI6J4@|LXzNTK4j>@4sBoG{mx46e4XDB!VM#W~yGE5W zX^RM4YXoPqJnbOq%OTUHyu+9`TC0um_`#K=lV$j8 zz~31D5>0xn@uXPpg}Pgk#$o%W zJ#Qx~8?!gWHPewt867_OXEmj^rhF(Ah?z_^Qb+s(c+Z*?$=G zDy@m>Cf9$j5fjr?gRLBmt#9RriRmW&S}pG+{i7z=p-)olDAHu^EchzIk@qey)C6=c=L(_yQ65 z!UusEHNy|<4uXlHRKlDwK_e!9fO($VmaSWpHn(|x z&;OkBKj+-B9h2L81N6s4I#|KF69mR;eCc%_`cER=-AO-d0-;WaFPKQ5Z-#bif?H^! zuQtOuZwZ{CF4xmZLLMjhg*DWG2_Z>0Chs4f#KROGrqbIC*u)wO1^kow>}ec zzM5;X);R=(PzXXEi)}09Vf4Nt1$KEXx~DLw!%i3R8#?rB3anHu_WoP~m&-zMM78Kz z4;PlW@LPS}v-F_K6Qmowm`@3)^+ho0wdqI2_cL|cWlBjhaW3fiHpcx(;m?$BTrJzM zB>7_xj1?RHFN26R=rgfgyOQMm734IuZ7-}Txy8QqFsICpQj0yMGWfhI1fQ1L?0}cy z*q5`G;>`K}GE2A)7t7YOcS|xSBc%+y(I9O04X~^DjBC(0Ph^QQ=6KbnS!}b9U)G2F zwN+F&1aAK-dcuTDQ5``S4a=k%D`@6#hxh!|Y%nbIkgmlQxdU8!sl1x{t3X|(gBcdt z*Hv=P{U^&UdaVk2%L6PnUv`}Sq13x4i+~z6p)Fw3NF*DRU5v;u>J7sDc>_#+ zFatJ6A@zs}V$i1RVlb*1a3A!T;Z<8f3l;XBi!&(!6zrZ?*`7aThUR)lSOr`}2Wu?E?3yQ;!w?=(6p zZ2HQihh6Tu7ML3_!u1tzdZ0DR$lt^V{`1{JY z8O=Er~E4tNS#77pUN4to3yXxAa8-(H2h7&iz00|bF;B(kxe^H z#~Cht+{`!=TWmA#5_jg4#(ZabNzbk2PJVI|M&60x^CLUXRIq(VS{-V9IZ|s8&8M;x R(o4Gk4MheZW2_4ElrN50h;=2MWnp6p=3p%21I+ zr|}0dQG0o#3qRmJ-& zrQ#xKUHLt>^C;Wl|C2|I7aoH%ZvKri?Qp#4F=GOKL`uPX6+Bip$JgaGe%0|qSm7h9 zNt;CiBAJ;8>Gv{h(8=Fd`Aj0?4;5wFSi#Yhz#MjiZw`BuVTDBFITh`&N|{IX`b}k& zj1fGQ2x7NtvoI3&_DDSFQ^+l8mHh0}2X+>SLpjXR0a%{nA0AaKRvtK%!xp(8lH(?u zW8Zk8&b6|NQ*sKLPZwg}pDs9dma5omSqHa7jFH(m+0qMKiN;jqzRs%{D^an06o+EE z#Z9uG*jRspRUHf>mE!b1JH8g*$wK43463$KoKTUAXD``6~-rr|0E}plc z%t;uXX3@!1mrLaRmUEQ?xqtb*HU>`J%Y(aJ3~ZFJF1?d4SSNRz+`{&I3^;E)&ukXl zNdB4$h{S`Os}wh1uuX0x1H-7>RrOAQVVm6xIn9C_iGQk+r`1e8YJhRxc|0 zM7oZt@~u!;hNm1VP6uo_QJ#cN3QM43MzNvlO2Q6>bJ;jo+%!BzyhcPc&tJ)E8D@`p ze>m`xQ!sW1ZHSD*;}Vj$g`7CUUN5Z15+rG~TKBwgdC zc#YZD=Q~ahdnjJkLQ*w){9Ea<3W}314d3=B=_ap;z)2rY*6L^vWZ*L&rk4frTtKE9 z{S-$c8r}#brRTHJ%AElHI*zslE!>pf@lCahKG0eJmQ`}R$ttDi|&eBaho?N8u4dU5)Q>N5em~uw$0`24JF~NB^*!BF16z2+6ev}8lm5? zwaE{As?pu5<5%Gfd|bnk@MA6BW;-7&&cI|HzEY_o@6nTyB;2pVOk@kKS;3P=P}SDZ zHnujY=oz+FlnA1>241QcT=4|n*0#WR3C5%2ZaoPX8+ftes0=l6NqO&DElXa3_4f>%@2~?L;C#K z6IbDCb#_nu2&IMVVu18c)r(x4Il)!-m_NOgwWIjD7$E0fP6+T+Jp=n|7J>_BYk(Xa zPl&U1I6GbQj7xf_yjAv-1A{Fh z+_}&SSxN9 zHd{8C=_nXAM9|+MgdF4C;nrdy99V4B5FrzJaG-;MA1?tHj2a@j*$%D+COWd)SMHE$ z@0?RM{H-kmPwCt#A>~UJ;^*aJdj`hXaI}WObSX`;;~RvyB+oa&9`jw~;)-2L6TQDv bxO9301OHP3HZR{axpJ(NYb)>XEav+kA9+1& diff --git a/src/mesh/test/dot11s/hwmp-target-flags-regression-test-2-1.pcap b/src/mesh/test/dot11s/hwmp-target-flags-regression-test-2-1.pcap index deb3d25e7875416d70e3e5c4d0bfff62176a3493..a54e86d27f7174e03a0ffb0b3b15ac0a8ee4374b 100644 GIT binary patch delta 2085 zcmZWqT})eL82*0Rb6QG&pg>y+ZGp+}C~aV9igbm+E~ajs5+f`mEDJ)|*dS)}LL)yh z#tfsB*XYHxi!+2oG?Vngn+?J?6QeF}2_}nX!s4Q2r~wlbFNFDiUwfd?lbq)JdEV!J z-oMj-UcTEmS;PjKW1dnz&`hAjP!Q|18eb0+@;t#8*0>AarV;i|7>?K2;XXAQf5OWs zUPfWg=z=U7W|t1i%er#C8PCZN2Q_N}Ft7-FKcWE?0SL9gL*4<`SQb0dqVcllT4Mt} zth-el#FmY0wl((12MXU00i9xDgbGvnoH?Y?Nq_GiO8JXzxZq75K)lYv3De-@g*FW@ z-J9B>pLJyK+`HRTKKXbz0dtjCPe=}~f>qA^X0l2fbc4OG^lNlKZwibP7E~2+r*Vh4 zyiDAUEo5~{h5e7UlzFmT(5ep`PhvR942zR1`UoGP6i&Jws&I4h7j;VY>TP0yHE|Yh zq6*rbA?1q2Am!Rf5LZI(vbt9;zigONlWJ{bB5n|TE&-#*XgXG;cc2*_E2aFi5v%li z*?=eu{_G?`pvDK2N%E27SFJMmQR`mJubar^!W_MAk6Ck>t!Ip|OK)&@kBrak@ z+|>+5E!F@TjyhzlC62vb(_#&f?^YzAB49KIzZnL34J9yY^BN);1wOfOr_h~v+E_{1 znqCx36+JPh5EyZL;M1%owy4O?xotHvrwXxZJ8XH);4#Hnr$OFe&x6gWW7aIZ^}&Cp zIRDxtoxrv15MRgj#||$z%^~(hcDe;`G7Fd!dh9B!nnS$LlHA|PQ=!cgqHY+moM1O? zLYE?R_2o(dX6r0_HFsN7*Y$%bI2t| zlelT`W$b|uavXM8$u-h*uvl=Ej)2WkOmE{lFScohV~$#OzEomTIkns`Q^>O@OT2~& zXe>C&{wx!S*s@+`q-`I3mf@cOPOMMgL#lOt>8z{* zFJTuEPiv$ea<|?u8%gI+cP21tjnqSGZb?2x!07qJxw09~{5}lZ2TxVR=~?Upktid3 zu@s~BK|y6)i+qS2nLZ%J+!DqO8IF>Xm#~c`2voW9rw{B^vJ&8nkqBAR}*JjIx$(M91Mc!@J(h#H%bN$!|;ArVQ(Ya{k|+8Iti02;^>Uzn+2oV}GC7;J03Fz$ux!38ZZ xljP#>Z89%P7|kzaxY9aek^~*?vLja8_R85wjee3$%(M$WyMWP`kaXvh|39di19JcX delta 2025 zcmZuyZERCj7(O5C?Z?{Q_4}5#>urad+vwQJhj4MwDgIH!P9*~|T4F#nAwpPUoEU22 z53(O@m)C^wr-(n$06La#0~6<%8WmX(STu1a!V)Dq6(q)Gm@InU+ZIaaP1>G&?{l8# zd7ty1)5|aZy`w+Oz^>QEIoJurEPj29%uYFB2g~q}odo(K0l3Dhm`#T3Oa&WV%Pz=p z+M&3Kxc1i&@}&61&!q!!+V9nSQ?w7JonHN_)q1n^8vbBGI6zY@@4~qf&fVgMpZL@8 zAhYq8+;@e}yY(3rB)-H;R+9%zlo5((%SYUz@B4`q> zTXy9KtS(CDVcZs>@55EwR(4hry%1)y8RRAvda83QZ4o^b=JQqpSL>p%*`DJkstIfh zML}_B)^Do`*&veG0NbjA(CyIZAsBE(*vUeIDdN#|7lQBf^i$faQ*DP+IVJ|E(=+-3AeJ$J$ zt>KS}v7ocQn<)9Y92AQh*7)-+1wRLuqIjX!8{r(wEyY^-zE%lpnxZff$??&)0`&K! zWOU4l+MKa@#YQgmb($^=wUEz%VNCu2ZW)gGwUloiCErT7U$}7k06r=0rd7gO#cA| C{0bTX diff --git a/src/mesh/test/dot11s/hwmp-target-flags-regression-test-3-1.pcap b/src/mesh/test/dot11s/hwmp-target-flags-regression-test-3-1.pcap index f9c992c6c02cc28f95b97b5270b4942f1a62bc19..da1767563d78fc365360b3c779a07d37353c8b70 100644 GIT binary patch delta 1148 zcmZXSTSyd97{|YJW@c}+7j4~{-SskFFcMkUTd~mUZmvcmy7dxjk|0J&MoZvB1g~=1xc(BQDBBX6usE(CCW9(7DLqNDM&iUoxPv~b2!ZW=J);QKQrO`>YFO2 z@BOjT3Sq<#n3No`UMv0MkBtn{=Pfv)DELYc>A6;1qbgn^EygnefYZQE+@MZ0&;T6^ zX1S$c?A;)pJkBm0#2$x)Nh(rr8+H*DbwaJ3`rxQUC=ez{AAz=AcAgliBZMi&ofo`? zoD+a%AgB&yDC5l#K$zVK$0AO=MVk)fs1xn^bA^Hdz=&KX0q|W?QtW<6ktT6;`09m> znXX{ct%^37{Dv`6E;hkG#*l%1V7D`sw{bj_En3y@D8k^#zO=oUT=wjSRCT zm!ET5e#XVN87B)8yvAq7H{>EtnEJ^bwz{y@q)+UahADkqj!}C$hY##!?kpEPd2=m_NLGrL_j*b`>95;Q-^CAWqYr zOJOh#Rcl}HMj311cj?{+GCxEZo=$UAAw!rd+!QiD!64L#9!*hsh$*l-Um@g5lm=nB zk)sL~J&DWqbwV4;cN1N6WD{M1&Y5OSx9DNICbs0h3D>0)l?&S+IjE2sd?GKC8jLC> z*;G*&>F{fs;Ui4*sX1RG=B0{4!5Bvs(vfI%{vxCk%iQznhAM=~pCL`7Yhju(|6Wa| QpDC!9+quS)3gt8Z0pTYj9{>OV delta 1146 zcmZXSOH30%7{_O3`@l-OeQ&od?NSWlqqV$58VhJR5rRCTL`kq7NU#Y8g+voC;KhUs ztY4xb(R%P^lxV78VpKfRgAs@xL^LrT5Dt|12tHz*nYNacJB10TE30Ey#$amk+-FCX$uAY~nU#Kx+R>QyR)_j{bo4Tq% zob30YdQ_*y1m$%#_G|-nLxvR+wlax;NX`d!IT#G*ibtVCR@4TMQ;Ukx3a-%%^bPgr zl>4UOfmP9(QS!bX&Ujt!D3#zx+jL_KdN`*k71+EXxg1matxk+=rxC$Jt6!_2#Ws;y z$qQ72j~5jRh2DS%*%dEERU@I^`CM4hD=PGx{V-4z5q{G3M}r^c ziX!B@l?Tft*>g0Z)yF>88>=w0V-8<{Q9}>DMMpO@8uZD(hCV`i73lT2^sMY#sSZB4 zBqLj23FuHGog4W>xnm6CYcOvtA!o}VZaO90+s&mqCS9t4Sy=&%m>_EvFyhXb9o?hj zXrIIgehn{0H`JMr2$zES7G)tFYNhq9fE_YCF-J&sh?R5Gu@EHO3RGDVBz1rh^1maM zkhVN0{1O5}byYbJYT8GGI^-`5Dt86#$k1KRW2k~=+q#f@4l&fV8062PyPO)lqeDJv zfr4dYjG?`oL4Jjc!DPz5ipd{^Vkq#|naH3h+CellT+3lLgVgJCsL(45qZvdklaQ8V zJPZccJU$HXT_yjCMi4lnoM^I^x_A$6bzrG$K^Flx-vL7JvkiB1WHar f%qzPiQR?%I4*8QYpIkH(Xl$vOS(#> diff --git a/src/mesh/test/dot11s/hwmp-target-flags-regression.cc b/src/mesh/test/dot11s/hwmp-target-flags-regression.cc index 1ef53f375..cbecb6366 100644 --- a/src/mesh/test/dot11s/hwmp-target-flags-regression.cc +++ b/src/mesh/test/dot11s/hwmp-target-flags-regression.cc @@ -120,21 +120,26 @@ HwmpDoRfRegressionTest::InstallApplications () void HwmpDoRfRegressionTest::CreateDevices () { + int64_t streamsUsed = 0; // 1. setup WiFi YansWifiPhyHelper wifiPhy = YansWifiPhyHelper::Default (); // This test suite output was originally based on YansErrorRateModel wifiPhy.SetErrorRateModel ("ns3::YansErrorRateModel"); YansWifiChannelHelper wifiChannel = YansWifiChannelHelper::Default (); - wifiPhy.SetChannel (wifiChannel.Create ()); + Ptr chan = wifiChannel.Create (); + wifiPhy.SetChannel (chan); // 2. setup mesh MeshHelper mesh = MeshHelper::Default (); mesh.SetStackInstaller ("ns3::Dot11sStack"); mesh.SetMacType ("RandomStart", TimeValue (Seconds (0.1))); mesh.SetNumberOfInterfaces (1); NetDeviceContainer meshDevices = mesh.Install (wifiPhy, *m_nodes); - // Four nodes, one device per node, three streams per mac - int64_t streamsUsed = mesh.AssignStreams (meshDevices, 0); - NS_TEST_EXPECT_MSG_EQ (streamsUsed, (4*3), "Stream assignment unexpected value"); + // Four devices, four streams per mac + streamsUsed += mesh.AssignStreams (meshDevices, streamsUsed); + NS_TEST_ASSERT_MSG_EQ (streamsUsed, (meshDevices.GetN () * 4), "Stream assignment mismatch"); + streamsUsed += wifiChannel.AssignStreams (chan, streamsUsed); + NS_TEST_ASSERT_MSG_EQ (streamsUsed, (meshDevices.GetN () * 4), "Stream assignment mismatch"); + // 3. setup TCP/IP InternetStackHelper internetStack; internetStack.Install (*m_nodes); diff --git a/src/mesh/test/dot11s/pmp-regression-test-0-1.pcap b/src/mesh/test/dot11s/pmp-regression-test-0-1.pcap index 1e4f6787bb71061599bc577ffddc9456a42f7251..cd23c55bd1fab0d96ae0101ed6fd442d14586cfa 100644 GIT binary patch delta 189 zcmcc2cA0I04AbSm6Xlecvj0wWQe*o1cVboo)6Rbr&&V*v|DX6Ojw%2DWG_Y;PCo`l zh9Cw8hMIz3|l5TsWEkJnV6NpF6atEUW(;tYq*LDVm0HAol#6ro*987jhTsweznYSKin9Rv6&&t36V(BtV zh-_ha!Dzygn_8R!R1F3bLMLx$QesjFovgzwDRKfs{_2Fu9L!2gKnf_&7s`RG9{{QF BH9r6V diff --git a/src/mesh/test/dot11s/pmp-regression-test-1-1.pcap b/src/mesh/test/dot11s/pmp-regression-test-1-1.pcap index 1614b6f0a04e48b22b80956c66243ab362f314aa..f1bc1333fa70e947a61001b67a43362f838c1c7d 100644 GIT binary patch delta 189 zcmcc2cA0I03{&>siE>IH(n*b}_TR*;1g7496VJ#n-TpW6RUFgo|C7BKWjK%hXJ80o z0OE-sB`0?t$_@~jLD zUO<*EvxLZBh8K(`EV-%089?P=&^>SRb|xhzAf>}BDdNwFE`RI8WDaH}rmPPjdA@lZ G$npSd!8O|e delta 187 zcmcc2cA0I03=_kaiE>IH(n*a;XzRqR1SX}e6VJ#n6>OdODvrru+hi|B8P1e#3=BaG zKs@oIoS42LL`k BGD-jd diff --git a/src/mesh/test/dot11s/pmp-regression.cc b/src/mesh/test/dot11s/pmp-regression.cc index 7ff8f3754..586bc0037 100644 --- a/src/mesh/test/dot11s/pmp-regression.cc +++ b/src/mesh/test/dot11s/pmp-regression.cc @@ -87,19 +87,23 @@ PeerManagementProtocolRegressionTest::CreateNodes () void PeerManagementProtocolRegressionTest::CreateDevices () { + int64_t streamsUsed = 0; // 1. setup WiFi YansWifiPhyHelper wifiPhy = YansWifiPhyHelper::Default (); YansWifiChannelHelper wifiChannel = YansWifiChannelHelper::Default (); - wifiPhy.SetChannel (wifiChannel.Create ()); + Ptr chan = wifiChannel.Create (); + wifiPhy.SetChannel (chan); // 2. setup mesh MeshHelper mesh = MeshHelper::Default (); mesh.SetStackInstaller ("ns3::Dot11sStack"); mesh.SetMacType ("RandomStart", TimeValue (Seconds (0.1))); mesh.SetNumberOfInterfaces (1); NetDeviceContainer meshDevices = mesh.Install (wifiPhy, *m_nodes); - // Three nodes, one device per node, two streams (one for mac, one for plugin) - int64_t streamsUsed = mesh.AssignStreams (meshDevices, 0); - NS_TEST_EXPECT_MSG_EQ (streamsUsed, (3*2), "Stream assignment unexpected value"); + // Two devices, four streams per device (one for mac, one for phy, + // two for plugins) + streamsUsed += mesh.AssignStreams (meshDevices, 0); + NS_TEST_ASSERT_MSG_EQ (streamsUsed, (meshDevices.GetN () * 4), "Stream assignment mismatch"); + wifiChannel.AssignStreams (chan, streamsUsed); // 3. write PCAP if needed wifiPhy.EnablePcapAll (CreateTempDirFilename (PREFIX)); } diff --git a/src/mesh/test/flame/flame-regression-test-0-1.pcap b/src/mesh/test/flame/flame-regression-test-0-1.pcap index 66572ed1e279a102f1c0fd0530132e9f7b5b3f9c..31990152156409c162fce276e04c33d34e856960 100644 GIT binary patch delta 600 zcmYL_Pe@cz6vpql=gqtGuJ1YX#_7q#FmDnufY7E%PJ z5hVwUNpR7O1yNuWs2d~O25GcvQB;d+o6s)n+$-VY!gtSi?(h5F`>?m!v!Eg9K_LbO z9~#f^q(5*(KEvrsiFQLj&SeB$3)>a2zv>J6Qb_5#H29wNx^DOFyj#%%mS_j|%Ad+U z9Kn8hIN;%NIjg5DRVsT&alXZoBKzWM_&@P>wnPuvy%jp1%lXQBSCCRy#^BvnL7#J5 zdMqcXFWKsHEHCJElF};g+?W8@Q8M}DO>iAg`36T>b4Ob9JzQaJnZJ47m;}eM`;95E zoEKsCDd2F74*D^;g!gAW2fCn*d^|&Ix{RAVvW(UigWv9XmO)p-4m1^?26Rd*p~17P zIWv=C_G?;?iu5XuXfQJPDD_>cbuL$Zm-;K}0DRI=4!fB%c&Dk{lFv)$=9OInLG}C) zHoF4%k&2y*-GS`}dDadTX zZ37pdYxi>>v>E*Ia$8R>ZtL?)+BM2Dy>D5&Mm0K6tiuUh80I_g$7jCtrZc`V*>geOlJs3x z=swIyPmvGJKxrY)is4GP=&n0DnZo(V?#^s{@S9tUXVXq^ifB6cnRpaipg~nJailAb8e`sceo=gIi_R4nn`av z&I<@O^C+%z(5$}??Pqhen7NGa9w?gjV)EStJ`i{X+SDn!;VO(CDtpU{n;<+=maG_X zuC1)cANd>rt-G_qm&fXV{J-Q;DtlF&inN{L1uwy4tj!ctjC#u2JmeS07k6rVg^6$M z;(9i}>{kJ!jzh;W&I>a}Az*bCd8^d~(39*oY;f8z`dJ>vieraibhYakp5{LmgD%yB z3WPKtH1PCT#(uBEiQVHFV+<LlosmS&Pb`NKb|<+uh+!{Hhi$0Q zw{QzDy>_kXG;M1& diff --git a/src/mesh/test/flame/flame-regression-test-1-1.pcap b/src/mesh/test/flame/flame-regression-test-1-1.pcap index c1bf48b78cedee38559434376bb36507013824bd..aa94c4f91b394c03098673410764186c2cd81de7 100644 GIT binary patch delta 750 zcmX|;O-L0{6vyY@Gc)(yd1G&;(f8iyEi%l z*r6YxpJO8F58h??UazLhT)uqRP?6D8keL|}BAeAH*63*(w{Tr=qZi_XYd-cEjMNCy zVR|(#;rx4C)0#wi6VAqb9I;&NHEU_XR>RgMUyh&@Xt35m9_k=r26PAr{eI z2Y;~uj`a~dkq$)%4-dwULX&te7%4_Y`K-`xJj6G#2!?JD{LL!hd_TdTZip>BqTT)Y zoCox8Kd$gR6mJq-g%n=0sxV*TJ$`776PR~E5sP*N6E3KN(oUi5 zfqO8btJc+t2%ZWprA2`tV8Pjn4W5TToK<+V#l+4{AzpSPI$DYE z+<XZ|HGi@l~x*x!}NXenHxW7CH t*PdAlF<1VQoW#zGZg{=dRv;^gU|DFnM=mHm`)uVqi&H@kTI+1-`v)>A;duZ6 delta 1034 zcmZ`%T}V_x6uvX(?)_PJuXp#Z?p|HpRme)W6iF(BvLb^(Fo<&RQ}z%MJyb}=MrG7P zWLn!7X%~0oHcx0V4Y51=no=LYXJQ$U~5rMHGIm# zbjXLtduiU%FlHuACOBQThDT-w4|u>^!*D6hUxu-iHt|y3O- zRN(S3s(11}r#S61!X2K37iy!Ejw)@)(nrgSwb^)!*ok0&jpH^gH$OLjq2?ZA37&p({TRWr?- z2QX2Ueu!y~NRsPqzxc?IMl~*0*ICS31!_IVa4lSoQ+7Sp zncn?J_9aG7TvA>Rl?Bf7IB9zXUoO?)1O!ZJkCbROs$;gS9^{VirVE+-BX}AuI8CGa|H>bu0lAlTrM$&yKs@4M z(D_7tX+vVB7zS-)jiGcJ-Jot;jZs2JGIOAR%P|Bo2InN zT+GGu)OyRr@kBLMHrjGHaKh`Q2CCNl@BwFf51a;WxFxJP zC)Lf{2z8B?=B0r#&>32~BO#qSzU!1;vgS8J>NarNF9Gf*ohy*_UwNr&7ZCYJ(F;nL z@z>SYhZy8)w7r+H#P3{6`&gR}mxBgo!xEkb>-40aHM?nt&wee=TK3~mO7pA@+X@@< zJ}!ix>E5!oWR}T`eQii7P>B*X*TzU!ILW_1|+FcTN+eMA%qYsMFWNdu{qz&1riGfX6L#*7>-a)~ z`<7(vI_qwC3WvQsR`>wqCBs#($Ke#ZMfRa&h$lo{oO96^6HrnNx!Vo5$qwBR-%)ru z6&Lo$a}Iui0kN6F!&Z?Ov1Zj^!8aLF7yRMJg(6;pEMBxvi`N-!StH_4HvZWQ7XpUg zWr)jm9R|rJ4Oo$7Ud169!OA0!X%X&t#m9R+Yl<65f*$xxHc85jkxdI)Euf=XWgKtH zD^Qx|@m7!2WP2LF$qBG$xOr;QDdV6FaLMWT>p5Vz3DJ9}Giz=gwsK(5tE!CiPJj>8 zhX3}dwHN)ZMmdQ|=5bxx*hpCZhuMDs-Q|~wI&98brq+RE8Skh7hmsp`|DYssj!mzA zEJ)LgyIx&q{vlHxv%2@@%V@^zvdIbiXS!Fr z8RCB#rKY2m=;U_O(Mos*`}|1Qudv}igVCc(PXkwcn$ chan = wifiChannel.Create (); + wifiPhy.SetChannel (chan); // 2. setup mesh MeshHelper mesh = MeshHelper::Default (); mesh.SetStackInstaller ("ns3::FlameStack"); mesh.SetMacType ("RandomStart", TimeValue (Seconds (0.1))); mesh.SetNumberOfInterfaces (1); NetDeviceContainer meshDevices = mesh.Install (wifiPhy, *m_nodes); - // Three nodes, one device per node - int64_t streamsUsed = mesh.AssignStreams (meshDevices, 0); - NS_TEST_EXPECT_MSG_EQ (streamsUsed, 3, "Stream assignment unexpected value"); + // Three devices, two streams per device + streamsUsed += mesh.AssignStreams (meshDevices, streamsUsed); + NS_TEST_ASSERT_MSG_EQ (streamsUsed, (meshDevices.GetN () * 2), "Stream assignment unexpected value"); + streamsUsed += wifiChannel.AssignStreams (chan, streamsUsed); + NS_TEST_ASSERT_MSG_EQ (streamsUsed, (meshDevices.GetN () * 2), "Stream assignment unexpected value"); // 3. setup TCP/IP InternetStackHelper internetStack; internetStack.Install (*m_nodes);