Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

4.2. ネットワークトラフィックの優先順位付け

単一のサーバーシステムで複数のネットワーク関連サービスを実行する場合、これらのサービス間でネットワークの優先順位を定義することが重要です。優先度を定義すると、特定のサービスから発信されたパケットが、他のサービスから発信されたパケットよりも高い優先度を持つようになります。たとえば、このような優先度は、サーバーシステムが NFS および Samba サーバーとして同時に機能する場合に役立ちます。ユーザーは高いスループットを期待するため、NFS トラフィックの優先順位を高くする必要があります。NFS サーバーのパフォーマンスを向上させるために、Samba トラフィックの優先順位を下げることができます。
net_prio コントローラーを使用して、cgroup 内のプロセスのネットワーク優先度を設定できます。次に、これらの優先順位は Type of Service (ToS) フィールドビットに変換され、すべてのパケットに埋め込まれます。の手順に従います。手順4.2「ファイル共有サービスのネットワーク優先順位の設定」 2 つのファイル共有サービス (NFS と Samba) の優先順位を設定します。

手順4.2 ファイル共有サービスのネットワーク優先順位の設定

  1. net_prio サブシステムを /cgroup/net_prio cgroup に接続します。
    ~]# mkdir sys/fs/cgroup/net_prio
    ~]# mount -t cgroup -o net_prio none sys/fs/cgroup/net_prio
  2. サービスごとに 1 つずつ、2 つの cgroup を作成します。
    ~]# mkdir sys/fs/cgroup/net_prio/nfs_high
    ~]# mkdir sys/fs/cgroup/net_prio/samba_low
  3. nfs サービスを nfs_high cgroup に自動的に移動するには、次の行を /etc/sysconfig/nfs ファイルに追加します。
    CGROUP_DAEMON="net_prio:nfs_high"
    この設定により、nfs サービスが開始または再起動されたときに、nfs サービスプロセスが確実に nfs_high cgroup に移動されます。
  4. smbd サービスには、/etc/sysconfig ディレクトリーに設定ファイルがありません。smbd サービスを samba_low cgroup に自動的に移動するには、次の行を /etc/cgrules.conf ファイルに追加します。
    *:smbd                net_prio                samba_low
    このルールは、/usr/sbin/smbd だけでなく、すべての smbd サービスを samba_low cgroup に移動することに注意してください。
    同様の方法で、nmbd サービスと winbindd サービスを samba_low cgroup に移動するためのルールを定義できます。
  5. cgred サービスを開始して、前の手順の設定をロードします。
    ~]# systemctl start cgred
    Starting CGroup Rules Engine Daemon:                       [  OK  ]
    
  6. この例では、両方のサービスが eth1 ネットワークインターフェイスを使用すると仮定します。各 cgroup のネットワーク優先度を定義します 。1 は優先度が低く、10 は優先度が高いことを示します。
    ~]# echo "eth1 1" > /sys/fs/cgroup/net_prio/samba_low/net_prio.ifpriomap
    ~]# echo "eth1 10" > /sys/fs/cgroup/net_prio/nfs_high/net_prio.ifpriomap
  7. nfs および smb サービスを開始し、それらのプロセスが正しい cgroup に移動されているかどうかを確認します。
    ~]# systemctl start smb
    Starting SMB services:                                     [  OK  ]
    ~]# cat /sys/fs/cgroup/net_prio/samba_low/tasks
    16122
    16124
    ~]# systemctl start nfs
    Starting NFS services:                                     [  OK  ]
    Starting NFS quotas:                                       [  OK  ]
    Starting NFS mountd:                                       [  OK  ]
    Stopping RPC idmapd:                                       [  OK  ]
    Starting RPC idmapd:                                       [  OK  ]
    Starting NFS daemon:                                       [  OK  ]
    ~]# cat sys/fs/cgroup/net_prio/nfs_high/tasks
    16321
    16325
    16376
    
    NFS から発信されたネットワークトラフィックは、Samba から発信されたトラフィックよりも優先度が高くなりました。
に似ている手順4.2「ファイル共有サービスのネットワーク優先順位の設定」net_prio サブシステムを使用して、Firefox などのクライアントアプリケーションのネットワーク優先度を設定できます。