client端口是一样的
socket->connect->send(recv)
创建套接字->发送请求->收发
使用poll完成server端口
1.创建套接字,并且绑定IP和port,监听
socket,bind,listen
2.初始化所有文件描述符值位-1,将sockfd加入到文件描述符
for(i=0;i<maxnum;i++)
{pfds[i].fd = -1};
for(i=0;i<maxnum;i++)
if{-1 == fds[i],fd}
{fds[i].fd = newfd,fds[i].events = env}
3.使用poll建立文件描述符,遍历文件描述符
poll(fds,MAX_POLL_FDNUM,-1);
for()
if(fds[i].fd == sockfd)
{confd = accept(sockfd,NULL,NULL)};
AddFd()
4.如果是sockfd就接受请求并且将confd加入到文件描述符
使用epoll完成TCP端口
1.创建套接字并监听
2.epoll_create(MAX_POLL_FDNUM);
3.添加sockfd套接字进入epoll
4.epoll_wait(epfd,retenv,MAX_POLL_FDNUM,-1);
5.遍历 如果是sockfd反应,就confd = accept(sockfd,NULL,NULL);
并且将confd加入到其中
6.遍历 如果是confd就进行收发