首页 > 其他分享 >网络优先级cgroup 【ChatGPT】

网络优先级cgroup 【ChatGPT】

时间:2023-12-09 22:22:39浏览次数:28  
标签:优先级 prio 应用程序 流量 cgroup ChatGPT net

网络优先级cgroup

网络优先级cgroup提供了一个接口,允许管理员动态设置由各种应用程序生成的网络流量的优先级。

通常情况下,应用程序会通过SO_PRIORITY套接字选项设置其流量的优先级。然而,这并不总是可能,因为:

  • 应用程序可能没有编码来设置这个值
  • 应用程序流量的优先级通常是站点特定的管理决定,而不是应用程序定义的决定。

这个cgroup允许管理员将一个进程分配到一个定义了在给定接口上出口流量优先级的组中。网络优先级组可以通过首先挂载cgroup文件系统来创建:

# mount -t cgroup -onet_prio none /sys/fs/cgroup/net_prio

通过上述步骤,作为父计费组的初始组将在'/sys/fs/cgroup/net_prio'下可见。这个组包括系统中的所有任务。'/sys/fs/cgroup/net_prio/tasks'列出了这个cgroup中的任务。

每个net_prio cgroup包含两个特定于子系统的文件:

net_prio.prioidx

  • 这个文件是只读的,只是提供信息。它包含一个唯一的整数值,内核使用它作为这个cgroup的内部表示。

net_prio.ifpriomap

  • 这个文件包含一个映射,指定了来自该组中进程并在各个接口上出口系统的流量的优先级。它包含一系列以形式的元组。可以通过向文件中回映射格式的字符串进行修改。例如:
echo "eth0 5" > /sys/fs/cgroups/net_prio/iscsi/net_prio.ifpriomap

这个命令将强制任何属于iscsi net_prio cgroup的进程生成并在eth0接口上出口的流量的优先级设置为值5。父计费组也有一个可写的'net_prio.ifpriomap'文件,可以用来设置系统默认优先级。

优先级是在将帧排队到设备排队规则(qdisc)之前立即设置的,因此优先级将在进行硬件队列选择之前分配。

net_prio cgroup的一个用途是与mqprio qdisc一起,允许将应用程序流量引导到基于硬件/驱动程序的流量类别。这些映射可以由管理员或其他网络协议(如DCBX)管理。

新的net_prio cgroup继承父级的配置。

标签:优先级,prio,应用程序,流量,cgroup,ChatGPT,net
From: https://www.cnblogs.com/pengdonglin137/p/17891916.html

相关文章

  • 进程数量控制器 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/admin-guide/cgroup-v1/pids.html进程数量控制器摘要进程数量控制器用于允许cgroup层次结构在达到一定限制后阻止任何新任务进行fork()或clone()。由于很容易达到任务限制而不触及任何已设置的kmemcg限制,PID是一种基本资源。......
  • HugeTLB 控制器 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/admin-guide/cgroup-v1/hugetlb.htmlHugeTLB控制器HugeTLB控制器可以通过首先挂载cgroup文件系统来创建。#mount-tcgroup-ohugetlbnone/sys/fs/cgroup通过上述步骤,初始或父HugeTLB组将在/sys/fs/cgroup中可见。在启动......
  • 设备白名单控制器 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/admin-guide/cgroup-v1/devices.html设备白名单控制器1.描述实现一个cgroup来跟踪和强制设备文件的打开和mknod限制。设备cgroup将设备访问白名单与每个cgroup关联起来。白名单条目有4个字段。'type'是(all)、c(字符)或......
  • Cgroup Freezer 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/admin-guide/cgroup-v1/freezer-subsystem.htmlCgroupFreezercgroup冷冻器对于批处理作业管理系统非常有用,该系统可以启动和停止一组任务,以便根据系统管理员的需求安排机器的资源。这种程序通常用于HPC集群,以安排对整个集群的访问。cgr......
  • CPUSETS 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/admin-guide/cgroup-v1/cpusets.htmlCPUSETS1.Cpusets1.1什么是cpusets?Cpusets提供了一种机制,用于将一组CPU和内存节点分配给一组任务。在本文档中,“内存节点”指的是包含内存的在线节点。Cpusets限制了任务的CPU和内存放置......
  • 控制组 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/admin-guide/cgroup-v1/cgroups.html控制组由[email protected]编写,基于CPUSETS来自CPUSETS的原始版权声明:部分版权所有(C)2004BULLSA。部分版权所有(c)2004-2006SiliconGraphics,Inc.由[email protected]修改......
  • Block IO 控制器 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/admin-guide/cgroup-v1/blkio-controller.htmlBlockIO控制器概述cgroup子系统"blkio"实现了块IO控制器。在存储层次结构中,似乎需要各种类型的IO控制策略(如比例带宽、最大带宽),无论是在叶节点还是在中间节点都需要。计划是使用......
  • CPU核算控制器 【ChatGPT】
    原文:https://www.kernel.org/doc/html/v6.6/admin-guide/cgroup-v1/cpuacct.htmlCPU核算控制器CPU核算控制器用于使用cgroups对任务进行分组,并核算这些任务组的CPU使用情况。CPU核算控制器支持多层级分组。一个核算组累积其所有子组和直接存在于其组中的任务的CPU使用情况。可......
  • RCU补丁审查清单 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/RCU/checklist.htmlRCU补丁审查清单本文档包含了一个用于生成和审查使用RCU的补丁的清单。违反以下列出的任何规则都会导致与省略锁原语相同类型的问题。这份清单基于审查这类补丁的经验,经历了相当长的一段时间,但总是欢迎改进!RCU是否......
  • Linux通用中断处理 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/core-api/genericirq.htmlLinux通用中断处理版权©2005-2010:ThomasGleixner©2005-2006:IngoMolnar简介通用中断处理层旨在为设备驱动程序提供完整的中断处理抽象。它能够处理所有不同类型的中断控制器硬件。设备驱动程序使用......