Re: [hybi] With deflate-stream / websocket traceroute action

Andy Green <andy@warmcat.com> Fri, 25 February 2011 09:34 UTC

Return-Path: <andy.warmcat.com@googlemail.com>
X-Original-To: hybi@core3.amsl.com
Delivered-To: hybi@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 8F6333A6828; Fri, 25 Feb 2011 01:34:07 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.584
X-Spam-Level:
X-Spam-Status: No, score=-3.584 tagged_above=-999 required=5 tests=[AWL=0.015, BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id hJbAo72SAw9E; Fri, 25 Feb 2011 01:34:02 -0800 (PST)
Received: from mail-wy0-f172.google.com (mail-wy0-f172.google.com [74.125.82.172]) by core3.amsl.com (Postfix) with ESMTP id 19BE73A67CF; Fri, 25 Feb 2011 01:34:01 -0800 (PST)
Received: by wyb42 with SMTP id 42so1502516wyb.31 for <multiple recipients>; Fri, 25 Feb 2011 01:34:53 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:sender:message-id:date:from:user-agent :mime-version:to:cc:subject:references:in-reply-to:content-type :content-transfer-encoding; bh=AHIYr6mPMtSzWI4TkkNhUtBkMGztOXEr9QN7rtxLaDo=; b=mWWhc2KaJaZMcZPMECz4vxk0HtkUbtyWlwn1t6L6P18Pw7CYF8y39iRNqFOtx+uIIl Ut3YueKwoXKahib3iL3xXC2QHrS7S1OgAkm4zUjzTGnpkRqTi7dyUZTgbW13KkQz0gmK etVPgPZ4+4cEozDzQpYw7HzxUfSw14sgLJ88k=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; b=TwVE+dMk1JoKs073NWx+E6FAayz7XWxNSt4wiibBrPoHMYjVWBgnYZc5FZwuAqK5Yl GYhC4Q29DEwuI5PJ6tufQiMVSEDxf3mWucieDHxxDhyaYQzzbeZVHTbuTLzva2XAoZJQ 3Mn1ltULckLC7Hc8BAlMzjNe7TAVCgz0NiOyE=
Received: by 10.227.152.11 with SMTP id e11mr1864933wbw.85.1298626493487; Fri, 25 Feb 2011 01:34:53 -0800 (PST)
Received: from otae.warmcat.com (cpc1-nrte21-2-0-cust677.8-4.cable.virginmedia.com [81.111.78.166]) by mx.google.com with ESMTPS id x1sm409091wbh.8.2011.02.25.01.34.52 (version=SSLv3 cipher=OTHER); Fri, 25 Feb 2011 01:34:52 -0800 (PST)
Sender: Andy Green <andy.warmcat.com@googlemail.com>
Message-ID: <4D6777BB.4070605@warmcat.com>
Date: Fri, 25 Feb 2011 09:34:51 +0000
From: Andy Green <andy@warmcat.com>
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.13) Gecko/20101217 Fedora/3.1.7-0.39.b3pre.fc15 Thunderbird/3.1.7
MIME-Version: 1.0
To: Yutaka_Takeda@PlayStation.Sony.Com
References: <OF9EDDF2DA.D45B4501-ON88257842.0027DEB4-88257842.002C3B97@playstation.sony.com>
In-Reply-To: <OF9EDDF2DA.D45B4501-ON88257842.0027DEB4-88257842.002C3B97@playstation.sony.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
Cc: hybi@ietf.org, hybi-bounces@ietf.org
Subject: Re: [hybi] With deflate-stream / websocket traceroute action
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Server-Initiated HTTP <hybi.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/hybi>, <mailto:hybi-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/hybi>
List-Post: <mailto:hybi@ietf.org>
List-Help: <mailto:hybi-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/hybi>, <mailto:hybi-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 25 Feb 2011 09:34:07 -0000

On 02/25/2011 08:02 AM, Somebody in the thread at some point said:

Hi -

> What if we'd like to introduce a new control frame that is intended
> to communicate with intermediaries (imagine, trace-route mechanism,
> etc.) in the future, then the 'compression' layer gets in the way
> and all intermediaries have to decompress stream all the time.

The intermediaries have to rewrite the compression too if there's ever 
anything they don't pass through, if the compression has any state held 
at both ends.


I thought about traceroute a bit when I wrote libwebsockets-test-ping 
which uses PING / PONG control frames just like normal ping app.

In fact you can do traceroute just with PING / PONG if the standard 
allowed for

  1) PONG MAY contain additional text after the PING payload echo

  2) PING MUST contain a TTL byte at the start

  3) Intermediaries MAY decrement the TTL when passing on PING

  4) PONG SHOULD be issued by intermediary IF TTL = 0 after the 
decrement and MUST be by the endpoint regardless of TTL

  5) When PONG issued, intermediary or endpoint MAY append its ID text

-Andy