读书人

TCP的全双工UDP怎么实现交互

发布时间: 2013-08-04 18:26:16 作者: rapoo

TCP的全双工,UDP如何实现交互?
TCP有全双工机制,所以交互式不成问题的。
那么UDP能否实现交互呢????
是不是可以这样理解,如果应用程序需要交互那么就需要使用TCP,比如http协议。那么网络游戏也有基于UDP的,网游也是交互的,此时是不是交互的部分运用TCP?
[解决办法]
UDP和和TCP都可交互吧,不同之处在于TCP是可靠传输,协议本身会保证传输过程中不丢包
[解决办法]


不是吧!
UDP 每一次交互信息,绑定相互的ip地址和端口号的进行收发信息的


 ssize_t sendto(int sockfd, const void *buf, size_t len, int flags,
const struct sockaddr *dest_addr, socklen_t addrlen);

ssize_t recvfrom(int sockfd, void *buf, size_t len, int flags,
struct sockaddr *src_addr, socklen_t *addrlen);

[解决办法]
都可以交互啊,TCP和UDP都要绑定IP和端口才能收发信息,当然你还必须知道对方的IP和通信端口才行。
[解决办法]
A在端pA处recvfrom,B若要与A交互可以使用sendto告诉A自己在端口pB等待回复J。这样双方都知道对方的地址,交互便可以继续。类似于邮件,寄信时带上收件人地址和寄件件人地址。收到信件后可以根据对方地址回信。

读书人网 >C++

热点推荐