In de afgelopen weken heb ik nagedacht over wat het voor mensen zo moeilijk maakt om te begrijpen hoe het internet werkt. Het concept van een netwerk is immers eenvoudig genoeg om te begrijpen. Op een bepaald moment realiseerde ik me dat de meeste mensen echt niet begrijpen wat een protocol is en hoe het relevant is voor communicatie via de draad. Of misschien zijn er mensen die begrijpen wat een protocol is, in essentie, maar niet begrijpen hoe hun verschillende lagen verschillende rollen spelen. Ik ben van plan dit op te helderen en uit te leggen hoe protocollen een revolutie teweeg hebben gebracht op het internet en de enige ether van al onze online communicatie zijn geworden.

Het internetprotocol (IP)

Een IP-adres vormt een essentieel onderdeel van het internetprotocol (IP). Daarom is de volledige naam van een IP-adres het internetprotocol-adres. Het internetprotocol regelt de meest elementaire onderdelen van internetcommunicatie, zoals pakkettransmissie. Alles wat uit uw computer gaat gebruikt eerst het IP-protocol voordat u iets anders doet.

Daarna vertakt het zich in twee soorten protocollen die een laag vormen (de transportlaag ). bovenop IP: verbonden en verbindingloos. Ze zijn respectievelijk bekend als het transmissiecontroleprotocol (TCP, of TCP / IP) en het gebruikersdatagramprotocol (UDP) .

Met TCP moet u een communicatiemiddel met de server tot stand brengen (zoals te zien is in de bovenstaande afbeelding) voordat u toegang krijgt tot een virtuele ruimte die voor u is toegewezen. Dit lijkt veel op het opzetten van een telefoongesprek. De telefoon rinkelt, en zodra het ontvangende einde oppakt, kunnen jullie allebei een gesprek voeren. U hebt absoluut TCP nodig wanneer u gegevens verzendt en de ontvangst moet worden bevestigd.

UDP werkt meer als het postkantoor. U kunt op elk moment een bericht naar een server sturen zonder een verbinding tot stand te brengen. Het enige dat u moet weten, is het bestemmingsadres en u verzendt een datagrampakket naar dat adres, dat het dienovereenkomstig zal lezen, interpreteren en beantwoorden. De verschillen in de interactie tussen computers via TCP en UDP worden weergegeven in de bovenstaande afbeelding. Sommige applicaties geven de voorkeur aan UDP (zoals BitTorrent), omdat het upstream-bandbreedte niet verspilt door bevestigingen (bevestiging of ACK, pakketten) te verzenden van elk bit van overgedragen gegevens. In plaats daarvan worden gegevens die niet zijn verzonden, eenvoudig opnieuw verzonden bij verdere verzoeken. Hierdoor is UDP aanzienlijk sneller te downloaden.

Deze twee protocollen worden het meest gebruikt in de Internet Protocol (IP) Suite. Omwille van de eenvoud zal dit artikel niet in andere delen van de suite duiken.

Application Layer-protocollen

We zijn ver voorbij de dagen dat eenvoudige tekstberichten via draden werden verzonden om informatie en opdrachten door te geven aan verschillende servers. Je hebt nu YouTube en verschillende andere websites die je dagelijks kunt bekijken en bekijken. Voor geavanceerde internetcommunicatie moeten we andere protocollen hebben die werken op een laag bovenop TCP en UDP, ook wel de toepassingslaag genoemd.

De applicatielaag is precies wat het suggereert. Het is een verzameling protocollen die bovenop TCP en UDP functioneren en die extra manieren bieden waarop computers met elkaar kunnen communiceren. Uw BitTorrent-applicatie maakt gebruik van het BitTorrent-protocol. Uw browser gebruikt het Hypertext Transfer Protocol (HTTP) en HTTP Secure ("https: //", die werkt via een versleutelde SSL / TLS-verbinding). Hieronder ziet u een voorbeeld van hoe een typisch toepassingslaag-protocol (HTTP Secure, in dit voorbeeld) betrekking heeft op alle andere protocollen die eronder lopen.

E-mailclients gebruiken vaak het IMAP (Internet Message Access Protocol) of het POP-bericht (Post Office Protocol) voor inkomende berichten. Het Simple Mail Transfer Protocol (SMTP) wordt gebruikt voor uitgaande berichten.

Er zijn letterlijk duizenden protocollen die elk door een toepassing worden gebruikt om de functionaliteit te optimaliseren en zoveel mogelijk functies toe te voegen, zodat u tevreden kunt zijn met de producten die u gebruikt. Nieuwe versies van applicaties zijn vaak compatibel met nieuwere protocolversies, wat bijdraagt ​​aan de sneeuwbal van functies die je al leuk vindt. Dat is hoe sommige verbluffende functies daadwerkelijk op bepaalde applicaties verschijnen.

Misschien begrijp je nu waarom het voor sommige online games is dat je moet upgraden naar een nieuwe versie om op bepaalde servers te kunnen blijven spelen. De servers gebruiken waarschijnlijk versies van hun eigen communicatieprotocol die niet langer compatibel zijn met uw spel. Deze problemen worden aangepakt terwijl protocollen blijven verbeteren en de obstakels verminderen die voorkomen dat gebruikers van oudere applicaties communiceren met gebruikers van nieuwere versies.

Snap je nog steeds niet echt iets?

Als je na het lezen nog steeds stumped bent over protocollen, dan heb ik mijn werk niet gedaan! Sta me toe het af te maken door je vraag in een reactie hieronder te plaatsen!

Image crdit: netwerkkabels RJ45 verbonden met een switch door BigStockPhoto