• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

02-虚拟化技术配置指导

目录

02-Context配置

本章节下载 02-Context配置  (410.23 KB)

docurl=/cn/Service/Document_Software/Document_Center/Home/Security/00-Public/Configure/Operation_Manual/H3C_SecPath_M9000_V7_R9141_R9712-2283/02/202203/1559692_30005_0.htm

02-Context配置


1 Context

1.1  Context简介

通过虚拟化技术将一台物理设备划分成多台逻辑设备,每台逻辑设备就称为一个Context。每个Context拥有自己专属的软硬件资源,独立运行。

对于用户来说,每个Context就是一台独立的设备,方便管理和维护;对于管理者来说,可以将一台物理设备虚拟成多台逻辑设备供不同的分支机构使用,可以保护现有投资,提高组网灵活性。

1.1.1  Context的应用

图1-1所示,LAN 1、LAN 2和LAN 3是三个不同的局域网,它们通过同一台设备Device连接到外网。通过虚拟化技术,能让一台设备当三台设备使用。具体做法是,在Device上创建三个Context(Context 1、Context 2、Context 3),分别负责LAN 1、LAN 2、LAN 3的安全接入。LAN 1、LAN 2、LAN 3的网络管理员可以(也只能)分别登录到自己的设备进行配置、保存、重启等操作,不会影响其它网络的使用,其效果等同于LAN 1、LAN 2和LAN 3分别通过各自的设备Device 1、Device 2、Device 3接入Internet。

图1-1 Context组网示意图

 

1.1.2  缺省Context和非缺省Context

·     设备支持Context功能后,整台物理设备就是一个Context,称为缺省Context,如图1-1中的Device。当用户登录物理设备时,实际登录的就是缺省Context。用户在物理设备上的配置实质就是对缺省Context的配置。缺省Context的名称为Admin,编号为1。缺省Context不需要创建,不能删除。

·     与缺省Context相对应的是非缺省Context,如图1-1中的Context 1、Context 2、Context 3。非缺省Context是管理员在设备上通过命令行创建的,可分配给不同的接入网络使用。

·     缺省Context拥有对整台物理设备的所有权限,它可以使用和管理设备所有的资源。缺省Context下可以创建/删除非缺省Context,给非缺省Context分配CPU资源/磁盘/内存空间、接口、VLAN、VXLAN,没有分配的CPU资源/磁盘/内存空间、接口、VLAN、VXLAN由缺省Context使用和管理。

·     非缺省Context下不可再创建/删除非缺省Context,它只能使用缺省Context分配给自己的资源,并在缺省Context指定的资源限制范围内工作,不能抢占其他Context或者系统剩余的资源。

·     非缺省Context下不支持共享口的报文捕获功能,关于报文捕获功能的详细描述请参见“网络管理和监控配置指导”中的“报文捕获配置”。

1.2  Context配置限制和指导

对于本文列出的命令,缺省Context均支持,非缺省Context只支持display context interface命令。

非缺省Context中的DPI业务功能使用缺省Context中的应用层检测引擎对报文进行匹配,当创建、删除、关闭和重启非缺省Context时,缺省Context中的应用层检测引擎会重新激活,激活期间设备上的所有Context均不能对报文进行DPI业务处理。

1.3  Context配置任务简介

Context配置任务如下:

(1)     创建Context

(2)     将Context进驻安全引擎

a.     配置安全引擎组

b.     将Context进驻安全引擎组

(3)     (可选)为Context分配资源

¡     为Context分配接口

¡     为Context分配VLAN

¡     为Context分配VXLAN

(4)     (可选)限制Context的资源使用

¡     限制Context出方向的吞吐量

¡     限制Context对象策略规则总数

¡     限制Context安全策略规则总数

¡     限制Context会话并发数

¡     限制Context会话新建速率

¡     限制Context的SSL VPN登录用户数

(5)     启动Context

(6)     (可选)为Context分配CPU/磁盘/内存资源

¡     为Context分配CPU权重

¡     为Context分配磁盘空间上限

¡     为Context分配内存空间上限

(7)     访问和管理Context

(8)     (可选)收集各Context的日志信息

(9)     (可选)配置Context支持跨VPC流量互通

1.4  创建Context

1. 配置限制和指导

创建Context相当于构造了一台新的设备。

创建Context时,通过vlan-unshared参数可选择是否和其它Context共享VLAN:

·     如果选择和其它Context共享VLAN,需要在缺省Context内创建并配置VLAN,再分配给非缺省Context。共享VLAN由多个Context共同所有。VLAN 1为系统缺省VLAN,由缺省Context独有,不能分配给非缺省Context。

·     如果选择不和其它Context共享VLAN,请登录该Context,并使用vlan命令创建VLAN 2~VLAN 4094。VLAN 1为缺省VLAN,用户不能手工创建和删除。Context各自使用和管理VLAN,互不干扰。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     创建Context,并进入Context视图。

context context-name [ id context-id ] [ vlan-unshared ]

缺省情况下,设备上存在缺省Context,名称为Admin,编号为1。

(3)     (可选)配置Context的描述信息。

description text

缺省情况下,缺省Context描述信息为DefaultContext。非缺省Context没有配置描述信息。

1.5  将Context进驻安全引擎

1.5.1  功能简介

安全引擎是设备上的硬件。Context创建后,必须进驻安全引擎(通过将Context进驻安全引擎组来实现),才有实际运行的环境,才能运行业务。

设备上通常配备多个安全引擎,安全引擎组用来组织和管理这些安全引擎。请先配置安全引擎组,再将Context进驻安全引擎组,这样,Context就能进驻安全引擎组中的所有安全引擎。

1.5.2  配置安全引擎组

1. 功能简介

安全引擎组是一个逻辑概念,用于组织和管理安全引擎,一个安全引擎组中可添加多个安全引擎。新创建的安全引擎组内没有安全引擎,必须先将安全引擎加入安全引擎组,才能使Context进驻到安全引擎组中的所有安全引擎。

在数据层面安全引擎组中的所有安全引擎都会同时处理安全业务和转发报文。在管理层面系统会自动选举一个引擎为主安全引擎,其它均为从安全引擎。从安全引擎以备份身份运行,当主安全引擎不能正常工作时,会将一个从安全引擎升级为新的主安全引擎,替代原主安全引擎工作。

2. 配置限制和指导

注意

缺省安全引擎组中必须至少存在一个安全引擎,否则设备不能正常处理业务。

 

一个安全引擎只能属于一个安全引擎组。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     创建安全引擎组并进入该安全引擎组视图。

blade-controller-team blade-controller-team-name [ id blade-controller-team-id ]

缺省情况下,设备上有一个缺省安全引擎组,名称为Default,编号为1。

(3)     将安全引擎加入安全引擎组。

(独立运行模式)

location blade-controller slot slot-number cpu cpu-number

(IRF模式)

location blade-controller chassis chassis-number slot slot-number cpu cpu-number

缺省情况下,安全引擎插入时会自动加入缺省安全引擎组。

1.5.3  将Context进驻安全引擎组

1. 功能简介

为了在Context上启动业务,用户必须将Context进驻安全引擎组。Context进驻安全引擎组后,会进驻安全引擎组内的所有安全引擎。

2. 配置限制和指导

Context和安全引擎组的关系如下:

·     一个Context只能进驻一个安全引擎组。如果该Context已经进驻一个安全引擎组,请先执行undo location blade-controller-team命令退出已进驻的安全引擎组,再配置location blade-controller-team命令,进驻其它安全引擎组。

·     在不同的Context视图下执行该命令可以使多个Context进驻同一个安全引擎组。最多可以有256个Context进驻到同一个安全引擎组,安全引擎组和Context是一对多的关系。

·     安全引擎组中加入新的安全引擎后,安全引擎组上已进驻的Context会自动进驻到新加入的安全引擎上,不需要再次配置。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Context视图。

context context-name

(3)     将Context进驻安全引擎组。

location blade-controller-team team-id

缺省情况下,缺省Context进驻了所有安全引擎组,非缺省Context没有进驻任何安全引擎组。

1.6  为Context分配资源

1.6.1  为Context分配接口

1. 接口分配简介

设备上的所有接口都属于缺省Context,不属于任何非缺省Context。请给非缺省Context分配接口,它才能和网络中的其它设备通信。

为了提高设备接口的利用率,在给Context分配接口时,可以选择:

·     独占方式分配(不带share参数)。使用该方式分配的接口仅归该Context所有、使用。用户登录该Context后,能查看到该接口,并执行接口支持的所有命令。

·     共享方式分配(带share参数):表示将一个接口分配给多个Context使用,这些Context共享这个物理接口,但是在各个Context内会创建一个同名的虚接口,这些虚接口具有不同的MAC地址和IP地址。设备从共享的物理接口接收报文后交给对应的虚拟接口处理;出方向,虚拟接口处理完报文后,会交给共享的物理接口发送。使用该方式,可以提高设备接口的利用率。通过共享方式分配的接口:

¡     在缺省Context内仍然存在该接口,该接口可执行接口支持的所有命令;

¡     在非缺省Context内,会新建一个同名接口,用户登录这些Context后,能查看到该接口,但只能执行shutdowndescription以及网络/安全相关的命令。

2. 配置限制和指导

当设备运行在IRF模式时,禁止将IRF物理端口分配给Context。

聚合接口的成员接口不能分配给Context。

冗余口的成员接口不能分配给Context,当冗余口的成员接口为子接口时,其子接口的主接口也不能分配给Context。

逻辑接口(如子接口、聚合接口等)仅支持共享方式分配,物理接口支持独占和共享两种方式分配。

如果子接口已经被分配,则不能再分配其父接口;如果父接口已经被分配,则不能再分配其子接口。

如果接口已经被共享分配,则不能再独占分配。需将共享分配配置取消后,才能独占分配。

为使非缺省Context之间可以互通,必须在缺省Context中将物理接口或逻辑接口以共享方式分配给非缺省Context。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Context视图。

context context-name

(3)     为Context分配接口。

¡     非连续接口配置。

allocate interface { interface-type interface-number }&<1-24> [ share ]

¡     连续接口配置。

allocate interface interface-type interface-number1 to interface-type interface-number2 [ share ]

缺省情况下,设备上的所有接口都属于缺省Context,不属于任何非缺省Context。

1.6.2  为Context分配VLAN

1. 配置限制和指导

·     创建Context时,如果不选择vlan-unshared参数,则表示和其它Context共享VLAN。

·     对于共享VLAN,请先在缺省Context内创建VLAN,再通过allocate vlan命令将指定VLAN分配给指定的Context使用。

·     VLAN 1不能被共享。

·     端口的缺省VLAN不能被共享。

·     已经创建了VLAN接口的VLAN不能被共享。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Context视图。

context context-name

(3)     为Context分配VLAN。

¡     非连续VLAN配置。

allocate vlan vlan-id&<1-24>

¡     连续VLAN配置。

allocate vlan vlan-id1 to vlan-id2

缺省情况下,没有为Context分配VLAN。

1.6.3  为Context分配VXLAN

1. 配置限制和指导

为Context分配的VXLAN仅归该Context所有,其他Context不能对其进行使用、配置。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Context视图。

context context-name

(3)     为Context分配VXLAN。

¡     非连续VXLAN配置。

allocate vxlan vxlan-id&<1-24>

¡     连续VXLAN配置。

allocate vxlan vxlan-id1 to vxlan-id2

缺省情况下,没有为Context分配VXLAN。

1.7  限制Context的资源使用

1.7.1  限制Context出方向的吞吐量

1. 功能简介

为了防止一个Context发送的报文过多而导致其它Context发送的报文被丢弃,需要限制Context出方向的吞吐量。

一个Context出方向的吞吐量,是在其进驻的每个安全引擎内独立计算的,即Context在每个进驻的安全引擎上享有相同的吞吐量,多个报文分散在不同引擎处理时,实际吞吐量会大于限制的值。

2. 配置限制和指导

因为此功能基于CPU进行吞吐量限制,所以其仅在非硬件快速转发的情况下生效。有关硬件快速转发功能的详细介绍,请参见“三层技术-IP业务配置指导”中的“快速转发”。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Context视图。

context context-name

(3)     设置Context出方向的吞吐量限制。

capability throughput { kbps | pps } value

缺省情况下,各Context出方向不做吞吐量限制,按实际能力转发。

1.7.2  限制Context对象策略规则总数

1. 功能简介

一个Context内可以配置多个对象策略,一个对象策略内包含多个规则。如果不加限制,会出现大量规则占用过多的内存的情况,影响Context的其它功能正常运行。所以,请根据需要为Context设置对象策略规则总数限制。当规则总数达到限制值时,后续不能新增规则。

一个Context的最大对象策略规则数,是在进驻的每个安全引擎内独立计算的,即Context进驻的每个安全引擎都有相同的对象策略规则数。

关于对象策略的详细描述请参见“安全配置指导”中的“对象策略”。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Context视图。

context context-name

(3)     设置Context的对象策略规则总数限制。

capability object-policy-rule maximum max-value

缺省情况下,未对Context的对象策略规则总数进行限制。

1.7.3  限制Context安全策略规则总数

1. 功能简介

一个Context内可以配置多个安全策略规则。如果不加限制,会出现大量规则占用过多的内存的情况,影响Context的其它功能正常运行。所以,请根据需要为Context设置安全策略规则总数限制。当规则总数达到限制值时,后续不能新增规则。

一个Context的最大安全策略规则数,是在进驻的每个安全引擎内独立计算的,即Context进驻的每个安全引擎都有相同的安全策略规则数。

关于安全策略的详细描述请参见“安全配置指导”中的“安全策略”。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Context视图。

context context-name

(3)     设置Context的安全策略规则总数限制。

capability security-policy-rule maximum max-value

缺省情况下,未对Context的安全策略规则总数进行限制。

1.7.4  限制Context会话并发数

1. 功能简介

如果一个Context建立了太多会话表会导致其他Context的会话由于内存不够而无法建立,为了防止这种情况,需要限制Context建立会话表的数量。

一个Context的最大会话数,是在进驻的每个安全引擎内独立计算的,即Context进驻的每个安全引擎都有相同的最大会话数,多个报文分散在不同引擎处理时,实际建立的会话数会大于限制的值。

Context会话并发数限制对本机流量不生效,例如:FTP、Telnet、SSH、HTTP和HTTP类型的七层负载均衡等业务。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Context视图。

context context-name

(3)     设置Context的单播会话并发数限制。

capability session maximum max-number

缺省情况下,未对Context允许的单播会话并发数进行限制。

1.7.5  限制Context会话新建速率

1. 功能简介

如果一个Context的会话新建速率过快会导致其他Context由于CPU处理能力不够而无法建立会话,为了防止这种情况,需要限制Context的会话新建速率。

一个Context的会话新建速率,是在进驻的每个安全引擎内独立计算的,即Context进驻的每个安全引擎都有相同的会话新建速率,多个报文分散在不同引擎处理时,实际的会话新建速率会大于限制的值。

Context会话新建速率限制对本机流量不生效,例如:FTP、Telnet、SSH、HTTP和HTTP类型的七层负载均衡等业务。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Context视图。

context context-name

(3)     设置Context的会话新建速率限制。

capability session rate max-value

缺省情况下,未对Context允许的会话新建速率进行限制。

1.7.6  限制Context的SSL VPN登录用户数

1. 功能简介

目前SSL VPN的用户数目由设备License控制,设备全部用户总数不能超过License控制,如果一个Context的用户总数到达了License限制,则会出现其他Context用户无法上线的问题,因此需要限制Context的上线用户数,同时设备全部用户总数仍受License控制。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Context视图。

context context-name

(3)     设置Context的SSL VPN登录用户数限制。

capability sslvpn-user maximum max-number

缺省情况下,未对Context的SSL VPN登录用户总数进行限制,由设备上SSL VPN Licence使用情况决定。

1.8  启动Context

1. 功能简介

Context创建后需要启动,才能完成新Context的初始化,相当于上电启动。启动后,用户可以登录到该Context执行配置。

正常程序启动Context时,设备会先做一些检查(比如Context的主、备进程能否正常启动),满足条件后,才启动Context,该命令会保证主备的Context状态一致,如果某成员设备或安全引擎上的Context启动失败,则会导致所有该Context进程启动失败。正常程序启动的Context能更好的保证Context的业务正常运行,所以,通常情况下,使用context start命令启动Context即可。force参数用于以下场景:在IRF环境,如果主备倒换或者配置恢复过程中出现内存不足,会导致部分Context虽然可以处理业务,但因为它们的主、备进程状态不一致,这些Context一直停留在updating或者inactive状态。当内存资源恢复后,执行context start force命令,设备会在不中断业务的情况下,尽可能修复不正常的Conext进程,让这些Context恢复到正常状态。

2. 配置限制和指导

在使用context start force前,用户可以通过display contextdisplay system internal context configuration-statusdisplay system internal context id contex-id running-status命令查看Context的运行情况。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Context视图。

context context-name

(3)     启动Context。

context start [ force ]

1.9  为Context分配CPU/磁盘/内存资源

1.9.1  功能简介

缺省情况下,Context会共享设备上的CPU/磁盘/内存资源,为了防止一个Context过多的占用CPU/磁盘/内存,而导致其它Context无法运行,需要限制Context对CPU/磁盘/内存资源的使用。

1.9.2  为Context分配CPU权重

1. 功能简介

当CPU无法满足所有Context的处理需求时,系统将按照CPU权重值为每个Context分配处理时间。通过调整Context的权重,可以使指定的Context获得更多的CPU资源,保证关键业务的运行。例如:在三个Context中,将处理关键业务的Context的CPU权重设置为2,其余两个Context的CPU权重设置为1,则当CPU处理能力不足时,将为关键业务Context提供2倍于其它Context的处理时间。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Context视图。

context context-name

(3)     指定Context的CPU权重。

limit-resource cpu weight weight-value

缺省情况下,Context的CPU权重为10。

1.9.3  为Context分配磁盘空间上限

1. 配置限制和指导

建议在Context正常启动后再为Context分配磁盘空间上限,如果Context仅创建但未启动,那么磁盘使用值为0,此时如果配置磁盘空间上限的值小于Context启动后正常实际使用的值,可能导致Context不能正常启动。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Context视图。

context context-name

(3)     显示Context对磁盘资源的使用情况。

display context resource disk

(4)     配置Context可使用的磁盘空间上限。

(独立运行模式)

limit-resource disk slot slot-number cpu cpu-number ratio limit-ratio

(IRF模式)

limit-resource disk chassis chassis-number slot slot-number cpu cpu-number ratio limit-ratio

缺省情况下,进驻到同一安全引擎的所有Context共享该安全引擎的所有磁盘空间,每个Context可使用的磁盘空间上限为该安全引擎的空闲磁盘空间值。

如果设备上有多块磁盘,该命令对所有磁盘生效。

1.9.4  为Context分配内存空间上限

1. 配置限制和指导

建议在Context正常启动后再为Context分配内存空间上限,如果Context仅创建未启动,可能会由于内存不足,造成Context无法正常启动。在Context启动后,配置的内存上限值还不应过小,以免Context内业务申请不到内存后引起功能不正常。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Context视图。

context context-name

(3)     显示Context对内存资源的使用情况。

display context resource memory

(4)     配置Context可使用的内存空间上限。

(独立运行模式)

limit-resource memory slot slot-number cpu cpu-number ratio limit-ratio

(IRF模式)

limit-resource memory chassis chassis-number slot slot-number cpu cpu-number ratio limit-ratio

缺省情况下,进驻到同一安全引擎的所有Context共享该安全引擎的所有内存空间,每个Context可使用的内存空间上限为该安全引擎的空闲内存空间值。

1.10  访问和管理Context

1. 功能简介

只要用户和设备之间路由可达,就能使用switchto context命令,通过设备和Context的内部连接,登录Context。

除了上述方式,用户还可以通过Context上的接口,使用该Context的IP地址进行Telnet/SSH登录。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     登录Context。

switchto context context-name

用户登录Context后,可以在Context的用户视图执行quit命令来退出登录。此时,命令视图将从当前Context的用户视图返回到缺省Context的系统视图。

1.11  配置Context限速功能

1.11.1  配置Context限制广播报文速率

1. 功能简介

如果一个Context接收和处理的广播报文过多,将会导致其他Context处理业务能力的下降,因此需要限制Context接收广播报文的数量。

Context对入方向广播报文进行限速是通过整机接收报文限速和单个Context接收报文限速共同实现。当广播报文总速率和单个Context广播报文速率均达到各自的阈值后,发往此Context的广播报文会被设备丢弃,否则不会被丢弃。

一个Context入方向广播报文的速率,在进驻的每个安全引擎内独立计算,即Context进驻的每个安全引擎都有相同的限速阈值,每个安全引擎对Context单独限制。当多个报文分散在不同安全引擎处理时,一个Context实际接收广播报文的速率可能大于设置的限速阈值。

2. 配置限制和指导

此功能仅限制入方向报文的速率。

此功能仅对使用共享接口且处于Active状态的Context生效。

当整机或单个Context广播限速阈值为零时表示不对广播报文限速。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置所有Context入方向广播报文的总速率限制。

context-capability inbound broadcast total pps threshold

缺省情况下,所有Context入方向广播报文总速率限制与设备型号有关,具体信息请参见命令参考手册。

(3)     配置缺省Context入方向广播报文的速率限制。

context-capability inbound broadcast single pps threshold

缺省情况下,缺省Context入方向广播报文限速速率为广播报文总速率阈值除以使用共享接口且处于Active状态的Context的总数。

(4)     进入Context视图。

context context-name

(5)     配置单个非缺省Context入方向广播报文的速率限制。

context-capability inbound broadcast single pps threshold

缺省情况下,单个非缺省Context入方向广播报文限速速率为广播报文总速率阈值除以使用共享接口且处于Active状态的Context的总数。

1.11.2  配置Context限制组播报文速率

1. 功能简介

如果一个Context接收和处理的组播报文过多,将会导致其他Context处理业务能力的下降,因此需要限制Context接收组播报文的数量。

Context对入方向组播报文进行限速是通过整机接收报文限速和单个Context接收报文限速共同实现。当广组播报文总速率和单个Context广组播报文速率均达到各自的阈值后,发往此Context的广组播报文会被设备丢弃,否则不会被丢弃。

一个Context入方向组播报文的速率,在进驻的每个安全引擎内独立计算,即Context进驻的每个安全引擎都有相同的限速阈值,每个安全引擎对Context单独限制。当多个报文分散在不同安全引擎处理时,一个Context实际接收组播报文的速率可能大于设置的限速阈值。

2. 配置限制和指导

此功能仅限制入方向报文的速率。

此功能仅对使用共享接口且处于Active状态的Context生效。

当整机或单个Context组播限速阈值为零时表示不对组播报文进行限速。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置所有Context入方向组播报文的总速率限制。

context-capability inbound multicast total pps threshold

缺省情况下,所有Context入方向组播报文总速率限制与设备型号有关,具体信息请参见命令参考手册。

(3)     配置缺省Context入方向组播报文的速率限制。

context-capability inbound multicast single pps threshold

缺省情况下,缺省Context入方向组播报文限速速率为组播报文总速率阈值除以使用共享接口且处于Active状态的Context的总数。

(4)     进入Context视图。

context context-name

(5)     配置单个非缺省Context入方向组播报文的速率限制。

context-capability inbound multicast single pps threshold

缺省情况下,单个非缺省Context入方向组播报文限速速率为组播报文总速率阈值除以使用共享接口且处于Active状态的Context的总数。

1.11.3  配置Context限制单播报文速率

1. 功能简介

如果一个Context接收和处理的单播报文过多会消耗大量的CPU资源,将会导致其他Context处理业务能力的下降,因此需要限制Context处理单播报文对CPU的消耗。

Context对入方向单播报文进行限速是通过整机CPU消耗率和单个Context CPU消耗率共同实现。当整机的总CPU消耗率和单个Context CPU消耗率均达到各自阈值后,发往此Context的单播报文会被设备丢弃,否则不会被丢弃。

一个Context入方向单播报文的CPU消耗率,在进驻的每个安全引擎内独立计算,即Context进驻的每个安全引擎都有相同的限制阈值,每个安全引擎对Context单独限制。当多个报文分散在不同安全引擎处理时,一个Context实际接收单播报文的CPU消耗率可能大于设置的限制阈值。

2. 配置限制和指导

此功能仅限制入方向报文的速率。

此功能对使用共享接口和独占接口且处于Active状态的Context均生效。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置所有Context入方向单播报文的总CPU消耗率限制。

context-capability inbound unicast total cpu-usage threshold

缺省情况下,所有Context入方向单播报文的总CPU消耗率的缺省值与设备型号有关,具体信息请参见命令参考手册。

(3)     配置缺省Context入方向单播报文的CPU消耗率限制。

context-capability inbound unicast single cpu-usage threshold

缺省情况下,缺省Context入方向单播报文的CPU消耗率为单播报文的总CPU消耗率除以此Context所进驻引擎组中所有Context的总数。

(4)     进入Context视图。

context context-name

(5)     配置单个非缺省Context入方向单播报文的CPU消耗率限制。

context-capability inbound unicast single cpu-usage threshold

缺省情况下,单个Context入方向单播报文的CPU消耗率为单播报文的总CPU消耗率除以此Context所进驻引擎组中所有Context的总数。

1.11.4  开启Context限速丢包日志功能

1. 功能简介

开启此功能后,当Context接收到的广播报文或组播报文因达到系统设置的阈值而被丢弃时,设备将会对丢弃的报文生成日志信息。此日志信息将会被输出到信息中心模块处理,信息中心模块的配置将决定日志信息的发送规则和发送方向。有关信息中心的详细介绍,请参见“网络管理和监控配置指导”中的“信息中心”。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启Context入方向报文限速丢包日志功能。

context-capability inbound drop-logging enable

缺省情况下,Context入方向报文限速丢包日志功能处于关闭状态。

1.12  收集各Context的日志信息

1. 功能简介

此功能可以收集logfile文件夹和diagfile文件夹下的所有文件。

2. 配置步骤

请在用户视图下执行本命令,收集各Context的日志信息

tar context [ name context-name ] log file filename

1.13  配置Context支持跨VPC流量互通

1. 功能简介

在VPC(Virtual Private Cloud,虚拟私有云)场景中,不同租户被不同的VPC隔离。设备上使用VPN实例与VPC进行一一对应,这样既可以保证不同VPC租户之间流量的隔离,又可以实现不同VPC租户之间流量的互通。

图1-2 Context中跨VPC流量互通示意图

 

图1-2所示,不同VPC之间流量隔离和互通的实现机制如下:

·     在设备上创建不同的VPN实例用于区分和隔离VPC之间的流量。

·     在设备上为VPN实例配置静态路由,将路由出接口配置为LoopBack接口,可实现VPC间流量的互通。

2. 配置限制和指导

跨VPN实例转发流量只支持类似安全策略这种报文过滤和阻断的业务,不支持类似NAT、负载均衡等这种修改IP地址的业务,不支持MPLS L3VPN的PE功能。仅支持静态路由配置,不支持路由导入和引出功能。

一般推荐使用设备的物理子接口或者逻辑子接口与VPC租户进行连接。

开启跨VPC的硬件快速转发功能与GRE和MPLS功能互斥不能同时使用。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     创建VPN实例,并与接口关联。

有关创建VPN实例并与接口关联的具体操作,请参见“MPLS配置指导”中的“MPLS L3VPN”。

(3)     为VPN实例配置静态路由,路由出接口为LoopBack接口。

有关为VPN实例配置静态路由的具体操作,请参见“三层技术-IP路由配置指导”中的“静态路由”和“IPv6静态路由”。

(4)     开启跨VPC的硬件快速转发功能。

(独立运行模式)

hardware fast-forwarding vpc enable [ slot slot-number [ cpu cpu-number ] ]

(IRF模式)

hardware fast-forwarding vpc enable [ chassis chassis-number slot slot-number [ cpu cpu-number ] ]

缺省情况下,跨VPC的硬件快速转发功能处于关闭状态。

1.14  Context显示和维护

在完成Context相关配置后,在任意视图下执行display命令,可以显示配置后Context的运行情况,通过查看显示信息,来验证配置的效果。

在用户视图下,用户可以执行reset命令清除不在位的安全引擎的数据信息。

表1-1 Context显示和维护

操作

命令

显示安全引擎组的信息

display blade-controller-team [ blade-controller-team-name | id blade-controller-team-id ]

显示Context的相关信息

display context [ name context-name ] [ verbose ]

显示Context内可分配业务资源的使用情况

(独立运行模式)

display context [ name context-name ] capability [ security-policy | session [ slot slot-number cpu cpu-number ] | sslvpn-user ]

(IRF模式)

display context [ name context-name ] capability [ security-policy | session [ chassis chassis-number slot slot-number cpu cpu-number ] | sslvpn-user ]

显示Context入方向广播报文的速率限制的统计信息

(独立运行模式)

display context name context-name capability inbound broadcast slot slot-number cpu cpu-number

(IRF模式)

display context name context-name capability inbound broadcast chassis chassis-number slot slot-number cpu cpu-number

显示Context入方向组播报文的速率限制的统计信息

(独立运行模式)

display context name context-name capability inbound multicast slot slot-number cpu cpu-number

(IRF模式)

display context name context-name capability inbound multicast chassis chassis-number slot slot-number cpu cpu-number

显示Context入方向单播报文的速率限制的统计信息

 

display context name context-name capability inbound unicast

(独立运行模式)

display context name context-name capability inbound unicast slot slot-number cpu cpu-number

(IRF模式)

display context name context-name capability inbound unicast chassis chassis-number slot slot-number cpu cpu-number

显示各Context的配置信息

display context [ name context-name ] configuration [ file filename ]

显示Context的接口列表

display context [ name context-name ] interface

显示Context对CPU/磁盘/内存资源的使用情况

(独立运行模式)

display context [ name context-name ] resource [ cpu | disk | memory ] [ slot slot-number cpu cpu-number ]

(IRF模式)

display context [ name context-name ] resource [ cpu | disk | memory ] [ chassis chassis-number slot slot-number cpu cpu-number ]

显示Context内资源的统计信息

display context [ name context-name ] statistics [ file filename ]

显示Context的VLAN列表

display context [ name context-name ] vlan

显示所有Context内SSL VPN在线用户数

display context online-users sslvpn

清除指定安全引擎组中不在位的安全引擎的数据信息

reset blade-controller-team team-id member slot slot-number cpu cpu-number

清除Context入方向广播报文的速率限制的统计信息

(独立运行模式)

reset context name context-name capability inbound broadcast slot slot-number cpu cpu-number

(IRF模式)

reset context name context-name capability inbound broadcast chassis chassis-number slot slot-number cpu cpu-number

清除Context入方向组播报文的速率限制的统计信息

(独立运行模式)

reset context name context-name capability inbound multicast slot slot-number cpu cpu-number

(IRF模式)

reset context name context-name capability inbound multicast chassis chassis-number slot slot-number cpu cpu-number

清除Context入方向单播报文的速率限制的统计信息

 

reset context name context-name capability inbound unicast

(独立运行模式)

reset context name context-name capability inbound unicast slot slot-number cpu cpu-number

(IRF模式)

reset context name context-name capability inbound unicast chassis chassis-number slot slot-number cpu cpu-number

 

1.15  Context典型配置举例

1.15.1  Context基本组网配置举例(独立运行模式)

1. 组网需求

将设备Device虚拟成三台独立的Device:Context cnt1、Context cnt2、Context cnt3,并分给三个不同的用户网络进行安全防护。要求在用户侧看来,各自的接入设备是独享的。

·     LAN 1、LAN 2、LAN 3分别属于公司A、公司B、公司C,现各公司的网络均需要进行安全防护。公司A使用的网段为192.168.1.0/24,公司B使用的网段为192.168.2.0/24,公司C使用的网段为192.168.3.0/24。

·     公司A的用户多,业务需求复杂,因此需要给Context cnt1提供较大的磁盘/内存空间使用上限,以便保存配置文件、启动文件和系统信息等;对公司B使用系统缺省的磁盘空间即可;公司C人员规模小,上网流量比较少,对接入Device的配置及性能要求较低,因此对Context cnt3提供较低的CPU权重。

·     GigabitEthernet1/0/1和GigabitEthernet1/0/4分配给Context cnt1、GigabitEthernet1/0/2和GigabitEthernet1/0/5分配给Context cnt2、GigabitEthernet1/0/3和GigabitEthernet1/0/6分配给Context cnt3。

2. 组网图

图1-3 Context基本组网配置组网图

3. 配置步骤

(1)     配置安全引擎组test

# 创建安全引擎组test。

<Device> system-view

[Device] blade-controller-team test

# 将3号槽位cpu号为1的安全引擎加入该安全引擎组。

[Device-blade-controller-team-2-test] location blade-controller slot 3 cpu 1

This operation will also reboot the blade controller. Continue? [Y/N]:y

[Device-blade-controller-team-2-test] quit

(2)     创建并配置Context cnt1,供公司A使用

# 创建Context cnt1,设置描述信息。

[Device] context cnt1

[Device-context-2-cnt1] description context-1

# 设置cnt1进驻安全引擎组test(编号为2)。

[Device-context-2-cnt1] location blade-controller-team 2

# 配置Context cnt1在3号槽位CPU号为1的安全引擎上的磁盘使用上限为60%。

[Device-context-2-cnt1] limit-resource disk slot 3 cpu 1 ratio 60

# 配置Context cnt1在3号槽位cpu号为1的安全引擎上的内存使用上限为60%。

[Device-context-2-cnt1] limit-resource memory slot 3 cpu 1 ratio 60

# 配置Context cnt1的CPU权重为8。

[Device-context-2-cnt1] limit-resource cpu weight 8

# 将接口GigabitEthernet1/0/1和GigabitEthernet1/0/4分配给Context cnt1。

[Device-context-2-cnt1] allocate interface gigabitethernet 1/0/1 gigabitethernet 1/0/4

# 启动Context cnt1。

[Device-context-2-cnt1] context start

It will take some time to start the context...

Context started successfully.

[Device-context-2-cnt1] quit

# 切换到Context cnt1。

[Device] switchto context cnt1

******************************************************************************

* Copyright (c) 2004-2018 New H3C Technologies Co., Ltd. All rights reserved.*

* Without the owner's prior written consent,                                 *

* no decompiling or reverse-engineering shall be allowed.                    *

******************************************************************************

 

<Device> system-view

# 配置Telnet功能,保证管理用户可以正常登录设备,具体配置步骤请参考“基础配置指导”中的“登录设备”。

# 将Context cnt1的名称修改为cnt1,以便和其它Context区别。

[Device] sysname cnt1

# 配置接口GigabitEthernet1/0/1的IP地址为192.168.1.251,供公司A的管理用户远程登录。

[cnt1] interface gigabitethernet 1/0/1

[cnt1-GigabitEthernet1/0/1] ip address 192.168.1.251 24

# 从自定义Context cnt1返回缺省Context。

[cnt1-GigabitEthernet1/0/1] return

<cnt1> quit

[Device]

(3)     创建并配置Context cnt2,供公司B使用

# 创建Context cnt2,设置描述信息

[Device] context cnt2

[Device-context-3-cnt2] description context-2

# 设置cnt2进驻安全引擎组test(编号为2)。

[Device-context-3-cnt2] location blade-controller-team 2

# 将接口GigabitEthernet1/0/2和GigabitEthernet1/0/5分配给Context cnt2。

[Device-context-3-cnt2] allocate interface gigabitethernet 1/0/2 gigabitethernet 1/0/5

# 启动Context cnt2。

[Device-context-3-cnt2] context start

It will take some time to start the context...

Context started successfully.

[Device-context-3-cnt2] quit

# 切换到Context cnt2。

[Device] switchto context cnt2

******************************************************************************

* Copyright (c) 2004-2018 New H3C Technologies Co., Ltd. All rights reserved.*

* Without the owner's prior written consent,                                 *

* no decompiling or reverse-engineering shall be allowed.                    *

******************************************************************************

 

<Device> system-view

# 配置Telnet功能,保证管理用户可以正常登录设备,具体配置步骤请参考“基础配置指导”中的“登录设备”。

# 将Context cnt2的名称修改为cnt2,以便和其它Context区别。

[Device] sysname cnt2

# 配置接口GigabitEthernet1/0/2的IP地址为192.168.2.251,供公司B的管理用户远程登录。

[cnt2] interface gigabitethernet 1/0/2

[cnt2-GigabitEthernet1/0/2] ip address 192.168.2.251 24

# 从自定义Context cnt2返回缺省Context。

[cnt2-GigabitEthernet1/0/2] return

<cnt2> quit

[Device]

(4)     创建并配置Context cnt3,供公司C使用

# 创建Context cnt3,设置描述信息

[Device] context cnt3

[Device-context-4-cnt3] description context-3

# 设置cnt3进驻安全引擎组test(编号为2)。

[Device-context-4-cnt3] location blade-controller-team 2

# 配置Context cnt3的CPU权重为2。

[Device-context-4-cnt3] limit-resource cpu weight 2

# 将接口GigabitEthernet1/0/3和GigabitEthernet1/0/6分配给Context cnt3。

[Device-context-4-cnt3] allocate interface gigabitethernet 1/0/3 gigabitethernet 1/0/6

# 启动Context cnt3。

[Device-context-4-cnt3] context start

It will take some time to start the context...

Context started successfully.

[Device-context-4-cnt3] quit

# 切换到Context cnt3。

[Device] switchto context cnt3

******************************************************************************

* Copyright (c) 2004-2018 New H3C Technologies Co., Ltd. All rights reserved.*

* Without the owner's prior written consent,                                 *

* no decompiling or reverse-engineering shall be allowed.                    *

******************************************************************************

 

<Device> system-view

# 配置Telnet功能,保证管理用户可以正常登录设备,具体配置步骤请参考“基础配置指导”中的“登录设备”。

# 将Context cnt3的名称修改为cnt3,以便和其它Context区别。

[Device] sysname cnt3

# 配置接口GigabitEthernet1/0/3的IP地址为192.168.3.251,供公司C的管理用户远程登录。

[cnt3] interface gigabitethernet 1/0/3

[cnt3-GigabitEthernet1/0/3] ip address 192.168.3.251 24

# 从自定义Context cnt3返回缺省Context。

[cnt3-GigabitEthernet1/0/3] return

<cnt3> quit

[Device]

4. 验证配置

(1)     查看Context是否存在并且运转正常。(此时,Device上应该有四台处于正常工作active状态的Context)

[Device] display context

ID     Name             Status       Description

1      Admin            active       DefaultContext

2      cnt1             active       context-1

3      cnt2             active       context-2

4      cnt3             active       context-3

(2)     模拟公司A的管理用户登录到Context cnt1,可以查看本设备的当前配置。

C:\> telnet 192.168.1.251

******************************************************************************

* Copyright (c) 2004-2018 New H3C Technologies Co., Ltd. All rights reserved.*

* Without the owner's prior written consent,                                 *

* no decompiling or reverse-engineering shall be allowed.                    *

******************************************************************************

 

<cnt1> display current-configuration

显示信息略……。

1.15.2  Context支持跨VPC流量互通典型配置举例(独立运行模式)

1. 组网需求

设备上的非缺省Context在对VPC租户访问公有云的流量进行安全防护的同时也可以使不同VPC之间的流量互通。

2. 组网图

图1-4 Context支持跨VPC流量互通配置组网图

3. 配置步骤

(1)     创建并配置Context cnt1,供VPC1和VPC2使用。

创建名称为cnt1的Context,并为其分配CPU、内存、磁盘和接口资源,其具体配置步骤请参见“1.15.1  Context基本组网配置举例(独立运行模式)”中的相关内容,本举例不再赘述。

(2)     切换到Context cnt1。

<Device> system-view

[Device] switchto context cnt1

******************************************************************************

* Copyright (c) 2004-2020 New H3C Technologies Co., Ltd. All rights reserved.*

* Without the owner's prior written consent,                                 *

* no decompiling or reverse-engineering shall be allowed.                    *

******************************************************************************

 

<H3C> system-view

# 配置Telnet功能,保证管理用户可以正常登录设备,具体配置步骤请参考“基础配置指导”中的“登录设备”。

# 将Context cnt1的名称修改为cnt1,以便和其它Context区别。

[H3C] sysname cnt1

(3)     创建VPN实例,创建LoopBack接口和以太网子接口并关联VPN实例。

# 创建一个名为vpc1的VPN实例,并进入VPN实例视图。

[cnt1] ip vpn-instance vpc1

[cnt1-vpn-instance-vpc1] quit

# 创建一个名为vpc2的VPN实例,并进入VPN实例视图。

[cnt1] ip vpn-instance vpc2

[cnt1-vpn-instance-vpc2] quit

# 创建接口LoopBack1,为其绑定VPN实例vpc1,配置IP地址为10.0.1.1/32。

[cnt1] interface loopback 1

[cnt1-LoopBack1] ip binding vpn-instance vpc1

[cnt1-LoopBack1] ip address 10.0.1.1 255.255.255.255

[cnt1-LoopBack1] quit

# 创建接口LoopBack2,为其绑定VPN实例vpc2,配置IP地址为10.0.2.1/32。

[cnt1] interface loopback 2

[cnt1-LoopBack2] ip binding vpn-instance vpc2

[cnt1-LoopBack2] ip address 10.0.2.1 255.255.255.255

[cnt1-LoopBack2] quit

# 创建子接口GigabitEthernet1/0/1.1,为其绑定VPN实例vpc1,配置IP地址为10.10.0.1/24。

[cnt1] interface gigabitethernet 1/0/1.1

[cnt1-GigabitEthernet1/0/1.1] ip binding vpn-instance vpc1

[cnt1-GigabitEthernet1/0/1.1] ip address 10.10.0.1 255.255.255.0

# 配置子接口GigabitEthernet1/0/1.1能够终结最外层VLAN ID为10的VLAN报文。

[cnt1-GigabitEthernet1/0/1.1] vlan-type dot1q vid 10

[cnt1-GigabitEthernet1/0/1.1] quit

# 创建子接口GigabitEthernet1/0/1.2,为其绑定VPN实例vpc2,配置IP地址为10.20.0.1/24。

[cnt1] interface gigabitethernet 1/0/1.2

[cnt1-GigabitEthernet1/0/1.2] ip binding vpn-instance vpc2

[cnt1-GigabitEthernet1/0/1.2] ip address 10.20.0.1 255.255.255.0

# 配置子接口GigabitEthernet1/0/1.2能够终结最外层VLAN ID为20的VLAN报文。

[cnt1-GigabitEthernet1/0/1.2] vlan-type dot1q vid 20

[cnt1-GigabitEthernet1/0/1.2] quit

(4)     为VPN实例配置静态路由保证VPC之间的流量路由可达。

# 为名称为vpc1的VPN实例配置静态路由,其目的地址为10.20.0.0/24,指定路由出接口为LoopBack1,指定下一跳的地址为10.0.2.1。

[cnt1] ip route-static vpn-instance vpc1 10.20.0.0 24 loopback1 10.0.2.1

# 为名称为vpc2的VPN实例配置静态路由,其目的地址为10.10.0.0/24,指定路由出接口为LoopBack2,指定下一跳的地址为10.0.1.1。

[cnt1] ip route-static vpn-instance vpc2 10.10.0.0 24 loopback2 10.0.1.1

(5)     开启跨VPC的硬件快速转发功能。

# 开启跨VPC的硬件快速转发功能提高报文转发速度。

[cnt1] hardware fast-forwarding vpc enable

(6)     配置安全域。

# 向安全域Trust中添加接口LoopBack1、子接口GigabitEthernet1/0/1.1。

[cnt1] security-zone name trust

[cnt1-security-zone-Trust] import interface loopback1

[cnt1-security-zone-Trust] import interface gigabitethernet 1/0/1.1

[cnt1-security-zone-Trust] quit

# 向安全域Untrust中添加接口LoopBack2、子接口GigabitEthernet1/0/1.2。

[cnt1] security-zone name untrust

[cnt1-security-zone-Untrust] import interface loopback2

[cnt1-security-zone-Untrust] import interface gigabitethernet 1/0/1.2

[cnt1-security-zone-Untrust] quit

(7)     配置安全策略保证VPC之间的流量互通。

[cnt1] security-policy ip

[cnt1-security-policy-ip] rule 0 name vpc1

[cnt1-security-policy-ip-0-vpc1] action pass

[cnt1-security-policy-ip-0-vpc1] vrf vpc1

[cnt1-security-policy-ip-0-vpc1] source-zone trust

[cnt1-security-policy-ip-0-vpc1] destination-zone untrust

[cnt1-security-policy-ip-0-vpc1] quit

[cnt1-security-policy-ip] rule 1 name vpc2

[cnt1-security-policy-ip-1-vpc2] action pass

[cnt1-security-policy-ip-1-vpc2] vrf vpc2

[cnt1-security-policy-ip-1-vpc2] source-zone untrust

[cnt1-security-policy-ip-1-vpc2] destination-zone trust

[cnt1-security-policy-ip-1-vpc2] quit

[cnt1-security-policy-ip] quit

4. 验证配置

# 在租户A上可以Ping通租户B。

C:\> ping 10.20.0.2

 

Pinging 10.20.0.2 with 32 bytes of data:

 

Reply from 10.20.0.2: bytes=32 time=19ms TTL=254

Reply from 10.20.0.2: bytes=32 time<1ms TTL=254

Reply from 10.20.0.2: bytes=32 time<1ms TTL=254

Reply from 10.20.0.2: bytes=32 time<1ms TTL=254

 

Ping statistics for 10.20.0.2:

    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

    Minimum = 0ms, Maximum = 19ms, Average = 4ms

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们