On 2012-03-22 09:43, Fred Baker wrote:
> On Mar 19, 2012, at 11:55 AM, Sabahattin Gucukoglu wrote:
> 
>> I've obviously not been doing all my homework, and RFC 4007 slipped my 
>> attention.  Worse, for all the communication my IPv6 nodes are doing amongst 
>> themselves using link-local addresses, it's never really been much more than 
>> a hastily-justified curiosity why, when I ping one from the other using 
>> link-local-scoped addresses, I have to put in this zone identifier (%ifname 
>> on BSD and Linux).
> 
> To be honest, I'm still not sure I understand the argument for a zone 
> identifier.

I've always viewed them as a fault diagnosis tool, mainly.
But the first paragraph of section 6 of RFC 4007 makes a stack
implementation argument:

>> 6.  Zone Indices
>> 
>>    Because the same non-global address may be in use in more than one
>>    zone of the same scope (e.g., the use of link-local address fe80::1
>>    in two separate physical links) and a node may have interfaces
>>    attached to different zones of the same scope (e.g., a router
>>    normally has multiple interfaces attached to different links), a node
>>    requires an internal means to identify to which zone a non-global
>>    address belongs.  This is accomplished by assigning, within the node,
>>    a distinct "zone index" to each zone of the same scope to which that
>>    node is attached, and by allowing all internal uses of an address to
>>    be qualified by a zone index.

In other words if the IETF doesn't define the zone index, every
implementor will have to do so anyway. Also, read the last clause
carefully: it says the stack MUST allow OPTIONAL use of the zone
index internally.

> From MIF's perspective, if the same prefix is placed on multiple interfaces, 

The prefix fe80::/10 is automatically on every interface. That's the
only case where I'm certain we need a zone index in practice, but the
definition isn't limited to that case.

   Brian

> the system might see peers using a given address on multiple interfaces, and 
> at least some devices might be expected to route between the interfaces. 
> Architecturally, this can be easy to solve or hard. We have any number of 
> cases (think about PPP for example) in which we bundle multiple interfaces 
> under a common super-interface and "do something". In PPP Multilink, we might 
> segment messages into smaller frames, distribute them across a number of 
> interfaces to the same place, and reconstitute the original message on the 
> other side. In this case, it seems that we want IP to use two layers of 
> interfaces, a virtual one instantiated by multiple lower layer interfaces, 
> and place the prefix on the virtual interface. When we are wondering what MAC 
> address should be associated with a given IP address, we ask each of the 
> lower layer interfaces, and if we get a result on one of them we know where 
> we're going. The big issue will be routing among the physical interfaces - 
> something req
uired for it to be seamless and yet not as trivial as it might sound.
> 

Reply via email to