Linux kernel je okosnica Linux operativnih sistema (OS) i osnovni je interfejs između hardvera računara i njegovih procesa.
Kernel verzija Linux 6.7 je objavljen prije samo nekoliko sedmica (početkom januara) i od tada Pokrenut je rad na razvoju Linuxa 6.8 a trenutno je već u svojoj drugoj CR i do sada je doživio niz poboljšanja u različitim oblastima, sa fokusom na umrežavanje, osnovne protokole, BPF, API-je drajvera, podršku za novi hardver i ažuriranja drajvera.
Y među najvažnijim promjenama koji su objavljeni, jedan od njih se izdvaja i to je to Implementirana su poboljšanja vođena TCP stekom, šta rezultira značajnim poboljšanjima performansi, posebno u scenarijima koji uključuju više paralelnih TCP veza. Ova poboljšanja su dovela do ubrzanja koje može doseći i do 40%.
La Optimizacija se fokusirala na reorganizaciju polja unutar struktura mrežnog steka kao što su socks, netdev, netns i mib. Ova prilagođavanja, koja su sprovedena iz istorijskih razloga, omogućila su bolju efikasnost u upravljanju keš memorijom procesora. Konkretno, upotreba keš linija tokom prenosa podataka je svedena na minimum, a pristup relevantnim varijablama je optimizovan.
Trenutno su strukture sa mnogo varijabli u mrežnom stogu organizovane hronološki, logički, a ponekad i pristupom keš liniji.
Ova serija zakrpa pokušava reorganizirati mrežni stog jezgre kako bi se smanjila potrošnja keš linije tokom faze prijenosa podataka. Konkretno, posmatramo TCP/IP stog i brzinu u TCP-u.
Kao rezultat ovih pregleda, Primećeno je značajno povećanje TCP brzine, posebno kada je u pitanju rukovanje velikim brojem istovremenih TCP veza. Ovo poboljšanje je posebno primetno u okruženjima u kojima su mrežne operacije intenzivne, a efikasno upravljanje TCP vezama je ključno.
Of the Ostale promjene i poboljšanjakoji se ističu:
- Dodata introspekcija zasnovana na netlink-u kako bi se otkrila statistika upotrebe memorije i recikliranja.
- Refaktoriranje SYN-Cookie TCP rukovanja za buduću eBPF kompatibilnost.
- Smanjeni troškovi raščlanjivanja zaglavlja ekstenzije u GRO.
- Reorganizuje članove strukture nftables da zadrži podatke kojima pristupa datapath na početku.
- Uvedena podrška za masovno brisanje MDB unosa mosta i praćenje TC blokirajućih portova.
- Poboljšanja verifikatora, uključujući logiku ograničenja BPF logiranja, poboljšanja evidentiranja i podršku za globalne argumente BPF korisničkog apleta.
- Početna implementacija TX metapodataka za AF_XDP sa podrškom u mlx5 i stmmac drajverima.
- Ispravljene kCFI greške u svim oblicima BPF indirektnih poziva.
- Podrška za uid/gid opcije kada se montiraju bpffs i dodatna proširenja na verifikator.
- Automatsko generiranje Netlink familije dokumentacije iz YAML specifikacija i dodatne korekcije opisa modula.
- Sprečavanje nepravilnog objavljivanja stranica koje pripadaju grupi stranica.
- Apstrakcije u Rustu za mrežne PHY drajvere i uvođenje podrške za čekanje i NAPI u netdev Netlink interfejs.
- Filtriranje obavijesti za devlink i poboljšanja u PHY validaciji.
- Izlaganje frakcijske vrijednosti pomaka frekvencije i pretvaranje starih rukovalaca u povratne pozive uklanjanja platforme koji vraćaju void.
- Dodata podrška za čitanje/pisanje PHY MMD paketa.
- Dodata podrška za različite Ethernet uređaje, uključujući Octeon CN10K uređaje, Broadcom 5760X P7, Qualcomm SM8550 SoC i Texas Instrument DP83TG720S PHY.
- Uvođenje Bluetooth radija IMC Networks.
- Nadogradnje za brze NIC-ove, ugrađene NIC-ove, prekidače za data centar, ugrađene prekidače i Ethernet PHY.
- Podržava poboljšanja i dodatke za različite WiFi i Bluetooth kontrolere.
- Uklanjanje raznih WiFi drajvera uključujući libertas, Atmel at76c50x, HostAP, zd1201, Orinoco, Aviator/Raytheon, Planet WL3501 i USB 802.11b RNDIS drajvere.
konačno ako jesi zainteresovani da saznaju više o tome, možete provjeriti detalje na sljedećem linku.