06-11-2009 05:20 AM - edited 03-06-2019 06:12 AM
Hi all, can anyone tell me what the input and output queue are on an interface? i gather these are only used when there is congestion ? please advise
06-11-2009 06:29 AM
Both are a place to store packets until something is done with the packet such that is no longer needs to be stored.
On the input side, usually there's little need to queue packets unless the device can't logically process them as quickly as they are received.
At the interface level, hardware almost always is designed to accept a packet and save it. Once it has been saved, something else must decide what to do with the received packet, generally either discard it or logically forward it.
On the output side, it takes time to transmit the packet, so it's queued until tranmitted.
If you had a device with the same bandwidths in and out, the device will accept the packet on input interface and queue it. Some logical process will examine the packet in the input queue, decide to discard it or forward it to an output queue. The output interface will transmit the packet and remove it from the output queue. In this example, there wasn't any congestion.
If the output link had less bandwidth than the input link, back-to-back arrival of input packets will usually queue on the output side.
06-11-2009 07:35 AM
hi
so is the queue the port buffer?
how big can the queue be ?
06-11-2009 10:54 AM
Port buffers are often the term used for queues used directly by port interfaces. I believe on Cisco equipment, they are often refered to as tx or rx rings. Usually don't support a large queue size except on the faster interfaces. You can modify, on some interfaces, the tx-ring size.
Software queues, since they are usually stored in RAM can be quite large. Common defaults for input queues, on Cisco routers, I believe to be about 75, and for output, about 40. Often both can be increased/decreased by the configuration. Believe a common Cisco software queue (logical) max is about 4K (packets).
06-12-2009 02:21 AM
hi there
so to clarify
the port has port buffers?
and software queues?
please clafify what each is used for ?
06-12-2009 03:42 AM
Port buffers are queues maintained by the interface port's software and are often very limited in size. This because actual RAM used for port buffers might be tied to a card and/or other special hardware support that allows port to push/pull bits very quickly.
Software queues are queues maintained by the IOS. They would normally be stored in main RAM. They are used to build some kind of ordered list of packets waiting for some processing. One common usage is to hold packets in a queue waiting for a port buffer to accept them.
Since port buffer queues are designed for speed, they also tend to only support very simple queuing, such as FIFO.
Software queues, being managed by IOS, often can support much more complicated queuing. On routers, besides FIFO, you have CQ, PQ, WFQ, CBWFQ, etc., for output software queues.
On switches, since so much queuing is directly tied to the hardware, software queuing is much more limited. A switch's IOS might only use software queuing for control plane functions, e.g. sending pending syslog entries, etc., using a FIFO queue.
06-12-2009 09:15 AM
Joseph giving a lot of good answers here and getting just a meager "3" ?
Someone should reassess his use of the rating system.
My rating, a "5".
06-12-2009 07:54 AM
I recommend reading chapter one of the CiscoPress book Cisco Express Forwarding. It does a real good overview of the process your asking about.
http://books.google.com/books?id=8V_TAAAACAAJ&dq=cisco+express+forwarding
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide