1 / 5
文档名称:

计算机网络课程设计.doc

格式:doc   页数:5页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

计算机网络课程设计.doc

上传人:janny 2011/5/18 文件大小:0 KB

下载得到文件列表

计算机网络课程设计.doc

文档介绍

文档介绍::
编写一个简单的聊天程序;
掌握客户-服务器编程的基本原理;
:
查看本机的IP地址:ipconfig;
运行服务器端程序:tcp_server ;
运行客户端程序:tcp_client <服务器的IP地址>
:

#include <>
#include <>
#include <>
#include <sys/>
#include <sys/>
#include </>
#include <>
#include <>
#include <>
#include <sys/>
#include <>
#define SERVER_PORT 2090 /* 服务器端口号*/
#define MAXBUFSIZE 1024 /* 发送和接收缓存的最大长度*/
服务器端程序:
#include ""
char buff[MAXBUFSIZE];
main(argc, argv)
int argc;
char *argv[];
{
int sockfd; /* 监听插口描述符*/
int newsockfd; /* 连接插口描述符*/
struct sockaddr_in serveraddr; /* 服务器地址*/
struct sockaddr_in clientaddr; /* 客户方地址*/
int clientaddrlen = sizeof(clientaddr);
int len;
struct hostent *he;

int mode=0; /* 阻塞模式*/

/* 产生TCP 插口*/
if ((sockfd = socket(, SOCK_STREAM, 0)) < 0)
{
printf("产生插口失败,退出\n");
exit(1);
}

/* 设置服务器地址结构*/
bzero((char *) &serveraddr, sizeof(struct sockaddr_in));
= ;

/* 由系统自动绑定一个IP地址*/
= htonl(INADDR_ANY);
= htons(SERVER_PORT);

/* 绑定插口到本地的指定地址*/
if ( bind(sockfd, (struct sockaddr *)&serveraddr,sizeof(struct sockaddr_in)) < 0)
{
printf("绑定插口失败, 退出\n");
exit(2);
}

/*
通知协议层作好接收连接请求的准备
*/

listen(sockfd, 8);
/* 接收连接请求并服务客户*/
while(1){
if ((n