On 2026-11-01, Samuel Thibault <[email protected]> wrote:
> With the disappearance of the trunk(4), we have lost the
> loadbalance/roundrobin options. Since the upstream we are seeing our
> router send all its trafic only on one interface.

hmm? trunk(4) is still there for failover/loadbalance/roundrobin.
The only thing that was removed is trunk(4)'s LACP mode.

> I see in aggr.c's aggr_transmit:
>
>       if (ISSET(m->m_pkthdr.csum_flags, M_FLOWID))
>               flow = m->m_pkthdr.ph_flowid >> AGGR_FLOWID_SHIFT;
>
>       ifp0 = map->m_ifp0s[flow % AGGR_MAX_PORTS];
>
>       if (if_enqueue(ifp0, m) != 0)
>               counters_inc(ifp->if_counters, ifc_oerrors);
>
> So it seems it would at least follow ph_flowid. But I don't see how to
> make it set to a hash of port/ip. In pf.c I can see:
>
>               if (!ISSET(m->m_pkthdr.csum_flags, M_FLOWID)) {
>                       m->m_pkthdr.ph_flowid = st->key[PF_SK_WIRE]->hash;
>                       SET(m->m_pkthdr.csum_flags, M_FLOWID);
>               }
>
> but as a router, we do not enable stateful pf... Isn't there a simple
> way to make flowid set to such a hash?

I don't _think_ aggr(4) supports that.


-- 
Please keep replies on the mailing list.

Reply via email to