Лекция 6. Алгоритм Netchange_ описание_ инварианты_ корректность_ сходимость. Другие виды маршрутизаци (1185656)
Текст из файла
ÐàñïðåäåëåííûåàëãîðèòìûËÅÊÒÎÐ: Â.À. ÇàõàðîâËåêöèÿ 5 (×àñòü 2).Àëãîðèòì ìàðøðóòèçàöèè Netchange.Îïèñàíèå àëãîðèòìà.Èíâàðèàíòû àëãîðèòìà Netchange.Êîððåêòíîñòü àëãîðèòìà Netchange.Ñõðäèìîñòü àëãîðèòìà Netchange.Îñîáåííîñòè ðåàëèçàöèè àëãîðèòìà.Äðóãèå âèäû ìàðøðóòèçàöèè:èíòåðâàëüíàÿ, ïðåôèêñíàÿ, èåðàðõè÷åñêàÿ.Àëãîðèòì ìàðøðóòèçàöèè NetchangeÀëãîðèòì Netchange áûë ïðåäëîæåí Òàäæèáíàïèñîì â 1977 ã.Îí âû÷èñëÿåò îïòèìàëüíûå ïî ÷èñëó çâåíüåâ òàáëèöûìàðøðóòèçàöèè. íåì ïîääåðæèâàåòñÿ äîïîëíèòåëüíàÿ èíôîðìàöèÿ, ÷òîáû âñëó÷àå âîçíèêíîâåíèÿ íåèñïðàâíîñòè â êàíàëå èëèâîññòàíîâëåíèÿ ðàáîòîñïîñîáíîñòè êàíàëà óòî÷íÿòü òàáëèöûïóòåì èõ.÷àñòè÷íîãî ïåðåâû÷èñëåíèÿÀëãîðèòì ìàðøðóòèçàöèè NetchangeÀëãîðèòì Netchange áûë ïðåäëîæåí Òàäæèáíàïèñîì â 1977 ã.Îí âû÷èñëÿåò îïòèìàëüíûå ïî ÷èñëó çâåíüåâ òàáëèöûìàðøðóòèçàöèè. íåì ïîääåðæèâàåòñÿ äîïîëíèòåëüíàÿ èíôîðìàöèÿ, ÷òîáû âñëó÷àå âîçíèêíîâåíèÿ íåèñïðàâíîñòè â êàíàëå èëèâîññòàíîâëåíèÿ ðàáîòîñïîñîáíîñòè êàíàëà óòî÷íÿòü òàáëèöûïóòåì èõ.Ïðè ïîñòðîåíèè àëãîðèòìà áóäåì îïèðàòüñÿ íà ñëåäóþùèåäîïóùåíèÿ.÷àñòè÷íîãî ïåðåâû÷èñëåíèÿÀëãîðèòì ìàðøðóòèçàöèè NetchangeÀëãîðèòì Netchange áûë ïðåäëîæåí Òàäæèáíàïèñîì â 1977 ã.Îí âû÷èñëÿåò îïòèìàëüíûå ïî ÷èñëó çâåíüåâ òàáëèöûìàðøðóòèçàöèè. íåì ïîääåðæèâàåòñÿ äîïîëíèòåëüíàÿ èíôîðìàöèÿ, ÷òîáû âñëó÷àå âîçíèêíîâåíèÿ íåèñïðàâíîñòè â êàíàëå èëèâîññòàíîâëåíèÿ ðàáîòîñïîñîáíîñòè êàíàëà óòî÷íÿòü òàáëèöûïóòåì èõ.Ïðè ïîñòðîåíèè àëãîðèòìà áóäåì îïèðàòüñÿ íà ñëåäóþùèåäîïóùåíèÿ.N1.
Êàæäûé óçåë îñâåäîìëåí î ðàçìåðå âñåé ñåòè (N ).÷àñòè÷íîãî ïåðåâû÷èñëåíèÿÀëãîðèòì ìàðøðóòèçàöèè NetchangeÀëãîðèòì Netchange áûë ïðåäëîæåí Òàäæèáíàïèñîì â 1977 ã.Îí âû÷èñëÿåò îïòèìàëüíûå ïî ÷èñëó çâåíüåâ òàáëèöûìàðøðóòèçàöèè. íåì ïîääåðæèâàåòñÿ äîïîëíèòåëüíàÿ èíôîðìàöèÿ, ÷òîáû âñëó÷àå âîçíèêíîâåíèÿ íåèñïðàâíîñòè â êàíàëå èëèâîññòàíîâëåíèÿ ðàáîòîñïîñîáíîñòè êàíàëà óòî÷íÿòü òàáëèöûïóòåì èõ.Ïðè ïîñòðîåíèè àëãîðèòìà áóäåì îïèðàòüñÿ íà ñëåäóþùèåäîïóùåíèÿ.N1. Êàæäûé óçåë îñâåäîìëåí î ðàçìåðå âñåé ñåòè (N ).N2.  êàíàëàõ ïîääåðæèâàåòñÿ î÷åðåäíîñòü ñîîáùåíèé.÷àñòè÷íîãî ïåðåâû÷èñëåíèÿÀëãîðèòì ìàðøðóòèçàöèè NetchangeÀëãîðèòì Netchange áûë ïðåäëîæåí Òàäæèáíàïèñîì â 1977 ã.Îí âû÷èñëÿåò îïòèìàëüíûå ïî ÷èñëó çâåíüåâ òàáëèöûìàðøðóòèçàöèè. íåì ïîääåðæèâàåòñÿ äîïîëíèòåëüíàÿ èíôîðìàöèÿ, ÷òîáû âñëó÷àå âîçíèêíîâåíèÿ íåèñïðàâíîñòè â êàíàëå èëèâîññòàíîâëåíèÿ ðàáîòîñïîñîáíîñòè êàíàëà óòî÷íÿòü òàáëèöûïóòåì èõ.Ïðè ïîñòðîåíèè àëãîðèòìà áóäåì îïèðàòüñÿ íà ñëåäóþùèåäîïóùåíèÿ.N1.
Êàæäûé óçåë îñâåäîìëåí î ðàçìåðå âñåé ñåòè (N ).N2.  êàíàëàõ ïîääåðæèâàåòñÿ î÷åðåäíîñòü ñîîáùåíèé.N3. Óçëû ïîëó÷àþò óâåäîìëåíèÿ î âîçíèêíîâåíèèíåèñïðàâíîñòåé è âîññòàíîâëåíèè ðàáîòîñïîñîáíîñòèïðèìûêàþùèõ ê íèì êàíàëîâ.÷àñòè÷íîãî ïåðåâû÷èñëåíèÿÀëãîðèòì ìàðøðóòèçàöèè NetchangeÀëãîðèòì Netchange áûë ïðåäëîæåí Òàäæèáíàïèñîì â 1977 ã.Îí âû÷èñëÿåò îïòèìàëüíûå ïî ÷èñëó çâåíüåâ òàáëèöûìàðøðóòèçàöèè. íåì ïîääåðæèâàåòñÿ äîïîëíèòåëüíàÿ èíôîðìàöèÿ, ÷òîáû âñëó÷àå âîçíèêíîâåíèÿ íåèñïðàâíîñòè â êàíàëå èëèâîññòàíîâëåíèÿ ðàáîòîñïîñîáíîñòè êàíàëà óòî÷íÿòü òàáëèöûïóòåì èõ.Ïðè ïîñòðîåíèè àëãîðèòìà áóäåì îïèðàòüñÿ íà ñëåäóþùèåäîïóùåíèÿ.N1. Êàæäûé óçåë îñâåäîìëåí î ðàçìåðå âñåé ñåòè (N ).N2.  êàíàëàõ ïîääåðæèâàåòñÿ î÷åðåäíîñòü ñîîáùåíèé.N3.
Óçëû ïîëó÷àþò óâåäîìëåíèÿ î âîçíèêíîâåíèèíåèñïðàâíîñòåé è âîññòàíîâëåíèè ðàáîòîñïîñîáíîñòèïðèìûêàþùèõ ê íèì êàíàëîâ.N4. Ñòîèìîñòü ïóòè ðàâíà êîëè÷åñòâó êàíàëîâ â ýòîì ïóòè.÷àñòè÷íîãî ïåðåâû÷èñëåíèÿÀëãîðèòì ìàðøðóòèçàöèè NetchangeÀëãîðèòì ìîæåò ñïðàâèòüñÿ ñ âîçíèêíîâåíèåì íåèñïðàâíîñòåéè âîññòàíîâëåíèåì ðàáîòîñïîñîáíîñòè êàíàëîâ, à òàêæå ñäîáàâëåíèåì íîâûõ êàíàëîâ ñâÿçè, ïðè óñëîâèè, ÷òî âñÿêèéóçåë íåìåäëåííî óçíàåò î ïîâðåæäåíèè èëè âîññòàíîâëåíèèïðèìûêàþùèõ ê íåìó êàíàëîâ ñâÿçè. êàæäîì óçëå u àëãîðèòì âû÷èñëÿåò è ïîääåðæèâàåò òàáëèöóNbu [v ] , â êîòîðîé äëÿ êàæäîé âåðøèíû-àäðåñàòà vóêàçûâàåòñÿ òîò ñîñåä u , êîòîðîìó äîëæåí áûòü îòïðàâëåíïàêåò, àäðåñîâàííûé âåðøèíå v .Àëãîðèòì ìàðøðóòèçàöèè NetchangeÒðåáîâàíèÿÊ àëãîðèòìó ïðåäúÿâëÿþòñÿ ñëåäóþùèå òðåáîâàíèÿ.R1.
Åñëè òîïîëîãèÿ ñåòè ïîñëå êîíå÷íîãî ÷èñëà èçìåíåíèéîñòàåòñÿ äàëåå íåèçìåííîé, òî àëãîðèòì çàâåðøàåò ðàáîòóïîñëå êîíå÷íîãî ÷èñëà øàãîâ.R2. Êîãäà àëãîðèòì çàâåðøàåò ðàáîòó, òàáëèöû Nbu [v ]óäîâëåòâîðÿþò ñëåäóþùèì óñëîâèÿì:a) åñëè v = u , òî Nbu [v ] = local ;b) åñëè ñóùåñòâóåò ïóòü èç âåðøèíû u â âåðøèíó v 6= u , òîNbu [v ] = w , ãäå w ýòî ïåðâàÿ âåðøèíà-ñîñåä óçëà u ,êîòîðûé ñëåäóåò çà u â êðàò÷àéøåì ïóòè èç u â v ;c) åñëè ïóòè èç âåðøèíû u â âåðøèíó v íåò, òî Nbu [v ] = udef.Îïèñàíèå àëãîðèòìà NetchangeÑòðóêòóðû äàííûõINeighu ìíîæåñòâî âåðøèí, ñîñåäíèõ ñ óçëîì u ;Îïèñàíèå àëãîðèòìà NetchangeÑòðóêòóðû äàííûõII ìíîæåñòâî âåðøèí, ñîñåäíèõ ñ óçëîì u ;Du öåëî÷èñëåííûé ìàññèâ ðàçìåðà 1 . . .
N ;ýëåìåíòû ìàññèâà Du [v ] îöåíêè ðàññòîÿíèÿ d(u, v )ìåæäó óçëàìè u è v ;NeighuÎïèñàíèå àëãîðèòìà NetchangeÑòðóêòóðû äàííûõIII ìíîæåñòâî âåðøèí, ñîñåäíèõ ñ óçëîì u ;Du öåëî÷èñëåííûé ìàññèâ ðàçìåðà 1 . . . N ;ýëåìåíòû ìàññèâà Du [v ] îöåíêè ðàññòîÿíèÿ d(u, v )ìåæäó óçëàìè u è v ;Nbu ìàññèâ âåðøèí ðàçìåðà 1 .
. . N ;ýëåìåíòû ìàññèâà Nbu [v ] èìåíà ñîñåäåé óçëà u ,êîòîðûì ïðåäïî÷òèòåëüíåå îòïðàâèòü ïàêåòû,àäðåñîâàííûå óçëó v ;NeighuÎïèñàíèå àëãîðèòìà NetchangeÑòðóêòóðû äàííûõIIII ìíîæåñòâî âåðøèí, ñîñåäíèõ ñ óçëîì u ;Du öåëî÷èñëåííûé ìàññèâ ðàçìåðà 1 .
. . N ;ýëåìåíòû ìàññèâà Du [v ] îöåíêè ðàññòîÿíèÿ d(u, v )ìåæäó óçëàìè u è v ;Nbu ìàññèâ âåðøèí ðàçìåðà 1 . . . N ;ýëåìåíòû ìàññèâà Nbu [v ] èìåíà ñîñåäåé óçëà u ,êîòîðûì ïðåäïî÷òèòåëüíåå îòïðàâèòü ïàêåòû,àäðåñîâàííûå óçëó v ;ndisu äâóõìåðíûé öåëî÷èñëåííûé ìàññèâ ðàçìåðà1...N ;ýëåìåíòû ìàññèâà Du [w , v ] îöåíêè ðàññòîÿíèÿ d(w , v )ìåæäó óçëàìè w è v .NeighuÎïèñàíèå àëãîðèòìà NetchangeÈíèöèàëèçàöèÿ óçëàu.,w ∈ Neighu v ∈ V do ndisu [w , v ] := Nv ∈ V dobegin Du [v ] := NNbu [v ] := udef endDu [u] := 0 Nbu [u] := localforall w ∈ Neighu dohmydist, u, 0iwbegin forallforall;;send;endÍà÷èíàÿ ðàáîòó, êàæäûé óçåë u çíàåò, ÷òî;to;Îïèñàíèå àëãîðèòìà NetchangeÈíèöèàëèçàöèÿ óçëàu.,w ∈ Neighu v ∈ V do ndisu [w , v ] := Nv ∈ V dobegin Du [v ] := NNbu [v ] := udef endDu [u] := 0 Nbu [u] := localforall w ∈ Neighu dohmydist, u, 0iwbegin forallforall;;send;;toendÍà÷èíàÿ ðàáîòó, êàæäûé óçåë u çíàåò, ÷òî1) êðàò÷àéøèé ìàðøðóò èç u â u èìååò äëèíó 0 ;;Îïèñàíèå àëãîðèòìà NetchangeÈíèöèàëèçàöèÿ óçëàu.,w ∈ Neighu v ∈ V do ndisu [w , v ] := Nv ∈ V dobegin Du [v ] := NNbu [v ] := udef endDu [u] := 0 Nbu [u] := localforall w ∈ Neighu dohmydist, u, 0iwbegin forallforall;;send;;toendÍà÷èíàÿ ðàáîòó, êàæäûé óçåë u çíàåò, ÷òî1) êðàò÷àéøèé ìàðøðóò èç u â u èìååò äëèíó 0 ;2) ðàçìåð ñåòè N ÿâëÿåòñÿ âåðõíåé îöåíêîé äëèíûêðàò÷àéøåãî ìàðøðóòà èç u â ëþáîé äðóãîé óçåë ñåòè.;Îïèñàíèå àëãîðèòìà NetchangeÏðîöåäóðà Update(v )begin ifv =uDu [v ] := 0 ; Nbu [v ] := local(* Îöåíèòü ðàññòîÿíèå äî âåðøèíû v *)d := 1 + min{ndisu [w , v ] : w ∈ Neighu } ;choose w : d = 1 + ndisu [u, v ];d <NDu [v ] := d ; Nbu [v ] := wDu [v ] := N ; Nbu [v ] := udefthen beginendelse beginifthen beginelse begin;ïåðåìåííàÿ Du [v ] èçìåíèëà çíà÷åíèåx ∈ Neighusend h, v , Du [v ]i to xendendifthenforalldomydistendÂû÷èñëåíèå îöåíîê Du [v ] ïðîâîäèòñÿ ñëåäóþùèì îáðàçîì.Åñëè u = v , òî d(u, v ) = 0 , è â ýòîì ñëó÷àå çíà÷åíèå Du [v ]ïîëàãàåòñÿ ðàâíûì 0 .endÎïèñàíèå àëãîðèòìà NetchangeÏðîöåäóðà Update(v )begin ifv =uthen beginelsebegin;(* Îöåíèòü ðàññòîÿíèå äî âåðøèíû v *)d := 1 + min{ndisu [w , v ] : w ∈ Neighu } ;choose w : d = 1 + ndisu [u, v ];d <NDu [v ] := d ; Nbu [v ] := wDu [v ] := N ; Nbu [v ] := udefDu [v ] := 0 Nbu [v ] := localifendthen beginelse begin;ïåðåìåííàÿ Du [v ] èçìåíèëà çíà÷åíèåx ∈ Neighusend h, v , Du [v ]i to xendendifthenforalldomydistendÅñëè u 6= v , òî êðàò÷àéøèé ïóòü èç u â v ñîñòîèò èç êàíàëà,ñîåäèíÿþùåãî u ñ îäíèì èç ñîñåäåé w , è êðàò÷àéøåãî ïóòè èçw â v .
Ïîýòîìó d(u, v ) = 1 + minw ∈Neigh d(w , v ) ýòî îöåíêàâåëè÷èíû d(u, v ) â óçëå u 6= v çà ñ÷åò ïðèìåíåíèÿ äàííîéôîðìóëû êâåëè÷èí d(w , v ) , ñîäåðæàùèìñÿ âuîöåíêàìendÎïèñàíèå àëãîðèòìà NetchangeÏðîöåäóðà Update(v )begin ifv =u;(* Îöåíèòü ðàññòîÿíèå äî âåðøèíû v *)d := 1 + min{ndisu [w , v ] : w ∈ Neighu } ;choose w : d = 1 + ndisu [u, v ];d <NDu [v ] := d ; Nbu [v ] := wDu [v ] := N ; Nbu [v ] := udefthen beginDu [v ] := 0 Nbu [v ] := localendelse beginifthen beginelse begin;ïåðåìåííàÿ Du [v ] èçìåíèëà çíà÷åíèåx ∈ Neighusend h, v , Du [v ]i to xendendifthenforalldomydistendÊîëü ñêîðî â ñåòè èìååòñÿ N óçëîâ, äëèíà ïóòè ñ íàèìåíüøèì÷èñëîì çâåíüåâ íå ïðåâîñõîäèò N − 1 . Åñëè æå âû÷èñëåííàÿîöåíêà äëèíû íå ìåíüøå ÷åì N , òî ìîæíî ïðåäïîëàãàòü, ÷òîòàêîãî ïóòè âîîáùå íå ñóùåñòâóåò; èìåííî äëÿ ýòîé öåëè âòàáëèöå èñïîëüçóåòñÿ çíà÷åíèå N .endÎïèñàíèå àëãîðèòìà NetchangeÏðîöåäóðà Update(v )begin ifv =uDu [v ] := 0 ; Nbu [v ] := local(* Îöåíèòü ðàññòîÿíèå äî âåðøèíû v *)d := 1 + min{ndisu [w , v ] : w ∈ Neighu } ;choose w : d = 1 + ndisu [u, v ];d <NDu [v ] := d ; Nbu [v ] := wDu [v ] := N ; Nbu [v ] := udefthen beginendelse beginifthen beginelse begin;ïåðåìåííàÿ Du [v ] èçìåíèëà çíà÷åíèåx ∈ Neighusend h, v , Du [v ]i to xendendifthenforalldomydistendÅñëè îöåíêà ðàññòîÿíèÿ îò óçëà u äî óçëà v èçìåíèëàñü (ò.å.óìåíüøèëàñü), òî óçåë u îïîâåùàåò îá ýòîì âñåõ ñâîèõ ñîñåäåé,÷òîáû òå ìîãëè óòî÷íèòü ñâîì îöåíêè.endÎïèñàíèå àëãîðèòìà NetchangeProc-1 : Îáðàáîòêà ñîîáùåíèÿ h, v , di îò ñîñåäà w :{ Ñîîáùåíèå h, v , di â íà÷àëå î÷åðåäè Qwu }receive h, v , di from w ;ndisu [w , v ] := d ; Update (v )mydistmydistbeginmydistendÏîñëå ïîëó÷åíèÿ ñîîáùåíèÿ h, v , di îò ñîñåäà w â óçëå uïåðåìåííîé ndisu [w , v ] ïðèñâàèâàåòñÿ çíà÷åíèå d .
Âðåçóëüòàòå èçìåíåíèÿ çíà÷åíèÿ ïåðåìåííîé ndisu [w , v ] îöåíêàd(u, v ) â óçëå u ìîæåò èçìåíèòüñÿ, è ïîýòîìó ýòà îöåíêàïåðåâû÷èñëÿåòñÿ âñÿêèé ðàç, êîãäà ïðîèñõîäÿò èçìåíåíèÿ âòàáëèöå ndisu . Åñëè îöåíêà ðàññòîÿíèÿ è â ñàìîì äåëåèçìåíÿåòñÿ, íàïðèìåð ñòàíîâèòñÿ ðàâíîé d 0 , òî îá ýòîìîïîâåùàþòñÿ âñå ñîñåäè ïðè ïîìîùè ñîîáùåíèé h, v , d 0 i.mydistmydistÎïèñàíèå àëãîðèòìà Netchange îòâåò íà âûõîä èç ñòðîÿ èëè âîññòàíîâëåíèåðàáîòîñïîñîáíîñòè êàíàëà ñâÿçè àëãîðèòì âíîñèò èçìåíåíèÿ âëîêàëüíûå òàáëèöû è îòïðàâëÿåò ñîîáùåíèå òèïà, åñëèïðè ýòîì èçìåíÿþòñÿ îöåíêè ðàññòîÿíèé.Ïðåäïîëàãàåòñÿ, ÷òî óâåäîìëåíèÿ î ïîëîìêàõ è ïî÷èíêàõêàíàëîâ ñâÿçè (äîïóùåíèå N3) ïîñòóïàþò â âèäå ñîîáùåíèéòèïà è. Êàíàë ñâÿçè ìåæäó óçëàìè u1 è u2ìîäåëèðóåòñÿ ïàðîé î÷åðåäåé Qu u è Qu u .mydistfailrepair1 22 1Îïèñàíèå àëãîðèòìà Netchange îòâåò íà âûõîä èç ñòðîÿ èëè âîññòàíîâëåíèåðàáîòîñïîñîáíîñòè êàíàëà ñâÿçè àëãîðèòì âíîñèò èçìåíåíèÿ âëîêàëüíûå òàáëèöû è îòïðàâëÿåò ñîîáùåíèå òèïà, åñëèïðè ýòîì èçìåíÿþòñÿ îöåíêè ðàññòîÿíèé.Ïðåäïîëàãàåòñÿ, ÷òî óâåäîìëåíèÿ î ïîëîìêàõ è ïî÷èíêàõêàíàëîâ ñâÿçè (äîïóùåíèå N3) ïîñòóïàþò â âèäå ñîîáùåíèéòèïà è.
Êàíàë ñâÿçè ìåæäó óçëàìè u1 è u2ìîäåëèðóåòñÿ ïàðîé î÷åðåäåé Qu u è Qu u .Êîãäà êàíàë âûõîäèò èç ñòðîÿ, ýòè î÷åðåäè óäàëÿþòñÿ èçêîíôèãóðàöèè (÷òî íåìåäëåííî âëå÷åò çà ñîáîé ïîòåðþ âñåõñîîáùåíèé â îáåèõ î÷åðåäÿõ), à óçëû ïî îáå ñòîðîíû êàíàëàñâÿçè ïîëó÷àþò ñîîáùåíèå òèïà .mydistfailrepair1 2fail2 1Îïèñàíèå àëãîðèòìà Netchange îòâåò íà âûõîä èç ñòðîÿ èëè âîññòàíîâëåíèåðàáîòîñïîñîáíîñòè êàíàëà ñâÿçè àëãîðèòì âíîñèò èçìåíåíèÿ âëîêàëüíûå òàáëèöû è îòïðàâëÿåò ñîîáùåíèå òèïà, åñëèïðè ýòîì èçìåíÿþòñÿ îöåíêè ðàññòîÿíèé.Ïðåäïîëàãàåòñÿ, ÷òî óâåäîìëåíèÿ î ïîëîìêàõ è ïî÷èíêàõêàíàëîâ ñâÿçè (äîïóùåíèå N3) ïîñòóïàþò â âèäå ñîîáùåíèéòèïà è. Êàíàë ñâÿçè ìåæäó óçëàìè u1 è u2ìîäåëèðóåòñÿ ïàðîé î÷åðåäåé Qu u è Qu u .Êîãäà êàíàë âûõîäèò èç ñòðîÿ, ýòè î÷åðåäè óäàëÿþòñÿ èçêîíôèãóðàöèè (÷òî íåìåäëåííî âëå÷åò çà ñîáîé ïîòåðþ âñåõñîîáùåíèé â îáåèõ î÷åðåäÿõ), à óçëû ïî îáå ñòîðîíû êàíàëàñâÿçè ïîëó÷àþò ñîîáùåíèå òèïà .Êîãäà ñâÿçü â êàíàëå âîññòàíàâëèâàåòñÿ (èëè â ñåòè ïîÿâëÿåòñÿíîâûé êàíàë ñâÿçè), â êîíôèãóðàöèè âîçíèêàþò äâå íîâûåïóñòûå î÷åðåäè, à óçëû ïî îáå ñòîðîíû ýòîãî êàíàëà ñâÿçèïîëó÷àþò ñîîáùåíèå òèïà.mydistfailrepair1 2failrepair2 1Îïèñàíèå àëãîðèòìà NetchangeProc-2 :  ñëó÷àå âûõîäà èç ñòðîÿ êàíàëà uw :receive h , w i ; Neighu := Neighu \ {w } ;beginforallfailv ∈VdoUpdate(v )endÊîãäà âûõîäèò èç ñòðîÿ êàíàë ñâÿçè ìåæäó óçëàìè u è w ,âåðøèíà w óäàëÿåòñÿ èç ñïèñêà Neighu .Ïðîâîäèòñÿ ïåðåâû÷èñëåíèå îöåíîê ðàññòîÿíèé äî êàæäîéâåðøèíû, è â ñëó÷àå èçìåíåíèÿ îöåíêè, îá ýòîì óçíàþò âñåîñòàâøèåñÿ ñîñåäè.Ýòî ïðîèñõîäèò, åñëè íåèñïðàâíûé êàíàë ðàíåå áûë îäíèì èççâåíüåâ íàèëó÷øåãî ìàðøðóòà è íå îñòàëîñü íè îäíîãî ñîñåäàw 0 , äëÿ êîòîðîãî âåðíî ðàâåíñòâî ndisu [w 0 , v ] = ndisu [w , v ].Îïèñàíèå àëãîðèòìà NetchangeProc-3 :  ñëó÷àå âîññòàíîâëåíèÿ êàíàëà uw :receive h, w i ; Neighu := Neighu ∪ {w } ;beginrepairforallv ∈Vbegindondisu [w ,v ] := N; send hmydist, v , Du [v ]ito wendendÊîãäà êàíàë ñâÿçè âîññòàíàâëèâàåòñÿ, âåðøèíà w äîáàâëÿåòñÿê ñïèñêó âåðøèí Neighu , íî â ïàìÿòè óçëà u åùå íåò íèêàêèõîöåíîê ðàññòîÿíèÿ d(w , v ) .Íîâîìó ñîñåäó w íåìåäëåííî ñîîáùàþòñÿ îöåíêè Du [v ]ðàññòîÿíèé îò óçëà u äî âñåõ âîçìîæíûõ âåðøèí-àäðåñàòîâ v(ïóòåì îòïðàâëåíèÿ ñîîáùåíèé h, v , Du [v ]i.Äî òåõ ïîð ïîêà óçåë u íå ïîëó÷èò òàêîãî ñîîáùåíèÿ îò óçëà w, âåëè÷èíà N áóäåò èñïîëüçîâàòüñÿ â íåì äëÿ îöåíêèðàññòîÿíèÿ d(w , v ) , ò.
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.