概述 Ethr是一个用golang编写的跨平台网络性能测量工具。该项目的目标是提供一个本地工具,用于跨TCP、UDP、HTTP、HTTPS等多种协议以及跨多个平台的带宽、连接秒、数据包秒、延迟、丢失和抖动的全面网络性能测量;Ethr支持多线程,这允许它扩展到1024甚至更多的连接数,多个客户端与单个服务器通信等;用于延迟测量,它类似于Windows上的latte或Linux上的sockperf 1、ethr二进制安装wgethttps:github。commicrosoftethrreleasesdownloadv1。0。0ethrlinux。zipunzipethrlinux。zipmvethrusrlocalbinchmodxethr 2、ethr命令行常见选项t指定测试类型,取值包括b带宽c每秒连接数p每秒包数l延迟、损耗和抖动piPing丢失和延迟x指定适用于到目标站点的网络测试n并发会话线程数,0设置为当前cpu数d测试时长,0不限时p指定测试时的协议类型,取值tcp、udp等网络带宽启动服务端ethrsport5203带宽测试ethrc192。168。31。11port5203tbd1mUsingdestination:192。168。31。11,ip:192。168。31。11,port:5203〔5〕local192。168。31。16port30961connectedto192。168。31。11port5203〔ID〕ProtocolIntervalBitss〔5〕TCP000001sec15。49G〔5〕TCP001002sec18。59G〔5〕TCP002003sec15。20G〔5〕TCP003004sec15。48G〔5〕TCP004005sec17。46G〔5〕TCP005006sec16。17G〔5〕TCP006007sec16。11G〔5〕TCP007008sec16。30G每秒转发包数启动服务端ethrsport5203UDP每秒包转发数压测ethrc192。168。31。11port5203tppudpn0d0Usingdestination:192。168。31。11,ip:192。168。31。11,port:5203ProtocolIntervalBitssPktssUDP000001sec50。77M6。35MUDP001002sec52。93M6。62MUDP002003sec55。81M6。98MUDP003004sec52。76M6。59MUDP004005sec51。86M6。48MUDP005006sec55。79M6。97MUDP006007sec54。71M6。84MUDP007008sec55。80M6。97MUDP008009sec53。74M6。72MUDP009010sec51。79M6。47MUDP010011sec51。09M6。39MUDP011012sec51。88M6。49M测试结论:每秒包转发数65w,备注:暂不支持TCP协议的PPS压测每秒新建连接数启动服务端ethrsport5203每秒新建tcp连接数测试ethrc192。168。31。11port5203tcptcpd1mn0Usingdestination:192。168。31。11,ip:192。168。31。11,port:5203ProtocolIntervalConnsTCP000001sec53。63KTCP001002sec63。17KTCP002003sec59。12KTCP003004sec51。59KTCP004005sec45。38KTCP005006sec52。47KTCP006007sec54。58KTCP007008sec64。67KTCP008009sec62。43KTCP009010sec56。70KTCP010011sec62。75K网络延时启动服务端ethrsport5203TCP延时测试ethrc192。168。31。11port5203tlptcpd1mn0Usingdestination:192。168。31。11,ip:192。168。31。11,port:5203Runninglatencytest:1000,1AvgMin5090959999。999。99Max120。508us82。948us112。010us149。992us175。457us243。291us427。164us427。164us544。289us167。457us82。565us105。179us399。238us615。316us728。474us778。789us778。789us795。993us116。686us83。275us110。900us147。542us161。407us215。930us370。528us370。528us699。011us120。487us81。468us112。020us147。313us173。125us265。141us552。161us552。161us844。891us125。260us95。676us116。963us151。482us179。537us240。500us466。104us466。104us621。117us122。701us77。962us114。985us152。897us175。167us283。537us537。144us537。144us795。253us108。325us74。415us103。420us129。317us144。962us193。497us369。824us369。824us805。387us134。934us81。191us123。791us161。572us218。611us315。985us638。850us638。850us713。924us140。875us76。917us120。009us169。095us299。080us595。553us653。219us653。219us654。012us118。709us89。973us108。923us144。635us174。059us266。124us449。520us449。520us609。781us网站测试站点ping延迟ethrxhttp:192。168。31。11picmptpid04Usingdestination:192。168。31。11,ip:192。168。31。11,port:80〔icmp〕〔warmup〕Pingto192。168。31。11:577。924us〔icmp〕Pingto192。168。31。11:610。218us〔icmp〕Pingto192。168。31。11:604。991us〔icmp〕Pingto192。168。31。11:683。871us〔icmp〕Pingto192。168。31。11:534。377us〔icmp〕Pingto192。168。31。11:453。957us〔icmp〕Pingto192。168。31。11:512。837us〔icmp〕Pingto192。168。31。11:588。904us〔icmp〕Pingto192。168。31。11:548。445usTCPconnectstatisticsfor192。168。31。11:Sent8,Received8,Lost0AvgMin5090959999。999。99Max567。200us453。957us548。445us610。218us610。218us610。218us610。218us610。218us683。871us站点tcp连接延迟ethrxhttp:192。168。31。11ptcptpid04Usingdestination:192。168。31。11,ip:192。168。31。11,port:80〔tcp〕〔warmup〕Connectionfrom〔192。168。31。16〕:6337to〔192。168。31。11〕:80:1。004ms〔tcp〕Connectionfrom〔192。168。31。16〕:61945to〔192。168。31。11〕:80:792。947us〔tcp〕Connectionfrom〔192。168。31。16〕:15991to〔192。168。31。11〕:80:811。263us〔tcp〕Connectionfrom〔192。168。31。16〕:10841to〔192。168。31。11〕:80:873。637us〔tcp〕Connectionfrom〔192。168。31。16〕:58697to〔192。168。31。11〕:80:951。613us〔tcp〕Connectionfrom〔192。168。31。16〕:30421to〔192。168。31。11〕:80:936。934us〔tcp〕Connectionfrom〔192。168。31。16〕:14777to〔192。168。31。11〕:80:764。685us〔tcp〕Connectionfrom〔192。168。31。16〕:48157to〔192。168。31。11〕:80:788。011us〔tcp〕Connectionfrom〔192。168。31。16〕:8247to〔192。168。31。11〕:80:920。898usTCPconnectstatisticsfor〔192。168。31。11〕:80:Sent8,Received8,Lost0AvgMin5090959999。999。99Max854。998us764。685us811。263us936。934us936。934us936。934us936。934us936。934us951。613us