Live data from Hacker News

Show HN: Blitzping – A far faster nping/hping3 SYN-flood alternative with CIDR

github.com

11–14 of 14 posts

Re: Show HN: Blitzping – A far faster nping/hping3 SYN-flood alternative with CIDR

#11
post #4

Earlier quoted context omitted.

Thanks, I hope it'll be useful in your experiments. As for looking more realistic, I think it does the job; when I checked with Wireshark checked how different applications (e.g., games, programs) were communicating with their servers, I saw that they were sending empty SYN packets (i.e., no options) in order to initiate the TCP handshake. Although hping3 does not let you specify TCP options, it still lets you append…

> faster Check out {send,recv}mmsg before something io_uring-ish imho. One syscall/ctxt, many packets.

Thanks, that might be exactly what I am looking for; I'll check it out.

Re: Show HN: Blitzping – A far faster nping/hping3 SYN-flood alternative with CIDR

#14
For the posterity, I've managed to make Blitzping much faster: on the ARMv8-A device, it went from ~10.5 MiB/s to ~120 MiB/s. Instead of sendto(), I used a single connect() call to bind the raw socket to its destination, and then I used writev() calls to "queue" many packets for sending. Internally, writev() [and its other counterpart, sendmmsg()] still uses the same for-loop'ing mechanism to iterate through its queue, but said loop would exist in kernelspace, requiring less userspace->kernelspace syscalls to accomplish the same goal.
Post reply on HN