docs/interfaces.txt: add documentation to describe interface differences
[mirror/winof/.git] / docs / interfaces.txt
1 WinOF provides several userspace interfaces.  The main application\r
2 interfaces are given below, along with a brief description of each.\r
3 \r
4 \r
5 libibverbs\r
6 OFA interface available on windows and linux\r
7         This is the only linux verbs interface, which was ported to\r
8         windows to support portability.  This sits over winverbs.\r
9         It provides low abstraction to the hardware, but does not\r
10         expose windows specific features, like overlapped operations\r
11         for asynchronous control.  This is a good choice for low-level\r
12         access, with portability between windows and linux.\r
13 \r
14 WinVerbs\r
15 OFA windows interface\r
16         Lowest level windows verbs interface for applications.  Most\r
17         of the other interfaces sit over this interface.  This provides\r
18         the lowest abstraction to the hardware, while also exposing\r
19         windows specific features.  This is a good choice for\r
20         low-level access on windows.\r
21 \r
22 DAPL (Direct Access Programming Library)\r
23 Industry standard RDMA interface for multiple OS's\r
24         Hardware providers may support this interface, even if not\r
25         part of OFA.  This sits over libibverbs and ibal.  This provides a\r
26         higher level of abstraction, but provides the most portability.\r
27 \r
28 Network Direct (ND)\r
29 Microsoft defined interface for windows\r
30         Hardware providers may support this interface, even if not\r
31         part of OFA.  This sits over winverbs and ibal.  This provides\r
32         a higher level of abstraction, but may provide access to the\r
33         most hardware on Windows platforms.\r
34 \r
35 IBAL (InfiniBand Access Layer)\r
36 OFA windows interface\r
37         Older windows interface.  This is currently a peer to winverbs,\r
38         with a longer term goal of moving it over winverbs.  The\r
39         interface will be supported going forward.  This provides low\r
40         level abstraction, but does not expose windows specific features.\r