使用python编写udp协议的ping程序方法


Posted in Python onApril 22, 2018

服务器端

import random 
from socket import * 
serverSocket = socket(AF_INET, SOCK_DGRAM)#建立udp协议的socket连接 
serverSocket.bind(('', 12000)) 
while True: 
 rand = random.randint(0, 10)#生成随机数,模拟udp环境下的丢包 
 message, address = serverSocket.recvfrom(1024)#接收客户端发送的信息,应该传送ip地址比较好 
 message = message.upper() 
 if rand < 4: continue#如果随机数字小于4那么就模拟丢包,不进行回复 
 serverSocket.sendto(message, address)

客户端

from socket import * 
import time 
HOST = 'localhost' 
PORT = 12000 
clientSocket = socket(AF_INET, SOCK_DGRAM)#使用udp协议 
clientSocket.bind(('', 6000))#绑定端口6000, 也可以不绑定 
 
for i in range(0,10):#发出十次ping 
 try: 
  start_time = time.time()#从发出报文开始计时 
  clientSocket.sendto('A',(HOST, PORT))#发送报文给服务器 
  clientSocket.settimeout(1.0)#设置socket等待时间 
  message, address = clientSocket.recvfrom(1024)#recvfrom设置了一秒的时间限制 
  end_time = time.time()#结束时间 
  print "Ping %d %f"%(i, end_time-start_time)#得到ttl,并显示出来 
 except timeout:#如果超过时间,抛出一个timeout的错误 
  print "Resquest time out"

以上这篇使用python编写udp协议的ping程序方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
推荐11个实用Python库
Jan 23 Python
Python操作CouchDB数据库简单示例
Mar 10 Python
Python字符串格式化
Jun 15 Python
Java多线程编程中ThreadLocal类的用法及深入
Jun 21 Python
Python实现多线程抓取网页功能实例详解
Jun 08 Python
python利用thrift服务读取hbase数据的方法
Dec 27 Python
钉钉群自定义机器人消息Python封装的实例
Feb 20 Python
python统计指定目录内文件的代码行数
Sep 19 Python
Pytorch 实现数据集自定义读取
Jan 18 Python
使用TensorBoard进行超参数优化的实现
Jul 06 Python
Python socket如何解析HTTP请求内容
Feb 12 Python
Python3使用Qt5来实现简易的五子棋小游戏
May 02 Python
python 实现判断ip连通性的方法总结
Apr 22 #Python
Python数据结构之哈夫曼树定义与使用方法示例
Apr 22 #Python
Python3实现爬取指定百度贴吧页面并保存页面数据生成本地文档的方法
Apr 22 #Python
Python3使用正则表达式爬取内涵段子示例
Apr 22 #Python
Python贪心算法实例小结
Apr 22 #Python
python 判断网络连通的实现方法
Apr 22 #Python
Python3之读取连接过的网络并定位的方法
Apr 22 #Python
You might like
php设计模式之命令模式使用示例
2014/03/02 PHP
php查看网页源代码的方法
2015/03/13 PHP
PHP静态成员变量和非静态成员变量详解
2017/02/14 PHP
php 可变函数使用小结
2018/06/12 PHP
PHP 图片合成、仿微信群头像的方法示例
2019/10/25 PHP
AJAX的跨域与JSONP(为文章自动添加短址的功能)
2010/01/17 Javascript
JS 事件绑定函数代码
2010/04/28 Javascript
使用JavaScript实现点击循环切换图片效果
2017/09/03 Javascript
使用webpack搭建react开发环境的方法
2018/05/15 Javascript
jQuery动态生成的元素绑定事件操作实例分析
2019/05/04 jQuery
js实现坦克移动小游戏
2019/10/28 Javascript
Vue中添加滚动事件设置的方法详解
2020/09/14 Javascript
Node 使用express-http-proxy 做api网关的实现
2020/10/15 Javascript
zookeeper python接口实例详解
2018/01/18 Python
浅谈Python用QQ邮箱发送邮件时授权码的问题
2018/01/29 Python
Python实现简单遗传算法(SGA)
2018/01/29 Python
Python生成指定数量的优惠码实操内容
2019/06/18 Python
Python 绘制酷炫的三维图步骤详解
2019/07/12 Python
Python字典生成式、集合生成式、生成器用法实例分析
2020/01/07 Python
pytorch进行上采样的种类实例
2020/02/18 Python
谈谈Python:为什么类中的私有属性可以在外部赋值并访问
2020/03/05 Python
Python将二维列表list的数据输出(TXT,Excel)
2020/04/23 Python
python 日志模块logging的使用场景及示例
2021/01/04 Python
洛佩桑酒店官方网站:Lopesan Hotels
2019/04/15 全球购物
时尚孕妇装:Ingrid & Isabel
2019/05/08 全球购物
String这个类型的class为何定义成final?
2012/11/13 面试题
.NET初级开发工程师面试题
2014/04/18 面试题
2014年两会学习心得体会
2014/03/10 职场文书
新年爱情寄语
2014/04/08 职场文书
夫妻分居协议书范本(有子女版)
2014/11/01 职场文书
2014年医德医风工作总结
2014/11/13 职场文书
2015年暑期社会实践报告
2015/07/13 职场文书
公司岗位说明书
2015/10/08 职场文书
80行代码写一个Webpack插件并发布到npm
2021/05/24 Javascript
一文搞懂php的垃圾回收机制
2021/06/18 PHP
MySQL into_Mysql中replace与replace into用法案例详解
2021/09/14 MySQL