23 #include "ns3/simulator.h"
26 #include "ns3/epc-helper.h"
27 #include "ns3/packet-sink-helper.h"
28 #include "ns3/udp-echo-helper.h"
29 #include "ns3/point-to-point-helper.h"
30 #include "ns3/csma-helper.h"
31 #include "ns3/internet-stack-helper.h"
32 #include "ns3/ipv4-address-helper.h"
33 #include "ns3/inet-socket-address.h"
34 #include "ns3/packet-sink.h"
35 #include <ns3/ipv4-static-routing-helper.h>
36 #include <ns3/ipv4-static-routing.h>
37 #include "ns3/boolean.h"
38 #include "ns3/uinteger.h"
39 #include "ns3/config.h"
69 std::vector<UeDlTestData>
ues;
80 virtual void DoRun (
void);
108 remoteHostContainer.
Create (1);
111 internet.
Install (remoteHostContainer);
118 ipv4h.
SetBase (
"1.0.0.0",
"255.0.0.0");
119 ipv4h.
Assign (internetDevices);
133 for (std::vector<EnbDlTestData>::iterator enbit =
m_enbDlTestData.begin ();
145 ues.
Create (enbit->ues.size ());
158 epcHelper->
AddEnb (enb, lteEnbNetDevice);
165 for (uint32_t u = 0; u < ues.
GetN (); ++u)
177 uint16_t
port = 1234;
187 client.SetAttribute (
"Interval",
TimeValue (interPacketInterval));
188 client.SetAttribute (
"PacketSize",
UintegerValue (enbit->ues[u].pktSize));
189 apps = client.Install (remoteHost);
192 enbit->ues[u].clientApp = apps.
Get (0);
204 for (std::vector<EnbDlTestData>::iterator enbit =
m_enbDlTestData.begin ();
208 for (std::vector<UeDlTestData>::iterator ueit = enbit->ues.begin ();
209 ueit < enbit->ues.end ();
212 NS_TEST_ASSERT_MSG_EQ (ueit->serverApp->GetTotalRx (), (ueit->numPkts) * (ueit->pktSize),
"wrong total received bytes");
236 std::vector<EnbDlTestData> v1;
239 e1.
ues.push_back (f1);
244 std::vector<EnbDlTestData> v2;
247 e2.
ues.push_back (f2_1);
249 e2.
ues.push_back (f2_2);
254 std::vector<EnbDlTestData> v3;
262 e3.
ues.push_back (f3_1);
264 e3.
ues.push_back (f3_2);
266 e3.
ues.push_back (f3_2);
267 std::vector<EnbDlTestData> v4;
273 std::vector<EnbDlTestData> v5;
276 e5.
ues.push_back (f5);
280 std::vector<EnbDlTestData> v6;
283 e6.
ues.push_back (f6);
287 std::vector<EnbDlTestData> v7;
290 e7.
ues.push_back (f7);
294 std::vector<EnbDlTestData> v8;
297 e8.
ues.push_back (f8);