determining client and server on a connection

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi! I'm just getting started working with ceph, and decided to tackle
fixing up the wireshark dissector which isn't working properly when you
use the kernel's fs client.

This page says that the server always sends its banner first:

    http://docs.ceph.com/docs/master/dev/network-protocol/?highlight=protocol

...but that's not true with the Linux kernel client. The client and
server send their banners and addresses concurrently, and the client
often gets there first. The wireshark dissector relies on the server
sending its banner first however, so it quickly mixes the two up and
things go south from there.

Given the way the protocol works, the only way I can see to reliably
determine client and server is to read enough bytes to get to the
client's address when the server sends it, and see whether it matches
the receiver's address/port.

Is there a simpler way to do this that I'm missing?

Also, it looks like this shouldn't be a problem for the msgr2 protocol
since the initial exchange doesn't involve sending addresses. Is that
the case?

Thanks,
-- 
Jeff Layton <jlayton@xxxxxxxxxx>

--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux