FTP skickar kontrollinformation utanför band främst för
Effektivitet och enkelhet . Här är en uppdelning:
* Effektivitet: Om kontroll och data skickades in-band (över samma anslutning), måste varje kommando och svar noggrant analyseras i dataströmmen. Detta lägger till betydande omkostnader och komplexitet. Att separera dem möjliggör snabbare bearbetning av kontrollkommandon och minskar risken för missuppfattningar. Kontrollanslutningen är vanligtvis lätt och behöver bara hantera relativt korta textkommandon och svar. Dataanslutningen kan sedan fokusera helt på effektiv överföring av stora filer.
* enkelhet: Att hålla kontroll- och datakanalerna separata förenklar protokollets implementering. Kontrollkanalen använder ett enkelt textbaserat protokoll som är relativt enkelt att analysera och förstå. Datakanalen kan sedan använda olika överföringsmetoder (t.ex. binär, ASCII) utan att påverka kontrollanslutningen. Föreställ dig svårigheten att bädda in kommandon i en binär dataström - det kräver omfattande felkontroll och analys av tillförlitligt extrahera och tolka dem.
* robusthet: Att separera kanalerna ger mer motståndskraft. Om dataanslutningen avbryts (t.ex. på grund av nätverksproblem) kan kontrollanslutningen förbli aktiv, vilket gör att användaren kan utfärda kommandon och potentiellt återuppta överföringen. Däremot skulle ett in-band-tillvägagångssätt sannolikt förlora hela anslutningen om dataströmmen stördes.
I huvudsak möjliggör kontroll utanför band i FTP en ren separering av problem, vilket leder till ett mer effektivt, enklare och mer robust filöverföringssystem. Även om det kan verka mindre elegant vid första anblicken, uppväger de praktiska fördelarna avsevärt potentiella nackdelar.