views:

33

answers:

1

I want to continuously transfer bulk of data between an iPhone app and a desktop app. (e.g. to capture the full screen, and show it on iPhone screen at real-time). What's the best way to do that?

Currently I implemented a communication via TCP socket. But I can't sure if it's the best in both bandwidth / latency concern. Especially the Nagle algorithm may have to be disabled to reduce latency, but the maximum bandwidth could be reduced in this situation.

It seems a lot of people using Bonjour for the communication. Could Bonjour offer a better performance over the raw TCP socket? I can see some applications (like Good Reader) has a desktop client to enable a better file uploading speed when connect the iPhone / iPad via USB. What's the technique they used to achieve that?

+1  A: 

Bonjour is just a service discovery protocol. The data transfer runs over TCP as you do it right now. Thus using Bonjour will not improve your bandwidth performance.

I would rather resize (to iPhone screen resolution) and compress (JPEG/PNG?!) the screen image on the powerful desktop side to minimize the traffic.

Lars Schneider