欢迎来到天天文库
浏览记录
ID:30021545
大小:18.35 KB
页数:8页
时间:2018-12-26
《单播通信实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划单播通信实验报告 网络程序设计 实验报告 实验名称:单播通信实验实验类型:设计型实验指导教师:__贾浩专业班级:信安1001班 姓名:________周超_____ 学号:__________XX1663______电子邮件:__@__实验地点:________东92-11__________实验日期:XX年4月18日 实验成绩:__________________________ 一、实验目的 1.掌握TCP服务器程序和客户程序的编程流程; 2.熟悉面向
2、连接的C/S程序使用的winsockAPI。 二、实验设计 实验要求 1.编写C/S模式的TCP应用程序模拟FTP。客户端给出文件路径和文件名后,服务器将 该文件传输给客户端。 实验设计 1.设计服务端程序,服务端程序首先需要创建套接字并监听,等待用户连接上后,从客户目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 端接受文件地址的字符串,然后打开参数所指文件,并读取文件传给客户端,
3、为了兼顾大文件的传输,应该设计为每次传输制定长度的信息,分次传输,这样不管大文件还是小文件都可以正确的传输,传输文件结束后关闭套接字,并退出程序。 2.设计客户端程序,客户端首先需要创建套接字并连接到服务器端,然后接受用户输入的 文件地址并传输给服务器端,等待服务器端将文件信息传回,因为是分次传输,所以应该判断是否传输结束,如果已经传输结束,则关闭套接字并退出程序。 3.服务器端程序流程图:客户端程序流程图: 三、实验过程 服务器端的程序界面客户端的程序界面 四、讨论与分析 1.accept()函数,connect()函数会阻塞吗?如果阻塞,说明在什么情况下阻塞。请给出
4、在 VC环境下的验证方法。目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 答:accept()函数在请求连接的队列为空时就会阻塞,一直等到有新的用户连接请求并响应,而当请求连接的对流不为空时是不会阻塞的,将获取请求队列中的请求并做相应处理。测试方法为,在accept函数调用前打印字符串“beforeacceptfunction”,并记录当前系统时间,在accept函数调用之后打印字符串“af
5、teracceptfunction”和当前系统时间与前一时间的时间差,然后开启服务器,不启动任何客户端程序,观察控制台的输出情况,若只打印了“beforeacceptfunction”则说明程序阻塞。然后重新开启服务器,并同时开启多个客户端程序向服务器发起连接请求,观察控制台的输出,若同时打印并“beforeacceptfunction”和“afteracceptfunction”字符串,并且打印的时间间隔很小,则说明没有阻塞 connect()函数不会发生阻塞,当客户端发起连接请求,而没有得到服务器回应,如服务器未开启或超出最大连接数,则客户端的请求会自动返回连接失败。测试方法为
6、在connect函数调用前打印字符串“beforeconnectfunction”,在其调用后打印“afterconnectfunction”,同样记录并打印时间差,在不开启服务器程序时,直接打开客户端程序发起连接请求,观察控制台的输出,若打印了“beforeconnectfunction”和“afterconnectfunction”,且打印的时间差很短,则说明connect函数不阻塞。 2.connect()函数调用触发什么过程?目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展
7、,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 答:connect()函数的调用将触发三次握手过程。即第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认。第二次握手:服务器收到syn包,必须确认客户的SYN,同时自己也发送一个SYN包(来自:写论文网:单播通信实验报告),即SYN+ACK包,此时服务器进入SYN_RECV状态。第三次握手:客户端收到服务器的
此文档下载收益归作者所有