我完全是套接字编程的初学者,我需要在我的应用程序中使用UDP数据包。我要去CocoaAsyncSocket图书馆,因为它以其优秀的品质而闻名。有一篇文档似乎对这个库很有帮助,但不幸的是,它只描述了AsyncSocket,它只处理TCP,而没有介绍AsyncUdpSocket。所以我的问题是:
1)也许这个库的创建者没有描述过AsyncUdpSocket,因为它与AsyncSocket非常相似?也许我应该学习AsyncSocket,它会让我对AsyncUdpSocket有更多的了解?我需要知道,因为我找不到任何关于AsyncUdpSocket的教程。你认为如何?
2)如果我的假设是正确的,通过学习AsyncSocket来学习AsyncUdpSocket对我很有帮助,那么你能告诉我它们有什么不同吗?它们之间的区别是什么?我认为提前知道一些事情会对我有帮助。
谢谢
发布于 2012-01-11 10:48:44
同样的文档也可以用于AsyncUdpSocket -只需将AsyncSocket替换为AsyncUdpSocket即可。TCP和UDP之间的区别在于TCP是基于连接的,并且有效负载数据的报头要大得多。它要求对等端发回接收到的消息包以继续发送有效负载数据。UDP本身是一种更快的协议,因为它忽略了所有这些,并使用流线型报头尽可能快地发送有效负载数据。
tl;dr?AsyncUdpSocket的使用方式与AsyncSocket相同。TCP较慢,可确保数据到达,UDP较快,可能会造成数据损坏。
如果我还记得的话,github源代码提供了UDP和TCP的示例。看看基于UDP的EchoServer和EchoClient。
https://stackoverflow.com/questions/8807445
复制相似问题