根据公式计算网络qoe
公式分为web浏览,游戏,voip,办公等类型
import os
import math
import time
def getsoe(apptype,minv,maxv,aver,loss):if minv == '0':minv='1'if maxv == '0':maxv='1'if aver == '0':aver='1'drop = float(loss)/10jitter = math.sqrt(((float(maxv)-float(aver))*(float(maxv)-float(aver))+(float(minv)-float(aver))*(float(minv)-float(aver)))/2)delay = float(aver)#print("drop jitter delay ",drop,jitter,delay)if apptype == 'web' or apptype == 'office' or apptype == 'sns':a=5.008b=-0.0045c=0.03 soe = a*math.exp(b*delay)+cif apptype == 'video':#enhence effect soe = math.exp(-drop)/(0.00628*jitter+delay*0.0138)+1.844if apptype == 'game':jitter=jitterx = delay+0.686*jitterif x>650.0:x = 650.0a = 3.08*(10**(-9)) b = 1.18*(10**(-5))c = 1.15*(10**(-2)) soe = 4.33-a*(x*x*x)+b*(x*x)-c*xif apptype == 'voip':soe = 5-0.003*delay-16.14*dropif apptype == 'download':x = delay*200/1000soe = 4.298*math.exp(-0.347*x)+1.39+1if soe>5.0:soe = 5.0 if soe<1.0:soe = 1.0 return round(soe,3) os.system("curl.exe --silent -o rpingdst.txt http://1.1.1.1/rpingres.txt")dstlist=[]
fd = open('rpingdst.txt')
for v in fd:if v.find('node')==0:dstlist.append(v.split('#')[1])
fd.close() dstlist = list(set(dstlist)) apptype=["web","office","video","game","voip","download","sns"]
appsoe = {}
appip = {}
for x in apptype:appsoe[x]=[]appip[x]=[]for x in dstlist:app = x.split(':')[0]ip = x.split(':')[1]#print(app,ip)time.sleep(2)cmd = "ping "+ip+" -n 10"if app=='video' or app=='download':cmd+=" -l 800"tmpres = os.popen(cmd).readlines()#print(len(tmpres))loss = ''minv = ''maxv = ''aver = ''for t in tmpres:#print(t)if t.find('Lost')>=0:loss = t.split('Lost')[1].split('(')[0].replace('=','').strip()if t.find('Minimum')>=0: minv = t.split(',')[0].split('=')[1].replace('ms','').strip()maxv = t.split(',')[1].split('=')[1].replace('ms','').strip()aver = t.split(',')[2].split('=')[1].replace('ms','').strip()#print(getsoe(app,minv,maxv,aver,loss))if minv=='' or maxv=='' or aver=='':minv='999'maxv='999'aver='999'if app=='video':print(app,ip,minv,maxv,aver,loss,getsoe(app,minv,maxv,aver,loss)) appsoe[app].append(getsoe(app,minv,maxv,aver,loss))appip[app].append(ip)
print('') fd = open('qossoe.txt','w')
for x in apptype: print(x,round(sum(appsoe[x])/len(appsoe[x]),2))fd.write(x+'#'+str(round(sum(appsoe[x])/len(appsoe[x]),2))+'\n')
fd.close()
根据公式计算网络qoe相关推荐
- 均方距离计算公式_Excel2013中通过公式计算方差与均方差来反映数据的偏移程度...
说起方差.均方差,可能还要回想一下,毕竟那是很早以前接触的(初中数学里面就有的).方差(英文Variance)用来度量随机变量和其数学期望(即均值)之间的偏离程度,多用于零件测绘行业.均方差也叫标准差 ...
- 信息项目管理师计算机公式,(最新整理)信息系统项目管理师九个公式计算题
<(最新整理)信息系统项目管理师九个公式计算题>由会员分享,可在线阅读,更多相关<(最新整理)信息系统项目管理师九个公式计算题(7页珍藏版)>请在人人文库网上搜索. 1.完整) ...
- 十二、详解计算网络中的流量控制和差错控制、HDLC
十二.详解计算网络中的流量控制和差错控制 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动 ...
- matlab 流程计算方法,吸波材料LLG公式计算复磁导率的过程及matlab程序
看到一篇paper,利用Landau-Lifshitz-Gilbert 公式计算片状颗粒的复磁导率.(JAP 107,033913, 2010) http://scitation.aip.org/co ...
- c语言根据日期算星期几入门,c语言详解 蔡勒(Zeller)公式计算某一天是星期几 极其方便...
/* 蔡勒(Zeller)公式计算某一天是星期几 w:星期:c:(年份前两位):y:年(年份后两位):m:月(m大于等于3,小于等于14,即在蔡勒公式中,某年的1.2月要看作上一年的13.14月 来计 ...
- 用Machin公式计算圆周率的源程序
用Machin公式计算圆周率的源程序 /* Program to compute PI, by Jason Chen, May 1999 ** ** Open VC++ IDE, new a win3 ...
- excel公式不自动计算_c++通用面积计算公式_excel 公式计算 c++
刚刚开通了博客,今天正好有时间来完成自己的第一篇博客文章.希望对有需要的朋友有所帮助. 今天写了一个小代码:计算任意多边形的面积.临近毕业,毕设也忙得很,还好最近完成的差不多了,就差写论文了,今天突然 ...
- TCP/IP学习——利用主机IP与子网掩码计算网络号
阿里巴巴的一道题目,是关于利用主机IP与子网掩码计算网络号. 在此之前,我们需要先了解下五类IP地址. 在同一个物理网络上的主机的地址都有一个相同前缀,即IP地址分成两个部分:netid,hostid ...
- 中用BBP公式计算_【真课堂】7年级信息技术:数据计算
教师介绍: 汪小红,一级教师,滨江区科技节scratch项目优秀指导教师,曾获杭州市信息技术优质课二等奖. [教材分析] 数据计算是数据处理过程中的一个重要步骤,数据计算能对数据进行归纳和提炼.学生已 ...
最新文章
- 打印100~200 之间的素数
- 洛谷P2566 [SCOI2009]围豆豆(状压dp+计算几何)
- kata_FizzBu​​zz Kata与Java流
- mysql查询优化之一:mysql查询优化常用方式
- ubuntu18.04设置开机自启动的脚本
- iOS图形学(四):iOS中的绘图框架
- 一文搞懂机器学习中的缺失值处理(超详细)
- 滚动截屏APP—Faststone Capture破解版注册码
- 说说 iphone 数据线(充电线) 原装正品和仿制品、假货等的区别
- JAVA的GUI编程02——事件监听(ActionListener)、TextField事件监听、(组合、内部类)
- 天朝皇叔:学习笔记 Qt 连接数据库sql server
- 【经验总结】“投”——如何寻找适合投递的期刊或者会议
- JVM概览:内存空间与数据存储
- 民航导航技术发展及北斗应用分析
- git rebase 简介
- 函数式编程|python的函数式编程
- 数据结构 哈希表 ASL 失败查找
- LaTeX minted报错Package minted Error: Missing Pygments output
- LintCode Url Parser
- 网络实验之VTP协议