From f645a4bc4611f6bf5c837a7f96e2db7b50c00942 Mon Sep 17 00:00:00 2001 From: Tom Henderson Date: Fri, 17 Aug 2012 06:00:53 -0700 Subject: [PATCH] Update OLSR tests and reference traces for new random variable usage --- src/olsr/helper/olsr-helper.cc | 42 ++++++++++++++++++ src/olsr/helper/olsr-helper.h | 13 ++++++ src/olsr/test/bug780-0-0.pcap | Bin 93496 -> 92760 bytes src/olsr/test/bug780-1-0.pcap | Bin 91988 -> 92884 bytes src/olsr/test/bug780-2-0.pcap | Bin 104786 -> 104274 bytes src/olsr/test/bug780-test.cc | 5 ++- src/olsr/test/hello-regression-test.cc | 5 ++- .../test/olsr-hello-regression-test-0-1.pcap | Bin 452 -> 452 bytes .../test/olsr-hello-regression-test-1-1.pcap | Bin 452 -> 452 bytes .../test/olsr-tc-regression-test-0-1.pcap | Bin 2372 -> 2372 bytes .../test/olsr-tc-regression-test-1-1.pcap | Bin 3444 -> 3444 bytes .../test/olsr-tc-regression-test-2-1.pcap | Bin 2372 -> 2372 bytes src/olsr/test/tc-regression-test.cc | 5 ++- 13 files changed, 67 insertions(+), 3 deletions(-) diff --git a/src/olsr/helper/olsr-helper.cc b/src/olsr/helper/olsr-helper.cc index 447cbd06b..357a90cd3 100644 --- a/src/olsr/helper/olsr-helper.cc +++ b/src/olsr/helper/olsr-helper.cc @@ -21,6 +21,7 @@ #include "ns3/olsr-routing-protocol.h" #include "ns3/node-list.h" #include "ns3/names.h" +#include "ns3/ptr.h" #include "ns3/ipv4-list-routing.h" namespace ns3 { @@ -82,4 +83,45 @@ OlsrHelper::Set (std::string name, const AttributeValue &value) m_agentFactory.Set (name, value); } +int64_t +OlsrHelper::AssignStreams (NodeContainer c, int64_t stream) +{ + int64_t currentStream = stream; + Ptr node; + for (NodeContainer::Iterator i = c.Begin (); i != c.End (); ++i) + { + node = (*i); + Ptr ipv4 = node->GetObject (); + NS_ASSERT_MSG (ipv4, "Ipv4 not installed on node"); + Ptr proto = ipv4->GetRoutingProtocol (); + NS_ASSERT_MSG (proto, "Ipv4 routing not installed on node"); + Ptr olsr = DynamicCast (proto); + if (olsr) + { + currentStream += olsr->AssignStreams (currentStream); + continue; + } + // Olsr may also be in a list + Ptr list = DynamicCast (proto); + if (list) + { + int16_t priority; + Ptr listProto; + Ptr listOlsr; + for (uint32_t i = 0; i < list->GetNRoutingProtocols (); i++) + { + listProto = list->GetRoutingProtocol (i, priority); + listOlsr = DynamicCast (listProto); + if (listOlsr) + { + currentStream += olsr->AssignStreams (currentStream); + break; + } + } + } + } + return (currentStream - stream); + +} + } // namespace ns3 diff --git a/src/olsr/helper/olsr-helper.h b/src/olsr/helper/olsr-helper.h index 058658fd8..763fb4afd 100644 --- a/src/olsr/helper/olsr-helper.h +++ b/src/olsr/helper/olsr-helper.h @@ -83,6 +83,19 @@ public: */ void Set (std::string name, const AttributeValue &value); + /** + * Assign a fixed random variable stream number to the random variables + * used by this model. Return the number of streams (possibly zero) that + * have been assigned. The Install() method of the InternetStackHelper + * should have previously been called by the user. + * + * \param stream first stream index to use + * \param c NodeContainer of the set of nodes for which the OlsrRoutingProtocol + * should be modified to use a fixed stream + * \return the number of stream indices assigned by this helper + */ + int64_t AssignStreams (NodeContainer c, int64_t stream); + private: /** * \internal diff --git a/src/olsr/test/bug780-0-0.pcap b/src/olsr/test/bug780-0-0.pcap index 39c78b3caeae9239b0a7b5fc9f38e52e81b3c17f..32b471a3f13466c5fc543b3e714d64e80f72176a 100644 GIT binary patch delta 8263 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

=Y!B?m$x1__GHN>;pN$vmL!r)6Pr}2^BfeKRL;> zkaX-rt3SJ*j?$iBHe{moxD2#AJpDx^-=n3<2vMxqSD(2ModSUle-Zts7;ssf3yJUt z`0Pj|tJj;XR?_|10;h+Y&-Nxck`fp9!zA5g<1>(%1s9&n!0L$4l0FuZVlghx?vK>m zBMZHl*ay9s$2TU1l3w)QG%@5@*~300m6qO?6}y1t^~H)ERTEnFG#higzb`V~O2+zO zomBJDiS-|dwz6|Pc+~5M)IZ@`F#A3W1xp!Pmg64lnS*kMLFj|pAARr)e5Dw1Yl|3o ztSof^Nz(Es7ZU_4pJTseV|LmP#xmU{60&6gvhpp~BHP2tQwNgiM8n=4MoinxgK*bZ zj0Wb&Av5@-&kBZOr5_oBR2`IyCdIJNrVYZdKXu4nU6PBudVaEOjLE}Ly!K$^)vpsoI~=8dK0~B(|F5)C%_9X!OCi0L3Jy?m-vcYvV1x zlCXIN=tB7S!Ug4=0nQZ#@dL2Fpa!KD3YU^cAyT(kozWN_A7P9d<16kw5$>EBjdtWD F^MB+=OyLo%972{TM2h%HO)Yqbqkr6h_fDh{p| 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 diff --git a/src/olsr/test/bug780-1-0.pcap b/src/olsr/test/bug780-1-0.pcap index f82ff2516f14558e936eaaf6f75a26f1f64aeb17..2f1409d97bf2feb973b14487f6b365a8a65fde73 100644 GIT binary patch delta 9948 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 T;|@>#Iziyx`!>2ESn8|V+b&77US#s6 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 P)Z{=$UFQ3LL2PFLt_2n< delta 60 zcmX@Ye1v&|472cThKY$%6D?JlHM!U)CfYOq|G_lzt<=Q5y3F4tnJ2z=XYOuio!rPM QH93$`mzn=WO*GjICJFu9S@ TnVp4!fg$EQh%GfakWmu=-g*@; delta 68 zcmX@Ye1v&|472fKhKY$%6D?JlIhoieCfYOWFfvbkD>ZSiF7qitAj_S3dq3;sMn-3L W76t}}N9WmqY^llYi~^Gr86^R>l@pNw diff --git a/src/olsr/test/olsr-tc-regression-test-0-1.pcap b/src/olsr/test/olsr-tc-regression-test-0-1.pcap index 54fcb3fdafebc89cd1bd1ea7b83244a58aae5500..e0c81000921add8c6a7daf985a2e0ccc94b3a17b 100644 GIT binary patch delta 402 zcmX>ibVO)^40HE0=85tW6aTYMTx7@200jSf*e1%yvNHjhw?DE@j%Ssh%*N=&{K}hs z@@XKuh|y7)nUR5kgNu<7NHH+50I~l2$#JX-lcSj2*g@RjZwz3y&p>L~kkkU%3#89 zKe0rjn#%>0Qrf}{Hn)w%jhzR`U*iPgXEIkRumK&KfU1EHsGwsF<79ibOs2@z$*b5B zQRVr8^6sUqljYenncrD3P5#fG$}RvDGihd@+|7<=m=I7RlojHWZyabo0ZD##W&%5{ Hi^B~7^@B@{ delta 406 zcmX>ibVO)^4D-|`#)RPh4cj&Hx0Trm#+wk7Z{9GQB)lCdaeNPiABEVpd~g zoqQU|E@E^PVPs@r;NW6pWCp2c0phHE%wWkNCZHr6n&ifv5L2Epy0HW07;Kf9z>1Hd zD+WngG_ZrMv|{#R_K0NwD_q8mW-13zq5UZ)utF&oFXot12wRBNZE^w&3#Z?FHijCY znwrTMStTd8u|%ReiU%lFR?7g?p2=+ZhXrUy0;&Q&pn?Yl43q8IGMRLxCa+>kM3v_U z%D;KZG+CYNZa} z=48I2!~4v5RK6~Kd{Y8GCYTLAS0+(9VQhyuJNW1h;-+5wZ`{4Ka}B(B%GPbVvAR8^&s{lIZxV(-PgzYZVc>p0(hMbInlx!{wj@=|;8AiO zb|<;jS5gM{>R_w4Q@-vc-tlhq7d%CO@%MrI2)q;a@rS!(0U>rU9hp9K8Ms`RSm;{$ E1q)ekd;kCd delta 534 zcmZ9Jze~eF6vuNvl1r1;igaj;kkZkig8l_9w8{-F9Yh6{I&`p`po^3uA`YTxeCQw| z=;G+46v4qxQV|ECgGHZakhHK+k z#~r*7;a(Ql?zZ7Ni-MxCl+vJLJJ2AK^`|++4F`Hy@8~*IxB~^6PY|MMrbP(zk~n^2 zoG8-?D+zDky=Mx}GK7r~T)gvBZ)r)Ork!Oe!nGji35k}WQYn}0c~huXKDeY;3y{;7 zgS?6SYnLKZ7hbLBxbk-N61*FnwXglLP7TSv*FDaGBcZg&{<)zw(bI$nI|YWA4@O5( zvRWGS#R|($`hzx1N!?#4^9=ON(2PUKudQn82pN&|=>p1j25uvg?WJ%cyu_>(^2E_I z`{}ingafO}+&OF)!8bbu4kI}6LsU4mC7ZeN?x-$C@c&~K4~_YCJK-~(sAN-L6vm^q ISl}i80cC1vzyJUM diff --git a/src/olsr/test/olsr-tc-regression-test-2-1.pcap b/src/olsr/test/olsr-tc-regression-test-2-1.pcap index b79daf3cb6093c5a89109ed0512fb60d4b8ebc26..844deda639b4a7cebb54bb5e693100dba3c62f29 100644 GIT binary patch delta 401 zcmX>ibVO)^40GB<=85tW6aTYMTx7@200jSf*e1%yvM~Xf1zRS^u_{bvWAtKv<;_0% zG^_mNB1T6MW<~}E4lYJUAjQDI0>r`J7{HQ2Oh8FCG|9rrY?I@GI-fDRu>s{6rcVPK zYQ+rU8eEus3TVeMbgdjfrC-<~<}PDKGZ!T3>Bj^%SBk}pIog5&%x+`x;$)h}z)%B} zubF(2RdVttmPk}5@c^ZEX|Vv6XEIkRumRnjfU1BGsKC~lWwJe6CR1eVibVO)^4D-|`#)9zW7(O2%u^B!ljB+CC$lknF{`n$ zPCgA}7cn}DFfuYQaBwj)GK18!0P!?tMzF#tCO38vKWiT|Sn)HEVm2hjKsJM|G80(R zh#8AyeJvZvnIDm>hVi~}SmoYmEqnHGeEYzJG$Eq+{ip7grWj(~HZ7g1#e)HKF zYJk!;lP|JLPX5FaiRuO(pwwC;kb^Us4gatJjZZ*Tzz0-dwvc(UJzFM|uGHjJY>BAy z{6P6PFPSFGvjYu?gt$+P1I;r6Kt%_(Ks>XG-Hlxc$TtaOn0%ij70iDAfoXC!M*=U3 FrvPDOM&SSe diff --git a/src/olsr/test/tc-regression-test.cc b/src/olsr/test/tc-regression-test.cc index 5b507b87e..f1e5acf23 100644 --- a/src/olsr/test/tc-regression-test.cc +++ b/src/olsr/test/tc-regression-test.cc @@ -58,7 +58,8 @@ TcRegressionTest::~TcRegressionTest() void TcRegressionTest::DoRun () { - SeedManager::SetSeed (12345); + RngSeedManager::SetSeed (12345); + RngSeedManager::SetRun (7); CreateNodes (); Simulator::Stop (m_time); @@ -92,6 +93,8 @@ TcRegressionTest::CreateNodes () InternetStackHelper internet; internet.SetRoutingHelper (olsr); internet.Install (c); + int64_t streamsUsed = olsr.AssignStreams (c, 0); + NS_TEST_EXPECT_MSG_EQ (streamsUsed, 3, "Should have assigned 2 streams"); // create wifi channel & devices NqosWifiMacHelper wifiMac = NqosWifiMacHelper::Default ();