Netzwerk Perfomance: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 14: Zeile 14:
 
*Wenn die Kernel Buffer gefüllt sind gehen die Daten an die IP/TCP oder UDP Schicht.
 
*Wenn die Kernel Buffer gefüllt sind gehen die Daten an die IP/TCP oder UDP Schicht.
  
 +
*Früher löste ein Hard Interupt das Senden aus.
 +
*Dies wurde durch den Soft Interrupt ersetzt.
 +
*Dieser wird verwaltet von der New API.
 
=Quelle=
 
=Quelle=
 
*https://i0.wp.com/opensourceforu.com/wp-content/uploads/2016/08/Figure-1-Data-receiving-process.jpg
 
*https://i0.wp.com/opensourceforu.com/wp-content/uploads/2016/08/Figure-1-Data-receiving-process.jpg

Version vom 16. November 2019, 15:23 Uhr

Intention

  • Router, Switche, Kabel wurden verbessert
  • Microprozessoren hinken hinten dran
  • Letztendlich muss das Betriebssystem die Daten verarbeiten
  • Darum ist ein präzises Anpassen des Betriebssystem wichtig

Wie verarbeitet das Betriebssystem die Daten

Netzwerk-perfomance-1.jpg

  • Daten werden von der Netzwerkkarte aufgenommen
  • Danach werden sie im Ring Buffer für den Empfang (RX) gespeichert
  • Es gibt auch einen Ring Buffer für das Senden (TX)
  • Wenn der Kernel auf das Paket zugreifen kann löst der Treiber einen Software IRQ aus
  • Dieser veranlasst einen Datenzugriff (DMA)
  • Der Kernel bekommt die Daten in Datenstruktur sk_buff um das Paket bis zur MTU zu halten.
  • Wenn die Kernel Buffer gefüllt sind gehen die Daten an die IP/TCP oder UDP Schicht.
  • Früher löste ein Hard Interupt das Senden aus.
  • Dies wurde durch den Soft Interrupt ersetzt.
  • Dieser wird verwaltet von der New API.

Quelle