资源描述:
《基于UDP的用户网络通信程序.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、南京工程学院电力工程学院2014/2015学年第1学期实验报告课程名称计算机网络与现场总线实验项目名称基于UDP的用户网络通信程序实验学生班级实验学生姓名实验时间2014.11.27实验地点工程实践中心9-229实验报告成绩:评阅教师签字:年月日电力工程学院二O一四年说明1.实验报告为实验的重要考核依据之一,每个实验必须定一份实验报告.本实验报告原则上要求手写。2.本实验报告各项内容的具体格式、字数可由指导教师根据实验具体情况提出具体要求。各项内容可另附页,为便于归档,附页尺寸不得大于本实验报告尺寸,并注意
2、粘牢于附页粘贴处。3.实验报告封面中的“实验名称”应为实验教学大纲上所列的规范名称,“实验地点”应写出实验室的具体名称。请确认无误后再填写。4.实验报告的建议格式为:一、实验目的和要求;二、主要实验仪器和设备;三、本次实验内容(一)实验项目名称(按本次实验各项目填写)1、原理或接线图2、实验步骤及注意事项3、实验预习过程中所遇到问题……四、实验记录及数据处理(主要内容包括实验具体实施步骤、实验原始数据、计算过程与结果、数据曲线、图表等。具体格式按指导教师要求)五、实验结论(主要内容包括本实验小结、实验体会或
3、疑问等。具体格式按指导教师要求)5.实验成绩由实验预习、实验表现、实验报告三部分组成。其中前两项各占总成绩的30%。实验报告成绩依据报告的科学性、全面性、规范性及书写态度综合考核。实验报告采用百分制,占实验总成绩的40%,教师请阅本报告后需签字并给出实验报告百分制成绩。6.实验报告需按要求时间以班级为单位交给指导教师,最长时间不得超过两周,实验报告如有明显抄袭者或不交者,实验总评成绩按0分记。一、实验目的了解Socket编程接口,熟悉高级语言访问基于UDP的网络的语句,学习用户网络应用程序的编程方法。二、实
4、验环境1.联网的计算机2台2.VB或VC软件三、基础知识(查找资料关于Socket编程、UDP的工作原理)在Internet网络中,目前普遍采用了客户/服务器模式,即服务器被动接受客户请求,并将有关结果返回给客户。服务器提供服务,客户消耗服务。利用Socket编程接口,服务器和客户通信过程:服务器先初始化Socket,然后与端口绑定,等待客户端连接。这时如果有个客户端初始化一个Socket,然后连接服务器(connect),如果连接成功,这时客户端与服务器端的连接就建立了。客户端发送数据请求,服务器端接收请
5、求并处理请求,然后把回应数据发送给客户端,客户端读取数据,最后关闭连接。代码如下:#include#includeBOOLInitWinsock();voidmain(){SOCKETsocket1;InitWinsock();structsockaddr_inserver;intlen=sizeof(server);server.sin_family=AF_INET;server.sin_port=htons(1000);///server的监听端口server.
6、sin_addr.s_addr=inet_addr("192.168.0.30");///server的地址socket1=socket(AF_INET,SOCK_DGRAM,0);while(1){charbuffer[1024]=" ";printf("inputmessage");scanf("%s",buffer);if(strcmp(buffer,"bye")==0)break;if(sendto(socket1,buffer,sizeofbuffer,0,(structsockaddr*)
7、&server,len)!=SOCKET_ERROR){if(recvfrom(socket1,buffer,sizeofbuffer,0,(structsockaddr*)&server,&len)!=SOCKET_ERROR)printf("recefromserver:%s",buffer);}}closesocket(socket1);}BOOLInitWinsock(){intError;WORDVersionRequested;WSADATAWsaData;VersionRequested=
8、MAKEWORD(2,2);Error=WSAStartup(VersionRequested,&WsaData);//启动WinSock2if(Error!=0){returnFALSE;}2、画出客户端服务器端程序框图。Socket()Socket()bind()recvfrom()sendto)bind()sendto)recvfrom()close()等待客户服务请求处理服务请求UDP客户UDP服务器服务