All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ricardo Dias <rdias@suse.com>
To: Sage Weil <sage@newdream.net>
Cc: Ceph Development <ceph-devel@vger.kernel.org>
Subject: Re: Why does messenger sends the address of himself and of the connecting peer
Date: Mon, 23 Oct 2017 09:47:36 +0100	[thread overview]
Message-ID: <1508748456.10018.15.camel@suse.com> (raw)
In-Reply-To: <alpine.DEB.2.11.1710201536440.26711@piezo.us.to>

On Fri, 2017-10-20 at 15:40 +0000, Sage Weil wrote:
> On Fri, 20 Oct 2017, Ricardo Dias wrote:
> > In the current messenger protocol, upon accepting a new connection,
> the
> > messenger sends it's address and the connecting peer address along
> with
> > the banner string. Why does the connecting peer need these
> addresses?
> > Moreover, the connecting peer uses the connecting peer address
> (sent
> > from the server) to set as it's own address.
> > 
> > What happens if the network is rewriting addresses  because of NAT,
> or
> > whatever other strange reasons?
> 
> There are two cases:
> 
> 1) client -> server connections.  These always are initiated in one 
> directly.  The self address thing is included there partly so that
> the 
> client can discover what its effective (public) address is.  In the
> case 
> of the OSD, the initial osd -> mon connection allows the osd to learn
> what 
> it's public IP address will be (we advertise our address as the one 
> that is used to connect to the mon).
> 
> 2) server <-> server connections, e.g., mon<->mon, osd<->osd, mds<-
> >mds.  
> Here, connections can be opened in either direction.  I believe here
> it is 
> just used as a sanity check.
> 
> > I also saw that the code that encodes these addresses have a
> comment
> > saying "// legacy". Should we remove these addresses from the new
> V2
> > protocol, or do we still need them?
> 
> I think we'll still need them, since new clients will still need to 
> connect to old servers, and new servers will need to allow old
> clients to 
> connect.

The Messenger will still support the V1 protocol, so if a new client
needs to talk with an old server it will instantiate a V1 messenger.
Therefore, I think we can drop this from the V2 protocol, right?

> 
> HTH?
> 
> sage
> 
> --
> To unsubscribe from this list: send the line "unsubscribe ceph-devel" 
> in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
-- 
Ricardo Dias
Senior Software Engineer - Storage Team
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton,
HRB 21284
(AG Nürnberg)

  reply	other threads:[~2017-10-23  8:47 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-20 15:25 Why does messenger sends the address of himself and of the connecting peer Ricardo Dias
2017-10-20 15:30 ` Jason Dillaman
2017-10-20 15:40 ` Sage Weil
2017-10-23  8:47   ` Ricardo Dias [this message]
2017-10-23 12:14     ` Sage Weil

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1508748456.10018.15.camel@suse.com \
    --to=rdias@suse.com \
    --cc=ceph-devel@vger.kernel.org \
    --cc=sage@newdream.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.