Le noyau Linux est l'épine dorsale des systèmes d'exploitation (OS) Linux et constitue l'interface fondamentale entre le matériel d'un ordinateur et ses processus.
La version noyau de Linux 6.7 est sorti il y a quelques semaines seulement (début janvier) et depuis lors, le Les travaux sur le développement de Linux 6.8 ont été lancés et actuellement il est déjà dans son deuxième CR et jusqu'à présent, il a connu diverses améliorations dans différents domaines, en mettant l'accent sur la mise en réseau, les protocoles de base, le BPF, les API des pilotes, la prise en charge du nouveau matériel et les mises à jour des pilotes.
Y parmi les changements les plus importants qui ont été fait connaître, l'un d'eux se démarque et c'est celui Les améliorations portées par la pile TCP ont été mises en œuvre, Que lo entraîne des améliorations substantielles des performances, en particulier dans les scénarios impliquant plusieurs connexions TCP parallèles. Ces améliorations ont conduit à une accélération pouvant atteindre jusqu'à 40 %.
La Optimisation axée sur la réorganisation des champs au sein des structures de pile réseau telles que chaussettes, netdev, netns et mibs. Ces ajustements, mis en œuvre pour des raisons historiques, ont permis une meilleure efficacité dans la gestion du cache du processeur. En particulier, l'utilisation de lignes de cache lors du transfert de données a été minimisée et l'accès aux variables pertinentes a été optimisé.
Actuellement, les structures comportant de nombreuses variables dans la pile réseau sont organisées chronologiquement, logiquement et parfois par accès à la ligne de cache.
Cette série de correctifs tente de réorganiser la pile réseau principale afin de minimiser la consommation de la ligne de cache pendant la phase de transfert de données. Plus précisément, nous examinons la pile TCP/IP et la vitesse dans TCP.
À la suite de ces examens, Une augmentation significative de la vitesse TCP a été observée, surtout lorsqu'il s'agit de gérer un grand nombre de connexions TCP simultanées. Cette amélioration est particulièrement notable dans les environnements où les opérations réseau sont intensives et où une gestion efficace des connexions TCP est cruciale.
De l' Autres changements et améliorationsqui se démarquent :
- Ajout d'une introspection basée sur Netlink pour exposer les statistiques d'utilisation de la mémoire et de recyclage.
- Refactorisation de la gestion TCP de SYN-Cookie pour une future compatibilité eBPF.
- Réduction des frais généraux d’analyse des en-têtes d’extension dans GRO.
- Réorganise les membres de la structure nftables pour conserver les données accessibles par datapath au début.
- Introduction de la prise en charge de la suppression groupée des entrées de pont MDB et de la surveillance des ports de blocage TC.
- Améliorations du vérificateur, notamment la logique des limites de journalisation BPF, les améliorations de la journalisation et la prise en charge des arguments globaux de l'applet utilisateur BPF.
- Implémentation initiale des métadonnées TX pour AF_XDP avec prise en charge des pilotes mlx5 et stmmac.
- Correction de bugs kCFI dans toutes les formes d'appels indirects BPF.
- Prise en charge des options uid/gid lors du montage de bpffs et d'extensions supplémentaires pour le vérificateur.
- Génération automatique de la documentation de la famille Netlink à partir des spécifications YAML et corrections supplémentaires des descriptions de modules.
- Prévention de la libération incorrecte des pages appartenant à un pool de pages.
- Abstractions dans Rust pour les pilotes réseau PHY et introduction de la mise en file d'attente et du support NAPI dans l'interface netdev Netlink.
- Filtrage des notifications pour devlink et améliorations de la validation PHY.
- Exposer la valeur de décalage de fréquence fractionnaire et convertir les anciens gestionnaires en rappels de suppression de plate-forme qui renvoient void.
- Ajout de la prise en charge de la lecture/écriture des paquets PHY MMD.
- Ajout de la prise en charge de divers périphériques Ethernet, notamment les appareils Octeon CN10K, Broadcom 5760X P7, Qualcomm SM8550 SoC et Texas Instrument DP83TG720S PHY.
- Introduction de la radio Bluetooth IMC Networks.
- Mises à niveau pour les cartes réseau haut débit, les cartes réseau intégrées, les commutateurs de centre de données, les commutateurs intégrés et les PHY Ethernet.
- Prise en charge des améliorations et des ajouts pour divers contrôleurs WiFi et Bluetooth.
- Suppression de divers pilotes WiFi, notamment libertas, Atmel at76c50x, HostAP, zd1201, Orinoco, Aviator/Raytheon, Planet WL3501 et USB 802.11b RNDIS.
enfin si tu es intéressé à en savoir plus, vous pouvez vérifier le détails dans le lien suivant.