MTE förklarar: Vad är en RFC?
Du har antagligen sett termen RFC kastad runt med hänvisning till protokoll och andra program som du har använt. Många utvecklare innehåller referenser till RFC i ändringsnoterna till nya versioner av program som de släpper ut. Varför är detta? Vad är det här mystiska RFC som alla fortsätter att prata om? Som med alla andra till synes obskyra begrepp på Internet finns det förklaringar, men de talar inte nödvändigtvis på ett språk som alla kan förstå. Och det är därför MTE ska ta sig tid att förklara RFCs till dig!
Förstå RFCs
För att kunna förstå vad en RFC är, måste man också förstå vad som föddes dem, och varför de var nödvändiga vid den tidpunkt då de först skapades.
För länge sedan kördes Internet på ett litet nätverk av datorer som kallas ARPANET. Det var ett projekt från Förenta staternas försvarsdepartement. När Internet föddes fanns det ett behov av protokoll som skulle kunna kommunicera så att sättet på vilket datorsamtal skulle kunna vara helt standardiserat. Följaktligen föddes "begäran om kommentarer" (RFC).
En RFC är ett publicerat dokument av en organisation som heter Internet Engineering Task Force (IETF). RFC: er håller reglerna för varje enskilt protokoll du använder för att kommunicera via webben. Du hittar mycket bekant som RFC 2616 (HTTP) och RFC 3920 (XMPP, som används i Facebook Messenger). Alla dessa saker är tillgängliga för alla att se på IETF: s RFC-databas.
Ursprungligen var RFCs - som namnet implicit - dokument som begärde kommentarer. Folk skulle kunna hålla diskussioner om hur protokollen skulle fungera bättre och hur de kan vara katastrofala felaktiga. Idag är RFCs mer av en deklaration än en begäran. De visar helt enkelt hur allting fungerar och det handlar om det.
Enkelt uttryckt kommer många RFC: er att ge allmänheten alla detaljer som de behöver veta för att fullt ut förstå hur Internetprotokoll fungerar. Men inte alla RFC är deklarationer av internetprotokoll. Några av dem finns för att visa utvecklare vad de bästa metoderna är för att interagera med ett protokoll eller till och med att ge information om några andra allmänna ämnen. Andra är bara skämt (som denna April Fools 'RFC). Dessutom hittar du inte alla protokoll på IETFs databas. Ett antal av dem (som BitTorrent-protokollet) finns i andra databaser.
Varför RFCs är viktiga
När jag först utvecklade program och plugins som använde HTTP-protokollet behövde jag en referenspunkt för att lära mig hur det fungerade. Det spelar ingen roll hur mycket du vet hur man kodar; om du inte kan ta reda på hur ett protokoll fungerar kan du inte använda det ordentligt. RFC jag länkade till ovan (2616) var till stor hjälp när jag förstod några detaljer.
Den punkt jag får på är att RFC kan användas som referensguide till protokoll som ännu inte helt förklarats i enklare termer. Det hjälper pionjärer att enkelt hitta de resurser de behöver för att utveckla de applikationer du älskar. Där har du det!
Några fler frågor?
Om du, efter att ha läst detta, fortfarande har frågor om RFC, IETF eller andra relaterade organisationer, lägg dem in i en kommentar nedan.