List Info

Thread: How many IP address aliases can practically be used on one physical Ethernet interface?




How many IP address aliases can practically be used on one physical Ethernet interface?
user name
2006-01-31 10:23:39
Hi,

I am implementing and using a test bed simulating a huge
amount of IP 
clients, each preferable having a unique IP address. There
is no, no 
way to have an individual physical interface for each
simulated client 
so I use IP aliases. Currently it runs on Linux and there is
a limit of 
256 IP addresses per interface, among other things due to a
hard array 
limit in Linux net-tools ifconfig. There also seems to be
other 
limitations like linear searches in net-tools as well as in
kernel 
networking code. Just changing the array limit changed the
problem to 
being one of stability and performance.

So I became quite optimistic reading about Virtual Hosts and
IP aliases 
in the FreeBSD handbook chapter 11.9:

http://www.freebsd.org/doc/en_US.ISO885
9-1/books/handbook/configtuning-vi
rtual-hosts.html

"A given network interface has one "real"
address, and may have any 
number of "alias" addresses".

So is this really true and where is the catch? Will a
FreeBSD 6.0 
accept for example 8190 IP address aliases  each on say five
physical 
Ethernet interfaces? Will IP addresses be manageable to add,
list and 
delete? And how much will networking performance degrade
compared to 
using just a few aliases?

I can add that there is no forwarding or routing through a
simulator 
box except IP traffic to and from the client simulation
running inside.

I am maybe willing to change to BSD if there is a chance of
success, 
most Guru UNIX sysadmins running real production say mostly
good things 
about the BSDs. I just need some encouragement... 

Best Regards

Flyer
___________________________________________________
Try the New Netscape Mail Today!
Virtually Spam-Free | More Storage | Import Your Contact
List
http://mail.netscape.com
_______________________________________________
freebsd-questionsfreebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-que
stions
To unsubscribe, send any mail to
"freebsd-questions-unsubscribefreebsd.org"
How many IP address aliases can practically be used on one physical Ethernet interface?
user name
2006-01-31 13:56:36
tomasflyernetscape.net wrote:
> I am implementing and using a test bed simulating a
huge amount of IP
> clients, each preferable having a unique IP address.
There is no, no way
> to have an individual physical interface for each
simulated client so I
> use IP aliases.

Use BPF or libnet to generate test traffic using spoofed
IPs, rather than
actually configuring a machine with thousands of IPs.  There
are also companies
which make hardware IP traffic generators, if you want to
buy a solution rather
than building one.

For most purposes, generating 1000 connection requests from
one host using 1 IP
is pretty close to generating 1000 connection requests from
one host using 1000 IPs.

> So I became quite optimistic reading about Virtual
Hosts and IP aliases
> in the FreeBSD handbook chapter 11.9:
> 
> http://www.freebsd.org/doc/en_US.ISO885
9-1/books/handbook/configtuning-vi
> rtual-hosts.html
> 
> "A given network interface has one
"real" address, and may have any
> number of "alias" addresses".
> 
> So is this really true and where is the catch?  Will a
FreeBSD 6.0 accept
> for example 8190 IP address aliases  each on say five
physical Ethernet
> interfaces? Will IP addresses be manageable to add,
list and delete? And
> how much will networking performance degrade compared
to using just a
> few aliases?

I have heard of people using hundreds of aliases OK, even
though I am dubious
about the merits of doing so.  I don't know whether FreeBSD
can deal with ~41000
configured IP addresses on a system at all, but I doubt that
a normal person
would consider such a setup "manageable".

Consider using IPFW divert sockets instead.  You should also
look into dummynet.

> I can add that there is no forwarding or routing
through a simulator box
> except IP traffic to and from the client simulation
running inside.

What about ARP traffic?  In most cases, machines with
hundreds or thousands of
clients are dealing with them remotely, not locally, so all
of the traffic just
goes between the host and it's upstream Internet-facing
router, involving
minimal layer-2 resolution.

Your setup with tens of thousands of local IPs is going to
involve massive ARP
traffic which does not happen with most internet server
scenarios.  You're
likely to encounter other issues: most network switches have
a limited capacity
for their ARP tables, and are restricted to 1024 or perhaps
4096 entries.

-- 
-Chuck
_______________________________________________
freebsd-questionsfreebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-que
stions
To unsubscribe, send any mail to
"freebsd-questions-unsubscribefreebsd.org"
How many IP address aliases can practically be used on one physical Ethernet interface?
user name
2006-01-31 15:12:40

--- Chuck Swiger <cswigermac.com> wrote:

> tomasflyernetscape.net wrote:
> > I am implementing and using a test bed
> simulating a huge amount of IP
> > clients, each preferable having a unique IP
> address. There is no, no way
> > to have an individual physical interface for
> each simulated client so I
> > use IP aliases.
> 
> Use BPF or libnet to generate test traffic
> using spoofed IPs, rather than
> actually configuring a machine with thousands
> of IPs.  There are also companies
> which make hardware IP traffic generators, if
> you want to buy a solution rather
> than building one.
> 
> For most purposes, generating 1000 connection
> requests from one host using 1 IP
> is pretty close to generating 1000 connection
> requests from one host using 1000 IPs.

Depends what you're testing of course. 

Use raw sockets and then you can "simulate"
whatever IPs you without regard to the address of
the interface.

DT

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection
around 
http://mail.yahoo.com 
_______________________________________________
freebsd-questionsfreebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-que
stions
To unsubscribe, send any mail to
"freebsd-questions-unsubscribefreebsd.org"
How many IP address aliases can practically be used on one physical Ethernet interface?
user name
2006-01-31 15:10:50
Chuck Swiger wrote:
  > Use BPF or libnet to generate test traffic using
spoofed IPs, rather than
> actually configuring a machine with thousands of IPs. 
There are also companies
> which make hardware IP traffic generators, if you want
to buy a solution rather
> than building one.

Have done a quick search on these and found the docs for
libnet, can't seem to 
find much on BPF.

I could really do with a solution for testing a server under
heavy load, I'm 
aware of the mod for Apache (flood I think) but I don't have
the option of 
using that right now.  Would one of the above allow me to
simulate multiple - 
hundreds or thousands - clients accessing a server?

The main reason is that I've recompiled apache to up the
hard limit of 
MaxClients, the machine has 2Gb or RAM so should be able to
handle plenty of 
connections but I'd like to see at what point it would fall
over.

--
Cheers,

Paul
_______________________________________________
freebsd-questionsfreebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-que
stions
To unsubscribe, send any mail to
"freebsd-questions-unsubscribefreebsd.org"
How many IP address aliases can practically be used on one physical Ethernet interface?
user name
2006-01-31 15:38:02
tomasflyernetscape.net wrote:
 
> I am implementing and using a test bed simulating a
huge amount of IP 
> clients, each preferable having a unique IP address.
There is no, no 
> way to have an individual physical interface for each
simulated
> client so I use IP aliases. Currently it runs on Linux
and there is a
> limit of 256 IP addresses per interface, among other
things due to a
> hard array limit in Linux net-tools ifconfig. There
also seems to be
> other limitations like linear searches in net-tools as
well as in
> kernel networking code. Just changing the array limit
changed the
> problem to being one of stability and performance.
> 
> So I became quite optimistic reading about Virtual
Hosts and IP
> aliases in the FreeBSD handbook chapter 11.9:
> 
> http://www.freebsd.org/doc/en_US.ISO885
9-1/books/handbook/configtuning-vi
> rtual-hosts.html
> 
> "A given network interface has one
"real" address, and may have any 
> number of "alias" addresses".
> 
> So is this really true and where is the catch? Will a
FreeBSD 6.0 
> accept for example 8190 IP address aliases  each on say
five physical 
> Ethernet interfaces? Will IP addresses be manageable to
add, list and 
> delete? And how much will networking performance
degrade compared to 
> using just a few aliases?

After a short test I don't think 8190 aliases will be a
problem.

rootafricanqueen ~ #ifconfig re0| grep inet | wc -l
   18008
rootafricanqueen ~ #ifconfig re0 -alias 192.168.10.100
rootafricanqueen ~ #ifconfig re0| grep inet | wc -l
   18007
rootafricanqueen ~ #ifconfig re0 alias 192.168.10.100
rootafricanqueen ~ #ifconfig re0| grep inet | wc -l
   18008

I don't know if there is a performance degradation on
better hardware, but for my re0 the ftp performance
seems to be the same as with only one IP.

The only "catch" I can see is that it takes a
while
to create a few thousand aliases 
On my AMD Athlon(tm) XP 1900+ (1578.59-MHz 686-class CPU)
I get about five aliases per second.

Fabian
-- 
http://www.fabiankeil.de/
[1-5]

about | contact  Other archives ( Real Estate discussion Medical topics )