Inkluderet i kernens kodebase Linux, som danner grundlag for version 6.15, implementerede en række ændringer med optimeringer, der forbedrer netværksdriftens ydeevne betydeligt i en række situationer:
- GRO (Generic Receive Offload)-optimeringen, som kombinerer flere små pakker til en stor, er nu aktiveret, når pakkebehandlingen skiftes til en anden CPU (til belastningsbalancering), når du bruger XDP (eXpress Data Path) undersystemet, som tillader pakker at blive behandlet på netværksdriverniveauet, før de sendes videre til netværksstakken. Ydeevnegevinsten for TCP-streambehandling ved at bruge optimering kan være op til to gange.
- Under tunge belastningsforhold er ydeevnen af connect()-funktionen blevet øget op til dobbelt så meget ved at erstatte spin-låsen med RCU (Read-Copy-Update)-synkroniseringsmekanismen, når der søges efter poster med information om forbindelsessiderne (kilde og mål). IP-adresser og porte). Derudover blev der udført hashingoptimering, hvilket gav en yderligere ydeevneforøgelse på 229%.
- Implementeringen af MPTCP (Multipath TCP), en udvidelse af TCP-protokollen til at organisere leveringen af pakker samtidigt langs flere ruter gennem forskellige netværksgrænseflader bundet til forskellige IP-adresser, er blevet fremskyndet. MPTCP i enkeltstrømstilstand accelereres med 29 %.
- I netfilter, når en socket er til stede, er udførelsen af ruteopslagsoperationer i FIB (Forwarding Information Base) blevet stoppet. Takket være denne optimering er ydeevnen steget med 20 %.
- UDP-ydeevne under oversvømmelsesforhold er blevet øget med 10 % ved at eliminere unødvendige operationer med sk_tsflags-strukturen ved modtagelse af pakker.
Derudover er kernen under udvikling Linux 6.15 introducerede en ændring i exFAT-filsystemdriveren, der fremskynder filsletning. Tidligere sendte exFAT-driveren individuelle "sletnings"-anmodninger til drev for hver frigjort klynge af en fil, der blev slettet. Den optimerede version grupperer anmodningerne, hvilket resulterer i en reduktion af slettetiden for en 80 GB testfil fra 286 sekunder til 1.6 sekunder.
Kilde: opennet.ru
