This page is a systematic reference focused on why a choice works and which layer to change when results are poor. If you need to create an account, get a client, import a subscription and make your first connection, start with the Setup Guides. Once the basic connection works, return here to understand how protocols and routes interact. To view regions, cities and route types directly, visit the Network page.
Protocol names are often treated as speed labels, but no protocol determines the final experience on its own. Application data is processed by the client, enters the network through an entry city, then travels across a direct, relay or dedicated topology to the exit and target service. Queuing, retransmissions, detours or system sleep at any point can appear as a slow connection. A meaningful comparison therefore considers the protocol, client implementation, local network, entry location, backbone path and target service—not just a protocol name.
Start with a protocol selection framework
Break “fast” into observable results
When someone calls a connection “fast,” they may mean different things: a page responds quickly, a file transfers smoothly, meeting audio has few interruptions, video resumes promptly after seeking, or a device continues working quickly after waking. These outcomes depend on different network conditions. Web browsing prioritizes connection setup and the first data response; sustained downloads depend more on throughput and congestion control; real-time meetings are sensitive to queues and jitter; mobile devices are additionally affected by network changes, background limits and power policies. Define the application behavior before choosing, rather than judging a meeting route by file-download results.
Protocol comparisons should also separate control overhead from the data phase. During session setup, a client may perform DNS resolution, transport handshakes, encryption negotiation and protocol authentication. Once the session is established, extra encapsulation, head-of-line blocking and packet-loss recovery determine sustained performance. Fewer setup steps do not guarantee greater stability on a weak network, and aggressive recovery does not guarantee higher speed on a clean route. Every mechanism trades one cost for another under different conditions.
Start with requirements, not protocol popularity
When choosing, confirm the application type, current access network, device state, entry distance and route topology in sequence. The application determines whether latency, jitter or throughput matters most; the access network determines how common packet loss and handoffs are; the device state determines the importance of background keepalive and resource use; entry distance affects the first segment; topology determines who controls the cross-region backbone path. Protocol differences become easier to see only when these conditions are reasonably stable. If you change the protocol, entry and exit at the same time, even an improvement will not reveal which variable helped.
A protocol name cannot replace the implementation quality of a specific client. The same protocol may use different connection reuse, DNS strategies, caching and system interfaces across clients. Problems that are invisible on a well-equipped desktop may become significant in mobile background operation; settings that work on a fixed network may need adjustment on public Wi-Fi. Judge the actual result on the current platform and client rather than treating a protocol’s theoretical characteristics as universal conclusions.
| Observation dimension | Main question | Variables that are easy to confuse |
|---|---|---|
| Connection setup | Do initial loads and reconnects feel immediate? | DNS resolution, entry distance, client cold start |
| Sustained transfer | Does a long session remain steady? | Target-service throttling, shared local bandwidth |
| Real-time interaction | Do voice and remote control remain continuous? | Queuing, wireless interference, background tasks |
| Mobile recovery | Can the session continue after a network change or wake-up? | Power saving, client keepalive, network switching |
Use single-variable comparisons instead of repeated guesswork
A useful comparison fixes the target app, device and test period while changing one condition at a time. First keep the protocol fixed and compare nearby entries; then keep the entry fixed and compare protocols; only afterward compare topologies. Re-establish the session after each change to avoid interference from old connections, caches and preloading. Do not judge by a single page load. Observe connection setup, short interactions, sustained use and recovery after sleep. If results fluctuate, classify the issue as a path or congestion problem before assuming protocol incompatibility.
The goal is not to find one permanently universal protocol, but to create a primary combination and a backup combination. The primary serves frequent daily tasks; the backup targets weak networks, frequent handoffs or specific applications. This reduces ad hoc troubleshooting: when conditions change, switch first to a verified backup route, then determine whether the issue is the protocol, entry or target service. Protocol selection should become a repeatable decision process, not a collection of conflicting impressions.
Design trade-offs among common protocols
Shadowsocks: A straightforward baseline
Shadowsocks follows a relatively direct model: the client encrypts and encapsulates application traffic before handing it to the remote side. Its protocol layers are comparatively simple, so it generally runs well on resource-constrained devices and provides an easy baseline for comparison. When the local network is reasonably healthy and usage centers on web browsing, file sync and everyday video, Shadowsocks can avoid unnecessary protocol complexity. Its advantage should not be read as being fastest in every condition, but as having a clear processing path with fewer extra mechanisms.
Simplicity also means that some capabilities depend on coordination between the client and route. Where DNS resolution occurs, whether connections are reused and how datagrams are handled all affect real-world performance. Different handling of system proxies, virtual network interfaces or background recovery can produce different results on the same route. With Shadowsocks, first confirm that application traffic is actually entering the client before discussing route speed. If only some apps fail, check proxy mode and the resolution path before switching routes.
VMess and VLESS: Focus on implementation and transport combinations
VMess has its own authentication and encapsulation logic and is often combined with multiple transport options. It suits environments with mature client support that need to accommodate different access networks. The trade-off is a more complex processing chain: troubleshooting must distinguish the protocol layer, transport layer and outer connection. Slow setup should not automatically be attributed to VMess; also check DNS resolution, the outer handshake and the entry path. If sustained transfer is normal but the first response is slow, focus on the setup phase. If sessions pause repeatedly, continue by checking packet loss and queuing.
VLESS separates authentication and data handling in a lighter way, but its real-world performance depends heavily on the chosen transport, security layer and client implementation. It is not a standalone “speed button” that can be judged outside its transport environment. When selecting VLESS, focus on mature support for the current platform, a clearly compatible combination on the route side, and whether the app needs a reliable stream or low-latency datagrams. The more complex the combination, the more important it is to keep configuration sources consistent rather than mixing entries or transport parameters.
Trojan: Establishing sessions over a mature transport layer
Trojan typically uses a mature secure transport layer for encryption and session setup. Its value is a clear client ecosystem, an easy-to-understand reliable stream and established connection-management mechanisms. Web apps, collaboration tools and file transfers commonly use reliable streams, making Trojan a useful stability baseline. However, outer handshakes, certificate checks, DNS resolution and system time can all affect setup. Treat “cannot connect” and “slow after connecting” as separate issues.
If a Trojan session connects but the app receives no content, check where the target domain is resolved, the client’s routing rules and the entry route instead of repeatedly changing authentication details. If it fails only after the device wakes, the old connection may have been reclaimed and the client may not have rebuilt it promptly. Reliable streams also have head-of-line blocking: when the underlying path loses packets, later data may wait for the missing portion. This cost is minor on a clean route but can appear as brief pauses on a weak network.
Hysteria2 and TUIC: Recovery for volatile paths
Hysteria2 and TUIC are built on mechanisms better suited to modern datagram transport and generally emphasize congestion control, session recovery and multiplexed data on weak networks. They suit environments with packet loss, jitter or frequent network changes, as well as applications that need low interaction latency. More aggressive recovery can consume more processing resources, and its benefit depends on a smooth datagram path. If the local network, routing equipment or access environment handles datagrams poorly, the theoretical advantage may not materialize.
Neither should be simply labeled a “high-speed protocol.” On a stable fixed network, a simple reliable-stream protocol may be sufficient; on mobile networks, public Wi-Fi or volatile paths, Hysteria2 and TUIC are more likely to show their value. Compare interaction continuity, handoff recovery and long-session stability rather than a single download peak. If the connection cannot be established at all, first confirm that the selected entry supports the protocol, then check whether the local network allows the relevant datagrams through.
| Protocol | Primary focus | Scenarios to validate first | Troubleshooting focus |
|---|---|---|---|
| Shadowsocks | Simple structure and direct processing | Everyday web use, sync, fixed networks | Proxy mode, resolution path, client implementation |
| VMess | Rich authentication and transport combinations | Mature clients with complete support | Outer transport, handshake and entry path |
| Trojan | Mature secure transport layer and reliable streams | Collaboration tools, files and web apps | Certificates, time, resolution and old sessions |
| VLESS | Lightweight authentication, transport-dependent | When the route provides a clearly compatible combination | Transport parameters, platform support and configuration consistency |
| Hysteria2 | Weak-network recovery and congestion control | Mobile access and noticeably jittery paths | Datagram reachability, resources and path quality |
| TUIC | Multiplexed data and mobile recovery | Interactive apps and devices that change networks frequently | Client support, datagram path and power-saving policy |
These descriptions indicate selection directions, not a fixed ranking. Protocols and routes must be evaluated together: a protocol suited to weak networks may still perform worse on a heavily congested entry than a simple protocol on a better relay route. Conversely, when the route is stable, differences from complex mechanisms may be small. Keep different protocols in the same region as controls and record which combination is more reliable for the current device and app.
Connection setup and resource use
What happens before a connection starts
Between tapping Connect and an app receiving content, the client may start, read configuration, resolve a domain, connect to the entry, authenticate the protocol, negotiate security, resolve the destination remotely and connect to the target service. Waiting at any step can be summarized as “the protocol starts slowly.” A cold client start may load rules and create a virtual interface; a domain-based entry depends on local resolution speed; reliable streams and secure layers may require round trips; the target service may also respond slowly. When judging setup speed, distinguish the moment the client UI says connected from the moment the app receives its first data.
Connection reuse changes this experience. A client may place multiple app requests on an established connection, reducing repeated handshakes; but if the reused connection is unhealthy, several requests may wait together. Recovery after reconnecting often points to an old session or reuse state rather than an unusable route overall. Disconnect fully and reconnect, then test with an uncached target. If only the first load is slow and later access is smooth, focus on setup and resolution. If use remains intermittent, investigate congestion, packet loss and resource use.
Where processing overhead comes from
Client resource use mainly comes from encryption and decryption, data copying, rule matching, DNS resolution, logging, virtual-interface handling and retransmission management. With a simple protocol structure, each packet usually follows a shorter processing path; complex congestion control or connection migration requires the client to maintain more session state. Differences may be invisible on a well-equipped desktop but emerge on low-power devices, background-restricted devices or systems running many network apps at once.
Rule volume and routing mode are often overlooked. Full takeover sends more connections through the client, naturally increasing rule matching and forwarding; on-demand routing is more resource-conscious but can leave some apps outside the route when misconfigured. Log level also affects performance, especially during troubleshooting when heavy writes add storage and processing pressure. Restore the normal log level for daily use, enable detailed records only briefly for diagnosis, and avoid publicly sharing logs containing account information.
Cost differences between reliable streams and datagrams
Reliable streams emphasize ordered delivery, giving apps complete continuous data, but later content waits when missing data must be recovered. Datagram transport lets different flows recover more independently and can adapt sending behavior to path changes through modern congestion control, but the client and server must manage more state. Neither is universally better: files and web pages need complete content and benefit from mature reliable-stream mechanisms; voice, interaction and weak-network recovery prioritize timeliness, where datagrams may be a better fit.
Also avoid creating mutual waiting through “reliable streams inside reliable streams” on weak networks. When both outer and inner layers retransmit and control congestion, recovery timing may become inconsistent under some loss conditions. Clients commonly reduce this effect through different encapsulation methods, but application type still matters. If a meeting app uses datagrams while the outer path converts everything to a reliable stream, loss-related pauses may change. If the route natively forwards datagrams, interaction may better match the app’s expectations.
| Symptom | Phase to check first | Next step |
|---|---|---|
| The Connect button waits for a long time | Client startup, resolution, entry handshake | Keep the entry fixed and test another protocol |
| The app remains unresponsive after showing connected | Routing rules, remote resolution, target connection | Check whether the app is entering the client |
| Slow the first time, smooth afterward | Cold start, handshake and cache | Compare reconnecting with keeping the session alive |
| Periodic pauses during continued use | Packet loss, queuing, reused connections | Change the topology and observe the same app |
How to compare without cache interference
When comparing connection setup, first stop background tasks that are continuously transferring data so sync, updates and video preloading do not compete for the local uplink. After each protocol change, fully disconnect the old session and wait for the client to confirm its state before opening a target that has not been loaded. Do not rely only on a speed-test page: speed tests usually reuse multiple connections and fill the available bandwidth, so they do not represent lightweight pages or meeting setup. More useful records include whether the connection succeeds, how quickly the first content arrives, whether continuous actions remain stable and whether recovery from sleep requires a manual reconnect.
If you need to check whether a basic path is reachable, use built-in system commands, but do not equate their output with app performance. Some entries may not answer probes while the app works normally; conversely, a smooth probe does not mean the target service is free of queuing. Commands provide supporting evidence only. The final judgment should come from the target app.
ping example.com
traceroute example.com
On Windows, use the system’s corresponding path-tracing command. Before running it, confirm that the test target is a public example domain, and do not expose account credentials, subscription contents or client tokens in screenshots or logs. If you submit the results in a support ticket, include the device platform, access-network type, selected entry, protocol and specific app behavior so the issue can be reproduced instead of simply reporting “it’s slow.”
Mobile power use and network-change behavior
Battery use is not determined by encryption alone
Mobile battery use usually comes from keeping the wireless radio active, waking frequently to process data, reconnecting in the background, matching rules and using the system’s virtual network interface—not just from encryption. Even when each encryption operation is inexpensive, repeated interruptions and immediate reconnects keep the radio and client working. Conversely, a stable session that remains active may use less power than frequent reconnects. Evaluate a protocol’s battery behavior by first observing its stability on the current network, rather than inferring it from protocol structure alone.
App behavior can magnify the difference. Cloud-drive sync, photo backup, push messages and media preloading keep the client processing data; after the screen turns off, the system may restrict background tasks, requiring the client to restore the connection when it gets runtime. If an app itself frequently wakes the network, changing protocols may help only marginally. To troubleshoot battery use, temporarily stop high-frequency background sync and see whether the client continues reconnecting. Comparisons are meaningful only with similar workloads.
Power saving and background restrictions
Both iOS and Android manage background execution, but policies and vendor implementations vary. After a client goes into the background, the system may freeze its UI process, reclaim old connections or limit repeated wake-ups within a short period. Seeing “connected” after returning to the app does not guarantee that the old session is still valid; the client must detect path changes and rebuild the data channel. Implementations with connection migration or fast recovery are generally more resilient when switching between mobile and Wi-Fi, provided the client correctly receives system network-state notifications.
Android devices may also apply additional power-saving policies to background apps. If the connection stops after the screen locks and returns only when the screen turns on, first check the client’s background permission in system settings before comparing protocols. Mistaking a system restriction for a route failure leads to repeated entry changes without improvement. On iOS, if only one app recovers slowly, check whether it reuses an old connection and whether the client’s on-demand connection is triggering correctly. System-layer and protocol-layer issues must be handled separately.
Why network changes often interrupt connections
When a device switches from Wi-Fi to a mobile network, its local address, exit path and available transport conditions all change. Traditional connections are usually tied to the old path and need a new handshake; transports with connection migration may try to preserve session state, but the target route, client implementation and system permissions still matter. Hysteria2 and TUIC are often considered for handoff recovery because their underlying transports pay more attention to path changes—not because their names guarantee an uninterrupted connection.
Handoff testing should reflect real use: keep an interactive session open, switch access networks and see whether the app recovers automatically; then let the device sleep briefly and continue after returning to the app. If the handoff fails but a manual reconnect works immediately, the entry is available and the issue is concentrated in connection migration or client-state refresh. If reconnecting also fails, check datagram reachability on the new network and use a reliable-stream protocol as a control. Different network environments may need different primary protocols; they do not have to match exactly.
Balancing keepalive and battery use
Overly frequent keepalives increase wireless wake-ups, while overly long intervals may let intermediate devices reclaim idle mappings. Do not blindly apply fixed settings found online; different access networks and clients already account for common conditions in their defaults. Keep the client defaults first, and adjust them only when you have a clear symptom such as losing connectivity after screen lock, failing to recover after a handoff or seeing the first request fail after a long idle period. Change one option at a time and observe whether connection stability and battery trends improve together.
For messaging and collaboration that stay online in the background, stability is usually more important than peak throughput. Prefer a protocol and nearby entry verified on the device with fewer reconnects. When video or large-file transfers happen in the foreground, switch to a route better suited to throughput during use, then return to the daily combination afterward. This scenario-based approach is more controllable than keeping a resource-heavier option enabled all the time and reduces wasted work while the mobile device is idle.
| Mobile symptom | Possible layer | How to verify |
|---|---|---|
| Connection stops after screen lock | System background limits, old session reclaimed | Check background permissions and compare with a manual reconnect |
| No response after switching access networks | Connection migration, datagram path | Switch to a reliable-stream protocol to confirm reachability on the new network |
| Noticeable battery drain while idle | Frequent reconnects, background sync, keepalive | Pause sync and review the client’s reconnect log |
| Recovers quickly after returning to the app | Normal system wake-up and session rebuild | Continue checking whether the real app remains usable |
Direct, Relay and Dedicated Route Topologies
Entry, backbone and exit are different locations
Routes are often named for their exit city, but the complete path includes the user-to-entry segment, entry-to-exit segment and exit-to-target segment. The entry determines the distance of the first connection; the exit determines the region seen by the target service; the backbone between them determines cross-region quality. Looking only at the exit name hides a critical segment: two exits in the same city may have completely different stability because their entries and intermediate paths differ. Choose an entry that is reasonably close to the current access location before considering its relationship with the exit and target service.
TnVPN offers a selection spanning 90+ countries and 200+ routes, but the value of route variety is path alternatives, not frequent random switching. Start on the Network page by filtering by region and route type, keep a primary route suited to daily apps, then choose a backup with a different topology. If primary and backup routes share the same entry or backbone, both may be affected by the same fault. A different topology provides more useful troubleshooting contrast.
Direct routes: Simple paths influenced by public-network changes
A direct route means the user reaches the remote entry or exit through the current network without an additional relay arranged by the service. Its advantages are a simple path and less forwarding overhead. Where routing from the local provider to the target region is good, both setup and sustained transfer can be straightforward. Direct routes also help assess baseline network conditions: if a nearby direct entry is still notably unstable, first check the local wireless environment, shared bandwidth and access network rather than immediately blaming the cross-region backbone.
The limitation of direct routes is that public routing can change with the time of day and provider policy. Forward and return paths may differ, and a detour in either direction can slow interaction. When shared networks are busy in the evening, a direct route may pass through a congested peering point; another route in the same city may improve results if it uses a different entry. Direct routes suit regions with inherently good paths, lightweight web use and baseline testing, but they should not be understood as having the lowest latency forever.
Relay routes: Improving cross-region paths through a controlled entry
A relay route sends traffic first to a nearby or better-connected entry, then forwards it to the exit. It adds one forwarding step but may avoid an unstable public cross-region path. Its value is not that the distance is shorter, but that the most variable backbone segment is replaced by a more controlled path. Remote collaboration, sustained file transfers and environments that fluctuate in the evening are often worth testing with a relay.
A relay can also create a new bottleneck. The entry capacity, entry-to-exit link and forwarding equipment must all remain stable. Choosing an entry that is very far away adds delay to the first segment even if the later path is good. Compare a relay with a direct route in the same region by changing only the topology while holding the protocol, device and target app fixed. If the first response changes slightly but sustained use becomes steadier, the relay improved the backbone segment. If every phase becomes slower, try a nearer entry instead of rejecting the route type altogether.
Dedicated routes: Greater control over the backbone path
A dedicated route generally means a more controlled transport method between entry and exit, with emphasis on stability and path consistency across the backbone. It suits meetings, remote desktops, collaboration tools and long transfers that are sensitive to jitter. A dedicated route does not improve local access quality between the user and entry, nor does it remove queuing at the target service. Local wireless interference or an entry that is too far away can still affect results.
When choosing a dedicated route, first confirm that the entry location is reasonable, then observe continuity in the real application. If meeting audio improves while the speed-test peak barely changes, there is no contradiction: the route may reduce queuing and improve consistency rather than increase instantaneous bandwidth. Conversely, if the target service limits the connection, switching to a dedicated route may not improve download speed. Topology should serve the application goal, not be judged by its name alone.
| Route type | Path characteristics | Best suited for | What to watch |
|---|---|---|---|
| Direct | Reaches the remote side through the public network path | Regions with good paths, baseline comparisons | Public routing and time-of-day changes |
| Relay | Reaches the entry first, then forwards to the exit | Improving cross-region backbone paths | Entry distance and forwarding capacity |
| Dedicated | Uses a more controlled backbone transport | Meetings, collaboration and long sessions | Local access and the target service remain variables |
Why the entry city often affects experience before the exit label
Application data must reach the entry first, so the first segment is involved in every interaction. A distant entry adds baseline wait to every request; even an exit close to the target service cannot offset that detour. For frequent round trips such as web browsing, code collaboration and remote control, entry distance and first-segment stability matter more. Once buffering is established, continuous video is less sensitive to a single round trip, so exit availability and sustained throughput carry more weight.
The general order is therefore to choose a nearby entry based on the current access location, choose an exit based on the target service, and then compare direct, relay and dedicated routes. If the nearby entry performs poorly, try different route types in the same region instead of jumping straight to a more distant region. This layered approach reduces wasted tests and helps identify whether the issue lies in the local first segment, cross-region backbone or target service.
Packet loss, jitter and evening congestion
Packet loss can occur anywhere along the path
Packet loss means data did not arrive as expected, but it does not necessarily mean the route node itself has failed. Wireless interference, home-router queues, shared local access, provider interconnection, entry equipment, backbone paths and the target service can all discard packets. Reliable streams retransmit missing content, which appears as pauses or lower speed; real-time datagram apps may skip expired content, producing broken audio or lower visual quality. The same loss condition can look different in different apps, so judge it together with the application symptom.
Packet-loss results from probe commands also require careful interpretation. Devices along the path may give probe responses a lower priority while forwarding application traffic normally; a nonresponsive intermediate point does not mean all data beyond it is interrupted. Stronger evidence comes from the target app showing an issue alongside observations from multiple paths, with repeatable changes after switching the local network or route. A single screenshot cannot locate the responsible segment; sustained comparison records are more useful.
Jitter disrupts real-time use more readily than average latency
Jitter means that data-arrival intervals are unstable. Even when average latency is acceptable, a sudden queue buildup can prevent voice buffers from compensating in time. Meetings, cloud desktops, online editing and interactive apps are usually more sensitive to jitter than file downloads because they depend on continuous feedback. Download tools can absorb brief variation through concurrency and caching, but real-time apps cannot wait indefinitely for expired data. For meetings, judge whether audio and controls remain continuous rather than looking only at download speed.
Wireless networks are a common source of jitter. Even with an apparently strong signal, competition from nearby devices, router background tasks or household uploads can create queues. To verify, temporarily move closer to the access point, pause other uploads or switch to another local access method. If every remote route improves, the issue is probably local; if only one topology improves, continue checking the entry and backbone segments.
Why evening congestion is time-dependent
In the evening, many users stream video, run updates and sync to the cloud at once, making shared access and peering links prone to queuing. Congestion is not simply “bandwidth running out”; it occurs when data enters equipment faster than it can be forwarded promptly, causing queues to build. Longer queues may reduce immediate packet loss but increase waiting. Once queues fill, packets are dropped and retransmissions begin. Users see slower page responses, higher meeting latency, changing video quality or fluctuating downloads.
Congestion-control behavior differs by protocol. Reliable streams usually reduce sending speed in response to loss and round-trip changes, then recover gradually; modern datagram transports may identify path conditions faster and recover different flows independently. But protocols cannot create link capacity that does not exist or replace a better entry and backbone path. For evening issues, comparing different topologies before protocols is usually more effective than repeatedly changing protocols on the same congested path.
Separate local queuing, route congestion and target-service limits
If every route and app slows on the same access network, first check local uploads, system updates and router status. When the uplink is full, acknowledgements and interactive data may also queue, making downloads appear abnormal. If only routes to one region are affected while others are normal, the issue is more likely a specific entry or backbone path. If only one target service is slow while other pages and file transfers work, consider queuing, regional policy or connection limits at the target service.
For diagnosis, choose targets with different characteristics: an ordinary web page for setup and first response, a sustained file for throughput, and a meeting or remote interaction for jitter. Do not run them simultaneously or they will compete for local bandwidth. Verify each separately and record the results to identify the affected phase. If every target improves after a route change, the path change helped; if only one target changes, continue analyzing the target service and exit region.
- ✅ Keep the protocol and app fixed; compare direct, relay and dedicated routes.
- ✅ Pause cloud sync, system updates and large uploads, then check whether interaction recovers.
- ✅ Test web response, sustained transfer and real-time interaction separately so the tests do not interfere.
- ❌ Do not judge long-term stability by a single peak, or treat a nonresponsive intermediate device as a service outage.
- ❌ Do not change the protocol, entry, exit and client mode at the same time, or you cannot identify the effective variable.
Retransmissions, head-of-line blocking and excessive concurrency
Retransmissions preserve content integrity after packet loss but delay later delivery. Ordered delivery in a reliable stream is especially prone to waiting for missing data. To improve throughput, an app may open multiple concurrent connections; this helps on an idle path but can worsen queues during congestion, making interactive requests compete with large files. If a browser page is slow while a download remains at full speed, pause the download before changing protocols.
Client connection reuse involves a similar trade-off. Reuse reduces repeated handshakes but may make several apps share one unhealthy session. When some requests wait indefinitely, a full reconnect can clear old state. If reconnecting helps briefly before the problem returns, the root cause is likely still path congestion or resource competition; if the session remains stable, old state may not have been restored correctly. Treat reconnecting as a diagnostic step, not the only solution, so you can continue finding the root cause.
Choose combinations by use case
Web browsing, search and lightweight collaboration
Web browsing and lightweight collaboration usually involve many short connections and small requests, so setup and the first response matter more than sustained peak speed. Start with a nearby entry and establish a baseline using Shadowsocks, Trojan or a mature VLESS combination. If the first load is slow but the page is smooth afterward, check resolution and handshakes. If resources stop loading halfway, investigate reliable-stream loss recovery on the current path. Do not choose a distant exit for theoretical throughput, because first-segment delay affects every interaction.
Code hosting, document collaboration and messaging apps may also keep long-lived connections. If messages are delayed or a page needs a manual refresh after the device wakes, compare implementations with stronger session recovery, but first check whether the system is restricting the client. Office use should favor stable, repeatable combinations over frequent switching. For further analysis of meeting and collaboration routes, read Which VPN Is Best for Remote Work? Choosing Routes for Meetings and Collaboration.
Meetings, voice and remote desktops
Real-time use is most vulnerable to queuing, jitter and brief packet loss. Start with a nearby entry, compare relay and dedicated routes first, then choose a protocol based on the access network. On a stable fixed network, Trojan, Shadowsocks or a mature VLESS combination may be sufficient; with mobile access, public Wi-Fi or frequent handoffs, compare Hysteria2 and TUIC recovery. Judge by continuous voice, even control response and recovery after a handoff—not by a single download result.
Before a meeting, stop large uploads and cloud sync so local queues do not distort the test. If audio breaks up while video continues, real-time data is probably more sensitive to jitter; if everything pauses together, the path may be interrupted or the client may be reconnecting. Remote desktops also adjust image quality to network conditions, so a blurred screen does not necessarily mean the connection has failed. Recording the exact behavior helps distinguish insufficient throughput from interactive delay.
Video and streaming media
Video playback depends on exit region, sustained throughput and buffering. Starting playback and seeking need quick responses, while steady playback depends more on sustained transfer. When choosing a route, first confirm the streaming support shown on the Network page, then select an exit in the target region. Keep the entry reasonable to avoid detours. There is no need to favor complex mechanisms by default: on a stable fixed network, a simple protocol with a suitable exit is often effective.
When playback has issues, distinguish between failure to open, slow startup, frequent buffering during playback and reduced quality. Failure to open points more toward the exit or target service; slow startup may involve resolution and connection setup; interruptions during playback usually relate to sustained throughput, congestion or the wireless environment; changing quality may be the player adapting automatically. Testing each symptom is more useful than repeatedly refreshing. For platform-specific route considerations, see the Streaming Media page.
Large files, cloud drives and continuous sync
Sustained transfer depends more on long-session throughput and stability. Start by comparing relay or dedicated routes and choose a protocol with mature client support. Shadowsocks, Trojan, VMess and VLESS may all work; the key is sustained performance on the current route. Hysteria2 and TUIC may recover more aggressively on volatile paths, but also check device resources and datagram reachability. Give the connection enough time to reach a steady state instead of recording only its brief initial peak.
Sync tasks also affect other apps. If you need to sync while attending a meeting, limit sync concurrency or schedule it separately rather than expecting the protocol to solve every queue. Uploads are especially likely to crowd out acknowledgements and interactive data, making downloads appear slow. If sync is problematic only in the evening, compare topologies first; if it is limited at all times, check the target service, disk processing and local access. A protocol can optimize transport, but it cannot remove endpoint limits.
AI tools and continuous conversations
AI tools may handle short requests or maintain continuous output. The first response depends on the entry, resolution and target connection, while long-generation sessions require the connection to stay alive. Start with a nearby entry and stable topology, then confirm availability in the target region. If the conversation page opens but output stops midway, check long-lived connections, client sleep and route jitter. If a session never establishes, investigate the exit region, resolution and app state.
Web, desktop and developer interfaces for different AI tools may use different connection methods, so do not infer every feature from one page. Validate the real high-frequency workflow first, then save a primary route. For this use case, visit the AI Tools page. If you use multiple devices, TnVPN supports unlimited devices online at the same time, but each device should still use a protocol suited to its platform and access network; there is no need to force an identical combination.
| Scenario | What to check first | Protocol direction | Topology direction |
|---|---|---|---|
| Web and collaboration | Setup and first response | Simple, mature reliable-stream combination | Prioritize a nearby entry |
| Meetings and remote desktops | Jitter, queuing and handoff recovery | Use a stable baseline on fixed networks; compare modern datagrams on weak networks | Compare relay or dedicated routes first |
| Video playback | Exit region and sustained throughput | Mature client support is sufficient | Choose the exit by target region |
| Files and sync | Long sessions and local upload usage | Compare the sustained phase, not the peak | Compare relay, dedicated and direct routes |
| AI tools | First response and long-lived connections | Prioritize stable sessions | Pair a nearby entry with a suitable exit |
There is no single combination that covers every access network and application. A more practical approach is to save a small number of verified setups by workload: use a stable baseline for everyday web and messaging, keep a topologically different backup for meetings, retain a protocol with better handoff recovery for mobile use, and choose a path with stronger long-session performance for sustained transfers. This reduces selection effort and enables a quick switch when conditions change.
A troubleshooting workflow from symptoms to conclusions
Confirm the scope of the failure
The first troubleshooting step is not changing protocols, but determining how broadly the issue is occurring. If only one app fails, check its network mode, target service and cache. If several apps fail while the client says connected, check routing rules, resolution and the route. If the client cannot establish a session, check entry reachability, protocol support and the local network. If switching to another access network on the same device restores service, the original access environment is more likely at fault; if every network fails, examine client configuration and account status.
A useful incident description names an observable action, such as “web pages open after connecting, but meeting audio pauses periodically,” rather than vaguely saying “the route is bad.” Action-based descriptions map to setup, sustained transfer or real-time interaction. Also state whether the issue depends on the time of day, occurs only after sleep, or improves immediately after changing routes. The more specific the information, the fewer irrelevant tests are needed.
Establish a workable baseline
If every combination is currently confusing, return to a simple baseline: choose a nearby entry, a common protocol clearly supported by the client and an ordinary web page to confirm basic connectivity. Once the baseline works, test the target app; once the target app works, add the required exit or topology. Add one variable at a time. If the baseline fails, try different protocols in the same region; if several protocols fail, switch the local access network to determine whether the issue is on the device side or path side.
The baseline is not necessarily the fastest final combination; it provides a reference. Shadowsocks, Trojan or a mature VLESS combination explicitly recommended for the route can serve this role. Record the entry, protocol, client mode and app result. When conditions change, return to the baseline first to confirm that the basic environment still works, then restore more complex settings layer by layer.
Change layers instead of switching randomly
The recommended order is local environment, client state, protocol, entry, topology, exit and target service. First pause background transfers and rebuild the client session; then keep the entry fixed while comparing protocols. Once all protocols connect, keep the protocol fixed while comparing direct, relay and dedicated routes; only then change the exit region. This puts the variables closest to the user and easiest to verify first, avoiding a jump to a completely different route every time.
If one change improves the result, switch back once to confirm that the effect is repeatable. An accidental recovery may come from congestion ending, a target-service cache or a change in the wireless environment. If the problem returns after switching back and improves again after switching forward, the current variable is more likely effective. Troubleshooting does not require complex statistics, but it does require a basic control. This is especially important during evening congestion, when one successful test does not prove long-term path stability.
Resolution, routing and application splitting
When only some apps fail, focus on resolution and split-routing rules. A domain may be resolved locally or remotely, producing different destination addresses. Client rules may also decide whether traffic enters the route based on the domain, address or app. If the main page opens but images, login or real-time features fail, different resources may use different domains and some may not be routed as expected. Check the client connection records to confirm that the relevant requests are using the current route.
Do not combine rules or transport parameters from unknown sources. Configurations may rely on different resolution assumptions and routing modes, and mixing them can create partial availability that is difficult to explain. Obtain the client and subscription through the user panel and keep the configuration source consistent. TnVPN account creation requires no email address; a username and password are enough. Afterward, get the client and subscription for the relevant platform from the panel. Static installers and subscription URLs are not provided on marketing pages.
When to change the protocol and when to change the route
A connection that cannot be established at all, fails only on one access network or recovers poorly after a handoff is usually worth comparing with another protocol. If the connection works but pauses repeatedly in the evening, or if different topologies in the same region perform differently, change the route first. If only one target service is affected, try another exit region or check the target service status. If every app and route is affected, address the local network, client and background tasks first. Mapping symptoms to layers greatly reduces unproductive switching.
Changing protocols affects session setup, data handling and recovery; changing routes affects the entry, backbone and exit paths. Both can influence the experience, but diagnosis must separate them. If one protocol fails across multiple routes while others work, the issue is closer to protocol compatibility or the local datagram path. If the same protocol fails only on one route, the issue is closer to the entry or topology. This framework is more reliable than memorizing protocol rankings.
Is one app affected, are multiple apps affected, or can the client itself not establish a connection?
Pause background transfers, reconnect, and keep the device, app and access network fixed.
Keep the entry unchanged and compare reliable-stream and modern-datagram options.
Keep the protocol unchanged and compare direct, relay and dedicated routes in order.
Only when a specific service is affected, check the exit region and service-side status.
Keep primary, backup and records
After troubleshooting, retain a primary daily combination and a backup with a different topology. Records need not be complex; include the platform, access network, entry, route type, protocol, suitable apps and known limitations. For example, one combination may suit meetings on a fixed network while another suits mobile handoffs; one route may be good for sustained sync but not be the first choice for real-time apps. These notes turn a troubleshooting session into reusable experience.
Revalidate after conditions change instead of relying on old conclusions forever. The access network, client implementation, target service and route path may all change. If the original combination stops working, restore service with the backup first, then follow this chapter’s workflow. To compare plans, visit the Plans page. Monthly plans include ¥9.9/month with 60GB, ¥18/month with 250GB and ¥28/month with 500GB; traffic resets monthly on the activation date, and mid-cycle upgrades are prorated by the remaining days. Data packages are ¥158/300GB, ¥358/1000GB and ¥658/3000GB, valid until used and never expiring. Choose the traffic format based on your actual workload; the service offers 7-day no-questions-asked refunds.