1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework...

31
1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati ALMA MATER STUDIORUM - UNIVERSITA' DI BOLOGNA FACOLTA' DI INGEGNERIA - SEDE DI CESENA

Transcript of 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework...

Page 1: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

1

LABORATORIO DI INFORMATICANetwork Management

4. Internet (SNMPv2) Networking Management Framework

Claudio Salati

Copyright © 2001 by Claudio Salati

ALMA MATER STUDIORUM - UNIVERSITA' DI BOLOGNA

FACOLTA' DI INGEGNERIA - SEDE DI CESENA

Page 2: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

2

SCOPI

• Stessi di TMN ma focalizzato sulla gestione di reti di calcolatori basate sulla tecnologia di internetworking TCP/IP

• In realta' applicabile alla gestione di qualsiasi tipo di rete come a tutte le problematiche SCADA e controllo dell'automazione

telegestione/telecontrollo di reti di distribuzione (e.g. elettricita')

supervisione impianti di illuminazione

configurazione/supervisione di impianti automatizzati

• Si applica a maggior ragione il requisito di gestione

• multivendor e

• di apparati fortemente eterogenei

Page 3: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

3

SCOPI

• Deve essere possibile arricchire la modalita’ base di gestione di una risorsa prevista dallo standard con quanto necessario per gestire prestazioni-funzionalita’ proprietarie (aggiuntive) realizzate da un particolare costruttore

• un modello informativo standard non deve cercare di prevedere la gestione di tutte le funzionalita' possibili, ma:

• deve prevedere un livello minimo di gestione comune per tutti,

• e essere aperto ad estensioni proprietarie

M.T. Rose Fundamental Axiom: The impact of adding network management to managed

nodes must be minimal, reflecting a lowest common denominator

Page 4: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

4

Internet Management Framework (da alcuni RFC SNMPv2 )

A management system contains: • several (potentially many) nodes, each with a processing entity,

termed an agent, which has access to management instrumentation (cioe' a procedure di controllo e monitoraggio delle risorse del nodo);

• at least one management station; and, • a management protocol, used to convey management

information between the agents and management stations.

Operations of the protocol are carried out under an administrative framework which defines authentication, authorization, access control, and privacy policies.

The management protocol, SNMPv2, provides for the exchange of messages which convey management information between the agents and the management stations.The form of these messages is a message "wrapper" which encapsulates a Protocol Data Unit (PDU). The form and meaning of the "wrapper" is determined by the administrative framework.(continua alla pagina successiva)

Page 5: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

5

Internet Management Framework (da alcuni RFC SNMPv2 )

Management stations execute management applications (modulo manager

dell'applicazione distribuita di gestione) which monitor and control managed elements. Managed elements are devices such as hosts, routers, terminal servers, etc., which are monitored and controlled via access to their management information.

Management information is viewed as a collection of managed objects, residing in a virtual information store, termed the ManagementInformation Base (MIB, in particolare MIB-istanza). Collections of related objects (in realta‘: object types) are defined in MIB modules (MIB-schema). These modules are written using a subset of OSI's ASN.1, termed the Structure of Management Information (SMI).

It may be useful to define the acceptable lower-bounds of implementation, along with the actual level of implementation achieved. It is the purpose of the Conformance Statements for SMIv2 to define the notation used for these purposes.

Page 6: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

6

ARCHITETTURA: comunanze con TMN

1. Approccio simile a quello di TMN

2. Network Management Station - Managed Node

3. Manager - Agent

4. Interazione manager-agent basata su una rappresentazione dello stato del sistema gestito logico-funzionale e non architetturale: information model - MIB

ma ...

Page 7: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

7

ARCHITETTURA: differenze con TMN

1. Approccio remote debugging vs. O-O distributed program

uniche operazioni manageragent ammesse: read e write di variabile di MIB

2. Trasferimento di informazioni agentmanager: trap-directed polling vs. notifica dettagliata (in entrambi i casi a livello di style guide piu' che di vincolo linguistico/funzionale)

3. Comunicazioni (transport layer) manager-agent Connectionless vs. Connection-oriented

4. sintassi astratta del dialogo manageragent fissa:

non estendibile e non legata al tipo della rete gestita

5. Network management non e' una applicazione distribuita qualunque: deve (cercare di) funzionare anche (e soprattutto) quando le normali applicazioni si bloccano

Page 8: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

8

MIB

Nel management framework di Internet l’espressione MIB assume due significati

1. Schema della base dati condivisa che consente l’interazione manager-agent:

• Una MIB-schema (o MIB module) contiene la definizione di un insieme di object-type capaci di modellare le risorse di un sistema gestito (in terminologia ITU: modello informativo).

2. Istanza della base dati condivisa che rappresenta lo stato attuale del sistema gestito:

• Una MIB-istanza contiene un insieme di istanze di object-type che con il loro valore descrivono lo stato corrente del sistema gestito.

• Concettualmente si puo' sempre supporre che una MIB-istanza contenga anche la MIB-schema che ne definisce la struttura.

Page 9: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

9

ARCHITETTURA - MIB

• L'informazione di gestione in un sistema gestito deve essere rappresentata solo da

2. Variabili scalari

3. Tabelle (concettuali) = matrici bidimensionali (possibilmente eterogenee per colonne) di variabili scalari

Descrivibili in ASN.1 come SEQUENCE OF SEQUENCE {…} ,

dove i campi della SEQUENCE sono vincolati ad essere di tipi semplici

• I tipi scalari ammessi dal framework sono un sottoinsieme di quelli definiti da ASN.1.

Questo sottoinsieme e' definito nella SMI

• Nel colloquio manager-agent il protocollo SNMP consente solo lo scambio di (liste di) scalari (valori di tipo semplice)

Page 10: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

10

ARCHITETTURA - trap-directed polling

1. E' l'applicazione al caso del Network Management del design-pattern observer (o publish-subscribe)

2. La differenza con la strategia TMN e' legata non tanto agli strumenti messi a disposizione dal management framework, quanto alle regole di stile secondo le quali questi strumenti sono utilizzati

3. Lo scopo e' definire un trade-off accettabile per

Il carico elaborativo su ciascuno degli agent

Il carico elaborativo su ciascuno dei manager

Il carico di comunicazioni sulla rete

Il tempo di risposta agli eventi

• tutto cio' in teoria: nella pratica quello che succede e' semplicemente che si definiscono meno notifiche spontanee di quante se ne definiscano nei modelli informativi ITU/OSI

Page 11: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

11

ARCHITETTURA - uso di connectionless transport service

UDP

• Affidabilita’ e end-to-end argument• Non e' nemmeno SNMP che si preoccupa della

ritrasmissione per recuperare errori sulla rete ma l'applicazione finale!

• Particolarmente significativo nel caso di network management("must work when all else fails")

• Consente di semplificare l'agent: puo' essere senza-stato

• Risolve la contraddizione: connessioni permanenti vs. costo/difficolta' di aprire una connessione al momento del bisogno (specie se ci sono problemi sulla rete! ”E’ piu’ robusto”)

• La massima dimensione di un PDU UDP e’ limitata:• SNMPv2 definito per sfruttare al meglio il PDU UDP• SNMP definisce come situazione di errore il fatto che un suo PDU

venga ad eccedere questa dimensione

Page 12: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

12

ARCHITETTURA - abstract syntax

Anche il management framework di Internet e' basato su ASN.1

• sia per definire le strutture dati che rappresentano lo stato del sistema gestito

• che per definire i PDU del protocollo SNMP

• In realta' viene utilizzato un sottoinsieme molto limitato di ASN.1

• Arricchito da una libreria di sotto-tipi base definita dal framework

Unica transfer syntax ammessa: BER

• Per come viene utilizzato l'ASN.1, l'insieme di procedure di encode/decode di manager e agent e' fisso e limitato:

• per implementare manager e agent non e' quindi necessario fare uso di un sistema di programmazione ASN.1.

Page 13: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

13

SNMPv2 Framework: RFC (parte 1)

RFC TITLE1902obsoleted by

2578

SMI for SNMPv2

Structure of Management Information Version 2 (SMIv2)

1903obsoleted by

2579

Textual Conventions for SNMPv2

Textual Conventions for SMIv2

1904obsoleted by

2580

Conformance Statements for SNMPv2

Conformance Statements for SMIv2

1905 Potocol Operations for SNMPv2

1906 Transport Mappings for SNMPv2

Page 14: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

14

SNMPv2 Framework: RFC (parte 2)

RFC TITLE1907 MIB for SNMPv2

1901 Introduction to Community-based SNMPv2

(e’ lo SNMPv2 standard, detto anche SNMPv2C)

1908obsoleted by

2576

Coexistence between SNMPv1 and SNMPv2

Coexistence between Version 1, Version 2, and Version 3 of the Internet-standard Network Management Framework

Page 15: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

15

CROSS-REFERENCE

ITU TMN IETF ManagementFramework

ATTRIBUTE OBJECT-TYPE column

CMISE / CMIP SNMP

GDMO SMI

Information Model / MIB MIB (schema/istanza)

MANAGED OBJECT CLASS OBJECT-TYPE simple / row

Mediation Device Proxy agent

Network (Managed) Element Managed node

Operation System Network Management Station

Object instance istanza di OBJECT-TYPE simple, origa in istanza di OBJECT-TYPE tabella

Page 16: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

16

SNMPv2 Framework: Supporto Linguistico (SMI)

• Utilizzato per definire lo schema della base dati condivisa (“per scrivere delle MIB”)

• Formalmente definito come un insieme di macro ASN.1

• Per catturarne la semantica e’ pero’ necessario utilizzare un apposito compilatore

• Noi lo considereremo un linguaggio dedicato • che chiameremo complessivamente SMI

(Structure of Management Information), • che e’ composto di 9 statement,• che e’ integrato con l’ASN.1 (il suo sottoinsieme ammesso dal

framework).I suoi statement • riferiscono tipi e valori ASN.1, • devono comparire all’interno di moduli ASN.1, • e devono essere importati da moduli ASN.1

Page 17: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

17

SNMPv2 Framework: Supporto Linguistico

Statement SMI Modulo ASN.1 in cui e definito

RFC

TEXTUAL-CONVENTION SNMPv2-TC 1903

OBJECT-IDENTITY SNMPv2-SMI 1902

MODULE-IDENTITY

OBJECT-TYPE

NOTIFICATION-TYPE

OBJECT-GROUP SNMPv2-CONF 1904

NOTIFICATION-GROUP

MODULE-COMPLIANCE

AGENT-CAPABILITIES

Page 18: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

18

SNMPv2 Framework: "Standard" MIB

IETF non definisce solo gli strumenti necessari per scrivere delle MIB (schema), ma standardizza (o mette comunque a disposizione) anche un insieme di MIB gia’ definite

• MIB di base, che dovrebbero essere supportate da ogni sistema gestito (RFC 1907 (SNMP) e 2233 (interfacce))

• MIB per la gestione dei protocolli Internet• RFC 2011, 2012, 2013, 2096: rispettivamente IP, TCP, UDP,

tabelle di routing IP

• MIB per la gestione di interfacce e protocolli specifici:• RFC 1471, 1472, 1473, 1474, gestione di data link PPP e

protocolli correlati• RFC 2665, gestione di data link Ethernet• RFC 1658, 1659, gestione di interfacce character oriented e

di RS-232

continua nella prossima pagina

Page 19: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

19

SNMPv2 Framework: "Standard" MIB

• MIB per la gestione di protocolli di routing:

• RFC 1657, BGP-4 MIB

• RFC 1850, OSPF version 2 MIB

• MIB per il monitoraggio remoto delle reti TCP/IP, o MIB RMON 1 e 2: RFC 1757, 2021, 2074

• MIB per la gestione di altre reti o sistemi, e.g.

• RFC 2558 SONET/SDH Interface Type MIB

• RFC 2494, 2495, 1407 DS0, DS1, DS2, DS3 (PDH) Interface Type MIB

• RFC 2515 ATM MIB

Page 20: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

20

MIB SNMPv2

RFC TITLE1573obsoleted by

2233

Evolution of the Interfaces Group of MIB-II

The Interfaces Group MIB using SMIv2

2011 SNMPv2 Management Information Base for the Internet Protocol (IP) using SMIv2

2012 SNMPv2 Management Information Base for the Transmission Control Protocol (TCP) using SMIv2

2013 SNMPv2 Management Information Base for the User Datagram Protocol (UDP) using SMIv2

2024 Definitions of Managed Objects for Data Link Switching using SMIv2

2096 IP Forwarding Table MIB

Page 21: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

21

SERVIZI OFFERTI DAL PROTOCOLLO DI GESTIONE

ITU CMIP IETF SNMPv2M-GET get

get-next

get-bulk

M-SET set

M-CREATE set

M-DELETE set

M-ACTION get, get-next, get-bulk

set

M-EVENT-REPORT trap

M-CANCEL-GET -

Page 22: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

22

SERVIZI OFFERTI DAL PROTOCOLLO SNMPv2

• get• client = manager / server = agent• Confermato• SNMPv2 PDU: GetRequest-PDU / Response-PDU• consente al manager di acquisire il valore di specifici elementi

di una MIB. Una singola operazione puo’ richiedere simultameamente il valore di piu’ elementi.

• get-next• client = manager / server = agent• Confermato• SNMPv2 PDU: GetNextRequest-PDU / Response-PDU• consente al manager tramite successive invocazioni di

scandire la MIB acquisendo il valore degli elementi in essa contenuti. Una singola operazione puo’ richiedere una scansione parallela a partire da piu’ punti della MIB.

Page 23: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

23

SERVIZI OFFERTI DAL PROTOCOLLO SNMPv2

• get-bulk• client = manager / server = agent• Confermato• SNMPv2 PDU: GetBulkRequest-PDU / Response-PDU• Simile ad una successione compressa di max-repetition

operazioni get-next, consente sfruttare al meglio la dimensione massima del Response-PDU (se la risposta completa ha dimensioni eccessive, essa e’ sostituita con la massima risposta parziale che rientra nel Response-PDU).

“The agent’s response to the get-bulk operator isn’t unlike the concatenation of the agent’s responses from up to max-repetition number of get-next interactions.” (M.T. Rose, “The simple book”)

Page 24: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

24

SERVIZI OFFERTI DAL PROTOCOLLO SNMPv2

• set• client = manager / server = agent• Confermato• SNMPv2 PDU: SetRequest-PDU / Response-PDU• consente al manager di modificare il valore di specifici

elementi di una MIB. Una singola operazione puo’ modifcare simultameamente il valore di piu’ elementi.

Se uno o piu’ elementi riferiti nella richiesta non sono presenti nella MIB il risultato dell’operazione e’ la creazone ed inizializzazione di questi elementi e, per effetto collaterale, di eventuali altri elementi ad essi correlati.

Page 25: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

25

SERVIZI OFFERTI DAL PROTOCOLLO SNMPv2

• trap• client = agent / server = manager• Non-confermato• SNMPv2 PDU: SNMPv2-Trap-PDU• Consente ad un agent di notificare spontaneamente a un

manager l’occorrenza di eventi significativi sul sistema gestito.

La notifica puo’ essere arricchita con il valore di elementi della MIB associati a risorse coinvolte nell’evento.

Page 26: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

26

SERVIZI OFFERTI DAL PROTOCOLLO SNMPv2• La gerarchia di gestione TMN prevede che il pattern manager-agent sia

replicato ricorsivamente tra i suoi diversi layer.

• In questo senso risulta fisiologica l’esistenza di entita’ di gestione con doppio ruolo (agent north-bound, manager south-bound).(non e’ invece considerata una cooperazione tra pari, cioe’ tra entita’ dello stesso layer di gestione non funzionalmente gerarchizzate)

• Questa architettura ricorsiva non e’ recepita dal framework Internet.

• SNMPv2 definisce invece un servizio che consente l’interazione tra due entita’ manager.

• inform• client = manager / server = manager• Confermato• SNMPv2 PDU: InformRequest-PDU / Response-PDU• Consente ad un manager di notificare spontaneamente a un altro

manager l’occorrenza di eventi significativi e di ricevere da questo una risposta correlata.

Page 27: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

27

SERVIZI OFFERTI DAL PROTOCOLLO SNMPv2

Il protocollo definisce e supporta tre tipi di interazione:

1. Interazione confermata tra un manager (client) ed un agent (server)

Lettura e modifica dello stato del sistema gestito da parte del manager

2. Interazione non-confermata tra un agent (client) e un manager (server)

Notifica dell’agent verso il manager di una variazione (spontanea) dello stato del sistema gestito

3. Interazione confermata tra un manager (client) ed un manager (server)

Notifica da un manager verso un altro manager di una variazione dello stato di un sistema gestito

Page 28: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

28

SERVIZI OFFERTI DAL PROTOCOLLO SNMPv2

• Un manager SNMPv2 deve essere in grado di

• Generare i seguenti tipi di PDU:• GetRequest-PDU• GetNextRequest-PDU• GetBulkRequest-PDU• SetRequest-PDU• InformRequest-PDU• Response-PDU

• Trattare in ricezione i seguenti tipi di PDU:• Response-PDU• SNMPv2-Trap-PDU• InformRequest-PDU

Page 29: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

29

SERVIZI OFFERTI DAL PROTOCOLLO SNMPv2

• Un agent SNMPv2 deve essere in grado di

• Generare i seguenti tipi di PDU:• SNMPv2-Trap-PDU• Response-PDU

• Trattare in ricezione i seguenti tipi di PDU:• GetRequest-PDU• GetNextRequest-PDU• GetBulkRequest-PDU• SetRequest-PDU

Page 30: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

30

ALTRI RFC

RFC TITLE1270 SNMP Communications Services

1592 Simple Network Management Protocol - Distributed Protocol Interface - Version 2.0

1909 An Administrative Infrastructure for SNMPv2 (obsoleto)

1910 User-based Security Model for SNMPv2

(detto anche SNMPv2U; e’ in qualche maniera incorporato anche in SNMPv3)

2089 V2ToV1 - Mapping SNMPv2 onto SNMPv1 within a bi-lingual SNMP agent

Page 31: 1 LABORATORIO DI INFORMATICA Network Management 4. Internet (SNMPv2) Networking Management Framework Claudio Salati Copyright © 2001 by Claudio Salati.

31

SNMPv3• Da SNMPv2 eredita: SMIv2 e la struttura del PDU• Ridefinisce il modello amministrativo

• Per introdurre un livello significativo di security• Per rendere l’architettura aperta a future innovazioni

RFC TITLE

2270 Introduction to Version 3 of the Internet-standard Network Management Framework

2271 An Architecture for Describing SNMP Management Frameworks

2272 Message processing and dispatching

2273 SNMPv3 applications

2274 User-based Security Model (USM)

2275 View-based access control model (VACM)

2276 Coexistence between Version 1, Version 2, and Version 3 of the Internet-standard Network Management Framework