Nmap Development mailing list archives

Re: nmap parallelization


From: "Giorgio Zoppi" <giorgio.zoppi () gmail com>
Date: Tue, 23 Dec 2008 19:50:47 +0100

All of Nmap's parallelization is implemented by Nmap itself and isn't a
threading/forking/cloning/multi-process model.  Most of it is done via
NSOCK's callback architecture.

You'll want to look at UltraScan() in scan_engine.cc and the NSOCK
library in nsock/

Threading in NSE uses Lua which implements interpreter-level (not
OS/kernel) threads.

Threading is one of the least portable features out there.  Event with
good standards like pthreads, Windows and many other OSes do threading
differently.  Java is a great example of a program that has had to
contend varying thread support across platforms.  Nmap side-steps the
problem.

So you're saying that Nmap is using asyncIO (IOCompletion port in
Win32 or asio in Linux) for its main
work, isn't it?
-- 
Quiero ser el rayo de sol que cada día te despierta
para hacerte respirar y vivir en me.
"Favola -Moda".

_______________________________________________
Sent through the nmap-dev mailing list
http://cgi.insecure.org/mailman/listinfo/nmap-dev
Archived at http://SecLists.Org


Current thread: