TCP服务端和客户端的框架

时间:2021-10-07 19:35:05

提供一个框架
服务器端: 
创建一个Socket 
sFd=socket(AF_INET,SOCK_STREAM,0) 
把Socket和本机的IP,TCP口绑定 
bind(sFd,(structsockaddr*)&serverAddr,sockAddrSize) 
为客户连接创建等待队列 
listen(sFd,SERVER_MAX_CONNECTIONS) 
这里循环等待,如有客户连接请求,则接受客户机连接要求 
accept(sFd,(structsockaddr*)&clientAddr,&sockAddrSize)) 
接受客户机发来的信息 
fioRead(sFd,(char*)&clientRequest,sizeof(clientRequest))) 
给客户机发信息 
write(sFd,replyMsg,sizeof(replyMsg)) 
关闭Socket,通信终止 
close(sFd) 


客户端: 
创建一个Socket 
sFd=socket(AF_INET,SOCK_STREAM,0) 
注意:客户端不需要绑定,因为TCP口是动态的. 
向服务器端发送连接请求,并在这里等待回应,如收到回应则向下执行 
connect(sFd,(structsockaddr*)&serverAddr,sockAddrSize) 
服务器接受连接请求后,读服务器发过来的信息 
read(sFd,buffer,20) 
向服务器发信息 
write(sFd,buffer,20); 
关闭Sockets 
close(sFd)