Netværk SONiC: Brug af systemhukommelse i SONiC – "buff/tilgængelig"

Summary: I denne artikel forklares betydningen af felterne "buff/cache" og "avail Mem" i det "øverste" output i Dell Networking SONiC's oprindelige 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ørgsmål 1: Hvad er buff / cache?

    "BUFF/cache" er den mængde hukommelse, der bruges til filsystemets buffere og cache. Dette hukommelsesforbrug er en afgørende del af, hvordan Linux administrerer og optimerer systemets ydeevne. Lad os nedbryde, hvad "buff/cache" betyder:

    Buffere:
    Buffere angiver i denne sammenhæng en del af systemhukommelsen (RAM), der bruges til midlertidigt at opbevare data, der læses fra eller skrives til disken. Når et program f.eks. læser data fra en fil, indlæses dataene først i en buffer i hukommelsen. Buffere hjælper med at forbedre diskens I/O-ydeevne, fordi det er hurtigere at læse eller skrive til RAM end at få adgang til den fysiske disk. Buffere kan også sikre, at dataene skrives mere effektivt til disken, hvilket reducerer antallet af disk-I/O-handlinger.

    Cache:
    Cache angiver i denne sammenhæng den del af hukommelsen, der bruges til at gemme ofte tilgængelige data fra filer og mapper. Linux bruger en mekanisme kaldet "sidecache" til at cache data fra filer og mapper, der er blevet læst eller skrevet til for nylig. Disse cachelagrede data opbevares i hukommelsen, så hvis de samme data er nødvendige igen, kan de hurtigt hentes fra RAM i stedet for at læse dem fra det langsommere disklager. Denne cache kan forbedre systemets ydeevne betydeligt ved at reducere kravet om adgang til disken for ofte anvendte data.

    Når programmer eller operativsystemet har brug for mere hukommelse til aktive processer, kan buffer-/cachehukommelsen hurtigt frigøres for at imødekomme disse behov.

    Kommandoen "top" viser denne værdi. Den viser også systemets aktuelle status, CPU-forbrug og hukommelsesforbrug.

    BEMÆRK: Kommandoen "top" fungerer kun i SONiC's indbyggede CLI og ikke i Dells MF-CLI (MF-CLI er Dells brugerdefinerede "administrationsstruktur"-cli). Den oprindelige CLI er den kommandolinjegrænseflade, der vises, første gang du starter en SONiC-switch. MF-CLI nås efter indtastning af "sonic-cli" i den oprindelige oprindelige kli.
    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ørgsmål 2: Hvad er tærsklen for høj buffer-/cachehukommelsesudnyttelse?

    Buffer-/cachehukommelse bruges som cache til lagring af ofte anvendte data. Derfor er det muligt, at en betydelig del af tilgængelig RAM ender med at blive allokeret til dette formål. Hvad der skal bemærkes er, at buffer / cache-hukommelsesforbrug er meget dynamisk og konstant ændrer sig baseret på systemets efterspørgsel. Derfor er det mere værdifuldt at overvåge det samlede hukommelsesforbrug (eller det tilsvarende "benytte Mem") og sikre, at systemet har tilstrækkelig ledig hukommelse til at køre applikationer og processer.

    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 til at udtrykke procentdelen af system-RAM, der kan bruges på en Dell Enterprise SONiC-switch:

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

    Denne kommando dividerer "avail Mem" med "MiB Mem total".

    Her er et andet eksempel, der sammenligner ovenstående kommandoer og angiver deres forhold til din reference:

    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.