Come vengono mantenute più connessioni con una singola porta


1

Dopo aver letto il pacchetto e la commutazione di circuito, ho appreso che i server mantengono connessioni multiple con una porta passando una connessione client stabilita a un processo figlio; e che tutti i nodi coinvolti nella route di connessione mantengano una tabella ID connessione in modo che i pacchetti possano essere inoltrati correttamente al nodo successivo.

Ho ancora qualche domanda a riguardo:

  • I pacchetti necessitano di ulteriori dati di intestazione oltre a un numero ID di connessione una volta stabilita una connessione con un altro programma?

  • Dopo aver effettuato una connessione, dire porta 80; i dati passano ancora attraverso quella porta o l'ID di connessione stabilito ha specificato una nuova porta aperta da utilizzare per ulteriori comunicazioni?

  • In corrispondenza della mia domanda qui ; Esiste un'effettiva separazione fisica tra connessioni diverse? O è puramente teorico / virtuale?

Risposte:


4

Sembra che tu stia confondendo le idee di commutazione dei circuiti con TCP / IP.

Talk of Port 80 suggerisce il protocollo HTTP su TCP e IP. Con TCP / IP i nodi intermedi (router) non devono tenere traccia degli "ID di connessione". Le tabelle di routing gestite dinamicamente di intervalli di indirizzi IP vengono utilizzate per inoltrare i pacchetti. Non è necessario che i pacchetti successivi seguano lo stesso percorso.

Il server tiene traccia delle connessioni TCP utilizzando l'indirizzo IP e il numero di porta TCP del client, nonché il numero di porta del server (e l'indirizzo IP del server, i server possono avere più indirizzi IP). Una connessione è identificata dalla combinazione di queste quattro informazioni. Il numero di porta del client viene solitamente scelto in modo pseudo-casuale dal client.

Si noti che UDP è senza connessione, non esiste un concetto di connessione UDP. Molti protocolli a livello di applicazione Internet utilizzano UDP come protocollo a livello di trasporto.

I pacchetti necessitano di ulteriori dati di intestazione oltre a un numero ID di connessione una volta stabilita una connessione con un altro programma?

Le intestazioni TCP e le intestazioni IP nei pacchetti TCP / IP non contengono "ID di connessione" in quanto tali.

Dopo aver effettuato una connessione, dire porta 80; i dati passano ancora attraverso quella porta,

Sì.

o l'ID di connessione stabilito ha specificato una nuova porta aperta da utilizzare per ulteriori comunicazioni?

Come ho detto sopra, gli ID di connessione, come tali, non esistono in TCP / IP. A volte un protocollo di livello superiore stabilisce comunicazioni su altre porte (ad es. Controllo FTP e porte dati).

In corrispondenza della mia domanda qui; Esiste un'effettiva separazione fisica tra connessioni diverse?

Non solitamente. Un server può avere più schede di rete che servono diversi gruppi di client.

O è puramente teorico / virtuale?

I numeri di porta e simili sono solo numeri nelle intestazioni dei pacchetti.


Ok, quindi con quali protocolli vengono stabiliti i percorsi di connessione? L'articolo di "commutazione di pacchetto" di Wikipedia afferma che "nella commutazione di pacchetto orientata alla connessione, una connessione viene definita e preallocata in ciascun nodo interessato. I pacchetti includono un identificatore di connessione anziché le informazioni sull'indirizzo e vengono consegnati in ordine". Quindi quali protocolli o tipi di programmi stabilirebbero questo tipo di connessione?
Griffin,

1
@Griffin: ATM istituisce "circuiti virtuali". ISDN stabilisce circuiti digitali, Frame Relay utilizza circuiti virtuali permanenti o commutati. Nessuno di questi è rilevante per gli utenti finali dei servizi Internet. L'IP può essere trasferito su questi altri protocolli ma è in gran parte ignaro.
RedGrittyBrick

0

Dopo aver letto il pacchetto e la commutazione di circuito, ho appreso che i server mantengono connessioni multiple con una porta passando una connessione client stabilita a un processo figlio; e che tutti i nodi coinvolti nella route di connessione mantengano una tabella ID connessione in modo che i pacchetti possano essere inoltrati correttamente al nodo successivo.

Questo paragrafo è davvero confuso . All'inizio fai riferimento al passaggio al livello di rete. Quindi fai riferimento alle connessioni effettuate sul livello di trasporto. Quindi in qualche modo li combini insieme, anche se sono livelli davvero diversi. Considera che la commutazione dei circuiti potrebbe essere solo un'idea e potrebbe o non potrebbe essere stata utilizzata in passato. Tuttavia, una volta che ti riferisci alle porte ti riferisci a TCP / IP che non utilizza affatto la commutazione di circuito ...

I pacchetti necessitano di ulteriori dati di intestazione oltre a un numero ID di connessione una volta stabilita una connessione con un altro programma? Dopo aver effettuato una connessione, dire porta 80; i dati passano ancora attraverso quella porta o l'ID di connessione stabilito ha specificato una nuova porta aperta da utilizzare per ulteriori comunicazioni?

Ti riferisci a una connessione con un programma, con utilizzeresti le porte TCP / IP. In tal caso, nessun id di connessione è stato associato al pacchetto. In caso di commutazione del circuito questo sarebbe necessario.

Esiste un'effettiva separazione fisica tra connessioni diverse? O è puramente teorico / virtuale?

Tutto passa sullo stesso cavo, quindi potrebbe essere considerato virtuale piuttosto che fisico.

Una connessione stabilita è solo un modo per dire "Comunicherò su questo post su questo indirizzo". Sì, una connessione è semplicemente un indirizzo IP e una coppia di porte ...


Non utilizzare Wikipedia esclusivamente per ottenere informazioni su questo, prova ad immergerti in un libro su reti di computer ...

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.