Client Survivability across VPN Restarts
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 38/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- cpp
- Domain
- networking
Research direction
Start by reproducing the ctsTraffic client pull test across a VPN disconnect and reconnect, including ipconfig /release and /renew. Investigate the client behavior when the VPN returns and define done as keeping the pull session alive and restoring downlink traffic without manual intervention.
Written by the indexing model from the issue text.
Description
Hello,
I have been running long (multi day) network good put tests using ctsTraffic with no issues. It’s been nice because the long tests I conduct need to persist through different unique “network reset / outage” scenarios, and ctsTraffic has been able to perform in those scenarios. For example, the ctsTraffic client performing a “pull” from a server doesn’t shut down even if I turn off the network router that the client is connected to. It will just record “0 up down” for the duration where network router outage occurs, and then pick back up when network connection is restored.
However, this all seems to break when I’m doing the test on a VPN. I will perform the same router reset test as before, and generally this happens:
1 Router reset initiated
2 VPN disconnects
3 ctsTraffic screams receive error warnings
4 vpn reconnects automatically
5 ctsTraffic comes back but says 0 Mb/s down even though there exists internet.
The issue can be resolved by manually disconnecting the VPN and then manually reconnecting (ctsTraffic session is restored, I see downlink traffic again) but I need this test to run automatically…
My initial thought was to automate vpn disconnect and reconnect but to do this properly you need to have admin privileges which I do not have. So - I found a work around - what I ended up doing to work around admin privileges to reset the VPN wad initiating ip config /release and ip config /renew. This seems to force restart the VPN properly, but then often this will cause ctsTraffic to close the session and exit the test.
What I need is a solution that either allows ctsTraffic to recognize that a vpn reconnect/disconnect occurred and properly restablish the connection without stopping the “pull” test, or persist through adapter ipconfig /release and /renew commands.
Any solutions, recommendations or assistance i greatly appreciated.
Thanks.
- Dominant language
- C++
- Stars
- 290
- Forks
- 54
- PR merge metrics
- No merged PRs in 30d
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from microsoft/ctsTraffic
-
Difficulty 3/5 1-2 days Newbie friendliness 25/100
microsoft/ctsTraffic#23 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 25/100
microsoft/ctsTraffic#22 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 25/100
microsoft/ctsTraffic#12 · 3 comments ·
-
Difficulty 4/5 3-5 days Newbie friendliness 25/100
microsoft/ctsTraffic#11 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 25/100
microsoft/ctsTraffic#9 ·
All issues in microsoft/ctsTraffic
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
hyprwm/aquamarine#426 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
amnezia-vpn/amnezia-client#3222 ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
valkey-io/valkey-search#1465 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
KhronosGroup/Vulkan-Tutorial#524 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
microsoft/onnxruntime-genai#2633 ·
Maintainers usually reply within 1 day