Re: [Spud] Whats missing in SPUD
Toerless Eckert <eckert@cisco.com> Tue, 11 August 2015 07:10 UTC
Return-Path: <eckert@cisco.com>
X-Original-To: spud@ietfa.amsl.com
Delivered-To: spud@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1])
by ietfa.amsl.com (Postfix) with ESMTP id 7C8FD1A1A87
for <spud@ietfa.amsl.com>; Tue, 11 Aug 2015 00:10:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.511
X-Spam-Level:
X-Spam-Status: No, score=-14.511 tagged_above=-999 required=5
tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001,
T_RP_MATCHES_RCVD=-0.01, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44])
by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024)
with ESMTP id Rfl3dAi9mL40 for <spud@ietfa.amsl.com>;
Tue, 11 Aug 2015 00:10:14 -0700 (PDT)
Received: from alln-iport-7.cisco.com (alln-iport-7.cisco.com [173.37.142.94])
(using TLSv1 with cipher RC4-SHA (128/128 bits))
(No client certificate requested)
by ietfa.amsl.com (Postfix) with ESMTPS id C00631A1A10
for <spud@ietf.org>; Tue, 11 Aug 2015 00:10:13 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
d=cisco.com; i=@cisco.com; l=5050; q=dns/txt; s=iport;
t=1439277013; x=1440486613;
h=date:from:to:cc:subject:message-id:references:
mime-version:in-reply-to;
bh=HRXTqqFy1wsbaUMNirQ48OpwPfiipYiX87Z7vaVttQY=;
b=l8kLBvgIpAkJzILw53ZJcryZ2EcIHsYYuzW58vd78tPfiGUiVoy+e6nl
5QIRVqaij11gVsPyjB0VUO0trgJYzZVFxLl1LaOq5JT2CzJEcdJKLOHqw
CullETtv3sao7fXxQhDidFbWNj4tw5tlVfROr8PZeKt0Hv1tNyIo+j5oO 4=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0ALBQCLn8lV/4ENJK1HDAEJgxtUxjICgTY7EQEBAQEBAQGBCoQjAQEBAwEnEz8FCwsYCQoCAQEXDwVJLogLCM8cAQEBAQEBAQEBAQEBAQEBAQEBAQEBF4tRhB4OAQQJBAJJBwoJAYMEgRQFjUmHQ4dsgjuCOwOBSZRRg2Ymgg4BHIFzHoE4AQEFAheBJwEBAQ
X-IronPort-AV: E=Sophos;i="5.15,651,1432598400"; d="scan'208";a="177388943"
Received: from alln-core-9.cisco.com ([173.36.13.129])
by alln-iport-7.cisco.com with ESMTP; 11 Aug 2015 07:10:01 +0000
Received: from mcast-linux1.cisco.com (mcast-linux1.cisco.com [172.27.244.121])
by alln-core-9.cisco.com (8.14.5/8.14.5) with ESMTP id t7B7A0cu018499
(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO);
Tue, 11 Aug 2015 07:10:01 GMT
Received: from mcast-linux1.cisco.com (localhost.cisco.com [127.0.0.1])
by mcast-linux1.cisco.com (8.13.8/8.13.8) with ESMTP id t7B7A0Uw032695;
Tue, 11 Aug 2015 00:10:00 -0700
Received: (from eckert@localhost)
by mcast-linux1.cisco.com (8.13.8/8.13.8/Submit) id t7B79xbm032694;
Tue, 11 Aug 2015 00:09:59 -0700
Date: Tue, 11 Aug 2015 00:09:59 -0700
From: Toerless Eckert <eckert@cisco.com>
To: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
Message-ID: <20150811070959.GD1667@cisco.com>
References: <20150810184444.GB16123@cisco.com>
<87lhdirije.fsf@alice.fifthhorseman.net> <20150810210618.GB1667@cisco.com>
<87h9o6ravc.fsf@alice.fifthhorseman.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <87h9o6ravc.fsf@alice.fifthhorseman.net>
User-Agent: Mutt/1.4.2.2i
Archived-At: <http://mailarchive.ietf.org/arch/msg/spud/K91arSy5EQUX3tdjcnm0gonrMvk>
Cc: Christian Huitema <huitema@microsoft.com>, spud@ietf.org
Subject: Re: [Spud] Whats missing in SPUD
X-BeenThere: spud@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Session Protocol Underneath Datagrams <spud.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/spud>,
<mailto:spud-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/spud/>
List-Post: <mailto:spud@ietf.org>
List-Help: <mailto:spud-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/spud>,
<mailto:spud-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 11 Aug 2015 07:10:15 -0000
On Mon, Aug 10, 2015 at 07:18:15PM -0400, Daniel Kahn Gillmor wrote:
> Sure. So should we design a protocol that facilitates the publication
> and collection of arbitrary data that might be of interest to any
> regulator/lawyer/advertiser/insurer (or criminal/spy/competitor/troll)
> able to influence any device along the path?
How do you prohibit in the design of html that a browser and server
exchange arbitrary data in the html header ? In the end, SPUD attributes
network->app and vice versa are to me really very similar.
IMHO we do need to separate the design of the SPUD communication patterns
from the semantics of the individual attributes, otherwise we never get
to a useful and flexible, extensible protocol.
> That's why we're having this discussion -- because we do not want to
> produce a network transport protocol with sufficient flexibility and
> power to implement the "show your full identity to an arbitrary
> intermediary order to be able to socialize" antipattern, even though i'm
> sure some arbitrary intermediaries would love such a thing.
Lets say you don't trust your browser. What makes you confident the browser
can not exchange that undesired data through any other protocol ? Do
you trust a browser with IDS/firewall/etc to prohibit a browser from
doing something malicious against you ? If you do trust the browser
(not app on top!) then i think its easy for the browser to only exchange
data that we like.
Aka: Lets discuss not only the protocol, but the overall system expectation
including your app. SPUD implement natively in browser (browser can
build appropriate barrier towards app to control what can be
sent/received via SPUD. That already makes the system better than
most other app-channels). You do have your login credentials for your
bank in your keystore acessible to the browser. Do you trust the browser
to not use an arbitrary protocol to send out that key data in the clear
to anybody in the world. SPUD or any other protocol ?
> Can you reframe your proposal in the network transport layer context in
> a way that seems feasible to implement, is comprehensible to the user,
> doesn't encourage the false-tradeoff antipattern, and is actually
> effective at improving user experience on the network (as compared to,
> say, spending the same amount of engineering effort on a faster link
> layer)?
To characterize the app/flow behavior/expectations we did discuss over
the years many attributes. I am not sure there is a lot of agreement
on which of these are most urgent ones. In ine implementation in Cisco
products we had about 20 attributes and thought of 20 more. But it was
mostly about QoS and thats very much evolving due to AQM, bufferbloat,
rmcat or the like, so i primarily want to havethe ability to define
attributes in the future if i am not sure what good long term relevant ones
are in this bucket.
An example QoS attribute is RTP clockrate of sRTP flows. Lets assume we do like that
the RTP header itself is in the clear, and we do expect our enterprise/SP
to monitor jitter/delay/loss/reorder to identify and monitor/account
and fix quality issues. Especially when it is over the top video whee the
SP must not have the sRTP keys because i stream from notflix.
When it comes to characterizing middlebox behavior towards the applications,
that much less well explored IMHO, look for the malice draft.
The more interesting side is attributes not for "QoS middleboxes", but
"security middleboxes". IMHO, those would for example like some secure app
identification:
For example they would use offpath solutions like identifying the app type
of the server endpoint IP of a connection via secure DNS or other means and
then classifying based on that server side IP. But lets assume there are also
p2p apps, like RTCweb media shortcuts or cloud storage with torrent technologies
so that you can't rely on the server IP for all their flows. Or you really can
only trust that the app does not leak confidential information when you
cryptographically can trust the client side too. Because the trusted client
does force all type of content checks on the user before sending a file
to the cloud.
With todays HTTPs (if i am not mistaken), you (middlebox) could see
(via DPI) what cert the client side announces for itself. I am not sure
if you could actually vet ownership as a middlebox, but if the app
was explicitly sending in SPUD its cert (or hash thereof) and then
signs something like the flow key and time, then this would constitute
a good secure client-app-id signaled in SPUD. Just as a starting
point idea. There are a lot other aspect in these type of crypto
security use-cases for signaling IMHO (limit if/when you want to
identify yourself, identifying that you're inside a security perimeter
because of the middlebox identifying itself, aka: as soon as you're
talking cryto security use cases it always get a lot more complex
than you'd like ;-).
Cheers
Toerless
- [Spud] Whats missing in SPUD (was: Re: Multipath/… Toerless Eckert
- [Spud] Whats missing in SPUD (was: Re: Multipath/… Toerless Eckert
- Re: [Spud] Whats missing in SPUD (was: Re: Multip… Ted Hardie
- Re: [Spud] Whats missing in SPUD (was: Re: Multip… Toerless Eckert
- Re: [Spud] Whats missing in SPUD (was: Re: Multip… Ted Hardie
- Re: [Spud] Whats missing in SPUD (was: Re: Multip… Toerless Eckert
- Re: [Spud] Whats missing in SPUD (was: Re: Multip… Christian Huitema
- Re: [Spud] Whats missing in SPUD (was: Re: Multip… Daniel Kahn Gillmor
- Re: [Spud] Whats missing in SPUD (was: Re: Multip… Toerless Eckert
- Re: [Spud] Whats missing in SPUD Daniel Kahn Gillmor
- Re: [Spud] Whats missing in SPUD Toerless Eckert