您的位置:首页 > 理论基础 > 计算机网络

tcp与udp socket使用上面的区别

2016-02-16 22:55 573 查看
1、接收时,TCP先建立了连接,所以不需要remote address。而UDP就需要指定地址。
#ifdef USE_TCP
ret=recv(dataSock,gFrameHead, 4, 0);

#else
struct sockaddr_in remaddr;
//remote address
int slen=sizeof(remaddr);

memset((char *) &remaddr, 0, sizeof(remaddr));
remaddr.sin_family = AF_INET;
remaddr.sin_port = htons(9000);
remaddr.sin_addr.s_addr = inet_addr(argv[2]);
ret=recvfrom(dataSock, gFrameHead, 4, 0, (struct sockaddr *)&remaddr, &slen);
#endif

2、发送时,TCP也不需要指定地址,而UDP则不同,需要指定地址。

#ifdef USE_TCP
send(Sockfd,buf,len);

#else
sendto(Sockfd,buf,len,remaddr);
//remaddr是接收时recvfrom中赋值的。

#endif
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: