Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

Një organizim i sistemit të

komunikimit(1)
Aplikacionet ekzekutohen gjithmonë në hoste, ku çdo host i ofron sistemit të
komunikimit një ndërfaqe nëpërmjet të cilës mesazhet mund të dërgohen për
transmetim. Hostet janë të lidhur me anë të një rrjeti serverash komunikimi, të
Komunikimi i orientuar nga cilët janë përgjegjes për kalimin e mesazheve ndërmjet hosteve. Do të supozojmë
se çdo host është i lidhur me ekzaktësisht një server komunikimi. Buffer-at mund
mesazhet të vendosen jo vetëm në hoste por edhe në serverat e komunikimit.

Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms,

Një organizim i sistemit të


Komunikimi persistent dhe transhient
komunikimit(2)
Konsiderojmë një sistem të postës elektronike të bazuar në modelin e • Komunikimi persistent – një mesazh që është nisur për
përmendur më sipër. Një host ekzekuton aplikacionin me anë të të cilit
përdoruesi mund të krijojë, dergojë, marrë dhe lexojë mesazhe. Çdo host transmetim ruhet nga sistemi i komunikimit derisa të
është i lidhur me ekzaktësisht një mail server (server komunikimi). Ndërfaqja dërgohet tek marrësi (mesazhi ruhet në një server
në hostin e përdoruesit e lejon programin e përdoruesit të dergojë mesazhe
në një destinacion specifik. Kur programi i përdoruesit nis një mesazh për komunikimi derisa të dërgohet me sukses në serverin
transmetim në hostin e tij, hosti fillimisht e dërgon mesazhin në mail serverin tjetër të komunikimit). Nuk është nevoja që aplikacioni
lokal ku do të ruhet përkohësish në një buffer output. dërgues të vazhdojë ekzekutimin pasi dërgon
Një mail server heq një mesazh nga buffer-i i tij output dhe e dërgon në mail
server-in destinacion. Ky i fundit e ruan mesazhin në një buffer input për mesazhin. Gjithashtu nuk është nevoja që aplikacioni
marrësin e destinuar (mailbox-in e marrësit). Nëse mail serveri destinacion marrës të jetë në ekzekutim kur mesazhi dërgohet.
është momentalisht i pa arritshëm, mail serveri lokal do të vazhdojë t’a ruaj
mesazhin. • Komunikimi transhient – një mesazh ruhet nga sistemi i
Ndërfaqja në hostin marrës i ofron një shërbim programit të marrësit me anë komunikimit për sa kohë që aplikacioni dërgues dhe
të të cilit ky i fundit mund të kontrollojë rregullisht për mesazhet që i kanë marrës janë në ekzekutim (nëse një server komunikimi
ardhur. Programi i përdoruesit mund të veprojë direkt në mailbox-in e
përdoruesit në mail serverin lokal, por në shumicën e rasteve i kopjon nuk mund të dërgojë një mesazh në serverin tjetër, ose
mesazhet e reja në një buffer lokal në hostin e tij. te marrësi, mesazhi humbet).

Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms,

Komunikimi asinkron dhe sinkron Format e ndryshme të komunikimit (1)


• Komunikimi asinkron – dërguesi vazhdon • Komunikimi persistent asinkron – një mesazh ruhet në menyrë persistente
ose në një buffer në hostin lokal, ose në serverin e parë të komunikimit.
menjëherë pasi ka dërguar mesazhin për (fig. a)
transmetim. Mesazhi ruhet në një buffer lokal në • Komunikimi persistent sinkron – mesazhet mund të ruhen në menyrë
persistente vetëm në hostin marrës. Dërguesi bllokohet derisa mesazhi i tij
hostin dërgues ose në serverin e parë të të ruhet në buffer-in e marrësit. Nuk është e nevojshme që aplikacioni
komunikimit. marrës të jetë në ekzekutim për të ruajtur mesazhin në hostin e vet lokal.
Një formë më e dobët e komunikimit persistent sinkron është kur dërguesi
• Komunikimi sinkron – dërguesi bllokohet derisa bllokohet derisa mesazhi i tij të ruhet në serverin e komunikimit të lidhur
mesazhi të ruhet në një buffer lokal në hostin me hostin marrës. (fig. b)`
• Komunikimi transhient asinkron – kur derguesi nis një mesazh për
marrës, ose derisa t’i dërgohet marrësit. Forma transmetim, mesazhi ruhet përkohësisht në një buffer lokal në hostin
më e forte e komunikimit sinkron është kur dërgues, pas kësaj dërguesi vazhdon menjëherë. Paralelisht sistemi i
komunikimit e dërgon mesazhin në destinacion ku pret ta dërgoje atë tek
dërguesi bllokohet derisa marrësi e ka procesuar marrësi, mundësisht duke e ruajtur atë në një buffer lokal. Nëse marrësi
mesazhin. nuk është në ekzekutim në kohën kur mesazhi mbërrin në hostin e
marrësit, transmetimi dështon. (fig. c)

Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms,

1
Format e ndryshme te komunikimit (2) Format e ndryshme të komunikimit (3)
• Komunikimi transhient sinkron vjen në forma të
ndryshme.
– Komunikimi transhient sinkron receiped-based –
dërguesi bllokohet derisa mesazhi të ruhet në një
buffer lokal në hostin marrës. Dërguesi merr një
njoftim dhe vazhdon. (fig. d)
– Komunikimi transhient sinkron delivery-based –
dërguesi bllokohet derisa mesazhi t’i dërgohet
marrësit për procesim të mëtejshëm. (fig. e)
– Komunikimi transhient sinkron response-based –
dërguesi bllokohet derisa të marr një mesazh përgjigje
nga marrësi. (fig. f) a) Komunikimi persistent asinkron
b) Komunikimi persistent sinkron

Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms,

Format e ndryshme të komunikimit (4) Format e ndryshme të komunikimit (5)

c) Komunikimi transhient asinkron e) Komunikimi transhient sinkron që bazohet në marrjen e mesazhit nga marrësi
për procesim të metejshem (delivery-based)
d) Komunikimi transhient sinkron që bazohet në marrjen e f) Komunikimi transhient sinkron që bazohet në marrjen e përgjigjes nga pala
një konfirmimi që kërkesa është pranuar (Receipt-based ) tjetër (response-based)

Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms,

Komunikimi transhient message- Komunikimi transhient message-


oriented oriented
Berkeley Sockets (1) Berkeley Sockets (2)
Primitiva Pershkrimi

Socket Krijon nje pike te re komunikimi

Bind Lidh nje adrese lokale me nje socket


Njofton gadishmerine per te pranuar lidhjet.
Listen
Eshte thirrje jo bllokuese
Accept Bllokon thirresin derisa te arrije nje kerkese

Connect Perpiqet te vendos nje lidhje

Send Dergon disa te dhena nepermjet lidhjes


Model i komunikimit connection-oriented qe
Receive Merr disa te dhena nepermjet lidhjes
perdor socket.
Close Mbyll lidhjen

Primitivat socket per TCP/IP.


Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms,

2
Komunikimi persistent
MPI (Message Oriented Interface) Modeli i radhitjes së mesazheve
Primitiva Pershkrimi (Message-Queuing) (1)
MPI_bsend Vendos mesazhin qe do te nis ne nje buffer lokal

MPI_send
Dergon nje mesazh dhe pret derisa te kopjohet ne nje buffer lokal • Mesazhet mund të vendosen vetëm në radhë që janë
ose remote lokale (source queue) për dërguesin, d.m.th. radhë në
MPI_ssend Dergon nje mesazh dhe pret deri sa marresi ta marr të njëjtën makinë ose në një makinë pranë, në të
MPI_sendrecv Dergon nje mesazh dhe pret per pergjigje
njëjtin LAN.
• Mesazhet mund të lexohen vetëm nga radhët lokale.
MPI_isend Kalon mesazhin me reference, dhe vazhdon
• Një mesazh i vendosur në një radhë duhet të ketë të
MPI_issend Kalon mesazhin me reference dhe pret sa te dergohet specifikuar radhën destinacion.
MPI_recv Merr nje mesazh; bllokohet nese nuk ka mesazhe • Çdo aplikacion ka radhën e vetë private në të cilën
MPI_irecv Kontrollon nese ka ardhur ndonje mesazh, por nuk bllokohet aplikacionet e tjerë i dërgojnë mesazhe.
• Një radhë mund të lexohet vetëm nga aplikacioni të
Disa nga primitivat e MPI. cilit i përket, por është e mundur që shumë aplikacione
të përdorin së bashku një radhë të vetme.
Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms,

Komunikimi persistent Komunikimi persistent


Modeli i radhitjes së mesazheve Modeli i radhitjes së mesazheve
(Message-Queuing) (2) (Message-Queuing) (3)
• Një aspekt i rëndësishëm i sistemeve message-queuing është se
derguesit i jepet garanci që mesazhi i tij do të vendoset në radhën e Katër kombinimet e komunikimit
me anë të radhëve:
marrësit. Nuk i jepet garanci se kur do të lexohet mesazhi apo nëse a) Gjatë transmetimit të mesazhit
do të lexohet ndonjëherë mesazhi. Kjo përcaktohet plotësisht nga dërguesi dhe marrësi janë në
sjellja e marrësit. ekzekutim.
b) Vetëm dërguesi është në
• Nuk është nevoja që marrësi të jetë në ekzekutim kur një mesazh ekzekutim, marrësi është pasiv
vendoset në radhën e tij. (pavarësisht kësaj dërguesi mund të
dërgojë mesazhe).
• Nuk është nevoja që dërguesi të jetë në ekzekutim kur mesazhi i tij c) Dërguesi është pasiv, ndërsa
merret nga marrësi. marrësi është në ekzekutim.
Marrësi mund të lexojë mesazhet
• Dërguesi dhe marrësi ekzekutohen plotësisht të pavarur nga njëri- që i janë dërguar atij, por nuk është
tjetri. nevoja që dërguesit përkatës të
jenë në ekzekutim.
• Një mesazh i vendosur në një radhë do të qendrojë atje derisa te d) Sistemi ruan mesazhet megjithëse
hiqet, pavarësisht nëse dërguesi apo marrësi janë në ekzekutim. dërguesi dhe marrësi janë pasiv.

Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms,

Modeli i radhitjes se mesazheve


(Message-Queuing) (4)

Primitiva Pershkrimi

Put Shton mesazhin ne radhen e specifikuar


Bllokohet nese radha e specifikuar eshte bosh, dhe heq mesazhin e pare
Get
nga radha
Kontrollon radhen e specifikuar per mesazhet, dhe heq te parin. Nuk
Poll
bllokohet asnjehere.
Instalon nje handler qe do te thirret kur ne radhen e specifikuar te
Notify
vendoset nje mesazh.

Ndërfaqja në një radhë në sistemin message-queuing.

Bazuar ne Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms,

You might also like