Alain M. wrote:
Ranjan Sinha escreveu:
Hi,
I was wondering about how lwIP decides routes. I have gone through the
available documentation and source code as well and to me it seems
that routing is implemented in a very simple way; One interface is
marked as default and we match the destination addresses with
interface addresses keeping netmask in mind.
Has anybody implemented more complex routing scenarios? For example,
assigning metrics and seting up a routing table.
One simple thing that comes to my mind and that can solve most problems
is to select the interface for each connection.
It would certainly be faster then searching a routing table and as an
optional feature the interface selected could be a pointer to the actual
interface.
This should work in reduced environments as things don't usualy change
so much and it would still be light wheight as in LWip :)
The current ip_route is just a simple linear search anyway, so with only
one netif, it would take a trivial amount of time in any case. If you had
some sort of route cache, you'd have to be able to know when to invalidate
it, which would add complexity, thus reducing any difference.