Subject: Multiple link-level addresses
To: None <tech-net@NetBSD.ORG>
From: Martin Husemann <>
List: tech-net
Date: 04/17/1997 00:49:45
Two simple questions to those who might know it:

We do have multiple alias addresses for interfaces (I'm only thinking
of AF_INET addresses right now), do we have the possibility to assign
multiple link-level addresses to an interface too?

Is it possible for an interface to know to which of its aliased addresses
a packet was sent to (without duplication all the routing stuff)?

FYI a little background: raw-ip-over-isdn transmits IP frames over ISDN
without encapsulating them further. No PPP, no dynamic addresses, no login/
authentication - just the remote phone number (and the local one to
authenticate). In BISDN we use one interface for every possible connection
right now. This is easy, you just configure the interface as if it had 
a permanent connection and when packets are queued for it, a connection
is established. But you always have few possible concurent connections
(depending on the number of ISDN cards and basic rate interfaces you
happen to have) and possibly quite a few more configured connections.
Think about it as an /etc/passwd file: you can get by with a limit of
(say) 10 concurrent users even if you have 1000 entries in /etc/passwd.

I would realy like to cut down the number of interfaces needed to be
configured in the kernel from the number of known connections (1000 in the
example) to the number of possible concurrent connections (10 in the example).

The way to achive this I'm thinking about is: attach an interface to a 
connection as soon as it is used. All currently unused connections could
wait on a single pseudo-interface for an incoming connection or outgoing
packets to be transmitted.

I'm not sure this is the "right way (tm)" - so any thaughts, ideas, hints, 
recommendations, ... are welcome!