IPv6 multi queue transmit
Venkat Duvvuru
venkatduvvuru.ml at gmail.com
Tue Jul 31 13:22:21 UTC 2012
Hi,
I have a couple of questions related to flowid for IPv6. Please clarify.
1. Why is the below code (ip_output) absent for ip6_output? This is causing
the ipv6 traffic to always flow in just one queue.
if (inp != NULL) {
INP_LOCK_ASSERT(inp);
M_SETFIB(m, inp->inp_inc.inc_fibnum);
if (inp->inp_flags & (INP_HW_FLOWID|INP_SW_FLOWID)) {
m->m_pkthdr.flowid = inp->inp_flowid;
m->m_flags |= M_FLOWID;
}
}
2. Why "fle" is NULL after enabling FLOWTABLE for IPv6
net/flowtable.c
if (af == AF_INET6)
{
fle = flowtable_lookup_mbuf6(ft, m);
if (fle != NULL && m != NULL && (m->m_flags & M_FLOWID) ==
0) {
m->m_flags |= M_FLOWID;
m->m_pkthdr.flowid = fle->f_fhash;
}
}
/Venkat
More information about the freebsd-net
mailing list