Netværksprocessor - Network processor

Image
Intel FWIXP422BB

En netværksprocessor er et integreret kredsløb, der har et funktionssæt, der specifikt er målrettet mod netværksapplikationsdomænet .

Netværksprocessorer er typisk softwareprogrammerbare enheder og ville have generiske egenskaber svarende til almindelige centrale processorenheder, der almindeligvis bruges i mange forskellige typer udstyr og produkter.

Udviklingshistorie

I moderne telekommunikationsnetværk overføres information (tale, video, data) som pakkedata (betegnet pakkeomskiftning ), hvilket er i modsætning til ældre telekommunikationsnetværk, der bar information som analoge signaler såsom i det offentlige koblede telefonnetværk (PSTN) eller analogt. TV / Radio netværk. Behandlingen af ​​disse pakker har resulteret i oprettelsen af integrerede kredsløb (IC), der er optimeret til at håndtere denne form for pakkedata. Netværksprocessorer har specifikke funktioner eller arkitekturer, der leveres for at forbedre og optimere pakkebehandling inden for disse netværk.

Netværksprocessorer har udviklet sig til IC'er med specifikke funktioner. Denne udvikling har resulteret i, at der er skabt mere komplekse og mere fleksible IC'er. De nyere kredsløb er programmerbare og tillader således et enkelt hardware- IC-design at udføre en række forskellige funktioner, hvor den relevante software er installeret.

Netværksprocessorer bruges til fremstilling af mange forskellige typer netværksudstyr såsom:

Generiske funktioner

I den generiske rolle som en pakkeprocessor er et antal optimerede funktioner eller funktioner typisk til stede i en netværksprocessor, som inkluderer:

  • Mønstertilpasning - muligheden for at finde bestemte mønstre af bits eller bytes i pakker i en pakke stream.
  • Nøgleopslag - evnen til hurtigt at foretage en databaseopslag ved hjælp af en nøgle (typisk en adresse i en pakke) for at finde et resultat, typisk routinginformation .
  • Beregning
  • Databitfeltmanipulation - evnen til at ændre bestemte datafelter indeholdt i pakken, når den behandles.
  • Køadministration - når pakker modtages, behandles og planlægges sendt videre, lagres de i køer.
  • Kontrolbehandling - mikrooperationerne ved behandling af en pakke styres på makroniveau, der involverer kommunikation og orkestrering med andre noder i et system.
  • Hurtig tildeling og gencirkulation af pakkebuffere.

Arkitektoniske paradigmer

For at håndtere høje datahastigheder anvendes ofte flere arkitektoniske paradigmer:

  • Rørledning til processorer - hvert trin i rørledningen består af en processor, der udfører en af ​​de funktioner, der er anført ovenfor.
  • Parallel behandling med flere processorer, ofte inklusive multithreading .
  • Specialiserede mikrokodede motorer til mere effektivt at udføre de opgaver, der er til rådighed.
  • Med fremkomsten af multicore- arkitekturer kan netværksprocessorer bruges til behandling af højere lag ( L4-L7 ).

Derudover er trafikstyring, som er et kritisk element i L2 - L3- netværksbehandling og tidligere udført af en række co-processorer, blevet en integreret del af netværksprocessorarkitekturen og en væsentlig del af dets siliciumområde (" fast ejendom ") er afsat til den integrerede trafikchef. Moderne netværksprocessorer er også udstyret med lav-latency høj-gennemstrømning on-chip samtrafik netværk optimeret til udveksling af små meddelelser mellem kerner (få dataord). Sådanne netværk kan bruges som en alternativ facilitet til effektiv kommunikation mellem kerner bortset fra standardanvendelsen af ​​delt hukommelse.

Ansøgninger

Ved hjælp af den generiske funktion af netværksprocessoren implementerer et softwareprogram en applikation, som netværksprocessoren udfører, hvilket resulterer i, at det fysiske udstyr udfører en opgave eller leverer en service. Nogle af applikationstyperne, der typisk implementeres som software, der kører på netværksprocessorer, er:

  • Pakke- eller rammediskrimination og videresendelse, det vil sige den grundlæggende funktion af en router eller switch .
  • Håndhævelse af kvaliteten af ​​tjenesten (QoS) - identificering af forskellige typer eller klasser af pakker og præferencebehandling for nogle typer eller klasser af pakker på bekostning af andre typer eller klasser af pakker.
  • Adgangskontrolfunktioner - bestemmelse af, om en bestemt pakke eller strøm af pakker skal have lov til at krydse stykke netværksudstyr.
  • Kryptering af datastrømme - indbygget i hardwarebaserede krypteringsmotorer tillader individuelle datastrømme at blive krypteret af processoren.
  • TCP offload- behandling

Se også

Referencer