Mis on aktiivne sõnum?

Aktiivne sõnum (AM) on andmetöötluses kasutatav protsessidevahelise suhtluse tüüp, mille puhul arvutiprogrammi alamprogrammi või funktsiooni saab käivitada täiesti erinev arvuti kui see, kus see asub. Seda tüüpi sõnumid on niivõrd fundamentaalse vorminguga, et võimaldavad rohkem kasutada võrgu ribalaiust standardsete Interneti-protokollide (IP) kaudu. Seda peetakse ka asünkroonseks sõnumiedastussüsteemiks, kuna sellele reageeritakse kohe, selle asemel, et oodata programmiga sünkroonimiseks teatud hetke.

Aktiivse sõnumivahetuse mudeli puhul toimub suur osa tööst riistvara tasemel, kus riistvara suhtleb operatsioonisüsteemi draiveritega. Kuna see alumine tase on tavaliselt reserveeritud operatsioonisüsteemi äritegevusele, on sõnumid üles ehitatud nii, et need on võimelised kandma juhiseid kõrgema taseme kasutajafunktsioonide jadale juurdepääsuks. AM-i päises on selle töötleja aadress, mida nimetatakse töötlejaks. Käsitleja on spetsiaalne kasutajataseme käsk, mis võimaldab sõnumi keha töödelda protsessorit läbiva arvutuse abil. Aktiivse sõnumi põhiosa on seega funktsiooni argument või andmed, mille alusel arvutus peab tegutsema.

Arvestades aktiivse sõnumi konstruktsiooni olemust, on see võimeline edastama olemasolevaid IP-võrgu sideprotokolle. Peamine erinevus seisneb aga selles, et selle alusel toimitakse kohe pärast kättesaamist, mitte aga mitmefaasilise saatmise, vastuvõtmise kinnitamise ja kohaletoimetamise meetodit. Sel viisil peab aktiivne sõnum võrku lihtsalt läbimiseks avatud toruks. Selle ainsad piirangud on füüsilise võrgu piirangud, kus sõlmede vaheline kaugus võib sõnumi latentsusaega mõjutada.

Aktiivne sõnumisüsteem töötab nii, et saatja täidab võrgu sõnumitega. Vastuvõtvas otsas ei ole puhverdamist, mille ainus vastus AM-le on sõnumi töötleja arvutus korraks katkestada, sõnum võrgust haarata ja oma tegevust jätkata. Ainus aeg, mil sõnumite puhverdamine toimub, on saatja pool, kus sõnumeid hoitakse kinni sõltuvalt sellest, kas võrk on saavutamas oma piire. Küsitlusmeetod hoiab võrgul vahekaarte, et süsteem teaks, millal rohkem sõnumeid sisestada. Aktiivsed sõnumid võimaldavad seega saadetud sõnumite pidevat kattumist kaugarvutites toimuvate arvutustega ning hoiavad need kõik kooskõlastatuna.

Kuigi aktiivne sõnumimeetod võib olla oma olemuselt lihtne, esineb selle rakendamisel mõningaid probleeme. Kuigi need on nii primitiivse ehitusega, on arvutisüsteemi sõnumite käsitlemiseks sageli vaja kohandatud kujundusega liidese draivereid. Aktiivsed sõnumid on mõeldud kasutamiseks ka arvutisõlmede vahel, mis kõik töötavad sama programmiga. Nii on saadetud ja vastuvõetud juhised sihtarvutis juba töötava programmi spetsiifilised.

Oma olemuse tõttu on aktiivsed sõnumid leidnud laialdast kasutust paralleelsetes andmetöötluskeskkondades, näiteks ühe protsessi ja mitme andme (SPMD) rakendustes. Need programmid töötavad suurtes arvutisüsteemide võrkudes, kus aktiivseid sõnumeid kasutatakse juhiste ja andmete edastamiseks masinate vahel. Sellised hajutatud süsteemid kasutavad meetodit tohutute andmemahtude tõhusaks töötlemiseks, mis muidu võtaks ühes masinas liiga kaua aega.