The Querier Election and the adoption of QRV and QQIC
"K.Kawaguchi" <[email protected]> Fri, 26 Dec 2008 14:16:03 +0900
| Newsgroups | gmane.ietf.magma |
|---|---|
| Message-ID | <[email protected]> |
Hi all,
How should description of RFC3810 be implemented about the Querier
Election and the adoption of QRV and QQIC?
Some examples are shown. Which is the right implementation of MLDv2?
When a router receives a query, only processing which suited conditions
in order is performed.
------------------------------------------------------------------------
Router-A:
1) When a router is a querier and has an address lower than the
source address of the query, the query is effective although the
query's sender is not regarded as a querier.
- Adopt QRV. (same as Section 5.1.8)
- Since Router-A is a querier, don't adopt QQIC. (same as Section
5.1.9)
- If the Query is Q(MA) or Q(MA,A), a router updates timer. (same
as Section 7.6.1)
2) When a router (is not a querier and) has an address lower than the
source address of the query, the query is effective although the
query's sender is not regarded as a querier.
- Adopt QRV. (same as Section 5.1.8)
- Since Router-A is not a querier, adopt QQIC. (same as Section
5.1.9)
- If the Query is Q(MA) or Q(MA,A), a router updates timer. (same
as Section 7.6.1)
3) (When a router has an address higher than the source address of
the query,)
The query's sender is regarded as a querier.
- Adopt QRV. (same as Section 5.1.8)
- Adopt QQIC. (same as Section 5.1.9)
- If the Query is Q(MA) or Q(MA,A), a router updates timer. (same
as Section 7.6.1)
- Other Querier Present timer is updated. (same as Section 7.6.2)
The difference with RFC
* Nothing
The problem of behavior
* 1),2),3): The value of QQIC is not in agreement with a router.
- A querier is own QQIC.
- A non-querier is most recentry received QQIC.
* 3): The query's sender may not be a true (it has the lowest
address) querier. A Other Querier Present timer may not be
right. When the timer is small, unnecessary Q (G) is sent.
* 3): When Other Querier Present timer is updated by Q(MA) and
Q(MA,A) and other querier stops, some source timers and filter
timers may expire earlyer than Q(G) is sent.
------------------------------------------------------------------------
Router-B:
1) When a router does not have Other Querier Presant timer and has an
address lower than the source address of the query, the query is
effective although the query's sender is not regarded as a querier.
- Adopt QRV. (same as Section 5.1.8)
- Since Router-A is a querier, don't adopt QQIC. (same as Section
5.1.9)
- If the Query is Q(MA) or Q(MA,A), a router updates timer. (same
as Section 7.6.1)
2) When a router has Other Querier Presant timer and Other Querier has
an address lower than the source address of the query, the query is
effective although the query's sender is not regarded as a querier.
- Adopt QRV. (same as Section 5.1.8)
- Since Router-A is not a querier, adopt QQIC. (same as Section
5.1.9)
- If the Query is Q(MA) or Q(MA,A), a router updates timer. (same
as Section 7.6.1)
- Other Querier Present timer is not updated.
(* differs from Section 7.6.2)
3) (The source address of query is lower than a router's address, and
is equal and lower than Other Querier's address,)
The query's sender is regarded as a querier.
- Adopt QRV. (same as Section 5.1.8)
- Adopt QQIC. (same as Section 5.1.9)
- If the Query is Q(MA) or Q(MA,A), a router updates timer. (same
as Section 7.6.1)
- Other Querier Present timer is updated. (same as Section 7.6.2)
The difference with RFC
* 2): It is not in agreement with Section 7.6.2.
Section 7.6.2 updates other querier present timers, when
smaller than a router address.
The problem of behavior
* 1),2),3): The value of QQIC is not in agreement with a router.
- A querier is own QQIC.
- A non-querier is most recentry received QQIC.
* 3): When Other Querier Present timer is updated by Q(MA) and
Q(MA,A) and other querier stops, some source timers and filter
timers may expire earlyer than Q(G) is sent.
------------------------------------------------------------------------
Router-C:
1) When a router does not have Other Querier Presant timer and has an
address lower than the source address of the query, the query is
effective although the query's sender is not regarded as a querier.
- Adopt QRV. (same as Section 5.1.8)
- Adopt QQIC. (* differs from Section 5.1.9)
- If the Query is Q(MA) or Q(MA,A), a router updates timer. (same
as Section 7.6.1)
2) When a router has Other Querier Presant timer and Other Querier has
an address lower than the source address of the query, the query is
effective although the query's sender is not regarded as a querier.
- Adopt QRV. (Same as Section 5.1.8)
- Adopt QQIC. (Same as Section 5.1.9)
- If the Query is Q(MA) or Q(MA,A), a router updates timer. (same
as Section 7.6.1)
- Other Querier Present timer is not updated.
(* differs from Section 7.6.2)
3) (The source address of query is lower than a router's address, and
is equal and lower than Other Querier's address,)
The query's sender is regarded as a querier.
- Adopt QRV. (Same as Section 5.1.8)
- Adopt QQIC. (Same as Section 5.1.9)
- If the Query is Q(MA) or Q(MA,A), a router updates timer. (same
as Section 7.6.1)
- If the Query is Q(G), Other Querier Present timer are updated.
(* differs from Section 7.6.2).
The difference with RFC
* 1): It is not in agreement with Section 5.1.9.
Section 5.1.9 updates QQIC, when a router is not querier.
* 2): It is not in agreement with Section 7.6.2.
Section 7.6.2 updates other querier present timers, when
smaller than a router address.
* 3): It is not in agreement with Section 7.6.2.
Section 7.6.2 updates other querier present timers, when a
router receives any kind of query (not only Q(G)).
The problem of behavior
* Maybe nothing.
QRV and QQIC are in agreement immediately. On the other hand, time
to behavior as a querier is extended until it sets up Other Querier
Presant timer. However, since QRV and QQIC are in agreement, they
are satisfactory. Moreover, Q(G) is sent before each source and
filter timers expire.
------------------------------------------------------------------------
Router-D:
1) When a router does not have Other Querier Presant timer and has an
address lower than the source address of the query, a router drops
the query.
- Don't adopt QRV. (* differs from Section 5.1.8)
- Don't adopt QQIC. (same as Section 5.1.9).
- Don't update timer. (* differs from Section 7.6.1)
2) When a router has Other Querier Presant timer and Other Querier has
an address lower than the source address of the query, a router
drops the query.
- Don't adopt QRV. (* differs from Section 5.1.8)
- Don't adopt QQIC. (same as Section 5.1.9)
- Don't update timer. (* differs from Section 7.6.1)
- Other Querier Present timer is not updated.
(* differs from Section 7.6.2)
3) (The source address of query is lower than a router's address, and
is equal and lower than Other Querier's address,)
The query's sender is regarded as a querier.
- Adopt QRV. (Same as Section 5.1.8)
- Adopt QQIC. (Same as Section 5.1.9)
- If the Query is Q(MA) or Q(MA,A), a router updates timer. (same
as Section 7.6.1)
- If the Query is Q(G), Other Querier Present timer is updated.
(* differs from Section 7.6.2)
The difference with RFC
* 1),2): It is not in agreement with Section 5.1.8 and Section 7.6.1.
Section 5.1.8 always updates QQIC.
Section 7.6.1 always processes Q(MA) and Q(MA,A).
* 2): It is not in agreement with Section 5.1.9 and Section 7.6.2.
Section 5.1.9 updates QQIC, when a router is not querier.
Section 7.6.2 updates other querier present timers, when
smaller than a router address.
* 3): It is not in agreement with Section 7.6.2.
Section 7.6.2 updates other querier present timers, when a
router receives any kind of query (not only Q(G)).
The problem of behavior
* A router cannot have the same state as other routers until it
receives Query from a true querier.
Best Regards
--
Kiyoaki Kawaguchi