You are on page 1of 27

IDZ DO

PRZYKADOWY ROZDZIA
SPIS TRECI

KATALOG KSIEK
KATALOG ONLINE
ZAMW DRUKOWANY KATALOG

TWJ KOSZYK
DODAJ DO KOSZYKA

CENNIK I INFORMACJE
ZAMW INFORMACJE
O NOWOCIACH
ZAMW CENNIK

CZYTELNIA
FRAGMENTY KSIEK ONLINE

Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl

Protokoy SNMP i RMON.


Vademecum profesjonalisty
Autor: William Stallings
Tumaczenie: Mateusz Michalski
ISBN: 83-7197-920-7
Tytu oryginau: SNMP, SNMPv2, SNMPv3,
and RMON 1 and 2
Format: B5, stron: 604

SNMP (Simple Network Management Protocol) wraz z RMON (Remote Network


Monitoring) to najefektywniejsze narzdzia do zarzdzania wspczesnymi, bardzo
zrnicowanymi systemami sieciowymi, co powoduje postrzeganie ich jako standard
w zakresie zarzdzania sieciami.
Protokoy SNMP i RMON. Vademecum profesjonalisty to doskonay podrcznik
skierowany do administratorw, menaderw i projektantw sieci komputerowych,
opisujcy zagadnienia zarzdzania sieciami w oparciu o SNMP. Napisana zwile
i konkretnie, skupiajca si na zagadnieniach praktycznych ksika, opisuje SNMPv1,
SNMPv2 oraz najnowsz wersj SNMPv3, a take RMON1 i RMON2 czyli wszystko
to, czego uywa si obecnie w sieciach LAN i WAN. Dziki ksice bdziesz mg lepiej
okreli swoje wymagania co do systemu zarzdzania sieci, pozna przesanki,
ktrymi kierowali si projektanci oraz zdobdziesz niezbdn wiedz do efektywnego
wykorzystania dostpnych produktw wspierajcych SNMP.
W ksice autor zawar pomocne informacje wprowadzajce w tematyk zarzdzania
sieciami, w tym przegld wymaga stawianych systemom zarzdzania. Znajdziesz
w niej wyjanienia zagadnie podstawowych, takich jak architektura zarzdzania sieci,
monitoring wydajnoci, poprawnoci dziaania i wykorzystania zasobw sieciowych
oraz kontrola konfiguracji i bezpieczestwa. Nie zabrako szczegowych informacji
na temat dziaania protokou SNMPv1 oraz jego rozszerze wprowadzonych w wersji 2.
i 3., ze szczeglnym uwzgldnieniem mechanizmw bezpieczestwa uwierzytelnianiu,
szyfrowaniu, modelu bezpieczestwa USM (User-based Security Model) i modelu
kontroli dostpu VACM (View-based Access Control Model).

5RKUVTGEK



Rozdzia 1.




1.1. Wymagania dotyczce zarzdzania sieci............................................................... 12
1.2. Systemy zarzdzania sieci ................................................................................... 17
1.3. Ukad ksiki....................................................................................................... 25
Dodatek 1A. Zasoby internetowe................................................................................. 29




 
    

Rozdzia 2.

  


2.1. Architektura monitorowania sieci .......................................................................... 33
2.2. Monitorowanie wydajnoci ................................................................................... 38
2.3. Monitorowanie uszkodze .................................................................................... 49
2.4. Monitorowanie wykorzystania .............................................................................. 52
2.5. Podsumowanie .................................................................................................... 53
Dodatek 2A. Podstawy teorii kolejkowania................................................................... 54
Dodatek 2B. Podstawy analizy statystycznej................................................................. 60

Rozdzia 3.

  


3.1. Sterowanie konfiguracj ....................................................................................... 63
3.2. Sterowanie zabezpieczeniami................................................................................ 67
3.3. Podsumowanie .................................................................................................... 75


Rozdzia 4.

   


        


4.1. Historia rozwoju .................................................................................................. 79
4.2. Podstawowe pojcia............................................................................................. 86
4.3. Podsumowanie .................................................................................................... 91

Rozdzia 5.

  !   "#


5.1. Struktura informacji zarzdzania ........................................................................... 94
5.2. Zagadnienia praktyczne ...................................................................................... 108
5.3. Podsumowanie .................................................................................................. 120
Dodatek 5A. Stany poczenia TCP ........................................................................... 120

Rozdzia 6.

  $ %

&'
6.1. Baza MIB-II...................................................................................................... 125
6.2. Baza MIB interfejsu ethernetowego ..................................................................... 153

Protokoy SNMP i RMON. Vademecum profesjonalisty

6.3. Podsumowanie .................................................................................................. 159


Dodatek 6A. Diagramy Casea .................................................................................. 160
Dodatek 6B. Adresy IP............................................................................................. 161

Rozdzia 7.

 ("    )

'
7.1. Pojcia podstawowe........................................................................................... 165
7.2. Specyfikacja protokou ....................................................................................... 173
7.3. Wykorzystanie usug transportowych................................................................... 191
7.4. Grupa SNMP .................................................................................................... 193
7.5. Zagadnienia praktyczne ...................................................................................... 195
7.6. Podsumowanie .................................................................................................. 203
Dodatek 7A. Porzdkowanie leksykograficzne............................................................ 203

 !"  #$%


Rozdzia 8.

* + ( ),  -   -

&.
8.1. Pojcia podstawowe........................................................................................... 208
8.2. Grupa statistics .................................................................................................. 221
8.3. Grupa history .................................................................................................... 224
8.4. Grupa host ........................................................................................................ 228
8.5. Grupa hostTopN................................................................................................ 232
8.6. Grupa matrix ..................................................................................................... 236
8.7. Rozszerzenie tokenRing w RMON ...................................................................... 240
8.8. Podsumowanie .................................................................................................. 246
Dodatek 8A. Zasady nadawania wartoci obiektowi EntryStatus (z RFC 1757).............. 247

Rozdzia 9.

* + ( ) +  +

&/
9.1. Grupa alarm ...................................................................................................... 249
9.2. Grupa filter........................................................................................................ 254
9.3. Grupa capture.................................................................................................... 262
9.4. Grupa event ...................................................................................................... 266
9.5. Zagadnienia praktyczne ...................................................................................... 269
9.6. Podsumowanie .................................................................................................. 272

Rozdzia 10. 01&

&
10.1. Przegld .......................................................................................................... 273
10.2. Grupa katalogu protokow ............................................................................... 283
10.4. Grupa mapowania adresw ............................................................................... 292
10.5. Grupy hostw w RMON2................................................................................. 295
10.6. Grupy macierzowe w RMON2.......................................................................... 299
10.7. Grupa zbioru historii uytkownika ..................................................................... 308
10.8. Grupa konfiguracji sondy.................................................................................. 313
10.9. Rozszerzenia w urzdzeniach RMON1 do standardu RMON2 ............................. 317
10.10. Zagadnienia praktyczne .................................................................................. 317
10.11. Podsumowanie............................................................................................... 319

&   ##  #


Rozdzia 11.

2&)  !  

&
11.1. Historia rozwoju .............................................................................................. 323
11.2. Struktura informacji zarzdzania........................................................................ 327
11.3. Posumowanie .................................................................................................. 347
Dodatek 11A. Konwencja tekstowa RowStatus........................................................... 348

Spis treci

Rozdzia 12. 2&)("

''
12.1. Operacje protokou........................................................................................... 355
12.2. Odwzorowania transportowe............................................................................. 380
12.3. Wsppraca z SNMPv1 .................................................................................... 380
12.4. Podsumowanie ................................................................................................ 385

Rozdzia 13. 2&)$ %,34

5
13.1. Baza informacji zarzdzania w SNMPv2............................................................ 387
13.2. Wyraenia zgodnoci........................................................................................ 393
13.3. Rozwinicie grupy interfaces z bazy MIB-II....................................................... 400
13.4. Posumowanie .................................................................................................. 408
Dodatek 13A. Konwencja tekstowa TestAndIncr ........................................................ 408

&

    '$(

Rozdzia 14. 6+,, 2

/
14.1. Szyfrowanie standardowe z wykorzystaniem DES .............................................. 411
14.2. Bezpieczna funkcja kodujca MD5.................................................................... 417
14.3. Bezpieczna funkcja kodujca SHA-1 ................................................................. 420
14.4. Uwierzytelnianie wiadomoci przy uyciu HMAC .............................................. 424

Rozdzia 15. 2) -#  + !

/&
15.1. Historia rozwoju .............................................................................................. 429
15.2. Przegld SNMPv3............................................................................................ 432
15.3. Architektura SNMP ......................................................................................... 437
15.4. Aplikacje SNMPv3 .......................................................................................... 451
15.5. Bazy MIB dla aplikacji SNMPv3 ...................................................................... 454
15.6. Podsumowanie ................................................................................................ 463
Dodatek 15A. Konwencje tekstowe
wykorzystywane w architekturze zarzdzania SNMP ............................................... 464

Rozdzia 16. 2)  # (


 +$7  8

/
16.1. Przetwarzanie komunikatw.............................................................................. 469
16.2. Model bezpieczestwa oparty na uytkownikach w protokole SNMPv3................ 478
16.3. Podsumowanie ................................................................................................ 502

Rozdzia 17.

2)++ #   -

'.
17.1. Model VACM.................................................................................................. 503
17.2. Obsuga kontroli dostpu .................................................................................. 508
17.3. Bazy MIB modelu VACM ................................................................................ 512
17.4. Posumowanie .................................................................................................. 519
Dodatek 17A. Zasady korzystania z poddrzew i masek................................................ 520

)
* %#%
Dodatek A

0 "(9:;

'&
A.1. Dziaanie protokow TCP i IP........................................................................... 528
A.2. Warstwy protokow TCP/IP ............................................................................. 529
A.3. Aplikacje TCP/IP.............................................................................................. 532
A.4. Protok datagramw uytkownika ..................................................................... 533
A.5. Standardy w protokoach TCP/IP ....................................................................... 534

Protokoy SNMP i RMON. Vademecum profesjonalisty

Dodatek B

6$  !  !  "  )6




'
B.1. Skadnia abstrakcyjna ........................................................................................ 537
B.2. Podstawy ASN.1............................................................................................... 539
B.3. Definicje makr w ASN.1.................................................................................... 553
B.4. Podstawowe zasady kodowania .......................................................................... 559
B.5. Alternatywne zasady kodowania......................................................................... 567

"

'
%$+, 

'


'

Rozdzia 13.


 
 
Rozpoczniemy ten rozdzia opisem bazy MIB dla SNMPv2, ktra wykorzystywana jest
zarwno w SNMPv2, jak i w SNMPv1. Nastpnie rozpatrzone zostan wyraenia zgodnoci; uywane s one do okrelania wymaga dotyczcych zgodnoci dla ujednoliconych baz
MIB i pozwalaj producentom okreli zakres ich implementacji. Dalej przyjrzymy si
rozszerzeniom MIB zwizanym z grup  , ktre definiowane s w oparciu o SMI
protokou SNMPv2 i wykorzystuj pewne cechy tego protokou.


  
SNMPv2 MIB definiuje obiekty, ktre opisuj zachowanie jednostek SNMPv2. Takie bazy
MIB skadaj si z trzech grup:
 grupy system rozwinicie oryginalnej grupy system z bazy MIB-II po to, by

zawieraa zestaw obiektw pozwalajcych na penienie przez jednostk SNMPv2


roli agenta przy okrelaniu swych zasobw dynamicznie konfigurowalnych obiektw,
 grupy SNMP usprawnienie pierwotnej grupy snmp z bazy MIB-II, skadajce si

z obiektw dostarczajcych podstawowego oprzyrzdowania do dziaania protokou,


 grupy MIB objects zestaw obiektw zajmujcych si jednostkami PDU typu

SNMPv2-Trap i pozwalajcych wsppracujcym jednostkom SNMPv2, wszystkim


wystpujcym w roli zarzdcw, na skoordynowane wykorzystanie operacji 
protokou SNMPv2.
Rozpatrzymy kolejno kad grup MIB.

 


Grupa
 zdefiniowana w SNMPv2 MIB jest faktycznie t sam grup, co zdefiniowana w MIB-II, z dodatkiem paru nowych obiektw. Rysunek 13.1 prezentuje skorygowan
grup
 , ktra cigle pozostaje jednak czci hierarchii MIB-II.

388

Cz IV  SNMP wersja 2 (SNMPv2)



Skorygowana
grupa system

Porwnanie rysunku 13.1 z oryginaln grup


 (rysunek 6.1) pokazuje, e wszystkie
nowe obiekty maj nazwy zaczynajce si prefiksem
. Obiekty te maj zwizek z zasobami systemowymi i uywane s przez jednostk SNMPv2 penic rol agenta do opisu
kontrolowanych przez ni zasobw obiektowych; mog by dynamicznie konfigurowane
przez zarzdc. Tabela 13.1 grupuje wspomniane obiekty1. Jak wida, dochodzi jedna wielko skalarna i pojedyncza tablica obiektw-zasobw. Wielko skalarna to   
, ktra rejestruje warto
  w momencie ostatniej zmiany stanu bd wartoci ktregokolwiek z obiektw zawartych w tablicy obiektw-zasobw; innymi sowy, jest
to czas ostatniej zmiany w zestawie dajcych si kontrolowa zasobw, sterowanych przez
tego zarzdc. Tablica obiektw-zasobw ma tryb RO (Tylko-do-odczytuy) i skada si
z pojedynczego wiersza dla kadego zasobu obiektowego konfigurowalnego dynamicznie.
1

Uyto nastpujcych oznacze:  (tylko-do-odczytu) RO, 


  (do zapisu i odczytu) RW,
   (do odczytu i tworzenia) RC,     (niedostpne) NA.

Rozdzia 13.  SNMPv2 bazy MIB i zgodno

389

 
Uzupenienie SNMPv2 grupy system
Obiekt

Skadnia

Opis

  

  

Warto    z chwili ostatniej zmiany stanu bd


wartoci jakiejkolwiek instancji  

 

 !   

Tablica dynamicznie konfigurowalnych zasobw obiektw


w jednostce SNMPv2 penicej rol agenta

  



Informacja dotyczca poszczeglnych dynamicznie


konfigurowalnych zasobw obiektw

 "

#

Liczba cakowita stanowica indeks w tablicy  

 

$ !

Identyfikator obiektu (ID) danego wpisu. Jest to


odpowiednik obiektu  %  z MIB-II

  

    

Tekstowy opis danego zasobu obiektu. Jest to odpowiednik


obiektu    z MIB-II

  

  

Warto    w momencie ostatniej modyfikacji


wartoci tego wiersza

 
Jest to ta sama grupa, ktr zdefiniowano w MIB-II, lecz zawierajca pewne nowe obiekty
i pozbawiona zarazem czci oryginalnych obiektw. Grupa   przechowuje pewne
elementarne informacje dotyczce ruchu pakietw, odnoszce si do dziaania SNMPv2.
Wszystkie obiekty, oprcz jednego, s 32-bitowymi licznikami z trybem RO (Tylko-doodczytu) zgrupowano je w tabeli 13.2. Wspomniany wyjtek dotyczy obiektu  
 , majcego tryb RW (Do-zapisu-i-odczytu), typu wyliczeniowego cakowitego, przyjmujcego wartoci  i   , wskazujce, czy jednostka SNMPv2
jest uprawniona do generowania puapek !".
Porwnanie do pierwotnej grupy   MIB-II (rysunek 7.5) pokazuje, e analizowana grupa
(rysunek 13.2) zawiera zdecydowanie mniej parametrw. Wynika to std, e tak szczegowe dane nie s niezbdne do rozwizywania faktycznych problemw, a poza tym znaczco zwikszaj rozmiar agenta. W zwizku z tym zaadaptowano bardziej wydajn grup
obiektw.

  

Grupa #$% & zawiera dodatkowe obiekty odnoszce si do sterowania obiektami bazy
MIB (rysunek 13.3). Pierwsza cz tego zestawu jest podgrup  , zoon z dwch
obiektw zwizanych z puapkami:
   $', ktry jest identyfikatorem aktualnie wysyanego obiektu puapki lub
powiadomienia. Warto tego obiektu wystpuje jako druga ( w kadej
jednostce PDU typu )*#+(  i $! , .

390

Cz IV  SNMP wersja 2 (SNMPv2)

 
 Liczniki w uzupenionej grupie SNMP



Liczba wszystkich pakietw odebranych przez jednostk SNMPv2 z usugi transportowej


  


Liczba wszystkich komunikatw SNMP dostarczonych do jednostki SNMP, przeznaczonych dla


nieobsugiwanej wersji SNMP
   


Liczba wszystkich komunikatw SNMP dostarczonych do jednostki SNMP, uywajcych nazwy


spoecznoci nieznanej jednostce
   


Liczba wszystkich komunikatw SNMP dostarczonych do jednostki SNMP, reprezentujcych


operacje SNMP nie akceptowane przez spoeczno okrelon w komunikacie



Liczba wszystkich bdw ASN.1 lub BER, ktre wystpiy w trakcie dekodowania otrzymanych
komunikatw SNMP

 

Liczba wszystkich jednostek PDU typu # &' ( # " &' ( # )'*&' ,  &'
i +&' , ktre zostay pominite, poniewa rozmiar wiadomoci zwrotnej, stanowicej
jednostk PDU z alternatywn odpowiedzi zawierajc puste pole powiza zmiennych, by
wikszy albo od ogranicze lokalnych, albo maksymalnego dopuszczalnego rozmiaru
wiadomoci w jednostce wysyajcej danie


Liczba wszystkich jednostek PDU typu # &' ( # " &' ( # )'*&' ,  &'
i +&' , ktre zostay pominite, poniewa kontekst wskazywa na agenta proxy, a transmisja
wiadomoci (prawdopodobnie przetumaczonej) nie powioda si w taki sposb (inny ni
przekroczenie dopuszczalnego czasu oczekiwania na odpowied), e do jednostki wysyajcej
danie nie moga by wysana adna jednostka PDU z odpowiedzi
   , ktry jest identyfikatorem obiektu przedsibiorstwa

zwizanego z aktualnie wysyan puapk. Gdy agent proxy odwzorowuje


jednostk PDU typu  (zdefiniowan w RFC 1157) na jednostk PDU
typu )*#+( , warto tej zmiennej wystpuje jako ostatnia (.
Drug cz zestawu obiektw z tej grupy stanowi podgrupa  ) zoona z pojedynczego obiektu  )*!. Obiekt ten suy do rozwizania dwch problemw mogcych
pojawi si przy korzystaniu z operacji :


Na tym samym obiekcie MIB zarzdca moe dokonywa wielu operacji typu 
i moe by wane, aby wszystkie one wykonane byy w porzdku ich wysyania,
nawet jeli w trakcie transmisji ten porzdek zosta zaburzony.



Jednoczesne uycie operacji  przez wielu zarzdcw moe skutkowa


niespjnoci bd bdami w bazie danych.

Dla wyjanienia drugiego punktu rozwamy prosty przykad. Przypumy, e warto


obiektu MIB odpowiada adresowi miejsca w buforze, ktry uywany jest do gromadzenia
danych pobranych od zarzdcy przy uyciu pewnego protokou transferu plikw. Warto

Rozdzia 13.  SNMPv2 bazy MIB i zgodno

391



Uzupeniona
grupa SNMP




Grupa
snmpMIBObjects

obiektu wskazuje nastpne dostpne miejsce. Zarzdca wykorzystuje t warto w nastpujcy sposb: najpierw odczytuje t warto, nastpnie zwiksza j tak, by wskazywaa na
nastpne miejsce, i ostatecznie przesya odpowiednie dane. Moe jednak przy tym zaj
nastpujca sekwencja zdarze:


Meneder A pobiera warto obiektu, ktra wynosi, zamy, x.



Meneder B pobiera t sam warto.



Meneder A potrzebuje y oktetw przestrzeni buforu i dlatego wydaje agentowi


polecenie, by zmodyfikowa warto obiektu do x+y.

392

Cz IV  SNMP wersja 2 (SNMPv2)



Meneder B potrzebuje z oktetw przestrzeni buforu i dlatego wydaje agentowi


polecenie, by zmodyfikowa warto obiektu do x+z.



Oba menedery (A i B) s przygotowane do wysania danych do buforu, poczynajc


od lokacji wyznaczonej przez warto x.

W rezultacie albo A nadpisze dane B, albo na odwrt. Co wicej, jeli z < y i A wyle swoje
dane po B, to nie tylko nadpisze dane B, ale jeszcze cz danych A zostanie nadpisana
przez nastpnego nadzorc uywajcego tego buforu.
Ten problem, w ktrym rezultat zaleny jest od kolejnoci zachodzenia niezalenych
zdarze, nazywany jest sytuacj wycigu (Race)2.
Jedyny obiekt w grupie  ) jest definiowany nastpujco:
  ,
)$ -.
-/0
 / 
1/0/

 
/
'
.
2)* 3 3( '4
%5 
67 '%5  % * 1.89(

 :'%5 
 335 6
( * 

*3     % 
 *7' 1.89;  *  '4
 %  *  % 3'%; /  3 <
*75 *  %:( 4(
34=   3( 3+  
<  *

% '
: %    * 6

*4% '  1)2
>>? @  , A

Obiekt  $ jest konwencj tekstow i jest typu cakowitego ($*- : 0..2 147
483 647). Jej zakres mieci si w przedziale od 0 do 2311. Zasady modyfikacji tego
obiektu s nastpujce. Zamy, e aktualna warto obiektu wynosi K. W tej sytuacji:


Jeli agent otrzyma polecenie  dla tego obiektu z wartoci K, warto obiektu
jest zwikszana do (K+1) modulo 231, polecenie wykonywane jest prawidowo
i odsyana jest warto K.



Jeli agent otrzyma polecenie  dla tego obiektu z wartoci rn od K, operacja


koczy si niepowodzeniem, a zwrcona zostanie informacja o bdzie typu
!  . (sprzeczna warto).

Definicja konwencji tekstowej  $ zamieszczona jest w dodatku 13A.


Wiadomo, e polecenie  wykonywane jest jako niepodzielna instrukcja atomowa;
oznacza to, e po odebraniu jednostki PDU typu ) ,  przeprowadzane s wszystkie
operacje  dla zmiennych zawartych w polu powiza, jeli wszystkie one s poprawne
i dopuszczalne, lub nie przeprowadzana jest adna, jeli cho jedna z nich nie jest poprawna.
Tak wic obiekt  ) moe by uywany w nastpujcy sposb: gdy zarzdca da
ustawienia jednej lub kilku wartoci obiektw agenta, najpierw pobiera warto obiektu
 ). Nastpnie wysya jednostk PDU ) , , ktrej lista powiza zmiennych
zawiera obiekt  ) z pobran wartoci oraz odpowiedni par wartoci dla kadego
ustawianego obiektu. Jeli dwch lub wicej zarzdcw wysya ) , , uywajc
tej samej wartoci  ), pierwszy, ktry dotrze do agenta, zakoczy si powodzeniem
(zakadajc, e nie wystpi adne inne problemy), co w rezultacie spowoduje zwikszenie
2

W [Stallings (1995b)] znale mona szerokie omwienie problemw rozproszonego, jednoczesnego dostpu.

Rozdzia 13.  SNMPv2 bazy MIB i zgodno

393

wartoci obiektu  ); pozostae operacje  zakocz si niepowodzeniem z racji


niewaciwej wartoci  ). Poza tym jeli zarzdca zada przeprowadzenia ustawienia
serii obiektw i jednoczenie wymaga gwarancji, e zostan one wykonane we waciwym
porzdku, kada operacja zawiera powinna obiekt  ).
Zgodnie z definicj, jest to zgrubna technika koordynacji; jeli wszyscy zarzdcy uywaj
obiektu  ), tylko jeden z nich w danym momencie moe prawidowo wysya do
agenta danie, dotyczce wszystkich obiektw zawartych w MIB. Jeeli obiekt  
$ jest zwizany z pojedyncz grup, wtedy ograniczenia jednoczesnego dostpu dotyczy bd obiektw tej grupy.

    


Specyfikacja SNMPv2 zawiera dokumenty dotyczce zgodnoci. Ich celem jest definicja
notacji pozwalajcej okreli minimalne wymagania dotyczce implementacji, a take
rzeczywisty poziom osignitej implementacji.
W dokumencie poruszajcym zagadnienia zgodnoci zdefiniowano cztery makra:
 %/- + wskazuje te obiekty w MIB, ktre s czci grupy zgodnoci,
 * $"$$ *- + identyfikuje zbir powiadomie,
 # ' #+$* ustala wymagania w stosunku do agenta wzgldem

implementacji moduw i obiektw bazy MIB,


 -*+%$$$) definiuje moliwoci poszczeglnych implementacji agenta.

  !"


Makro to uywane jest do specyfikacji grup spokrewnionych obiektw zarzdzanych.
Tak jak w SNMP SMI, grupa zarzdzanych obiektw w SNMPv2 jest podstawow jednostk zgodnoci. Makro %/- + zapewnia producentowi systematyczny sposb opisu
stopnia zgodnoci przez wskazanie, ktre grupy zostay zaimplementowane.
Specyfikacja SNMPv2 wyjania wystpujc w SNMP niejednoznaczno, o ktrej wspomniano w podrozdziale 7.5. Ze specyfikacji SNMPv2 wynika, e obiekt jest zaimplementowany jedynie wwczas, gdy przy operacji odczytu mona otrzyma jak sensown
warto. Poza tym dla obiektw, ktrych warto mona zmienia, implementacja musi
by w stanie wpywa na stosown zarzdzan jednostk w odpowiedzi na operacj .
Jeeli agent nie moe zaimplementowa obiektu, musi zwrci komunikat o bdzie (taki jak
np. !) &) w odpowiedzi na operacj protokou. Niedozwolone jest, aby agent zwraca warto obiektu, ktrego nie zaimplementowa.
Listing 13.1 prezentuje makro %/- +, ktre skada si z nastpujcych gwnych
klauzul:
 klauzula %/) wykaz wszystkich obiektw w grupie, ktrych klauzula
#0)) przyjmuje jedn z nastpujcych wartoci:  !!
,
!
, 1 lub  (wynika z tego, e obiekty majce klauzul
#0)) o wartoci !  nie nale do makra %/- +;

394

Cz IV  SNMP wersja 2 (SNMPv2)


Makro OBJECT-GROUP
)$#. 1/ >>? )#
-. / >>? % .
2/2   '
2.2 "
+.
B/ / >>? 8' CB/ )$ !D
% . >>? 2)$2 2@2 %  2A2
%  >>? % E %  2(2 %
% >>? 8' C % D
  ' >>? 2 ' 2 E 2  2 E 2 2
+. >>? 2!2 " E 
" >>? 2222    2222


do obiektw takich zaliczaj si tablice pojciowe, wiersze pojciowe i obiekty


bdce indeksami wierszy. Kady z wymienionych w tej klauzuli obiektw musi
by zdefiniowany za pomoc makra %/2+ w tym samym module,
w ktrym wystpuje modu %/- +),
 klauzula )) wskazuje, czy dana definicja jest aktualna, czy przestarzaa,
 klauzula ') $+$ * zawiera tekstow definicj grupy razem z opisem wszelkich
relacji z innymi grupami (warto podawana przy wywoywaniu makra %/- +

jest identyfikatorem obiektu przypisanym do grupy),


 klauzula " * moe zawiera tekstowy odsyacz do grupy zdefiniowanej

w innym module informacji.


Prostym przykadem definicji z wykorzystaniem makra %/- + jest definicja grupy  :
#' )$#.
)$ @ .* (
)B (
/.(
) (
  (
." (
/' ( A
/ '
.
2F 6  * 6
'4
%5   

5 7': * : % * 1.89;2
>>? @ 1)#' G A

 #$ !"


Makro * $"$$ *- + jest uywane do definiowania zestawu powiadomie dla potrzeb
zgodnoci. Listing 13.2 przedstawia to makro, skadajce si z nastpujcych gwnych
klauzul:
 klauzula * $"$$ *) wykaz wszystkich notyfikacji nalecych do danej grupy

zgodnoci (kady z wyszczeglnionych obiektw musi by zdefiniowany za pomoc


makra * $"$$ *2+ w tym samym module, w ktrym wystpuje modu
* $"$$ *- +),

Rozdzia 13.  SNMPv2 bazy MIB i zgodno

395


 Makro NOTIFICATION-GROUP
!/#. 1/ >>? )#
-. / >>?  +  .
2/2   '
2.2 "
+.
B/ / >>? 8'CB/ )$ !D
 +  . >>? 2!/2 2@2  +   2A2
 +   >>?  +   E  +   2(2  +  
 +   >>? 8'C  +  D
  ' >>? 2 ' 2 E 2  2 E 2 2
+. >>? 2!2 " E 
" >>? 2222    2222


 klauzula )) wskazuje, czy dana definicja jest aktualna, czy przestarzaa,
 klauzula ') $+$ * zawiera tekstow definicj grupy razem z opisem

wszelkich relacji z innymi grupami (warto podawana przy wywoywaniu


makra * $"$$ *- + jest identyfikatorem obiektu przypisanym do grupy),
 klauzula " * moe zawiera tekstowy odsyacz do grupy definiowanej

w innym module informacji.


Prostym przykadem definicji * $"$$ *- + jest definicja powiadomie z bazy SNMPv2 MIB:
)  +  #' !/#.
!/ @   ( '   ! ' A
/ '
.
2
  + * %( * 6 % * 1.89 '  
<;2
>>? @ 1)#' H A

 %"& &$


Makro # ' #+$* okrela minimalny zestaw wymaga w odniesieniu do implementacji jednego bd wielu moduw MIB. Makro to przedstawiono na listingu 13.3. Znaczenie klauzul )), ') $+$ * i " * jest analogiczne do tych samych w makrach
%/)- + i * $"$$ *- +.


Makro MODULE-COMPLIANCE
11./ 1/ >>? )#
-. / >>? 2/2   '
2.2 "
+.
1'.
B/ / >>? 8' CB/ )$ !D
  ' >>? 2 ' 2 E 2  2 E 2 2
+. >>? 2!2 " E 
1'. >>? 1' E 
1' >>? 1' E 1' 1'
1' >>? 212 1'
3
 '7'

396

Cz IV  SNMP wersja 2 (SNMPv2)


1  .
  .
1' >>? '+  1' +  E 
1' +  >>? 8' C' )$ !D E 
1  . >>? 21//-#.2 2@2 #' 2A2 E 
#' >>? #' E #' 2(2 #'
#' >>? 8' C' )$ !D
  . >>?    E 
   >>?    E      
   >>?   #' E %
  #' >>? 2#.2 8' C )$ !D
2.2 "
% >>? 2)$2 8' C % D
  ".
I   ".
/ .
2.2 "
'  < 
   *'3' -/0  * '
  ". >>? 2-/02  C-/0D E 
'  < 
   *'3' -/0  * '
I   ". >>? 2I-/02  CI -/0D E 
/ . >>? 21/2 /  E 
/  >>? 2   2 E 2  + + 2 E 2 2 E 2
 2 E
2  2
" >>? 2222    2222


Klauzula # ' uywana jest raz lub wicej razy, tak aby wymieni kady modu objty
wymogiem implementacji. Klauzula, ktra odnosi si do tego moduu, nie musi zawiera
jego nazwy. Inne klauzule # ' identyfikowane s poprzez nazw moduu i, opcjonalnie,
identyfikator obiektu.
Kada sekcja # ' okrela te grupy, ktre s obowizkowe i te, ktre s opcjonalne dla
danej implementacji. Jeeli wystpuje chocia jedna grupa obligatoryjna, wwczas doczana jest klauzula #*' 2- +), ktra zawiera wykaz wszystkich grup obowizkowych dla danego moduu. Aby zachowa zgodno z danym moduem, implementacja musi
obejmowa wszystkie grupy obowizkowe.
Dla kadej grupy, ktra jest warunkowo obowizujca lub bezwarunkowo opcjonalna,
przewidziano oddzieln klauzul o nazwie - +. Klauzula ') $+$ * wykorzystywana
jest do specyfikacji okolicznoci, przy ktrych dana grupa warunkowo obowizuje (np. jeeli
zaimplementowany jest konkretny protok bd jeli implementowana jest inna grupa).
Wykorzystujc klauzul %/, mona okreli ucilone wymagania w stosunku do
obiektw nalecych do jednej z wyspecyfikowanych grup. Dla kadego takiego obiektu
zamieszcza si oddzieln klauzul %/. Moliwe s trzy rodzaje dopasowa. Pierwsze
dwa stosuj si do skadni danego obiektu, ktrego warto mona odczytywa bd zapisywa. Dopuszczalne s nastpujce ucilenia:
 zakresu dla typw $*- i -3 zakres dopuszczalnych wartoci moe by

dostosowany przez zwikszenie dolnych ogranicze, redukcj grnych ogranicze


i (lub) zmniejszenie iloci alternatywnych wyborw wartoci i zakresu,

Rozdzia 13.  SNMPv2 bazy MIB i zgodno

397

 wylicze dla typw $*- i %$) $*- wyliczenie poszczeglnych wartoci

moe by dopasowane przez odrzucenie jednej lub wicej wartoci,


 rozmiaru dla typw ) $*- rozmiar wartoci, wyraony w znakach, moe

by ucilony przez podniesienie dolnego ograniczenia, redukcj grnego


ograniczenia i (lub) zmniejszenie iloci alternatywnych wyborw wartoci i zakresu,
 zestawu dla typw ) $*- zestaw dozwolonych znakw w wartoci moe

by ograniczony przez wprowadzenie kolejnych podtypw (patrz dodatek B.1


omwienie podtypw).
Wymienione dopasowania definiowane s w klauzuli )2*0 dla obiektw tylko do odczytu
i w klauzuli 4 $)2*0 dla obiektw, ktrych warto mona nastawia.
Trzecia grupa ucile dotyczy kategorii dostpu do obiektu. W celu zdefiniowania minimalnego poziomu dostpu uywana jest klauzula #$*)). Implementacja jest zgodna,
jeli poziom dostpu przez ni zapewniany jest wikszy lub rwny okrelonemu w ten
sposb poziomowi minimalnemu lub te mniejszy lub rwny poziomowi maksymalnemu
specyfikowanemu w klauzuli #0)) definicji obiektu.
Warto podawana przy wywoywaniu makra # ' #+$* jest identyfikatorem
obiektu przypisanym do danej definicji zgodnoci. Przykadowe wyraenie zgodnoci dla
bazy SNMPv2 MIB wyglda nastpujco:
)    11./
/ '
.
2I 4  3=  % * 1.89  '%5  1.89 1);2
1
1//-#. @ #'(  #'(   #'(
)  +  #' A
#. ' #'
.
2#'  %    %  % * 1.89( * 6 7''%5
'
3       7 3=  ;
>>? @ 1)   9 A

Powyszy modu okrela, e agent bdzie zgodny, jeli zaimplementuje wszystkie grupy
wymienione w klauzuli #*' 2- +) i zapewni wsparcie dla mechanizmw uwierzytelniania opartych na spoecznociach (zdefiniowanych w SNMPv1).

'% ()*) +,)-.)


Makro -*+%$$$) jest uywane do dokumentowania moliwoci jednostki protokou SNMPv2 penicej rol agenta. Makro to wykorzystywane jest do opisu dokadnego
poziomu wsparcia, ktre zapewnia agent w odniesieniu do wybranej grupy MIB. Definicja
taka moe okrela, e niektre obiekty maj ograniczon lub rozszerzon skadni czy
poziom dostpu. cile mwic, tego typu okrelenia moliwoci specyfikuj dopasowania
lub odmiany w odniesieniu do makr %/2+ w moduach bazy MIB. Zauwamy, e te
dopasowania czy odmiany nie odnosz si do makr # '+%$$$).

398

Cz IV  SNMP wersja 2 (SNMPv2)

Formalna definicja moliwoci agenta moe by pomocna przy optymalizacji wspdziaania. Jeeli stacja zarzdzajca zawiera okrelenia moliwoci wszystkich agentw, z ktrymi wspdziaa, wwczas moe tak dopasowa ich zachowanie, aby zapewni optymalne
wykorzystanie zasobw wasnych, agenta i sieciowych.
Listing 13.4 prezentuje makro -*+%$$$). Klauzula + ' ) zawiera
tekstowy opis wersji produktu zawierajcego danego agenta, a klauzula ') $+$ * zawiera
tekstowy opis samego agenta. Reszta definicji zawiera po jednej sekcji dla kadego moduu
MIB, dla ktrego agent zapewnia pen bd czciow implementacj.

 Makro AGENT-CAPABILITIES
/#/./) 1/ >>? )#
-. / >>? 2./2 "
2/2   '
2.2 "
+.
1'.
B/ / >>? 8' CB/ )$ !D
  ' >>? 2 ' 2 E 2 2
+. >>? 2!2 " E 
1'. >>? 1' E 
1' >>? 1' E 1' 1'
1' >>? 2..2 1'
22 2@2 #' 2A2
B  .
1' >>?  +  1' + 
1' +  >>? 8' C' )$ !D E 
#' >>? #' E #' 2(2 #'
#' >>? 8' C )$ !D
B  . >>? B   E 
B   >>? B   E B   B  
B   >>? % B   E  +  B  
 +  B   >>? 2B//2 8' C  +  D
/ .
2.2 "
% B   >>? 2B//2 8' C % D
  ".
I   ".
/ .
 .
+B.
2.2 8' C    " D
  ". >>? 2-/02  C-/0D E 
I   ". >>? 2I-/02  CI -/0D E 
/ . >>? 2/2 /  E 
/  >>? 2   2 E 2  + + 2 E 2 2 E 2
 2 E
2  2 E 2
  2
 . >>? 2/2 2@2  2A2 
 >>?  E  2(2 
 >>? 8' C % D
+B. >>? 2!B/2 2@2 8' C+8 %   "D 2A2 E 
" >>? 2222    2222


Rozdzia 13.  SNMPv2 bazy MIB i zgodno

399

Opis kadego moduu MIB rozpoczyna si klauzul )++ ), okrelajc nazw moduu.
Nastpnie klauzula $*') specyfikuje wykaz grup MIB z tego moduu, ktre agent
implementuje. Ostatecznie, dla kadej obsugiwanej grupy MIB, w definicji zawartych
moe by zero lub wicej specyfikacji obiektw, ktre agent implementuje w odmienny
lub dopasowany sposb w porwnaniu z makrodefinicj %/2+ tych obiektw.
Dla kadego z takich obiektw okrela si, co nastpuje. Po pierwsze, klauzula . $$ *)
okrela nazw takiego obiektu. Nastpnie wystpi moe jedna lub wicej czci okrelajcych dopasowania. )
5+ i 4)
5+ maj t sam semantyk, co analogiczne
elementy makra # ' #+$*.  + uywane jest do oznaczenia, e agent
zapewnia niszy poziom dostpu ni okrelony w klauzuli #0)) definicji danego
obiektu. !+ okrela nazwy obiektw kolumnowych z wierszy pojciowych,
ktrym naley bezporednio przypisa wartoci poprzez operacj  protokou zarzdzania,
aby agent umoliwi zmian stanu instancji kolumny statusowej tych wierszy na aktywny
((6). Element '. okrela ucilon warto '". dla danego obiektu. Klauzula ') $+$ * zawiera tekstowy opis odmiany bd dopasowania implementacji.
Warto podawana przy wywoywaniu makra -*+%$$$) jest identyfikatorem
obiektu przypisanym do danej definicji moliwoci.
Specyfikacja SNMPv2 zawiera uytkowy przykad okrelania moliwoci, pokazany na
listingu 13.5. W przykadzie tym agent implementuje SNMPv2, interfejsy, IP, TCP, UDP
i moduy EVAL bazy MIB. Dla kadego z tych moduw okrelono zakres implementacji.

 Przykad okrelenia moliwoci agenta z wykorzystaniem makra AGENT-CAPABILITIES
" /#/./)
. /
2I   ,;,   /1  J)2
/
'
.
2 /1  J)2
..

B//
.
..


1.891)
@   #'( #'(  #'(
)  +  #' A
 
2.'7*   
 3 *4  
 
''   '2
!1)
@ +##'( +. * #' A

B//
-/0
.

+/   '
# @ 'C,D( 
C9D A
2I J)   4 ' 
<  '  
 2

B//
-/0
.

+  '
# @ 'C,D( 
C9D A
2I J) + % %  32

..

B//
-/0
.

.1)
@ #'( #' A
+' 
# C9KK;;9KKD
2* %
 =<
J)2

400

Cz IV  SNMP wersja 2 (SNMPv2)


B//
/
.

/
   
2+ %   :
J)2

B//
/
.

 1  


@  1 . / A
2
3
  '
J)
 36
 '
 *7'( %* '  '2

..

B//
/
.

.1)
@ #' A
  

2I J)   4  3  <2

..


.1)
@ '#' A

..


B/1)
@ +' #'( " #' A

B//
/
.

" 
@ 8   A
214
3 <
32

>>? @  /  , A

    !" #


$%&'&&
Jak wyjaniono w rozdziale 6., dokument RFC 1573 (Evolution of the Interfaces Group of
MIB-II Rozwinicie grupy interfaces w bazach MIB-II) porzdkuje i udoskonala grup
 z RFC 1213 (MIB-II), wykorzystujc w definicjach SMIv2.
Grupa  w bazach MIB-II definiuje oglny zestaw zarzdzanych obiektw, tak
by kady interfejs sieciowy mg by zarzdzany niezalenie od jego typu. Takie oglne
podejcie jest dostosowane do typowych architektur protokow, w ktrych protok
midzysieciowy, taki jak IP, zaprojektowany zosta do pracy ponad jakimkolwiek interfejsem sieciowym. Poza tym dziki uyciu moduw dopasowanych do typu architektur,
takich bazy MIB dla sieci ethernet czy token-ring, moliwe jest dodanie kolejnych obiektw
wymaganych w danym typie interfejsu sieciowego.
Dowiadczenia z pracy z grup  i moduami specyficznymi dla rnych typw
sieci wykazay istnienie pewnych niedostatkw tej grupy, zdefiniowanej w MIB-II. Dokument RFC 1573 zajmuje si tymi brakami przez wyjanienia, korekty i rozwinicie struktury
MIB przeznaczonej dla interfejsw. Dokument ten obejmuje w szczeglnoci nastpujce
problemy:


Numeracja interfejsu (Interface Numbering) grupa  z MIB-II


(rysunek 6.2) definiuje obiekt *  jako liczb interfejsw sieciowych
obecnych w systemie i specyfikuje, e kada warto obiektu $5 musi

Rozdzia 13.  SNMPv2 bazy MIB i zgodno

401

zawiera si w przedziale od 1 do wartoci *  i pozostawa niezmienna.


To wymaganie jest kopotliwe w urzdzeniach pozwalajcych na dynamiczne
dodawanie i usuwanie interfejsw sieciowych, tak jak ma to miejsce na przykad
w przypadku pocze typu SLIP/PPP.


Podwarstwy interfejsu (Interface Sublayers) istnieje konieczno wyrniania


kilku podwarstw poniej warstwy midzysieciowej.



Poczenia wirtualne (Virtual Circuits) potrzebne jest miejsce na odnotowywanie


faktu, e pod warstw midzysieciow danego interfejsu znajdowa si mog rne
poczenia wirtualne.



Interfejsy bitowe, znakowe i o staej dugoci (Bit, Charakter andFixed-Length


Interfaces) zorientowanie tablicy  na transmisj pakietow moe by
nieodpowiednie w przypadku interfejsw niepakietowych z natury, jak choby
wykorzystujcych transmisj znakow (przykadowo PPP na EIA-232), bitow
(na przykad DS1) czy przesyajcych paczki o staej, okrelonej dugoci (ATM).



Rozmiar licznikw (Counter Size) wraz ze wzrostem szybkoci sieci minimalny


czas dla 32-bitowych licznikw uleg skrceniu, powodujc powstawanie problemw
z przepenieniami.



Prdko interfejsu (Interface Speed) przedzia wartoci obiektu ) jest


ograniczony od gry do 231 1 b/s lub poniej 2,2 Gb/s. Taka prdko jest osigana
lub nawet przekraczana przez niektre interfejsy (np. SONET OC-48 2,448 Gb/s).



Liczniki Multicast/Broadcast (Multicast/Broadcast Counters) liczniki w 


przewidziane s do cznego obejmowania transmisji typu Multicast i Broadcast.
Niekiedy przydatne s jednak odrbne liczniki dla pakietw obu typw.

Dodanie nowych wartoci 


 potrzebna jest moliwo dodawania nowych
wartoci wyliczeniowych obiektu 
. Sposb zdefiniowania obiektu 

w bazie MIB-II powoduje, e nowe wartoci dostpne s tylko w nowych wydaniach
MIB, co zdarza si raz na kilka lat.

 )

definicja obiektu ) w MIB-II jest niejednoznaczna.


Niektrzy implementatorzy nadali temu obiektowi warto identyfikatora typu
%/$'*$"$ bazy MIB dostosowanej do rodzaju stosowanego medium.
Inni wykorzystali do tego celu identyfikator tabeli dostosowanej do rodzaju
medium lub identyfikator wpisu z tej tabeli bd nawet identyfikator obiektu
indeksowego tej tabeli.

Dalej przyjrzymy si, w jaki sposb uwzgldniono kady z tych problemw.


Dokument RFC 1573 zawiera powtrzenie, z niewielkimi modyfikacjami, definicji grupy
 z MIB-II. Dodatkowo wprowadza cztery nowe tabele (rysunek 13.4):
 Tabel rozszerze (Extensions Table) (0),
 Tabel stosu (Stach Table) ()7),
 Tabel testw (Test Table) ( ),
 Tabel otrzymanych adresw (Receive Address Table) ( ( ).

402

Cz IV  SNMP wersja 2 (SNMPv2)


 Dodatki do grupy interfaces wprowadzone w SNMPv2

 )* ( 

Grupa ta w RFC 1573 ma identyczn struktur jak grupa  w MIB-II. Skada si
wic z obiektu *  i tabeli . Wan rnic jest klauzula ') $+$ * obiektu
$5, ktra brzmi nastpujco:

Rozdzia 13.  SNMPv2 bazy MIB i zgodno

403

Wielko jednoznaczna, wiksza od zera, dla kadego interfejsu bd podwarstwy


interfejsu w zarzdzanym systemie. Zaleca si, by przydzielane byy kolejne numery,
poczynajc od 1. Warto ta dla kadej podwarstwy interfejsu musi pozostawa
niezmienna przynajmniej od momentu inicjalizacji danej jednostki systemu
zarzdzania do momentu kolejnej jej inicjalizacji.
Obiekt *  nadal odzwierciedla liczb interfejsw, a wic rwnie liczb wierszy
w tabeli . Jednake nie jest konieczne ograniczanie zakresu numeracji do przedziau
od 1 do wartoci * . Pozwala to na dynamiczne dodawanie i usuwanie interfejsw.
Dokument RFC 1573 pozwala, aby do jednego fizycznego interfejsu odnosio si wiele
wierszy tabeli , po jednym dla kadej logicznej podwarstwy. Jednak dokument ten
zaleca oszczdne stosowanie tego typu strategii. Poza tym zaleca si niestosowanie oddzielnych wierszy w tabeli dla pocze wirtualnych.
Ranga niektrych obiektw tabeli  zostaa zdeprecjonowana. I tak ograniczono
znaczenie obiektw $* +7 i  * +7 , zliczajcych wszystkie pakiety typu
Nonunicast, wprowadzajc w tabeli 0 liczniki odrbnie zliczajce pakiety typu
Multicast i Broadcast. Podobnie ma si rzecz z obiektem  8, ktry by rzadko
implementowany. Take obiekt ) straci znaczenie ze wzgldu na swoj niejednoznaczno i fakt, e nie dostarcza adnych dodatkowych informacji poza tym, co zapewnia
obiekt 
.
Kolejn zmian w tabeli  jest inna skadnia 
, bdca obecnie konwencj
tekstow $*
, ktra moe zosta przedefiniowana (przez wprowadzenie nowych
wartoci) bez koniecznoci ogaszania nowej wersji bazy MIB. Za aktualizacj $*

jest odpowiedzialna organizacja IANA (Internet Assigned Number Authority Wadze
przydzielania numerw w Internecie).

!/
/ / *)   ,))* ( 

Tabela 0 dostarcza dodatkowych informacji w uzupenieniu tabeli . Tabela ta
i obiekty do niej wpisywane definiowane s nastpujco:
+0 )$-.
-/0
 ! +0 
1/0/
   
/
'
.
2I *3
 6
 35   +%6
;  3
 6
*= % 33
 =<
 * ' +';   3
  *
  *    +%';2
>>? @ +1)%  , A
+0  )$-.
-/0
+0 
1/0/
   
/
'
.
2I  3
%5  *
 + % 3353 ( 
   
 +%'2
/#1 @ +  A
>>? @ +0 , A

404

Cz IV  SNMP wersja 2 (SNMPv2)


+0  >>?  @ +
+1'  .* 
+)  .* 
+' 1'  .* 
+' )  .* 
+M  
+M  .* 
+M1'  .* 
+M)  .* 
+M'   
+M'   .* 
+M' 1'  .* 
+M' )  .* 
+ *

+M 
+.  ''1
+ .

    (
' L9(
' L9(
' L9(
' L9(
' NJ(
' NJ(
' NJ(
' NJ(
' NJ(
' NJ(
' NJ(
' NJ(
#(
#'L9(
' B'(
' B' A

Jak wida, tabela 0 jest poszerzeniem tabeli . Dlatego te indeksowana jest
przez $5 z . Tabela ta zawiera obiekt *  bdcy tekstowym odwoaniem do
interfejsu. Jeli rne wpisy tej tabeli odwouj si do rnych podwarstw tego samego
interfejsu, wwczas wszystkie one maj tak sam warto * .
Nastpne cztery obiekty kolumnowe ($# +7 9 $%! +7 9  #
 +7 9  %! +7 ) zliczaj pakiety typu Mulicast i Broadcast odebrane i transportowane przez dany interfejs. Liczniki te zastpiy wczeniejsze $* 7 i  
* +7 z tabeli .
Dalsze osiem obiektw (:$  9 :$ +7 9 :$# +7 9 :$%!

 +7 9 :   9 :  +7 9 : # +7 9 : %! 
+7 ) okrela si jako liczniki duej pojemnoci. Wszystkie one s 64-bitowymi wersjami
analogicznych licznikw z tabeli , z t sam semantyk. Dziki nim agent jest w sta-

nie poprawnie zlicza pakiety w interfejsach o duej prdkoci przesyu danych.


Obiekt 7'!1 jest wyliczeniowym typem $*- z wartociami 
  . Obiekt ten wskazuje, czy dla danego wpisu powinny by generowane puapki typu 7 i 7'!1. Domylnie obiekt ten powinien mie warto 
 , jeli dany wpis definiuje interfejs dziaajcy w oparciu o inny interfejs (jak okrelono
w )7). W przeciwnym razie generowanie wspomnianych puapek jest dopuszczalne i obiekt ten powinien by ustawiony na warto;
Nastpny obiekt,:)9to miernik estymujcy aktualn szybkoci transferu danych interfejsu wyraon w Mb/s. Jeeli obiekt ten ma warto n, to rzeczywista prdko przesyu danych mieci si w jednostronnie domknitym przedziale (n0.5,n+0.5].
Obiekt+!  ! #!jest wyliczeniowym typem $*-  z wartociami 
i  . Obiekt ten ma wartowwczas, gdy interfejs akceptuje wszystkie
transportowane ramki lub pakiety, i   , gdy interfejs akceptuje tylko te pakiety
(ramki), ktre adresowane s dla danej stacji. Definicja ta nie obejmuje pakietw typu
Multicast i Broadcast;
Ostatni obiekt, !!+ , ma warto , gdy podwarstwa interfejsu posiada
cze fizyczne, i warto    w przeciwnym razie.

Rozdzia 13.  SNMPv2 bazy MIB i zgodno

405

  , 

)* ( 

Tabela )7 ukazuje relacje pomidzy rnymi wierszami tabeli  zwizanymi z tym samym fizycznym interfejsem do medium. Wskazuje te podwarstwy, ktre
dziaaj ponad innymi. Kady wpis tabeli )7 definiuje powizania midzy
dwoma wpisami w . Obiekt )7:
 zawiera warto indeksu $5
wyszej z dwch powizanych podwarstw; z kolei obiekt )7!1
 ma warto
indeksu $5 niszej podwarstwy. Tabela ta jest podwjnie indeksowana przez te obiekty. Do tworzenia i usuwania wpisw tej tabeli wykorzystywany jest obiekt )7)
posiadajcy skadni konwencji !1) (zobacz dodatek 11A).

'  , 
0-)* ( 

Tabela   okrela obiekty, umoliwiajce zarzdcy nakazanie agentom przeprowadzenie rnych testw interfejsu. Tabela ta zawiera jeden wpis dla kadego interfejsu.
Obiekty z tej tabeli zebrano w tabeli 13.3.
 

Obiekty tabeli ifTestTable
Obiekt

Skadnia

Tryb dostpu Opis

+ 

 !
+  

NA

Tabela umoliwiajca zarzdcy przeprowadzanie testw

+  



NA

Opis testu dla danego interfejsu

+ 

 / 

RW

Identyfikuje biece wywoanie testu

+   '

#

RW

Wskazuje, czy ktry zarzdca ma aktualnie prawa


wymagane do wywoania testu danego interfejsu;
przyjmuje wartoci C,D i C9D

+  

/' ' 

RW

Identyfikuje test aktualnie trwajcy bd taki, ktry


ma zosta wywoany

+ '

#

RO

Wskazuje wynik ostatniego testu

+ 

)$ !

RO

Kod zawierajcy szczegowe informacje o wyniku testu

+ 



  

RW

Wskazuje na waciciela danego wpisu tabeli

Kady wpis w tabeli   daje trzy moliwoci:




Umoliwia zarzdcy, przez ustawienie wartoci obiektu  


, okrelenie testu,
jakiemu poddany ma zosta interfejs. Po zadaniu tej wartoci agent uruchamia test.



Umoliwia zarzdcy uzyskanie wynikw testu przez odczyt wartoci obiektw


    i  !. Wyniki s rejestrowane we wspomnianych obiektach
po zakoczeniu testu przez agenta.



Zapewnia mechanizm umoliwiajcy poprawne przeprowadzenie testu tylko jednemu


zarzdcy w danej chwili. Jednoczenie gwarantuje, e aden test nie zostanie
zadany w trakcie trwania innego testu. Wykorzystuje si w tym celu obiekty
 $ oraz  ) .

406

Cz IV  SNMP wersja 2 (SNMPv2)

Listing 13.6, zaczerpnity z definicji tabeli  , objania logik korzystania z tej
tabeli. Kiedy zarzdca zechce przeprowadzi test na danym interfejsie, najpierw wysya
rozkaz - ,  w celu pobrania waciwego wiersza tabeli i odczytania wartoci obiektw  $ i  ) . Jeli status testu ma warto !$ 9 zarzdca moe kontynuowa procedur; w przeciwnym razie musi ponawia pytanie a do zwolnienia wiersza.

 Logika tabeli ifTestTable

O6>
 3 C + ( +   'D
6* C +   ' P?  D @
QR
R.:  
3 * 7'(
R%* 7' 
  '  335   *+ ''%
RQ
*6 *  6S  
 3C + ( +   'D
A
QR
R   '4
 T 6'%  3%5<
RQ

 =<O* ? + 
%= C ' 
C +  ?
 =<O* ( +   ' ? (
+ 
 ? U6%.UD ?? )VWD
QR
R 335  3%57 
3 T 
6  U
O6U
RQ
**O 
O6X
QR
R)* ' 

RQ
' 
   6
 '
QR
R'     '
RQ
' 
C +   ?  OO3
3 DX
 3*
   3*Y 3   '  3
 
 = + '
 3*Y 3 '  '  ' 

 =< + '
 ' 
 3   * +   '  U U
 
3*   *

 *6
 ' 3 + 
%= C +  ??
 =<O* Z,D
 * 5 


Gdy okae si, e dany wiersz nie jest zajty, zarzdca bdzie prbowa zada testu,
uywajc w tym celu tej samej wartoci  $, ktr ostatnio odebra. Warto ta jednoznacznie identyfikuje kady test. Zarzdca wysya ) , , prbujc ustawi pole 
$ na odebran warto. Obiekt  $ ma skadni  $. Przypomnijmy z podrozdziau 12.3.5, e obiekt o takiej skadni uywany jest w nastpujcy sposb: jeeli
bieca warto instancji tego obiektu w agencie wynosi K i od zarzdcy odebrane zostanie
danie ustawienia go na t sam warto, operacja ta koczy si pomylnie, a warto
obiektu zwikszana jest o 1. W przypadku, gdy odebrana warto jest rna od K, test si nie
udaje. Tak wic jeli zarzdca odczyta warto pola  $, a nastpnie sprbuje ustawi
je na tak sam warto, to prba ta zakoczy si pomylnie jedynie wwczas, gdy aden
inny zarzdca nie przeszkodzi i nie rozpocz wasnego testu.

Rozdzia 13.  SNMPv2 bazy MIB i zgodno

407

Jeeli ustawienie  $ powiedzie si, agent zmieni warto  ) na $ ,
blokujc w ten sposb prby innych zarzdcw, a ) 1 na warto przesan przez
zarzdc. Nastpnie agent wyle PDU z odpowiedzi informujc zarzdc o pomylnym
przeprowadzeniu operacji. W ten sposb dany zarzdca przejmuje konkretny wiersz w tymczasowe posiadanie.
Po przejciu wiersza zarzdca moe kontynuowa wywoanie testu. Odbywa si to przez
wysanie rozkazu ) ,  ustawiajcego  
 na warto wskazujc, ktry
test naley przeprowadzi. W odpowiedzi agent rozpoczyna wykonywanie testu i ustawia
pole     na warto +! 3. Po zakoczeniu testu umieszcza jego wyniki
w polu    , ktre przybiera moe nastpujce wartoci:
 ! do tej pory nie zadano przeprowadzenia adnego testu,
    test zakoczony pomylnie,
 +! 3 test trwa,
 !)!6 test nie jest zaimplementowany,
 ! < test nie moe zosta przeprowadzony w zwizku ze stanem

systemu,
 != test zosta przerwany,
 > test zakoczy si niepomylnie.

Dodatkowe informacje mog si znajdowa w  !.

1INPCVCDGNCQFGDTCP[EJCFTGUY
Tabela ta zawiera po jednym wpisie dla kadego adresu (typu Multicast, Broadcast i Unicast), dla ktrego dany system odbiera bdzie pakiety w jednym z interfejsw, z wyjtkiem
pracy w trybie Promiscuous. Oznacza to, e tabela ta zawiera wszystkie adresy, ktre system
rozpoznaje i dla ktrych przechwytywa bdzie pakiety zawierajce te adresy jako jeden
z adresw docelowych.
Tabela ta skada si z trzech obiektw kolumnowych:
  (  konkretny adres typu Multicast, Broadcast lub Unicast,

ktry system rozpoznaje jako odpowiedni adres docelowy do przechwytywania


pakietw,
  ( ) uywany do tworzenia i likwidacji wierszy w tej tabeli,
posiada skadni !1) 9
  ( 
 wskazuje, czy adres jest typu !, (!  czy
!.!3; adres typu !(! (nieulotny) bdzie istnia take po restarcie
systemu, natomiast adres typu (! (ulotny) zostanie utracony. Adres typu
! (inny) oznacza, e informacja ta nie zostaa udostpniona w danej tablicy.

408

Cz IV  SNMP wersja 2 (SNMPv2)

( $!  
W rozdziale tym opisano dwie bazy MIB zwizane ze specyfikacj SNMPv2. Baza SNMPv2 MIB zawiera informacje dotyczce wykorzystania samego protokou. Rozszerzenie
grupy  , wprowadzone w RFC 1573, zdefiniowane jest przy uyciu SMIv2
i wykorzystuje niektre waciwoci SNMPv2 omwione w tym rozdziale.
Specyfikacja SNMPv2 zawiera mechanizm opisu wymaga zgodnoci z dan baz MIB
oraz rodki umoliwiajce producentom okrelanie zakresu swoich implementacji. W dokumencie poruszajcym zagadnienia zgodnoci zdefiniowano cztery makra:
 %/- + wskazuje te obiekty w MIB, ktre s czci grupy zgodnoci,
 * $"$$ *- + identyfikuje zbir powiadomie,
 # ' #+$* ustala wymagania w stosunku do agenta pod wzgldem

implementacji moduw i obiektw bazy MIB,


 -*+%$$$) definiuje moliwoci poszczeglnych implementacji agenta.

) #*+,  #*$# -$#+ & 


TestAndIncr ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
Reprezentuje informacj w postaci liczby cakowitej, wykorzystywan do operacji atomowych. Jeeli protok zarzdzania wykorzystany zostanie do zmiany wartoci instancji
obiektu o tej skadni, nowa warto dostarczana poprzez protok zarzdzania musi by
identyczna z aktualn wartoci tego obiektu. W przeciwnym razie operacja  protokou
zarzdzania zakoczy si niepowodzeniem i zgoszeniem bdu !  .
(sprzeczna warto). W przypadku zgodnoci nadesanej wartoci: jeeli aktualna warto
tego obiektu jest maksymalna (tj. 231 czyli 2 147 483 647 dziesitnie), wwczas zostanie
wyzerowana, w innym przypadku zwikszana jest o jeden (zauwamy, e niezalenie od
tego, czy operacja  protokou zarzdzania si powiedzie, pola ( w jednostce PDU dania i odpowiedzi s identyczne).
Warto klauzuli )) dla obiektu majcego tak skadni jest albo read-write, albo read
create. W momencie tworzenia obiektu kolumnowego o takiej skadni jego warto moe
by dowolnie okrelona poprzez protok zarzdzania.
W przypadku reinicjalizacji czci systemu zwizanej z zarzdzaniem sieci warto
wszystkich instancji obiektw o tej skadni musi by albo zwikszana od wartoci sprzed
reinicjalizacji, albo (jeli warto ta jest nie znana) musi by nadana jej warto pseudolosowa.
SYNTAX INTEGER (0..2147483647)

You might also like