Извличане на знание
/ Knowledge Discovery >> Извличане на знание >> тек >> компютър >> компютърен хардуер >>

Как Routing Алгоритми Work

преки, че този алгоритъм работи добре, това е толкова сложно, че това може да отнеме дълго време за рутери, за да го обработват, и на ефективността на мрежа се провали. Също така, ако рутер дава грешна информация на други рутери, всички маршрутизиращи решения ще бъдат неефективни. За да разберем по-добре този алгоритъм, тук е източникът на програма, написана от C:
<предварително> #define MAX_NODES 1024 /* максимален брой възли * /# определят INFINITY 1000000000 /* редица по-голям от всеки максимална път * /инт п, дист [MAX_NODES] [MAX_NODES]; /* дист [I] [й] е разстоянието от аз да й * /нищожен shortest_path (INT ите, инт тона, инт път []) {структура на държавната {/* пътя се работи * /инт предшественика; /* предишния дължина възел * /INT /* дължина от източника до този възел * /ENUM {постоянно, ориентировъчни} етикет /* държавна етикет * /} състояние [MAX_NODES]; INT I, к, мин; структура на държавната * р; за (р = &усилвател; държавна [0]; р < &усилвател; държавна [п]; р ++) {/* инициализира състояние * /р > предшественика = -1p- > дължина = INFINITYp- > етикет = ориентировъчни; } състояние [т] .length = 0; държавна [т] .label = постоянен; К = тона; /* к е първоначалният работен възел * /задачи {/* е по-добрият път от к? * /за I = 0; I < п; I ++) /* тази графика има п възли * /ако (дист [к] [I] = 0 &усилвател;! &Усилвател; държавна [I] .label == ориентировъчни) {ако (държавна [к] .length + дист [к ] [I] < държавна [I] .length) {състояние [I] .predecessor = к; държавна [I] .length = държавна [к] .length + дист [к] [I]}} /* Намерете колебливо белязан възел с най-малкия етикета. * /к = 0; мин = INFINITY; за (I = 0; I < п; I ++), ако (държавна [I] .label == ориентировъчни &усилвател; &усилвател; държавна [I] .length < мин) = състояние [I] .length; К = I; } състояние [к] .label = постоянно} докато (К = ите!); /* Копирайте пътя към резултатния масив * /I = 0; к = 0Do {път [I ++] = к; к = държавна [к]. предшественика;} а (к > = 0);} DV алгоритми

DV алгоритми също са известни като Белман-Форд алгоритми за маршрутизация и Ford-Fulkerson алгоритми за маршрутизация. В тези алгоритми, всеки рутер има маса за маршрутизация, че най-добрият път за всяка дестинация показва. Типичен графика и таблица за маршрутизация за рутер J е показан в горната част на страницата.
<Р> Както показва таблицата, ако рутер J иска да получи пакети към рутера D, то трябва да ги изпращате на рутер H. Когато пакети пристигнат в рутер

Page [1] [2] [3] [4] [5] [6]