I am testing an app that connects through an asynchronous TCP socket to an C# server and sends 1 byte every 30 sec (implementing a heartbeat). After about an hour later the app had sent 132 packets (of one byte) to the server, the packets have been received ok. The iPhone app connected once to the server and after that sent the packets through the open connection (the server sends nothing). I did that to measure the bandwidth used. So I went to I Phone >Settings>General>Usage and it measured 366KB up and 344KB down (I had reset the statistics before the test). There is no other app connecting to the net installed on the phone and I've tried this about 5 times with similar results.
Is this natural? I only sent 132 bytes but the bandwidth used was about 710 Kilobytes (like 7.000 more). Is there that much bandwidth overhead from the TCP/IP protocol? I guess I'll have worst results with an Http polling implementation, cause of the http headers.