Тази статия се нуждае от подобрение. Необходимо е: форматиране. Ако желаете да помогнете на Уикипедия, използвайте опцията редактиране в горното меню над статията, за да нанесете нужните корекции. |
OSI модел |
---|
1. Физически слой |
2. Канален слой |
3. Мрежов слой |
4. Транспортен слой |
5. Сесиен слой |
6. Представителен слой |
7. Приложен слой |
OSPF (Open Shortest Path First) е мрежов протокол със състояние на връзката (на латински: link-state protocol), който разделя топологията за рутиране на области. Част е от мрежовия слой. Протоколът е създаден да изпълнява маршрутизиращи задачи в една корпоративна мрежа, като това изисква бързо обновяване на информацията, минимално рутиране на контролен трафик и по-голяма сигурност. Концепцията на OSPF е в създаването, поддържането и разпределянето на база данни със състояние на връзката, която описва сбор от маршрутизатори и техните работещи интерфейси. В тази база се описва също как рутерите са свързани и целта е да бъдат използвани интерфейсите им.
OSPF протоколът използва като метрика цена (cost) – 16 битово число в диапазона от 1 – 65535. Цената е мерна единица, използвана за описание на близки по стойност коефициенти на полезно действие на различните рутери до определена дестинация. По подразбиране цената на интерфейсите се изчислява на базата на пропускателната способност (Bandwidth – BW) на връзката по формулата 108/BW. Ако резултатът е по-малък от 1, цената се установява на 1. OSPF сумира цените на всички връзки в маршрута, като най-ниската цена определя най-предпочитания маршрут на базата на алгоритъма на Дийкстра (Shortest Path First – SPF).
Всеки рутер в домейна е задължен да направи своята част от топологията чрез съобщения за състоянието на връзката – LSA. LSA съдържа информация, описваща маршрути, мрежи, достъпни маршрути, префикси на маршрути и метрики. Те се предават след това на всички останали маршрутизатори чрез процес, наречен „наводняване“, което означава, че останалите рутери си синхронизират базата данни помежду си. Докато всеки OSPF рутер има идентична база данни на състоянията на връзките, всеки рутер може да пресметне най-краткия път до желаната дестинация, използвайки алгоритъма на Дикстра за използване на най-краткия път с най-голям приоритет.
Предимството на OSPF е, че link-state информацията за всяка област се съдържа само в нея и само за нея. Link-state технологията разчита на това, че всеки рутер знае към какви мрежи е свързан всеки друг, т.е. какви link-ове има, откъдето идва и името link-state (състояние на връзките). Предимства: Всеки рутер в топологията получава link-state-ите на всички останали рутери в областта и съвкупността от информацията за тях се нарича link-state database (LSDB). Всички рутери в топологията имат един и същ link-state database и едно от нещата, които го правят тежък протокол, е именно обемът на базата данни.
LSA Link-state advertisment съдържа адреса на линка и типа на една или повече мрежи. Дефинират се различни видове LSA за различните типове мрежи и рутери. Всеки рутер праща multicast със своите линкове чрез LSА. От своя страна, всички съседи препращат получените LSA на останалите, така както са ги получили, като е ясно кой е оригиналният източник на даден LSA.
LSA Flood се нарича така заради количеството трафик, което поглъща, но след него всички рутери в топологията имат еднакви бази данни, които пускат SPF алгоритъм, който от своя страна прави няколко неща: изгражда граф на топологията. Този граф представлява състоянието на топологията, погледнато от неговата гледна точка. Гореспоменатият алгоритъм на Дейкстра е най-разпространения алгоритъм за търсене на най-краткия път между два възела на насочен, претеглен, ориентиран граф.
Предимства на OSPF:
OSPF области – при използване на OSPF в големи мрежи, първоначалното изпращане на съобщения и поддържането на базите данни с LSA могат да доведат до претоварване на маршрутизаторите. За намаляване на този ефект, OSPF използва йерархична структура на мрежата, представена като съвкупност от области (areas). Областта е логическо обединение на маршрутизатори и връзки в мрежата. Маршрутизаторите обменят информация за състоянието на връзките само с другите маршрутизатори от същата област.
Всяка област се означава с 32-битово число. Областта с номер 0 е резервирана за централна област (backbone). Тя е отговорна за разпределянето на маршрутната информация между отделните области. Ако са налице няколко области в автономната система, една от тях трябва винаги да се дефинира като централна.
Възможно е дефинирането на области, които не притежават физически свързани към централната област маршрутизатори. Маршрутизирането на информация през централната област в този случай може да се реализира посредством конфигурирането на виртуални връзки между конкретната област и централната.
OSPF е протокол, използващ състоянията на връзките. За връзката може да се мисли като за интерфейс на маршрутизатор. Състоянието на тази връзка е описанието на този интерфейс, което включва например IP-адреса на интерфейса, маската, типа на мрежата, към която е свързан, свързаните маршрутизатори към тази мрежа и т.н. Сборът на всички тези параметри формира база данни за състоянието на връзката.
Всички OSPF маршрутизатори поддържат и създават три отделни бази данни:
OSPF може да поддържа различни архитектури от каналния слой, например LAN и WAN връзки. Начинът на осъществяване на обмена на съседства и база данни зависи от архитектурата, в която се изпълнява OSPF. Когато съществува само една област, OSPF автономната система и областта са едно и също. Всички маршрутизатори в OSPF областта поддържат копие на една и съща база данни за състоянието на връзките. Когато съществуват множество области, маршрутизаторите се свързват към всички области, поддържащи отделни бази данни за област.
OSPF присъединявания – протоколът използва Hello пакети за откриване на съседите по мрежа, които се разпространяват по multicast адрес 224.0.0.5 (AllSPFRouters). Съседните маршрутизатори се указват като присъединени (adjacent), когато параметрите в техните Hello пакети съвпадат, когато си обменят LSA и когато топологичните им бази данни са синхронизирани.
За мрежи от тип point-to-point, валидните съседи са винаги присъединени. За broadcast мрежи като Ethernet, маршрутизаторите стават присъединени единствено с титулярния (DR) и резервния титулярен маршрутизатор (BDR).
Титулярни маршрутизатори
В мрежи, предоставящи множествен достъп като Ethernet, определени маршрутизатори могат да бъдат избирани като титулярен (Designated Router – DR) и резервен титулярен (Backup Designated Router – BDR). Тези два маршрутизатора се явяват присъединени към всички останали в мрежата и получават LSA от тях посредством multicast адрес 224.0.0.6 (AllDRouters). От своя страна, DR и BDR препращат LSA по адрес 224.0.0.5. Това значително редуцира LSA трафика, генериран в Ethernet мрежата.
Изборът на титулярен и резервен маршрутизатор се базира на приоритет. Приоритетът може да има стойност от 0-255. Стойност 0 елиминира маршрутизатора от изборния процес. Маршрутизаторът с по-високия приоритет се избира като DR, следващия по приоритет – за BDR. Ако са налице няколко маршрутизатора с еднакъв приоритет, избира се този с по-голям идентификатор (IP адрес). Включването на нов маршрутизатор в мрежата не предизвиква променяне на DR дори и ако новият има по-висока стойност на приоритета. Нов избор може да се извърши единствено при отказ на DR.
Автентикация
Автентикацията е един от основните методи за повишаване сигурността на мрежовите комуникации. Протоколът OSPF позволява взаимно автентициране на маршрутизаторите посредством парола. По подразбиране не се използва автентикация при обмен на маршрутната информация. Автентикацията може да бъде реализирана по два основни начина: чрез парола в чист текст и криптирана парола. Всички маршрутизатори, които ще се присъединяват към обмена на маршрутна информация в областта, трябва да бъдат конфигурирани с една и съща парола.
Използването на парола в чист текст не се препоръчва от гледна точка на сигурност. За повишаване на сигурността е необходимо използването на криптиране – Message Digest 5 (MD5) алгоритъм. При този начин, на всеки маршрутизатор трябва да бъдат конфигурирани парола и идентификатор на ключ. На базата на паролата, идентификатора на ключа и съдържанието на OSPF пакета, алгоритъмът MD5 генерира резултат, наречен message-digest, който се записва в пакета. Получаващият маршрутизатор използва неговата парола, ключ и пакета, за да изчисли съответния message-digest. Ако двете стойности съвпадат, автентикацията е успешна и маршрутната информация може да се обработи.