Re: [rbridge] mergingdraft-tissa-trill-oam anddraft-ietf-trill-rbridge-oam
"Tissa Senevirathne (tsenevir)" <tsenevir@cisco.com> Mon, 19 March 2012 21:33 UTC
Return-Path: <rbridge-bounces@postel.org>
X-Original-To: ietfarch-trill-archive-Osh9cae4@ietfa.amsl.com
Delivered-To: ietfarch-trill-archive-Osh9cae4@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id F234721E8042 for <ietfarch-trill-archive-Osh9cae4@ietfa.amsl.com>; Mon, 19 Mar 2012 14:33:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.392
X-Spam-Level:
X-Spam-Status: No, score=-6.392 tagged_above=-999 required=5 tests=[AWL=0.205, BAYES_00=-2.599, HTML_MESSAGE=0.001, MIME_HTML_MOSTLY=0.001, RCVD_IN_DNSWL_MED=-4]
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 XA0G7ZsDHBbB for <ietfarch-trill-archive-Osh9cae4@ietfa.amsl.com>; Mon, 19 Mar 2012 14:33:05 -0700 (PDT)
Received: from boreas.isi.edu (boreas.isi.edu [128.9.160.161]) by ietfa.amsl.com (Postfix) with ESMTP id 1005821E801C for <trill-archive-Osh9cae4@lists.ietf.org>; Mon, 19 Mar 2012 14:33:04 -0700 (PDT)
Received: from boreas.isi.edu (localhost [127.0.0.1]) by boreas.isi.edu (8.13.8/8.13.8) with ESMTP id q2JL2NYn008566; Mon, 19 Mar 2012 14:02:24 -0700 (PDT)
Received: from mtv-iport-2.cisco.com (mtv-iport-2.cisco.com [173.36.130.13]) by boreas.isi.edu (8.13.8/8.13.8) with ESMTP id q2JL1whI008479 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=NOT); Mon, 19 Mar 2012 14:02:08 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=tsenevir@cisco.com; l=31971; q=dns/txt; s=iport; t=1332190928; x=1333400528; h=mime-version:subject:date:message-id:in-reply-to: references:from:to:cc; bh=XSwAjzvkiaA2wJfNEsp0LmKESFOEXMFHFeRVJClIMws=; b=YjOI/5k46GaaKvHE+srAazXh6XaijCPt0k3yuiShZRavdLIR5XN9793h uZBKB9Zoyl6NgxUJ/oab432jg6TPPE5zol6Is5TOp5ZFJqpHw3ssnx46c HJlxZeh3BMNlaojqN4QcdBgLGlH4PdlwNDa7+YiMqTcjTDSEVL+cNwHRC Y=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AiQFAP6dZ0+rRDoH/2dsb2JhbABCgkarEgGIfoEHggkBAQEEAQEBDwEHAgsGAz4LEAIBCA4DAwEBAQsGBgEJBwEGASYfCQgBAQQBEggah2cBC5djnwWKQ4J8AYJCYwSIVolgApFwgWiDBoE0Ag
X-IronPort-AV: E=Sophos; i="4.73,614,1325462400"; d="scan'208,217"; a="36781479"
Received: from mtv-core-2.cisco.com ([171.68.58.7]) by mtv-iport-2.cisco.com with ESMTP; 19 Mar 2012 21:01:57 +0000
Received: from xbh-sjc-221.amer.cisco.com (xbh-sjc-221.cisco.com [128.107.191.63]) by mtv-core-2.cisco.com (8.14.3/8.14.3) with ESMTP id q2JL1vpK027149; Mon, 19 Mar 2012 21:01:57 GMT
Received: from xmb-sjc-214.amer.cisco.com ([171.70.151.145]) by xbh-sjc-221.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.4675); Mon, 19 Mar 2012 14:01:57 -0700
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Date: Mon, 19 Mar 2012 14:01:56 -0700
Message-ID: <344037D7CFEFE84E97E9CC1F56C5F4A5C7FF0F@xmb-sjc-214.amer.cisco.com>
In-Reply-To: <OF785471D9.96C20091-ON872579C6.005F99B6-882579C6.0061DDA8@us.ibm.com>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [rbridge] mergingdraft-tissa-trill-oam anddraft-ietf-trill-rbridge-oam
Thread-Index: Ac0F+pf6Mv+v2TeRQ2yjNyLPggzJLQAFk4Rg
References: <220BAABC-A9BB-497E-8ABA-9A7C65CFB6B6@us.ibm.com> <EF74E90D-AC4C-4798-88CD-ACF3035E268D@us.ibm.com><CD31C838133B34469D6E01406350E68C0E8A563E@xmb-sjc-215.amer.cisco.com> <OF785471D9.96C20091-ON872579C6.005F99B6-882579C6.0061DDA8@us.ibm.com>
From: "Tissa Senevirathne (tsenevir)" <tsenevir@cisco.com>
To: Santosh Rajagopalan <sunny.rajagopalan@us.ibm.com>, "Rohit Watve (rwatve)" <rwatve@cisco.com>
X-OriginalArrivalTime: 19 Mar 2012 21:01:57.0416 (UTC) FILETIME=[854CCA80:01CD0613]
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: tsenevir@cisco.com
Cc: rbridge@postel.org, rbridge-bounces@postel.org
Subject: Re: [rbridge] mergingdraft-tissa-trill-oam anddraft-ietf-trill-rbridge-oam
X-BeenThere: rbridge@postel.org
X-Mailman-Version: 2.1.6
Precedence: list
List-Id: "Developing a hybrid router/bridge." <rbridge.postel.org>
List-Unsubscribe: <http://mailman.postel.org/mailman/listinfo/rbridge>, <mailto:rbridge-request@postel.org?subject=unsubscribe>
List-Archive: <http://mailman.postel.org/pipermail/rbridge>
List-Post: <mailto:rbridge@postel.org>
List-Help: <mailto:rbridge-request@postel.org?subject=help>
List-Subscribe: <http://mailman.postel.org/mailman/listinfo/rbridge>, <mailto:rbridge-request@postel.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============1856734967=="
Sender: rbridge-bounces@postel.org
Errors-To: rbridge-bounces@postel.org
Santosh One cannot assume when troubleshooting an issue it will be only be limited to few packets. (we all will be very happy if it was the case but it never the norm but rather the exception) Secondly in hosting environments, where network provider has no control on end systems this kind of things generate unwanted support calls. We should not be designing OAM protocol based on this assumption. Also 2.a and 2.b will not allow you to verify IP payload, something working for 2.a and 2.b does not gurantee that IP is working. From: rbridge-bounces@postel.org [mailto:rbridge-bounces@postel.org] On Behalf Of Santosh Rajagopalan Sent: Monday, March 19, 2012 10:48 AM To: Rohit Watve (rwatve) Cc: rbridge@postel.org; rbridge-bounces@postel.org Subject: Re: [rbridge] mergingdraft-tissa-trill-oam anddraft-ietf-trill-rbridge-oam Hi, Rohit You could have a packet or two leak to the host, and the host OS will drop it because of the invalid checksum (this number of drops would be at the level of noise for most systems). A more difficult alternative would be to have switches drop packets with an invalid IP checksum from leaving host-facing ports. 1) You employ this method only after all your other means of debugging have failed to root cause the issue. This means that you've already used the means outlined below to trace the path that this packet should be taking (2.a and 2.b below, which use the rbridge channel header and result in no leaks). 2) After you've used 2.a and 2.b, you need to check what the hardware on the path is really doing with a packet that looks like the flow you're debugging. For this, you cannot change any of the familiar header fields to help you capture the packet at the egress, because that could change the hash result on the way (This isn't theoretical - I know of asics that hash on IP, trill header, tcp/udp, inner ethernet header, outer ethernet header). Since you need a probe packet that looks just like a real flow, your best bet is to clone the real flow packet, but with an invalid IP checksum and then send it out with incrementing ttl values. -- Sunny Rajagopalan From: "Rohit Watve (rwatve)" <rwatve@cisco.com> To: Santosh Rajagopalan/Santa Clara/IBM@IBMUS, <rbridge@postel.org> Date: 03/16/2012 06:38 PM Subject: Re: [rbridge] merging draft-tissa-trill-oam anddraft-ietf-trill-rbridge-oam Sent by: rbridge-bounces@postel.org ________________________________ Hi Santosh, I had a question about following: 2. c) Multicast pruned tree discovery for a particular flow: I recommend building a packet with an empty payload which looks like the actual flow (with the header fields from the flow being tested instead of the rbridge channel header). The IP address, mac address, L4 headers etc all match with that of the flow you're trying to debug. However, to ensure that any leaked packets get dropped, set the IP checksum to be invalid (the IP checksum is never used for the ecmp hash). Now send out successive packets with the ttl field in incrementing values. Note that you're sending a "pseudo-real" packet into the network and relying on received ttl expiry messages to figure out the path. How do you prevent OAM packets with Invalid IP checksum from leaking out to customers? Thanks Rohit From: rbridge-bounces@postel.org [mailto:rbridge-bounces@postel.org <mailto:rbridge-bounces@postel.org> ] On Behalf Of Santosh Rajagopalan Sent: Tuesday, March 06, 2012 8:49 AM To: rbridge@postel.org Cc: Santosh Rajagopalan Subject: [rbridge] merging draft-tissa-trill-oam anddraft-ietf-trill-rbridge-oam Hi, We currently have two competing approaches to TRILL OAM, draft-ietf-trill-rbridge-oam and draft-tissa-trill-oam. Both have their merits, which calls for a revised draft with the best ideas from both. draft-tissa-trill-oam has a dependancy on IP/ICMP/ARP etc. The major reason for this dependency seems to be for multipath path discovery, and I have some suggestions as to how to fix this in draft-ietf-trill-rbridge-oam without using IP. draft-tissa-trill-oam also has several features which should be rightly queried from a MIB. I think the OAM draft should concentrate on facilitating actions that would be difficult or impossible to perform in its absence. So querying counters has no place here, because you could easily figure them out by doing an SNMP query or by logging into the switch. I also think it's worthwhile to look at the features traditionally supported in ethernet OAM and to see if they have a place here. Using draft-ietf-trill-rbridge-oam as a basis: 1) Ping/loopback: draft-ietf-trill-rbridge-oam handles this well enough (it does need a multicast addition). The purpose of ping is to verify connectivity between two rbridges, not to discover the various ways of connecting the two. One suggestion I have here is to be able to include a cookie in the echo request message which gets reflected back by the receiver. This cookie could be used to include the sender's timestamp in the ping message. The response could then be used to measure round-trip path latency and jitter. If the sender and receiver's clocks are synchronized using some external mechanism then this can also be used to measure one-way delay and jitter. This is a feature borrowed from ethernet OAM. 2) Traceroute: IP traceroute doesn't rely on icmp for the outgoing packet (you could use ICMP, but that's a different matter). In fact, UNIX implementations usually just send UDP packets with port numbers in the 33K range, with appropriate TTL values. Note that traceroute in the IP world gives you "a" path to a destination, not "all possible paths". However, being able to enumerate all possible paths, as well as to pinpoint the particular path a flow would take are good to have features. Here're the modifications needed in draft-ietf-trill-rbridge-oam to achieve this: a. Multicast unpruned tree discovery: you can discover all existing unpruned multicast trees by setting the erbridge value of an rbridge channel message to the respective roots, M=1 and the dmac to "all-egress-rbridges". Just like regular ping, you can send this as an echo request message with incrementing ttl values, and the ttl expiry messages you get will tell you what the unpruned tree looks like. Changing the egress_rbridge will paint you a picture of the different trees. b. Multicast pruned tree discovery: just do a), but replace the "all-egress-rbridges" multicast address in the inner dmac with the mac address of the multicast group. As you vary the egress_rbridge field, this will enumerate all possible pruned trees for that group. Note that draft-ietf-trill-rbridge-oam uses draft-ietf-trill-rbridge-channel, which requires the inner dmac to be all-egress-rbridges. However, the ethertype field can be used by itself to classify an OAM packet, and I am advocating that the inner dmac requirement in draft-ietf-trill-rbridge-channel be relaxed to allow for alternative inner dmacs where needed. c. Multicast pruned tree discovery for a particular flow: I recommend building a packet with an empty payload which looks like the actual flow (with the header fields from the flow being tested instead of the rbridge channel header). The IP address, mac address, L4 headers etc all match with that of the flow you're trying to debug. However, to ensure that any leaked packets get dropped, set the IP checksum to be invalid (the IP checksum is never used for the ecmp hash). Now send out successive packets with the ttl field in incrementing values. Note that you're sending a "pseudo-real" packet into the network and relying on received ttl expiry messages to figure out the path. d. Unicast path discovery: the erbridge ID is that of the switch you're trying to ping. Let's send this echo request message with a fake inner DMAC. Construct the dmac so that the U/L bit is 1 and the I/G bit is 0 (basically, its a local scope unicast mac). Set the last 32 bits to a random value. This is a fake mac address, but that's ok because the network routes only on the erbridge anyway. The M bit in the TRILL header is 0. Send this as an echo request message with incrementing ttl values. This gives you "a" path from the source to the destination rbridge. Increment the dmac used earlier, and repeat. All rbridges hash at least on the inner dmac, so this will allow you to enumerate all possible paths from source to destination. e. Unicast path discovery for a particular flow: Similar to what we did for multicast, construct a real packet of length 0. The IP address, mac address, L4 headers etc all match with that of the flow you're trying to debug. However, to ensure that any leaked packets get dropped, set the IP checksum to be invalid. Now set the ttl field in incrementing values. Note that you're sending a "pseudo-real" packet into the network and relying on received ttl expiry messages to figure out the path. Note that doing this eliminates the reliance on IP/ICMP, while preserving the objectives of draft-tissa-trill-oam. The fake packets generated are technically not OAM packets, just suggestions on how to achieve a certain objective. 3) Fault notification: although neither draft talks about this, this is a part of the ethernet OAM feature set. I think draft-ietf-trill-rbridge-oam needs to mention that the expectation is that BFD will work over the rbridge channel to achieve this. 4) draft-tissa-trill-oam has a big section on TTM. The equivalent in Ethernet OAM is performance management by checking counters and send/receive delays, etc. We can cover send/receive delay/jitter measurements using ping (as described earlier). I frankly don't see the benefit to including remote discovery of counters in this OAM proposal. The administrator can always just login to the rbridge of interest and get a read-out of the counters directly, or use snmp remotely. We shouldnt be replicating functionality which is better done elsewhere, and I think this entire section on TTM in draft-tissa-trill-oam should be taken out. 5) I don't see any benefits to DRB/AF discovery OAM messages. This is probably done most easily by logging into the rbridge in question and doing a "show l2 isis", or extending the SNMP MIB. 6) draft-tissa-trill-oam has a section on MAC discovery (basically, being able to query all rbridges to see what their rbridge<->mac binding is). This is again something that should be best queried using SNMP - this is a classic MIB walk case. 7) Address binding verification should be out of scope for a TRILL OAM draft, and besides, should just be queried at the rbridge with the CLI. 8) End-Station Attachment Point Discovery: should be out of scope of this draft, and is too vendor specific (it uses VN-tags). best, Sunny Rajagopalan_______________________________________________ rbridge mailing list rbridge@postel.org http://mailman.postel.org/mailman/listinfo/rbridge <http://mailman.postel.org/mailman/listinfo/rbridge>
_______________________________________________ rbridge mailing list rbridge@postel.org http://mailman.postel.org/mailman/listinfo/rbridge
- [rbridge] merging draft-tissa-trill-oam and draft… Santosh Rajagopalan
- Re: [rbridge] merging draft-tissa-trill-oam anddr… Tissa Senevirathne (tsenevir)
- Re: [rbridge] merging draft-tissa-trill-oam anddr… Santosh Rajagopalan
- Re: [rbridge] merging draft-tissa-trill-oam anddr… Sam Aldrin
- Re: [rbridge] merging draft-tissa-trill-oam anddr… Santosh Rajagopalan
- Re: [rbridge] merging draft-tissa-trill-oam anddr… Sam Aldrin
- Re: [rbridge] merging draft-tissa-trill-oam anddr… Rohit Watve (rwatve)
- Re: [rbridge] merging draft-tissa-trill-oam anddr… Santosh Rajagopalan
- Re: [rbridge] mergingdraft-tissa-trill-oam anddra… Tissa Senevirathne (tsenevir)
- Re: [rbridge] merging draft-tissa-trill-oam anddr… Sam Aldrin