Управление на tcp/ip трафик под Linux


Чрез термина пропускливост, може да се опише количеството данни които преминават през мрежов канал за връзка за определен период от време



страница2/4
Дата26.12.2017
Размер0.84 Mb.
#37603
1   2   3   4

Чрез термина пропускливост, може да се опише количеството данни които преминават през мрежов канал за връзка за определен период от време.


За увеличаване на пропускливостта по отношение на приложенията, транспортният стой може да създаде няколко мрежови съединения за едно транспортно съединение. Ако транспортният слой работи с едно транспортно и няколко мрежови съединения, той трябва да обединява и разбива предаваните данни. Обединяването представлява събиране, сливане, заканване на няколко сигнала в един канал за връзка, а разбиването е обратният процес. В такъв случай транспортният слой на "предаващия" хост. обединява няколко съобщения в транспортно съединение. На свой ред транспортният слой на "приемащия" хост трябва да разбие дадените съобщения. Начините за обединяване и разбиване определят начина, по който транспортният слой управлява трафика на пакети в мрежата. Дори повече, реализацията на транспортния слой оказва влияние и на други страни от производителността на мрежата като пропускливост и използване на ресурсите.

Ако транспортният слой на "предаващия" хост създава няколко мрежови съединения за едно транспортно, то този слой трябва да разбива данните в съобщенията на фрагменти. Освен това, транспортният слой на "приемащия" хост-компютьр трябва да събира различните части на съобщението в едно цяло. Но, способността за разбиване, и възстановяване на данните увеличава сложността при проектиране на транспортния слой и съответното програмно осигуряване.

И така, докато мрежовият слой управлява трафика на пакети между няколко хост-компютъра, транспортният слой управлява трафика на данни между няколко процеса на хост-компютьра. И едната, и другата работа за управление на трафика е много важна, макар при тях да се решават напълно различни задачи. Съгласно принципите на проек­тирането в OSI, всеки мрежов слой трябва да има ясно определени задължения.
1.1.5 Управление на потока от данни
Методът за управление на потока се състои в следното -програмното осигуряване проверява дали първият хост не изпраща пакетите от данни по-бързо, отколкото вторият хост може да обработи входящите съобщения. Подобно на мрежовия слой, транспортният също трябва да обработва такива потоци. Транспортните слоеве обаче работят с потока от данни по директния метод (от процес към процес), а не по последователния (от компютър към компютър). С други думи, мрежовият слой управлява потока от данни между хост-компютрите. Транспортният слой управлява потоците с данни между равноправни процеси (програми). Повечето транспортни слоеве, в т. ч. и съответният слой на Интернет, управляват потока от данни подобно на обработката на грешки, т. е. с обмен на потвърждаващи съобщения.

Сесиен слой - Сесийният слой може да се разглежда като интерфейс към мрежата. Използвайки този слой, вие съгласувате връзките между процесите или приложенията на различни хост компютри. Той управлява такива детайли като имена за влизане в системата, пароли и разпознаване на потребителите. Всеки път, когато използвате компютъра си за връзка с друг компютър, сесийният слой управлява и съгласува всички възможни детайли на даденото съединение.

Дефиниция на сесийния слой - Повечето мрежи изискват регистриране всеки път, когато искате да използвате техните ресурси. Всяка процедура за регистрация може да се разглежда като мрежова сесия. Всеки, които се е регистрирал в мрежата, създава по този начин уникална сесия, а един човек, преминал процедурата на регистрация няколко пъти, ще създаде няколко сесии. Процесът на създаване на мрежова сесия (комуникационно съединение между два хоста) се нарича свързване (binding).

Сесийният слой преобразува данните, приготвени за предаване по мрежата, в данни за приложенията. Този слой управлява и коригирането на грешки и заявките на приложенията за промяна на скоростта на потока от данни. Сесийният слой проверява има ли потребителят или създаденият от него процес право на определено компютърно съеди­нение или компютърен процес в мрежата, т.е. сесийният слой проверява, създава и управлява съединенията между потребителите и мрежовите приложения.



Представителен слой - Представителният слой осигурява функции като преобразуване на графични файлове в поток от данни, което улеснява работата на мрежата в приложния слой. Освен това той отговаря за детайли като мрежовия интерфейс към принтерите, мониторите и файловите формати. Накратко казано, представителният слой определя как мрежата взаимодействува с компютърното оборудване и програмното осигуряване. Събирайки и обработвайки информация за принтерите, мониторите и файловите формати в един слой, вие минимизирате потока съответни данни към по-долните слоеве.

Дефиниция на представителния слой - Представителният слой съдържа няколко стандартни функции, които мрежата периодично използва. В тях влизат мрежовите интерфейси към принтерите и видеоадаптерите, а така също и средства за компресиране на данни и други операции с файлови формати. По този начин представителният слой определя как данните постъпват при потребителя. Затова в неговия състав влизат много средства за преобразуване на данни. Различните типове операционни системи довеждат до несъвместимост при файловите формати, а и не само там. Представителният слой трябва да интегрира тези различия по такъв начин, че да направи цялата мрежа прозрачна за мрежовите приложения. В Интернет няма стандартен представителен слой. Затова неговите функции често се изпълняват от приложно програмно осигуряване.

Приложен слой - В приложния слой са разположени програмите, които се използват широко в мрежата. Като пример могат да се посочат програмите за предаване на файлове, електронната поща и дори Web-браузерите. Фактически всички програми, работещи в мрежата, са част от мрежовия приложен слой.

Дефиниция на приложния слой - Приложният слой има работа с процесите или приложенията, създадени за потребителите на мрежата.

1.2. TCP/IP протоколен стек.

TCP (Transport Control Protocol) и IP (Internet Protocol) са два протокола за връзка. В същото време това не са само два протокола. TCP/IP (написани заедно) е набор от протоколи, лежащ в основата на Интернет и предложен в миналото от Министерството на отбраната на САЩ. Този набор от протоколи позволява да се свързват помежду си разнородни н еднородни мрежи.



Реализацията на Интернет чрез ISO/OSI модела.

Моделът ISO/OSI определя седем слоя при мрежите. В реалния живот обаче, такъв модел може да се разглежда само като ръководство за действие. За основа на Интернет се счита наборът от протоколи TCP/IP чиято структура може да се раздели на пет слоя според модела ISO/OSI. На фигура 2.1. са показани и петте слоя на TCP/IP протокола сравнени с OSI модела разгледан в предната глава. Различията се основават на по збитата на пръв поглед структура но по обемна в действителност на TCP/IP стека. В него един или няколко протокола участват в един слой, за да може да се изпълняват всички функции водещи до правилната работа на слоя.



Петте слоя на TCP/IP сравнени с ISO/OSI модела
1.2.1. Набор от протоколи TCP/IP

Сложните комуникационни системи използват няколко протокола (набор от протоколи) за предаване на данни. Подобен набор от протоколи е разположен в няколко различни слоя в компютърната мрежова система. Макар и в един мрежов слой да могат да работят няколко протокола, наборът от протоколи трябва да ги обедини. Наборът от протоколи TCP/IP трябва да работи с огромни масиви от данни в Интернет и да осигурява защита от грешки при обмяната на данни между всички компютри в мрежата

Мрежовите комуникации изискват използване на внимателно обмислен набор от протоколи, за да гарантират безгрешна работа за мрежовите приложения и Web-програмите.

Протоколите (програмното осигуряване) могат схематично да се представят като вертикален стек от слоеве на мрежовия хост компютър. Всеки слой осигурява своята част от общата работа за безгрешното предаване на данните в мрежата. Освен това, всички слоеве, с изключение на приложния и физическия, носят отговорност за подготовката на данните за по-горните и по-долните нива. Приложният слой отговаря само за връзката с представителния, а физическият взаимодействува само с каналния (вече разгледани в мрежовия модел ISO/OSI). В този модел съществуват няколко слоя, всеки от които решава специфични задачи. Във всеки слой моделът определя протокол, който описва функционирането на дадения слой. Мрежовият слой който управлява предаването на данните по мрежата, дефинира протокола Internet Protocol (IP), който управлява предаването на данни между компютрите. Както е показано на фигура 2.2, моделът ISO/OSI описва мрежата като вертикален стек с модули (слоеве).




На фигурата се вижда, че в модела протоколите се разполагат един над друг. Терминът "стек с протоколи" означава мрежа с вертикално разположени слоеве и съответни протоколи. Наборът от протоколи TCP/IP е само един от многото стекове с протоколи, поддържащи модела ISO/OSI. По този начин използването на термина "стек TCP/IP" води до посочване на точно определен стек с протоколи,.

Потокът от данни в TCP/IP - Наборът от протоколи TCP/IP обслужва преместването на информацията в мрежата. Тъй като даденият набор представлява ред взаимодействуващи един с друг протоколи, то потокът от данни ще се премества от един слой в друг и от един протокол към друг. Освен това, в един слой данните могат да се обработват от няколко протокола. За да се предадат данните от един хост на друг, те трябва да преминат през стека с протоколи на първия компютър. Движението на данните по стека с протоколи означава, че те се преместват от приложния слой към физическия и по-нататък отиват в мрежата.

Когато данните пристигат на местоназначението, те трябва да се "качат" по стека с протоколи до съответното приложение. Фигура на предната страница показва как данните се придвижват по мрежата от приложението-клиент, разположено на един компютър, до приложението-сървър, разположено на друг компютър.

Когато данните преминават през стека с протоколи, TCP/IP ги разбива на по-малки части (единици).

Движение на информацията през стека с протоколи.

За да се разбере TCP/IP, ще се разгледат стъпките, които са необходими за успешно предаване на данни по Интернет:

1. Данните трябва да преминават между приложението и мрежата през стека с протоколи.

2. Мрежата определя къде трябва да отидат данните (адреса им на местоназначение).

3. Мрежата трябва да премества и маршрутизира данните към тяхното местоназначение. Там данните трябва да преминат през стека с протоколите, за да достигнат необходимото приложение.



1.2.2. Протоколен стек TCP/IP

В модела ISO/OSI са дефинирани седем функционални нива за описване структурата на мрежата. Този модел обаче е само ориентир, а не ръководство за действие. Структурата на TCP/IP например се състои само от пет слоя. На фигура 2.4. е показан прост петслоен модел на мрежа с посочени TCP/IP протоколи за съответните нива. На фигура 2.4. линиите със стрелки посочват възможното взаимодействие между раз­личните елементи на мрежовото програмно осигуряване и оборудване. За да работят с транспортния слой, програмите използват UDP (User Datagram Protocol) и TCP (Transport Control Protocol). За връзка с мрежовия слой приложението използва програмните модули ICMP (Internet Control Message Protocol) или IP (Internet Protocol). Обаче, независимо от това как данните са постъпили от приложението в мрежовия слой, те трябва задължително да минат през модула IP, за да достигнат мрежовото оборудване.



Както се вижда на фигура по-горе, повечето мрежови проблеми се решават в "средните" слоеве. Затова приложението трябва да взаимодействува или с транспортния, или с мрежовия слой.

Физически слой

Физическият слой на протоколите на мрежата TCP/IP е идентичен на съответния слой на модела ISO/OSI който включва линиите за предаване, по които се движат данните. Линиите за предаване са реализирани или чрез усукана двойка или чрез коаксиален кабели.



Канален слой

Както е показано на фигура 2.4., каналният слой се състои от интерфейс към оборудването и два модул-протокола - ARP (Address Resolution Protocol) и RARP (Reverse Address Resolution Protocol), Тези протоколи се използват за работа с адреси.



Забележка: ARP превежда адресите на мрежовия слой в такива на каналния. RARP изпълнява обратната задача - превежда адресите на каналния свой в такива на мрежовия.

Каналният слой, както и в модела ISO/OSI, се намира между физическия и мрежовия слой. В пълно съответствие със своето име, този слой организира канал за връзка между мрежовия и физическия слой и управлява обмена на данни между физическия и мрежовия слой.

От структурата на набора от протоколи TCP/IP става ясно, че каналният слой приема и изпраща данните в модула IP на мрежовия слой. Освен това в такава мрежа всеки слой "скрива" детайлите в своята работа от съседните слоеве. Затова една от задачите на каналния слой е да работи с мрежовия слой, без да му предоставя информация зафизическата структура на мрежата. В такъв случай протоколите на мрежовия слой не трябва да се безпокоят каква мрежова технология (Ethernet или Token Ring) използва дадената мрежа. Мрежовият слой просто предава данните на каналния слой, който управлява цялото по­нататъшно движение на данните.
1.2.3. Адресиране на пакети в TCP/IP

Програмите използват протоколите TCP и IP за приемане и предаване на мрежови съобщения. Но тези съобщения обикновено се разбиват на пакети. За да могат пакетите да достигнат местоназначението си, те трябва да съдържат информация за неговия адрес. Тъй като IP е протокол на мрежовия слой, то пакетите на IP съдържат адресна информация (32-битов адрес) както за "приемащия", така и за "предаващия" хост-компютър ;

От друга страна, сегментите на TCP (данните, получени от Интернет, които имат отношение към програмите) разполагат със 16-битова адресация, в която влизат адресите на портовете на "изпращащото" и "приемащото" приложение. Портът - това е адрес на програма или приложение. Тъй като може да се работи едновременно с няколко приложения за Интернет, то компютърът приемайки ТСР-сегменти, трябва да ги насочи към съответното приложение през определен порт.
Подреждане на протоколите от стека TCP/IP

От по горните обяснения се достига до извода, че наборът от протоколи TCP/IP е разпределен между транспортния, мрежовия и каналния слой. Транспортният слой включва протоколите TCP и UDP, мрежовият - ICMP, IP и IGMP, а каналният ARP и RARP.


Комутационна обработка


С помощта на комутация на каналите може да се създаде непрекъснат път между две устройства, който се нарича канал. Такъв вид свързване се начина "точка-точка" (point-to-point). Обикновено мрежовото съединение включва канала между две мрежови устройства и самите устройства. Съединението "точка-точка" представлява непрекъснат канал за връзка между устройствата

По принцип комутационната обработка е аналогична на обработката "точка-точка". Тя организира виртуален кавал, като по този начин създава илюзия за непрекъсната физическа връзка. Реално обаче не съществува нито канал, нито непрекъснато физическо съединение. Въпреки това, за приложение, което използва комутационна обработка, каналът за връзка изглежда постоянен и непрекъснат.


Некомутационна обработка


Също както комутационната обработка може да се оприличи на телефонна линия, некомутацнонната обработка прилича на пощенска служба, т.е. некомутацнонната обработка не създава съединения от тип "точка-точка".

При некомутационна обработка съобщенията се предават аналогично по каналите за връзка - те могат понякога да спират или да се забавят, но в края на краищата достигат местоназначението си.


1.2.4. Термини за ТСР/IР

UDP (User Datagram Protocol) и TCP (Transport Control Protocol) ca транспортни протоколи на TCP/IP. Термините, описани по-долу, се отнасят до такива характеристики на протоколите като мрежовисъединения, надеждност на протокола и обслужване на данните.


Мрежови съединения


Мрежовите съединения се делят на комутационни и некомутационни. Комутационният протокол трябва да създаде съединение с другото приложение, преди да започне обменът на данни т.е. комутационният протокол не може да осигури взаимодействие между приложенията и обмен на данни, докато връзката не е установена (TCP е комутационен протокол). Некомутационният протокол не установява връзка за предаване на съобщение. Във всяко съобщение трябва да присъствува пълния и правилен адрес на местоназначението. Този протокол предава съобщението на следващия слой на стека с протоколи и изисква наличие на мрежа, за да достави съобщението (UDP и IP са примери за некомутационни протоколи).

"Сигурност" на протокола

Протоколите биват сигурни и несигурни. Когато данните се предават със сигурен протокол, тяхната доставка е гарантирана. Такъв тип доставка има няколко особености. Първо, за потвърждаване целостта на данните протоколът използва потвърждаващи съобщения. С други думи, ако програмата изпраща съобщение, тя очаква да получи потвърждение за неговото получаване. Ако тя не получи потвърждаващо съобщение, данните автоматично ще бъдат предадени още веднъж и т. н., докато потвърждението бъде получено.

Второ, за да гарантира безгрешната доставка на данните, сигурният протокол включва в предаваните съобщения една или няколко контролни суми. Обаче контролната сума се формира чрез събиране на двоичните стойности на всяка единица данни. Приемащияткомпютър изчислява контролната сума на приетите данни и я сравнява с предадената. Ако двете стойности се разминават, то се е получила грешка. TCP е сигурен протокол, който използва контролни суми, потвърждаващи съобщения и други технологии за организиране на безгрешна доставка на данни. Обратно, несигурният протокол не гарантира доставката на данните.

Аналогично, при работа с несигурен протокол е възможна загуба на съобщения. Такъв протокол не гарантира доставката. Той дори не информира за неуспешните опити за предаване на съобщения. В съобщенията на несигурния протокол обаче може да присъствуват контролни суми за осигуряване целостта на данните. IP например използва контролна сума. За UDP това не е задължително. И двата посочени протокола са несигурни. Несигурният протокол е прост за реализация, внедряване н използуване. Неговата цена от гледна точка на сложността и необходимата пропускливост са значително по-ниски, отколкото при сигурния протокол. Несигурният протокол може въпреки всичко да гарантира целостта на доставяните данни. Такава възможност може да се предвиди и в приложенията. TCP (сигурен протокол) например използва IP (несигурен протокол) за доставяне на данните. Създателите на тези протоколи са вградили средства за сигурност в TCP, за да контролират коригирането на грешки, което отсъствува в IP.



1.2.5. Протоколите и работата им с данните

В набора от протоколи TCP/IP могат да се различат два основни начина за предаване на данни - чрез поток от байтове (byte-stream service) или чрез дейтаграми (datagram). Протоколите, използващи поток от байтове, предават цялата информация като последователност (или поток) от байтове. С други думи. тези протоколи разглеждат данните като единен поток от байтове независимо от количеството информация и броя на опитите за предаване на данните. Например TCP е протокол, използващ поток от байтове. Подобен протокол гарантира, че предаващият и приемащият хост работят с една и съща последователност от данни.

За разлика от потока от байтове, протоколите, използващи дейтаграми, предават информацията във вид на независими единици. С други думи, протоколът предава всяка дейтаграма отделно, като различните дейтаграми не си влияят по никакъв начин. Освен това, ако протоколът изпраща няколко дейтаграми на един и същ адрес, те могат да пристигнат в различна последователност (а не както са изпратени). Ако приемащото приложение се нуждае от определена последователност на данните, то ще трябва да ги подреди след приемане на всички съобщения. UDP и IP използват дейтаграми при работа със съобщения, т.е. ако последователността на данните няма значение, трябва да се използват дейтаграми вместо поток от байтове, за да се намали сложността на програмите.
2.6. Протоколи на транспортния слой

При TCP/IP мрежите в транспортния слой са поставени два протокола: UDP (User Datagram Protocol) и TCP (Transport Control Protocol).



User Datagram Protocol (UDP)

Протоколите UDP (транспортен слой) и IP (мрежов слой) много си приличат - и двата са несигурни и некомутационни, и двата използват дейтаграми за предаване на данни. IP доставя данните до хост-компютъра, a UDP маршрутизира данните към различните местоназначения (мрежови програми) на този компютър. Обикновено за адрес на местоназначението (или приложението) се счита портът на протокола. За предаване на данните UDP използва дейтаграми.

Макар че UDP съдържа контролна сума, той не изисква от програмите нейната проверка, пресмятане и добавяне в заглавната част на протокола (която се използва и за адресация). По това той се различава от IP и TCP. Последните два изискват наличие на контролна сума в заглавната си част.

Модулът UDP приема пристигащите дейтаграми, а след това ги разпределя въз основа на номера на порта на местоназначението. На фигура 2.5. е показано как данните постъпват от мрежовия слой през модула UDP в приложенията.



осигурява сигурна доставка на данните с помощта на комутационната обработка и организирането на потока от данни. Казано накратко, TCP гарантира както безгрешна доставка на данните, така и тяхната правилна последователност. За разлика от него, UDP не гарантира нито безгрешната доставка на дейтаграмите, нито тяхната правилна последователност.

TCP се опитва да оптимизира пропусклнвостта на мрежата, като управлява динамично потока от данни между съединенията. Ако например буферът за данни на приемащия хост се препълни, TCP ще инструктира предаващия хост да намали скоростта.

1.2.7. Протоколи на мрежовия слой

Мрежовият слой на TCP/IP включва три протокола (програмни модула) - ICMP (Internet Control Message Protocol), IP (Internet Protocol) и IGMP (Internet Group Menagment Protocol). IP изпълнява по-голямата част от работата в този слой. ICMP и IGMP са протоколи за поддръжка на IP, които му помагат да управлява специалните съобщения, като съобщенията за грешка, н общите съобщения (които се изпращат ед­новременно в няколко системи). Тъй като между IP и мрежовия слой практически няма разлика, мрежовият слой на TCP/IP често се нарича IP-слой. -.,..-,



Internet Control Message Protocol (ICMP)

Както и протоколите на транспортния слой TCP и UDP, ICMP използва IP за доставка на данни. Този протокол е част от мрежовия слой (както и IP). По отношение на IP обаче той представлява протокол от по-високо ниво. ICMP взаимодействува с IP като част от мрежовия слой на хост-компютъра, но използва IP за доставка на съобщения за другите хост-компютри, подобно на TCP и UDP.

IP доставя данните по мрежата, която се състои от комутатори на пакети или шлюзове (getaways). Тъй като в повечето случаи системите с шлюзове работят нормално, IP не използва никакви методи за известяване на комутаторите (шлюзовете) за възникнали проблеми при предаването на данни (с цел опростяване от IP са премахнати средствата за коригиране на грешки). Следователно, за ефективната работа на мрежата са необходими методи за контрол на грешките, което ще позволи да се подобри доставянето на данни по мрежата.

ICMP добавя възможността за контрол и коригиране на грешки в мрежовия слой на TCP/IP- Ако вашите програми не използват сигурен протокол, те няма да могат да съобщят за възникване на грешка. Структурата на TCP/IP ограничава генерирането на съобщения за грешка в рамките на транспортния и мрежовия слой. С други думи, само мрежовият или транспортният слой могат да "разбират" съобщенията за грешки на TCP/IP от ниско ниво.


Капселоване


За да изпратите данните по мрежата, вие ги предавате от вашата програма на стека с протоколи. След като първият протокол завърши своята работа с данните, той ги предава на следващия. Така след като данните преминат през съответния слой на дадения стек с протоколи, мрежовото програмно осигуряване (модулите за работа с протоколите) ще капселова данните за следващия по-нисък слой на стека. Капселоване се нарича процесът на запазване на данни във формата на протокола от по-ниско ниво. Тъй като данните преминават през стека с протоколи, то всеки слой се гради върху капселоването на предишния, Модул на приложението може да капселова данните на потребителя в съобщение на приложението. Структурата на програмата определя дали тя използва такъв тип съобщение. В повечето случаи програмата може да форматира данните на потребителя директно за мрежовия протокол, примерно TCP. Модулът TCP преобразува данните на приложението в TCP-сегмент. Тези данни съдържат заглавна част на приложението и данни на потребителя. Когато данните преминават през модула IP, мрежовото програмно осигуряване преобразува ТСР-сегмента в IP-дейтаграма (или пакет). Драйверът на Ethernet форматира данните получени от модула IP и ги преобразува в Ethernet-кадър,

Някои програми могат да не използват и съобщение на приложението. Освен това, програма, която използва UDP вместо TCP ще капселова данните на приложението в UDP-дейтаграма. Протоколите на TCP/IP капселоват данните, като ги форматират до структура определена от протокола.



Обработка на грешки в IP мрежи

Ако нямаше сривове в оборудването, то мрежите TCP/IP биха доставяли данните много бързо. За съжаление, повредите на компютрите и проблемите с каналите за връзка могат рязко да влошат работата с данните. Обаче проблемите с оборудването в другите мрежи не са толкова специфични, както при TCP/IP. Когато става локален срив, повечето мрежово оборудване генерира определен тип съобщения за грешка. Специалистите, които управляват локалните мрежи TCP/IP, използват многобройни средства за анализ на проблемите с мрежовото оборудване. От друга страна, когато става отдалечена повреда, първо трябва да се определи, къде точно е станала тя. По-нататък на специалиста е необходима информация за цялата комуникационнамрежа - комутаторите на пакети, маршрутизаторите и хост-компютрите В голяма мрежа тази информация може да бъде просто недостъпна или безполезна.

В мрежи от тип internet-work хост-компютърът не винаги може да съобщи дали е станала локална или глобална повреда. Обикновените средства, които се използват за анализ на локални мрежи, не могат да помогнат при определяне на отдалечен проблем. Например, средствата за нагласяване н изпробване на мрежата действуват въз основа на предположението, че на специалиста е известна конфигурацията на цялата изследвана мрежа. За съжаление, това не винаги е така. Тъй като в IP няма механизъм за решаване на такива проблеми, мрежовите специалисти са създали ICMP й са го добавили в набора от протоколи TCP/IP. Затова всяка реализация на IP предполага наличие на ICMP. Макар ICMP н IP да са различни протоколи, те приличат на сиамски близнаци сраснали се един с друг.
Internet Protocol (IP)

IP е некомутационен, несигурен протокол, тъй като той не създава съединения от тип 'точка-точка" с другия хост, а също така не гарантира доставката на пакетите. Обаче IP прави опит да стане най-добър протокол за предаване на данни.

IP представлява система за доставка на данни включена в набора от протоколи TCP/IP. Дори повече, другите протоколи включени в TCP/IP, такива като TCP, UDP н ICMP, използват IP за предаване на данни по мрежата. Програмното осигуряване на IP избира пътя за предаване на данните по TCP/IP. Освен това, IP информира приемащите маршрутизатори за това, как да обработват пакетите с данни, генерират съобщения за грешка и дори след колко време да отхвърлят пакетите, ако те твърде дълго са пътували до местоназначението. В мрежите TCP/IP дейтаграмите на IP капселоват в себе си всеки протокол, освен ARP. За по-подробна информация прочетете раздела "Капселоване".

Internet Group Menagment Protocol (IGMP)

IGMP позволява да се организира разпращане на съобщения на група компютри а мрежата. За да получава такива съобщения - multicast, хостът трябва да се включи в дадената група. IGMP взаимодействува с членовете на групата чрез циклично оповестяване. С други думи, ако хостът желае да се включи в групата, той трябва да използва IGMP за информиране на всички хостове и маршрутизатори в дадената група. Освен това, хостовете в групата трябва да потвърждават своето членство, отговаряйки на съобщенията разпращани от маршрутизаторите на всички членове на групата. Ако хостът не отговори след няколко опита, то той се счита за изключен от групата.


1.2.8. Протоколи на каналния слой

Каналният слой на TCP/IP включва два адресни протокола - ARP (Address Resolution Protocol) н RARP (Reverse Address Resolution Protocol. Адресите на Ethernet на физическо ниво имат дължина б байта (48 бита). Всички данни, предавани по мрежата с помощта на технологията Ethernet трябва да използват нейния кадър с данни. Ако си спомняте, мрежовата карта Ethernet търси кадри като се ръководи от своя номер. Тя няма ни най-малка представа за IP-адресите (32-бита, които се използват за търсене на мрежова карта н компютъра, в който е поставена). С други думи, протоколите TCP/IP работят само с IP-адресите, а кадрите на Ethernet - само с Ethernet-адресите. Такива разлики в типа на адресите създават неудобства при работа в мрежа. ARP и RARP решават този проблем. Те преобразуват IP - адреса в адрес на каналния слой и обратно. На фигура 2.6. са показани основните функции на всеки от двата протокола.


Фигура 2.6. Преобразуване на адресите от ARP и RARP

протоколи.

Address Resolution Protocol (ARP)

Модулът ARP преобразува IP-адреса (от мрежовия слой) в съответния адрес на каналния слой. Адресът в каналния слой зависи от технологията на мрежата. Например, адресите на Ethernet имат дължина 6 байта, а адресите на Token Ring могат да бъдат с дължина както 2 байта, така и 6 байта.

Конфигурацията на мрежата може да се променя, ако хостът се свързва с мрежата или излиза от нея. Но преадресирането в ARP е динамично. С други думи, ARP автоматично променя адресите в случай на промяна в конфигурацията на мрежата. ARP използва всеобщо достъпните (broadcast) съобщения на каналния слой, за да намери компютрите, които са напуснали мрежата или са се включили в нея. След това модулът ARP запомня отговорите на своите въпроси за по-нататъшно използване. :

Reverse Address Resolution Protocol (RARP)

Протоколът RARP преобразува адресите на каналния слой, например Ethernet, в IP-адреси. Процедурата за преобразуване зависи от типа на технологията на мрежата (Ethernet, Token Ring и т.н.). Използвайки RARP, всяка работна станция може да разпрати запитване по мрежата, в което да посочи, че хостът трябва да й изпрати правилен IP-адрес, ако предадения адрсе е неправилен. Използвайки този адрес по-нататьк, работната станция разпраща заявка за зареждане на операционна система. В резултат на това можете да се свърже работна станция без твърд диск към мрежата и да се зареди всичко необходимо от отдалечения компютър.



1.2.9. Други важни протоколи

Въпреки че наборът от протоколи TCP/IP е един от най-разпространените набори от протоколи в Интернет, съществуват още няколко силно разпространени протокола, които не влизат в споменатия набор.



SLIP, CSLIP и РРР

SLIP (Serial Line Internet Protocol), CSLIP (Compressed Serial Line Internet Protocol) и РРР (Point-to-Point Protocol) - това са три протокола, които се използват за свързване с Интернет с помощта на модем.

SLIP и РРР маршрутизират данните в Web и ги насочват директно към определен компютър. Разбира се, свързването чрез SLIP или РРР е много "по-слабо" в сравнение с обикновеното съединение с Интернет, но това все пак е възможност за връзка. За организиране на връзка чрез SLIP обикновено се използва двойка компютри, които използват модем и телефонни линии. Връзката е асинхронна и последователна. За да се използва SLIP, е необходимо програмно осигуряване, което да управлява връзката между персоналния компютър и Интернет. То прилича на драйвер на устройство. Повечето такива програми включват програма за набиране на телефонни номера за свързване с провайдъра.



CSLIP - това е просто компресиран SLIP. Има голяма разлика в пропускателната способност, тъй като С SLIP доставя данните много по-бързо. И двата протокола обаче имат общи проблеми. SLIP не е стандарт за Интернет. Той не осигурява нормална корекция на грешки и не може да разпознава различните типове пакети. Поради тези, а също и поради други причини, се предпочита РРР вместо SLIP или CSLIP.

РРР - решава всички проблеми на SLIP и е стандарт за Интернет. Той има много предимства пред SLIP, включително и поддръжка на няколко протокола по един и същи канал за връзка, корекция на грешки и компресиране на данни.

HTTP - е мрежов протокол, създаден специално за Web т.е. ако Интернет играе ролята на транспортно средство за Web, to Web трябва да има свой собствен списък с комуникационни правила, които да взаимодеиствуват с протоколите на Интернет с цел предаване на Web-документи. HTTP е основният протокол на Web, който се използва за предаване на данни в Web. HTTP е протокол от по-високо ниво в сравнение с TCP/IP.

ИЗВОДИ:

1. Чрез разгладания ISO/OSI модел се пояснява мрежовата архитектура и взаимодействията в нея на най-ниско ниво.

2. ISO/OSI модела е основен стандарт чрез, който се изграждат всички протоколи и комутационни правила за изграждане на мрежи

3. За по обстойното разглеждане на изгражданите локални мрежи чрез съответните протоколи, е нужно да се разгледа и TCP/IP стека от протоколи

4. Чрез разгледаните протоколи се поясни основата на предаването и приемането на информация в мрежите и в Интернет.

5. Поясни се запазването на информацията, движението на данните и регулирането на потока от данни в мрежите, на най - ниско ниво.



ГЛАВА ВТОРА

2. Методи за анализ и контрол на IP трафика

2.1. Хардуерен метод за анализ и контрол на IP трафика

Хардуерния метод за контрол на IP трафика се осъществява с помощта на мрежови устройства наречени маршрутизатори.



Маршрутизаторите (routers) са многопротоколни устройства, които позволяват свързване на разнородни локални компютърни мрежи на мрежово ниво. Маршрутизатори се наричат и междинните възли на някои глобални компютърни мрежи, при които маршрутизиращата функция доминира над комутиращата (например, при IP-мрежите). Те идентифицират протокола на ниско ниво маршрутизират пакета, откриват грешки и актуализират таблицата на мрежовите топологии, която използват при маршрутизиране. Маршрутизаторите представляват отделен мрежов възел със собствен адрес (или по точно всеки порт на маршрутизатора има свой собствен адрес в зависимост от типа на мрежата, към която е свързан).

2.1.1. Определение за маршрутизация

Маршрутизацията е може би най-важната функция на мрежовия слой. Тя е свързана с избиране на оптимален маршрут за преминаване на пакетите през подмрежата на базата на някакъв предварително зададен критерий за оптималност.



Маршрутизация на данните - Мрежовото програмно осигуряване обикновено използва таблици за маршрутизация при определяне пътя на данните в мрежата. Тези таблици повече напомнят за база от данни с възможност за търсене. Използвайки таблиците, всеки маршрутизатор в мрежата може да намери правилния път (най-добрия маршрут) от текущата позиция на пакета до произволно местоназначение. В зависимост от изискванията на мрежата, тези таблици могат да бъдат както статични, така и динамични. Статичните таблици трябва да се обновяват от администратора на мрежата, а динамичните - автоматично с помощта на мрежовото програмно осигуряване.

Създателите на мрежата могат да дефинират статични таблици за маршрутизация, ако конфигурацията на мрежата се променя рядко, тогава ръчните корекции на тези таблици са сведени до минимум. Информацията от таблиците се пази на място, достъпно за всички хост-компютри. Когато се променя конфигурацията на мрежата, администраторът ръчно променя информацията в таблицата.Но по-лесно за мрежовото програмно осигуряване е да работи със статични таблици, отколкото с динамични. При създаване на динамични таблици за маршрутизация трябва да се осигури динамична адресация. Програмното осигуряване трябва автоматично да обновява таблиците всеки път, когато потребител на компютър се регистрира в мрежата, и вероятно всеки път при създаване на нов пакет от приложенията.



Управление на трафика - Когато се увеличи броя на компютрите в мрежата или потребителите започнат по-често да работят с нея, ще нарасне трафикът на мрежови пакети, така с увеличаването на броя на пакетите в мрежата може да се предизвика претоварвания в трафика на мрежови пакети. Когато в мрежата се получават претоварвания, трафикът се забавя, нараства броят на сблъскванията на пакети и потребителите забелязват силно намаляване на производителността. За да се намали броят на тези претоварвания мрежовият слой трябва ефективно да управлява маршрутизацията на пакетите. В мрежата трябва да се избягва твърде големият брой пакети, минаващи през един и същ маршрутизатор. В противен случай ще се получи "задръстване" в мрежовия трафик. Ако маршрутизатора не може да избегне огромния поток от данни, то поне трябва да управлява ефективно всички възможни претоварвания на трафика. Това е единственият начин за намаляване на "задръстванията". Освен маршрутизация на данните, маршрутизатора трябва да решава такива проблеми на управлението на потока като съгласуване на скоростите на предаване и приемане на пакети.
2.1.2. Методи за маршрутизация

Фиксирани (статични) - Избора на направление за даден пакет не зависи от състоянието на натоварването на елементите на мрежата.

Адаптивни (динамични) - Потоците от пакети се преразпределят в зависимост от създадената конкретна ситуация, което намалява средното закъснение на пакетите в мрежата. Маршрутизаторите обменят по межди си служебна информация за дължината на опашките и за натойарването на процесите си, за състоянието на комуникационните линии и тяхната пропускателна способност, за наличие на подмрежи в мрежата.

Дистанционно-векторни алгоритми (Distance Vector Routing) Всеки маршрутизатор подържа таблица съдържаща известните му най-кратки разстояния по различните направления в подмрежата, заедно с номера на съответния му изходен порт, който трябва да се използва за предаване на пакетите по това направление. Всеки маршрутизатор периодично обновява таблицата си чрез обмен на информация със своите съседи-маршрутизатори. Разстоянията се измерват в скокове (hops), т.е. разстоянието до съседния маршрутизатор е един скок. Дистанционно векторните алгоритми работят добре само в неголеми подмрежи поради бавната им сходимост. Освен това маршрутизаторите имат не пълна, а само приблизителна картина на топологията на връзките в подмрежата.

Алгоритъм на състоянието на каналите (Link State Routing) Всеки маршрутизатор изпраща на всички останали не цялата си маршрутна таблица а само тази част, описваща състоянието на неговите собствени канали към съседните маршрутизатори. Този метод има по­бърза сходимост и не е склонен към образуване на затворени контури на маршрутизация, но са по-трудни за реализация и изискват по-мощни процесори, и повече памет. Основните действия на алгоритъма са:

-Откриване на съседите си чрез изпращане на специални пакети и определяне на мрежовите им адреси;

-Измерване закъснението и скоростта на предаване до всеки свой съсед.

-Конструиране и изпращане на пакет до всички маршрутизатори. съдържащи току-що научената информация.

-Изчисляване на най-късия път до всеки един маршрутизатор в подмрежата на базата на обновена пълна картина на подмрежата.

Като резултат маршрутизатора построява граф на подмрежата. Всеки един маршрутизатор от мрежата използва същият съставен граф от самия него.Така този метод е по устойчив на изменения в подмрежата. От друга страна методите на маршрутизация се делят на:

Децентрализирани - изборът на направление се извършва от всеки възел, независимо по информация, съдържаща се в самия възел

Централизирани - задачата за маршрутизиране се решава от един единствен управляващ подвъзел, специално определен за тази цел. Ефективността и надеждността са по-малки, тъй като отказа на управляващия възел довежда до отказ на цялата подмрежа.

2.1.3. Маршрутизатор

Както споменах no-горе Маршрутизаторите са многопротоколни устройства, които позволяват свързване на разнородни локални компютърни мрежи на мрежово ниво. Те идентифицират протокола на ниско ниво или по точно на ниво физически слой маршрутизират пакета, откриват грешки и актуализират таблицата на мрежовите топологии, която използват при маршрутизиране. Както се вижда по-долу те работят на ниво физически слой .




Но при локални компютърни мрежи няма изявен мрежов слой, поради което подмрежата в тях се образува на основата на физическия и каналния слой. Чрез маршрутизаторите на мрежовия слой се решават редица проблеми, като адресация и сигнализация, когато се свързват компютърни мрежи с комутация на пакети и компютърни мрежи с комутация на канали, защита от неправомерен достъп до мрежовите ресурси на отдалечена локална компютърна мрежа и синхронизацията на обмена при свързването на мрежи с различни скорости на предаване на данни.

Маршрутизатора може да се използват и за свързване на локална мрежа с глобална, или за обединяване на няколко локални мрежи в една глобална. За обединяване на локални мрежи, използващи различни канални и физически протоколи, могат да се използват многопротоколни маршрутизатори, които да извършват за всеки от типовете канални протоколи преобразуване на форматите на кадрите с изпращане към съответната мрежа. Маршрутизаторите за разлика от мостовете изграждат "защитна преграда" за дадена мрежа срещу пакети, генерирани в друга мрежа. Така се постига намаляване на трафика в мрежата и от претоварване на трафика.




Каталог: files -> files
files -> Р е п у б л и к а б ъ л г а р и я
files -> Дебелината на армираната изравнителна циментова замазка /позиция 3/ е 4 см
files -> „Европейско законодателство и практики в помощ на добри управленски решения, която се състоя на 24 септември 2009 г в София
files -> В сила oт 16. 03. 2011 Разяснение на нап здравни Вноски при Неплатен Отпуск ззо
files -> В сила oт 23. 05. 2008 Указание нои прилагане на ксо и нпос ксо
files -> 1. По пътя към паметник „1300 години България
files -> Георги Димитров – Kreston BulMar
files -> В сила oт 13. 05. 2005 Писмо мтсп обезщетение Неизползван Отпуск кт


Сподели с приятели:
1   2   3   4




©obuch.info 2024
отнасят до администрацията

    Начална страница