OLD | NEW |
1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */ | 1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */ |
2 /* | 2 /* |
3 * Copyright (c) 2015 NITK Surathkal | 3 * Copyright (c) 2015 NITK Surathkal |
4 * | 4 * |
5 * This program is free software; you can redistribute it and/or modify | 5 * This program is free software; you can redistribute it and/or modify |
6 * it under the terms of the GNU General Public License version 2 as | 6 * it under the terms of the GNU General Public License version 2 as |
7 * published by the Free Software Foundation; | 7 * published by the Free Software Foundation; |
8 * | 8 * |
9 * This program is distributed in the hope that it will be useful, | 9 * This program is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
42 * | 42 * |
43 * \brief Ared Queue Disc Test Item | 43 * \brief Ared Queue Disc Test Item |
44 */ | 44 */ |
45 class AredQueueDiscTestItem : public QueueDiscItem { | 45 class AredQueueDiscTestItem : public QueueDiscItem { |
46 public: | 46 public: |
47 /** | 47 /** |
48 * Constructor | 48 * Constructor |
49 * | 49 * |
50 * \param p packet | 50 * \param p packet |
51 * \param addr address | 51 * \param addr address |
52 * \param protocol protocol | |
53 */ | 52 */ |
54 AredQueueDiscTestItem (Ptr<Packet> p, const Address & addr, uint16_t protocol)
; | 53 AredQueueDiscTestItem (Ptr<Packet> p, const Address & addr); |
55 virtual ~AredQueueDiscTestItem (); | 54 virtual ~AredQueueDiscTestItem (); |
56 virtual void AddHeader (void); | 55 virtual void AddHeader (void); |
57 virtual bool Mark(void); | 56 virtual bool Mark(void); |
58 | 57 |
59 private: | 58 private: |
60 AredQueueDiscTestItem (); | 59 AredQueueDiscTestItem (); |
61 /** | 60 /** |
62 * \brief Copy constructor | 61 * \brief Copy constructor |
63 * Disable default implementation to avoid misuse | 62 * Disable default implementation to avoid misuse |
64 */ | 63 */ |
65 AredQueueDiscTestItem (const AredQueueDiscTestItem &); | 64 AredQueueDiscTestItem (const AredQueueDiscTestItem &); |
66 /** | 65 /** |
67 * \brief Assignment operator | 66 * \brief Assignment operator |
68 * \return this object | 67 * \return this object |
69 * Disable default implementation to avoid misuse | 68 * Disable default implementation to avoid misuse |
70 */ | 69 */ |
71 AredQueueDiscTestItem &operator = (const AredQueueDiscTestItem &); | 70 AredQueueDiscTestItem &operator = (const AredQueueDiscTestItem &); |
72 }; | 71 }; |
73 | 72 |
74 AredQueueDiscTestItem::AredQueueDiscTestItem (Ptr<Packet> p, const Address & add
r, uint16_t protocol) | 73 AredQueueDiscTestItem::AredQueueDiscTestItem (Ptr<Packet> p, const Address & add
r) |
75 : QueueDiscItem (p, addr, protocol) | 74 : QueueDiscItem (p, addr, 0) |
76 { | 75 { |
77 } | 76 } |
78 | 77 |
79 AredQueueDiscTestItem::~AredQueueDiscTestItem () | 78 AredQueueDiscTestItem::~AredQueueDiscTestItem () |
80 { | 79 { |
81 } | 80 } |
82 | 81 |
83 void | 82 void |
84 AredQueueDiscTestItem::AddHeader (void) | 83 AredQueueDiscTestItem::AddHeader (void) |
85 { | 84 { |
(...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
349 uint32_t test10 = st.GetNDroppedPackets (RedQueueDisc::UNFORCED_DROP); | 348 uint32_t test10 = st.GetNDroppedPackets (RedQueueDisc::UNFORCED_DROP); |
350 NS_TEST_EXPECT_MSG_LT (test10, test9, "Test 10 should have less unforced drops
than test 9"); | 349 NS_TEST_EXPECT_MSG_LT (test10, test9, "Test 10 should have less unforced drops
than test 9"); |
351 } | 350 } |
352 | 351 |
353 void | 352 void |
354 AredQueueDiscTestCase::Enqueue (Ptr<RedQueueDisc> queue, uint32_t size, uint32_t
nPkt) | 353 AredQueueDiscTestCase::Enqueue (Ptr<RedQueueDisc> queue, uint32_t size, uint32_t
nPkt) |
355 { | 354 { |
356 Address dest; | 355 Address dest; |
357 for (uint32_t i = 0; i < nPkt; i++) | 356 for (uint32_t i = 0; i < nPkt; i++) |
358 { | 357 { |
359 queue->Enqueue (Create<AredQueueDiscTestItem> (Create<Packet> (size), dest
, 0)); | 358 queue->Enqueue (Create<AredQueueDiscTestItem> (Create<Packet> (size), dest
)); |
360 } | 359 } |
361 } | 360 } |
362 | 361 |
363 void | 362 void |
364 AredQueueDiscTestCase::EnqueueWithDelay (Ptr<RedQueueDisc> queue, uint32_t size,
uint32_t nPkt) | 363 AredQueueDiscTestCase::EnqueueWithDelay (Ptr<RedQueueDisc> queue, uint32_t size,
uint32_t nPkt) |
365 { | 364 { |
366 Address dest; | 365 Address dest; |
367 double delay = 0.01; // enqueue packets with delay to allow m_curMaxP to adap
t | 366 double delay = 0.01; // enqueue packets with delay to allow m_curMaxP to adap
t |
368 for (uint32_t i = 0; i < nPkt; i++) | 367 for (uint32_t i = 0; i < nPkt; i++) |
369 { | 368 { |
(...skipping 17 matching lines...) Expand all Loading... |
387 */ | 386 */ |
388 static class AredQueueDiscTestSuite : public TestSuite | 387 static class AredQueueDiscTestSuite : public TestSuite |
389 { | 388 { |
390 public: | 389 public: |
391 AredQueueDiscTestSuite () | 390 AredQueueDiscTestSuite () |
392 : TestSuite ("adaptive-red-queue-disc", UNIT) | 391 : TestSuite ("adaptive-red-queue-disc", UNIT) |
393 { | 392 { |
394 AddTestCase (new AredQueueDiscTestCase (), TestCase::QUICK); | 393 AddTestCase (new AredQueueDiscTestCase (), TestCase::QUICK); |
395 } | 394 } |
396 } g_aredQueueDiscTestSuite; ///< the test suite | 395 } g_aredQueueDiscTestSuite; ///< the test suite |
OLD | NEW |