ns-3
ns3::dsdv::PacketQueue Class Reference

DSDV Packet queue. More...

#include <dsdv-packet-queue.h>

List of all members.

Public Member Functions

 PacketQueue ()
 Default c-tor.
bool Enqueue (QueueEntry &entry)
 Push entry in queue, if there is no entry with the same packet and destination address in queue.
bool Dequeue (Ipv4Address dst, QueueEntry &entry)
 Return first found (the earliest) entry for given destination.
void DropPacketWithDst (Ipv4Address dst)
 Remove all packets with destination IP address dst.
bool Find (Ipv4Address dst)
 Finds whether a packet with destination dst exists in the queue.
uint32_t GetCountForPacketsWithDst (Ipv4Address dst)
 Get count of packets with destination dst in the queue.
uint32_t GetSize ()
 Number of entries.
Fields
uint32_t GetMaxQueueLen () const
void SetMaxQueueLen (uint32_t len)
uint32_t GetMaxPacketsPerDst () const
void SetMaxPacketsPerDst (uint32_t len)
Time GetQueueTimeout () const
void SetQueueTimeout (Time t)

Detailed Description

DSDV Packet queue.

When a route is not available, the packets are queued. Every node can buffer up to 5 packets per destination. We have implemented a "drop front on full" queue where the first queued packet will be dropped to accommodate newer packets.


Member Function Documentation

bool ns3::dsdv::PacketQueue::Enqueue ( QueueEntry entry)

Push entry in queue, if there is no entry with the same packet and destination address in queue.

For Brock Paper comparision

References GetCountForPacketsWithDst(), ns3::Ipv4Header::GetDestination(), ns3::Packet::GetUid(), NS_LOG_DEBUG, and NS_LOG_FUNCTION.


The documentation for this class was generated from the following files: