4 ms·
Is there any mechanism by which we (in general) or a client specifically could use an expensive low latency for say browsing and a high latency but wide/cheap p
by spockz 6y ago
Is there any mechanism by which we (in general) or a client specifically could use an expensive low latency for say browsing and a high latency but wide/cheap pipeline for bulk transfer?
I can imagine being able to do this when you control both sides by letting one type of data flow over one IP and the other over a different one with different peerings. But I wonder whether this is generally available.
- Natanael_L 6y agoIf either your ISP exposes that ability or if you maintain multiple outbound connections, then yes. But I don't think this is commonly implemented today, however. You would probably have to configure your own routing table to direct traffic for each application through the appropriate link, but that's completely doable as long as you can write rules to distinguish the packets (for example based on destination).
- spockz 6y agoYes I can imagine using iptables to work but it was my understanding that this would only be able to determine the next hop and I couldn’t get it to force the decision higher up the chain. This would mean that every party along the chain has to play ball. I can imagine that it would be beneficial for the internet experience if we could segregate low latency traffic (human/hft) traffic from hulk traffic such as video. Although this goes against net neutrality I suppose.
- Natanael_L 6y agoIf you want it to be done externally without setting up a routing table then the next best option would be some kind of traffic tagging to indicate what you want to go over which line. That would start looking like a network with multiple VLAN:s.
- dmurray 6y agoIf you use TOR browser, you're already doing this. Requests from TOR browser go over TOR, if you have a regular browser open in another window your internet-routable requests there go over the internet. Of course the first hop goes via your ISP in either case, but it's easy to imagine it doesn't.
- mleonhard 6y agoIn 1998, I lived in Ghana and used the Africa Online ISP. They ran a transparent HTTP proxy that routed through a high-bandwidth high-latency satellite connection. All other traffic went through a very low-bandwidth low-latency fiber connection. I used to proxy my browser through SSH to a US server and enjoy very fast text-mode browsing. I expect some ISPs will end up using differential routing over Starlink and fiber. They could have the routers on each end automatically switch large one-way TCP transfers from the Starlink connection to the fiber connection after the first 2MB. They could even make the transition smooth, by buffering data transferred over Starlink and slowly adding delay to match the delay of the fiber connection. This would require some RAM, but only during the transition period for each TCP session. The client would see the throughput go down during the transition period. If the remote server could increase the data rate, then the ISP could perform the transition with no drop in throughput seen by the client. The sending router would send fake ACKs to the server to get it to send data faster. The sending router would send the burst of data through the fiber link and also buffer it and send it through Starlink at the original rate. Once the receiving router is receiving the same data at the same time over both the fiber link and Starlink, the sending router can stop sending over Starlink. The client's TCP ACK packets would continue to flow over Starlink.
- yencabulator 6y agoYou can do this with a Linux box that has multiple internet links and/or VPNs, using fwmark for routing decisions. You can also e.g. launch a browser in a network namespace that is routed as you please.