l雷竞技RouterOS v7支持在多个进程之间拆分任务。有一个。”主要任务,它可以启动/停止子任务,并在这些子任务之间处理数据。每个子任务都可以分配“私有”内存(只有这个特定的任务可以访问)和“共享”内存(所有路由任务都可以访问)。
可以拆分的任务列表:
BGP的接收和发送可以通过特定的参数划分为子任务,例如可以为每个对等体运行输入,也可以将所有对等体的输入分组在主进程中运行。这个按子任务划分的操作由input.affinity和output.affinity中的参数配置/路由/边界网关协议模板通过在内核较少的设备上使用亲和值来提高性能是可能的,因为在任务之间共享数据比在一个任务中处理相同的数据要慢一些。例如,在单核或双核设备上,在主进程或实例进程中运行输入和输出将提高性能。
input.affinity
output.affinity
/路由/边界网关协议模板
BGP最多可以有100个唯一的进程。
可以使用以下命令监视所有当前使用的任务及其分配的私有/共享内存:
/路由/数据/过程/打印
样例输出:
[admin@BGP_MUM] /routing/stats/process> print interval=1任务、私有内存块、共享内存块、pss、rss、vm、退休、id、pid、rpid、进程时间、内核时间、当前繁忙、最大繁忙、当前calc、MAX-CALC #任务PRIVATE-M SHARED-M PSS RSS vm ID PID R过程——KERNEL-TI坏蛋——MAX-BUSY CUR mib - MAX-CALC 0路由表11.8 51.4 42.2 20.0 19.8 mib mib mib mib主要195 0 15 s470ms 2 s50ms 20 ms 1 s460ms 20 ms 35 s120ms肋连接网络1 fib 2816.0简约0 51.4 8.1 27.4 mib mib mib fib 255 1 5 s730ms 7 m4s790ms 23 s350ms 23 s350ms 2 ospf 512.0简约0 51.4 3151.0 14.6简约mib mib ospf 260 1 20 ms 100 ms 20 ms 20 ms连接网络3幻想256.0简约0 51.4 1898.0 5.8简约mib mib幻想261 1 40 ms 60 ms 20毫秒20女士4配置和报告51.4 28.4 4096.0 9.2 512.0简约简约mib mib mib静态262 1 3 s210ms 40毫秒220 ms 220 ms 5把512.0简约0 51.4 3151.0 14.6简约mib mib rip 259 1 50 90 ms女士20 ms 20 ms 6连接网络路由策略配置51.4 6.2 2250.0 768.0 768.0简约简约简约mib mib政策256 1 70 ms 50 ms 20 ms 20 ms 7边界网关协议服务768.0简约0 51.4 3359.0 14.9简约mib mib边界网关协议257 1 4 s260ms 8 s50ms 30 ms 30 ms连接网络8 BFD服务512.0简约0 3151.0 14.6简约mib 51.4 mib 12 258 80 40毫秒女士20 ms 20 ms连接网络9 BGP输入10.155.101.232 8.2MiB 6.8MiB 17.0MiB 39.1MiB 51.4MiB 20 270 1 24s880ms 3s60ms 18s550ms 18s550ms BGP输出10.155.101.232 10全局内存256.0KiB Global 0 0
下图试图以更友好的方式解释路由表更新机制是如何工作的。
路由协议通过以下步骤不断循环:
考虑“更新"和"当前的作为两份路由表,其中当前的“表(2)是目前使用的,”更新(1)是下一个发布事件(3和4)中要发布的候选路由表。这种方法防止协议用缓冲的更新填充内存,而主要“过程正在进行”发布,相反,协议将最新的更新直接发送到“主”进程,然后将新的更新复制到“更新”表。稍微复杂一点的是OSPF,它内部有类似的过程来选择当前的OSPF路由,然后将这些路由发送到主要"以作进一步处理。