2023年12月22日发(作者:)
建设与应用网络管理网速有多快?测速系统可即时全景展示文/刘波 洪剑珂 柳斌 陆梅网络性能测量是网络测量领域的核心分支,是指利用软、硬件工具并遵照一定的方法和技术验证及表征网络性能指标的行为,是量化网络性能指标、了解网络运行状态最基本和最有效的手段。设计和开发一套基于Web的校园内网测速反馈系统,在保证数据真实准确的前提下,采集校园网各局域网到服务器的宽带速率数据,并将测试数据存入到数据库中用于统计分析。一方面使终端用户可以直观地了解自己使用的网络状况;另一方面为网络管理人员提供一个各局域网质量巡检采集分析的平台,通过全网的测速数据使管理人员了解校园网的整体质量状况。系统功能需求通过分析我们发现,设计和开发一套基于Web的校园内网测速反馈系统,在保证数据真实准确的前提下,需要采集校园网各局域网到服务器的宽带速率数据,包括延时、抖动、上传及下载速率,并进一步将测试数据存入到数据库中。具体研究内容和系统功能包括以下三个方面:1.系统具备测量与分析功能,包括数据采集、数据存储和分析数据结果展示三个部分;2.系统能够构建数据结果表,存入测速数据中的测试时间、IP地址、物理位置、上传速度、下载速度等参数;3.系统能够对IP地址和物理位置进行比对,存储和展示各楼栋历史网络速度数据,并对不同物理位置的网络状况进行简单的分析排序。系统功能组成测速反馈系统分为普通界面和管理员界面两个部分,普通界面直接面对广大校园网用户,用户通过Web界面参与测速工作并上传测试数据,在本文中,系统的客户端采用发展友好用户的方式向校园网公众用户进行推广。在校园网核心区接近边界出口位置设置测速服务器,而测速用户客户端在校园网接入层的任意区域,如图1所示。66中国教育网络 2021.2-3互联网系统服务器校园骨干网网络管理终端接入交换机接入交换机接入交换机图1 系统结构示意测速过程由客户端和测速服务器共同执行完成,客户端首先向服务器请求测速页面,点击测速按钮后客户端开始向服务器端发送一组数据包并同时开始计时,收到服务器返回的信息后计时结束,客户端根据接收到该组数据包中各组数据的反馈个数、反馈时间来计算网络延时,根据数据平均值的偏心率来计算网络抖动,从而得出校园内网路传输的上下行数据值,并将结果以数值形式显示在客户端的Web页面上。普通用户点击上报后才能将相关测速信息发送给服务器端数据库进行存储。而管理员界面不面向参与测试的普通用户,只面向校园网管理人员。网络管理员进入管理员界面后,调取一个或多个已有的网络节点,点击测速后服务器端开始向所选节点发送数据并同时开始计时,收到网络节点返回的信息后计时结束,测速服务器根据计时数据计算网络速度,并且将结果以数据形式显示在管理员界面Web页上。管理员用户点击上报后也能将相关测速信息发送给服务器端数据库进行存储。系统模块可分为网络测速功能模块、信息存储功能模块和信息分析功能模块。系统总体设计为了实现双向测试的功能,系统设定了不同的角色对象,以用户端、接入层设备、固定测速点来构成测试行为的基本要素,通过基于Web应用协议的系统平台,使用HTTPS协议数据建立与系统服务器的连接,对象间通过基于TCP/IP协议的握手机制与网络节点构建通信连接;各节点与服务器均可相互发送测试数据包,并于此刻开始计时;节点或服务器根据是否接收到从目标点返回的反馈数据包及接收到反馈数据包的时长,演算输
出相应的测速结果。系统平台统一记录所有的测试结果,根据采集的IP地址进一步判断测试对象采用的网络连接方式是无线还是有线,将测试设备的IP地址、测试地点、测试时间进行归档存放,重复数据进行优化合并,形成全面详实的网络传输数据信息源。进一步根据采集的信息源研究一种健康度的特征图表,来描述局域网的健康情况。系统工作原理校园网网速是校园网用户访问网络时最直接的感受,是衡量校园网络质量的指标,系统计算网络速率的方法采用非常短的时间的传输数据。将传输的数据包的大小除以使用的时间,其结果即为该时间段的网络传输速率。而本系统要计算包括网络延时、网络抖动、网络下载、网络上传四个指标。我们假设T1为请求的发送时间,T2为服务器接收的时间,T3为接收响应时间,T4,T5,T6为另一指标的类似变量,定义以上类推。那么网络延时计算:Delay1 = T3-T1;网络抖动计算:jitter1 = (T5-T4)-(T2-T1);网络下载计算公式描述:在规定时间段内向目标服务器请求下载数据量,假设d1表示第1秒下载的字节数,d2表示第2秒下载字节数,5秒内下载速度为dlMeter=(d1+d2+d3+d4+d5)/5;网络上传计算公式描述:指定规定大小随机数据文件f向目标服务器上传,求得上传完毕的时间t, 那么上传速度ulMeter=f/t,假设10M随机内容文件上传完毕需要10秒,上传速率经过计算为1M/s。本系统使用以上公式计算网络速率的四个指标,下面详细叙述系统的主要功能模块和流程。1.客户端操作界面:用户需要登录浏览器进行操作,获得测速服务器发送的客户端测速界面。2.客户端功能按钮:主要是测速按钮和显示内容,使用者发送测速命令用来开启传递服务端与客户端之间的测速数据。3.服务端业务模块:业务模块对各项功能的实现起着非常重要的作用,该模块的主要组成部分包括客户端宽带测速子模块、客户端测速报告生成子模块、数据库存储和调用模块。测速子模块用来完成系统的测速需求,并调动测速数据展示子模块来显示测速结果。同时,测速结果和相关信息通过数据库数据存储模块存储到数据库中。4.服务端管理模块:包括管理用户管理子模块、服务端信息采集模块、系统测速计算和反馈模块、测试数据存储和调用分析模块等,还具有部分对测速数据进行统计分析的信息查询和分析模块。测速过程由客户端和Web服务器共同执行完成,客户端作为源节点首先访问测速页面,然后向目标节点Web服务器发送网络管理建设与应用客户端浏览器(源节点)Web服务器(目标节点)1.请求测速页面请求接收请求,返回测速页面返回测速页面数据渲染给客户端2.向服务器端请求测速接口(延时、抖动、下载、上传)测速请求 接收测速请求,并开始计时返回响应数据返回响应数据给客户端3.接收服务器端响应结束,结束响应计时结束,分别计算(延时、抖动、下载、上传)数据4.计算时长数据,返回给测速页面图2 测速系统工作流程测速请求包含(延时、抖动、下载、上传)接口并开始计时,服务器收到请求后,向客户端发送响应数据,客户端接收到来自服务器的响应数据后结束计时,再根据测速双向往返延时时长来计算网络速度。最终将以上结果转化图形和数据形式返回给调用的浏览器。图2为该系统客户端测速的主要工作流程。系统功能实现客户端功能的实现1.客户端的测速实现客户端测速流程:用户打开浏览器,输入测速系统服务器网址,然后单击“开始测试”按钮开始网速测量;这时客户端选择的测速目标是服务器。服务器接收测速数据包和测试时间点数据,系统开始计算传输过程中的上下行网络速度、网络延时和网络抖动。系统将时间设置为通过计时器的速度测量时间;并且当时间到时,获得测速数据包的大小。通过程序计算,获得此时的网络测速的相关数据。将数据值和速度表显示状态反馈给客户端浏览器,从而使用户获得测试结果。2.测速数据上传存储客户端的浏览器显示测试结果以后,用户可以点击“开始测试”按钮再次开始网速测量,通过反复测量可以避免测试数据的偶然性。用户也可以点击“上报记录”按钮,打开数据上报接口程序,接口程序采集用户测速信息、用户IP、测速时间、测速地点等信息发送给测速服务器。服务器接口验证数据无误,打开数据库接口程序,调用数据库文件,将相关信息写入数据库,自2021.2-3中国教育网络
67
建设与应用网络管理动保存。数据上传存储功能可以积累大量的测试数据,为后期进行校园网网速状态分析提供数据支撑。管理端功能的实现1.建立校园网节点信息网络管理员点击管理员入口,输入用户名和验证码后,可以登录进入管理员界。管理员界面提供系统所有的管理功能。其中“网络节点”功能可以提供给管理员批量导入网络节点和单个建立网络节点的功能。每个网络节点信息包括节点的IP地址,节点所在楼栋的物理位置名称,节点下用户IP地址段范围等相关信息。建立节点信息表,可以让网络管理员进行全网巡检,储存巡检数据;还可以提供管理员进行单点测试的功能,迅速掌握保障区域的网络状况,定位故障点范围;同时,通过比对用户端测速地址信息能够智能判断测试客户的物理位置,便于信息的分类存储和统计分析。2.提供管理端测速功能管理段测速功能是管理员独有的权限,管理员需经过身份验证登录系统。系统管理功能包括了管理员信息的添加、删除、修改等基本操作。管理员点击“网络节点”,选择单个或多个节点,以及勾选全选方框,点击巡检或批量巡检功能按钮,管理员可以对所选网络节点发送测速数据,通过系统的测速功能掌握单点或全网的网速情况,高效便捷地对需要测速的节点进行网速测试,获取全网或单点的测试延迟信息,对于网络延时过大或者网络不通的节点会红色高亮timeout显示,上传数据库,丰富网络测试信息,并有效掌握全网状态,进行全网网速数据分析。3.统计分析测试数据的简单呈现在数据库积累一定时间段的测速信息以后,管理员在通过账户验证后登录系统,可以根据工作需要调用数据展示功能,选择单个网络节点或者全部巡检范围和时间段,查看一段时间内的测试信息统计图表。通过折线图和柱状图直观地了解校园网内网速的变化情况,衡量网速的稳定性(图3所示),查找校园网内网速不畅的网络节点范围(图4所示)。数据库的实现为了分析校园用户和校园节点网速的相关信息,需要长期保存测速相关数据。本文选择具有易用性、适合分布式组织的可伸缩性、拥有支持统一性数据仓库、具有与许多系统程序接口紧密关联集成性、具备良好性价比的Sql Server 2016作为数据库系统。数据库系统是数据管理的工具,可用于系统中的数据建立数理逻辑和集合操作,在使用过程中具有较高的工作效率,相对完备的存储安全。针对校园网速测速系统需求,分别在数据库中建立用户测试记录表【SpeedLogs】、测速节点表【SpeedNodes】、节点延时记录表【TracertLogs】、系统用户表【FrameworkUsers】、系统角68中国教育网络 2021.2-3图3 单个网络节点网速变化折线图4 全网网速状态对比色表【FrameworkRoles】、系统菜单表【FrameworkMenus】、系统日志表【ActionLogs】等表。用户完成测速后数据的收集,启动数据上传,将通过系统接口程序在指定的业务逻辑中将数据信息分别保存到不同的业务表中,逐条积累,从而为后期进行统计分析时调用数据做好准备,为快速实现数据共享提供支撑。系统测试校园网测速反馈系统的实现主要是基于C#编程语言,结合.net core3.1框架开发。该系统适用于校园网络运行,实现监控校园网络节点网络传输的延时和收集全网范围内的测速信息。基于以上需求,我们对校园网测速系统进行功能和流程分析,建立测试思路、设计测试用例、选择测试环境。首先在校园网的核心层中设置了测速服务器,部署已开发编译完成的校园网测速反馈系统和数据存储数据库,校园网测速系统的测试环境采用Windows操作系统和Android手机,在浏览器端进行测试验证。另外还召集了一批真实用户分别在PC和手机端进行测试,收集测试数据。基于此测试思路来验证该系统的稳定性和测试数据的准确性,为正式推广到校内全面使用做好了充足的准备。通过该系统的实际应用,可以很清晰地反映用户描述。经过维修处理后,也可以清晰地反映出网速变化,证明维修效果。唯一遗憾的是,本系统测试重点在内网网速上,而不是检测网络断电,对应内网中断的区域无法获取测速页面,而管理员巡检也只能发现中断区域,无法定位中断位置和中断原因,因而该系统还有优化和补充的空间。(责编:项阳)(作者单位为华中科技大学网络与计算中心)
发布评论