NEW 御劍高速 TCP 全埠掃描工具
在. NET 中,SocketAsyncEventArgs 很適合用來編寫高效網路通訊程式,這個類的主要功能是可以避免重複分配大量的非同步套接字 I/O 內進行同步的物件。
IOCP 網路程式設計模型也叫完成埠,完成埠會充分利用 Windows 核心來進行 I/O 的排程,理論上和大量的實踐中證明是用於 WIN 中 C/S 通訊模式中效能最好的網路通訊模型,沒有之一(希望別打臉)4 * V, o9 }/ a5 h& R
主要實現程式碼:
Dim CSocket As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
Dim AsyncEventArgs As New SocketAsyncEventArgs()
AsyncEventArgs.UserToken = CSocket
AsyncEventArgs.RemoteEndPoint = New IPEndPoint(IPAddress.Parse(ip), x)
AddHandler AsyncEventArgs.Completed, AddressOf OnCompleted
CSocket.ConnectAsync(AsyncEventArgs)
Private Sub OnCompleted(Sender As Object, e As SocketAsyncEventArgs)
If e.SocketError = SocketError.Success Then
End If
End Sub
這是一個基於. NET 2.0 編寫的高速 TCP 全埠掃描程式,掃描速度取於你的上行頻寬,連線緩衝區。主要是採用了. NET 中的非同步模型加事件通知(俗稱 IOCP),可能涉及到重複造輪子的嫌疑,但是確實要比很多埠掃描程式的速度要快上很多,因為沒有采用多執行緒,相對來說執行緒佔用不多,所以記憶體控制的還算比較不錯!
掃描效果演示圖(New):
下載地址:https://www.lanzous.com/i2atgre