https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=13213

--- Comment #9 from Parav Pandit <paravpan...@yahoo.com> ---
(In reply to Chuck Lever from comment #7)
> (In reply to Parav Pandit from comment #6)
> > (In reply to Chuck Lever from comment #5)
> > > The destination port for the client-to-server conversation does not match
> > > either the source port or the destination port for the server-to-client
> > > conversation. This defeats the RPC dissector's conversation-based XID
> > > matching mechanism.
> > 
> > Its IP over IB.
> 
> To be clear, NFS/RDMA is not the same as NFS on TCP on IPoIB.
> 
> > so TCP/NFS dissector would look for src and dest port of TCP?
> 
> Yes, NFS on TCP on IPoIB uses the port information established by the TCP
> layer.
> 
> > While infiniband.c would do conversations based on src and dest qp.
> 
> Correct. Note, however, that the dest QPN for the client-to-server
> conversation is not the same as the dest QPN for the server-to-client
> conversation.
> 
> > Thats what I see in the logs and in trace as below.
> > 
> > > update_sport frame=13 updating sport = 546, dport=525
> > > get_conversation_for_call frame=13 sport=55562 dport=111 
> > > conv=0x7f205dab1830
> 
> Neither of the dport values is 20049, which is the standards-designated TCP
> port used for NFS/RDMA. So I would conclude from your log that these are not
> TCP ports.
> 
> > Do packet-rpc.c find conversation based on IB srcport, destport or TCP 
> > ports?
> 
> The current logic in packet-rpc.c treats PT_TCP and PT_IBQP the same, and
> expects that the pinfo will be set up so that:
> 
>   In the client-to-server direction: < addr A, port A, addr B, port B >
> 
>   In the server-to-client direction: < addr B, port B, addr A, port A >
> 
> But for PT_IBQP, we have:
> 
>   In the client-to-server direction: < addr A, -1, addr B, dest QPN B >
> 
>   In the server-to-client direction: < addr B, -1, addr A, dest QPN A >
> 

My patch has src_qp instead of -1 for srcport.

> packet-rpc.c's XID-matching mechanism doesn't work with those tuples. Just
> setting up the src port in the pinfo doesn't help because "dest QPN A" !=
> "dest QPN B" .
> 
> To make PT_IBQP work like PT_TCP, maybe you'd need:
> 
>   In the client-to-server direction: < addr A, dest QPN A, addr B, dest QPN
> B >
> 
>   In the server-to-client direction: < addr B, dest QPN B, addr A, dest QPN
> A >

-- 
You are receiving this mail because:
You are watching all bug changes.
___________________________________________________________________________
Sent via:    Wireshark-bugs mailing list <wireshark-bugs@wireshark.org>
Archives:    https://www.wireshark.org/lists/wireshark-bugs
Unsubscribe: https://www.wireshark.org/mailman/options/wireshark-bugs
             mailto:wireshark-bugs-requ...@wireshark.org?subject=unsubscribe

Reply via email to