Re: [magma] Question about proxy implemenation in RFC 4605

Kunal Shah <> Mon, 01 November 2010 22:49 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id C0B093A67AC for <>; Mon, 1 Nov 2010 15:49:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.578
X-Spam-Status: No, score=-1.578 tagged_above=-999 required=5 tests=[AWL=1.020, BAYES_00=-2.599, HTML_MESSAGE=0.001]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id yZcQkPb6Umku for <>; Mon, 1 Nov 2010 15:49:36 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id 4880B3A6783 for <>; Mon, 1 Nov 2010 15:49:36 -0700 (PDT)
Received: from ([]) by (8.13.8/8.13.8) with ESMTP id oA1MnYqB027558 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Mon, 1 Nov 2010 17:49:37 -0500
Received: from ([]) by ([]) with mapi; Mon, 1 Nov 2010 18:49:34 -0400
From: Kunal Shah <>
To: Alvaro Fernandez <>
Date: Mon, 1 Nov 2010 18:49:32 -0400
Thread-Topic: [magma] Question about proxy implemenation in RFC 4605
Thread-Index: Act3y+dEzA46tWwmR6yuBZkXU/iNeAAi/kn8AGaKR0AABd7hcgAC3SKA
Message-ID: <>
References: <> <D5DC4D51A7E80F46AE952361B9296386C14BAD@PE2800.SOPORTE.local> <> <D5DC4D51A7E80F46AE952361B9296386C14BB0@PE2800.SOPORTE.local>
In-Reply-To: <D5DC4D51A7E80F46AE952361B9296386C14BB0@PE2800.SOPORTE.local>
Accept-Language: en-US
Content-Language: en-US
acceptlanguage: en-US
Content-Type: multipart/alternative; boundary="_000_4FD1E7CD248BF84F86BD4814EDDDBCC150E73B63F6EUSAACMS0703e_"
MIME-Version: 1.0
X-Mailman-Approved-At: Tue, 02 Nov 2010 10:30:00 -0700
Cc: "" <>
Subject: Re: [magma] Question about proxy implemenation in RFC 4605
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Multicast and Anycast Group Membership <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Mon, 01 Nov 2010 22:49:37 -0000

Hi Alvaro,

I dont think you have understood my question. The rules that you are suggesting from RFC 3376, are the rules used for aggregating the information on an interface with multiple sockets. What I am asking is what rules should be followed on a proxy device in order to aggregate the state of all the interfaces, after the state of one of the interfaces has changed. This is because, on a device doing proxy, the state that is created is an aggregate of the state of the interfaces; i.e the state that would exist if all the interfaces represented individual hosts on a single LAN. Now from RFC 3376, if a host goes away on an interface, there are certain rules that the router must follow regarding queries that need to be sent in order to arrive to the new state on that interface. My concern is, on a proxy device, if the same rules are followed, queries will need to be sent out on all the interfaces in order to make sure that the new state reflects the state of all the interfaces. This might not be efficient/scalable if the proxy device has interfaces in the order of hundreds.

Or I have not understood the RFC 4605 correctly...


From: Alvaro Fernandez []
Sent: Monday, November 01, 2010 2:19 PM
To: Kunal Shah
Subject: RE: [magma] Question about proxy implemenation in RFC 4605

Hi Kunai,

I thing my previous Mail was wrong. I was thinking in once interface with múltiple host and this is not your question.

The proxy should apply same rules  explained inRFC3376 in the función IPMulticastListen when there are different sockets using the same multicast group.

I think there is no need for queries, just apply these rules.

Hope this will help


-----Mensaje original-----
De: Kunal Shah []
Enviado el: lun 01/11/2010 19:30
Para: Alvaro Fernandez
Asunto: RE: [magma] Question about proxy implemenation in RFC 4605

Hi Alvaro,

For a router to determine that there are no interested hosts on the LAN, it does send out group specific or source-group specific queries. Does this mean, that the proxy device should send out source-group specific queries on other interfaces when deemed required?? How will this scale if there are a large number of interfaces??


From: Alvaro Fernandez []
Sent: Saturday, October 30, 2010 10:36 AM
To: Kunal Shah
Subject: RE: [magma] Question about proxy implemenation in RFC 4605

Hi Kunal

I read it years ago but I think RFC 4605 explains that the downstream network interface should behave like a router, so the solution is in the state machine explained in RFC3376 for the IGMPv3 router


-----Mensaje original-----
De: en nombre de Kunal Shah
Enviado el: sáb 30/10/2010 2:46
Asunto: [magma] Question about proxy implemenation in RFC 4605

Hi all,

According to RFC 4605, a router creates a membership database after merging the subscriptions on individual interfaces. Lets say that 3 IGMPv3 capable interfaces are as follows:

Interface 1 has host reporting Include S1 -> I(S1)
Interface 2 has host reporting Exclude S2 -> E(0,S2)
Interface 3 has host reporting Exclude nothing -> E(0,0)

For a device doing IGMPv3 proxy, the final membership record for group G is (G, EXCLUDE, NULL). Now lets say the host on interface 3 goes away, because of which the subscription on interface 3 would expire and there wont be any IGMPv3 state on interface 3.  How would the new membership record for PROXY be calculated?? The RFC does not suggest any way to do this. Would IGMP process have to go through each interface again and then recompute the new membership record?? This would be very inefficient especially if there are multiple interfaces.
Is there a better way to recompute the new membership record??