Nettverk SONiC: Bruk av systemminne i SONiC – "buff / tilgjengelig"

Summary: Denne artikkelen forklarer betydningen av feltene "buff/cache" og "avail Mem" i de "øverste" utdataene i Dell Networking SONiCs innebygde CLI.

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

  • Spørsmål 1: Hva er buff/cache?

    "Buff/cache" er minnemengden som brukes for filsystembuffere og hurtigbuffer. Denne minnebruken er en viktig del av hvordan Linux administrerer og optimaliserer systemytelsen. La oss bryte ned hva "buff / cache" betyr:

    Buffere:
    Buffere angir i denne sammenheng en del av systemminnet (RAM) som brukes til midlertidig oppbevaring av data som leses fra eller skrives til disken. Når et program for eksempel leser data fra en fil, lastes dataene først inn i en buffer i minnet. Buffere bidrar til å forbedre I/O-ytelsen for disk fordi det er raskere å lese eller skrive til RAM enn å koble til den fysiske disken. Buffere kan også sikre at dataene skrives til disken mer effektivt, noe som reduserer antall I/O-operasjoner for disk.

    Cache:
    Cache, i denne sammenhengen, indikerer den delen av minnet som brukes til å lagre ofte brukte data fra filer og kataloger. Linux bruker en mekanisme kalt "sidebufferen" for å cache data fra filer og kataloger som nylig er lest eller skrevet til. Disse hurtigbufrede dataene holdes i minnet, slik at hvis de samme dataene trengs igjen, kan de raskt hentes fra RAM i stedet for å lese dem fra den langsommere disklagringen. Denne hurtigbufferen kan forbedre systemytelsen betydelig ved å redusere behovet for tilgang til disken for data som brukes ofte.

    Når applikasjoner eller operativsystemet trenger mer minne til aktive prosesser, kan buffer-/hurtigbufferminnet raskt frigjøres for å imøtekomme disse behovene.

    Kommandoen "top" viser denne verdien. Den viser også systemets nåværende status, CPU-bruk, minnebruk.

    MERK: "topp"-kommandoen fungerer bare i SONiCs opprinnelige CLI, og ikke i Dells MF-CLI (MF-CLI er Dells tilpassede "management framework cli"). Innebygd CLI er kommandolinjegrensesnittet som vises første gang du starter opp en SONiC-svitsj. MF-CLI nås etter at du har skrevet "sonic-cli" i den opprinnelige 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
  • Spørsmål 2: Hva er terskelen for høy buffer / cache minnebruk?

    Buffer-/hurtigbufferminne brukes som en hurtigbuffer for å lagre data som brukes ofte. Derfor er det mulig at en betydelig del av tilgjengelig RAM ender opp med å tildeles dette formålet. Det som skal bemerkes er at buffer / cache-minnebruk er svært dynamisk og i stadig endring basert på systembehovet. Derfor, Det er mer verdifullt å overvåke den totale minnebruken (eller tilsvarende "nytte Mem") og sikre at systemet har tilstrekkelig ledig minne for å kjøre applikasjoner og prosesser.

    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

    En nyttig kommando for å uttrykke prosentandelen av systemets RAM som er tilgjengelig for bruk på en Dell Enterprise SONiC-svitsj:

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

    Denne kommandoen deler "nytte Mem" med "MiB Mem total."

    Her er et annet eksempel som sammenligner kommandoene ovenfor og angir deres relasjoner for din referanse:

    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.