Vicách mngd li u server t p trung đang tri n khai xem ra không còn phùh pn a,vìl ngthôngtinđ v servert ptrungđ truyv nd lius kh ng 1 vàquát¡.V li,c s h tngd ngưuy nh th ng vi nthôngc ngc
Trang 1Nghiên cứu giải pháp kỹ thuật đảm bảo gắn bó dữ
liệu trong cơ sở dữ liệu phân tán
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
CHUYÊN NGÀNH KHOA HỌC MÁY TÍNH
Đà Nẵng - Năm 2009
Trang 26.C utrúcc alu n văn "
Ch ngl:V ND Ð NGB HÓATI NTRÌNH VÀ § G NBOD LI U.9
11 Dtvnd
1.1.1 Xét bài toán th cti n:H th ng ban vétaud ngs t
1.1.2 S cnthitphid ngb d li ugi a các server
1.3.6 Các thu ttoánđ mb os gnbód li utrongc s d li uphân tán 24
Ch ng2:C § LYTHUY TV § S PX PCACS KI N TRONGH
Trang 3Ch ng3: K THU TD MB OG NBOD LI UTRONGC S D
LI U PHAN TAN =
3.1 C iti nd ngh logicb iVect th i gian
3.2 Thu ttoán Lamport t ng quát
3.3 ngd ng thu ttoán Lamport trong vi c di ukhi nt ng tranh
3.4 Thu ttoán lo itr t ngh
Ch ng4:CÀIĐ TMOPH NGPH NM MDANGKY VÉ TÀU 49
4.1 Timhi uc ch RMItrongl p trình JAVA
4.1.1 Gi ithi u RMI (Remote Method Invocation)
4.1.2 Giph ngth ct xavàcácv nd phát sinh
4.1.3 Vai trò cdc 1 p trung gian: STUB và SKELETION
4.1.4 Caid t ngd ng phân tán RMI
Trang 42S t ng quan trên tàu và các äđ it ngtrongh phân tán.
3Ouit cc ach ngtrinhcunge pd h ho tả ngg nbéd liu
4 Bng so sánh đi ukingi dnhvath ct
5 M cquan sátc aNSDvah th ng
6 T ph pcácc ch ho td nge am th phân tán
7 Bngc ch th chinx
8 Các đ ctínhth chi nd mb otinhtoanv n
9 Tr ng thái cdc gh trên các tuy n sau gi xu tphdtt im iga
1 Các hàm s d ng trong lúcÄ it ngd_ c cài then
Trang 54Gi ithu td m tti n trình ¡ vào do n găng
5 Ơi ithu td m tti ntrinhirakh ido n găng
6Gi ithu tx lý khinh n thông di p vào đo n găng
7 Ơi ithu tx lý khinh n thông đi p có T=”ACK”
8 Thu t todn Ricart & Agrawala
1 Mô hình trí ug icdcdit ngt xa
2G iph ngth cc acácđ it ng thông qual p trung gian
3 Trì ug id it ng RMIgi a tình khách và máy ch — xa
4C ch RMIg iph ngth cc ađ it ng java
5C ch làm viec amdy o Java khi đăng ký và g id it
6C ch ho td ng các máy o Java trên mô hình máy m ng v tý 54
7 Mô hìnhh th ng thông tin gi a các tr m
8 Mô hình t itr mv iyéuc „mua về
98 d theth quanh mot d lỉuc ah th ng
10S d ch cnăngh th ng
IS đ cáctr ng thái ho tả nge ah th ng bán vớd tvé cho I đoàn tàu 6]
12 Mô hình m ng phân tán bán vé tàu phân tán da Server c-c-c 63
Trang 6H Chí Minh và cùng lãnh d o, các nhân viên phòng đào t oc a côngtyc phn
SoftTech Da N ng dit o đi u kỉ n thu n1 i cho chúng tôi trong su t th i gianh c
tp khóa dao t o nay
Tôi xin chân thanhc m_ ncac cánb , gi ng viênc aTr ngd ih c Cong
ngh Thông tin—D ih cqu cgiaTPH Chí Minh; các cénb , gi ng viên c a các
Tr ngtr cthủ cĐihcqu cgiaTPH ChíMinh vìs nhi ttinh gi ngd ydi
vitngmônh cc akhóah ct đó đất ođi uki ncho tôi nâng caođ cnh ng
ki nth c chuyên môn giúp ích nhi u trong công vi c,c ngnh trong cu cs ng.
D c bi t, tôi xin chân thanhe m nTh y PGS.TS Lê Văn S n,ng iđãtntìnhh ngd ncho tôi th chỉ nlu n văn này Nh ng ki nth cma Th y đã truy n
đ tvành ng kinh nghỉ mv nghiênc u khoah cc aTh y lành ng bài h c quý
giá mà tôi đãnh nđ c trong th i gian làm vi c cùng Th y
Tôi xin chân thành cm n lãnh do, CBCNV c atr ng TrunghcBu Chính Vi n Thông & Công ngh Thông tin II, là n i tôi công tác đã đ ng viên và
tođi u ki nthu nl i cho tôi trong su tth i gian tôi theo h cch ng trình Cao
h cvàth chỉ nlu n văn này.
Cu i cùng, tôi xin chân thành c m_n gia đình và các b n bè d ng nghi p
c a tôi đã đ ng viên, giúp đ tôi r t nhi u trong th i gian tôi theo h c khóa Cao
h cvàth chỉ nlu n văn này.
Trang 7ký quam ngđ cming iquantéms d ng nhi u vì tính ti n ích và hi u qu
c anóđemlirtcao.C th nh :h thngử t vé tàu,h th ng đăng ký tua duIch,h th ng bán hang quam ng,h th ng tìm ki m thông tin Yahoo, Google, Vì
v y các nhà thi tk h th ng và cungc pdchv c nph ¡có gi ¡pháp đ đáp ng
phù h p
Vicách mngd li u server t p trung đang tri n khai xem ra không còn
phùh pn a,vìl ngthôngtinđ v servert ptrungđ truyv nd lius kh ng
1 vàquát¡.V li,c s h tngd ngưuy nh th ng vi nthôngc ngch akp
đáp ngkpthi,điuđós dndnhint ngnghnmng.D hnch đi uđó
các nhà đut ph ¡ chỉ phíchođ ng truy n tang cao Gi i pháp này ch a ph ila
h uhi uma là gi i pháp mang tính t mth i Viv y, các nhà cungc pdchv đang
dùng mô hình m ngd li uh servert ptrungs dtv nd cnph ichuy n sang
mô hình m ng phân tán da server ]axuh ng hi nd i
Ð dtd cme dich trên, rõ rang h_ phân tán đa server không ch d n
thund cmcnivtlýv ¡ nhau, mà còn ph ¡cóc các chi nl c khai thác
chúng Mu n xây d ngmt ngdngh tinh c phân tấn t t thì vi c nghiên c uxây d ng cdc ph nm m ngd ngchocách tinh c phân tán là công vi ch ts c
quan tr ng.
Đcđimc bncah thngmngd li u phân tán là ph i luôn đ mbotính nh tquánd li ugi a các server trong m ith idi mtruyc p.D tài: “Nghiên
c uợi ¡pháp k thu tả mb ognbód liutronge s d li u phân tán” là
s vndngcáccácc s lý thuy t, thu ttoán nh m gi ¡ quy tm tkhía c nhe a
vnđ v đcđi mc ah phântánd li u đa server.
H th ng tinh c phân tán làm tcôngngh m im đang trong giai do n pháttri n Nénc nph ¡ có nhi unghiênc ud v nd ngcôngngh lIcáchti u
Trang 8trìnhđ ccôngb.
Ð cđi mc ah phân tán làs tph pcácb x lý(hocb vix lý)v ib
nh vad ngh nhpđ clp.Đi unày đ ngnghav ivi ccácb x lý không s
d ngchungb nh vad ngh Mimth x lý thông tin, thành ph ne ah phân
tán bao g mm thay nhỉ ub x lyvab nh ccb.
Trongh phân tén,h x lý thông tin thành phnphiđ cthỉtk sao cho
v cutric,s Ï ngvàdungl ngcóth cho phép th chỉ nm tcáchtrnvn các ch c năng mà nó ph id moh n.
H tinh c phân tan th chi nhàng lo tcácch c năng ph ct p,nh nge bn
nh tlad mb ocungc pchong is d ng(NSD)kh năng truy c p có k t qu
đ ncác lo i tài nguyên v ncó var tdad ngc ah thngnh lành ng tai nguyên
dùng chung
Ð giiquy td ccácv nđ trênc ah phân tán nh mth chi nm ctiêu
c ad tài thì c nph i phân tích, nghiên c u các yêu c u sau:
L p trình vàth chi nchoh th ng đa truyc p,ng unhiên,s | ngl n
= Cutrúcl ptrìnhđ c cho các truy v n đa chỉ uvà đáp nglitruyvn
- Trìnht vad ngb các tỉ n trình ho td ng
- Gnbód li u(Coherence) gi a các server
- Cungc pt xa các tài nguyên dùng chung (tài nguyên găng)
= Vnd x lý-tính toán đ ng th itrongh
- V nd daServervah đi ukhi n
3.Dit ngvaph mvinghiéne u
Các gi ¡ pháp v các mô hình m ng
Các đ cđi mc ah tinh c phân tán.
—= Các thu ttoán ngd ngchol ptrinhh phântánv đ ngb hóad liuCôngc qu nlýd liu
Trang 94.Ph ng pháp nghiéne u
Lu nvăns dngph ng pháp nghiên c u các bài báo khoah c,t li u đã
xutbn,s utpt liu trên m ng Internet vat ngh pt liukthpvitrinkhai mô hình th c nghỉ m Sau khis ut pcáclunc lý thuy tvàm ts k thut
ng d ng,côngc thi tk,xâyd ngh thng,s đ xutgiiphápk thutdm
bognbód liutronge s d li u phân tán M c khác, ti n hành đánh giá các
gi i pháp, tìm ra nh ng udim,nh cđi mcatnggii pháp đ phcv cho
vi cthi tk h th ng phân tán, khai thácm tcách hi uqu nh t
5 Ý ngh a khoah cvàth eti ne ad tài
Gi iphápc ad tàis đ c ngd ng nhi u trên m ng Internet, Intranet C
th nh :cách thngth ngmidint ,h th ngd tvé tàu, vé máy bay,h th ng
đ ttua dul ch,
Ktqu cad tàilàs tham kh o, giúp các nhà thi tk h th ng thông tin
ch nl a mô hình, gi i pháp công ngh đ áp d ng xây d ngh phân tán đtđ c
hi u năng choch dut vàti níchphùh pving is d ng Day là mô hình
phát ti nh th ng tinh c ph cv khách hang theo xuh_ ng hi nd i Nhucu
khai thác trao d ¡ thông tin, đăng ký d ch qua m ng Internet ng is d ng ngàycàng tăng V inh ng udi mc ah tinh cphân táns d nthayth cách khai
thác theo hình mô hình m ng server t p trung.
6.C utrúcc alu nvăn
N idunge alu nvănđ c trình bày theob c cnh sau:
Ch ng1:V nđ đngb hóati ntrinhvas g nbód liu
Ch ng2:C s lýthuy tv s spxpcács ki ntrongh phân tan
Ch ng3:K thutđmbognbód li utrongc s d li u phân tan.
Ch ng4: Cài đ tvà mô ph ngch ng trình
Trang 1011 Dtvnd
1.1.1 Xét bài todn th cti n:H th ngbán vétàuđ ngs t
Gi s cóNgatàu tiNthanh ph khác nhau, có M chi c tàu khai thác vn
chuy n hành khách qua t ng ga, m ¡ chỉ c tàu có Pạv tring id bán vé Yêuc u
c a bài toán đ tra là: hãy ch nl agi iphdpd xây d ngm th th ngm ngd tvésao cho ngànhđ ngstcóđ ctinichph cv đnv ¡ khách hàng m tcách t t
nh t
1.1.2 Các yêuc ud tra khi khai thách th ng
- Khôngđ x yrahi nt ngh th ngcungc p vé bán b trùng
- Khai thác tri tđ các gh trên tàu đ bán vé cho khách trên các tuy n khi
khách có nhu c u, tránh |] ng phí gh tr ng trên nhi u chuy n tàu
- Đáp ng cho hành khách mua vé b ng các hình th c: mua vé t i ga, đ t vé
qua m ng m t cách nhanh nh t
- Đmbos antoàn chom ng,h nch thpnh tcác l ix y ra và bi n pháp
kh cph cc ah th ng.
1.1.3 Các mô hình m ng tri n khai
1.1.3.1 Mô hình m ngc s d li uh Servert ptrung : (Hình 1.1)
Mô hình này, t te tàinguyênc s d li u(DataBase) dùng đ truy vn,c p
nh ttim th Server t ptrung Thao tác đ t mua, bán vé các máy Client t i các
ga ho c các máy tính xa V ¡ mô hình này, ta cónh nxétnh sau:
eV uđim:vìlàd li utptrungnênđmbođ ctínhnh tquánd liu
trênc s d liucamth servert p trung, tránhđ cs đtmua vé b trùng
Ip.D qunlýs I ng và khai thác bán vé cho các v tri gh trên tàu
Đây làm th d liuc cb nên vi c cài đ txây d ngch ng trình trên m t
máy thì th chi nm tcáchd dàng Quan tr ng là nghiênc ugi ¡quy tcácnh t
đi mc ah đ phcv ttnhucus dng
Trang 11Bán vé tại ga 01
\
Se Mini | # <È
Bầu vé tại ga 0Ề
* May tinh & xa
May tinh & xa ss
Bán về tại ga 02
Ss May tinh ở xa.
Hình 1.1 Mô hình m ngd li wh Server t p trung
eV nh tđm:đ ngưuy nưuyvnd liut Client đ n Server thông
quah thngđ ng truy nvi n thông cóth rtxacóth dnđntcđ chm trong nh ng th ¡đi m giao dch đ tvé, nhi ung ¡ giao dch đ tmua vé cùng lúc
s dnđnđ ngtuy nkhông đấp ngvax yrahi nt ngngh n
1.1.3.2 Mô hình m ng bán phân tán đa Server : (Hình 1.2)
M c đích c a mô hình này là chia s tài nguyên dùng chung trên các server
đ ttrên nhi u vùng da lý khác nhau, gi i quy t vic chiat il ng thông di ptcác clientg iđnt ng ngt ngserver thayvìh t ptrungnh trên.Cácc s d
li us đ t trên các server Mô hình này có các gi ¡ pháp khai thácnh sau:
eM iserverdt m imi nch qu nlýd liuvếébán vùng mi nđó,t cla
chđ c phép bán vé trong ph mv tuy n,s l ng vé qui đnh t i đa nh td nh
Cách làm này nh m m c đích tránh tình tr ng bán trùng vé.Nh tdi mc agii
pháp này là khôngth giúp khách hàng đ tvé btk th iđi mnào mi nlàtr c
th ¡đi m tàu đ ngac nđi.M c khác, do không có s trao đ i thông tin gi a các
Trang 12server v i nhau nên vi c bán vé trên các tuy ne a toàn chuy ns khôngđ ctiuvàs b lãng phí Chnghn,s 1 nggh trngtimts gakhôngbánđ c
vé trong khi các ga tàu s p đi ngang qual i không có vé bántr c.Víd : Gi s
quy dnh gad u tiên cóth bán vét do,k t gath haitr dich bán5%c as
vé tr ng còn | i và sau 30 phút có th bánt dos vé tr ng d6.Nh v y,x yra trẻ ngh plà các ga tỉ p theo không bi tv trí nào cóng ¡ và v trí nào không có
ng i Ngoài racòntr ngh ptithidimttr cđóm tv trís 3cóng i
nh ngtith idi mt’ thìv trí đó không cóng ¡ vì đ n ga đó khách dir i tàu,
Bán vé tại ga 01
Bún vé tại ga N Server 02 Dstanase
Bán về tại ga 02
s Máy tính ở xaHình 1.2 Mô hình m ngd_ li u phân tán
D iv ¡mô hình này ch gi ¡ quytđ cmtmtcah tptưưung là chia t¡thông tind nt các serverd tránh ngh nm ng Nên ta g i mô hình m ng này là
mô hình m ng bán phân tán đa server H th ng này ch ng qua lah thngtp
trung g mnhi um ngt p trung con.
¢ Gi i pháp th 2 cho m ng bán phân tán đa server này là cácht ch c, khai
thác d li u trên các server là: m ¡ server đ tcài đtcácc s d li ugi ng nhau
Các server trongh ph ¡ luôn luônđ cnh tquánd li utrong m ith idi mtruy
Trang 13c p Đây chính lav nd muchtcah phân tấn đa server, làv nđ cnd c
quan tâm nghiên c ugiiquyt.D dmbod ctínhnh tquánd li utrongh phân tán thì c nph ¡ có gi ¡ pháp đ mb o tính g nbód_ li u (Coherence) trong h
phân tán
1.2Gnbód li utrongh phân tán
121Víd v gnbód liu
Vid :M t đoàn tàu kh ihànhlnl tt gađutiênHàN iđnga cu ¡
cùng gaTPH ChiMinh.D đ ngi nv s liutagi s đoàn tàu bán vé vad ng
đón đ khách qua các ga trung gian là: Vinh, Da N ng, Nha Trang Gi đnhch xét
m tchi uđi và bán vé các ga: HàN i, Vinh, DaN ng, Nha Trang.
HàN ¡ Vinh ĐàN ng Nha Trang TP HCM
_— + — _ | BTÌ
Timimtgabánđ c vé thì truy n thông đi p cho các ga khác bi tđ cs
1 ng gh còn tr ng trên tàu đ ti pt c bán vé cho s còn tr ng đó Ký hi u MI,M2, M3 là các thông di p phát đi trong s các ga Thông tin phát đi th hi n trong
bngl.lnh sau:
B ng 1 1 Các thông đi p phát dit các ga
STT Kýhiu Thông tin phát đi
1 MI Thêm 200 gh_còn tr ng trên tàu
2 M2 Đã có 100gh đãbánđ c vé
3 M3 Dành 10% s gh tr ngd d phòng ga các ga tỉ p
tăng khách đ t bi n
N ukhông cós ràng bu c nào đ iv itrìnht x lý các thông đi pnh nđ c
c a các ga thì các ga này s cós | ngch trên tàu khác nhau Ð bođdđmbo
c pnh tgi ng nhau trình v t c pnh tph inh tthi tph i gi ng nhau trên t tc
các ga Viv ys cós không g nbógi abnng ibánvé 4gath hi nguax
lý các thông di pnh nđn.Ktqu cabàitoánđ cth hint ngt nh bàitoán bãi đ xe [[3] tr170] T ¡ đây, đ d dàng hình dung v nd ,tacóth đ aras
so sánht ng quan gi acácđit ng trên tàu và các đit ngtrongh phân tan
đ cmôt Bngl.2nh sau:
Trang 14Bngl.2S t ng quan trên tàu và các đ it ngtrongh phân tán
TT Tàu H phân tán Thuy t minh
1 |Kháchhàng | Ti ntrình đây, tin trình đ c xem nh d ng nht
(cùng | lo i) Trongh phân tán các ti n trình
đa d ng
2 | Nhân viên Ch ngtrinh |Ch ng trình hoàn toàn gi ng nhau trên các
bán vé cung c p trm.
3 |N ibán/đt|Máy tính xa|M ¡ga đt 1 máy và n ¡ chúng v ih th ng
mua vé thông quad ng truy n
4 |v ting i Tai nguyén Tài nguyên d ng nh t Trong th ct h phân
tán, tài nguyên có nhi u lo i và có các dc
đi mr tkhác xa nhau
5 |Ma trn v |H CSDL Doi h i ph i hoàn toàn gi ng nhau sm i th i
trí trên tàu phân tán đi mtruye p(G nbód li u)
1.12 § cnthitphid ngb d li ugi a các server
Mts hotd ngg nbóc acácch ng trình cung c p phân tán qu n lý trên
cung m tt ph p các tài nguyên ch dtd cnutuânth các quit c sau (B ng
1.3), đây các thông di pđ chỉ u là các yêu c u hay khuy nngh gi i phóng tàinguyên
Bngl.3Quitcc ach ng trình cunge pd h ho tả ngg nhód liu
Quit c sau cùng nh nm nhđns thi ty uph i¡cóm ttrtt duy nh ttrên
t ph pcác thông đi pc ah.Tr tt này cóth đ cth chi nthông qua vi ch p
l cgi a các tỉ n trình cung c p.Vì v y chúng tac nphicéchinl chplcgi acác tỉ n trình phát thông đi p nh m phân ph i cho m i thông đi pm td u hi u,
nh m vào đó ta cóth xác l pm ttr tt hoàn toàn.
Trang 151.2 Ð ngb hóa các ti n trình
Trongttc cách thngtnhc,ng itac nnghiênc u các côngc đ
m nh vàhi uqu đ cóth đngb hóa các tỉ n trình Trongh phân tấn vi cd ng
b hóach đ tra duynhtvndđ thitlpmttrtt gi acács kin Gi a các
tr m khác nhau, tr tt d6ch cóth th chinđ c thông qua vi c trao d i các
thông đi pv ¡ nhau
Trongh th ngt p trung m ¡m tÌo ¡ tài nguyênc ah đ cqunlymt
ch ng trình cung c p duy nh t, sau này ta gittlàb cung c p tài nguyên.
Ch ng trình này ti pnhnttc các yêuc u, khuy nngh gi i phóng vas px pchúng trong m thàng đ ix lý theoki uloitr t ngh vàtheom ttrtt nht
đnhc a hàng đ ¡ này.
Trongh phân tán, ch ng trình cung c pn m trên m ttr m và các tỉ n trình
đ ngh li các tr m khác nhau; các yêu c u và khuy nngh gi i phóng đ c
truy nchoch ng trình cung c p thông qua hình th c thông đi p chuy n trên các
kênhc ah th ng vi n thông Chính vì v y, nhu c us px p các yêu c u này theo
m ttrtt nh tđnh nào đó luôn luônđ cd tra.
1.2.1 D ngh logic
Chúng ta quan tâm dn thi giant ngđigi acács kin(th t ca
chúng), đ nh ngh am iquanh ,x yratr c(>):
Trên cùng m t máy: a>b, n u time(a) < time(b)
N uHIg imd nH2: send(m) > receive(m)
N ua>b vab%c thì adc.
Thu ttoán Lamports d ngm iquanh nayd cungc pm tth t s kinriéng
1.2.2 Ti ntrình trongh phân tán
Ti n trình (Process) là khái ni m khá quen thu c và là đit ngnghiéne u
c ah đi uhành Trongh phân tán tach xem xét vàb sung đ cdi mho td ng
truy c pc a các ti n trình có nhu c u cung c p tài nguyên dùng chung Các đ c
đi m đó la:
Trang 161 Các tỉ n trình đ c hình thành và đi u khi nb ih đi u khi n duy nh t,
có ngh a là n u trong các thành ph n tham giah phân tán nh m ng máy tính, các
h t ptrung, c6th cócách đi u hành riêng v i các ti n trình riêng c a mình, thìchúng c ngb phát sinh l i trongn ¡ dungc ati n trình m i, phân tán
2 Ti ntrình làch ng trình hay do nch ng trình đang ho td ng trong h
phân tán là đit ngch y u có nhu c u tài nguyên ph nc ng hay phnm md
th chi ncácI nhc amình Ti n trình c n tài nguyên đ phát tri n.V nguyên t c,
tte các tỉ n trình và tài nguyênđ ccunge plàcácđit ng xa.
3 Các nguyên lýc ah t ptrung cóth nghiên c u và áp d ng cho các tỉ ntrình phân tánnh d phòng vàch ngb t c,ch ng xung đ t,
4 Khi tỉ n trình đ c cung c p tài nguyên cóth nó th c hi n ngay, n u nó
ladit ngd cgidnt tr ctrénb x lý(máy)c cb hocphigidi
t nglati ntrinhquah th ngd_ ng truy n
5 Vi c cung c p tài nguyên cho các ti n trình có th th c hi n theo 2 cách
trong h_ phân tán:
- Thông quah th ng cungc p chung cho toành nh Controllor/Allocator.
- Thông qua Allocatore cb trên Server/Workstation b ng cách tham chi u
vào b ng tr ng thái, nhe a thông tin toàn c c
Trong m th phân tán cóth g mnhi uti n trình (process) cùng ho t d ng.
M iti n trình có m t tr ng thái (giá tr _c a các bi n) Trong quá trình ho t đ ng
m ttỉ n trình có th thay d i tr ng thái c a nó ho c liên Ic v i nhau (g inhn
thông đi p).
1.2.3 Ð ngb hóati ntrình
Trongh tinh c phân tán, đ ngb hóa tỉ ntrìnhđ chiunh là quá trình
tonêns ho tđ ng nh p nhàng, ăn kh pv ¡ nhau gi attc cácđit ngtham
gia có yêu c u chia s tai nguyên dùng chung Đi uki nch y uc avi cđ ngb
là:
hóa ti n trình trongh phân tán
- Các tỉ nưrìnhc ah phid c phát tri n trong cùng m tchuk th chin
v ¡các th igianth chi nl nh khác nhau dokh năngx lýc acácb x lý (hoc
vix lý) thành ph n khác nhau
Trang 17- Các ti ntrinh phát tri n trong cách th ng thành ph n khác nhau,n m_ các
dadi m khác nhau vad cn inhau quad ng truy ntrong đi u ki n có di nra
sc k thut
- Khôngs d ngb nh vàđ ngh chung
Xu tphátt yêuc uvà đi uki nk thu tc th nêu trên,rõrầngng itacn
ph ¡ nghiên c u các gi ¡ pháp đ m nh và hi uqu đ cóth đngb hóa cáctintrìnhnh lad it ngch y uthamgiat onêns ho tử ngc ah không đ ngb
Tính c pthitc avnd đngb héatintrinhth hin haiđi mmuch t
sau đây:
- Nhìn chung, các tỉ ntrinhk c các tỉ n trình xu tphátt các ngd ng c
lpmu n truy c p vào các tài nguyên v is 1 ngv nrthnch hay truy c p vào
thông tin dùng chung cùng m t lúc làm phát sinh vnđ truyc pt ng tranh Truycpt ng tranh là nguyên nhân chính c a các xung d t gi a các tỉ n trình khi truy
€ p vào tài nguyên dùng chung.
- Các tỉ ntrìnhc acùng m th ho tđ ng theo kỉ uh pl cđ gi ¡ quy tcác
ch c năng xác đnh nh m choktqu nhanh và hi uqu nh t, đi u này cho phép
tăng hi unăngs d ngthi tb vahi uqu ho tđ ngc ach ng trinh.
Viv y,t ngtranhvàh pl c là nguyên nhân chínhc as tác đ ngt ngh
đ clptrình gi a các tỉ n trình nh m cho phép chúng tham gia vào các hành đ ngchung Đây là quá trình ph ct p
S t ngtranh vàh pI cgi a các tỉ n trình đồi h i ph ¡ có trao đ i thông tin
qua liv ¡ nhau Trong cách th ngtp trung, đi uđóđ cthchinnh thut toán loitr t ngh thông qua các bi n cùng tác đ ng trong m t vùng nh ho c
m tbi n chung lad Trongh phân tán, các thông tin c n trao đ i ph i thông qua
các kênh thu ch th ng vi nthéngd id ng các thông đi p.
Trongh máy tính đ n thì vùng găng, lo itr t ngh vành ngvnđ d ng
b hóath ngớđ c gi i quy tb ng cách dùngph ng phápc hi u và quan sát.
Nh ngnh ngph ng pháp này khôngth dùng trongh phân tán Ngayc mtvn
Trang 18đ đngi nlàm ts kinAxyratr chaysaus ki nBthìc ngladi uc nsuyngh c nth n.
1.2.4 Ð ngb hóa theom ttr tt t ng quatch tch
Trongmts tr nghpcnphispxptoànb theo ki uchtch các s
kine ah liên quan tr cti pd nvi c cung c p các tài nguyên Nguyên lý c avn
đ đ ckhái quátnh sau.M tti n trình nào đó g ¡thông đi pd yéucus dngtài nguyên; m tti ntrinhs d ng xong tài nguyên nào đó truy nm t thông tin gi i
phóng khi nó ng ng chỉ md ng [4].
1.2.4.1 Cung c pt p rung
Hi nt i, trong cách th ngt p trung, m im tÌo ¡ tài nguyênc ah đ cqunlýbimtch ng trình cung c p duy nh t,g ilàb cung c p tài nguyên
Ch ng trình này ti ptcnhnttc các yéuc u, khuy nngh gi i phóng vas p
x p chúng trong m thàng đ ix lý theo ki uloitr t ngh vax lý chúng theo
m ttrtt nh tđnhc ahàng đ inày.
Trong cách phân tán,ch ng trình cungc pn m trên m ttr m và các tỉ n
trình đ ngh li trên các tr m khác; các yêu c u và khuy nngh gi ¡phóng đ c
truy nchoch ng trình cung c p thông qua hình th c thông đi p chuy n theo cáckênh c ah th ng vi n thông Chính viv y nhu c us px p các yêu c u nay theo
m ttrtt nh tđnh nào đó luônđ cd tra.
N uch cóm tthông đi pđnch ng trình cung c p thì trtt đnth hinmttrtt chtch.Ng cli,nu có nhi u thông di pd n cùng m t lúc thì vi c
s px p chúng ph ¡ theo ki uloitr t ngh trong hàng đic cb c atrmcó
ch ach ng trình cungc p Di uđóc ng cho phép ta cóm ttr tt chtch
Trtt cóđ ctitr mcunge pcóth không gi ngnh trtt phat,nu
th i gian truy nkhéngd ce đnh Đây latr ngh p kha ph bi n trong m ngmáy tinh Nh ngn utamu nx lý các thông đi p theo trìnht không tính t i th i
gian truy n, thìc nph ¡tính đ nm ttr tt t ngquátc acácl ntruy n thông đi p
t các tr m khác nhau
Trang 191.2.4.2 Cung c p phân tán
Vì lý do n đnh và hi uqu mà ta ph i phân tán ch c năng cung c p trênnhỉ u tr m khác nhau.S§ ho td ng g nbó v i nhau gi acácch ng trình cung
c plarte nthitd dmb ochoho tđ ngcunge pd_ c hoàn toàn chính xác
Mts hotd ngg nbóc acácch ng trình cung c p phân tán qu n lý trên
cùng m tt ph p các tài nguyên ch dtd cn utuânth các quy t c sau:
- Cácb cunge pb tbu cph ¡th chi ncùng m tgi ¡ thu t
- Cácb cunge pđunh nttc các thông đi p phát đit các tỉ n trình.
— Các thông dip phi đ cx lý cùng mttrtt nh nhau trong các
ch ng trình cung c p
Quy tc sau cùng nhnm nhđns thi ty uph icóm ttrtt duy nht
trênt ph p các thông đi pc ah
1.2.5 C ut otrinht t ng quát ch tch
Ap d ng gi i thu t Lamport nh m cho phép ghỉ l ¡ các s kine ah tinhe
phan tan M itr mSd utrangb Icôngt v igidtr nguyên g ilaH, Đó chính là
đngh logic tăng lên gi ahais kink tỉ p Tr me phát thông đi p ghid uE
c amình d a trên giá tr hi n hành c aH Khi nhnđd c thông đi p,trmrcp
nh td ngh H,riêngc amìnhb ng gi ¡thu t sau đây:
N wH,, thì
H,:=E+l
Chmdtnu
Skin “nh n thông đi p” lúc nay đ c ghi nh nb ng giá tr c a HH, Thu t
toán này d mb or ng th i gian nh n thông đi p là sau th i gian nó phát đi
V ith i gian này cho phép xác đ nh m tquanh tr tt toànb mà ta ký hi u
> và cho phép ki mtrađ cm ttrong các đi uki n(Cl,C2)nh nh sau:
CI:NuAvàBlàhai s kincacingmttrmvanuAd cthchin
tr cBthi theotrtt ccb c atr mtacó A >B.
C2: N u A là phát thông di pb im ttr m nào đó vàn u B là thuc aca thông đi p này thì ta có A> B.
Trang 20Mts ki nasinh ra trongph mviivad cđánhdubiđngh ccb gi
là H(a).NÑ uavàb đu là hai s ki n trên hai tr mi và j, ta luôn có quanh xácđnhnh sau:
a Db<=> Ha) < Hb)
Đó là tr tt không ch tch do vì hai s ki n trên hai tr m khác nhau có th
đ ncùng m tth ¡đi m gi ng nhau Ta cóth m rng quanh > thành quanh
1.3.1 Các đi uki ngi đnh vàth ct
Ta cóm tt ph p thông tin nào đó cóth đ ctruyc pb im ttpcáctin
trinh.S I ng các thông tincé th truyc pd c và các ti n trình có nhu c u thông
tinlacons c dnh.H này phát tri nr ir ctheoth ¡gian gi acdc đi m quan sát,
tacóth nh nbitd ctr ng thai th cc aching, có ngh a là các đit ng vang
c nhth chi ncác tỉ ntrinh,h kiunh v yhotd ngv id ndnhtuytvi
Các di uki n gi dnhnaysov ih th ct có nh ng di m khác nhau c
- Các đit ng và các tỉ n trình cóth đ c phân tan trên các tr m khác
nhau liênh v ¡ nhau quah th ng vi n thông Do v y, ta không th xác
? đnh tr ng thái th idi me ah vìlídođ tr đ ngtruy ngi acáctrm
và tính khong t ng thích gi a các đi m quan sát trong tr m đó.
3 -H th ng vi n thông và các tỉ n trình là các đit ngcóth x yras c
k thu t.
Trang 211.3.2 Tác đ ng và giao dch
Các đit ng khác nhauc ah không ph ¡ là cá đit ngđclp nhau,
chúng quanh v inhaub it ph pcác quanh g i là các ràng bu c toàn v n Các
ràng bu c này th hi nsâu s c các đ c tính riêng bi tc ah.
Tr ng tháic ah tho mãn m tt p các ràng bu c toàn v ng i là tr ng thái
g nbo
Các nhà thi tk và vnhànhh mong mu nr ng vic th chỉ n các tin
trình ph i duy trì cho đ ch trong tr ng thái g nbó.ĐÐ chính xác hoá đ c tính
nay,c nphil uý làtr ngtháic ah chđ cxácởnh m cquansátchotr c
Ta quan tâm đ nhai m cquansátđ cth hi ntrong B ng l5nh sau:
-Migiaodchd ccutot n tdãy các tá đngđ c
th hínnh sau N u 2 tác d ng A và B thu c hai giao
N uvì lý dohi uqu ,nhi ugiaodchd cth chỉ nsong song this g nbó
không còn đ mbod cn a.M tyêuc ukhdcn ar t quan tr ng là trong quá
trìnhth chi nh ph id mb ocho các tác đ ng không b ng t quãng.
1.3.3 Tr tt hóa các tác đ ng
Cho m tt ph pgiao dch M={TI,T2 Tn}lnl tđ cthchỉnb ¡các
tỉ n trình đ cl p pI,p2 ,pn M ¡m tgiaodchđ ccutot m tdấy các tác
d ng Toanb vi cth chỉ nc atpMlab it ph pcác tỉ ntrinht ng tranh là
Trang 22t ngd ngvivicth chinm t day S các tác đ ng thu c các giao d ch này,
nh S = (a, a, a)) ch ngh n Trongtr tt tuânth trâtt nitic at ng giaodch, dãy này bao g mt te các tác đ ngc ut o nên các giao d ch M; m im ttácđngch xutm tvàch mtln.Mtdaynh vygilatrtt hóacatphp
các giao d chM.
Vid : Cho Tl = (aii,aia,ais„ai4) và T2 = (a21,22,23) M ttr tt hóa (T1,T2)
đ cth hin vid d iday:
S = ap) 11 ,812,822,813,803,814
Trong s các trtt hóac am tt ph p các giao dch, di ur t quan tr ng là
ph ¡ tách rachođ cnh ngcáiph cv tr ngthág nbód li u và chúng đ c
gilatrtt hóag nbó.
Victh chintunt cénghalath chỉnttc các giao dchc aM theo
ki un ¡ đuôi nhau và tuânth m ttrtt nào đó.S gnbóc ah đ cbotoàn,
theo đ nh ngh a, b ng vi cth chỉ nriêng bi tt ng giao d ch.
1.3.4 Tri n khai giao d ch tôn tr ngs g nbd
Cho m tt ph p giao dch M=[{TI,T2 ,Tn).M ttrtt hóacatphp các tác đ ng thành ph ns t ng ngv ¡vi cth c hi n hoàn toàn các giao d ch.
Vi cthuđ cmttrtt hóag nbóch cóth thành công khi áp d ng các ràng
bu c trên trtt th chỉ n các tác đ ng Nguyên lýc aph ngpháplà ch làm
ch mm ttác đ ng nào đó cho đ nth idi mmàs th chi nc a nó không còn cónguyc pháh ys g nbóc atr tt hóa (b ng cách ch nti n trình hi n hành)
D dmb o các giao d ch trên tôn tr ngs g n bó thông tin thìng ¡ta đ a
ra các ph ng pháp,c ch d đmbo khi giao dchv ncós g n bó thông tin
toànv nd li utrênc s d li uphân tán là:
C ch then cài
- Then cài lo itr t ngh
- Thencail ach nđit ng.
- Giao d ch hai pha
Cácc ch vaph ngpháp trêns đ cphântích ch ng sau
Trang 23Bây gi tat ngt ngrngcácđit ng c phân tán trên nhi u trmkhác nhau và đ
trình di n ra trên các tr m khác nhau.H th ng vi n thông cho phép các ti n trình
trên các tr m khác nhau có th trao d i các thông đi p v ¡ nhau Ta gi đnhr ng
các ti n trình và cácph ngti ntruy nthông là các đit ngcóth r ivàos c.
M th qu nlyt ph pthông tin phân tán bao g mB ng 1.6nh_ sau:
-C ch điu khi n các tranh ch p truyc pe cb vào các
2 |dit ngd mb otôntr ngtinhtoanv nc acécd it ng
truyc pe cb này.
3 -C ch cókh năngx lý cácb tc và thi uth nvôh n,
huqu c avi ch yb các giao dch.
1 Giao dch Tb tbu cphith chi nm tcáchtrnvn
2 Nucós c x yrathiph ¡ quay l ¡đi mxu t phát.
Mu n th chỉ nnh ngdiuv anêu trên, ng ita đòi h i giao dch phi
có các đ c tính toàn v n theo B ng 1.8nh_ sau:
cniv ¡ nhau thông quah th ng vi n thông var ng các tin
Trang 24Bngl.8 Các đ ctinhth chi nd mb otinhtoanv n
STT Ph ith chin
-Numttintinhb s c tr ckhik tthúcTnh ngli
1 | sau các thao tác thay d ic n thi tc aT, tr ng thdic ah
la g n bo
2 -Numttintinhb s c tr ckhi di nra các thay đ ¡
c€ aT,tr ngtháic ah lag nbó
3 -Numttintrinhb s c gi a các thay đic aT,trng
thái c ah là không g n bó.
Nud liuđ cphân tấn trên nhỉ userver,đ bodmd lius đ cghilên đúng đ nlénmic s d liu,đòih ¡ph icócácc ch bov d liu Vid
nh vi cc pnh tb ng tài nguyên khai thác bán vé tàu bac s d liu khác
nhau.NÑ ucós c k tn ix yratrong th ¡gian ghi giao dchvế,c s d lius
m ttính d ng b X_ lý giao dch kh c ph c tình tr ng này b ng cách giám sát
nh ng thay đ ¡tác đ nglêncácc s d li u liên quannh mb od m toàn vnd
mttrmSi m ttin trình Pji v inhi mv th chỉ n các tác đ ng giao d ch Tj
trên Si, các tác đ ng dc th chi n trên các tr m khác nhau có th tỉ n hành theo
ki u song song
Các ph ng pháp đ qu n lý gn bó các giao dch nh :Ph ng pháp d phòng đ ch ngb tc,ph ng pháp d a vào vichnch các kh năng di nra
b ng cách phát hi nb t c có tính ch td ng, đi u đó d nđnh yb các giao d ch
Trang 251.3.6 Các thu ttoánđ mb os gnbód li utrongc s d li uphân tán.
Ngoài thu ttoánc b nLamport,d h th ng phân tán ho tử ngtt¿ng ita còn dùng m ts thu t toán khác gi ¡ quy tm tv nd còn liên quand ng nbó d
li utrongtr nghpmngs c nh sau:
D cóth khôi ph clid li u và tr ng thái g n bó thông tin c a toanh
th ngkhicós c di nra,m ttrongnh ngv nd quantr nghàng đ ulàc nph ¡xácđnhđ cloi,bnch tvàv trídi nras c mat đónh nbi tm tcách t
đ ng và chuy nđnph ngắn gi i quy tnào cho phth p.B nch t(mã)s c và
th tcgiiquyts c có lên quanđngnbóđ clutr ti trung tâm hocphân tán trên các tr me ah đăng ký phân tán Trongtr ngh pcácth tcđ c
phân tán, thì b n thân cácth t c đó c ng đòi h ¡ph icé gi ¡ pháp đ mb og nbó
gi ngnh d li ubinhth ng [5]
- Thu t toán qu n lý nhỉ ub n sao:
Trong quá trình xây d ng các ph nm mchoh phanténh tr các ngd ng
lnnh th ngmidint,chinhph dint , v nd cpnh t thông tin dùng
chung trong các b nsaoc acingmtdit ng lam ttrong nh ngv nd quan
tr ng Nó không ch dmb oh th nghotd ngv it cd bình quân ch pnhn
đ c, ndnh,tinc ymaquantr ngh nc laphid mb otinhg nbóc ad liutrong các b n sao
Ktqu nghiênc uđãth hi ncô đ ngbngnh ngs đ gi i thu t và môhình Các gi i thu t và mô hình này đãđ cth c nghi m trên ngônng Java RMI
trong môitr ngJava od cth hin ch ng trình demo.
Ktlunch ng: Phân tícht bài toánth ct v h th ng bán vé tàu đ t
đó so sánhs t ngquancécd it ngc am th tinh c phân tant ng quátđ ra
đ ccácm ctiêu nghiênc u gi ¡ pháp xây d ngcôngc đi u khi n vi c khai tháctài nguyên trên m ng,d mbognbód liu gi acác server ch ng này ch
y uphântíchd igócđ m tcácht ngquanv vnđ ngb hóa tỉ n trình và s
gnbód liutrongh phân tan, đ ng th ¡gi i thi u các khái ni m liên quan c nthi td ns minhh acho các thu t toán
Trang 26Ch ng2:C S LÝTHUY TV § § PX PCACS KIN
TRONG H PHAN TAN2.1 Thu ttoán Lamport— đ ngb hóa đ ngh logic
đnhb ¡dãy cács ki neŸ# > eề",
Chúng ta nói r ng: eŠx yratr ce!
Quanh x yratr c>c6tinhb ccu: e D> ef v im ii<j.
Caécs kinx yragi ahaiti ntrinhd ng th i nói chung không quanh, ngo i trhai tỉ n trình đó có liên quan theo quanh nh sau:
D iv im i thông đi pm trao đ igi a hai tỉ n trình Pi và Pj, chúng ta có:
e;* = send(m), e; = receive(m) và eŸ > cỷ.
® Cács ki ntrongmts x lyphanténlad cs px priêng bi t
Trang 272.1.2 Nh ngdi uki nd ngh
Trong m th th ng cdc d ngh logic, các ti n trình riêng bi tcó m td ng
h logicmad c apd ng theo m t giao th c
Mis kind cgánm t timestamp (th i gian đánh d u) trong cách th c
math aman đi uki nb nch td ngh :n uel > e2 thi C(el) < C(e2).
Trong đó: C(ei) là timestamp (th i gian đánh du)đ cgánchos ki nei.
N u giao th c thõa mãn các đi u ki n theo sau n a, thid ngh đ cnói
r ngb nch tm nh:n uC(el) < C(2) thiel e2.
2.1.3 S caid tử ngh logic
RI:Ttc các máy (ti ntrình - Pi)s dngmtb đm(đngh -Ci)vi giá tr kh ¡t olà0.
R2:Tr ckhix lým ts ki n(g i,nh nho cng t), Pix lýnh sau: tăng
b dm vàgánchom is ki n,nh là timestamp (th i gian đánh d u)c a nó
Ci=Ci+d (d>0, th ng d=1)
R3: M i thông đi p mang gidtr d ngh c ang ig inótith iđi mg i
Khi Pi nh nm t thong di p v i timestamp (th i gian đánh d u) Cmsg,nóx ly nh
Trang 29- Quy lu t3: Khinh nd cthông di pm, ti n trình Pj đ tl i giá tr Cj:
e Chú yr ng quanh “cd tr c?ch dnhnghatrtt t ng phne acác s
ki n Đi u này có ngha là trongkhimts s kind cspxptrtt
b ng quanh “cd tr c’,yvnconmts s ki nkhôngđ cs px p theo
thịt
® Thnhtho ng chúng tac nđ ntr tt toànb c acács kin.
® Trtt toànb spxpth t chotngs kind tte cáctrmđngývitrtt này
e Lamportđnh ngh atr tt toànb d atrên quanh “cóir c”, nó gán cho
m itrmmts duynh tvà sauđós d ngs nayd | ptrtt cho các s
Trang 30Hình 2.3S px pir tí s kinki udongd u
2.2 C ch thencàivàs g n bó thông tin trong giao d ch
M t giao d ch nào đó dang th c hi n phép then cài trên mtd it ng, mungiành quy ns dngdit ngtheomtvaiki utruyc pnhtdnh.C ch then
cai gin hay không gan quy n truy e pnày cănc vào quit ctindnhnh lo itr
t ngh ,lu td c—hi uch nh thông tin,
Nuquy nd cth anh nthđit ngb then cài b ¡ giao dch.N u không,
đit nggiaodchs b khóavàđ it ngkhôngb cài then
C ch then cài cho phép m t giao dch cóth gi ¡ phóng đit ng mà nó đã
cài then.
2.2.1 Loitr t ngh
M ttrongnh ng gi ¡ pháp đ ngind dtd ctrtt hóag nbóth hin
ch btbucphis dngtrtt hédatunt.D làmđ cdi uđó,toànb giao
Trang 31dchd cđttrongc p ham: mo_giaodich và dong_giaodich Day las đ mb ocho vi cloitr t ngh gi a các giao dch.
Nubittr ccécdit ngx lýb im tgiao dch nào đó, thì ta cóth cài
then công vi c truyc pđncácđit ng Di u dé ch cho phép th c hi n song
song d iv ¡ các giao d ch truy c p vào các đit ngr irc.
2.2.2 Then cài ch nl acácđit ng
Các quit ctruycpđit ngd cchúýlàtínhh pth cc avi c truy c p
N ¡dung c a qui t c này là: M tgiao dch thay đ igidtr cađit ngphiloi
tr tte cáđit ng khác mu ntuycp,ng clithì vi ctruycpđ ctinhành theo ki ut ng tranh
Ð dmb ođi uđó luôn luônđ cth chỉn,ng ¡ta cho phép ti n hành cài
thenm tđit ngữ ckhivics d ngnócó hi ul c
M tgiao dch cóth th chi n ba hàm nguyên th y trên đit nge theo nhtrong b ng 2.lnh sau:
Bng2.lI Các hàm s d ng trong lúc Ä it ngả c cài then
STT Tên hàm Thuy t minh
S dngkhimu ncóđ c
| v_docte) quy nd cetheoki uchias
S dngkhimu ncóđ c
quy nd ce theo kỉ uchias
Gi iphóng đit nge.Gi s
3 Giai_phong(e) tr cđóđãđ ccaithenb i
cùng giao d ch nay
2 v_viet(e)
Các then cà đ cs dngd hnch mtlpcáctrtt hóa cókh năng
đ cthchinM ttrtt héad cg ilàh pth cnu:
I.Đit ngd cm tgiao dch cài then theo ki u chia s không b btc
then cài nào theo ki u lo itr c a các giao d ch khác
2.Mtdit ngb cài then theo ki uloitr thì khôngth b btk then cài
m inàon a
23 S5 pxptrtt s ki nthôngquab tu nt
Trang 32B tunt d cgiithiunh mm c đích đánh s th t,s px p các skine ah vatrénhd cmts nh cđi mmàm ts ph ng pháp khác dim c
ph i
B tunt ladit ngdngb hóacungc pchom iyéuc um ts có giá
tr nguyénd ng (hay còn g i làm t tic kê) nh m xác I ptr tt Hai yeuc uk
tỉpnhauđ cth hinb ihais nguyên liên tỉ p, trong đó giátr Od ccunge pcho yêuc uđ u tiên
Gi s tacób tunt S, lúc này m ttỉ ntrình mu nnh ngiá trt b tun
t S thì nóph ig ith t c hay hàm có tên là TICKET(S) Chú ý m im tgiá tr ch
ph cv chom tvàch mts ki n mà thôi.
Gi s tte cás kindud cđánhs bib tunt duy nhtS Khi
m tti n trình cung c pchocées ki nim ts thông qua TICKET(S) N u không
cós c x yra,tacóth kh ngdnhnh sau:
Cács ki ntbao hàm các gidtr nh h ntdad cdi nra.
S th t cas kink saus ki ntph ilat+l
Vi ctri nkhaim tb tu nt c nph i mang hai đ c tinh sau đây:
Ð ctinh Pl: N uavàblà hai s ki nth chi n trên cùng hàm TICKET(S),thì ta có a>b hay b—>a Ð c tính này th hi nvi cloitr t ngh trên các phéptoán TICKET(S)
Ð c tính P2: N uath c hi n phép t=TICKET(S) thì giá tr gin cho t las
1 ng các phép TICKET(S) did cthchintr ca.Dc tinh P2 th hi ntính
liên t c trong khi đánh s có ngh a là không đ | ¡ kho ng tr ng khidanhs
Vy:B tunt làđ¡t ngdngb cungc pchom iyêuc um ts (hay
còn g ¡ làm t tíc kê) nh m xác I ptr tt tu nhoàn.M tti n trình mu nnh n giátrt b tu nhoàn § thì nó ph ig ith t c (ho c hàm) có tên là TICKET(S).M i
m tgiátr ch ph cv chom tvàch m ts ki n mà thôi.
2.3.1 Vòng tròn o
D trị nkhai mt n phong có ktqu, đ u tiên tac n ph i xác đ nh hành
trình c a nó trong m ng máy tính Ta có th xem các trmđ clpdtténmt
Trang 33vòng tròn theo m t chỉ u xác đnh.M itr mch liênh đ cv ihaitr mgnnh t(hàng xóm bên trái và hàng xóm bên ph i).
Xétm tmngg mtphpNttmđ cni¡v ¡nhau vàm tr mbtk
trong m ng cóth liên 1 c v i các tr m khác trong m ngm tcáchd dang M i
tr mtrongmngd cphânph im tÌnm ts duynhtt 0đnN-I.M tr mi
btk trongm ngs có tr m hàng xóm bên ph i (hay tt mk ti p sau) màs ca
tr m đó là suc[i] và tr m hàng xóm bên trái (hay tr mk lintr c)màs c anó là
pred[i] Lúc này suc[i]=i+l modulo N và pred[i]=i-I modulo N.S môt này ki n
ta hình dung m t vòng tròn o Hìnhv 3.1 sau đây mô ph ng vòng tròn ogi a các
- nphongd cc th hóa trên m t vaic u hình c a các bi n tr ng thái
và quay trên vòng tròn o luôn luôn theo m tchi u xác đ nh
- Khicós c xyra m ttr mnào đó (gi s tr mi)thìc nxây d ngli(c uhinh | i) vòng trond vòng tròn cóth ho td ngtt.T clàph icp
nh tl ¡ các giá tr c a suc[i] và pred[i] c a hàng xóm bên ph i và bên tráicatrmbs c (viđiukintrmb s c không pháh y hoàn toàn
liên k t lô gích).
- Khim ttrmb s c đãđ ckhcph cvàho td ngtr | ¡ thì nó có
th tham gial i vào m ng thông qua phép chèn
Trang 342.3.2 Hai thu t toán di chuy n n phong
2.3.2.1 nphongb ng bi n tr ng thái
M ttintrinh Pid cgiaonhi mv dichuy n nphongc ntuânth các
nguyén t c sau day:
1 Xét khi các tr m trong m ng không x yras c
Mts nguyênK(K>l)đ cch ntrongt ph pc ah Trên tr miv i
ie{0 N-1),m iti ntrinh Pid cgiao nhỉ mv dichuy n nphong ph i tuân th các quy t c sau:
- M iti ntrinh Pid u có bi ntr ng thái S[i]e{0 K-1},
- MibinS[lilđud ccpnh tb it ntrình Pi và cóth đcbitrmk
tỉ p sau (hàng xóm ph i)c a Pi
- Thu ttoán di chuy ntr ngthái nphongd cth hi nnh sau:
a Ti ntrinh Picó nphong ch khi:
S[i]zS[i-1] cho i0
S[0]=S[N-1], cho ¡=0
b Khi tỉ ntrình Pi có n phong, thì nóphib n phong sau m t kho ng th i
gian xác đ nh va thay đ i tr ng thái c a nó.
SH]:
SIi]:=S[il+l modN,n ui=0
[i-I],n uiz0
Đây làtr ngh p duy nh t mà tỉ n trình cóth c pnh t các giá tr c a mình
Quy n bình d ng gi acéctr md cđmbokhittc các tỉ ntrình Piđus
d ng thu t toán này.M iti ntrinhd ud cnhn nphong khi đ n phiên mình và
vì n phong trong m ng là duy nh tnênn um ttr msau khi nhnđ c nphong
nh ng 1 ¡ không vào do n găng thì ph il pt c gi i phóng nó.
2 Xét khi cóx yras cm ttr mnào đó trong m ng
Cách kh c ph c khi cóm ts c x yratrongmngs d ctrinhbay phn
sau, ph n này tas nghiênc u cách đ am ttr mb s c vào li trong m ng.Ð
đamttrmb s c did ckh cph c xong vào m ng, lúc này ta phi đnhl¡
c uhình c a vòng tròn o Sau đó, tỉ n trình c nph i kh id ng1 i S[ï], mi n là
Trang 35trm j=suc[i] không đ c phép đ c bi n S[j] c a mình trong th i gian vào đo n
găng Có ngh a là:
N uj<i thì S[i]:=S[j] -I mod K
Ng cli S[ij:=S[j]
Vi cki m soát tính toàn vnng nghatts dmbod ctinhg nbód liu
c ah th ng thông tin Hi nnay,ng ¡ta đang áp d ng hai ph ng phápch yu
[5]:
1.Loib cácch ngtrìnhth tcc pnh tcóth dnd ntr ng thái không
gnbód li utrongcácc s d li u[CKPI]
2.Triug icácch ng trìnhth tcđcbitđãđ ccàiđttrênh th ng
nh m khôi ph ctr ng thái band utr ckhic pnh t[CKP2].
Các ràng bu ctoànv nd cphân làm hai lo ích y u:
1 Ràng bu c c u trúc (Structural Constraint) di nt nh ng đc tính ng
nghac bnv n có trong mô hình Vid nh ràng bu cth hi nb ng khóa duy
nh t trong mô hình quanh ho c các liên k t theo ki u I—n,(n> 1) gi a các đ ¡
t ng trong mô hình m ng
2 Rang bu c hành vi (Behavioral Constraint) nh m đi u hòa các ho td ng
c acác ngd ng.
2.3.2.2 Jeton tu n hoàn
Yt ng: Thu ttoánth hai [Le Lann], nphongđ cc th hóabngmt
thông di pd c bi tg ila Jeton (th bài) tu n hoàn trên vòng tròn Nh th, vi cs
c trêntrmcóth dnđnmtJeton Các bi ntr ngthá đ c duy trì trên mi
tr m cho phép tái sinh Jeton trongtr ngh pb mt
Thu ttodnd ctri nkhaid atrényt ng này là:
1 Jeton mang giá tr làv.M itr mj có m tbi ntr ng thái S//J.Tr c khi phát 1 im t Jeton vào m ng, các tác đ ngnh saud cth chỉ n:
SIjl:=v Cho j #0
v:=v+l modk; S[j]:=v Choj=0
Trang 362 M im tl ndi chuy njeton trên tr mj,m td ngh bov đ ctrangb.
Nunóđ cphátđ ngtr c khi Jeton đ n thì j tham chỉ ud nbi ntr ng
thái Sƒj]Jc atr mk lintr ci=pred() trên vòng tròn
N um ttrong hai đi uki nsaudayd cki mtra:
J>i và S[j]# S[il
hayj< 1 và Sf] = S[i]
Thì Jetond ccoinh lab mt Trongtr ngh p này, t mjc nph ¡ tái
sinh | ¡ nó và cho giá tr chính xác S[j] và tái trangb đ ngh bov
NH NXÉT: Hai thu t toán đã trình bày trên đ ud avàos tu nhoànc a n
phong cóth đ cs dngnh mtri nkhai m tb tu nt Trong thu t toán th
hai, vid áp d ng cho Jeton nh n giá tr nguyên mà duy nh t ch có tr m có jecton
m icóth tăng và tham chi u Các giá tr xu tphátt tham chỉ uđóđ cxemnh lak tqu c a các phép toán ticketd cth chỉ n trên tr m.
udi mc aph ngpháp đánhs | h ng này làtánhđ ch itho igi acác
trmđ bits s kỉinti ptheo saumts ki n đã cho Nh ngthct,vichi tho ¡này Iidi nrađ cóđ cs hi nhành.S khác nhauc aph ng pháp này
vàph ng pháp đóng d ulàph ng pháp này chud ccács c.Thct rmb
s c khôngth nàoph cv s đ c,b cunge pcenphitimlis | ng va giá
tre acács d6.D th chind cdi unày, các tr me nph ih itho iv i nhau
Vi c đi u khi n truy n tin trong m ng vòng tròn oth ngd cthchin
b ng Jeton (th đi u khi n).
Vi cpháthi nvax lýl ¡ trong quá trìnhx lýđ ctỉ nhành ngay sau khi
tact nhnđ cyéucucpnht.Numic gngs alikhôngth th chỉ ncó
kt qu, thì thông dips d c phát đi đ yêuc utáct g i phát | i thông tin.Trongtr ngh p công vi cc pnh tk tthúct td p,m t thong di p kh ng đnh
cngđ cphát đib itáct nh n Sau khi phát đi thông đi p, tac t- g i chuy n
sang tr ng thái ch thông đi p m i, còn táct nh n thông đi p ch chuy n sang
tr ngtháich khi đãnh nd các thông đi p kh ng d nh [4].