> I checked nfiniBand TM Architecture Release 1.2.1 VOLUME 1 - GENERAL > SPECIFICATIONS, for RDMA IP CM service, > the private data for CM REQ is defined in: > Table 532 IP Addressing CM REQ Message Private Data Format > So you mean even for RDMA IB, the private data format is also > required, could you point me a little more detail?
The RDMA IP CM service Annex in the IB spec defines a range of service IDs that apply to the RDMA CM. If a service ID falls into this range, the private data format should also match. For example, an app could start with AF_INET, use an alternate method to resolve the IP address to a GID (such as a user space daemon), then provide the mapped address directly to the kernel using AF_IB. This prevents the kernel from needing to perform a duplicate address resolution. The listening side of the connection may still be using AF_INET. In this example, the client side is still required to format the private data as indicated in the Annex. I.e. the original IP addressing that was used should appear as part of the private data. The port space (which maps to the service ID) needs to be included as part of the check that determines the format of the private data, and not simply the address family. - Sean