[En-Nut-Discussion] NETBUF handling
Dusan Ferbas
dferbas at etech.cz
Fri Jun 5 22:20:16 CEST 2009
Hi Nathan & Harald,
If there are plans to do st with network buffers, I wish to have a
possibility to preallocate a space for whole packet.
I understand, that you want to save RAM space, so I checked all
places, where NutNetBufAlloc() is called.
In most cases the length of a packet is known prior to first alolocation.
There can be a modification, that will allocate a contiguous area and
setting all following bits + a NBAF_CONTIG
NBAF_APPLICATION | NBAF_TRANSPORT | NBAF_NETWORK | NBAF_DATALINK
An ethernet driver with DMA can benefit from this.
Also 1 call for allocation.
What do you think ?
At 11:24 5.6.2009, you wrote:
> >
> > Today fatal errors occur almost never. May be it's the right time to
> > change this weird NETBUF handling now.
>
>
>This would make it much easier for other people to work on networking code.
>
>I had thought about using a linked list or tree-like structure for
>netbufs (maybe even
>with reference counting and garbage collection). That would be a
>huge undertaking
>but would allow for more than the current 4 layer model, and cloning
>them could
>just be aliasing them at the layer that you were interested in --
>NutIpOutput's
>handling of broadcast would just pass the same netbuf head to all
>the interfaces
>and they would all generate their own headers for the same IP packet.
>
>Nathan
Dusan
More information about the En-Nut-Discussion
mailing list