accpet()返回值new_sock的理

来源:互联网 发布:淘宝新店在哪里推广 编辑:程序博客网 时间:2024/06/03 15:27

对于client端

一开始client端是知道server端的ip

sock_fd = socket(AF_INET, SOCK_STREAM, 0) 

ret = bind(sock_fd, (struct sockaddr *)&local_addr, addr_len)

connect(sock_fd, (struct sockaddr *)&remote_addr, addr_len)

所以client端send,recv一直用此socket。


而server端:

sock_fd = socket(AF_INET, SOCK_STREAM, 0)

ret = bind(sock_fd, (struct sockaddr *)&local_addr, addr_len)

new_sock = accept(sock_fd, (struct sockaddr *)&remote_addr, &addr_len)

accept()返回值new_sock才包含对端ip地址和端口信息,所以之后的通信都用new_sock,而不是sock_fd。


原创粉丝点击