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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).