Gestione della rete e SNMP

A questo punto dovremmo essere ben consapevoli del fatto che una rete è fatta da molteplici e complessi componenti hardware e software che interagiscono tra di loro.
Ovviamente, quando centinai o migliaia di componenti vengono assemblati insieme per costruire una rete, il compito dell'amministratore di far funzionare la rete è sicuramente una sfida.

Infrastruttura di gestione
...

Pasted image 20231020182908.png
Nella figura sopra sono mostrate le componenti chiave della gestione di rete:

  • Il server di gestione è un'applicazione controllata dal responsabile ed eseguita da un calcolatore del NOC (network operations server). Il suo compito è quello di raccogliere, elaborare e analizzare/visualizzare delle informazioni di gestione. È qui che vengono intraprese le azioni per verificare il comportamento della rete ed è qui che l'amministratore di rete interagisce con i dispositivi di rete.
  • Un dispositivo di rete gestito è un componente hardware o software della rete come un host, un router, un bridge, una stampante, un modem, in cui si trovano oggetti da gestire, che sono gli effettivi componenti hardware del dispositivo (esempio: schede di rete).
  • Ad ogni oggetto da gestire sono associate informazioni archiviate in una base di dati gestionale (MIB, management information base); questi oggetti possono essere contatori che raccolgono informazioni come il numero di datagrammi scartati da un router a causa di errori nell'intestazione o il numerro di collisioni in una scheda ethernet; informazioni descrittive, come la versione del software di un DNS server; informazioni di stato dei dispositivi, come il fatto che un dispositivo sta funzionando correttamente; o informazioni specifiche del protocollo.
    Un linguaggio di specifica dei dati, conosciuto come SMI (structure of management information), viene usato per assicurare che la sintassi e la semantica dei dati di gestione della rete siano ben definite e non ambigue.
  • L'agente di sessione è un processo che comunica con il server di gestione ed esegue sul dispositivo le azioni decise dal server di gestione.
  • Il protocollo di gestione è un componente tramite il quale il server di gestione 'può richiedere lo stato dei dispositivi e agire su di essi attraverso gli agenti. Questi, a loro volta, utilizzano il protocollo di gestione per informare il server di gestione di eventuali anomali, come guasti nei componenti o prestazioni sotto una soglia minima. A questo riguardo occorre fare una sottile ma importante precisazione: il protocollo di gestione non gestisce la rete, ma è soltanto uno strumento tramite il quale l'amministratore opera.

SNMP (simple network management protocol)
...

SNMPv2 è un protocollo di livello applicativo che trasporta informazioni fra i server di gestione e agenti. La più comune modalità d'uso è richiesta-risposta: un'entità SNMPv2 invia una richiesta a un agente SNMPv2 che, in base alla richiesta, compie azioni ed invia una risposta. Di solito queste istanze sono utilizzate per leggere/scrivere parametri di un oggetto MIB associato ad un dispositivo. Un altro utilizzo tipi si verifica quando un agente, senza che gli sia pervenuta alcuna richiesta, invia un messaggio non sollecitato, detto messaggio trap, al server di gestione, in cui segnala il verificarsi di una situazione eccezionale che ha prodotto una variazione dei valori degli oggetti MIB.
SNMPv2 definisce 7 tipi di messaggi riportati nella tabella di seguito, genericamente detti PDU (protocol data unit).
Pasted image 20231020193350.png

  • Le tre PDU GetRequest, GetNExtRequest e GetBulkRequest sono inviate da un'entità di gestione all'agente del dispositivo da gestire per richiedere uno o più valori di oggetti MIB. Gli identificativi degli oggetti MIB i cui valori sono stati richiesti sono specificati nella porzione variabile obbligatoria della PDU. Queste tre PDU differiscono per la granularità dei dati richiesti. GetRequest può richiedere qualunque valore MIB, mentre per elenchi o tabelle di oggetti si può utilizzare una sequenza di GetNextRequest. GetBulkRequest restituisce grandi gruppi di dati, evitando le ridondanze di una serie di GetRequest o di GetNextRequest. In tutti e tre i casi, l'agente risponde con una PDU Response, che contiene gli identificatori simbolici dell'oggetti e i rispettivi valori.
  • Con la PDU SetRequest un server di gestione può impostare il valore di uno o più oggetti MIB in un dispositivo. Il server ricevente risponde con una PDU Response contenente “noError” in caso di effettiva modifica del parametro.
  • La PDU InformRequest è utilizzata da un server di gestione per trasmettere informazioni MIB a un’altra entità di gestione. Quest’ultima risponde con una PDU Response con stato di errore impostato a “noError” a conferma della ricezione della PDU InformRequest.
  • La PDU Response viene inviata dal dispositivo al server di gestione per restituire l’informazione richiesta.
  • Il messaggio trap è un evento asincrono, cioè non è la risposta a una richiesta, ma viene emesso quando si verifica uno degli eventi di cui l’entità di gestione aveva richiesto la notifica.
    Le PDU possono essere contenute in qualsiasi protocollo di trasporto, ma di solito costituiscono il payload di un datagramma UDP.
    Il campo identificativo di richieste (vedi figura sotto) delle PDU è utilizzato dall'entità di gestione per numerare le sue richieste e dall'agente per la risposta. Quindi si può utilizzare il campo Request ID per rilevare la perdita di richieste o di risposte. L'entità di gestione ha il compito di decidere se ritrasmettere una richiesta non riscontrata entro un ceto tempo. SNMP non prevede particolari procedure di ritrasmissione (e non specifica se deve esserci ritrasmissione), ma richiede solamente che l'entità di gestione "sia responsabile di frequenza e durata delle ritrasmissioni". Questo naturalmente spinge a chiederci quale sia il comportamento di un protocollo responsabile.
    Pasted image 20231020194059.png