ROS软路由论坛 ROSABC.com 网络方案网络工程交流

 找回密码
 会员注册

QQ登录

只需一步,快速开始

查看: 4471|回复: 0

IRQ中断请求 (RouterOS v5.x)

[复制链接]
发表于 2013-4-28 09:09:04 | 显示全部楼层 |阅读模式

马上注册成为ROSABC会员,随时发帖回复。

您需要 登录 才可以下载或查看,没有账号?会员注册

x
本帖最后由 dell 于 2013-4-28 09:11 编辑

IRQ中断请求   (RouterOS v5.x)
IRQ中断请求   (RouterOS v5.x)
IRQ中断请求   (RouterOS v5.x)


IRQ “中断”简单的说就是,每个硬件设备(如:硬盘、网卡、USB设备等)都需要和 CPU通信,让CPU响应这些硬件设备的请求,以便 CPU 及时知道发生了什么事情,这样 CPU 可能就会放下手中的事情去处理应急事件,硬件设备主动打扰 CPU 的现象就可称为硬件中断,就像你正在工作的时候收到QQ消息一样,一次QQ信息,你就会查看,这样的情况可以称为中断。



中断方式是CPU 与硬件通信较好的方式,还有一种方式叫做轮询(polling),就是让 CPU 定时对硬件状态进行查询然后做相应处理,就好像你每隔5分钟去检查一下邮箱看看有没有人联系你一样,这种方式是不是很浪费你(CPU)的时间?所以中断是硬件主动的方式,比轮询(CPU 主动)更有效一些。

硬件中断发生频繁,是件很消耗CPU资源的事情,在多核CPU 条件下如果有办法把大量硬件中断分配给不同的CPU 上处理,这样会显然系统有更好的负载平衡性能。现在的服务器上动不动就是多CPU或多核、多网卡、多硬盘,如果能让网卡中断独占1个CPU 或核心,磁盘IO 中断独占1个 CPU的话,将会大大减轻单一CPU的负担、提高整体处理效率。



RoueterOS 从v5.0版本后增加了IRQ中断配置属性(操作路径/system resource irq ),这种方式在Linux上称为“中断亲和”,我们可以通过调整各个硬件的CPU中断响应,提升系统在高网络负载下的性能,这主要是优化以太网卡的IRQ请求,减轻单个CPU的中断请求压力,配置和优化IRQ中断请求需要注意一下情况:

1、CPU必须大于等于2(包括多核心CPU)。

2、大于等于2个以太网卡,最好以太网卡支持多个中断队列请求,有助于网络性能的进一步提升。

3、如果以太网卡的中断队列越多,CPU核心数量也尽量多,这样能更好均衡分担到各个CPU核心上,当然这样的硬件成本会比较高。

注意如果你的网络请求不够频繁,优化IRQ效果并不明显,一般在连接和流量较大的时候体现出来

下图是一台Intel至强双CPU服务器,每个CPU为4核心,共有8个物理核心处理器。从列表中可以看到ether1和ether4只支持1个中断请求,而ether2和ether3分别支持两组中断请求,也就是可以更灵活的分配给其他CPU处理中断请求。如下图是RouterOS中的中断请求情况



2482327819629015531.jpg



关于网卡的中断请求,要看网卡芯片型号,比如代号为Kawela的Intel 82576芯片在千兆网卡里面属于功能最强大的,它支持PCI-e 2.0 x4界面,支持MSI-X中断方式,提供了16个TX和RX队列,82574是支持2个TX和RX队列,82575支持8个TX和RX队列。



RouterOS会自动分配IRQ给对应的硬件设备,当然IRQ配置肯定是在多CPU或多核心CPU前提先才有效,单核单CPU是没有意义的。如果你的系统负载不高的情况下可以不用理会IRQ,在高负载下时,IRQ调整将有助于CPU处理的均衡,如果发现CPU负载不均衡,可以手动指定中断请求,如下面手动配置eth3-tx-0请求到第7 个CPU上。

6597374331377375979.jpg

[RouterOS v5.0 IRQ]


您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

不良信息举报Q:2000617

软路由

不良信息举报Q:2000617|Archiver|ROS软路由论坛 ROSABC.com 网络方案网络工程交流

GMT+8, 2024-5-16 05:28 , Processed in 0.942403 second(s), 25 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表