Re: [manet-dlep-rg] TCP clients, servers, and discovery (WAS: Re: notes DLEP meeting @ IETF88)

Teco Boot <teco@inf-net.nl> Fri, 15 November 2013 17:15 UTC

Return-Path: <teco@inf-net.nl>
X-Original-To: manet-dlep-rg@ietfa.amsl.com
Delivered-To: manet-dlep-rg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6D5E211E81ED for <manet-dlep-rg@ietfa.amsl.com>; Fri, 15 Nov 2013 09:15:18 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.224
X-Spam-Level:
X-Spam-Status: No, score=-3.224 tagged_above=-999 required=5 tests=[AWL=-0.225, BAYES_00=-2.599, J_CHICKENPOX_21=0.6, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9HyF1ePl74rC for <manet-dlep-rg@ietfa.amsl.com>; Fri, 15 Nov 2013 09:15:13 -0800 (PST)
Received: from mail-ee0-f48.google.com (mail-ee0-f48.google.com [74.125.83.48]) by ietfa.amsl.com (Postfix) with ESMTP id 49BDE11E81CF for <manet-dlep-rg@ietf.org>; Fri, 15 Nov 2013 09:15:13 -0800 (PST)
Received: by mail-ee0-f48.google.com with SMTP id e49so1207626eek.35 for <manet-dlep-rg@ietf.org>; Fri, 15 Nov 2013 09:15:12 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:content-type:mime-version:subject:from :in-reply-to:date:cc:content-transfer-encoding:message-id:references :to; bh=JjKpuydGz7gzuLUEOcL6Xfd7DfSb2I2rvHe6XsaiiYA=; b=jBoZg9RfZNKNsnkKQInHXLf+ezCnJqEN5hUEY2cPp1BbjqZabP2TdN/94vBW1r+XZV CAjg+8weFQaIe9IN9sT5KVJdtkwO4N7QIjlgm78XnRMNWTF3kjGv9y1lU4vnSekvo92m brmwwnVKyq+A/EzC2xS+fVGzpvDLkbPdjKyyhNg2fjgcMLJNbm2rIqET7IlLUqzQ2vIr f14Phx0ZwocmARrEt87tvIaIucnYNezohlC9fKf1zSD9iPprbdUwTJmnoRn/w6nryV2T u59K3VWiZNW6YMjQZy8MGUAgDRgVig4jJhMO+hIUAq2b/mZPOCl9Gp4wVkOexmLl6Jdr KfJA==
X-Gm-Message-State: ALoCoQn83wtAc72uPEoUEfgMv3I4oxlA05/n+Fb+ZvyJ7sm7XhtF9FskVbWBn02jPST6xU4rFUJX
X-Received: by 10.15.52.129 with SMTP id p1mr893293eew.95.1384535712299; Fri, 15 Nov 2013 09:15:12 -0800 (PST)
Received: from [10.175.173.95] (524A14A4.cm-4-3a.dynamic.ziggo.nl. [82.74.20.164]) by mx.google.com with ESMTPSA id u46sm8146453eep.17.2013.11.15.09.15.10 for <multiple recipients> (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 15 Nov 2013 09:15:11 -0800 (PST)
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 7.0 \(1822\))
From: Teco Boot <teco@inf-net.nl>
In-Reply-To: <76A74457-8C16-42B3-BA0B-52E9B2F3B922@cisco.com>
Date: Fri, 15 Nov 2013 18:15:27 +0100
Content-Transfer-Encoding: quoted-printable
Message-Id: <B156BB77-3BD7-499C-B1FA-69E997319DF2@inf-net.nl>
References: <72FB622921C13746AD6349E70A8D9F307D9192F7@EXC-MBX03.tsn.tno.nl> <CAK=bVC85XAXR3Zkwq+JwELF-dvgrKwbowWCvwvnjeVn7VStnbw@mail.gmail.com> <72FB622921C13746AD6349E70A8D9F307D9193CD@EXC-MBX03.tsn.tno.nl> <5A8A5085482DA84995F4E70F5093AB50268E6C@XCH-BLV-503.nw.nos.boeing.com> <B2BA430A-F4E6-4DED-A7BB-7282A22802B7@inf-net.nl> <5A8A5085482DA84995F4E70F5093AB50269139@XCH-BLV-503.nw.nos.boeing.com> <DAAF2F4E-8918-4708-8D68-4792A919541B@inf-net.nl> <5A8A5085482DA84995F4E70F5093AB502691C9@XCH-BLV-503.nw.nos.boeing.com> <EBD19831-B87C-4F37-B028-E00687B59FE1@inf-net.nl> <5A8A5085482DA84995F4E70F5093AB5026926A@XCH-BLV-503.nw.nos.boeing.com> <51F083CF-62B8-4858-9C3D-5D48BFE6D8BE@inf-net.nl> <5A8A5085482DA84995F4E70F5093AB50269348@XCH-BLV-503.nw.nos.boeing.com> <57D01331-8D30-4A02-A2BA-B644DBA7A808@inf-net.nl> <5A8A5085482DA84995F4E70F5093AB50269934@XCH-BLV-503.nw.nos.boeing.com> <4840CBE1-5710-4AA1-A6F2-B8A65DE98F25@inf-net.nl> <B177F831FB91F242972D0C35F6A0733106FB0F3F@SUCNPTEXM01.c om.ad.uk.ds.corp> <CAM4esxQx4L+=8j_EsKf6zJf=405Wn1fffUEfhRq092N3=72SoQ@mail.gmail.com> <CAGnRvuo2iRwFGYB18gjbJnZQhc2rkWhOr1voXE0zkOhGVhq1sQ@mail.gmail.com> <6EB41DAA-4AD6-4E1D-B497-90275673A508@inf-net.nl> <64E876E6-8679-4449-B511-C296E9FE2FC8@cisco.com> <69077813-1CE2-4FC6-B68F-7F0B13D67A4D@inf-net.nl> <f59a8090-e5e2-487a-83ad-892f5c0774d7@SUCNPTEXC01.COM.AD.UK.DS.CORP> <979927df-e29f-4d41-b5c6-4c3c0ec70db7@SUCNPTEXC01.COM.AD.UK.DS.CORP> <32D9AC84-DF7C-49D0-83A9-A2EC31BB8ABC@inf-net.nl> <76A74457-8C16-42B3-BA0B-52E9B2F3B922@cisco.com>
To: Stan Ratliff <sratliff@cisco.com>
X-Mailer: Apple Mail (2.1822)
Cc: "DLEP Research Group (manet-dlep-rg@ietf.org)" <manet-dlep-rg@ietf.org>
Subject: Re: [manet-dlep-rg] TCP clients, servers, and discovery (WAS: Re: notes DLEP meeting @ IETF88)
X-BeenThere: manet-dlep-rg@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: DLEP Radio Group <manet-dlep-rg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/manet-dlep-rg>, <mailto:manet-dlep-rg-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/manet-dlep-rg>
List-Post: <mailto:manet-dlep-rg@ietf.org>
List-Help: <mailto:manet-dlep-rg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/manet-dlep-rg>, <mailto:manet-dlep-rg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 15 Nov 2013 17:15:18 -0000

Op 15 nov. 2013, om 17:37 heeft Stan Ratliff (sratliff) <sratliff@cisco.com> het volgende geschreven:

> 
> On Nov 15, 2013, at 7:11 AM, Teco Boot <teco@inf-net.nl> wrote:
> 
>> 
>> Op 15 nov. 2013, om 11:33 heeft Taylor, Rick <Rick.Taylor@cassidian.com> het volgende geschreven:
>> 
>>> Okay, just to back it up a bit, and try to get some clarity in the debate.
>>> 
>>> As I understand it, we are all happy with:
>>> 
>>>  Server                                          Client
>>>  ======================================================
>>> 
>>> 1)  TCP Listen()
>>> 
>>> 2*) Peer_Discovery (UDP) ------------Multicast----------->
>>>    + Version
>>> 
>>> 3)  <--------------------------------------- TCP Connect()
>>> 
>>> 4)  <---------------------------------- Peer_Request (TCP)
>>>                                               + Version
>>>                                     + optional extras 1
> 
> As long as all supported metric TLVs are part of "optional extras 1", I'm OK with this. 
> 
>>> 
>>> 5)  Peer_Accept (TCP) ----------------------------------->
>>>    + Status
>>>    + Version
>>>    + optional extras 2
>>> 
>>> *Step 2 may be replaced with a-priori configuration, mDNS, etc...
>>> 
>>> What we are arguing about is who should be the Client, and who should be the Server.
>>> 
>>> So, I am now calling for everyone's answer to the following question:
>>> 
>>> "Should the modem be the Client or the Server in the above diagram, and why?"
>> 
>> Modem should be the server:
>> - modems are servers today, for link metrics, OA&M etc.
>> - modems provide a service, so they act as server
>> - modems are "thumb" devices and can be reach from anywhere in the Internet, if permitted. No need to configure the modem for it, except setting access rights. No need to fire an "ignition packet".
>> - modems can easily handle many TCP sockets, either TCP server or TCP client
>> - TCP server programming is not more difficult than TCP client
> 
> Obviously I disagree. I've seen emails on this thread that speak of "keeping the modem dumb". Making the modem a TCP server is orthogonal to that approach. As to "an ignition packet", I have *no idea* what that means. UDP traffic is going to be required for discovery. It's pretty easy for me to call any UDP packet sent or received "an ignition packet"., so that particular argument seems specious.

The ignition packet is the additional required (unicast) UDP packet when modem is TCP client and TCP server on other node is several hops away.


> 
> There have also been comments about the 1-to-N relationships (router-to-modem, modem-to-router). In reality, there's *always* been an underlying "N-to-N" notion in DLEP. Now, that was before the decision to change to TCP...

OK, we keep the N-to-M where N < M or N = M or N > M.


> 
>> 
>> 
>>> 
>>> I have intentionally left 'optional extras' 1 and 2 undefined as they may be relevant in your answers.
>> 
>> The Ack in the 3-way handshake is missing. After 5, Server thinks the DLEP session is open, but Client is not aware of it yet. This is minor detail, perhaps indeed use as few packets as possible. Also less state.
> 
> No its not. The Peer Accept is the "ACK". Is it "tow-MAY-tow", or "tow-MAH-tow"? (Maybe a bad joke for the non-native English speakers, but I'm leaving it in).

The ACK on Peer_Accept is missing.


> 
>> 
>> 
>>> 
>>> I will give my answers in a separate email.
>>> 
>>> If anyone has a problem with the above diagram, now is your chance to shout!
>> 
>> Yes, TCP server socket must be opened before the Peer_Discovery. 
> 
> Wow. Just. Wow.
> 
>> After connection, Peer_Discovery packets SHOULD continue to be sent, for the following reasons:
> 
> Seems to me that there's an implicit notion at play here. Specifically, it's that "I (irrespective of whether I'm the modem or the router) will keep strobing discovery packets because I might find other appropriate DLEP peers *on this network segment*." Remember, we've already come close to consensus that discovery is a 1-hop operation, using link-local MCAST.  Having multiple radios on the same network segment (Ethernet) is something that Cisco has long advised customers *NOT* to do.

Good recommendation. 
Without DLEP, it works. Better not have DLEP break what is working today.


> Especially when the RF coverage of those multiple radios overlap with respect to the destinations served - for example let's assume that I have routers that have C-band satellite radios, and some line-of-sight radio. I take 9 or 10 of those setups, and I stick them out in the middle of a flat desert plain, at distances of about 5KM. Everyone can see everyone else, so *both* the C-band satellite radios *and* the LOS radios connect. So far, so good. 
> 
> Now, one of the routers emit a multicast packet (one to a multicast MAC). Or a broadcast packet. Which radio serves it?

With 802.1D, STP is mandatory here.
(I second your recommendation here, don't do this!)


> The problem in this case extends to unicast destinations as well. Since the destination MAC in the packet is the far-end router,

Could be. MAC destination address could also be the modem.


> then in theory *both* radios know about it - after all, they've *both* got connectivity to the exact same far-end MAC address (since everyone has the multiple radios). So in that case, do you get two copies of everything?

No.


> Or does some intervening Ethernet switch try to decide?

Yes.


> If the switch is in play, then "Murphy's Law" (the notion that 'If anything CAN go wrong, it WILL go wrong') will be in play, and chances are the switch will make the *wrong* decision (or at least the decision you DIDN'T expect it to make).

STP is somewhat better than Murphy, but I know what you mean.


>  
> 
> If the connectivity of the two radios is completely orthogonal, then this setup works like a champ. But as the connectivity of the two different RF nets starts to converge, the problems mount. Hence, the recommendation to run multiple radios on *different* network segments - either by using VLANS, or sub interfaces, or just different Ethernet ports if you have to. 

Lets recommend separate interfaces for routers with multiple modems attached (like Figure 2 in DLEP).


> 
> As for the "1-to-N" case from the modem perspective (e.g. 1 modem connected to N routers), you don't really have the problem above - the modem knows it will *always* handle the traffic. But there's an entirely different set of issues. Namely, how *do* you report bandwidth? Yeah, I know - we've been saying "that's the radio's problem." But in looking at the deployment scenario, what would you *recommend* as to how that situation be handled? 

Reporting link metrics is not the problem. It is the multi-party control sessions that introduce complexity.


Teco



> 
> Stan 
> 
>> - no relation between UDP and TCP sockets, more lightweight
>> - for modems that support it, other routers may set up DLEP sessions also
>> - better recovery in case of failures, router knows modem is still present (think of heartbeat=zero)
>> - in line with other discovery protocols (CDP, LLDP, Bonjour etc)
> 
>> 
>> 
>> Teco
>> 
>>> 
>>> Cheers,
>>> 
>>> Rick
>>> 
>>> The information contained within this e-mail and any files attached to this e-mail is private and in addition may include commercially sensitive information. The contents of this e-mail are for the intended recipient only and therefore if you wish to disclose the information contained within this e-mail or attached files, please contact the sender prior to any such disclosure. If you are not the intended recipient, any disclosure, copying or distribution is prohibited. Please also contact the sender and inform them of the error and delete the e-mail, including any attached files from your system. Cassidian Limited, Registered Office : Quadrant House, Celtic Springs, Coedkernew, Newport, NP10 8FZ Company No: 04191036 http://www.cassidian.com
>>> _______________________________________________
>>> manet-dlep-rg mailing list
>>> manet-dlep-rg@ietf.org
>>> https://www.ietf.org/mailman/listinfo/manet-dlep-rg
>> 
>> _______________________________________________
>> manet-dlep-rg mailing list
>> manet-dlep-rg@ietf.org
>> https://www.ietf.org/mailman/listinfo/manet-dlep-rg
> 
> _______________________________________________
> manet-dlep-rg mailing list
> manet-dlep-rg@ietf.org
> https://www.ietf.org/mailman/listinfo/manet-dlep-rg