Hi,
Since Solaris VM is being redesigned I want to solicit input on
networking requirements for VM. I had a discussion with the VM team and
below is the summary.
Solaris networking needs special VM support in the following three areas.
1) Send
2) Receive
3) Jumbo Frames
The current VM provides decent support to achieve zero copy on both send
and receive. The reason networking doesn't use zero copy on send is due
to lack of appropriate interfaces and hopefully this will change with
extended socket interface. Lack of use of zero copy on receive in
networking is due to the fact that it is difficult to implement and
requires HW support which has not been present in the NIC's.
The new VM will maintain current zero copy support (for example segkpm).
However, as is the case today, it is important to note that the new VM
will not be provide support for immutable buffers with asynchronous
semantics. This means networking interfaces for zero copy will have to
provide protection against buffer contents changing before the buffer is
consumed.
Zero copy on receive will be possible only if the HW supports it. For
example if the HW supports RDMA. A new requirement being imposed by the
new VM is that the driver should support recall capability for the
memory it owns.
Currently on SPARC network drivers can not allocate contiguous physical
memory larger than a page size. This is an issue for providing support
for Jumbo Frames. The VM team will try to address this issue but this is
a low priority for them.
In summary it seems that except for the support for large contiguous
physical memory on SPARC, networking does not require any special
features from the new VM except possibly better segkpm performance on SPARC.
Comments?
Regards,
Rao.
_______________________________________________
networking-discuss mailing list
[email protected]