네트워킹 SONiC: SONiC의 시스템 메모리 사용량 - "버프/사용 가능"

Summary: 이 문서에서는 Dell Networking SONiC의 기본 CLI에서 "top" 출력에 있는 buff/cache" 및 "avail Mem" 필드의 의미에 대해 설명합니다.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

  • 질문 1: 버프/캐시란 무엇인가요?

    buff/cache"는 파일 시스템 버퍼 및 캐시에 사용되는 메모리 양입니다. 이 메모리 사용량은 Linux가 시스템 성능을 관리하고 최적화하는 방법의 중요한 부분입니다. "buff/cache"가 무엇을 의미하는지 분석해 보겠습니다.

    버퍼:
    이 컨텍스트에서 버퍼는 디스크에서 읽거나 쓰는 데이터를 임시로 보관하는 데 사용되는 시스템 메모리(RAM)의 일부를 나타냅니다. 예를 들어, 프로그램이 파일에서 데이터를 읽을 때 데이터는 먼저 메모리의 버퍼에 로드됩니다. 버퍼는 RAM을 읽거나 쓰는 것이 물리적 디스크에 액세스하는 것보다 빠르기 때문에 디스크 I/O 성능을 향상시키는 데 도움이 됩니다. 또한 버퍼는 데이터가 디스크에 보다 효율적으로 기록되도록 하여 디스크 I/O 작업 수를 줄일 수 있습니다.

    캐시:
    이 컨텍스트에서 캐시는 파일 및 디렉토리에서 자주 액세스하는 데이터를 저장하는 데 사용되는 메모리 부분을 나타냅니다. Linux는 "페이지 캐시"라는 메커니즘을 사용하여 최근에 읽거나 쓴 파일 및 디렉토리의 데이터를 캐시합니다. 이렇게 캐싱된 데이터는 메모리에 보관되므로 동일한 데이터가 다시 필요할 경우 속도가 느린 디스크 스토리지에서 데이터를 읽는 대신 RAM에서 빠르게 가져올 수 있습니다. 이 캐시는 자주 사용하는 데이터를 위해 디스크에 액세스해야 하는 요구 사항을 줄여 시스템 성능을 크게 향상시킬 수 있습니다.

    애플리케이션 또는 운영 체제에서 활성 프로세스에 더 많은 메모리가 필요한 경우 이러한 요구를 수용하기 위해 버퍼/캐시 메모리를 신속하게 해제할 수 있습니다.

    "top" 명령은 이 값을 표시합니다. 또한 시스템의 현재 상태, CPU 사용량, 메모리 사용량을 표시합니다.

    참고: "top" 명령은 SONiC의 기본 CLI에서만 작동하며 Dell의 MF-CLI(MF-CLI는 Dell의 맞춤형 "관리 프레임워크" CLI)에서는 작동하지 않습니다. 기본 CLI는 SONiC 스위치를 처음 부팅할 때 나타나는 명령줄 인터페이스입니다. MF-CLI는 초기 네이티브 cli에 "sonic-cli"를 입력하면 연결됩니다.
    admin@sonic:~$ top
    top - 16:43:51 up 8 days, 18:15,  1 user,  load average: 1.54, 1.50, 1.51
    Tasks: 365 total,   2 running, 363 sleeping,   0 stopped,   0 zombie
    %Cpu(s):  2.8 us,  4.2 sy,  0.0 ni, 93.1 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    MiB Mem :  15482.2 total,  11292.8 free,   2299.6 used,   1889.8 buff/cache 
    MiB Swap:      0.0 total,      0.0 free,      0.0 used.  12965.1 avail Mem
  • 질문 2: 높은 버퍼/캐시 메모리 사용률에 대한 임계값은 무엇입니까?

    버퍼/캐시 메모리는 자주 액세스하는 데이터를 저장하기 위한 캐시로 사용됩니다. 따라서 사용 가능한 RAM의 상당 부분이 이 목적을 위해 할당될 수 있습니다. 주목할 점은 버퍼/캐시 메모리 사용량이 매우 동적이며 시스템 요구에 따라 지속적으로 변경된다는 것입니다. 따라서 전체 메모리 사용량(또는 해당 "가용 메모리")을 모니터링하고 시스템에 애플리케이션 및 프로세스를 실행하기에 충분한 여유 메모리가 있는지 확인하는 것이 더 중요합니다.

    top - 14:17:13 up 207 days,  1:59,  1 user,  load average: 2.66, 2.19, 2.03
    Tasks: 386 total,   2 running, 384 sleeping,   0 stopped,   0 zombie
    %Cpu(s): 12.5 us,  9.7 sy,  0.0 ni, 77.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    MiB Mem :  15482.6 total,   8571.4 free,   2692.5 used,   4218.8 buff/cache
    MiB Swap:      0.0 total,      0.0 free,      0.0 used.  12773.1 avail Mem   <--- system's total available RAM

    Dell Enterprise SONiC 스위치에서 사용할 수 있는 시스템 RAM의 백분율을 표현하는 유용한 명령:

    free | grep Mem | awk '{print $7/$2 * 100 }'

    이 명령은 "avail Mem"을 "MiB Mem total"로 나눕니다.

    다음은 위의 명령을 비교하고 참조용으로 관계를 나타내는 또 다른 예입니다.

    admin@Leaf3B:~$ top
    top - 21:49:49 up  1:25,  1 user,  load average: 0.59, 0.60, 0.64
    Tasks: 329 total,   1 running, 328 sleeping,   0 stopped,   0 zombie
    %Cpu(s):  7.9 us,  4.2 sy,  0.0 ni, 87.5 id,  0.0 wa,  0.0 hi,  0.4 si,  0.0 st
    KiB Mem : 15928852 total, 12074024 free,  2439884 used,  1414944 buff/cache
    KiB Swap:        0 total,        0 free,        0 used. 13120520 avail Mem
    
      PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
    21685 root      20   0  172992  33116   8436 S  52.9  0.2   3:16.11 python3.6
     1278 root      20   0   92872  15116   3264 S  17.6  0.1   2:24.49 redis-serv+
     5366 admin     20   0   43540   3812   3020 R  17.6  0.0   0:00.03 top
    18469 root      20   0 1643080 451968  78276 S  11.8  2.8   8:17.32 syncd
     1097 root      20   0  136440  15188   5912 S   5.9  0.1   0:07.75 watchdogd
    19856 admin     20   0  334880  61900  35296 S   5.9  0.4   0:00.44 docker
    20985 root      20   0  159488  18616   5036 S   5.9  0.1   0:19.22 xcvrd
        1 root      20   0   57768   7820   5544 S   0.0  0.0   0:32.58 systemd
        2 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kthreadd
        3 root      20   0       0      0      0 S   0.0  0.0   0:00.91 ksoftirqd/0
        4 root      20   0       0      0      0 S   0.0  0.0   0:01.90 kworker/0:0
        5 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:+
        7 root      20   0       0      0      0 S   0.0  0.0   0:06.93 rcu_sched
        8 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcu_bh
        9 root      rt   0       0      0      0 S   0.0  0.0   0:00.39 migration/0
       10 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 lru-add-dr+
       11 root      rt   0       0      0      0 S   0.0  0.0   0:00.00 watchdog/0
    
    admin@Leaf3B:~$ free
                  total        used        free      shared  buff/cache   available
    Mem:       15928852     2438836    12074940       36060     1415076    13121528
    Swap:             0           0           0
    admin@Leaf3B:~$ free | grep Mem | awk '{print $7/$2 * 100 }'
    82.3662
    admin@Leaf3B:~$

 

Affected Products

Enterprise SONiC Distribution
Article Properties
Article Number: 000215960
Article Type: How To
Last Modified: 17 شباط 2025
Version:  3
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.