I koden till Linux-kÀrnan, pÄ vilken version 6.15 baseras, har en uppsÀttning Àndringar med optimeringar antagits som i flera situationer avsevÀrt ökar prestandan för nÀtverksoperationer:
- Optimeringen GRO (Generic Receive Offload), som kombinerar flera smÄ paket till ett stort, anvÀnds nu vid omkoppling av paketbehandling till en annan CPU (för belastningsbalansering) nÀr man anvÀnder XDP-systemet (eXpress Data Path), som möjliggör behandling av paket pÄ nÀtverksdrivrutinsnivÄ innan de skickas till nÀtverksstacken. Prestandavinsten för behandling av TCP-flöden frÄn tillÀmpningen av optimeringen kan nÄ upp till tvÄ gÄnger.
- Under kraftig belastning har prestandan hos funktionen connect() ökat med upp till tvÄ gÄnger genom att ersÀtta spin-lÄsningen med RCU-synkroniseringsmekanismen (Read-Copy-Update) vid sökning av poster med information om anslutningens parter (kÀll- och mÄl) och portar. IP-adresser Dessutom har en optimering av hashning genomförts, vilket har gett ytterligare en prestandaökning pÄ 229%.
- Implementeringen av MPTCP (Multipath TCP), en utvidgning av TCP-protokollet för att möjliggöra leverans av paket samtidigt över flera vÀgar genom olika nÀtverksgrÀnssnitt kopplade till olika IP-adresser, har pÄskyndats. MPTCP i lÀget med en ström har ökat med 29%.
- I netfilter har sökoperationer för rutter i FIB (Forwarding Information Base) avbrutits nÀr en socket finns. Tack vare denna optimering har prestandan ökat med 20%.
- Prestandan för UDP under flud (flood) har ökat med 10% genom att utesluta onödiga operationer med strukturen sk_tsflags vid mottagande av paket.
Dessutom har en förÀndring antagits i den under utveckling kÀrnan Linux 6.15 för exFAT-filsystemdrivrutinen, vilket pÄskyndar filborttagningsoperationer. Tidigare skickade exFAT-drivrutinen separata "discard"-förfrÄgningar till lagringsenheterna för varje frigjord kluster av den borttagna filen. Den optimerade versionen grupperar förfrÄgningar, vilket resulterar i att tiden för att ta bort en testfil pÄ 80 GB minskade frÄn 286 sekunder till 1,6 sekunder.
KĂ€lla: opennet.ru
