traffic generator -recommendations

Jason Brooks jasonbbrooks at gmail.com
Thu Oct 22 17:24:18 UTC 2020


Hello Ahiya,

I apologize for the delay in answering you.  The answer is a qualified
yes.

I am replacing a number of remote dhcp servers with isc's dhcpd configured
as an HA pair in local datacenters. But before I alter 100+ shelf managers'
relay agent information, I needed to simulate a large number of  dhcp
requests, both load-wise, and to see if the dhcp servers handed out the
correct ip address ranges based on the criteria.

I have a number of remote dhcp servers handling a large amount of remote
dsl equipment.  Each remote group of dsl equipment  has a set of shelf
managers.  the shelf managers forward relay the dhcp requests to their
respective dhcp servers.  The relevent dhcp values sent to the dhcp servers
are:
     vendor class identifier (option 60)
     request parameter list (option 55)
     Dhcp relay agent info (option 82)
          circuit id (82, suboption 1)
          remote id (82, suboption 2)

I learned this information using tcpdump and wireshark to decode actual
packets.  As it happens, the circuit id corresponded to the vlan each dsl
device was connected to.

In order to test, I had a router that would forward requests to both of my
dhcp servers, so all my test host needed to do was send dhcp requests via
broadcast.

The dhtest program I referred to earlier is used to construct raw dhcp
packets and send them, thus there is no need to build additional interfaces
to bind to.

My test script, rundhctest.pl read in a pre-built CSV file with all of the
possible parameters my dhcp servers were to support.  It also read in a
list of 100,000 randomly generated mac addresses.  The rundhtest.pl script
used perl's Parallel::Forkmanager module to choose the number of children
to fork, and the max number of requests to send from each child.

The CSV file has the following format, and the following headers are
important:
Class;Rid;Cid;Opt82;VCI;Opt55
     classname as found in the dhcp config files, remoteid, circuit id,
encoded optoni82, vendor class identifier, and option 55 requested parms.

The mac address file is just a list of mac addresses: one per line.

I will include the dhtest.pl script here.

I hope it helps.

--jason


On Tue, Oct 13, 2020 at 10:41 PM Ahiya Zadok <ahiya at younity.io> wrote:

> Hi Jason
>
>
>
> Thank you for responding.
>
> So you mean that with parallel processes I could generate requests from
> several VLANs simultaneously?
>
>
>
> *From:* dhcp-users <dhcp-users-bounces at lists.isc.org> *On Behalf Of *Jason
> Brooks
> *Sent:* Wednesday, October 14, 2020 3:17 AM
> *To:* Users of ISC DHCP <dhcp-users at lists.isc.org>
> *Subject:* Re: traffic generator -recommendations
>
>
>
> Hello,
>
>
>
> I have used a tool called dhtest, I even pushed a change to their github
> site.  https://github.com/saravana815/dhtest
>
>
>
> I generated about 100,000 mac addresses and built a perl script to call an
> arbitrary number of parallel processes.
>
>
>
> it worked well.
>
>
>
> --jason
>
>
>
> On Tue, Oct 13, 2020 at 4:23 AM ahiya <ahiya at younity.io> wrote:
>
> hi AllI'm planning to implement Kea-dhcp4 to serve around 500 subnets with
> 5000 devices, I don't think the requests per sec rate will be high, it
> MDUs.I'm using FG as a DHCP relay.I’ve performed some functionality tests
> and it seems to work fine.I wanted to perform some load tests.I've to
> install Kea-admin on ubuntu 18.04 VM and use the perfdhcp app.but I can't
> make it quite work. all I see in my DHCP log are "DHCP4_LEASE_ADVERT"
> messages and no  "DHCP4_LEASE_ALLOC".and all sent packets are dropped
> according to perfdhcp report.I've tried various clients numbers the lower
> number of requests and low the rate but it didn't work.any ideas?and dose
> any one know if perfdhcp support sending from multiple interfaces?thanks in
> advanceRunning: perfdhcp -l vlan550 -n 20 -p 1 -r 100 -R 30Scenario:
> basic.***Rate statistics***Rate: 0 4-way exchanges/second, expected rate:
> 100***Statistics for: DISCOVER-OFFER***sent packets: 20received packets:
> 0drops: 20drops ratio: 100 %orphans: 0min delay: inf msavg delay: min
> delay:
> n/aavg delay: n/amax delay: n/astd deviation: n/acollected packets:
> 0***Statistics for: REQUEST-ACK***sent packets: 0received packets: 0drops:
> 0drops ratio: -nan %orphans: 0min delay: inf msavg delay: min delay: n/aavg
> delay: n/amax delay: n/astd deviation: n/acollected packets: 0
>
>
>
> --
> Sent from: http://isc-dhcp-users.2343191.n4.nabble.com/
> _______________________________________________
> ISC funds the development of this software with paid support
> subscriptions. Contact us at https://www.isc.org/contact/ for more
> information.
>
> dhcp-users mailing list
> dhcp-users at lists.isc.org
> https://lists.isc.org/mailman/listinfo/dhcp-users
>
> _______________________________________________
> ISC funds the development of this software with paid support
> subscriptions. Contact us at https://www.isc.org/contact/ for more
> information.
>
> dhcp-users mailing list
> dhcp-users at lists.isc.org
> https://lists.isc.org/mailman/listinfo/dhcp-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.isc.org/pipermail/dhcp-users/attachments/20201022/dcaf8c41/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: rundhtest.zip
Type: application/x-zip-compressed
Size: 1361 bytes
Desc: not available
URL: <https://lists.isc.org/pipermail/dhcp-users/attachments/20201022/dcaf8c41/attachment.bin>


More information about the dhcp-users mailing list