融合网络中的自适应中断联合的制作方法_3

文档序号:9510139阅读:来源:国知局
接收的每一个帧进行计数。计数器202和204可以在前一个时段结束时被复位, 以使每一个时段都是从零开始的。当在一个时段中接收到分组,并且计数器202和204依 照帧大小和服务等级计数了每个分组时,该计数可被传送到服务器130的存储器206。这 些计数将会组合在一起形成一个分类矩阵208,并且该矩阵可用于产生所要应用的下一个 中断限流率,以便能够使用任一指定时段的数据来产生应用于后续时段的ITR。存储器206 还包括一个存储在其内部的候选ITR矩阵210,并且在下文中将会对此进行论述。
[0034] 图3描述的是一个例示分类矩阵300,作为示例,该矩阵可以表示在图2的分类矩 阵208中给出的单个时段的计数器数据。该分类矩阵300包括依照计数器202和204填充 的多个容器(bin),在这里描述的是48个容器。作为示例,当网络接口卡132接收到帧大小 为256字节且服务等级值为2的帧时,容器14将被递增。另举一例,在接收到大小为1500 字节且服务等级值为1的帧时,容器10将被递增。在单个测量时段中,类似的处理将会进 行几十万或者有可能进行数百万次,并且每一次都会递增相应的容器。
[0035] 在指定时段中接收的帧的数量在某种程度上取决于该时段的长度。对于这里描述 的时段来说,其持续范围可以是从大约半秒到大约两秒的范围中的某一点。作为示例,在所 描述的实施例中使用了一秒的时段,以使每一个容器〇到47中描述的值都来自在一秒的时 段中接收的帧。
[0036] 为了产生适合服务器130的ITR,分类矩阵300内部的某一个点将被确定。该处理 可以通过确定具有在容器行中具有最高组合数的服务等级值以及通过确定在容器列中具 有最高组合数的帧大小计数器来完成。同样,在该时段结束时,在服务等级计数器204中具 有最大计数值的单个计数器可被识别,并且在帧大小计数器202中具有最大计数值的单个 计数器还可被识别。如下所述,在没有形成完整的分类矩阵300的情况下,通过使用这两种 信息作为索引,可以在ITR矩阵中找到恰当的候选ITR。
[0037] 图4是一个例示的候选ITR矩阵400,作为示例,该矩阵可以用于提供和访问图2 所述的候选ITR 200。ITR矩阵400中包含的值是候选ITR值。这些值可以基于需要中断限 速的信息处理设备的已知的质量或方面来确定,并且可以存储在服务器130的存储器206 中。关于可能影响候选ITR值的信息处理设备的一些具体方面包括存在于信息处理设备之 上的处理器的时钟速度,设备的处理核心数量,缓存大小,例如每一个处理器的二级或一级 缓存,超线程能力和/或可用性,系统上的RAM的数量,转移后备缓冲器的大小,以及其他因 素。在一些情况中,信息处理设备的制造商可以提供推荐值。虽然在一些情况中,候选ITR 矩阵400的值是可以由用户或运营商修改的,但在其他情况中,这些值是固定的。由此,在 各候选ITR矩阵400的实施例之间可能存在着显著的变化。
[0038] 在生成应用于后续时段中的恰当ITR中可以同时使用分类矩阵300和候选ITR矩 阵400。如上所述,在计数器202和204累加了某个时段之后,这时可以确定每一个属性的 最高计数器。作为示例,帧大小计数器5在帧大小计数器202中具有最高的计数值,而服务 等级计数器6在各服务等级计数器204之中具有最高的计数值。通过将这些计数器作为用 在候选ITR矩阵400中,可以返回与分类矩阵300的容器40相对应的候选ITR。在图4中 可以看出,该候选中断限速速率是每秒55, 000个中断。分类矩阵300可用于确定在指定时 段中接收的帧出现最多的质量,并且候选ITR矩阵400可以用于选择在后续时段中应用的 最恰当的ITR。
[0039] 为使系统或设备的所应用的ITR与不断变化的状况相适配,在每一个时段中都可 以应用一个新的ITR。当一个时段结束时,计数器202和204将会相加,并且会为后续时段 产生一个新的ITR。然后,系统或设备会在被计算的后续时段变成当前时段的时候使用这个 当前或是被应用的ITR。在关于信息处理系统100的一些实施例中,在以如上所述的方式 识别候选ITR时,这时会将来自ITR矩阵400的候选ITR作为被应用的或是当前的ITR用 于ITR矩阵400中包含的当前时段。当该时段结束时,从ITR矩阵400中将会识别出新的 候选ITR,然后,该ITR会在后续的时段中被应用。
[0040] 在关于信息处理系统100的其他实施例中,网络接口卡132并未直接应用在ITR 矩阵400中识别的候选ITR。取而代之的是,候选ITR将会作为中间值而被用于产生所应用 的ITR。该候选ITR将被用作一个将其与先前应用ITR结合在一起以计算所应用的ITR的 数学等式的输入。在一个实施例中,这种引入在先前时段中应用的ITR的处理是通过使用 以下等式指示的指数平滑算法完成的:
[0041 ] Applied_ITR0 = Candidate_ITRO (I)
[0042] Applied_ITRt = aCandidate_ITRt+(l_a)Applied_ITRt_l,t>0 (2)
[0043] 在等式(2)中,α代表的是从范围0到I中选择的平滑因子。通常,较高的α值 会更加强调先前时段的数据(其凭借指数平滑等式来引入先前的所有时段),而较低的a 值则会更加强调近期的候选ITR所代表的近期的数据。对于时间0或初始操作时段的候选 ITR来说,该ITR可以通过使用默认的选择方式或是预先编程的选择方式直接从候选ITR矩 阵400中找到,或者它也可以是存储在存储器中的单个预编程值。在操作过程中,在当前时 段(t)和前一个时段(t-Ι)应用的ITR可被存储在存储器中。作为示例,该存储器可以是 在服务器130上运行的处理器的一级或二级缓存,和/或它也可以存储在与网络接口卡132 相关联的存储器中。
[0044] 如上所述,虽然图1和2描述了融合网络设备102,但是其他实施例也可以具有非 融合网络设备或是未被配置成处理与以太网和光纤通道截然不同的协议的网络设备。在上 文中公开的这种自适应中断联合同样可以应用于使用这些更加传统的设备的信息处理系 统。
[0045] 图5是一种用于提供自适应中断联合的方法500。该方法在融合网络环境中是非 常有用的,但其也可以改善传统网络中的网络性能。方法500包括多个步骤。关于方法500 的实施例还可以包括处于所列举的步骤之前、之间或之后的附加步骤。如所述,方法500始 于步骤502,其中信息处理设备在网络接口控制器上接收来自网络的多个帧。在步骤504, 基于多个帧中的每一个帧的至少两个属性来产生当前ITR。在步骤506,将当前ITR应用于 在当前时段中接收的后续的多个帧。
[0046] 为了更好地图示方法500的性能。现在将对在上文以及图1和2中描述的信息处 理系统进行说明性参考。在包含了存储设备122到主机112的数据传输的通信过程中,融 合网络设备102会接收到大量的帧,然后,该设备会将这些帧传送到服务器130,以便进行 处理。服务器130在网络接口卡132上接收所述多个帧(步骤502)。<
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1