- 论坛徽章:
- 0
|
#include <stdio.h>
#include <stdlib.h>
#include <sys/socket.h>
#include <sys/time.h>
#include <sys/errno.h>
#include <netinet/in.h>
int DealMsg( char *buffer)
{
int sock = -1;
int iRet = -1;
char sndbuf[1024];
struct sockaddr_in sin;
memset(sndbuf, 0x00, sizeof(sndbuf));
sock = socket(AF_INET, SOCK_STREAM, 0);
if( sock < 0 )
{
printf(" 打开通信描述字失败[%d, %s]\n", errno, strerror(errno) );
return -1;
}
memset(&sin, 0x00, sizeof(struct sockaddr_in) );
sin.sin_family = AF_INET;
sin.sin_addr.s_addr =inet_addr("192.16.9.111");
sin.sin_port =htons (8879);
iRet = connect(sock, (const struct sockaddr *)&sin, sizeof(sin) );
if( iRet < 0 )
{
printf(" 连接192.16.9.111失败[%d, %s]\n", errno, strerror(errno) );
return -1;
}
sprintf(sndbuf, "%s", buffer);
/*
iRet = write(sock, sndbuf, strlen(sndbuf));
*/
iRet = send(sock, sndbuf, strlen(sndbuf), 0);
if( iRet != strlen(sndbuf) )
{
printf(" 发送111失败[%d, %s]\n", errno, strerror(errno) );
return -1;
}
close(sock);
return 0;
}
int main(int argc, char *argv[])
{
int i = 0;
char buf[1024];
do
{
usleep(500000);
memset(buf, 0x00, sizeof(buf));
sprintf(buf, "%d,%s]", i, argv[1]);
DealMsg( buf );
i++;
}while( i < 1000 );
return 0;
}
上面是我写的客户端代码,运行之后发现客户端所在的机器出现大量的TIME_WAIT连接,服务端没有。如何解决?
netstat -an|grep 8879
tcp4 0 0 192.16.9.228.55956 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55957 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55958 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55959 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55960 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55961 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55962 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55963 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55964 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55965 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55966 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55967 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55968 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55969 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55970 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55971 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55972 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55973 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55974 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55975 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55976 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55977 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55978 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55979 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55980 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55981 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55982 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55983 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55984 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55985 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55986 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55987 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55988 192.16.9.111.8879 TIME_WAIT
tcp4 0 0 192.16.9.228.55989 192.16.9.111.8879 TIME_WAIT
|
|