Introduzione
In questo tutorial discuteremo il concetto di porte e come funzionano con gli indirizzi IP. Se non hai letto il nostro articolo sugli indirizzi IP e hai bisogno di un pennello, puoi trovare l’articolo qui. Se si comprendono i concetti di indirizzi IP, quindi consente di passare alle porte TCP e UDP e come funzionano.
I dispositivi e i computer connessi a Internet utilizzano un protocollo chiamato TCP / IP per comunicare tra loro. Quando un computer di New York vuole inviare un pezzo di dati a un computer in Inghilterra, deve conoscere l’indirizzo IP di destinazione a cui desidera inviare le informazioni. Tali informazioni vengono inviate più spesso tramite due metodi, UDP e TCP.
I due cavalli di battaglia di Internet: UDP e TCP
UDP? TCP? So che ti stai confondendo, ma prometto che lo spiegherò in termini molto basilari in modo che tu possa capire questo concetto.
TCP sta per Transmission Control Protocol. Utilizzando questo metodo, il computer che invia i dati si connette direttamente al computer a cui sta inviando i dati e rimane connesso per tutta la durata del trasferimento. Con questo metodo, i due computer possono garantire che i dati siano arrivati in modo sicuro e corretto, quindi disconnettono la connessione. Questo metodo di trasferimento dei dati tende ad essere più veloce e più affidabile, ma mette un carico maggiore sul computer in quanto deve monitorare la connessione e i dati che lo attraversano. Un confronto di vita reale a questo metodo sarebbe quello di prendere il telefono e chiamare un amico. Hai una conversazione e quando è finita, entrambi riagganciare, rilasciando la connessione.
UDP sta per User Datagram Protocol. Usando questo metodo, il computer che invia i dati confeziona le informazioni in un bel piccolo pacchetto e le rilascia nella rete con la speranza che raggiunga il posto giusto. Ciò significa che UDP non si connette direttamente al computer ricevente come fa TCP, ma piuttosto invia i dati e si basa sui dispositivi tra il computer mittente e il computer ricevente per ottenere i dati dove dovrebbe andare correttamente. Questo metodo di trasmissione non fornisce alcuna garanzia che i dati inviati raggiungeranno mai la loro destinazione. D’altra parte, questo metodo di trasmissione ha un sovraccarico molto basso ed è quindi molto popolare da utilizzare per servizi che non sono così importanti per lavorare al primo tentativo. Un confronto che puoi usare per questo metodo è il semplice vecchio servizio postale degli Stati Uniti. Si inserisce la posta nella casella di posta e spero che il servizio postale otterrà nella posizione corretta. Il più delle volte lo fanno, ma a volte si perde lungo la strada.
Ora che hai capito cosa sono TCP e UDP, possiamo iniziare a discutere le porte TCP e UDP in dettaglio. Passiamo alla sezione successiva in cui possiamo descrivere meglio il concetto di porte.
Porte TCP e UDP
Come sapete ogni computer o dispositivo su Internet deve avere un numero univoco assegnato ad esso chiamato l’indirizzo IP. Questo indirizzo IP viene utilizzato per riconoscere il tuo computer particolare dai milioni di altri computer connessi a Internet. Quando le informazioni vengono inviate via Internet al computer come fa il computer accetta tali informazioni? Accetta tali informazioni utilizzando le porte TCP o UDP.
Un modo semplice per capire le porte è immaginare che il tuo indirizzo IP sia un decoder via cavo e le porte siano i diversi canali su quel decoder via cavo. La società via cavo sa come inviare il cavo al decoder via cavo in base a un numero di serie univoco associato a quella casella (indirizzo IP), e quindi si ricevono i singoli spettacoli su canali diversi (porte).
Le porte funzionano allo stesso modo. Hai un indirizzo IP e quindi molte porte su quell’indirizzo IP. Quando dico molti, intendo molti. Puoi avere un totale di 65.535 porte TCP e altre 65.535 porte UDP. Quando un programma sul computer invia o riceve dati su Internet invia tali dati a un indirizzo ip e una porta specifica sul computer remoto e riceve i dati su una porta solitamente casuale sul proprio computer. Se utilizza il protocollo TCP per inviare e ricevere i dati, si connetterà e si legherà a una porta TCP. Se utilizza il protocollo UDP per inviare e ricevere dati, utilizzerà una porta UDP. Figura 1, sotto, è una rappresentazione di un indirizzo IP diviso nelle sue numerose porte TCP e UDP. Note that once an application binds itself to a particular port, that port can not be used by any other application. It is first come, first served.
<>
0 | 1 | 2 | 3 | 4 | 5 | .. | .. | .. | .. | .. | .. | .. | .. | 65531 | 65532 | 65533 | 65534 | 65535 |
Tutto questo probabilmente ti sembra ancora confuso, e non c’è niente di sbagliato in questo, poiché questo è un concetto complicato da afferrare. Pertanto, ti darò un esempio di come funziona nella vita reale in modo da poter avere una migliore comprensione. Useremo i server web nel nostro esempio come tutti sapete che un server web è un computer che esegue un’applicazione che consente ad altri computer di connettersi ad esso e recuperare le pagine web memorizzate lì.
Affinché un server Web accetti connessioni da computer remoti, come te stesso, deve associare l’applicazione del server Web a una porta locale. Userà quindi questa porta per ascoltare e accettare connessioni da computer remoti. I server Web in genere si legano alla porta TCP 80, che è ciò che il protocollo http utilizza per impostazione predefinita, quindi attenderanno e ascolteranno le connessioni dai dispositivi remoti. Una volta che un dispositivo è collegato, invierà le pagine Web richieste al dispositivo remoto e, al termine, disconnetterà la connessione.
D’altra parte, se sei l’utente remoto che si connette a un server Web, funzionerebbe al contrario. Il browser Web sceglierebbe una porta TCP casuale da un certo intervallo di numeri di porta e tenterebbe di connettersi alla porta 80 sull’indirizzo IP del server Web. Una volta stabilita la connessione, il browser Web invierà la richiesta per una determinata pagina Web e la riceverà dal server Web. Quindi entrambi i computer disconnetteranno la connessione.
Ora, cosa succede se si desidera eseguire un server FTP, che è un server che consente di trasferire e ricevere file da computer remoti, sullo stesso server web. I server FTP utilizzano le porte TCP 20 e 21 per inviare e ricevere informazioni, in modo da non avere conflitti con il server Web in esecuzione sulla porta TCP 80. Pertanto, l’applicazione server FTP all’avvio si legherà alle porte TCP 20 e 21 e attenderà le connessioni per inviare e ricevere dati.
La maggior parte delle applicazioni principali ha una porta specifica su cui ascoltano e registrano queste informazioni con un’organizzazione chiamata IANA. È possibile visualizzare un elenco di applicazioni e le porte che utilizzano nel Registro IANA. Con gli sviluppatori che registrano le porte che le loro applicazioni utilizzano con IANA, le probabilità che due programmi tentino di utilizzare la stessa porta, e quindi causino un conflitto, saranno diminuite.
Lawrence Abrams
Bleeping Computer Advanced Internet Concepts Tutorial
BleepingComputer.com: Supporto computer& Tutorial per l’utente di computer inizio.