要求:
■ 利用 python 编写简易 UDP 服务器和客户端,并实现两者间的通讯
■ 利用 python 编写简易 TCP 服务器和客户端,并实现两者间的通讯
一、UDP:
实验过程:
客户端:
- 使用 UDP 发送 ping 消息(注意:因为 UDP 是无连接协议,不需要建立连接。);
- 如果服务器在 1 秒内响应,则打印该响应消息;计算并打印每个数据包的往返时间 RTT(以秒为单位);
- 否则,打印“请求超时”(中英文皆可)。
服务器:
- 创建套接字:
- bind:
- 设置丢包率
- 设置响应时间
- 关闭套接字
结果
- 客户端:
- 服务器:
在本次实验中我遇到了如下问题:
套接字的建立
- 丢包率的设置
- 响应时间的计算解决方法:
在网上学习相应知识,解决问题,详细代码在上文实验过程中有写出。
分析实验结果:
- 满足 30%丢包率
- 满足不超时会显示回复和响应时间满足超时 1s 有 timeout 提示全部实现
改进措施:
- 本代码已是改进后的代码,更加简洁,逻辑清晰
二、TCP
实验过程:
客户端:
- 输入文件和判断退出
服务器:
- 准备接受
- 根据客户端发送的消息获取文件名字
- 找不到文件的报错
结果:
客户端
服务器:
在本次实验中我遇到了如下问题:
连接的建立文件的读写
Error 的写法解决方法:
在网上学习相应知识,解决问题,详细代码在上文实验过程中有写出。
分析实验结果:
- 实现服务器收到请求时能创建一个 TCP 套接字;
- 可以通过这个 TCP 套接字接收 HTTP 请求;
- 可以解析 HTTP 请求并在缓存中确定客户端所请求的特定文件;
- 从服务器的文件系统读取客户端请求的文件;
- 当被请求文件存在时,创建一个由被请求的文件组成的“请求成功”HTTP 响应报文(200OK);
- 当被请求文件不存在时,创建“请求目标不存在”HTTP (404 not found)响应报文;
- 实现通过 TCP 连接将响应报文发回客户端;全部实现
改进措施:本代码已是改进后的代码,改进服务器向客户端传文件信息的方式,更方便快捷其余代码逻辑清晰,简洁。
参考文献
- 基于SSH框架的OA办公管理系统设计与实现(东北大学·刘凡)
- 基于UML建模下高职院校实验实训系统的设计与开发(南京理工大学·肖长健)
- 基于信息发布平台的网上购物系统的设计与实现(南昌大学·谢晓燕)
- 一种基于UNIX的互联网站搭建方案的关键技术与WEB2.0(中国水利水电科学研究院·罗皓)
- 互动网络课堂的研究及平台设计实现(沈阳建筑大学·吴宇玲)
- 互动网络课堂的研究及平台设计实现(沈阳建筑大学·吴宇玲)
- 基于SSH框架的OA办公管理系统设计与实现(东北大学·刘凡)
- 基于PHP+MySQL的交互学习系统的设计与实现(吉林大学·刘博)
- 国际物流业务模拟教学系统的设计与实现(山东大学·汤恒)
- 战时运输任务演练系统设计与实现(大连理工大学·杨福君)
- 通用通信设备模拟平台架构设计与关键技术实现(北京邮电大学·章睿)
- 多协议实时仿真网络设计与数据可视化应用(北京邮电大学·唐燕艳)
- 基于Python的虚拟仪器设计与开发(中央民族大学·郑可富)
- UML语言及实际中建模的应用(山东科技大学·刘芳)
- 互动网络课堂的研究及平台设计实现(沈阳建筑大学·吴宇玲)
本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:源码客栈网 ,原文地址:https://bishedaima.com/yuanma/36124.html