Теперь у меня есть несколько процессов, например 2. P1, P2. P1 и P2 должны будут передавать данные от NIC. Может быть, мы можем взять P1, P2 как два браузера.
У меня два вопроса: 1) Я хочу ограничить P1 max до 100 КБ / с, а P2 max до 200 КБ / с. Как я могу это сделать? 2) Я хочу, чтобы P1 использовал половину полосы пропускания сетевого адаптера, как и P2. У них вполне справедливое разделение полосы пропускания. Как я могу это сделать? cgroup или tc?
Ответом на вопрос №2 может быть новая подсистема net_prio. Он позволяет вам устанавливать сетевые приоритеты для каждого интерфейса. Видеть:
Да, вы правы, cgroup + tc - это ответ. Вот вам хороший пример: http://broadcast.oreilly.com/2009/06/manage-your-performance-with-cgroups-and-projects.html (ищите "Сети и тоже").