Hyper-V som vert på Linux er nå en realitet

Tux, maskoten til Linux-kjernen

Etter utgivelsen av Linux 6.14, vinduet for sammenslåing av endringer er åpnet, hvorav mange har vært i arbeid selv før utgivelsen av den nåværende stabile versjonen av kjernen.

Av disse endringene som er forberedt for utgivelsen av Linux 6.15, har en av dem vakt oppmerksomhet siden har blitt innlemmet betydelige endringer som tillater bruk som rotmiljø (Dom0) for Hyper-V, Microsofts hypervisor.

For de som ikke er klar over denne funksjonaliteten, bør du vite det gir Linux kontroll over vertsmiljøett, som involverer hypervisoradministrasjon, ressursadministrasjon, oppstart av gjestesystem og kommunikasjon mellom virtuelle maskiner og fysisk maskinvare.

tidligere organiseringen av hypervisor i Linux- og Windows-kjerner var forskjellige, så Hyper-V-implementering for Linux bruker en annen tilnærming å konfigurere undersystemer og administrere hyperanrop. Det er derfor Koden for kartlegging av avbrudd ved bruk av IOMMU er skrevet om etter en lignende logikk som den som brukes i støtte for Xen på Linux. Både Xen og Hyper-V deler en arkitektur basert på et privilegert rotmiljø (Dom0) for systemadministrasjon.

Linux har allerede Hyper-V Dom0-kompatibilitet

Hypervisoren til Hyper-V på Linux administreres nå gjennom /dev/mshv-enheten, som optimerer integrasjonen med systemet. I tillegg har de introduserte oppdateringene inkorporert muligheten til å hot-deaktivere CPU-kjerner (CPU offline), noe som gir større fleksibilitet i administrasjon av systemressurser.

El Linux-vertsstøtte for Hyper-V ble opprinnelig introdusert i 2020., selv om den til nå bare var tilgjengelig gjennom spesifikke oppdateringer, siden Microsoft brukte den i sin Azure Linux-distribusjon og i sin skyinfrastruktur, men inkluderingen i Linux-hovedkjernen gjør at ethvert tredjepartsprosjekt kan dra nytte av denne muligheten uten å kreve ytterligere modifikasjoner.

Hovedgrunnen bak denne avgjørelsen er økende dominans av Linux i Microsoft virtualiseringsmiljøer. Siden 2018 har antallet Linux-gjestesystemer på Azure overgått det for Windows, noe som har ført til at selskapet har optimalisert infrastrukturen for denne trenden.

Forbedringer av nettverksundersystemet

En annen av endringene som skiller seg ut For neste versjon av Linux, 6.15, er optimaliseringer for å forbedre nettverksytelsen på Linux-systemer. Disse forbedringene inkluderer:

  • Forbedringer i MPTCP: Ytelse for multipath TCP (MPTCP) er optimalisert med 29 % i scenarier med én delstrøm.
  • TCP-trafikkoptimalisering: Aktivering av GRO (Generic Receive Offload) på pakker omdirigert av XDP (eXpress Data Path) kan doble gjennomstrømningen til TCP-strømmen.
  • TCP-tilkoblingsakselerasjon: Connect()-ytelsen i situasjoner med høy samtidighet har blitt forbedret med 200 %, ved å erstatte spinnlåser med et 4-toppel RCU-strukturoppslag. Ved å justere hash-distribusjonen når forbedringen 229 %.
  • Optimalisering i UDP-trafikk: Under UDP-flomangrep forbedres mottakseffektiviteten med opptil 10 % ved å redusere unødvendig tilgang til socket-tidsstempler.

I tillegg har nye funksjoner og kompatibilitetsforbedringer også blitt implementert, for eksempel:

  • TCP-tidsstempelsporing: Muligheten til å samle tidsstempler i BPF er lagt til for å overvåke data som sendes, logges og bekreftes på TCP-tilkoblinger, noe som muliggjør mer effektiv sporing med mindre ytelsespåvirkning.
  • MCTP over USB-støtte: En transportdriver for MCTP (Management Component Transport Protocol) er lagt til på USB-tilkoblinger.
  • Tilgang til SFP-moduler: Tilgang til SFP-moduler (Small Form-factor Pluggable) er nå tillatt via SMBus (System Management Bus).
  • Broadcom BNXT: Støtter nå Intel Killer E5000 Ethernet-grensesnitt.
  • Airoha RISC-V NPU-støtte: Støtte for Airohas RISC-V-baserte pakkebehandlingsenhet (NPU) er lagt til.
  • Realtek trådløse brikkesett: RTL8814AE- og RTL8814AU-modellene er lagt til RTW88-kontrolleren.
  • Intel IWLWIFI: En ny iwlmld-underdriver er introdusert i IWLWIFI-driveren, som utvider støtten for forskjellige maskinvare- og fastvarekombinasjoner.
  • MLO-støtte på Mediatek MT76: Mediateks MT76-driver forbereder MLO-støtte, spesielt for MT7996-brikkesettet.

Til slutt, hvis du er interessert i å vite mer om det, kan du se detaljene i følgende lenke.