[ofw] port RDS to OFW - request for input...

Sean Hefty sean.hefty at intel.com
Wed Jul 22 13:58:15 PDT 2009


>Implement the entire protocol in user mode.
>
>There are a few advantages to this approach:
>1) From the existing libraries perspective one can use ND and RDMA cm.
>2) From the performance perspective this has advantage when it comes to
>packet rate and latency (this is because one can send data and receive
>it without going into the kernel). Achieving maximum BW should also not
>be a problem with this approach. Handling interrupts should have
>somewhat higher overhead.

I thought about this option.  If Oracle uses one process with multiple threads
on Windows, rather than using separate processes, this might work well.  The
Windows port of libibverbs and librdmacm aren't that far off from the Linux
kernel interfaces for verbs and the rdma_cm.  Porting the Linux kernel RDS
driver to a Windows userspace library might not be that hard...?

Another alternative that occurred to me was to integrate the RDS code directly
into the winverbs driver, exposed through a new endpoint type or something like
that.  I haven't given this idea much thought - just trying to brainstorm what
options are available, and is why I wanted to know how Oracle interfaces to the
RDS code.

>For the data path there is no choice but to use IBAL (currently there
>are no winverbs in the user).

It could speak directly to the HCA drivers for data path operations.

Yet another option for RDS is to separate out the RDS protocol (use of verbs)
from the connection establishment (use of the rdma_cm) and tackle each of these
as separate problems.

- Sean




More information about the ofw mailing list