一种资源分配方法和装置的制造方法_4

文档序号:9827990阅读:来源:国知局
116] 步骤306、从目标context的可用资源中,为目标进程分配与请求分配的资源量等 量的资源。
[0117] 本发明实施例中,步骤303~步骤306的具体实现,可以参见上述步骤102~步骤 105中的相关描述,本发明实施例在此不再赘述。
[0118] 在一种实施方式中,可以为设置有资源分配上限的业务进程设置高于未设置资源 分配上限的业务进程的优先级,或者默认设置有资源分配上限的业务进程的优先级高于未 设置资源分配上限的业务进程的优先级,从而可以在一定程度上保证设置有资源分配上限 的业务进程的资源占用成功率。
[0119] 需要注意的是,在本发明实施例中,考虑到当物理防火墙被划分为多个context, 且多个context共用物理防火墙的资源时,各context配置的资源使用上限之和可能会出 现大于物理防火墙的资源总量的情况。例如,假设物理防火墙被划分为context Ucontext 2 和 context 3, context Ucontext 2 和 context 3 的资源使用上限各为 40% Jljcontext Ucontext 2和context 3的资源使用上限之和大于物理防火墙的资源总量,此时,可能会 出现请求分配的资源量小于context内可用资源量,但大于系统可用资源量(即物理防火 墙的可用资源量)的情况。
[0120] 举例来说,以资源为内存为例,假设物理防火墙的内存总量为100M,且该物理防火 墙被划分为 context Ucontext 2 和 context 3, context Ucontext 2 和 context 3 的内 存使用上限各为40%,即context Ucontext 2和context 3的内存使用上限各为40M;其 中,当context 1和context 2的内存均被全部占用,且context 3的内存被占用15M时, context 3的可用内存量为25M,而系统可用资源量仅为5M,此时,若context 3内某业务进 程请求分配IOM的内存,则会出现context 3的可用内存量大于请求分配的内存量(25M > 10M),但系统可用内存量小于请求分配的内存量(5M< 10M)的情况。
[0121] 因此,在本发明实施例中(包括上述图1~图3所示的方法流程中),资源分配 装置确定目标context内的可用资源量大于或等于请求分配的资源量,或释放后的目标 context的可用资源量大于或等于请求分配的资源量时,在进行资源分配之前,可以进一步 判断系统可用资源量是否大于或等于请求分配的资源量,并当大于或等于时,进行资源分 配;否则,拒绝进行资源分配,或释放目标context内低优先级的业务进程占用的进程,直 至释放后的系统可用资源量大于或等于请求分配的资源量,其具体实现在此不再赘述。
[0122] 进一步地,在本发明实施例中,资源分配装置从目标context的可用资源中为目 标进程分配与请求分配的资源量等量的资源之后,还可以更新该目标进程的资源占用历史 记录。
[0123] 可见,在图3所描述的方法流程中,通过为context内的部分或全部业务进程设置 资源分配上限,使资源占用细化到业务粒度,降低了 context内出现部分先运行的业务进 程占用资源过多,导致其它业务进程无法占用资源的情况发生的概率。
[0124] 为了使本领域技术人员更好地理解本发明实施例提供的技术方案,下面结合具体 的应用场景进行说明。
[0125] 请参见图4,为本发明实施例提供的一种具体应用场景的示意图,其中,LAN(Local Area Network,局域网)1、LAN 2和LAN 3是三个不同的局域网,它们通过同一台防火 墙(Firewall)连接到互联网(Internet)。通过虚拟化技术,将该防火墙上划分为三个 (context Ucontext 2、context 3),分别负责 LAN 1、LAN 2、LAN 3 的安全接入。
[0126] 在该实施例中,context 1内NAT业务进程(进程号287)为关键业务进程,为其 预留内存资源10%。Session业务进程(进程号302)指定内存分配上限为8%,优先级 为5。context 2内NAT业务进程(进程号113)为关键业务进程,为其预留内存资源5%。 Session业务进程(进程号115)指定内存分配上限为3%,优先级为3。系统内部记录的资 源分配表如表3所示:
[0127] 表 3
[0128]
[0129] context资源分配表如表4所示:
[0130] 表 4
[0132] 基于上述设置,系统启动后,内存资源可分配额度=100% -10% (contextl预留 资源)-5% (context2 预留资源)=85%。
[0133] 系统启动后,contextl最多占用内存40%,NAT业务进程占用内存最多为10%。
[0134] 在该实施例中,contextl启动后,若Session业务进程未运行,Nat业务进程已运 行,其他业务进程运行内存占用达到25%,此时Session业务进程运行,申请6%的内存, 系统可用剩余内存为15%,contextl内可分配内存额度为:40% -10% -25%= 5%,6% 〈5%,则根据业务进程优先级,释放优先级最低的业务进程占用的内存,直到contextl内 可分配内存额度大于等于6%,资源成功分配给Session业务进程使用。
[0135] 通过以上描述可以看出,在本发明实施例提供的技术方案中,通过为context内 的业务进程设置优先级,当高优先级的业务进程需要占用context的资源,而context的可 用资源不足时,可以释放低优先级的业务进程占用的资源,从而能够使资源占用细化到业 务粒度,保证context内特定业务进程的资源占用成功率,提高资源分配的灵活性。
[0136] 请参见图5,为本发明实施例提供的一种资源分配装置的结构示意图,其中,所述 装置可以应用于可以应用于物理防火墙或配置有物理防火墙的设备,如图5所示,该资源 分配装置可以包括:
[0137] 接收单元510,用于接收资源分配请求,所述资源分配请求中包括context索引、 业务进程号、以及请求分配的资源量;
[0138] 判断单元520,用于判断所述请求分配的资源量是否大于所述context索引对应 的目标context的可用资源量;
[0139] 所述判断单元520,还用于当所述请求分配的资源量大于所述目标context的可 用资源量时,判断所述目标context内是否存在低优先级进程,所述低优先级进程的优先 级低于所述业务进程号对应的目标进程的优先级;
[0140] 释放单元530,用于当所述目标context内存在低优先级进程时,释放所述低优先 级进程占用的所述目标context的资源,直至释放后的所述目标context的可用资源量大 于或等于所述请求分配的资源量;
[0141] 分配单元540,用于从所述目标context的可用资源中,为所述目标进程分配与所 述请求分配的资源量等量的资源。
[0142] 在一实施例中,所述判断单元520,还可以用于当所述目标context内存在低优先 级进程时,判断所述低优先级进程占用的所述目标context的资源量与所述目标进程的可 用资源量二者之和是否大于或等于所述请求分配的资源量;
[0143] 相应地,所述释放单元530,可以具体用于当所述低优先级进程占用的所述目标 context的资源量与所述目标进程的可用资源量二者之和大于或等于所述请求分配的资源 量时,释放所述低优先级进程占用的所述目标context的资源。
[0144] 在一实施例中,所述释放单元530,可以具体用于按照所述低优先级进程的优先级 从低到高的顺序或按照所述低优先级进程占用的目标context的资源量从多到少的顺序 释放所述低优先级进程占用的所述目标context的资源,直至释放后的所述目标context 的可用资源量大于或等于所述请求分配的资源量。
[0145] 在一实施例中,所述判断单元520,还可以用于判断所述目标进程在所述目标 context内是否存在预留资源;
[0146] 相应地,所述判断单元520,可以具体用于当所述目标进程在所述目标context内 不存在预留资源时,判断所述请求分配的资源量是否大于所述context索引对应的目标 context的可用资源量;其中,所述目标context的可用资源量等于所述目标context的非 预留资源总量与所述目标context内当前已被占用的非预留资源量的差值。
[0147] 在一实施例中,所述判断模块520,还可以用于当所述目标进程在所述目标 context内存在预留资源时,判断所述目标进程在所述目标context内当前占用的资源量 与所述请求分配的资源量二者之和是否大于所述目标进程在所述目标context内的预留 资源量;
[0148] 相应地,所述分配单元540,还可以用于从所述目标进程在所述目标context内的 预留资源中为所述目标进程分配与所述请求分配的资源量等量的资源。
[0149] 在一实施例中,所述判断模块520,还可以用于判断所述目标进程在所述目标 context内当前占用的资源量与所述请求分配的资源量二者之和是否大于所述目标进程在 所述目标context内的预设资源分配上限;
[0150] 相应地,所述判断模块520,可以具体用于当所述目标进程在所述目标context内 当前占用的资源量与所述请求分配的资源量二者之和小于或等于所述目标进程在所述目 标context内的预设资源分配上限时,判断所述请求分配的资源量是否大于所述context 索引对应的目标context的可用资源量。
[0151] 请一并参见图6,为本发明实施例提供的另一种资源分配装置的结构示意图,该实 施例在前述图5所示实施例的基础上,所述装置还可以包括:更新单元550。其中:
[0152] 更新单元550,用于在所述分配单元从
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1