Voor het beheren van de verbinding tussen netwerkprotocollen van de toepassingslaag, gebruiken TCP en UDP poorten en sockets. TCP en UDP werken op de host-naar-host-laag in het IP-communicatiemodel en bieden host-naar-host communicatieservices voor het protocol van de toepassingslaag. Dit betekent dat een toepassingslaag-protocol zich op één IP-host bevindt die verbinding maakt met een toepassingslaag-protocol op een andere IP-host.
In de meeste situaties hebben deze host-naar-host-verbindingen een scheidingsproces dat wordt uitgevoerd op een host en een clientproces dat op de andere host wordt uitgevoerd. Voorbeelden van deze host-naar-host-verbinding omvatten een webbrowser die verbinding maakt met een webserver; of een SCP-client (Secure Copy Protocol) (zoals WinSCP) die verbinding maakt met een SCP-server.
A poort is een TCP- of UDP-verbindingspunt. Zie ze als recipiënten op een ouderwets telefooncentrale. Er zijn 65, 536 (of 2 ^ 16) poorten beschikbaar voor een host om verbindingen te beheren, genummerd van 0 tot 65, 535 voor elk TCP en UDP. Wanneer u een toepassingenserver maakt die op een IP-host wordt uitgevoerd, configureert u die server die moet worden gebruikt (of gebonden aan) een specifieke TCP- of UDP-poort.
Als u de toepassingslaagserver aan een specifieke poort koppelt, hebt u een bestemming gemaakt waarmee een externe IP-host verbinding kan maken.
Wanneer de externe IP-host verbinding maakt met een toepassingslaagserver, is de verbinding die de host maakt met een poort die op een specifieke IP-host werkt (geïdentificeerd door een IP-adres). Deze koppeling van een IP-adres en een poort als een verbindingseindpunt is een socket .
In die ouderwetse analogie van het schakelbord, heeft de aansluiting twee connectoren die zijn verbonden met de telefoon van elke klant: de ene is een ontvanger en de andere is een stekker. Zie deze connectoren als de poorten, maar omdat de poort is gekoppeld aan een telefoon, maken ze samen een socket, zoals de TCP- of UDP-poort, wanneer een IP-adres is gekoppeld aan een socket.
Om een telefoonverbinding te maken voor een client, neemt de "operator" de plug voor één client en verbindt deze met de socket voor de andere client. Bij IP heeft de clienttoepassing een poort waarop deze werkt, dus op de clienthost bevindt zich een IP-adres en poort voor de clientzijde van de verbinding; dit is een stopcontact.
Aan de serverzijde van de verbinding bevindt zich een IP-adres voor de server en een poort om een socket op de serverhost te maken. Het tot stand brengen van een verbinding tussen de clienttoepassingslaag en de servertoepassingslaag is een virtuele verbinding tussen deze twee sockets.
Dit voorbeeld leidt u door het proces van verbinding maken met een website, zoals Wiley. U zou uw webbrowser openen (zoals Mozilla Firefox) en type www. wiley. com in de adresbalk. Uw webbrowser maakt gebruik van een DNS-server (Domain Name System) om de naam www op te zoeken. wiley. com om zijn IP-adres te identificeren. Voor dit voorbeeld is het adres 192. 0. 2. 100.
Firefox maakt een verbinding met het adres 192. 0. 2. 100 en naar de poort waar de webserver van de toepassingslaag actief is. Firefox weet welke poort moet worden verwacht, omdat het een bekende poort is. De bekende poort voor een webserver is TCP-poort 80.
De doel-socket die Firefox probeert aan te sluiten, wordt geschreven als -aansluiting: poort, of in dit voorbeeld 192. 0. 2. 100: 80. Dit is de serverzijde van de verbinding, maar de server moet weten waar de webpagina moet worden verzonden die u wilt bekijken in Mozilla Firefox, dus u hebt ook een socket voor de clientzijde van de verbinding.
De clientzijdige verbinding bestaat uit uw IP-adres, zoals 192. 168. 1. 25 en een willekeurig gekozen dynamisch poortnummer. De socket geassocieerd met Firefox ziet eruit als 192. 168. 1. 25: 49175. Omdat webservers werken op TCP-poort 80, zijn beide sockets TCP-sockets, terwijl als u verbinding maakt met een server die op een UDP-poort werkt, beide server en client sockets zijn UDP-sockets.