5 ms·
For anyone wondering what the point of this is -- MPTCP is being pushed primarily by Apple. It is intended to make mobile devices like phones or tablets be able
by jiggawatts 4y ago
For anyone wondering what the point of this is -- MPTCP is being pushed primarily by Apple. It is intended to make mobile devices like phones or tablets be able to switch between WiFi and 4G/5G seamlessly.
Theoretically it would also be useful for corporate laptops that get unplugged from a docking station every time someone needs to go to a meeting. Any long-running downloads wouldn't have to be interrupted, SSH sessions could remain connected, etc...
- ggm 4y ago"Pushed" is a bit objectifying. Apple implemented and owning both sides of client (iphone) and server (iOS distribution service) have made it work for them. And iMessage. It's works, it gives persisting end to end connection (I would say session in isolation 7 layer model terms) state, it allows services to continue unabated between wifi and mobile. It's good tech. I hope more people implement.
- tyingq 4y agoI don't know what Android uses for the same purpose, but it got a lot better about 2-3 years ago. I see it every day, when I leave the house in my car, and it's been seamless for a while now, even for live phone calls. I suppose YMMV, since everyone seems to be on a different release of Android, different hardware, etc.
- tjoff 4y agoI use wireguard which solves it on a different kind of layer, but is a bit heavy-handed if that's the only thing you'd want it for.
- xiphias2 4y agoCan it be used for ,,pausing'' TCP connections? When I go into an elevator, the WIFI / 4G connection can drop for half minute for example, then it reconnects later. Or for example switching from one wifi network where the connection is slow to another one (my fast tethered mobile network).
- vlan0 4y agoThis isn’t a gab at you. But this question doesn’t make sense. I think the things you don’t know you don’t know about TCP and distributed system design make this difficult to pick apart. Remember, your identity in a TCP connection is your IP address. If you connect from another IP and want your session to continue, identity must be handled higher in the stack. TCP connection technically live forever by default. It’s up to either party to complete the handshake. Without that mechanism, your box would run out of ports.
- topspin 4y ago> Remember, your identity in a TCP connection is your IP address The essential tuple of a stateful IP session, the "5-tuple," is the source IP address, source port number, destination IP address, destination port number and the IP protocol number, in this case TCP. None of those elements can change during the lifetime of the connection. Or rather, changing any element constitutes a different connection. Not that you needed to be told that; you probably know this already. It's just an interesting factoid that I imagine others might find interesting or useful when thinking about networking. In the guts of every device that handles TCP state (clients, servers, middle boxes, whatever) there is a table of all in-flight 5-tuples that marries every incoming packet with some state.
- remram 4y agoPort numbers are not an IP concept. "IP session"?
- mrkstu 4y agoMost protocols atop IP have the concept of ports- i.e. TCP or UDP.
- vlan0 4y agoIndeed! I always appreciate help explaining. I've been deep in networking for so long that I struggle threading the needle between not enough and too much information.