Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Investigate parallel dial #283

Closed
Mzack9999 opened this issue May 8, 2024 · 0 comments · Fixed by #287
Closed

Investigate parallel dial #283

Mzack9999 opened this issue May 8, 2024 · 0 comments · Fixed by #287
Assignees
Labels
Investigation Something to Investigate Status: Completed Nothing further to be done with this issue. Awaiting to be closed.

Comments

@Mzack9999
Copy link
Member

Mzack9999 commented May 8, 2024

Investigate introducing parallel dialing in fastdialer/fastdialer/dialer.go.dial(...) and returning the first successful connection (with optional reuse/load balancing of other connections) similarly to https://go.dev/src/net/dial.go.dialParallel(...) to reduce failure time and cumulative timeout

If a domain, such as hackerone.com, resolves to multiple IPs, Fastdialer previously used sequential iteration. This was inefficient because if a port on the address was closed, Fastdialer would iterate over all IPs and each failed iteration would add to the total time. This issue was exacerbated when Nuclei called this function on 1000 goroutines, creating a bottleneck and delay in execution.

@Mzack9999 Mzack9999 added the Investigation Something to Investigate label May 8, 2024
@tarunKoyalwar tarunKoyalwar self-assigned this May 9, 2024
@tarunKoyalwar tarunKoyalwar linked a pull request May 9, 2024 that will close this issue
@tarunKoyalwar tarunKoyalwar linked a pull request May 23, 2024 that will close this issue
@Mzack9999 Mzack9999 added the Status: Completed Nothing further to be done with this issue. Awaiting to be closed. label May 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Investigation Something to Investigate Status: Completed Nothing further to be done with this issue. Awaiting to be closed.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants