Re: [Int-area] I-D Action: draft-shen-traceroute-ping-ext-04.txt

Naiming Shen <naiming@cisco.com> Tue, 06 March 2012 07:46 UTC

Return-Path: <naiming@cisco.com>
X-Original-To: int-area@ietfa.amsl.com
Delivered-To: int-area@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E8AAD21F85E4 for <int-area@ietfa.amsl.com>; Mon, 5 Mar 2012 23:46:31 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.854
X-Spam-Level:
X-Spam-Status: No, score=-7.854 tagged_above=-999 required=5 tests=[AWL=0.945, BAYES_00=-2.599, J_CHICKENPOX_24=0.6, J_CHICKENPOX_42=0.6, J_CHICKENPOX_83=0.6, RCVD_IN_DNSWL_HI=-8]
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 XJ2mEFk2FQeF for <int-area@ietfa.amsl.com>; Mon, 5 Mar 2012 23:46:31 -0800 (PST)
Received: from mtv-iport-4.cisco.com (mtv-iport-4.cisco.com [173.36.130.15]) by ietfa.amsl.com (Postfix) with ESMTP id 1A88C21F85BB for <int-area@ietf.org>; Mon, 5 Mar 2012 23:46:31 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=naiming@cisco.com; l=3923; q=dns/txt; s=iport; t=1331019991; x=1332229591; h=subject:mime-version:from:in-reply-to:date:cc: content-transfer-encoding:message-id:references:to; bh=tIfv7tp2XOI1pZENISn65wcaHfMndSLmNA8XwXGcboo=; b=eCYiAPVQCN94KB8wbyV1zpEsUOBH++hxhCwgDK6UaQLKnb8l/tJJ8MaA Sxx6PCdyw8yhH1xvjiohyDwbefI61AGd8SRsAm/oL4+ZWgcXXPYiMKKWZ SMQmQjmcpuolUHkVE5bgl7XHlX0yjUNOU8UHBUcq2EaKHaIElJZKkK0GH o=;
X-IronPort-AV: E=Sophos;i="4.73,539,1325462400"; d="scan'208";a="34610716"
Received: from mtv-core-3.cisco.com ([171.68.58.8]) by mtv-iport-4.cisco.com with ESMTP; 06 Mar 2012 07:46:30 +0000
Received: from sjc-vpn3-470.cisco.com (sjc-vpn3-470.cisco.com [10.21.65.214]) by mtv-core-3.cisco.com (8.14.3/8.14.3) with ESMTP id q267kUua009602; Tue, 6 Mar 2012 07:46:30 GMT
Mime-Version: 1.0 (Apple Message framework v1084)
Content-Type: text/plain; charset="us-ascii"
From: Naiming Shen <naiming@cisco.com>
In-Reply-To: <2C2F2761-E2BD-4E55-97F3-4E5B3155A3BB@netapp.com>
Date: Mon, 05 Mar 2012 23:46:30 -0800
Content-Transfer-Encoding: quoted-printable
Message-Id: <CFF1327F-D62D-4DDD-9382-7D083DBB6E65@cisco.com>
References: <20120227213938.20370.68711.idtracker@ietfa.amsl.com> <9C0C873C-D52F-4EC8-939C-FD2373FDC9ED@cisco.com> <709D93F8-C6C0-4F7D-A823-35540D683EE6@netapp.com> <4705AE0F-CAE1-46D9-84D5-AF6D11BD35BC@cisco.com> <2C2F2761-E2BD-4E55-97F3-4E5B3155A3BB@netapp.com>
To: "Eggert, Lars" <lars@netapp.com>
X-Mailer: Apple Mail (2.1084)
Cc: "int-area@ietf.org" <int-area@ietf.org>
Subject: Re: [Int-area] I-D Action: draft-shen-traceroute-ping-ext-04.txt
X-BeenThere: int-area@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: IETF Internet Area Mailing List <int-area.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/int-area>, <mailto:int-area-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/int-area>
List-Post: <mailto:int-area@ietf.org>
List-Help: <mailto:int-area-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/int-area>, <mailto:int-area-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 06 Mar 2012 07:46:32 -0000

Hi Lars,

On Mar 5, 2012, at 10:50 PM, Eggert, Lars wrote:

> Hi,
> 
> On Mar 5, 2012, at 23:31, Naiming Shen wrote:
>> On Mar 3, 2012, at 12:55 AM, Eggert, Lars wrote:
>>>> 8.  IANA Considerations
>>>> 
>>>> The IANA is requested to assign a well-known port number, Trace-Ping
>>>> Port, for the UDP and TCP of this Trace-Ping extensions.
>>> 
>>> I'm curious why you think you need a port number for this ping extension. Ping is a diagnostic procedure that can be used with any port, and placing payload into the packet sent to elicit the ICMP response doesn't change that.
>> 
>> Yes, I understand Ping can use any port(or Identifier as in this draft). But it's rate-limited
>> also randomly by routers on the Internet. This well-known port/id can signal a new service
>> for the network, and can be subject to different filtering profile.
> 
> Clarification: you mean that the *generation* of ICMP messages at routers is rate-limited, correct? And the hope is that if the packets eliciting ICMP responses contained a transport packet with a certain source or destination port, the router would apply a more lenient rate limit when generating ICMP responses for those packets.

The previous version of this draft didn't have this well-known port defined, and we got
many comments on how to distinguish the packets with new features from the general
traceroute/ping packets on the Internet, as you mentioned below, it needs more deeper
packet inspection. With this well-known port, a provider's internal use of certain feature with
this extension can be more easily sort out from normal trace/ping packets (before the deeper
packet inspection).

> 
> Is this realistic? I'm not a router guy, but I thought routers rate-limit the generation of ICMP messages because it involves slow-path processing. In your scheme, a router would need to further DPI packets that may cause ICMP responses in order to determine what rate limit to apply, requiring even more processing. Doesn't that kind of defeat the purpose?

It requires more processing since if there is a new service using this extension, then the packets need more processing.
But those extra processing will not be imposed on the "normal" trace/ping packets. The well-known port here is
to distinguish those two types.

rate-limit is just an example of implementation related to this. icmp or trace ratelimit is to protect the slow path,
or even when the replies are done on the LC(fast path), they are normally rate-limited. If this extension for
example, at the router inbound it detects the packet with this well-known port, it can hand it to that feature processing
to run through an ACL (e.g. the configure requires the features only be allowed from their mgmt station
subnets), if all is well, then punt the packet to the feature handling(the slow path) with its own rate-limit.

> 
> In addition, eyeball ISPs would need to filter that port at the boundary to prevent the clients from using it, too, which again complicates things. Because once you set up more lenient rate limits for ICMPs for a given port, you can be sure that clients would start using that port, too.

I agree. This draft also has a section on the scalability of implementation and configuration.
Usually the features should be enabled with configuration and also filtering along with it.

> 
>>> Also, with regards to TCP ping, do you envision your payload data to be placed inside the SYN?
>> 
>> Yes for syn or ack. The tcp server should not care about the length being zero or not though.
> 
> I don't understand what you mean by "length being zero." Could you elaborate?

I meant the TCP payload length of the SYN packet doesn't have to be zero.

thanks.
- Naiming

> 
> Thanks,
> Lars