Sunday, July 12, 2009

[AIT09] Output Queue

This question is from Thein Tun Aung:

How is an output queue of a node implemented ?
What will happen if the buffer capacity of output queue is exceeded ?

4 comments:

  1. (Hasanain/106000) The output queue of a node is implemented as a part of a link, so because of this reason users must specify the queue-type while creating links.
    When the buffer capacity of the output queue is exceeded then the packet will be dropped by specify the dropping point with the help of object drophead_ using the command drop-target
    e.g. $queue_ drop-target $ drophead_

    ReplyDelete
  2. The output queue of the node can be implemented by :

    $ns duplex-link node1 node2 bandwidth delay queue-type:

    If the buffer overflow happens, it dropp the packets.

    ReplyDelete
  3. So, queue is not a part of a node, after all.

    And, how does the queue knows that its buffer is full?

    ReplyDelete
  4. Well Sir, there is a function enque(p) first checks whether the incoming packet will cause buffer overflow. If so, it will drop the packet either from the front or from the tail. where function drop(p)
    belongs to class Connector.

    ReplyDelete