预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共14页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

创建一个新的通信端点功能:建立与服务器的连接定义:intconnect(SOCKETs,conststructsockaddr*FARname,intnamelen)Name:是事先填写好的结构,用于指定所要连接的服务器的地址(Server的IP地址和端口号)。(2)Listen功能:该函数仅被TCP服务端使用,负责通知协议内核用户进程准备接收套接口上的连接请求,它同时也指定了在该套接口上可以排队等待的连接数的门限值.定义:intlisten(SOCKETs,intbacklog)返回值:没有错误返回0,否则返回SOCKET_ERROR。接收队列一个新的Client的连接请求先被放在接收队列中,等待Server程序调用accept函数接受该连接请求.backlog用于指定接收队列的长度,也就是在Server程序调用accept函数之前最大允许进入的连接请求数,多余的连接请求将被拒绝(服务器直接返回TCP-RST),典型取值为5backlog=待处理连接队列长度=未连接队列长度+已连接队列长度。(3)accept()例:在服务器端输出已接受连接的对方主机的IP地址(设已创建的套接口为sock)。(1)定义一用于接收对方地址的地址结构structsockaddr_infrom;intlen=sizeof(from);(2)用accept接收客户端的连接请求if(accept(sock,(structsockaddr*)&from,&len)==SOCKET_ERROR)printf(“accept:%d”,WSAGetLastError);(3)如果成功,输出IP地址elseprintf(“RequstIPaddress:%s/n”,inet_ntoa(from.sin_addr))(4)sendsend()例程:…………Char*msg=“Heytherepeople”;Intlen;/*codetoSOCKETcreate,bind(),listen()andaccept()*/Len=strlen(msg);Bytes_sent=send(s,msg,len,0);……(5)recvclose