Live data from Hacker News

Why mobile apps suck when you're mobile (TCP over 3G)

blog.davidsingleton.org

21–30 of 71 posts

Re: Why mobile apps suck when you're mobile (TCP over 3G)

#21
post #16

There were plenty of wireless-optimized TCP replacements proposed back in the days when WAP and XHTML Mobile were the hottest things around, but none took root as operators, web servers and browsers needed to adopt them in tandem. Now that smartphone apps are widespread and someone developing a service can control both sides of the connection, there's definitely room for someone to devise a really good TCP replacemen…

I think this is a really good idea. Startup? PhD thesis?

Here is a paper from 03: http://www.usenix.org/event/mobisys03/tech/full_papers/chakr...

As I recall, one of the key problems this group found was that GPRS had a very low incidence of packet loss. This was because the physical layer protocol had some error correction built in. TCP wasn't designed for this and ended up doing the wrong thing. This group proposed a custom reliable protocol between the mobile device and a proxy gateway, and their results showed improved performance.

We're not talking about GPRS but I am curious why there is so much packet loss?

Also, just FYI: MobiSys (the top academic conference on mobile systems) is happening in the DC area this week.

Re: Why mobile apps suck when you're mobile (TCP over 3G)

#22

There were plenty of wireless-optimized TCP replacements proposed back in the days when WAP and XHTML Mobile were the hottest things around, but none took root as operators, web servers and browsers needed to adopt them in tandem. Now that smartphone apps are widespread and someone developing a service can control both sides of the connection, there's definitely room for someone to devise a really good TCP replacemen…

SPDY or SCTP maybe? I'm not sure if they work better specifically in high latency environments, but they are touted as TCP replacements.

Re: Why mobile apps suck when you're mobile (TCP over 3G)

#24
post #22

There were plenty of wireless-optimized TCP replacements proposed back in the days when WAP and XHTML Mobile were the hottest things around, but none took root as operators, web servers and browsers needed to adopt them in tandem. Now that smartphone apps are widespread and someone developing a service can control both sides of the connection, there's definitely room for someone to devise a really good TCP replacemen…

SPDY or SCTP maybe? I'm not sure if they work better specifically in high latency environments, but they are touted as TCP replacements.

SPDY isn't a tcp replacement, it's a layer 7 protocol on top of TCP.

Re: Why mobile apps suck when you're mobile (TCP over 3G)

#25

There were plenty of wireless-optimized TCP replacements proposed back in the days when WAP and XHTML Mobile were the hottest things around, but none took root as operators, web servers and browsers needed to adopt them in tandem. Now that smartphone apps are widespread and someone developing a service can control both sides of the connection, there's definitely room for someone to devise a really good TCP replacemen…

The mobile OS should be able to fix this.

One method would be to disable the reliable delivery mechanism in the 3G code.

Another method would be to use huge retransmission timeouts at the TCP level for connections going over 3G, so the TCP level seldom retransmits packets.

If the 3G implementation provides completely reliable connections, the OS could fake the TCP implementation and just use that implementation directly instead of sending TCP packets. (not entirely unlike the sshuttle VPN).

Re: Why mobile apps suck when you're mobile (TCP over 3G)

#26
post #4

Earlier quoted context omitted.

Trains moreso than cars/buses? Why?

Faster travel meaning you are passing in and out of cells more often, and you are more likely to be passing through areas with bad coverage either for man-made geographical reasons (a steep embankment between you and most of the towers in range for instance) or because your route is more likely to take a straight-ish line that may pass through a pretty uninhabited area that is ether completely unserviced by the cell…

the area of each cell typically increases when you move out to sparsely populated areas with vast expanses of land. thereby, minimizing number of handovers (cell-to-cell) that might be happening.

Re: Why mobile apps suck when you're mobile (TCP over 3G)

#27
post #22

There were plenty of wireless-optimized TCP replacements proposed back in the days when WAP and XHTML Mobile were the hottest things around, but none took root as operators, web servers and browsers needed to adopt them in tandem. Now that smartphone apps are widespread and someone developing a service can control both sides of the connection, there's definitely room for someone to devise a really good TCP replacemen…

SPDY or SCTP maybe? I'm not sure if they work better specifically in high latency environments, but they are touted as TCP replacements.

Actually, SPDY is an application layer protocol -- as HTTP -- not an transport layer protocol like TCP.

Re: Why mobile apps suck when you're mobile (TCP over 3G)

#28
post #18
post #14

We should probably get these long round-trip protocol issues ironed out before we build our galactic internet

TCP is already out as a protocol for our galactic internet, see relevant comment from Linux TCP implementation: /* * [...] Note that 120 sec is defined in the protocol as the maximum * possible RTT. I guess we'll have to use something other than TCP * to talk to the University of Mars. * PAWS allows us longer timeouts and large windows, so once implemented * ftp to mars will work nicely. */

(This is from /usr/src/linux/net/inet/tcp.c)

This is correct. At their furthest apart, Mars and Earth are 22 light minutes apart. Their closest is almost exactly 3 light minutes. For comparison, the Earth and Moon are just over 1 light second apart.

On a more serious note, could tcp.c just be patched on the client to drop packets after ~10sec?

Re: Why mobile apps suck when you're mobile (TCP over 3G)

#29

This is partly why I'm so interested in publishing information at the DNS level (i.e. .tel) - you get to use UDP (or TCP failover), plus other awesome benefits. You can do other innovative things with DNS too.

Of course, that does depend on DNS having a protocol to run over. What we really need is a DWIW protocol suite at each layer.

Re: Why mobile apps suck when you're mobile (TCP over 3G)

#30
post #16

There were plenty of wireless-optimized TCP replacements proposed back in the days when WAP and XHTML Mobile were the hottest things around, but none took root as operators, web servers and browsers needed to adopt them in tandem. Now that smartphone apps are widespread and someone developing a service can control both sides of the connection, there's definitely room for someone to devise a really good TCP replacemen…

I think this is a really good idea. Startup? PhD thesis?

I'll bet you thought Vint Cerf was just a trophy hiring. :) http://gigaom.com/2009/11/06/vint-cerf-plugs-his-plucky-spac...
Post reply on HN