Re: Problems not reports (was Re: AODVv2 implementation)
Abdussalam Baryun <[email protected]>
| Newsgroups | gmane.ietf.manet |
|---|---|
| Message-ID | <CADnDZ88G9XNCAwH5cs_CspamDiZ6_fcoESxVnQp0OiPDpmc6rA@mail.gmail.com> |
Hi Brian, > > >> On Mon, Dec 4, 2023 at 8:42 AM Adamson, Robert B CIV USN NRL (5592) >> Washington DC (USA) <[email protected]> wrote: >> >>> As Justin Dean mentioned, our nrlsmf code can act as tun/tap user-space >>> forwarding engine (and works on Linux (including Android ... although newer >>> Android policies have locked out use of some the the netlink APIs and I >>> haven't tested that in a while), OSX/BSD, and even Windows with use of >>> WinTAP (or whatever it's called). We have done some stuff with that using >>> our own forwarding tables or with the OS tables but not yet for AODV. >> >> Did you implement AODV RFC3561 or AODVv2_lastest draft, please details? Also are you reporting a problem? please mention with clarification and reference to specification related? > For AODV some sort of extra packet caching could be useful or do something >>> similar with what we do with the Elastic Multicast implementation to flood >>> until the "on demand" route is established. >> >> We need to separate multicast routing from unicast routing, the AODV is about unicast routing and not multicast, > Related to that the "nrlsmf" code has support for some hybrid policies >>> that can be set related to flooding/forwarding such as token bucket limited >>> forwarding rate until a route is established or flooding a small number >>> (e.g, burst) of packets initially upon a new flow until a route is >>> established. With a little tweaking, these could be extended a little bit >>> to support other caching strategies if desired. >>> >> Does AODV refer to nrlsmf within the specification or not? > >>> Also, with the code, I have _slowly_ been refactoring code to keep the >>> forwarding plane aspects of the the nrlsmf "engine" distinct and separate >>> from the control plane aspects with the idea in mind to eventually have the >>> forwarding plane code be used independently in a kernel module (or >>> elsewhere) with the various forwarding plane features we see needed for >>> these sorts of protocols including duplicate packet detection, control >>> plane updates like mentioned for AODV2 below, per-flow forwarding state, >>> etc. It's been _slow_ since my time to work on it is quite limited these >>> days. Meanwhile, we do get pretty good performance with it in user space, >>> and I know there's improvements that could be made. >>> >> Are we mixing both RFC6621 and RFC3561, because I don't think it was specified in this IETF WG? if it was then please refer me to reference of IETF RFC? While reporting any problem please refer to RFCs or specifications that was agreed on for such IETF WG or any other Known Group in the World. I will never discuss about implementation only after knowing references to which specifications and which known body or practical software known. >>> If the kernel forwarding table is used, there are ways (not pretty) to >>> update by using a pcap socket to monitor packets and do that independently >>> of the actual forwarding. Again, not pretty or efficient, but a work >>> around until such features are resident in the forwarding engine. That's >>> one of the things I see needed, including for the Elastic Multicast >>> protocol operation, to have the forwarding plane notify the control plane, >>> at least periodically and/or on an event-driven basis (e.g., new flow >>> detected). >> >> This is multicast problems so I see it not for AODV, please report it as RFC6621 problems so we can discuss without mixing specifications. Or you may suggest the use of RFC6621 for some routing/forwarding techniques and how to use such multicast techniques. However, the last meeting had input of that Multicast is not a good idea for MANET, so we need NOT to mix between AODV and Multicast. > On Linux, I think that ideally would be through a netlink interface and my >>> thought on encapsulating a forwarding mechanism like what "nrlsmf" provides >>> into a kernel module would include that interface. For example, to support >>> the "per flow" packet processing and such notifications, I created a "Flow >>> Description" data structure that's also used as an index on a modified >>> Patricia Trie prefix-based radix tree (with field wildcarding support) to >>> detect, identify, and classify packet flows for such purposes. >> >> Again that is for SMF or RFC6621 only or does it require for AODV specifications, so the example is not understood the relationship with AODV implemenation. Secondly, Linux is an Open Source software, and well known which we can discuss, but does it have AODV implementation or does any one report arror while using Linux and AODV RFC3561? Please specify requirements of such software or requirements of such RFC? Best Regards AB _______________________________________________ manet mailing list [email protected] https://www.ietf.org/mailman/listinfo/manet