大家好,初学网络编程,阅读了一些源代码,现在有一个疑问:
UDP点对点通讯下,服务器端和客户端都只需要声明一个struct sockaddr_in addr吗?是否sendto和recvfrom都使用的同样一个socket?
我看有一个服务器端的源程序是:
struct sockaddr_in ser_addr;
struct sockaddr_in cli_addr;
设置地址和端口信息是设置的ser_addr,bind也是用到ser_addr,可是接受数据recvfrom用的是cli_addr
怎样设置才是正确到?
stephenyong 于 2011-03-19 11:23:48发表:
这个问题可以看看关于socket编程的资料!我也才开始学习!似乎这个结构体放的是一些什么端口啊!ip的内容!菜鸟,请指教!
deepwhite 于 2011-03-08 08:59:28发表:
你的看到服务器代码就是正确的,否则也不能发布出来做服务器了。
Server端需要两个 sockaddr, A & B , 一个用于 Bind (A), 另外一个做为接收到的请求的 Client 的地址(B),接收到 Client 请
求后, Client 地址存放到 B, 后续的 Datagram 也将会发送到 B 上。
建议了解一下基本的 TCP 和 UDP 知识再看代码