Charles网络设置

网络延时

一个数据包从用户的计算机发送到网站服务器,然后再从网站服务器发送到用户计算机来回时间。通常使用网络管理工具PING来测量网络延时。

 

抖动,

网络延迟不停的变化成为抖动。如果网络发生拥塞,排队延迟将影响端到端的延迟, 并导致通过同一连接传输的分组延迟各不相同,而抖动,就是用来描述这样一延迟变化的程度

 

丢包

丢包率是一个比率 络中数据的传输是以发送和接收数据包的形式传输的,理想状态下是发送了多少数据包就能接收到多少数据包,但是由于信号衰减、网络质量等等诸多因素的影响下,并不会出现理想状态的结果,就是不会发多少数据包就能接收到多少。

丢包率主要与网络的流量,准确的说是与从用户计算机到网站服务器之间每段路由的网络拥塞程度有关。由于交换机和路由器的处理能力有限,当网络流量过高来不及处理时就将一部分数据包丢弃造成丢包。由于TCP/IP网络能够自动实现重发,这样发生丢包后不断重发,将造成更大量的丢包。因此,网络拥塞发生后经常会发生丢包率越来越高的现象,和马路上的交通堵塞十分相似。

 

MTU

因为协议数据单元的包头和包尾的长度是固定的,MTU越大,则一个协议数据单元的承载的有效数据就越长,通信效率也越高。MTU越大,传送相同的用户数据所需的数据包个数也越低。

MTU也不是越大越好,因为MTU越大, 传送一个数据包的延迟也越大;并且MTU越大,数据包中 bit位发生错误的概率也越大。

MTU越大,通信效率越高而传输延迟增大,所以要权衡通信效率和传输延迟选择合适的MTU。

以以太网传送IPv4报文为例。MTU表示的长度包含IP包头的长度,如果IP层以上的协议层发送的数据报文的长度超过了MTU,则在发送者的IP层将对数据报文进行分片,在接收者的IP层对接收到的分片进行重组。

这里举一个具体的例子说明IP包分片的原理。以太网的MTU值是1500 bytes,假设发送者的协议高层向IP层发送了长度为3008 bytes的数据报文,则该报文在添加20 bytes的IP包头后IP包的总长度是 3028 bytes,因为3028 > 1500,所以该数据报文将被分片,分片过程如下:

  1. 首先计算最大的IP包中IP净荷的长度 =MTU-IP包头长度=1500-20= 1480 bytes。

  2. 然后把3028 bytes按照1480 bytes的长度分片,将要分为3片,3028= 1480+1480+68。

  3. 最后发送者将为3个分片分别添加IP包头,组成3个IP包后再发送,3个IP包的长度分别为1500 bytes、1500 bytes和 88 bytes。

从以上分片例子可以看出第一、二个分片包组成的IP包的长度都等于MTU即1500 bytes。

在网络通讯中,需要尽量避免发生分片和重组,因为分片重组对网络性能影响较大。数据包发送时选择合适的MTU大小对提高通讯性能很有必要。MTU大小的选择有协议协商方式,通过全路径的MTU发现机制,找到整条路径的最小MTU(也就是路径MTU),然后报文发送式小于等于路径MTU,这就避免了数据传输过程中产生分片,从而提高数据转发性能。MTU的协议发现机制由于安全等方面的原因,并不能总是生效,这时候就需要根据网络的特性选择合理的MTU。如果在报文传送过程中分片是不可避免的,那么要想办法让重组尽量在终端进行,避免在转发路径中进行。

 

 

 

Charles网络设置_第1张图片

怎么设置慢网络

1、打开Charles,选择proxy->throttle settings

Charles网络设置_第2张图片

2、勾选【enable throttling】,设置带宽(下面各个字段有解释),再点击OK

Charles网络设置_第3张图片

3、勾选小乌龟,连接Charles的客户端就能限制网速了

Charles网络设置_第4张图片

网络设置,字段各个作用

Charles网络设置_第5张图片

 

Bandwidth(带宽)【吞吐量】

带宽定义数据可以传送超过时间上限,这是千比特每秒指定。可以指定上载和下载链接的不同带宽限制。

 

Utilisation(利用)

利用率是总带宽的百分比,可以在任何一个时间使用。它只是作为可用带宽的缩放因子。对于大多数现代互联网连接利用率始终是100%。

 

Round-trip Latency(请求往返延迟)【延时】

往返延迟测量客户端和远程服务器之间的第一次往返通信的毫秒延迟。它用于客户端向服务器和服务器向客户端的每次请求。

 

MTU(最大传输单元)

在任何传输的TCP数据包的最大尺寸。指定MTU不改变的可用带宽,但允许Charles在MTU分配带宽大小的块,导致在每个传输包分割的现实水平

 

Reliability(可靠性)【丢包】

可靠性是衡量连接完全失败的可能性。这是非常有用的模拟不可靠的网络条件。可靠性是指定为成功发射10kib消息的可能性,所以,值为50%意味着所有10kib传输一半会成功。较大的邮件或更小的消息或多或少都有可能失败,所以20kib传输将只有25%的成功率和5kib传输成功率约70%。

 

Stability(稳定性)【抖动】

稳定性是衡量一个连接的可能性是不稳定的,因此降低了质量。这是非常有用的模拟网络,如移动网络,定期连接质量差。如果连接不稳定,则连接的质量会在不稳定的质量范围内随机下降。此质量值,然后应用作为另一个缩放因子的可用带宽。

 

unstable quality range(不稳定质量范围)

此处设置主要针对于Stability中设置中的范围

 

以下配置用于模拟不太好的2G蜂窝网络 

  • 带宽256 kbps(上传和下载)

  • 利用100%

  • 延迟300 ms

  • MTU为1500字节

  • 可靠性75%

  • 稳定75%

  • 不稳定的质量范围为20%至25% 

 

 

 

你可能感兴趣的:(Charles网络设置)