Software router state of the art

William Herrin herrin-nanog at
Sat Jul 26 19:46:50 UTC 2008

On Sat, Jul 26, 2008 at 1:40 PM, Petri Helenius <petri at> wrote:
> William Herrin wrote:
>> But cards like the Intel Pro/1000 have 64k of memory for buffering
>> packets, both in and out. Few have very much more than 64k. 64k means
>> 32k to tx and 32k to rx. Means you darn well better generate an
>> interrupt when you get near 16k so that you don't fill the buffer
>> before the 16k you generated the interrupt for has been cleared. Means
>> you're generating an interrupt at least for every 10 or so 1500 byte
>> packets.
> This is not true in the bus master dma mode how the cards are usually used.
> The mentioned memory is used only as temporary storage until the card can
> DMA the data into the buffers in main memory. Most Pro/1000 cards have
> buffering capability up to 4096 frames.


I'll confess to some ignorance here. We're at the edge of my skill set.

The pro/1000 does not need to generate an interrupt in order to start
a DMA transfer? Can you refer me to some documents which explain in
detail how a card on the bus sets up a DMA transfer?


William D. Herrin ................ herrin at bill at
3005 Crane Dr. ...................... Web: <>
Falls Church, VA 22042-3004

More information about the NANOG mailing list