Linux网络编程—单播多播与广播的实现文档编码

Linux网络编程—单播多播与广播的实现文档编码

ID:41331243

大小:2.62 MB

页数:12页

时间:2019-08-22

Linux网络编程—单播多播与广播的实现文档编码_第1页
Linux网络编程—单播多播与广播的实现文档编码_第2页
Linux网络编程—单播多播与广播的实现文档编码_第3页
Linux网络编程—单播多播与广播的实现文档编码_第4页
Linux网络编程—单播多播与广播的实现文档编码_第5页
资源描述:

《Linux网络编程—单播多播与广播的实现文档编码》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、盐城师范学院信息科学与技术学院实验报告课程名称Linux网络编程班级学号8姓名实验地点实验日期实验学时实验名称单播、多播与广播的实现实验类型□验证性■综合性□设计性实验目的:1.了解路由套接口编程的工作流程2.熟练掌握广播编程的工作流程与实现方法3.熟练掌握多播编程的工作流程与实现方法实验环境:(包括软件平台和硬件平台)软件平台:Linux硬件平台:PC机实验内容及步骤(含源程序)一、广播1、客户端程序#include#include#include

2、.h>#include#defineBUFLEN255intmain(intargc,char**argv){structsockaddr_inlocaladdr;intsockfd,n;charmsg[BUFLEN+1];if(argc!=2){printf("usage:%s",argv[0]);exit(0);}sockfd=socket(AF_INET,SOCK_DGRAM,0);if(sockfd<0){fprintf(stderr,"socketcreatingerroring

3、b_client.c");exit(1);}memset(&localaddr,0,sizeof(structsockaddr_in));localaddr.sin_port=htons(atoi(argv[1]));localaddr.sin_addr.s_addr=htonl(INADDR_ANY);intopt=SO_REUSEADDR;setsockopt(sockfd,SOL_SOCKET,SO_REUSEADDR,&opt,sizeof(opt));if(bind(sockfd,(structsockadd

4、r*)&localaddr,sizeof(structsockaddr_in))<0){fprintf(stderr,"binderroringb_client.c");exit(2);}n=read(sockfd,msg,BUFLEN);if(n==-1){fprintf(stderr,"readerroringb_client.c");exit(3);}else{msg[n]=0;printf("%s",msg);}}2、服务器端#include#include

5、h>#include#include#defineBUFLEN255voidgetcurtime(char*curtime){time_ttm;time(&tm);snprintf(curtime,BUFLEN,"%s",ctime(&tm));}intmain(intargc,char**argv){structsockaddr_inpeeraddr;intsockfd,on=1;intnum,i;charmsg[BUFLEN+1];if(argc!=3){printf("

6、usage:%s",argv[0]);exit(0);}sockfd=socket(AF_INET,SOCK_DGRAM,0);if(sockfd<0){fprintf(stderr,"socketcreatingerroringb_server.c");exit(1);}setsockopt(sockfd,SOL_SOCKET,SO_BROADCAST,&on,sizeof(int));memset(&peeraddr,0,sizeof(structsockaddr_in));p

7、eeraddr.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]));for(;;){getcurtime(msg);inta;a=sendto(sockfd,msg,strlen(msg),0,(structsockaddr*)&peeraddr,sizeof(structso

8、ckaddr_in));printf("%d",a);fflush(stdout);sleep(3);}}二、多播1、客户端程序#include#include#include#include#define

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

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

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