corrected test vector of lte-pss-ff-mac-scheduler test suite

This commit is contained in:
Nicola Baldo
2013-06-04 12:41:52 +02:00
parent 205297a4dd
commit 67fe1d4001
2 changed files with 22 additions and 22 deletions

View File

@@ -85,7 +85,7 @@ LenaTestPfFfMacSchedulerSuite::LenaTestPfFfMacSchedulerSuite ()
// DOWNLINK - DISTANCE 4800 -> MCS 16 -> Itbs 20 (from table 7.1.7.2.1-1 of 36.213)
// 1 user -> 24 PRB at Itbs 20 -> 903 -> 903000 bytes/sec
// 1 user -> 24 PRB at Itbs 15 -> 903 -> 903000 bytes/sec
// 3 users -> 903000 among 3 users -> 301000 bytes/sec
// 6 users -> 903000 among 6 users -> 150500 bytes/sec
// 12 users -> 903000 among 12 users -> 75250 bytes/sec
@@ -104,7 +104,7 @@ LenaTestPfFfMacSchedulerSuite::LenaTestPfFfMacSchedulerSuite ()
AddTestCase (new LenaPfFfMacSchedulerTestCase1 (15,0,4800,60200,49600,errorModel), TestCase::EXTENSIVE);
// DOWNLINK - DISTANCE 6000 -> MCS 14 -> Itbs 13 (from table 7.1.7.2.1-1 of 36.213)
// 1 user -> 24 PRB at Itbs 15 -> 775 -> 775000 bytes/sec
// 1 user -> 24 PRB at Itbs 13 -> 775 -> 775000 bytes/sec
// 3 users -> 775000 among 3 users -> 258000 bytes/sec
// 6 users -> 775000 among 6 users -> 129200 bytes/sec
// 12 users -> 775000 among 12 users -> 64590 bytes/sec

View File

@@ -161,8 +161,8 @@ LenaTestPssFfMacSchedulerSuite::LenaTestPssFfMacSchedulerSuite ()
// Traffic1 info
// UDP traffic: payload size = 100 bytes, interval = 1 ms
// UDP rate in scheduler: (payload + RLC header + PDCP header + IP header + UDP header) * 1000 byte/sec -> 132000 byte/rate
// Maximum throughput = 4 / ( 1/2196000 + 1/903000 + 1/621000 + 1/421000 ) = 720930 byte/s
// 132000 * 4 = 528000 < 720930 -> estimated throughput in downlink = 132000 byte/sec
// Maximum throughput = 4 / ( 1/2196000 + 1/903000 + 1/775000 + 1/421000 ) = 765051 byte/s
// 132000 * 4 = 528000 < 765051 -> estimated throughput in downlink = 132000 byte/sec
std::vector<uint16_t> dist1;
dist1.push_back (0); // User 0 distance --> MCS 28
dist1.push_back (4800); // User 1 distance --> MCS 16
@@ -178,13 +178,13 @@ LenaTestPssFfMacSchedulerSuite::LenaTestPssFfMacSchedulerSuite ()
estThrPssDl1.push_back (132000); // User 1 estimated TTI throughput from PSS
estThrPssDl1.push_back (132000); // User 2 estimated TTI throughput from PSS
estThrPssDl1.push_back (132000); // User 3 estimated TTI throughput from PSS
AddTestCase (new LenaPssFfMacSchedulerTestCase2 (dist1,estThrPssDl1,packetSize1,1,errorModel), TestCase::EXTENSIVE);
AddTestCase (new LenaPssFfMacSchedulerTestCase2 (dist1,estThrPssDl1,packetSize1,1,errorModel), TestCase::QUICK);
// Traffic2 info
// UDP traffic: payload size = 200 bytes, interval = 1 ms
// UDP rate in scheduler: (payload + RLC header + PDCP header + IP header + UDP header) * 1000 byte/sec -> 232000 byte/rate
// Maximum throughput = 4 / ( 1/2196000 + 1/903000 + 1/621000 + 1/421000 ) = 720930 byte/s
// 232000 * 4 = 928000 > 720930 -> estimated throughput in downlink = 720930 / 4 = 180232 byte/sec
// Maximum throughput = 4 / ( 1/2196000 + 1/903000 + 1/775000 + 1/421000 ) = 765051 byte/s
// 232000 * 4 = 928000 > 765051 -> estimated throughput in downlink = 765051 / 4 = 191263 byte/sec
std::vector<uint16_t> dist2;
dist2.push_back (0); // User 0 distance --> MCS 28
dist2.push_back (4800); // User 1 distance --> MCS 16
@@ -196,17 +196,17 @@ LenaTestPssFfMacSchedulerSuite::LenaTestPssFfMacSchedulerSuite ()
packetSize2.push_back (200);
packetSize2.push_back (200);
std::vector<uint32_t> estThrPssDl2;
estThrPssDl2.push_back (180232); // User 0 estimated TTI throughput from PSS
estThrPssDl2.push_back (180232); // User 1 estimated TTI throughput from PSS
estThrPssDl2.push_back (180232); // User 2 estimated TTI throughput from PSS
estThrPssDl2.push_back (180232); // User 3 estimated TTI throughput from PSS
AddTestCase (new LenaPssFfMacSchedulerTestCase2 (dist2,estThrPssDl2,packetSize2,1,errorModel), TestCase::EXTENSIVE);
estThrPssDl2.push_back (191263); // User 0 estimated TTI throughput from PSS
estThrPssDl2.push_back (191263); // User 1 estimated TTI throughput from PSS
estThrPssDl2.push_back (191263); // User 2 estimated TTI throughput from PSS
estThrPssDl2.push_back (191263); // User 3 estimated TTI throughput from PSS
AddTestCase (new LenaPssFfMacSchedulerTestCase2 (dist2,estThrPssDl2,packetSize2,1,errorModel), TestCase::QUICK);
// Test Case 3: heterogeneous flow test in PSS
// UDP traffic: payload size = [100,200,300] bytes, interval = 1 ms
// UDP rate in scheduler: (payload + RLC header + PDCP header + IP header + UDP header) * 1000 byte/sec -> [132000, 232000, 332000] byte/rate
// Maximum throughput = 3 / ( 1/2196000 + 1/903000 + 1/621000 ) = 945450 byte/s
// 132000 + 232000 + 332000 = 696000 < 945450 -> estimated throughput in downlink = [132000, 232000, 332000] byte/sec
// Maximum throughput = 3 / ( 1/2196000 + 1/903000 + 1/775000 ) = 1051482 byte/s
// 132000 + 232000 + 332000 = 696000 < 1051482 -> estimated throughput in downlink = [132000, 232000, 332000] byte/sec
std::vector<uint16_t> dist3;
dist3.push_back (0); // User 0 distance --> MCS 28
dist3.push_back (4800); // User 1 distance --> MCS 16
@@ -406,11 +406,11 @@ LenaPssFfMacSchedulerTestCase1::DoRun (void)
clientApps.Add (ulClient.Install (ueNodes.Get (u)));
}
serverApps.Start (Seconds (0.001));
clientApps.Start (Seconds (0.001));
serverApps.Start (Seconds (0.030));
clientApps.Start (Seconds (0.030));
double statsStartTime = 0.001; // need to allow for RRC connection establishment + SRS
double statsDuration = 1;
double statsStartTime = 0.04; // need to allow for RRC connection establishment + SRS
double statsDuration = 0.5;
double tolerance = 0.1;
Simulator::Stop (Seconds (statsStartTime + statsDuration - 0.0001));
@@ -647,11 +647,11 @@ LenaPssFfMacSchedulerTestCase2::DoRun (void)
clientApps.Add (ulClient.Install (ueNodes.Get (u)));
}
serverApps.Start (Seconds (0.001));
clientApps.Start (Seconds (0.001));
serverApps.Start (Seconds (0.030));
clientApps.Start (Seconds (0.030));
double statsStartTime = 0.001; // need to allow for RRC connection establishment + SRS
double statsDuration = 1.0;
double statsStartTime = 0.04; // need to allow for RRC connection establishment + SRS
double statsDuration = 0.5;
double tolerance = 0.1;
Simulator::Stop (Seconds (statsStartTime + statsDuration - 0.0001));