Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 6 May 2004 22:46:16 +0800
From:      Jian-Wei Wang <jwwang@FreeBSD.csie.NCTU.edu.tw>
To:        freebsd-net@freebsd.org
Subject:   Problem with ng_ether packet flow..
Message-ID:  <20040506144616.GA43633@FreeBSD.csie.NCTU.edu.tw>

next in thread | raw e-mail | index | archive | help
Hi, I spent times to figure out the packet flow with ng_ether, like this:

                 upper layer
                      |
                      ^
                [ether_demux]
                      ^
                      |
                      +---<---[ng_ether_rcvdata]--<-- 'upper' --<--,
                      ^                                             \
 <--[bdg_forward]--<--+                                           ng_tee
                      |                                             /
                      +--->---[ng_ether_input]---->-- 'lower' -->--`
                      ^
                [ether_input]
                      ^
                      |
                   device

Why the [ng_ether_rcvdata] won't check if packets should travel to 
the [bdg_forward] when they are bridged packets?

i.e. Should the packet flow be changed to this one?

                 upper layer
                      |
                      ^
                [ether_demux]
                      ^
 <--[bdg_forward]--<--+
                      |
                      +---<---[ng_ether_rcvdata]--<-- 'upper' --<--,
                      ^                                             \
                      |                                           ng_tee
                      |                                             /
                      +--->---[ng_ether_input]---->-- 'lower' -->--`
                      ^
                [ether_input]
                      ^
                      |
                   device


Sincerely Yours,
Jian-Wei Wang



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040506144616.GA43633>