09.06. Maršrutētāju atklāšanas ziņojumi protokolā ICMP

Pēdējais mainījis Administrator 2011-06-06 17:16

09.06. Maršrutētāju atklāšanas ziņojumi protokolā ICMP

Agrāk šajā nodaļā minējām, ka viens veids, kā inicializēt maršrutēšanas tabulas, ir norādīt statiskus maršrutus konfigurācijas failos. To bieži izmanto, lai uzstādītu noklusētos ierakstus. Jaunāks veids ir izmantot ICMP maršrutētāju #term("reklamēšanās ziņojumus", "advertisement_message") un #term("lūguma ziņojumus", "solicitation_message").

Tam pamatā ir šāda pieeja: pēc #term("sāknēšanas", "bootstrapping") mītne apraida vai multiraida maršrutētāja lūguma ziņojumu. Viens vai vairāki maršrutētāji atbild ar maršrutētāja reklamēšanās ziņojumu. Turklāt maršrutētāji periodiski apraida vai multiraida sava maršrutētāja reklamēšanās ziņojumus, ļaujot jebkurai mītnei, kura klausās, atbilstoši izmanīt savu maršrutēšanas tabulu.

RFC 1256 [Deering 1991] apraksta šo divu ICMP ziņojumu formātu. #picref("f_9_6.gif", "9.6.attēls") parāda ICPMP maršrutētāja #term("lūguma ziņojuma", "solicitation_message") formātu. #picref("f_9_7.gif", "9.7.attēls") parāda ICMP maršrutētāja #term("reklamēšanās ziņojumu", "advertisement_message"), kuru izsūta maršrutētāji.

#pic("f_9_6.gif", "500")
9.6.attēls: ICMP maršrutētāja #term("lūguma ziņojuma", "solicitation_message") formāts

#pic("f_9_7.gif", "500")
9.7.attēls: ICMP maršrutētāja #term("reklamēšanās ziņojuma", "advertisement_message") formāts

Maršrutētājs vienā ziņojumā var reklamēt vairākas adreses. Adresu skaits ir "number" lauks. Adreses ieraksta izmērs ir 32 bitu vārdu skaits katrai maršrutētāja adresei - tas vienmēr ir 2. #term("Dzīves ilgums", "lifetime") ir sekunžu skaits, cik ilgi reklamētās adreses var uzskatīt par derīgām.

Pēc tam seko viens vai vairāki pāri ar IP adresi un tās #term("priekšrokas līmeni", "preference_level"). IP adresei jābūt vienai no sūtošā maršrutētāja IP adresēm. Priekšrokas līmenis ir 32 bitu vesels skaitlis ar zīmi, kurš norāda šīs adreses kā noklusētās maršrutētāja adreses priekšroku, salīdzinot ar citām maršrutētāju adresēm šajā pašā apakštīklā. Lielākas vērtības nozīmē adreses, kurām dodama priekšroka. Priekšrokas līmenis 0x80000000 nozīmē to, ka atbilstošo adresi, lai gan tā tiek reklamēta, saņēmējs nevar izmantot kā noklusēto maršrutētāja adresi. Noklusētā vērtība priekšrokas līmenim parasti ir 0.

Maršrutētāja darbības apraksts

Kad maršrutētājs sāk darbu, tas periodiski pārraida reklāmas ziņojumus visiem interfeisiem, kuri ir spējīgi apraidei vai multiraidei. Šie reklāmas ziņojumi nav precīzi periodiski, bet atstarpes starp tiem tiek #term("randomizētas", "randomize"), lai mazinātu varbūtību, ka radīsies sinhronizēšanās ar citiem maršrutētājiem šajā pašā apakštīklā. Parasts laika intervāls starp reklāmas ziņojumiem ir starp 450 un 600 sekundēm. Noklusētais #term("dzīves ilgums", "lifetime") reklāmas ziņojumam ir 30 minūtes.

Cits dzīves ilguma lauka pielietojums ir tad, ja interfeisu uz maršrutētāja uz brīdi atslēdz. Šajā gadījumā maršrutētājs var izsūtīt beigu reklāmu šim interfeisam, kur norādītais dzīves ilgums ir 0.

Papildus periodiskiem, nelūgtiem reklāmas ziņojumiem, maršrutētājs arī klausās #term("lūguma ziņojumus", "solicitation_message") no mītnēm. Tas atbild uz lūguma ziņojumiem ar saviem maršrutētāja reklāmas ziņojumiem.

Ja dotajā apakštīklā ir vairāki maršrutētāji, sistēmas administratora uzdevums ir atbilstoši konfigurēt priekšrokas līmeni katram maršrutētājam. Piemēram, galvenajam, noklusētajam maršrutētājam parasti būs augstāks priekšrokas līmenis nekā rezerves maršrutētājam.

Mītnes darbības apraksts

Sāknējoties, mītne parasti pārsūta trīs maršrutētāja lūgumziņojumus, ik pa 3 sekundēm. Tiklīdz kā tiek saņemts derīgs reklāmziņojums, lūgumi apstājas.

Mītne arī klausās uz reklāmām no blakusesošiem maršrutētājiem. Šie #term("reklāmziņojumi", "advertisement_message") var nomainīt mītnes noklusēto maršrutētāju. Tāpat, ja reklāmziņojumi netiek saņemti ilgāku laiku, pašreizējā noklusētā maršrutētāja dzīvescikls var #term("noilgt", "time_out").

Kamēr vien parastais noklusētais maršrutētājs darbojas, šis maršrutētājs sūtīs reklāmziņojumus ik pēc 10 minūtēm, katru ar #term("dzīvesilgumu", "lifetime") 30 minūtes. Tas nozīmē, ka mītnes maršrutēšanas tabulas noklusētais ieraksts nenoilgs pat tad, ja pazudīs viens vai divi reklāmziņojumi.

Implementācija

Maršrutētāja atklāšanas ziņojumus parasti ģenerē un apstrādā lietotāja (nevis kodola) process jeb dēmons. Tas pievieno vēl vienu programmu, kura labo maršrutēšanas tabulu #picref("f_9_1.gif", "9.1.attēlā"), lai gan tai vajag vienīgi pievienot vai izdzēst noklusēto maršrutēšanas ierakstu. Dēmonam būtu jābūt konfigurētam darboties kā maršrutētājam vai kā mītnei.

Šie divi ICMP ziņojumi ir jauni un nav atbalstīti uz visām sistēmām. Solaris 2.x ir vienīgā sistēma mūsu tīklā, kura atbalsta šos ziņojumus (in.rdisc.daemon). Lai gan RFC iesaka izmantot IP multiraidi, kad vien iespējams, maršrutētāju atklāšana var darboties arī, izmantojot apraides ziņojumus.

Tagi:
Izveidojis Kalvis Apsītis 2008-08-02 23:27
    
This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 6.4 - Documentation