实时音视频这种实时业务一般用udp传输数据,其对网络性能是非常敏感的,在实战中,经常需要测试当前端到端或端到云的网络性能。在这里我们讨论一下网络性能测试中所涉及到指标,技术和相关工具,以及如何编写自己的网络性能测试工具。

性能指标

先给出几个比较重要的指标的定义以及它们的意义。

  • 带宽(吞吐量)
    单位时间内传输的数据量,单位通常是每秒比特数,记作bps;
    带宽反映了网络的传输能力,越大越好;
  • 丢包
    数据包丢失个数,等于“发送数据包数” - “接受数据包数”;
    丢包反映了网络可靠性,越小越好;
  • 时延
    数据包从发送开始到接收到该数据所耗费的时间,单位通常是毫秒;
    时延反映了网络的速度,越小越好;
  • 抖动
    指时延的变化,即两个数据包时延的差值;
    抖动反映了网络的稳定性,越小越好;
  • 乱序
    指接收到的数据包顺序和发送顺序不一致的次数;
    乱序反映了网络的稳定性,越小越好;
    当乱序比较严重时,丢包也会比较严重,所以一般都以丢包指标为主,忽略乱序指标;

Read More

在P2P实时音视频领域,NAT穿越是一个非常重要的技术。NAT穿越技术使得客户端和客户端直接进行通讯,从而减少了端到端的延迟,并大大减轻了服务器的压力,降低成本。

NAT是什么

NAT的全称Network Address Translation,通常指的是把内网地址转换成外网地址。一般家用的无线路由器就用到了NAT技术。NAT技术的出现是为了解决IPv4地址不够的问题,而且还能够避免来自网络外部的攻击,隐藏和保护网络内部的计算机。凡事有利必有弊,NAT同样带来了新的问题。

Read More