2015
11-28

Gargoyle Qos设置需要注意的几点

Qos中一般都有以下几个概念,ip、端口、协议、L7等

ip 就是设备在互联网上的地址

端口 计算机有1~65536(即:2^16)个端口,1~1024端口都绑定一些公认的服务,比如上网用的80,443,DHCP的53端口

1024以后一般是随机分配的端口。可以这样理解下,ip是指那栋公寓,端口就是房门号。每个程序都需要ip+端口才能通信

所以我们就可以对流量整形,即Qos

协议 不同软件间通信有不同的数据格式

L7 识别不同协议数据包的工具

Gargoyle Qos是基于端口的,也有基于L7的,比如dd。石像鬼qos里有rule和service两个部分。

service类似于各类通道,有动车,特快,普快,普快当然需要给动车让路

rule则是把各个包分类到不同通道的规则,这两个我们都可以自定义,不过,service和rule越多,qos功能占用内存越多。

首先要把带宽设置为自己网络的带宽,一般设为实际值的95%,上传比下载稍小些

默认有四个service类,VoIP,fast,slow,normal。

每个service类有4个属性,分别介绍:

Percent BW:配置该服务类当带宽被全部使用时,应被分配的带宽比例。当带宽没有被全部使用,分配带宽可以超过设定值。

所有service类的该属性值的和是100。

Min BW :配置该服务类最小应被分配的带宽(这个的单位是kbps,而不是百分比),系统会优先满足该服务类的带宽。

这对于某些要求延时较小的应用很有用,比如,在线游戏,网络视频等。

Max BW :配置该服务类最大应被分配的带宽(这个的单位是kbps,而不是百分比),即使有剩余的可用带宽,

该服务类也不允许使用超过该设置的带宽。

Min Rtt:当ACC启用时配置该服务类是否启用最小延时功能,牺牲30%左右的带宽来换取降低50%左右的延时。

Active Congestion Control(ACC):类似于一个守护进程,定时ping一个ip(默认是网关),来获取网络

使用情况,根据结果采取一定措施,进入不同模式,你可以自定义ping的目标ip和最小ping值。当有数据包通过启用Min Rtt的service时,ACC

会进入MINRTT模式。其实ACC的主要功能在MINRTT上。

rule里的属性全是为了匹配数据包而设计的,rule的目的就是找到有这些属性的数据包

rule是按从上到下匹配的,如果数据包已经匹配到rule,就不再向下匹配

关于rule有10个属性,其中对于ip和端口,一般情况下upload配置目标(Destination)端口、ip,download配置来源(Source)端口、ip

ip、端口的作用上面已经说了,举例,比如我想优化某个游戏的延时,我就要知道它走哪个端口,一般不需要具体到ip,

然后把这个rule放到优先级高且启用Min Rtt的service,这样,就可以得到比较好的效果。反之可以封杀某些应用,但要注意,

你限制太严格了,没准应用会频繁打开新端口,因为每个开发者都想带给用户最好的体验。

下面是关于Packet Length的两个属性,数据包的长度是一个范围。这个用的不多,当然可以通过它优化小包的延迟。

下一项是数据包的协议(Transport Protocol),这个一般也不常用。

Connection bytes reach 指该链接建立以来,传输数据的总量。比如默认设置把80,443端口的该属性值设为1M,并且服务

为normal,并且放在了最上面,效果就是,一开始链接的优先级很高,当连续传输数据达1M是优先级降低。这是有用的,

因为不是只有浏览网页使用80端口,Steam下载游戏时也是使用80端口,据说迅雷某些时候也会使用80端口,对于这些

还可以在Packet Length上区分。也许1M对于区分网页是合适的,但区分网页视频和其它程序显得有些小,可以再加个大些的rule嘛。

Application (Layer7) 这个一般不用,因为识别成功率不理想。

下个就是设置该rule识别到的数据包指定要走的service

不同的网络环境需要不同的优化,还是要多试验。

如果您通过本站解决了一些问题,并希望本站能够很好的发展下去,动动手指即可帮助我们。

如无特殊说明,解压密码均为:aisoa.cn

您可能感兴趣的文章

支付宝打赏支付宝打赏微信打赏微信打赏