Come configurare smartphone e PC. Portale informativo
  • casa
  • Windows 7, XP
  • Servizi applicati di reti tcp ip. Che cos'è il protocollo TCP-IP

Servizi applicati di reti tcp ip. Che cos'è il protocollo TCP-IP

Protocollo TCP/IP o come funziona Internet per i manichini:
Internet si basa su un insieme (stack) di protocolli TCP / IP: si tratta di un semplice insieme di regole ben note per lo scambio di informazioni.
Hai mai osservato il panico e la completa impotenza del contabile quando cambia la versione del software per ufficio - al minimo cambiamento nella sequenza dei clic del mouse necessari per eseguire le normali azioni? O hai dovuto vedere una persona cadere in uno stato di torpore quando cambiava l'interfaccia del desktop? Per non essere un idiota, devi capire l'essenza. La base delle informazioni ti dà l'opportunità di sentirti sicuro e libero - di risolvere rapidamente problemi, formulare correttamente domande e comunicare normalmente con il supporto tecnico.

Come funziona Internet TCP/IP sono intrinsecamente semplici e assomigliano al lavoro del post sovietico:
Prima scrivi una lettera, poi la metti in una busta, la chiudi, scrivi gli indirizzi del mittente e del destinatario sul retro della busta e poi la porti all'ufficio postale più vicino. Quindi la lettera passa attraverso una catena di uffici postali fino all'ufficio postale più vicino del destinatario, da dove viene consegnata dalla zia-postino all'indirizzo specificato del destinatario e lasciata nella sua cassetta della posta (con il numero del suo appartamento) o consegnata in persona. Quando il destinatario della lettera vuole risponderti, scambierà gli indirizzi del destinatario e del mittente nella sua lettera di risposta e la lettera ti verrà inviata lungo la stessa catena, ma nella direzione opposta.

Indirizzo del mittente:
Da chi: Ivanov Ivan Ivanovich
Località: Ivanteevka, st. Bolshaya, 8, apt. 25
Indirizzo del destinatario:
A: Petrov Petr Petrovich
Dove: Mosca, corsia Usachevsky, 105, apt. 110

Considera l'interazione di computer e applicazioni su Internet e anche su una rete locale. L'analogia con la posta ordinaria sarà quasi completa.
Ogni computer (noto anche come nodo, host) in Internet ha anche un indirizzo univoco chiamato IP (Internet Pointer), ad esempio: 195.34.32.116. Un indirizzo IP è composto da quattro numeri decimali (da 0 a 255) separati da punti. Ma conoscere solo l'indirizzo IP di un computer non è ancora sufficiente, dal momento che alla fine, non sono i computer stessi che scambiano informazioni, ma le applicazioni che girano su di essi. E più applicazioni possono essere eseguite contemporaneamente su un computer (ad esempio un server di posta, un server Web, ecc.). Per la consegna di una normale lettera cartacea, non è sufficiente conoscere solo l'indirizzo della casa, è necessario conoscere anche il numero dell'appartamento. Inoltre, ogni applicazione software ha un numero simile chiamato numero di porta. La maggior parte delle applicazioni server ha numeri standard, ad esempio: il servizio di posta è legato alla porta 25 (si dice anche: "ascolta" la porta, riceve messaggi su di essa), il servizio web è legato alla porta 80, FTP alla porta 21, e così via. Pertanto, abbiamo la seguente analogia quasi completa con il nostro solito indirizzo postale: "indirizzo di casa" = "IP computer" e "numero appartamento" = "numero porta"

Indirizzo di partenza:
IP: 82.146.49.55
Porta: 2049
Indirizzo di destinazione:
IP: 195.34.32.116
Porta: 53
Dati del pacchetto:
...
Naturalmente, i pacchetti contengono anche informazioni di servizio, ma questo non è importante per comprenderne l'essenza.

La combinazione di "indirizzo IP e numero di porta" - chiamata "socket".
Nel nostro esempio, inviamo un pacchetto dal socket 82.146.49.55:2049 al socket 195.34.32.116:53, ad es. il pacchetto andrà al computer con l'indirizzo IP 195.34.32.116, sulla porta 53. E la porta 53 corrisponde al server di risoluzione dei nomi (server DNS), che riceverà questo pacchetto. Conoscendo l'indirizzo del mittente, questo server sarà in grado, dopo aver elaborato la nostra richiesta, di formare un pacchetto di risposta che andrà nella direzione opposta al socket del mittente 82.146.49.55:2049, che sarà il socket del destinatario per il server DNS.

Di norma, l'interazione avviene secondo lo schema "client-server": il "client" richiede alcune informazioni (ad esempio una pagina del sito web), il server riceve la richiesta, la elabora e invia il risultato. I numeri di porta delle applicazioni server sono ben noti, ad esempio: un server di posta SMTP "ascolta" sulla porta 25, un server POP3 che legge la posta dalle tue caselle di posta "ascolta" sulla porta 110, un server web sulla porta 80, ecc. i programmi sul computer di casa sono client, ad esempio il client di posta Outlook, i browser Web IE, FireFox, ecc. I numeri di porta sul client non sono fissi come quelli del server, ma vengono assegnati dinamicamente dal sistema operativo. Le porte server fisse sono solitamente numerate fino a 1024 (ma ci sono eccezioni) e le porte client sono solitamente numerate dopo 1024.

IP è l'indirizzo di un computer (nodo, host) sulla rete e la porta è il numero di un'applicazione specifica in esecuzione su questo computer. Tuttavia, è difficile per una persona memorizzare indirizzi IP digitali: è molto più conveniente lavorare con nomi alfabetici. Dopotutto, è molto più facile ricordare una parola che un insieme di numeri. E così è stato: qualsiasi indirizzo IP numerico può essere associato a un nome alfanumerico. Di conseguenza, ad esempio, invece di 82.146.49.55, puoi utilizzare il nome www.ofnet.ru. Il servizio di nomi di dominio è responsabile della conversione di un nome di dominio in un indirizzo IP digitale - DNS (Domain Name System).

Digitiamo il nome di dominio www.yandex.ru nella barra degli indirizzi del browser e facciamo clic. Quindi il sistema operativo esegue le seguenti azioni:
- Viene inviata una richiesta (più precisamente un pacchetto con una richiesta) al server DNS sul socket 195.34.32.116:53.
La porta 53 è per DNS Server, l'applicazione per la risoluzione dei nomi. E il server DNS, dopo aver elaborato la nostra richiesta, restituisce l'indirizzo IP che corrisponde al nome inserito. Il dialogo è il seguente: quale indirizzo IP corrisponde al nome www.yandex.ru? Risposta: 82.146.49.55.
- Successivamente, il nostro computer stabilisce una connessione alla porta 80 del computer 82.146.49.55 e invia una richiesta (un pacchetto con una richiesta) per ricevere la pagina www.yandex.ru. L'80a porta corrisponde al server web. L'80a porta non è scritta nella barra degli indirizzi del browser, perché utilizzato per impostazione predefinita, ma puoi specificarlo esplicitamente dopo i due punti - http://www.yandex.ru:80.
- Dopo aver accettato una nostra richiesta, il server web la elabora e in diversi pacchetti ci invia una pagina in HTML - un linguaggio di markup di testo che il browser comprende. Il nostro browser, ricevuta la pagina, la visualizza. Di conseguenza, vediamo sullo schermo la pagina principale di questo sito.

Perché ho bisogno di sapere questo?
Ad esempio, hai notato lo strano comportamento del tuo computer: attività di rete incomprensibile, freni, ecc. Cosa fare? Apri la console (premi "Start" - "Esegui" - digita cmd - "Ok"). Nella console, digita il comando netstat -an e fai clic. Questa utility visualizzerà un elenco di connessioni stabilite tra i socket del nostro computer e i socket degli host remoti.
Se vediamo nella colonna "Indirizzo esterno" gli indirizzi IP di altre persone, e attraverso i due punti la 25a porta, cosa può significare? (Ricordi che la porta 25 corrisponde al server di posta?) Ciò significa che il tuo computer ha stabilito una connessione con alcuni server di posta e invia alcune lettere attraverso di esso. E se il tuo client di posta (ad esempio Outlook) non è in esecuzione in quel momento e se ci sono ancora molte connessioni di questo tipo sulla porta 25, allora, probabilmente, nel tuo computer si è avviato un virus che invia spam per tuo conto o inoltra i numeri della tua carta di credito insieme alle password per i criminali informatici.
Inoltre, è necessaria una comprensione dei principi di Internet per la corretta configurazione di un firewall (firewall) - un programma (spesso fornito con software antivirus), progettato per filtrare i pacchetti "amichevoli" e "nemici". Ad esempio, il tuo firewall ti dice che qualcuno vuole connettersi a una porta sul tuo computer. Consentire o negare?

Tutta questa conoscenza è estremamente utile. quando si comunica con il supporto tecnico - un elenco di porte che dovrai affrontare:
135-139 - queste porte sono utilizzate da Windows per accedere alle risorse condivise del computer - cartelle, stampanti. Non aprire queste porte verso l'esterno, ad es. alla rete territoriale regionale e a Internet. Dovrebbero essere chiusi con un firewall. Inoltre, se sulla rete locale non vedi nulla nell'ambiente di rete o non ti vedono, probabilmente è dovuto al fatto che il firewall ha bloccato queste porte. Pertanto, per la rete locale, queste porte devono essere aperte e chiuse per Internet.
21 - Porta del server FTP.
25 - porta del server di posta SMTP. Attraverso di esso, il tuo client di posta elettronica invia lettere. L'indirizzo IP del server SMTP e la sua porta (25°) dovrebbero essere specificati nelle impostazioni del tuo client di posta.
110 - Porta del server POP3. Attraverso di esso, il tuo client di posta preleva le lettere dalla tua casella di posta. L'indirizzo IP del server POP3 e la sua porta (110°) dovrebbero essere specificati anche nelle impostazioni del tuo client di posta.
80 - Porta del server WEB.
3128, 8080 - server proxy (configurati nelle impostazioni del browser).

Diversi indirizzi IP speciali:
127.0.0.1 è localhost, l'indirizzo del sistema locale, ad es. l'indirizzo locale del tuo computer.
0.0.0.0 - ecco come vengono designati tutti gli indirizzi IP.
192.168.xxx.xxx- indirizzi che possono essere utilizzati arbitrariamente nelle reti locali, non sono utilizzati nell'Internet globale. Sono univoci solo all'interno della rete locale. È possibile utilizzare gli indirizzi di questo intervallo a propria discrezione, ad esempio, per creare una rete domestica o aziendale.

Che è successo subnet mask e gateway predefinito, è un router e un router? Questi parametri sono impostati nelle impostazioni della connessione di rete. I computer sono collegati a reti locali. In una rete locale, i computer "si vedono" direttamente solo l'un l'altro. Le reti locali sono collegate tra loro tramite gateway (router, router). La subnet mask viene utilizzata per determinare se il computer ricevente appartiene o meno alla stessa rete locale. Se il computer ricevente appartiene alla stessa rete del computer mittente, allora il pacchetto gli viene trasmesso direttamente, altrimenti il ​​pacchetto viene inviato al gateway predefinito, che poi, lungo le rotte a lui note, trasmette il pacchetto ad un'altra rete, cioè ad un altro ufficio postale (per analogia con la posta cartacea). Così:
TCP/IPè il nome di un insieme di protocolli di rete. Infatti, il pacchetto trasmesso attraversa diversi strati. (Come nell'ufficio postale: prima si scrive una lettera, poi la si mette in una busta con un indirizzo, poi si mette un francobollo all'ufficio postale, ecc.).
protocollo IPè un protocollo del cosiddetto livello di rete. Il compito di questo livello è di consegnare pacchetti IP dal computer del mittente al computer del destinatario. Oltre ai dati stessi, i pacchetti di questo livello hanno l'indirizzo IP del mittente e l'indirizzo IP del destinatario. I numeri di porta non vengono utilizzati a livello di rete. A quale porta = applicazione è indirizzato questo pacchetto, se questo pacchetto è stato consegnato o è stato perso, a questo livello non è noto - questo non è il suo compito, è il compito del livello di trasporto.
TCP e UDP sono protocolli del cosiddetto livello di trasporto. Il livello di trasporto è al di sopra del livello di rete. A questo livello, la porta del mittente e la porta del destinatario vengono aggiunte al pacchetto.
TCPè un protocollo orientato alla connessione con consegna dei pacchetti garantita. Innanzitutto, vengono scambiati pacchetti speciali per stabilire una connessione, accade qualcosa come una stretta di mano (-Ciao. -Ciao. -Parliamo? -Dai.). Inoltre, i pacchetti vengono inviati avanti e indietro su questa connessione (c'è una conversazione) e con un controllo se il pacchetto ha raggiunto il destinatario. Se il pacchetto non è arrivato, viene inviato di nuovo ("ripetere, non ho sentito").
UDPè un protocollo senza connessione con consegna dei pacchetti non garantita. (Tipo: ha urlato qualcosa, ma non importa se ti sentono o no).
Sopra il livello di trasporto c'è il livello di applicazione. A questo livello funzionano protocolli come http, ftp, ecc.. Ad esempio HTTP e FTP- utilizzare un protocollo TCP affidabile e il server DNS funziona su un protocollo UDP inaffidabile.

Come posso vedere le connessioni attuali?- utilizzando il comando netstat -an (il parametro n indica di visualizzare gli indirizzi IP invece dei nomi di dominio). Questo comando viene lanciato come segue: "Start" - "Esegui" - digitiamo cmd - "Ok". Nella console che appare (finestra nera), digita il comando netstat -an e fai clic. Il risultato sarà un elenco di connessioni stabilite tra i socket del nostro computer e i nodi remoti. Ad esempio otteniamo:

In questo esempio, 0.0.0.0:135 significa che il nostro computer ascolta (ASCOLTO) la 135a porta su tutti i suoi indirizzi IP ed è pronto ad accettare connessioni da chiunque (0.0.0.0.0.0) tramite il protocollo TCP.
91.76.65.216:139 - il nostro computer è in ascolto sulla porta 139 sul suo indirizzo IP 91.76.65.216.
La terza riga indica che è stata stabilita una connessione (STABILITA) tra la nostra macchina (91.76.65.216:1719) e quella remota (212.58.226.20:80). La porta 80 significa che la nostra macchina ha effettuato una richiesta al server web (ho davvero delle pagine aperte nel mio browser).

(c) I tagli liberi dell'articolo sono miei.
(c) Dubrovin Boris

  • Amministrazione di sistema ,
  • Standard di comunicazione
  • Supponiamo che tu non sia fluente nelle tecnologie di rete e non conosca nemmeno le basi di base. Ma ti è stato assegnato un compito: costruire una rete di informazioni in una piccola impresa il prima possibile. Non hai né il tempo né il desiderio di studiare spessi Talmud sulla progettazione della rete, le istruzioni per l'utilizzo delle apparecchiature di rete e approfondire la sicurezza della rete. E, soprattutto, in futuro non hai alcun desiderio di diventare un professionista in questo campo. Allora questo articolo fa per te.


    La seconda parte di questo articolo esamina l'applicazione pratica delle nozioni di base qui delineate:

    Capire lo stack del protocollo

    Il compito è trasferire le informazioni dal punto A al punto B. Può essere trasmesso continuamente. Ma il compito diventa più complicato se è necessario trasferire informazioni tra i punti A<-->B e A<-->C sullo stesso canale fisico. Se le informazioni verranno trasmesse in modo continuo, quando C vuole trasmettere informazioni ad A, dovrà attendere che B termini la trasmissione e rilasci il canale di comunicazione. Questo meccanismo di trasferimento delle informazioni è molto scomodo e poco pratico. E per risolvere questo problema, si è deciso di dividere le informazioni in porzioni.

    Sul destinatario, queste porzioni devono essere messe insieme in un unico insieme, per ricevere le informazioni che sono uscite dal mittente. Ma sul destinatario A ora vediamo porzioni di informazioni sia da B che da C confuse. Ciò significa che a ciascuna porzione deve essere aggiunto un numero di identificazione in modo che il destinatario A possa distinguere le porzioni di informazioni da B dalle porzioni di informazioni da C e raccogliere queste porzioni nel messaggio originale. Ovviamente il destinatario deve sapere dove e in quale forma il mittente ha assegnato i dati identificativi all'informazione originale. E per questo devono sviluppare alcune regole per la formazione e la scrittura delle informazioni di identificazione. Inoltre, la parola "regola" sarà sostituita dalla parola "protocollo".

    Per soddisfare le esigenze dei consumatori moderni, è necessario specificare diversi tipi di informazioni di identificazione contemporaneamente. Ed è anche necessario proteggere le porzioni di informazioni trasmesse sia da interferenze casuali (durante la trasmissione su linee di comunicazione), sia da deliberati sabotaggi (hacking). Per questo, una parte delle informazioni trasmesse è integrata con una quantità significativa di informazioni speciali di servizio.

    Il protocollo Ethernet contiene il numero NIC del mittente (indirizzo MAC), il numero NIC del destinatario, il tipo di dati trasmessi e i dati trasmessi direttamente. L'informazione compilata secondo il protocollo Ethernet è chiamata frame. Si presume che non ci siano schede di rete con lo stesso numero. L'apparecchiatura di rete estrae i dati trasmessi dal frame (hardware o software) ed esegue ulteriori elaborazioni.

    Di norma, i dati estratti, a loro volta, sono formati secondo il protocollo IP e hanno un diverso tipo di informazioni di identificazione: l'indirizzo IP del destinatario (un numero di 4 byte), l'indirizzo IP e i dati del mittente. E anche molte altre informazioni di servizio necessarie. I dati generati secondo il protocollo IP sono chiamati pacchetti.

    Successivamente, i dati vengono recuperati dal pacchetto. Ma anche questi dati, di regola, non sono ancora dati originariamente inviati. Anche questa informazione è compilata secondo un certo protocollo. Il protocollo più utilizzato è il TCP. Contiene informazioni di identificazione come la porta del mittente (un numero a due byte) e la porta di origine, nonché dati e informazioni sui servizi. I dati estratti da TCP, di regola, sono i dati che il programma in esecuzione sul computer B ha inviato al "programma ricevente" sul computer A.

    La complessità dei protocolli (in questo caso TCP over IP over Ethernet) è chiamata stack di protocolli.

    ARP: Protocollo di risoluzione degli indirizzi

    Esistono reti di classe A, B, C, D ed E. Si differenziano per il numero di computer e per il numero di possibili reti/sottoreti al loro interno. Per semplicità, e come il caso più comune, prenderemo in considerazione solo una rete di classe C, il cui indirizzo IP inizia con 192.168.0.1. Il numero successivo sarà il numero della sottorete, seguito dal numero dell'apparecchiatura di rete. Ad esempio, un computer con indirizzo IP 192.168.30.110 desidera inviare informazioni a un altro computer con numero 3, situato nella stessa sottorete logica. Ciò significa che l'indirizzo IP del destinatario sarà: 192.168.30.3

    È importante capire che un nodo della rete di informazioni è un computer collegato da un canale fisico con apparecchiature di commutazione. Quelli. se inviamo i dati dall'adattatore di rete "a volontà", allora hanno un modo: usciranno dall'altra estremità del doppino. Possiamo inviare assolutamente qualsiasi dato formato secondo qualsiasi regola che abbiamo inventato, senza specificare né l'indirizzo ip, né l'indirizzo mac, né altri attributi. E, se quest'altra estremità è collegata a un altro computer, possiamo portarli lì e interpretarli come ci serve. Ma se quest'altra estremità è collegata allo switch, allora in questo caso il pacchetto di informazioni deve essere formato secondo regole rigorosamente definite, come se fornisse allo switch istruzioni su cosa fare dopo con questo pacchetto. Se il pacchetto è formato correttamente, lo switch lo invierà ulteriormente, a un altro computer, come indicato nel pacchetto. Quindi lo switch rimuoverà questo pacchetto dalla sua RAM. Ma se il pacchetto non è stato formato correttamente, ad es. le istruzioni in esso contenute erano errate, quindi il pacchetto "muore", ad es. lo switch non lo invierà da nessuna parte, ma lo cancellerà immediatamente dalla sua RAM.

    Per trasferire le informazioni a un altro computer, è necessario specificare tre valori di identificazione nel pacchetto di informazioni inviato: indirizzo mac, indirizzo IP e porta. Relativamente parlando, una porta è un numero che il sistema operativo assegna a ciascun programma che vuole inviare dati alla rete. L'indirizzo IP del destinatario viene inserito dall'utente o il programma stesso lo riceve, a seconda delle specifiche del programma. L'indirizzo mac rimane sconosciuto, ad es. il numero della scheda di rete del computer del destinatario. Per ottenere i dati necessari viene inviata una richiesta "broadcast", composta secondo il cosiddetto "ARP Address Resolution Protocol". Di seguito è riportata la struttura di un pacchetto ARP.

    Ora non abbiamo bisogno di conoscere i valori di tutti i campi nell'immagine sopra. Soffermiamoci solo sui principali.

    I campi contengono l'indirizzo IP della sorgente e l'indirizzo IP della destinazione, nonché l'indirizzo mac della sorgente.

    Il campo Indirizzo di destinazione Ethernet è pieno di unità (ff: ff: ff: ff: ff: ff). Tale indirizzo è chiamato indirizzo di trasmissione e tale frame buder viene inviato a tutte le "interfacce sul cavo", ad es. tutti i computer collegati allo switch.

    Lo switch, dopo aver ricevuto tale frame di trasmissione, lo invia a tutti i computer della rete, come se si rivolgesse a tutti con la domanda: "Se sei il proprietario di questo indirizzo IP (indirizzo IP di destinazione), per favore dimmi il tuo indirizzo mac. " Quando un altro computer riceve una richiesta ARP di questo tipo, confronta l'indirizzo IP di destinazione con il proprio. E se corrisponde, il computer, al posto delle unità, inserisce il suo indirizzo mac, scambia gli indirizzi ip e mac della sorgente e della destinazione, modifica alcune informazioni di servizio e invia il pacchetto allo switch, e questo di nuovo al computer originale, l'iniziatore della richiesta ARP.

    Pertanto, il tuo computer apprende l'indirizzo mac di un altro computer a cui desideri inviare i dati. Se ci sono diversi computer sulla rete che rispondono a questa richiesta ARP, allora otteniamo un "conflitto di indirizzi IP". In questo caso, è necessario modificare l'indirizzo IP sui computer in modo che la rete non abbia gli stessi indirizzi IP.

    Costruire reti

    Il compito di costruire reti

    In pratica, di norma, è necessario costruire una rete, il numero di computer in cui sarà almeno un centinaio. E oltre alle funzioni di condivisione dei file, la nostra rete deve essere sicura e facile da gestire. Pertanto, quando si costruisce una rete, si possono distinguere tre requisiti:
    1. Facilità di gestione. Se la contabile Lida viene trasferita in un altro ufficio, avrà comunque bisogno dell'accesso ai computer dei contabili Anna e Yulia. E con la costruzione sbagliata della sua rete informatica, l'amministratore potrebbe avere difficoltà a dare a Lida l'accesso ai computer di altri contabili nel suo nuovo posto.
    2. Sicurezza. Per garantire la sicurezza della nostra rete, i diritti di accesso alle risorse informative devono essere delimitati. Inoltre, la rete deve essere protetta dalle minacce di divulgazione, integrità e denial of service. Maggiori informazioni nel libro "Attack on the Internet" dell'autore Ilya Davidovich Medvedovsky, capitolo "Concetti di base della sicurezza informatica".
    3. Velocità di rete. Quando si costruiscono reti, c'è un problema tecnico: la dipendenza della velocità di trasmissione dal numero di computer nella rete. Più computer, minore è la velocità. Con un numero elevato di computer, le prestazioni della rete possono diventare così lente da diventare inaccettabili per il cliente.
    Cosa causa il rallentamento della velocità della rete con un numero elevato di computer? - il motivo è semplice: dovuto al gran numero di messaggi broadcast (AL). AL è un messaggio che, quando arriva allo switch, viene inviato a tutti gli host della rete. O, grosso modo, tutti i computer della tua sottorete. Se ci sono 5 computer nella rete, ogni computer riceverà 4 AL. Se ce ne sono 200, ogni computer in una rete così grande riceverà 199 AL.

    Esistono molte applicazioni, moduli software e servizi che inviano messaggi broadcast alla rete per il loro lavoro. Descritto nella clausola ARP: il protocollo di determinazione dell'indirizzo è solo uno dei tanti LA inviati dal tuo computer alla rete. Ad esempio, quando si accede a Risorse di rete (sistema operativo Windows), il computer invia diversi AL con informazioni speciali generate utilizzando il protocollo NetBios per eseguire la scansione della rete alla ricerca di computer che si trovano nello stesso gruppo di lavoro. Quindi il sistema operativo disegna i computer trovati nella finestra Risorse di rete e puoi vederli.

    Vale anche la pena notare che durante il processo di scansione con un determinato programma, il tuo computer non invia un singolo messaggio broadcast, ma diversi, ad esempio, per stabilire sessioni virtuali con computer remoti o per qualsiasi altra esigenza di sistema causata da problemi software. implementazioni di questa applicazione. Pertanto, ogni computer della rete per interagire con altri computer è costretto a inviare molti AL diversi, caricando così il canale di comunicazione con informazioni non necessarie all'utente finale. Come dimostra la pratica, nelle reti di grandi dimensioni, i messaggi broadcast possono costituire una parte significativa del traffico, rallentando così il lavoro della rete visibile all'utente.

    Reti locali virtuali

    Per risolvere il primo e il terzo problema, nonché per aiutare a risolvere il secondo problema, è ampiamente utilizzato il meccanismo di divisione della rete locale in reti più piccole, per così dire, reti locali separate (Virtual Local Area Network). In parole povere, una VLAN è un elenco di porte su uno switch che appartengono alla stessa rete. “Uno” nel senso che l'altra VLAN conterrà un elenco di porte appartenenti ad un'altra rete.

    Infatti, creare due VLAN su uno switch equivale ad acquistare due switch, ad es. creare due VLAN è come dividere uno switch in due. Pertanto, una rete di cento computer è divisa in reti più piccole, da 5-20 computer: di norma, questo numero corrisponde alla posizione fisica dei computer per la necessità di condivisione di file.

    • Suddividendo la rete in VLAN, si ottiene facilità di gestione. Quindi, quando il contabile Lida si trasferisce in un altro ufficio, l'amministratore deve solo rimuovere la porta da una VLAN e aggiungerla a un'altra. Questo è discusso in modo più dettagliato in VLAN, teoria.
    • Le VLAN aiutano a risolvere uno dei requisiti per la sicurezza della rete, ovvero la delimitazione delle risorse di rete. Quindi, uno studente di un'aula non può penetrare nei computer di un'altra classe o nel computer del rettore, perché sono in realtà su reti diverse.
    • Perché la nostra rete è suddivisa in VLAN, ovvero su piccole reti "simili", il problema con i messaggi broadcast scompare.

    VLAN, teoria

    Forse la frase "per un amministratore è sufficiente rimuovere una porta da una VLAN e aggiungerla a un'altra" potrebbe essere incomprensibile, quindi la spiegherò in modo più dettagliato. La porta in questo caso non è un numero rilasciato dal sistema operativo all'applicazione, come descritto nella sezione Stack del protocollo, ma un socket (luogo) in cui è possibile collegare (inserire) un connettore RJ-45. Tale connettore (cioè un capocorda al filo) si collega a entrambe le estremità di un filo a 8 conduttori chiamato doppino intrecciato. La figura mostra uno switch a 24 porte Cisco Catalyst 2950C-24:
    Come affermato nella clausola ARP: protocollo di determinazione dell'indirizzo, ogni computer è connesso alla rete da un canale fisico. Quelli. uno switch a 24 porte può collegare 24 computer. Un doppino intrecciato permea fisicamente tutti i locali dell'azienda: tutti i 24 fili di questo switch vanno a diversi uffici. Supponiamo, ad esempio, che 17 fili vadano e siano collegati a 17 computer in classe, 4 fili vadano all'ufficio del dipartimento speciale e i restanti 3 fili vadano al nuovo ufficio contabilità appena ristrutturato. E la ragioniera Lida, per meriti speciali, è stata trasferita proprio in questo ufficio.

    Come accennato in precedenza, le VLAN possono essere rappresentate come un elenco di porte appartenenti alla rete. Ad esempio, il nostro switch aveva tre VLAN, ad es. tre liste memorizzate nella memoria flash dello switch. Un elenco conteneva i numeri 1, 2, 3 ... 17, l'altro 18, 19, 20, 21 e il terzo 22, 23 e 24. Il computer di Lidin era precedentemente collegato alla 20a porta. E così si è trasferita in un altro ufficio. Hanno trascinato il suo vecchio computer in un nuovo ufficio, o si è seduta a un nuovo computer - non fa differenza. La cosa principale è che il suo computer era collegato con un cavo a doppino intrecciato, l'altra estremità del quale è inserita nella porta 23 del nostro switch. E affinché possa ancora inviare file ai suoi colleghi dal suo nuovo posto, l'amministratore deve rimuovere il numero 20 dal secondo elenco e aggiungere il numero 23. Nota che una porta può appartenere a una sola VLAN, ma infrangeremo questa regola alla fine di questo paragrafo.

    Noterò anche che quando si modifica l'appartenenza alla VLAN di una porta, l'amministratore non ha bisogno di "colpire" i fili nello switch. Inoltre, non deve nemmeno alzarsi. Perché il computer dell'amministratore è collegato alla 22a porta, con l'aiuto della quale può controllare lo switch da remoto. Ovviamente, a causa delle impostazioni speciali, che verranno discusse in seguito, solo l'amministratore può gestire lo switch. Per informazioni su come configurare le VLAN, vedere le VLAN, paragrafo Pratica [nel prossimo articolo].

    Come probabilmente avrai notato, inizialmente (nella sezione Creazione di reti) ho detto che ci saranno almeno 100 computer nella nostra rete, ma solo 24 computer possono essere collegati allo switch. Ovviamente ci sono switch con molte porte. Ma ci sono ancora più computer nella rete aziendale/aziendale. E per connettere un numero infinito di computer in una rete, gli switch sono collegati tra loro tramite la cosiddetta porta trunk. Quando si configura lo switch, una qualsiasi delle 24 porte può essere definita come porta trunk. E ci può essere un numero qualsiasi di porte trunk sullo switch (ma è ragionevole non farne più di due). Se una delle porte è definita trunk, lo switch forma tutte le informazioni ricevute su di essa in pacchetti speciali, utilizzando il protocollo ISL o 802.1Q, e invia questi pacchetti alla porta trunk.

    Tutte le informazioni che sono arrivate... voglio dire, tutte le informazioni che gli sono arrivate dagli altri porti. E il protocollo 802.1Q viene inserito nello stack di protocolli tra Ethernet e il protocollo con cui sono stati generati i dati, che trasporta questo frame.

    In questo esempio, come probabilmente avrai notato, l'amministratore siede nello stesso ufficio con Lida, perché il tempo twistato dalle porte 22, 23 e 24 porta allo stesso armadio. La 24a porta è configurata come porta trunk. E l'interruttore stesso è nella stanza sul retro, accanto al vecchio ufficio dei ragionieri e con un auditorium con 17 computer.

    Il doppino che va dalla 24a porta all'ufficio all'amministratore è connesso ad un altro switch, che a sua volta è connesso al router, di cui parleremo nei capitoli successivi. Altri switch che collegano altri 75 computer e si trovano in altre stanze sul retro dell'azienda: di norma hanno tutti una porta trunk collegata tramite doppino o fibra ottica allo switch principale, che si trova nell'ufficio con l'amministratore.

    È stato detto sopra che a volte è saggio creare due porte trunk. La seconda porta trunk viene quindi utilizzata per analizzare il traffico di rete.

    Questo è più o meno l'aspetto delle reti aziendali di grandi dimensioni ai tempi dello switch Cisco Catalyst 1900. Probabilmente avrai notato due principali svantaggi di tali reti. Innanzitutto, l'uso di una porta trunk causa alcune difficoltà e crea lavoro non necessario durante la configurazione delle apparecchiature. E in secondo luogo, e soprattutto, supponiamo che la nostra "specie di reti" di contabili, economisti e spedizionieri vogliano avere un database per tre. Vogliono che lo stesso contabile sia in grado di vedere le modifiche nel database che l'economista o lo spedizioniere ha apportato un paio di minuti fa. Per fare ciò, dobbiamo creare un server che sarà disponibile per tutte e tre le reti.

    Come menzionato al centro di questo paragrafo, una porta può essere solo in una VLAN. E questo è vero, però, solo per gli switch della serie Cisco Catalyst 1900 e precedenti e per alcuni modelli più giovani, come il Cisco Catalyst 2950. Per altri switch, in particolare il Cisco Catalyst 2900XL, questa regola può essere violata. Quando si configurano le porte in tali switch, ciascuna porta può avere cinque modalità di funzionamento: Static Access, Multi-VLAN, Dynamic Access, ISL Trunk e 802.1Q Trunk. La seconda modalità di funzionamento è esattamente ciò di cui abbiamo bisogno per l'attività di cui sopra: dare accesso al server da tre reti contemporaneamente, ad es. far appartenere il server a tre reti contemporaneamente. Questo è anche chiamato attraversamento o tagging di VLAN. In questo caso, lo schema di collegamento può essere il seguente.

    PilaTCP/ IP.

    Lo stack TCP/IP è un insieme di protocolli di rete ordinati gerarchicamente. Lo stack prende il nome dai due protocolli più importanti: TCP (Transmission Control Protocol) e IP (Internet Protocol). Oltre a questi, lo stack include diverse dozzine di protocolli diversi. Attualmente, i protocolli TCP/IP sono fondamentali per Internet, così come per la maggior parte delle reti aziendali e locali.

    In Microsoft Windows Server 2003, lo stack TCP / IP è selezionato come principale, sebbene siano supportati anche altri protocolli (ad esempio stack IPX / SPX, protocollo NetBIOS).

    Lo stack del protocollo TCP/IP ha due importanti proprietà:

      indipendenza dalla piattaforma, ovvero può essere implementato su una varietà di sistemi operativi e processori;

      openness, ovvero gli standard con cui è costruito lo stack TCP/IP sono a disposizione di chiunque.

    Storia della creazioneTCP/ IP.

    Nel 1967, l'Agenzia per i progetti di ricerca avanzata della difesa degli Stati Uniti (ARPA) ha avviato lo sviluppo di una rete di computer che avrebbe dovuto collegare un certo numero di università e centri di ricerca che eseguivano gli ordini dell'Agenzia. Il progetto si chiamava ARPANET. Nel 1972, la rete collegava 30 nodi.

    Nell'ambito del progetto ARPANET, i principali protocolli dello stack TCP / IP - IP, TCP e UDP - sono stati sviluppati e pubblicati nel 1980-1981. Un fattore importante nella diffusione del TCP/IP è stata l'implementazione di questo stack nel sistema operativo UNIX 4.2 BSD (1983).

    Alla fine degli anni '80, l'ampiamente ampliato ARPANET divenne Internet (reti interconnesse) e unì università e centri di ricerca negli Stati Uniti, in Canada e in Europa.

    Nel 1992 è apparso un nuovo servizio Internet, WWW (World Wide Web), basato sul protocollo HTTP. In gran parte grazie al WWW, Internet, e con esso i protocolli TCP/IP, ha ricevuto un rapido sviluppo negli anni '90.

    All'inizio del XXI secolo, lo stack TCP / IP sta guadagnando un ruolo di primo piano nei mezzi di comunicazione non solo globali, ma anche locali.

    ModelloOSI.

    Il modello Open Systems Interconnection (OSI) è stato sviluppato dall'International Organization for Standardization (ISO) per un approccio uniforme alla costruzione e all'interconnessione delle reti. Lo sviluppo del modello OSI iniziò nel 1977 e si concluse nel 1984 con l'approvazione della norma. Da allora, il modello è servito come riferimento per lo sviluppo, la descrizione e il confronto di vari stack di protocollo.

    Diamo una rapida occhiata alle funzioni di ogni livello.


    Il modello OSI include sette livelli: fisico, canale, rete, trasporto, sessione, presentazione e applicazione.

      Il livello fisico descrive i principi della trasmissione del segnale, la velocità di trasmissione e le specifiche del canale di comunicazione. Il livello è implementato dall'hardware (adattatore di rete, porta hub, cavo di rete).

      Il livello di collegamento dati risolve due compiti principali: controlla la disponibilità del mezzo di trasmissione (il mezzo di trasmissione è più spesso diviso tra diversi nodi di rete) e rileva e corregge anche gli errori che si verificano durante il processo di trasmissione. L'implementazione del livello è software e hardware (ad esempio, una scheda di rete e il relativo driver).

      Il livello di rete prevede l'unificazione di reti che operano su diversi protocolli del collegamento dati e livelli fisici in una rete composita. Inoltre, ciascuna delle reti comprese in una singola rete è chiamata sottorete(sottorete). A livello di rete, ci sono due compiti principali da risolvere: instradamento(instradamento, selezione del percorso ottimale di trasmissione del messaggio) e indirizzamento(indirizzamento, ogni nodo della rete concatenata deve avere un nome univoco). Di solito le funzioni del livello di rete sono implementate da un dispositivo speciale - router(router) e il relativo software.

      Il livello di trasporto risolve il problema del trasporto affidabile di messaggi in una rete concatenata riconoscendo e inviando nuovamente i pacchetti. Questo livello e tutti i seguenti sono implementati nel software.

      Il livello di sessione consente di memorizzare informazioni sullo stato corrente della sessione di comunicazione e, se la connessione viene interrotta, riprendere la sessione da questo stato.

      Il livello di presentazione converte le informazioni trasmesse da una codifica all'altra (ad esempio, da ASCII a EBCDIC).

      Il livello dell'applicazione implementa l'interfaccia tra il resto del modello e le applicazioni personalizzate.

    StrutturaTCP/ IP. La struttura sottostante del TCP/IP non è il modello OSI, ma il suo modello chiamato DARPA (Defense ARPA - il nuovo nome dell'Advanced Research Projects Agency) o DoD (Department of Defense). Ci sono solo quattro livelli in questo modello. La corrispondenza del modello OSI al modello DARPA, nonché i principali protocolli dello stack TCP/IP, è mostrata in Fig. 2.2.

    Va notato che il livello inferiore del modello DARPA - il livello delle interfacce di rete - in senso stretto, non svolge le funzioni del collegamento dati e dei livelli fisici, ma fornisce solo la comunicazione (interfaccia) dei livelli DARPA superiori con le tecnologie di reti comprese nella rete composita (ad esempio Ethernet, FDDI, ATM).

    Tutti i protocolli nello stack TCP/IP sono standardizzati in RFC.

    DocumentazioneRFC.

    Gli standard Internet e TCP/IP ufficiali approvati vengono pubblicati come documenti RFC (Request for Comments). Gli standard sono sviluppati dall'intera comunità ISOC (Internet Society). Qualsiasi membro ISOC può inviare un documento per la pubblicazione in una RFC. Il documento viene quindi rivisto da esperti tecnici, team di sviluppo e un editor RFC e procede in conformità con RFC 2026 attraverso le seguenti fasi, chiamate livelli di maturità:

      brutta copia(Bozza Internet) - in questa fase gli esperti conoscono il documento, apportano aggiunte e modifiche;

      standard proposto(Proposed Standard) - al documento viene assegnato un numero RFC, gli esperti hanno confermato la fattibilità delle soluzioni proposte, il documento è considerato promettente, è auspicabile che venga testato nella pratica;

      bozza di norma(Bozza di standard) - Un documento diventa una bozza di standard se almeno due sviluppatori indipendenti hanno implementato e applicato con successo le specifiche proposte. Correzioni e miglioramenti minori sono ancora consentiti in questa fase;

      standard internet(Internet Standard) - lo stadio più alto di approvazione dello standard, le specifiche del documento si sono diffuse e si sono dimostrate nella pratica. Un elenco di standard Internet è fornito in RFC 3700. Delle migliaia di RFC, solo poche dozzine sono documenti nello stato "standard Internet".

    Oltre agli standard, le RFC possono includere anche descrizioni di nuovi concetti e idee di rete, linee guida, risultati di ricerche sperimentali presentati a scopo informativo, ecc. A tali RFC può essere assegnato uno dei seguenti stati:

      sperimentale(Sperimentale) - un documento contenente informazioni su ricerca e sviluppo che possono essere di interesse per i membri dell'ISOC;

      informativo(Informativo) - Un documento pubblicato per fornire informazioni e non richiede l'approvazione della comunità ISOC.

      la migliore esperienza moderna(Best Current Practice) - Un documento destinato a trasmettere l'esperienza di sviluppi specifici, ad esempio, implementazioni di protocolli.

    Lo stato è indicato nell'intestazione RFC dopo la parola Categoria (Categoria). Per i documenti in stato di standard (Proposed Standard, Draft Standard, Internet Standard), viene indicato il nome Standard Traccia poiché il livello di preparazione può variare.

    I numeri RFC vengono assegnati in sequenza e non vengono mai riemessi. L'RFC originale non viene mai aggiornato. La versione aggiornata è pubblicata con un nuovo numero. RFC obsoleto e sostituito diventa storico(Storico).

    Tutti i documenti RFC esistenti possono essere visualizzati, ad esempio, sul sito web www.rfc-editor.org ... Ce n'erano oltre 5.000 nell'agosto 2007. Le RFC a cui si fa riferimento in questo corso sono elencate nell'Appendice I.

    Panoramica dei principali protocolli.

    Protocollo IP (Internet Protocollo) – è il principale protocollo di livello di rete responsabile dell'indirizzamento in reti concatenate e del trasferimento di pacchetti tra reti. IP è datagramma protocollo, cioè non garantisce la consegna dei pacchetti al nodo di destinazione. Il protocollo di trasporto TCP è responsabile della fornitura di garanzie.

    Protocolli RIP (Instradamento Informazione Protocollo protocollo delle informazioni di routing ) eOSPF (Aprire Il più corto Sentiero Primo – « le vie più brevi si aprono per prime" ) - protocolli di routing nelle reti IP.

    Protocollo ICMP (Internet Controllo Messaggio Protocollo protocollo dei messaggi di controllo nelle reti concatenate) è destinato allo scambio di informazioni di errore tra i router della rete e il nodo sorgente del pacchetto. Con l'aiuto di pacchetti speciali, informa sull'impossibilità di consegnare un pacchetto, sulla durata dell'assemblaggio di un pacchetto da frammenti, su valori anormali dei parametri, su un cambiamento nel percorso di inoltro e sul tipo di servizio, sullo stato del sistema , eccetera.

    Protocollo ARP (Indirizzo Risoluzione Protocollo - Address Translation Protocol) converte gli indirizzi IP in indirizzi hardware delle reti locali. La conversione inversa viene eseguita utilizzando il protocollo RAPR (ARP inverso).

    TCP (Trasmissione Controllo Protocollo - protocollo di controllo della trasmissione) garantisce la trasmissione affidabile di messaggi tra nodi remoti della rete attraverso la formazione di connessioni logiche. TCP consente di fornire un flusso di byte formato su uno dei computer senza errori a qualsiasi altro computer della rete composita. TCP divide il flusso di byte in parti - segmenti e li trasferisce al livello di rete. Dopo che questi segmenti sono arrivati ​​a destinazione, TCP li riassembla in un flusso continuo di byte.

    UDP (Utente Datagramma Protocollo - protocollo datagramma utente) fornisce la trasmissione dei dati in modo datagramma.

    HTTP (Ipertesto Trasferimento Protocollo - Hypertext Transfer Protocol) - protocollo di consegna di documenti web, il protocollo principale del servizio WWW.

    FTP (File Trasferimento Protocollo - protocollo di trasferimento file) - un protocollo per il trasferimento delle informazioni memorizzate nei file.

    POP 3 (Inviare Ufficio Protocollo versione 3 - protocollo dell'ufficio postale) e SMTP (Semplice posta Trasferimento Protocollo - Simple Mail Transfer Protocol) - protocolli per la consegna della posta in entrata (POP3) e l'invio in uscita (SMTP).

    Telnet - protocollo di emulazione terminale 1, che permette all'utente di collegarsi ad altre postazioni remote e lavorare con esse dalla propria macchina, come se fosse il proprio terminale remoto.

    SNMP (Semplice Rete Gestione Protocollo - un semplice protocollo di controllo della rete) è progettato per diagnosticare lo stato di salute di vari dispositivi di rete.

    I server che implementano questi protocolli sulla rete aziendale forniscono al client un indirizzo IP, un gateway, una maschera di rete, server dei nomi e persino una stampante. Gli utenti non devono configurare manualmente i propri host per utilizzare la rete.

    Il sistema operativo QNX Neutrino implementa un altro protocollo plug-and-play chiamato AutoIP, che è un progetto del comitato di configurazione automatica IETF. Questo protocollo viene utilizzato su piccole reti per assegnare indirizzi IP a host che sono link-local. Il protocollo AutoIP determina in modo indipendente l'indirizzo IP locale del canale, utilizzando uno schema di negoziazione con altri host e senza contattare un server centrale.

    Utilizzo del protocollo PPPoE

    PPPoE è l'acronimo di Point-to-Point Protocol over Ethernet. Questo protocollo incapsula i dati per la trasmissione su una rete Ethernet con bridge.

    PPPoE è una specifica per connettere utenti Ethernet a Internet tramite una connessione a banda larga come una linea dedicata, un dispositivo wireless o un modem via cavo. L'uso di PPPoE e di un modem a banda larga fornisce agli utenti della rete informatica locale un accesso autenticato individuale alle reti di dati ad alta velocità.

    PPPoE combina Ethernet con PPP per creare in modo efficiente una connessione separata a un server remoto per ogni utente. Il controllo dell'accesso, l'accounting della connessione e la selezione del provider di servizi sono specifici dell'utente, non dell'host. Il vantaggio di questo approccio è che né la compagnia telefonica né il provider di servizi Internet sono tenuti a fornire alcun supporto speciale per questo.

    A differenza delle connessioni dial-up, le connessioni DSL e via cavo sono sempre attive. Poiché la connessione fisica a un provider di servizi remoto è condivisa da più utenti, è necessario un metodo di contabilità che registri i mittenti e le destinazioni del traffico e addebiti gli utenti. PPPoE consente a un utente e a un host remoto che partecipano a una comunicazione di apprendere gli indirizzi di rete dell'altro durante uno scambio iniziale chiamato rilevamento(scoperta). Una volta stabilita una sessione tra un singolo utente e un sito remoto (come un provider di servizi Internet), la sessione può essere monitorata per ratei. In molte case, hotel e aziende, l'accesso a Internet è condiviso su linee di abbonati digitali utilizzando la tecnologia Ethernet e PPPoE.

    Una connessione PPPoE è costituita da un client e un server. Il client e il server funzionano utilizzando qualsiasi interfaccia vicina alle specifiche Ethernet. Questa interfaccia viene utilizzata per inviare indirizzi IP ai client, associando tali indirizzi IP agli utenti e, facoltativamente, alle workstation, invece dell'autenticazione della sola workstation. Il server PPPoE crea una connessione punto-punto per ogni client.

    Stabilire una sessione PPPoE

    Per creare una sessione PPPoE, dovresti usare il serviziopppoed... Moduloio-pkt- * nFornisce servizi di protocollo PPPoE. Per prima cosa devi correreio-pkt- *Conautista adatto... Esempio:

    UNIX, che ha contribuito all'aumento della popolarità del protocollo poiché i produttori includevano TCP/IP nel software di ogni computer UNIX. TCP/IP è mappato al modello di riferimento OSI, come mostrato nella Figura 3.1.

    Puoi vedere che TCP/IP risiede nel terzo e quarto livello del modello OSI. L'idea alla base è quella di lasciare la tecnologia LAN agli sviluppatori. L'obiettivo di TCP/IP è messaggistica in reti locali di qualsiasi tipo e stabilire la comunicazione utilizzando qualsiasi applicazione di rete.

    TCP/IP funziona essendo associato al modello OSI ai due livelli più bassi, il livello di trasmissione dati e il livello fisico. Ciò consente a TCP/IP di trovare un terreno comune con praticamente qualsiasi tecnologia di rete e, di conseguenza, qualsiasi piattaforma informatica. TCP/IP include quattro livelli astratti, elencati di seguito.


    Riso. 3.1.

    • Interfaccia di rete. Consente a TCP/IP di interagire attivamente con tutte le moderne tecnologie di rete basate sul modello OSI.
    • Internet. Determina come viene gestito l'IP inoltro di messaggi tramite router in uno spazio di rete come Internet.
    • Trasporto. Definisce il meccanismo per lo scambio di informazioni tra computer.
    • Applicato. Specifica le applicazioni di rete per eseguire attività quali inoltro, posta elettronica e altro.

    A causa della sua ampia adozione, TCP/IP è diventato di fatto lo standard Internet. Il computer su cui è implementato tecnologia di rete basato sul modello OSI (Ethernet o Token Ring) ha la capacità di comunicare con altri dispositivi. In Fondamenti di rete, abbiamo esaminato i livelli 1 e 2 quando abbiamo discusso delle tecnologie LAN. Passeremo ora allo stack OSI e vedremo come un computer comunica su Internet o su una rete privata. Questa sezione discute il protocollo TCP/IP e la sua configurazione.

    Che cos'è TCP/IP

    Che i computer possano comunicare tra loro è di per sé un miracolo. Dopotutto, si tratta di computer di produttori diversi, che funzionano con sistemi operativi e protocolli diversi. In assenza di un terreno comune, tali dispositivi non sarebbero in grado di scambiare informazioni. Quando vengono inviati su una rete, i dati devono essere in un formato comprensibile sia dal dispositivo di invio che dal dispositivo di ricezione.

    TCP/IP soddisfa questo requisito attraverso il suo livello gateway. Questo livello è direttamente allineato con il livello di rete del modello di riferimento OSI e si basa su un formato di messaggio fisso chiamato datagramma IP. Un datagramma è come un cestino che contiene tutte le informazioni in un messaggio. Ad esempio, quando carichi una pagina web in un browser, ciò che vedi sullo schermo viene consegnato in blocchi da un datagramma.

    È facile confondere i datagrammi con i pacchetti. Un datagramma è un'informazione, mentre un pacchetto è un oggetto messaggio fisico (creato al terzo e più alto livello) che viene effettivamente inviato sulla rete. Sebbene i termini possano essere considerati intercambiabili da alcuni, la differenza tra loro in realtà conta in un contesto specifico, non qui, ovviamente. La cosa importante da capire è che il messaggio viene suddiviso in frammenti, trasmesso in rete e riassemblato sul dispositivo ricevente.


    L'aspetto positivo di questo approccio è che se un singolo pacchetto viene danneggiato durante la trasmissione, sarà necessario ritrasmettere solo quel pacchetto, non l'intero messaggio. Un'altra cosa buona è che nessun host deve aspettare indefinitamente che un altro host finisca di trasmettere per inviare il proprio messaggio.

    TCP e UDP

    Quando si invia un messaggio IP su una rete, viene utilizzato uno dei protocolli di trasporto: TCP o UDP. TCP (Transmission Control Protocol) è la prima metà dell'abbreviazione TCP/IP. Lo User Datagram Protocol (UDP) viene utilizzato al posto del TCP per trasportare i messaggi meno importanti. Entrambi i protocolli sono utilizzati per la corretta messaggistica nelle reti TCP/IP. C'è una differenza significativa tra questi protocolli.

    TCP è chiamato protocollo affidabile perché comunica con il destinatario per verificare che sia stato ricevuto un messaggio.

    UDP è chiamato protocollo inaffidabile perché non cerca nemmeno di comunicare con il destinatario per garantire la consegna.


    È importante ricordare che è possibile utilizzare un solo protocollo per recapitare un messaggio. Ad esempio, quando viene caricata una pagina Web, TCP gestisce la consegna dei pacchetti senza alcun intervento UDP. D'altra parte, Trivial File Transfer Protocol (TFTP) scarica o invia messaggi sotto il controllo di UDP.

    Il metodo di trasporto utilizzato dipende dall'applicazione: potrebbe essere e-mail, HTTP, applicazione di rete e così via. Gli sviluppatori di reti utilizzano UDP ove possibile perché riduce il traffico in eccesso. TCP richiede uno sforzo maggiore per garantire la consegna e trasmette molti più pacchetti rispetto a UDP. La Figura 3.2 fornisce un elenco di applicazioni di rete e mostra quali applicazioni utilizzano TCP e quali utilizzano UDP. Ad esempio, FTP e TFTP fanno praticamente la stessa cosa. Tuttavia, TFTP viene utilizzato principalmente per scaricare e copiare programmi da dispositivi di rete. TFTP può utilizzare UDP, perché se il messaggio fallisce, non accade nulla di terribile, poiché il messaggio non era destinato all'utente finale, ma all'amministratore di rete, il cui livello di priorità è molto più basso. Un altro esempio è una sessione video vocale in cui è possibile utilizzare sia le porte TCP che UDP. Pertanto, viene avviata una sessione TCP per lo scambio di dati quando viene stabilita una connessione telefonica, mentre la conversazione telefonica stessa viene trasmessa tramite UDP. Ciò è dovuto alla velocità di streaming di voce e video. In caso di perdita del pacchetto, non ha senso inviarlo nuovamente, poiché non corrisponderà più al flusso di dati.


    Riso. 3.2.
    Formato datagramma IP

    I pacchetti IP possono essere suddivisi in datagrammi. Il formato datagramma crea campi per il payload e per i dati di controllo del trasferimento dei messaggi. La Figura 3.3 mostra un diagramma schematico di un datagramma.

    Nota. Non lasciarti ingannare dalla dimensione del campo dati nel datagramma. Il datagramma non è sovraccaricato di dati aggiuntivi. Il campo dati è in realtà il campo più grande del datagramma.


    Riso. 3.3.

    È importante ricordare che i pacchetti IP possono avere lunghezze diverse. In Fondamenti di rete, è stato affermato che i pacchetti di dati su una rete Ethernet vanno da 64 a 1400 byte. Sono lunghi 4000 byte su Token Ring e 53 byte su ATM.

    Nota. L'uso dei byte in un datagramma può confonderti, poiché i trasferimenti di dati sono più spesso associati a concetti come megabit e gigabit al secondo. Tuttavia, poiché i computer preferiscono lavorare con i byte di dati, anche i datagrammi utilizzano i byte.

    Se osservi nuovamente il formato datagramma nella Figura 3.3, noterai che i margini a sinistra sono costanti. Questo perché la CPU del pacchetto deve sapere dove inizia ogni campo. Senza la standardizzazione di questi campi, i bit finali saranno un miscuglio di uno e zero. Il lato destro del datagramma contiene pacchetti di lunghezza variabile. Lo scopo dei vari campi in un datagramma è il seguente.

    • VER. La versione IP utilizzata dalla stazione in cui è apparso il messaggio originale. La versione corrente di IP è la versione 4. Questo campo garantisce che diverse versioni esistano contemporaneamente nell'internetwork.
    • HLEN. Il campo informa il dispositivo ricevente della lunghezza dell'intestazione in modo che la CPU sappia dove inizia il campo dati.
    • Tipo di servizio. Codice che dice al router che tipo di controllo dei pacchetti è in termini di livello di servizio (affidabilità, priorità, differimento, ecc.).
    • Lunghezza. Il numero totale di byte nel pacchetto, inclusi i campi di intestazione e il campo dati.
    • ID, frag e frag offset. Questi campi dicono al router come frammentare e riassemblare il pacchetto e come compensare le differenze nelle dimensioni dei frame che possono verificarsi mentre il pacchetto viaggia attraverso segmenti LAN con diverse tecnologie di rete (Ethernet, FDDI, ecc.).
    • TTL. Abbreviazione di Time to Live, un numero che viene decrementato di uno ogni volta che il pacchetto viene inoltrato. Se la durata diventa zero, il pacchetto cessa di esistere. TTL impedisce il loop e il vagabondaggio infinito dei pacchetti persi nell'internetwork.
    • Protocollo. Il protocollo di trasporto da utilizzare per trasferire il pacchetto. Il protocollo più comune utilizzato in questo campo è TCP, ma è possibile utilizzare altri protocolli.
    • Somma di controllo dell'intestazione. Il checksum è un numero utilizzato per verificare l'integrità del messaggio. Se i checksum di tutti i pacchetti nel messaggio non corrispondono al valore corretto, significa che il messaggio è stato danneggiato.
    • Indirizzo IP di origine. L'indirizzo a 32 bit dell'host che ha inviato il messaggio (di solito un personal computer o un server).
    • Indirizzo IP di destinazione. L'indirizzo a 32 bit dell'host a cui viene inviato il messaggio (in genere un personal computer o un server).
    • Opzioni IP. Utilizzato per test di rete o altri scopi speciali.
    • Imbottitura. Riempie tutte le posizioni di bit inutilizzate (vuote) in modo che il processore possa determinare correttamente la posizione del primo bit nel campo dati.
    • Dati. Il payload del messaggio inviato. Ad esempio, un campo dati pacchetto potrebbe contenere il corpo di un'e-mail.

    Come accennato in precedenza, un pacchetto è costituito da due componenti principali: i dati di elaborazione del messaggio, situati nell'intestazione, e le informazioni stesse. La parte informativa è nel settore del carico utile. Puoi pensare a questo settore come alla stiva di un'astronave. Il titolo è tutti i computer di bordo della navetta nella cabina di pilotaggio. Gestisce tutte le informazioni necessarie per tutti i tipi di router e computer lungo il percorso di un messaggio e viene utilizzato per mantenere un certo ordine di assemblaggio di un messaggio dai singoli pacchetti.

    Principali articoli correlati