Nmap Development mailing list archives
Re: Call for testers: nsock-engines experimental branch
From: Henri Doreau <henri.doreau () greenbone net>
Date: Sat, 23 Jul 2011 15:11:16 +0200
Hello, 2011/7/23 Fyodor <fyodor () insecure org>:
Thanks Henri. This seems like a valuable feature. Have you tested whether it still compiles on Windows? Have you thought about the Windows "completion port" system? Or maybe Windows has a better/newer system now? Even if you don't implement another system like completion ports on Windows, do you think your changes will make that easier for someone to do?
I am afraid I don't know enough about completion ports and windows development in general to answer... Thanks to Arnaud Bellec nsock-engines should now compile on windows but I have no windows box and therefore can't test it. The new infrastructure _should_ ease the addition of OS specific IO notification facilities. People just have to create a new engine exporting the io_engine interface to the rest of the library. Both existing engines are around 440 lines long and I've tried to make them as short and easy to read as possible.
Do you know if Mac offers epoll or some similar system for avoiding the limitations of select in mass socket operations?
To the best of my knowledge Mac OS offers the BSD kqueue/kevent system, which is known to be very efficient. Writing a kqueue/kevent based engine will be my first priority after I can consider that the rest of the code is stable and efficient enough. I have identified a drawback in my infrastructure: as each IOD stores its own event lists, the memory footprint increases. I am currently working on a fix (that seems to improve performances as well). The fix is simple: it simply restores the event lists in the nsock_pool, just as they were before, but events are grouped by IOD within the lists, and each IOD has pointers to its first event of each kind, instead of having complete lists. I'll make an announcement here as soon as this is ready, checked into my branch and the benchmarks are updated. I am also writing documentation to describe the changes and the new infrastructure.
Cheers, Fyodor
Regards. -- Henri Doreau | Greenbone Networks GmbH | http://www.greenbone.net Neuer Graben 17, 49074 Osnabrueck, Germany | AG Osnabrueck, HR B 202460 Executive Directors: Lukas Grunwald, Dr. Jan-Oliver Wagner _______________________________________________ Sent through the nmap-dev mailing list http://cgi.insecure.org/mailman/listinfo/nmap-dev Archived at http://seclists.org/nmap-dev/
Current thread:
- Call for testers: nsock-engines experimental branch Henri Doreau (Jul 09)
- Re: Call for testers: nsock-engines experimental branch Luis Martín García (Jul 09)
- Re: Call for testers: nsock-engines experimental branch Henri Doreau (Jul 09)
- Re: Call for testers: nsock-engines experimental branch Fyodor (Jul 17)
- Re: Call for testers: nsock-engines experimental branch Henri Doreau (Jul 18)
- Re: Call for testers: nsock-engines experimental branch Henri Doreau (Jul 20)
- Re: Call for testers: nsock-engines experimental branch Fyodor (Jul 24)
- Re: Call for testers: nsock-engines experimental branch Henri Doreau (Jul 23)
- Re: Call for testers: nsock-engines experimental branch Henri Doreau (Aug 14)
- Re: Call for testers: nsock-engines experimental branch Henri Doreau (Jul 18)
- Re: Call for testers: nsock-engines experimental branch Luis Martín García (Jul 09)