Representational State Transfer (resten) är en viktig del av SDN

Representational State Transfer (resten) är en viktig del av SDN

Ett mycket vanligt gränssnitt format används inom programvara-definieras-network (SDN) implementeringar är RESTful API. Denna artikel förklarar vila och lugn

Vad är resten?

Innan du definierar resten, måste du vara klart vad som menas med ett programmeringsgränssnitt (API). Ett API är ett språk och meddelande format används av ett program för att kommunicera med ett OS, vissa andra program t.ex en DMBS, eller i allmänhet något lägre nivå programmodul. API: er implementeras genom att skriva funktionsanrop i ansökan, som ger kopplingen till funktionen krävs modul för utförandet. En öppen eller standardiserat API kan garantera mobiliteten i programkoden och tjänsten kallas oberoende leverantör.
Representational State Transfer (resten) är en uppsättning konventioner som används i definitionen av API: er. Genom att begränsa API: er till dessa konventioner, modul utvecklaren, definiera gränssnittet och de programmerare som implementerar software för att anropa modulen, är förenklas. En API som överensstämmer med de övriga konventionerna sägs vara vilsamt. I huvudsak inför resten stil sex begränsningar som ett API måste följa för att vara vilsamt. De sex övriga begränsningarna är: klient-server, statslösa, cache, enhetligt gränssnitt, skiktad system och kod-on-demand.
RESTful API: er har blivit standard stil för att bygga norrgående APIs mellan SDN controller och SDN program.

Se: programvara definieras nätverk arkitektur främjar flexibilitet, prestanda och säkerhet

Klient-Server-villkor

RESTEN antas att begreppen webbaserad tillgång används för samverkan mellan ansökan och tjänsten som finns på någon sida av API. Klient-server villkoret dikterar därför att interaktion mellan programmet och servern är i klient-server begäran/svar stil. Principen för denna begränsning är separation av user interface oro från data storage oro. Detta avskiljande tillåter klient- och serverkomponenter att utvecklas självständigt och stöder överförbarheten av serversidan fungerar till flera plattformar.

Statslösa Constraint

Statslösa villkoret innebär helt enkelt att ingen sida av en API interaktion behåller statusinformation som är relaterad till denna interaktion. Så, varje begäran från en klient till en server, och varje svar från servern måste innehålla all information som behövs för att förstå begäran är att få den önskade informationen i svaret och kan inte dra nytta av alla lagrade sammanhang på servern. En konsekvens är att någon "minne" av en transaktion hålls i ett sessionstillstånd höll helt på klienten. Eftersom servern inte behåller något protokoll från klientens tillstånd, är resultatet en mer effektiv SDN controller. En annan konsekvens är att om klienten och servern finns på olika maskiner, och därför kommunicera via ett protokoll, att protokollet inte behöver vara anslutning orienterade.

Cache-villkor

Gömställen begränsningen kräver att data i ett svar på en begäran implicit eller explicit märkas som cachebara eller icke-cachebara. Om ett svar är cachebara, sedan ges en cache rätt att återanvända dessa svarsdata för senare, motsvarande begäran. Det vill säga ges klienten tillåtelse att komma ihåg dessa data eftersom uppgifterna inte sannolikt kommer att ändra på serversidan. Därför kan efterföljande begäranden för samma data hanteras lokalt på klienten, att minska overhead mellan klient och server, och att minska serverns behandling börda.

Enhetligt gränssnitt Constraint

Villkoret är faktiskt en uppsättning sub restriktioner som begränsar de sätt som interaktionen definieras till en enhetlig stil. Den bygger på att identifiera resurser på ett enhetligt sätt, som med en URI (uniform resource identifier); begränsar typerna av representationer, som JSON, XML och HTML; som kräver att meddelanden vara självbeskrivande (innehåller nödvändig information för bearbetning), och använda en Web stil referera till objekt och resurser. Fördelen med denna begränsning, för en SDN miljö, är att olika applikationer, kanske skrivs på olika språk, kan åberopa samma controller tjänsten via en REST API.

Skiktad System Constraint

Skiktad system villkoret innebär helt enkelt att en viss funktion är uppbyggd i lager, med varje lager endast ha direkt interaktion med lagren omedelbart över och under. Detta är en ganska standard arkitektur strategi för protokollet arkitekturer, OS design och tjänster systemdesign

Kod-on-Demand Constraint

Med det här villkoret har en klientkomponent tillgång till en uppsättning resurser, men inte kunskapen om hur bearbeta dem. Den skickar en begäran till en fjärrserver för kod som representerar den know-how, får den koden, och kör den lokalt. Tillåter en klient att ladda ner applets eller skript minskar antalet funktioner som måste genomföras innan installation och förbättrar system utbyggbarhet

Slutsats

RESTful API: er används ofta av SDN leverantörer och har bidragit till den snabba tillväxten av SDN distributioner.
För en lista över alla mina artiklar, gå till williamstallings.com/Articles