linux课程设计报告.doc

linux课程设计报告.doc

ID:53279372

大小:302.50 KB

页数:7页

时间:2020-04-02

linux课程设计报告.doc_第1页
linux课程设计报告.doc_第2页
linux课程设计报告.doc_第3页
linux课程设计报告.doc_第4页
linux课程设计报告.doc_第5页
资源描述:

《linux课程设计报告.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、软件1141《Linux操作系统》结业大作业题题目:基于UDP多播技术的群聊服务器及其客户端要求:1.运行在Linux系统平台上2.C语言编程3.基于TCP/IPsocket编程4.基于UDP多播技术5.每一个多播组成员针对多播组全体成员发送消息并接收来自每一个多播组成员的消息,至少要求三个多播组成员。6.(尽量)使用多线程技术7.当多个多播组成员同时发送消息时要避免冲突,保证信息的正确与不丢失。8.第12周五上午12点以前交(电子版发到指定邮箱)程序源码(加注释)及其运行结果截屏图。9.源码及其运行结果不得与人

2、雷同。课程报告内容及格式要求:2.1.程序源码及其简要注释;2.2.调试过程中出现的问题及相应解决办法;2.3.总体运行情况与结果分析讨论2.4上交结果:课程报告和程序源码。2.1.程序源码及其简要注释服务器的源代码如下:#include#include#include#include#include#include#include#include

3、a/inet.h>#include#definePORT1234#defineMAXDATASIZE100#defineBUFLEN255intmain(intargc,char*argv[]){structARG*arg;structsockaddr_inpeeraddr;intsockfd,on=1;intnum,i;charmsg[BUFLEN+1];pthread_ttid;socklen_tlen;charbuf[MAXDATASIZE];/*要求运行时输入ip地址和端口号*/if

4、(argc!=3){printf("usage:%s",argv[0]);exit(0);}/*套接字的设置*/sockfd=socket(AF_INET,SOCK_DGRAM,0);if(sockfd<0){fprintf(stderr,"socketcreatingerrorintserv.c");exit(1);}/*设置广播方式SO_BROADCAST*/setsockopt(sockfd,SOL_SOCKET,SO_BROADCAST,&on,sizeof(in

5、t));memset(&peeraddr,0,sizeof(structsockaddr_in));peeraddr.sin_family=AF_INET;if(inet_pton(AF_INET,argv[1],&peeraddr.sin_addr)<=0){printf("WrongdestIPaddress");exit(0);}peeraddr.sin_port=htons(atoi(argv[2]));len=sizeof(peeraddr);/*服务器无限循环接收消息的代码*/while(1){n

6、um=recvfrom(sockfd,buf,MAXDATASIZE,0,(structsockaddr*)&peeraddr,&len);//服务器接收消息if(num<0){perror("recvfrom()error");exit(1);}buf[num]='';//设置字符串数组内容结束/*发送客户端传来的消息*/sendto(sockfd,buf,sizeof(buf),0,(structsockaddr*)&peeraddr,len);}close(sockfd);}客户端的源代码如下:#i

7、nclude#include#include#include#include#include#include#include#definePORT1234#defineMAXDATASIZE100#defineBUFLEN255intmain(intargc,char*argv[]){structsockaddr_inlocaladdr;

8、intsockfd,n,num;charbuf[MAXDATASIZE],sendbuf[MAXDATASIZE];pid_tpid;charmsg[BUFLEN+1];/*运行客户端时输入端口号*/if(argc!=2){printf("usage:%s",argv[0]);exit(0);}/*设置套接字*/sockfd=socket(AF_INET,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。