Hi, On the RMPP send side, while the Payload Length field in the last segment is clear that it indicates the number of valid bytes in Transferred Data, there seems to be some ambiguity in the optional Payload Length field in the first segment. I think it can work either way but I also think the intent was to reflect the valid bytes. Maybe it is this way to allow flexibility (choice in the implementation). What is the correct interpretation ? Should I enter a comment on this ? Thanks.
-- Hal IBA 1.2 p.775 line 37 In the first packet of an RMPP transfer (RMPPFlags.First=1), PayloadLength may indicate the sum of the lengths, in bytes, of the TransferredData fields in all packets of the entire multipacket response; this is done by using a nonzero value for PayloadLength in the first packet. IBA 1.2 p. 776 line 8 In the last packet of an RMPP transfer (RMPPFlags.Last=1), PayloadLength indicates the number of valid bytes in the TransferredData field, allowing data transfers that are not an integral multiple of the length of the TransferredData field. A transfer terminates when either: (a) a packet containing RMPPFlags.Last=1 is received; or (b) a nonzero PayloadLength was given in the first packet of a transfer, and a packet is received containing sufficient TransferredData bytes to equal or exceed the PayloadLength originally provided. If case (b) occurs and RMPPFlags.Last is not 1 for that packet, the Receiver sends an ABORT packet with RMPPStatus of "Inconsistent Last and PayloadLength" and terminates the transfer. _______________________________________________ openib-general mailing list [email protected] http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
