摘要:
accept函数由TCP服务器调用,用于从以完成连接队列队头返回下一个以完成连接 如果以完成队列为空,那么进程被投入睡眠(假定套接字为默认的阻塞方式) int acceptn ( int sockfd, struct sockaddr * cliaddr,socklen_t * addrlen); 阅读全文
posted @ 2016-04-03 16:07
ailx10
阅读(2648)
评论(0)
推荐(0)
摘要:
listen函数仅仅由TCP服务器调用,它做2件事: 1)当socket函数创建一个套接字时,它被假设为一个主动套接字,也就是说,它是一个将调用connect发起连接的客户套接字 listen函数把一个未连接的套接字转换成一个被动套接字,指示内核应接受指向该套接字的连接请求 调用listen导致套接 阅读全文
posted @ 2016-04-03 15:17
ailx10
阅读(473)
评论(0)
推荐(0)
摘要:
bind函数把一个本地协议地址赋予一个套接字 对于网际协议,协议地址是32位的IPv4地址或128位的IPv6与16位的TCP或UDP端口号的组合 int bind ( int sockfd, const struct sockaddr * myaddr ,socklen_t addrlen); b 阅读全文
posted @ 2016-04-03 14:43
ailx10
阅读(322)
评论(0)
推荐(0)
摘要:
注意: connect函数导致当前套接字从CLOSE状态(该套接字自从由socket函数创建以来一直所处的状态)转移到SYN_SENT状态 若成功则再转移到ESTABLISHED状态, 若connect失败则该套接字不再可用,必须关闭,我们不能对这样的套接字再次调用connect函数 当循环调用函数 阅读全文
posted @ 2016-04-03 13:41
ailx10
阅读(346)
评论(0)
推荐(0)
摘要:
TCP客户用connect函数来建立与TCP服务器的连接 int connect (int sockfd, const sockaddr * servaddr, socklen_t addrlen); sockfd是由socket函数返回的套接字描述符 servaddr指向套接字地址结构的指针 ad 阅读全文
posted @ 2016-04-03 13:30
ailx10
阅读(429)
评论(0)
推荐(0)
摘要:
为了执行网络IO,一个进程必须做的第一件事就是调用socket函数,指定期望的通信协议类型 int socket(int family,int type,int protocol); 其中,family参数指定协议簇,type参数指明套接字类型,protocol参数一般为0 TCP是一个字节流协议, 阅读全文
posted @ 2016-04-03 12:54
ailx10
阅读(140)
评论(0)
推荐(0)
浙公网安备 33010602011771号