From: "Mika Penttilä" <mika.penttila@kolumbus.fi>
To: "YOSHIFUJI Hideaki / ????" <yoshfuji@linux-ipv6.org>
Cc: kazunori@miyazawa.org, davem@redhat.com, netdev@oss.sgi.com,
usagi-core@linux-ipv6.org
Subject: Re: [PATCH][IPV6][NDISC] unify ipv6 output routine
Date: Sat, 07 Feb 2004 10:40:40 +0200 [thread overview]
Message-ID: <4024A488.60203@kolumbus.fi> (raw)
In-Reply-To: <20040207.131455.27570445.yoshfuji@linux-ipv6.org>
YOSHIFUJI Hideaki / ???? wrote:
>In article <4023D6FB.9010909@kolumbus.fi> (at Fri, 06 Feb 2004 20:03:39 +0200), Mika Penttilä <mika.penttila@kolumbus.fi> says:
>
>
>
>>Kazunori Miyazawa wrote:
>>
>>
>:
>
>
>>>Yoshifuji-san and I send the patch which unifies IPv6 output routine and remove
>>>RTF_NDISC again. It resolves an issue of IPv6 IPsec with neighbor discovery
>>>without a flag.
>>>
>>>
>:
>
>
>>You break multicast replies, see what ndisc_build_ll_hdr() does...
>>
>>
>
>It doesn't "break."
>The ip6_output2() resolves and inserts link-layer address appropriately.
>If it did, we would have noticed (by conformance test or even by
>usual operation). ;-)
>
>
ip6_output2() doesn't resolve link-layer addresses. We don't even have a
neighbour, in
ndisc_dst_alloc(dev, NULL, ip6_output2); case.
>BTW, Miyazawa-san, we do not need ndisc_build_ll_hdr() anymore.
>Compiler warns it. Please remove it. Thanks.
>
>
>Here's the description:
>
>dst->neighbour owns the neighbour entry for the destination.
>
>For multicast, we know its link-layer address
>(filled in ndisc_constructor()).
>For unicast, the link-layer address may be unknown.
>
>ip6_output2() will call ip6_output_finish() and
>it tries inserting the link-layer header.
>
>The destination link-layer address is used if it is known (*).
>(Note: you remember that we know link-layer address for multicast.)
>
>If the link-layer address is not known or invalid,
>we queue the packet and resolve the link-layer address for the destination.
>Here, since the neighbour entry is "invalid," *multicast* NS is sent.
>The NS packet passes similar path.
>We know the destination for the NS is multicast and
>what the link-layer address is, and the packet is sent via (*).
>We will send the queued packet when we got NA from that node.
>
>Real story:
>A node may send NS without source link-layer address option
>while we do not know the link-layer address for the source of the NS.
>We need to send NA in reply to this NS.
>Original code cannot handle this case. The new code path can.
>
>
You just described how the normal link layer address resolving goes. It
doesn't apply here. Again, there is no dst->neighbour.
--Mika
next prev parent reply other threads:[~2004-02-07 8:40 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-02-06 17:32 [PATCH][IPV6][NDISC] unify ipv6 output routine Kazunori Miyazawa
2004-02-06 18:03 ` Mika Penttilä
2004-02-07 3:48 ` David S. Miller
2004-02-07 4:14 ` YOSHIFUJI Hideaki / 吉藤英明
2004-02-07 4:33 ` Kazunori Miyazawa
2004-02-08 21:08 ` David S. Miller
2004-02-08 21:26 ` YOSHIFUJI Hideaki / 吉藤英明
2004-02-07 8:40 ` Mika Penttilä [this message]
2004-02-07 10:28 ` YOSHIFUJI Hideaki / 吉藤英明
2004-02-07 10:41 ` Mika Penttilä
2004-02-07 10:45 ` Mika Penttilä
2004-02-07 11:29 ` (usagi-core 17380) " YOSHIFUJI Hideaki / 吉藤英明
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4024A488.60203@kolumbus.fi \
--to=mika.penttila@kolumbus.fi \
--cc=davem@redhat.com \
--cc=kazunori@miyazawa.org \
--cc=netdev@oss.sgi.com \
--cc=usagi-core@linux-ipv6.org \
--cc=yoshfuji@linux-ipv6.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.