Subject: [Softwires] are multiple Domain IPv6 prefixes possible?

From: Washam Fan <[email-masked]>
Date: Sun, 14 Aug 2011 20:52:18 +0800

Hi,

It seems to me only one domain IPv6 prefix is allowed, per
draft-murakami-softwire-4rd-00. But I see no issue if we allow
multiple domain IPv6 prefixes. E.g., when a CE tries to encapsulate a
outbound IPv4 package, the matched rule can tell which domain ipv6
prefix can be used for building outer IPv6 destination address.

Thanks,
washam

---

From: Jacni Qin <[email-masked]>
Date: Mon, 15 Aug 2011 09:08:58 +0800

hi,

I guess you mean multiple rules, then it'll be one CEconnected to 
multiple domains.
That has been mentioned in the current version but no more elaboration. ;-)

Cheers,
Jacni

On 8/14/2011 8:52 PM, Washam Fan wrote:
> _______________________________________________
> Softwires mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/softwires
>

---

From: Washam Fan <[email-masked]>
Date: Mon, 15 Aug 2011 10:03:47 +0800

> I guess you mean multiple rules, then it'll be one CE connected to multiple
> domains.

Actually, I mean one 4rd domain can accommodate multiple domain ipv6
prefixes. I don't understand why the current draft mandate one 4rd
domain has only one domain ipv6 prefix.

Thanks,
washam

---

From: Tetsuya Murakami <[email-masked]>
Date: Mon, 15 Aug 2011 17:03:46 -0700

Hi Washam,

We can allow to use multiple mapping rules in a 4rd domain. In this case, there are several mapping rules and one mapping rule consists of the following parameters.

Domain IPv6 prefix
Domain 4rd prefix
CE IPv6 prefix length
Domain IPv6 suffix (optional)

When delegating an IPv6 prefix from the network, the corresponding mapping rule whose domain ipv6 prefix has the longest match with the delegated ipv6 prefix, can be selected.

Also, when forwarding an IPv4 packet to another CE, the corresponding mapping rule whose domain 4rd prefix has the longest match with the the destination ipv4 address, can be selected.

It is stated in section 5.1.1 and section 7 a little bit in the draft.

Thanks,
Tetsuya Murakami

---

From: Rémi Després <[email-masked]>
Date: Tue, 16 Aug 2011 10:27:59 +0200

Hi Tetsuya-san,

I agree, of course, on the need to support several mapping rules.
But IMHO one point needs clarification (see below).

Le 16 août 2011 à 02:03, Tetsuya Murakami a écrit :

> Hi Washam,
> 
> We can allow to use multiple mapping rules in a 4rd domain.
...
> When delegating an IPv6 prefix from the network, the corresponding mapping rule whose domain ipv6 prefix has the longest match with the delegated ipv6 prefix, can be selected.

As already discussed privately, I don't know realistic cases where two rules would have IPv6 or IPv4 overlapping prefixes.
Consequently, it seems that "longest" match, while being permitted, doesn't need to be a requirement.
Would you have such use cases to share?

Regards,
RD

---

From: Washam Fan <[email-masked]>
Date: Tue, 16 Aug 2011 22:06:19 +0800

Hi,

> I agree, of course, on the need to support several mapping rules.

Is there anywhere in the draft to mention how to deliver these rules?
As my understanding, the provisions described in section 4 only can
generate a mapping rule, how about deliver multiple mapping rules.

> Consequently, it seems that "longest" match, while being permitted, doesn't need to be a requirement.

Have the same feeling, ipv4 prefixes/addresses/port-set don't overlap,
per my understanding.

Thanks,
washam

---

From: Rémi Després <[email-masked]>
Date: Tue, 16 Aug 2011 16:21:26 +0200

> Is there anywhere in the draft to mention how to deliver these rules?

You can look at draft-mrugalski-dhc-dhcpv6-4rd-00.
Some update will be necessary, AFAIK, but this gives an idea of what can be done once parameters are agreed on.

Thanks,
RD

---

From: Jacni Qin <[email-masked]>
Date: Wed, 17 Aug 2011 09:10:49 +0800

hi Remi,

> Consequently, it seems that "longest" match, while being permitted, doesn't need to be a requirement.
If there are multiple ways for CPE to decide the IPv6 prefix, we have to 
specify the order of priority. e.g., firstly check if there is any 
implication assigned along with the rules, no? then choose the "longest" 
match.
BTW, I think the longest match is not bad.

Cheers,
Jacni

---

From: Tetsuya Murakami <[email-masked]>
Date: Tue, 16 Aug 2011 21:16:34 -0700

Hi Remi, Jacni,

We are considering the following situation.

Initially, one 4rd mapping rule can be set like {2408:db8::/32, 10.10.0.0/24, 48}. After that, if renumbering is required, the additional mapping rules are just distributed such as

{2408:db8:100::/40, 10.10.1.0/24, 48}
{2408:db8:200::/40, 10.10.2.0/24, 48}
...

In this case, it is useful to have a longest match to find the suitable mapping rule.

Thanks,
Tetsuya Murakami

On 2011/08/16, at 18:10, Jacni Qin wrote:

> If there are multiple ways for CPE to decide the IPv6 prefix, we have to specify the order of priority. e.g., firstly check if there is any implication assigned along with the rules, no? then choose the "longest" match.

---

From: Tetsuya Murakami <[email-masked]>
Date: Tue, 16 Aug 2011 21:43:22 -0700

Sorry. I have a typo. The following address has no meaning...

Sorry again.

Tetsuya Murakami

---

From: Rémi Després <[email-masked]>
Date: Wed, 17 Aug 2011 07:45:10 +0200

> BTW, I think the longest match is not bad.

It isn't bad, agreed, because it gives the same result as first match when prefixes don't overlap.
It shouldn't however be made a _requirement_ if there is no well understood use case because that additional complexity, small but real.

Whether there may be realistic configurations where prefix overlap is useful remains AFAIK an open question.
I have serious doubts, but no time now to argue in details.
IMHO, It's up to those who argue in favor of longest match to provide at least one realistic example (if there is one).
Then we will agree (or discuss).
Is that fair?

Cheers,
RD

---

From: Washam Fan <[email-masked]>
Date: Thu, 18 Aug 2011 13:19:39 +0800

It seems to me, when delegating CE ipv6 prefix, a longest match might
be used. But when forwarding a IPv4 packet, a longest match is
useless, because domain 4rd prefixes don't overlap.

Thanks,
washam

---

From: Jacni Qin <[email-masked]>
Date: Thu, 18 Aug 2011 14:12:55 +0800

> useless, because domain 4rd prefixes don't overlap.
Why? Sorry, I don't follow. The domain IPv4 prefixes can overlap.

Cheers,
Jacni

>
> Thanks,
> washam
>
> 2011/8/17 Rémi Després<[email-masked]>:

---

From: Rémi Després <[email-masked]>
Date: Thu, 18 Aug 2011 08:16:22 +0200

Hi Washam,

Le 18 août 2011 à 07:19, Washam Fan a écrit :

> be used.

OK, but, again, if a realistic use case is available where longest match is indeed REQUIRED, there is no problem to impose longest match.
What is missing so far is this use case. 

Regards,
RD

"It seems that perfection is attained not when there is nothing more to add, but when there is nothing more to remove" (A de St Exupéry) 

> But when forwarding a IPv4 packet, a longest match is

---

From: Washam Fan <[email-masked]>
Date: Thu, 18 Aug 2011 15:18:00 +0800

> What is missing so far is this use case.

can i cite Tetsuya's examples to elaborate that? assume we have three
below rules
1.{2408:db8:100::/40, 10.10.1.0/24, 48}
2.{2408:db8:200::/40, 10.10.2.0/24, 48}
3.{2408:db8::/32, 10.10.0.0/24, 48}

if a 48 CE prefix is delegated, rule 1 and 2 should be checked against
before rule 3. Although in this case, you can not assign 10.10.0.1 and
10.10.0.2 ipv4 addresses to a CE.

Thanks,
washam

---

From: Washam Fan <[email-masked]>
Date: Thu, 18 Aug 2011 15:24:47 +0800

Hi,

> Why? Sorry, I don't follow. The domain IPv4 prefixes can overlap.

if domain 4rd prefixes overlap, when a CE forwards a ipv4 package, it
will get confused. because, let's say, two rules matched, it doesn't
know which domain ipv6 prefix is used to build outer ipv6 destination
address.

Thanks,
washam
>>>>> As already discussed privately, I don't know realistic cases where two
>>>>> rules would have IPv6 or IPv4 overlapping prefixes.
>>> It shouldn't however be made a _requirement_ if there is no well
>>> understood use case because that additional complexity, small but real.
>>>
>>> IMHO, It's up to those who argue in favor of longest match to provide at
>>> least one realistic example (if there is one).

---

From: Jacni Qin <[email-masked]>
Date: Thu, 18 Aug 2011 15:50:11 +0800

> know which domain ipv6 prefix is used to build outer ipv6 destination
There could be,
1.{2408:db8:100::/40, 10.10.1.0/24, 48}
2.{2408:db8::/32, 10.10.0.0/16, 48}

just make sure that the ":100" + ".1.0/24" are excluded when assigning 
the CPE IPv6 prefixes to CPEs which will select the second rule to 
calculate the IPv4 prefixes. For traffics to these CPEs, longest match 
of IPv4 prefix will work.

Cheers,
Jacni

---

From: Rémi Després <[email-masked]>
Date: Thu, 18 Aug 2011 09:56:34 +0200

> 3.{2408:db8::/32, 10.10.0.0/24, 48}

To be complete, the example should IMHO show which CPE's have which IPv6 prefixes, and with which IPv4 prefixes derived.
OK?

Regards,
RD

---

From: Washam Fan <[email-masked]>
Date: Thu, 18 Aug 2011 16:25:17 +0800

Hi Jacni

2011/8/18 Jacni Qin <[email-masked]>:
> just make sure that the ":100" + ".1.0/24" are excluded when assigning the
> CPE IPv6 prefixes to CPEs which will select the second rule to calculate the
> IPv4 prefixes. For traffics to these CPEs, longest match of IPv4 prefix will
> work.
>
Got you now, thanks,
washam

---

From: Washam Fan <[email-masked]>
Date: Thu, 18 Aug 2011 16:42:42 +0800

Hi Remi

> To be complete, the example should IMHO show which CPE's have which IPv6 prefixes, and with which IPv4 prefixes derived.
OK.

    CE prefix                                   derived IPv4
1.{2408:db8:100::/40, 10.10.1.0/24, 48}
2048:db8:101::/48                          10.10.1.1
2.{2408:db8:200::/40, 10.10.2.0/24, 48}
2048:db8:201::/48                         10.10.2.1
3.{2408:db8::/32, 10.10.0.0/24, 48}
2408:db8:301::/48                         10.10.0.3+ports

    2408:db8:302::/48                         10.10.0.3+ports

note that rule 3 responds to many CE prefixes and derived ipv4
addresses (plus ports)

Is that clearer?
Thanks,
washam

---

From: Rémi Després <[email-masked]>
Date: Thu, 18 Aug 2011 11:05:58 +0200

> note that rule 3 responds to many CE prefixes and derived ipv4

I will look at it, and see what I think.
Thanks.
RD

---

From: Rémi Després <[email-masked]>
Date: Fri, 19 Aug 2011 11:59:40 +0200

Le 18 août 2011 à 09:18, Washam Fan a écrit :

> before rule 3.

> Although in this case, you can not assign 10.10.0.1 and

Unless I misunderstand, this makes it an unrealistic use case, right?

Cheers,
RD

---

From: Washam Fan <[email-masked]>
Date: Fri, 19 Aug 2011 20:13:43 +0800

> Unless I misunderstand, this makes it an unrealistic use case, right?

Yeah. but the use case exists in theory. Anyway i can live with
current 'longest match' text.

B.R.
washam