draft-ietf-mboned-mtrace-v2-12.txt   draft-ietf-mboned-mtrace-v2-13.txt 
MBONED Working Group H. Asaeda MBONED Working Group H. Asaeda
Internet-Draft NICT Internet-Draft NICT
Intended status: Standards Track K. Meyer Intended status: Standards Track K. Meyer
Expires: April 11, 2016 Cisco Expires: December 7, 2016 Cisco
W. Lee, Ed. W. Lee, Ed.
October 9, 2015 June 5, 2016
Mtrace Version 2: Traceroute Facility for IP Multicast Mtrace Version 2: Traceroute Facility for IP Multicast
draft-ietf-mboned-mtrace-v2-12 draft-ietf-mboned-mtrace-v2-13
Abstract Abstract
This document describes the IP multicast traceroute facility, named This document describes the IP multicast traceroute facility, named
Mtrace version 2 (Mtrace2). Unlike unicast traceroute, Mtrace2 Mtrace version 2 (Mtrace2). Unlike unicast traceroute, Mtrace2
requires special implementations on the part of routers. This requires special implementations on the part of routers. This
specification describes the required functionality in multicast specification describes the required functionality in multicast
routers, as well as how an Mtrace2 client invokes a query and routers, as well as how an Mtrace2 client invokes a query and
receives a reply. receives a reply.
skipping to change at page 1, line 37 skipping to change at page 1, line 37
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on April 11, 2016. This Internet-Draft will expire on December 7, 2016.
Copyright Notice Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
skipping to change at page 3, line 24 skipping to change at page 3, line 24
7.1. Forwarding Inconsistencies . . . . . . . . . . . . . . . 29 7.1. Forwarding Inconsistencies . . . . . . . . . . . . . . . 29
7.2. TTL or Hop Limit Problems . . . . . . . . . . . . . . . . 29 7.2. TTL or Hop Limit Problems . . . . . . . . . . . . . . . . 29
7.3. Packet Loss . . . . . . . . . . . . . . . . . . . . . . . 30 7.3. Packet Loss . . . . . . . . . . . . . . . . . . . . . . . 30
7.4. Link Utilization . . . . . . . . . . . . . . . . . . . . 30 7.4. Link Utilization . . . . . . . . . . . . . . . . . . . . 30
7.5. Time Delay . . . . . . . . . . . . . . . . . . . . . . . 30 7.5. Time Delay . . . . . . . . . . . . . . . . . . . . . . . 30
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 31 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 31
8.1. Forwarding Codes . . . . . . . . . . . . . . . . . . . . 31 8.1. Forwarding Codes . . . . . . . . . . . . . . . . . . . . 31
8.2. UDP Destination Port . . . . . . . . . . . . . . . . . . 31 8.2. UDP Destination Port . . . . . . . . . . . . . . . . . . 31
9. Security Considerations . . . . . . . . . . . . . . . . . . . 31 9. Security Considerations . . . . . . . . . . . . . . . . . . . 31
9.1. Addresses in Mtrace2 Header . . . . . . . . . . . . . . . 31 9.1. Addresses in Mtrace2 Header . . . . . . . . . . . . . . . 31
9.2. Topology Discovery . . . . . . . . . . . . . . . . . . . 31 9.2. Filtering of Clients . . . . . . . . . . . . . . . . . . 31
9.3. Characteristics of Multicast Channel . . . . . . . . . . 31 9.3. Topology Discovery . . . . . . . . . . . . . . . . . . . 32
9.4. Limiting Query/Request Rates . . . . . . . . . . . . . . 32 9.4. Characteristics of Multicast Channel . . . . . . . . . . 32
9.5. Limiting Reply Rates . . . . . . . . . . . . . . . . . . 32 9.5. Limiting Query/Request Rates . . . . . . . . . . . . . . 32
9.6. Limiting Reply Rates . . . . . . . . . . . . . . . . . . 32
10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 32 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 32
11. References . . . . . . . . . . . . . . . . . . . . . . . . . 32 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 33
11.1. Normative References . . . . . . . . . . . . . . . . . . 32 11.1. Normative References . . . . . . . . . . . . . . . . . . 33
11.2. Informative References . . . . . . . . . . . . . . . . . 33 11.2. Informative References . . . . . . . . . . . . . . . . . 33
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 33 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 34
1. Introduction 1. Introduction
Given a multicast distribution tree, tracing from a multicast source Given a multicast distribution tree, tracing from a multicast source
to a receiver is difficult, since we do not know which branch of the to a receiver is difficult, since we do not know which branch of the
multicast tree the receiver lies. This means that we have to flood multicast tree the receiver lies. This means that we have to flood
the whole tree to find the path from a source to a receiver. On the the whole tree to find the path from a source to a receiver. On the
other hand, walking up the tree from a receiver to a source is easy, other hand, walking up the tree from a receiver to a source is easy,
as most existing multicast routing protocols know the upstream router as most existing multicast routing protocols know the upstream router
for each source. Tracing from a receiver to a source can involve for each source. Tracing from a receiver to a source can involve
skipping to change at page 19, line 40 skipping to change at page 19, line 40
blocks filled in, and uses TLV type of 0x01. blocks filled in, and uses TLV type of 0x01.
4.1.1. Query Packet Verification 4.1.1. Query Packet Verification
Upon receiving an Mtrace2 Query message, a router MUST examine Upon receiving an Mtrace2 Query message, a router MUST examine
whether the Multicast Address and the Source Address are a valid whether the Multicast Address and the Source Address are a valid
combination as specified in Section 3.2.1, and whether the Mtrace2 combination as specified in Section 3.2.1, and whether the Mtrace2
Client Address is a valid IP unicast address. If either one is Client Address is a valid IP unicast address. If either one is
invalid, the Query MUST be silently ignored. invalid, the Query MUST be silently ignored.
Mtrace2 supports a non-local client to the LHR/RP. It is up to the Mtrace2 supports a non-local client to the LHR/RP. A router SHOULD,
implementation to filter out such queries. however, support a mechanism to filter out queries from clients
beyond a specified administrative boundary. Such a boundary could,
for example, be specified via a list of allowed/disallowed client
addresses or subnets. If a query is received from beyond the
specified administrative boundary, the Query MUST NOT be processed.
The router MAY, however, perform rate limited logging of such events.
In the case where a local LHR client is required, the router must In the case where a local LHR client is required, the router must
then examine the Query to see if it is the proper LHR/RP for the then examine the Query to see if it is the proper LHR/RP for the
destination address in the packet. It is the proper local LHR if it destination address in the packet. It is the proper local LHR if it
has a multicast-capable interface on the same subnet as the Mtrace2 has a multicast-capable interface on the same subnet as the Mtrace2
Client Address and is the router that would forward traffic from the Client Address and is the router that would forward traffic from the
given (S,G) or (*,G) onto that subnet. It is the proper RP if the given (S,G) or (*,G) onto that subnet. It is the proper RP if the
multicast group address specified in the query is 0 and if the IP multicast group address specified in the query is 0 and if the IP
header destination address is a valid RP address on this router. header destination address is a valid RP address on this router.
skipping to change at page 31, line 40 skipping to change at page 31, line 40
9.1. Addresses in Mtrace2 Header 9.1. Addresses in Mtrace2 Header
An Mtrace2 header includes three addresses, source address, multicast An Mtrace2 header includes three addresses, source address, multicast
address, and Mtrace2 client address. These addresses MUST be address, and Mtrace2 client address. These addresses MUST be
congruent with the definition defined in Section 3.2.1 and forwarding congruent with the definition defined in Section 3.2.1 and forwarding
Mtrace2 messages having invalid addresses MUST be prohibited. For Mtrace2 messages having invalid addresses MUST be prohibited. For
instance, if Mtrace2 Client Address specified in an Mtrace2 header is instance, if Mtrace2 Client Address specified in an Mtrace2 header is
a multicast address, then a router that receives the Mtrace2 message a multicast address, then a router that receives the Mtrace2 message
MUST silently discard it. MUST silently discard it.
9.2. Topology Discovery 9.2. Filtering of Clients
A router SHOULD support a mechanism to filter out queries from
clients beyond a specified administrative boundary. Such a boundary
could, for example, be specified via a list of allowed/disallowed
client addresses or subnets. If a query is received from beyond the
specified administrative boundary, the Query MUST NOT be processed.
The router MAY, however, perform rate limited logging of such events.
9.3. Topology Discovery
Mtrace2 can be used to discover any actively-used topology. If your Mtrace2 can be used to discover any actively-used topology. If your
network topology is a secret, Mtrace2 may be restricted at the border network topology is a secret, Mtrace2 may be restricted at the border
of your domain, using the ADMIN_PROHIB forwarding code. of your domain, using the ADMIN_PROHIB forwarding code.
9.3. Characteristics of Multicast Channel 9.4. Characteristics of Multicast Channel
Mtrace2 can be used to discover what sources are sending to what Mtrace2 can be used to discover what sources are sending to what
groups and at what rates. If this information is a secret, Mtrace2 groups and at what rates. If this information is a secret, Mtrace2
may be restricted at the border of your domain, using the may be restricted at the border of your domain, using the
ADMIN_PROHIB forwarding code. ADMIN_PROHIB forwarding code.
9.4. Limiting Query/Request Rates 9.5. Limiting Query/Request Rates
A router may limit Mtrace2 Queries and Requests by ignoring some of A router may limit Mtrace2 Queries and Requests by ignoring some of
the consecutive messages. The router MAY randomly ignore the the consecutive messages. The router MAY randomly ignore the
received messages to minimize the processing overhead, i.e., to keep received messages to minimize the processing overhead, i.e., to keep
fairness in processing queries, or prevent traffic amplification. fairness in processing queries, or prevent traffic amplification.
The rate limit is left to the router's implementation. The rate limit is left to the router's implementation.
9.5. Limiting Reply Rates 9.6. Limiting Reply Rates
The proxying and NO_SPACE behaviors may result in one Query returning The proxying and NO_SPACE behaviors may result in one Query returning
multiple Reply messages. In order to prevent abuse, the routers in multiple Reply messages. In order to prevent abuse, the routers in
the traced path MAY need to rate-limit the Replies. The rate limit the traced path MAY need to rate-limit the Replies. The rate limit
function is left to the router's implementation. function is left to the router's implementation.
10. Acknowledgements 10. Acknowledgements
This specification started largely as a transcription of Van This specification started largely as a transcription of Van
Jacobson's slides from the 30th IETF, and the implementation in Jacobson's slides from the 30th IETF, and the implementation in
 End of changes. 13 change blocks. 
18 lines changed or deleted 33 lines changed or added

This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/