TCP is just a magic abstraction that lets you put a stream of data in on one side of the internet and have it appear out the other side, in order and without missing pieces, with some network caveats. It provides nothing else, it's just a raw socket.
It's up to you to design the protocol, including discovery and the actual data exchange, as well as any authentication and authorization you care to implement. If you choose to ship binary data around you will have to deal with endian differences between architectures. There's nothing particularly strange or unusual about the iPad's sockets implementation; the classic text on BSD Sockets is "Unix Network Programming, Volume 1: The Sockets Networking API" by W. Richard Stevens, et. al.; any edition will do. For many applications that use simple message-passing type network interaction, HTTP is actually pretty good and many solid libraries exist for working with it, which are some of the main reasons it's used everywhere; I've jokingly referred to it as HTTP/IP. There are some applications that do require custom protocols, but I urge you to tread carefully before committing to that. --Jim On 4/27/11 12:25 PM, "Bing Li" <lbl...@gmail.com> wrote: >Dear Conrad, > >I appreciate so much for your reply! > >I have a Java based server. So iPad needs to communicate with it. >Moreover, >I hope a P2P model can be established between the server and multiple >iPads. >Therefore, I hope I could use TCP to design the protocol directly instead >of >using HTTP. > >However, I have NOT got sufficient materials to program TCP on iPad. > >Thanks so much! >Bing > >On Thu, Apr 28, 2011 at 12:01 AM, Conrad Shultz < >con...@synthetiqsolutions.com> wrote: > >> Why would the platform, architecture, or server language impact the >> implementation of a network client application? That sort of defeats the >> whole point of TCP/IP and the rest of the protocol stack... >> >> Can you elaborate more on what you are trying to do? It sounds to me >>like >> you are putting the cart before the horse. >> >> -- >> Conrad Shultz >> Synthetiq Solutions >> www.synthetiqsolutions.com >> twitter.com/TechConrad >> >> >> On Apr 27, 2011, at 2:09, Bing Li <lbl...@gmail.com> wrote: >> >> > Dear Keith and all, >> > >> > I hope my iPad could communicate with my servers. The servers run >>Java. >> > However, I don't want to use Web services. So I hope I could use BSD >> sockets >> > to talk with remote Java servers. I think XML should be utilized too >>for >> > this case. >> > >> > I am not sure if it is possible to do that. >> > >> > Best regards, >> > Bing >> > >> > On Mon, Apr 25, 2011 at 11:42 PM, Keith Duncan <ke...@33software.com> >> wrote: >> > >> >> >> >> On 25 Apr 2011, at 16:00, Bing Li wrote: >> >> >> >>> Dear Marcus, >> >>> >> >>> Could you tell me which features are not available when using BSD >> sockets >> >> on >> >>> iOS? Although I would like to use CFNetwork APIs, I cannot find >>enough >> >>> materials to learn how to use them. The guide from apple.com is too >> >> limited >> >>> to be useful. Could you provide me with other resources about >>CFNetwork >> >>> APIs. >> >> >> >> If I recall correctly, using the socket() API directly won't bring >>the >> WWAN >> >> radio online, you need to use CoreFoundation API or higher for this >>to >> >> happen. >> >> >> >> The CFNetwork adds very little on top of BSD sockets, the biggest >> feature >> >> being CFRunLoop integration, where the system will create and manage >>a >> >> select() (or equivalent) loop for you. >> >> >> >> Take a look at CFSocket.h to get started. >> >> >> >> Keith >> >> >> >> >> > _______________________________________________ >> > >> > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) >> > >> > Please do not post admin requests or moderator comments to the list. >> > Contact the moderators at cocoa-dev-admins(at)lists.apple.com >> > >> > Help/Unsubscribe/Update your Subscription: >> > >> >>http://lists.apple.com/mailman/options/cocoa-dev/conrad%40synthetiqsoluti >>ons.com >> > >> > This email sent to con...@synthetiqsolutions.com >> >_______________________________________________ > >Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > >Please do not post admin requests or moderator comments to the list. >Contact the moderators at cocoa-dev-admins(at)lists.apple.com > >Help/Unsubscribe/Update your Subscription: >http://lists.apple.com/mailman/options/cocoa-dev/jamesez%40umich.edu > >This email sent to jame...@umich.edu _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com