RFC Errata
RFC 6621, "Simplified Multicast Forwarding", May 2012
Source of RFC: manet (rtg)See Also: RFC 6621 w/ inline errata
Errata ID: 3499
Status: Verified
Type: Technical
Publication Format(s) : TEXT
Reported By: Errol Lloyd
Date Reported: 2013-02-26
Verifier Name: Adrian Farrel
Date Verified: 2013-02-28
Section B.4. says:
1. Initialize the set "MPR" to empty. 2. Initialize the set "N1" to include all 1-hop neighbors of "n0". 3. Initialize the set "N2" to include all 2-hop neighbors, excluding "n0" and any routers in "N1". Nodes that are only reachable via "N1" routers with router priority values of NEVER are also excluded. 4. For each interface "y" in "N1", initialize a set "N2(y)" to include any interfaces in "N2" that are 1-hop neighbors of "y". 5. For each interface "x" in "N1" with a router priority value of "ALWAYS" (or using the CF relay algorithm), select "x" as an MPR: A. Add "x" to the set "MPR" and remove "x" from "N1". B. For each interface "z" in "N2(x)", remove "z" from "N2". C. For each interface "y" in "N1", remove any interfaces in "N2(x)" from "N2(y)". 6. For each interface "z" in "N2", initialize the set "N1(z)" to include any interfaces in "N1" that are 1-hop neighbors of "z". 7. For each interface "x" in "N2" where "N1(x)" has only one member, select "x" as an MPR: A. Add "x" to the set "MPR" and remove "x" from "N1". B. For each interface "z" in "N2(x)", remove "z" from "N2" and delete "N1(z)". C. For each interface "y" in "N1", remove any interfaces in "N2(x)" from "N2(y)". 8. While "N2" is not empty, select the interface "x" in "N1" with the largest router priority that has the number of members in "N_2(x)" as an MPR: A. Add "x" to the set "MPR" and remove "x" from "N1". B. For each interface "z" in "N2(x)", remove "z" from "N2". C. For each interface "y" in "N1", remove any interfaces in "N2(x)" from "N2(y)".
It should say:
1. Initialize the set "MPR" to empty. 2. Initialize the set "N1" to include all 1-hop neighbors of "n0". 3. Initialize the set "N2" to include all 2-hop neighbors, excluding "n0" and any routers in "N1". Nodes that are only reachable via "N1" routers with router priority values of NEVER are also excluded. 4. For each interface "y" in "N1", initialize a set "N2(y)" to include any interfaces in "N2" that are 1-hop neighbors of "y". 5. For each interface "x" in "N1" with a router priority value of "ALWAYS" (or using the CF relay algorithm), select "x" as an MPR: A. Add "x" to the set "MPR" and remove "x" from "N1". B. For each interface "z" in "N2(x)", remove "z" from "N2". C. For each interface "y" in "N1", remove any interfaces in "N2(x)" from "N2(y)". 6. For each interface "z" in "N2", initialize the set "N1(z)" to include any interfaces in "N1" that are 1-hop neighbors of "z". 7. For each interface "w" in "N2" where "N1(w)" has only one member, "x", select "x" as an MPR: A. Add "x" to the set "MPR" and remove "x" from "N1". B. For each interface "z" in "N2(x)", remove "z" from "N2". C. For each interface "y" in "N1", remove any interfaces in "N2(x)" from "N2(y)". 8. While "N2" is not empty, select the interface "x" in "N1" with the highest router priority [break ties in favor of the node with the largest number of members in "N_2(x)"] as an MPR: A. Add "x" to the set "MPR" and remove "x" from "N1". B. For each interface "z" in "N2(x)", remove "z" from "N2". C. For each interface "y" in "N1", remove any interfaces in "N2(x)" from "N2(y)".
Notes:
There are three changes:
On line 7, the first and second occurrences of x are replaced by w, and then x is given as the name of the sole member of N1(w).
On line 7B, the phrase 'delete "N1(z)" is dropped to be consistent with the rest of the algorithm.
On line 8 some rewording is done for clarification.
This errata prepared in consultation with Justin Dean and Gus Macker.