Протоколи

49
Протоколи В. Търново 2007

description

Протоколи. В. Търново 2007. Протокол – т ова е правило, определящо взаимодействието между системите в рамките на едно ниво и набор от правила, към които трябва да се придържат всички компании, за да се обезпечи съвместимост на апаратното и програмното осигуряване. Определения. - PowerPoint PPT Presentation

Transcript of Протоколи

Page 1: Протоколи

Протоколи

В. Търново 2007

Page 2: Протоколи

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

Терминът мрежови протокол - се отнася за протоколите намиращи се на ниво 3 от OSI модела. Тези протоколи осигуряват доставка на данни намиращи се извън локалната мрежа на изпращача.

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

Определения

Page 3: Протоколи

• Въпреки, че Интернет свързва милиони компютри в целия свят, съобщенията се предават на отделни стъпки от възел към следващия възел;

• За това са необходими общи правила (протоколи);

• Интернет не може да функционира без общоприети стандарти за протоколи.

Необходимост от протоколи

Page 4: Протоколи

Видове протоколи

Маршрутизируеми и немаршрутизируеми Връзково ориентирани и безвръзково

ориентирани На високо и на ниско ниво Локални и глобални Според услугите в Интернет

Page 5: Протоколи

Пакетна организация

• Пакетно предаване на съобщения – това е ефективен метод, позволяващ на съобщенията да поделят линията като не позволяват доминиране на определени потребители– Интернет използва този метод;

– Протоколите в Интернет се основават на този метод

Page 6: Протоколи

Пакети

• Съобщенията се композират на отделни блокове, наречени пакети;

• Комуникационната линия можем да разглеждаме като поточна линия с фиксирани клетки:– Всяка клетка може да съдържа само един блок;– Не е задължително пакетите да са подредени (както в

съобщението);– Някои от клетките могат да бъдат празни;– При откриване на грешки само грешните блокове се

изпращат отново;– При получаването от отделните пакети се реконструира

съобщението.

Page 7: Протоколи

Управление на пакетите

Packet A3 Packet A1

Packet Packet A2

Packet Packet Packet

Packet Packet Packet

Packet Packet Packet Packet Packet Open

Open

Open

Packet A1 Packet A2 Packet A3

Message A

Packet A1 Packet A2 Packet A3

Message A

Page 8: Протоколи

Пакетите могат да следват различни пътища

Рутер 1

Рутер 2

Рутер 3

Рутер 4 Рутер

5

Рутер 6

Рутер 7

Рутер 8

източник цел

Page 9: Протоколи

Комуникационни протоколи от високо ниво

Второто ниво на конструиране на пакетите се извършва в мрежовия слой 3 на модела OSI и се определя от намиращите се в този слой комуникационни протоколи от високо ниво. За да обменят данни, компютрите трябва да използуват еднакви протоколи от мрежовия слой. Пример за такъв протокол от високо комуникационно ниво е IPX на Novell, който се основава на разработения от Xerox протокол XNS. Последният е версия на IP от стека от протоколи TCP/IP. Протоколите от мрежовия слой осигуряват хардуерна независимост. Чрез тях се осъществява връзката на един тип комуникационен софтуер с почти всеки протокол от от слоя МАС, т.е с почти всеки мрежов хардуер. Протоколът от мрежовия слой IPX (http://www.webopedia.com/TERM/I/IPX.html) на Novell, може да се приспособи към различни мрежови архитектури и чрез него един и същи софтуер, например на Novell да работи в различни локални мрежи.

Page 10: Протоколи

Най-разпространени протоколи от високите нива на OSI

• FTP• TFTP• X.400• Telnet• SMTP• CMIP• SNMP• NFS• FTAM

Page 11: Протоколи

Комуникационни протоколи от ниско ниво 

Повечето ЛМ имат две нива на конструиране на пакети. Първото ниво зависи от използувания мрежов хардуер. Структурата на пакета трябва да е съвместима с конкректната мрежова архитектура. Това означава, че например ARCNET не поддържа пакетите на друг тип мрежи като Token Ring. Комуникационните протоколи от ниско ниво работят в каналния слой 2, където е определено подниво MAC (Media Access Control – управление на достъпа до съобщителната среда). Тези протоколи определят размера и структурата на пакета, както и метода за едновременен достъп до кабела от няколко мрежови устройства.

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

Page 12: Протоколи

Услуги в Интернет

1. ЛокалниFile – file///c|MyDocuments/Protocole.doc

2. Електронна поща протоколи – SMTP, POP3mailto:name@adress

3. WEBпротокол – httphttp://....

4. FTP протокол – FTPftp://....

5. Telnet

Page 13: Протоколи

Типове протоколи

Протоколи за приложни услуги: HTTP, FTP, Telnet, и т.н.

Транспортни протоколи TCP (Transmission control protocol) – управляват предаването на данни на транспортно ниво

Протоколи за маршрутизация (IP, ISMP, RIP) – обработват адресацията на данните, определят пътя и осигуряват предаването на данни на мрежово ниво

Протоколи за поддръжка на мрежови адреси DNS (domain name system), ARP (address resolution protocol)

Page 14: Протоколи

ПРОТОКОЛИТЕ В ИНТЕРНЕТЙерархия на протоколите

1. Етернет

2. IP

3. UDP,TCP

4. Приложен протокол - до 7-мо нивогейтуей B гейтуей A

Други протоколи - DNS

Page 15: Протоколи

Основни мрежови протоколи в Интернет

Page 16: Протоколи

TCP/IP

IP протокола се е появил преди повече от 30 год. като разработка за нуждите на военните в САЩ. Той свързва различни видове компютри в една обща мрежа. Този слоен протокол отделя приложенията от мрежовия хардуер.

• Военна разработка –DoD• Пренос на данни при всякакви условия и при неопределени

топологии• TCP/IP – основен стандарт за развитието на Internet, осигурява

свързаност между различните мрежи, а не върху функционалните нива.

Page 17: Протоколи

Протоколния стек TCP/IP

TCP/IP моделът включва 4 функционални нива : Ниво мрежов достъп Междумрежово ниво (Интернет ниво) Транспортно ниво (Точка до точка) Ниво приложения

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

Page 18: Протоколи

Основни понятия при предаването на данни в мрежи TCP/IP

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

приложения с протоколите на транспортно ниво. Инкапсулация - способ на упаковка на данни имащи формат на един

протокол във формат на друг протокол. Например, упаковка на IP-пакета в кадър Ethernet или TCP-сегмент в IP-пакет. В случая имаме инкапсулацията на IP в Ethernet става дума за поместване на пакета IP в качеството на данни в Ethernet-фрейма, или, в случай инкапсулация TCP в IP, помества TCP-сегмент в качеството на данни в IP-пакет, то при предаването на данни по комутируеми канали се извършва допълнително "нарязване" на пакетите, сега вече на пакети SLIP или фреймове PPP.

Page 19: Протоколи

TCP/IP (Transmission Control Protocol / Internet Protocol) протокол

• Специфицира едно множество от пакетни протоколи, които дефинират правилата за комуникация в Интернет;

• Протоколът има слоеста архитектура;• Подобен на 7-слойния протокол OSI (Open

Systems Interconnect).

Page 20: Протоколи

Протоколния стек TCP/IP• Под термина "TCP/IP" обикновенно се разглежда всичко, което е

свързано с протоколите TCP и IP. Това са не само отделни протоколи с тези имена, но и протоколи създадени с използване TCP и IP, и приложни програми.

• Главната задача на стека TCP/IP – е обединение в мрежа на пакетните подмрежи чрез шлюзове. Всяка мрежа работи и осигурява обмен на данни вътре в собствената мрежа, като се предполага, че шлюзът може да приема пакети от друга мрежа и да ги достави на указания адрес. Пакетът от една мрежа се предава в друга подмрежа чрез последователност от шлюзове, които осигуряват необходимата маршрутизация на пакетите по цялата мрежа.

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

• Маршрутизация – това е процедура за определяне пътя на следване от пакета при преминаване от една мрежа в друга.

Page 21: Протоколи

TCP/IP модел

Приложен слой

Транспортен слой

Интернет слой

Мрежов достъп слой

Горните два слоя оперират със съобщения

Долните два слоя оперират с пакети и контролират мрежата

Page 22: Протоколи

TCP/IP сравнен с OSI модел

Page 23: Протоколи

Група протоколи TCP/IP (1)

7 Application

6 Presentation

5 Session

4 Transport

3 Network

2 Data

1 Physical

OSI- Model TCP/IP - Model

application andpolicy

Network access

internet(work)transport

4

32

1

Page 24: Протоколи

Група протоколи TCP/IP (2)

Network access

Internet protocolIP

ICMP

ARP RARP

Transport protocolTCP

User Datagramprotocol

UDPS

MT

P

FT

P

teln

et HT

TP

rlo

gin N

FS

bo

otp

TF

TP

Layer3

routing

Layers1 and 2

Layer4

Layers5, 6, 7

Page 25: Протоколи

• При създаване на мрежовия модел TCP/IP са стояли следните изиквания:– да има общ набор от програмни приложения;– да използва динамическа маршрутизация;– предаване на данни без установяване на съединение

на мрежово ниво;– възможност да се използват в мрежите практически

произволни архитектури ;– използване на технологията комутация на пакети.

TCP/IP

Page 26: Протоколи

Протоколът TCP

• Протоколът TCP определя, по какъв начин информацията се разделя на пакети и разпространява в Интернет.

• Всеки пакет се номерира и предава независимо, затова

преминатите от пакетите пътища могат да не съвпадат, и последователността на тяхната доставка до адресанта може да е различна от изходната последователност

• На крайния пункт се осъществява обработка на пакетите и възстановяване на изходната информация. 

Page 27: Протоколи

Формат на пакета TCP

Page 28: Протоколи

Протоколът IP Определя се като unreliable протокол. За да се повиши

неговата надеждност се използва ICMP (error checking).

• Протоколът IP се използва за адресация на компютрите.

• Във всеки предаван пакет информация има указан IP-адрес на компютъра.

• IP-адреса се състои от четири числови групи, разделени с точки. За всяко число в този адрес е отделен по един байт, затова номера може да приема значения от 0 до 255. – Например, может да има такъв IP- адрес: 

194.87.132.3

Page 29: Протоколи

• Междумрежовия протокол (Internet Protocol) осигурява достака на пакетите с данни от източника към получателя при група свързани помежду си мрежи.

• В протокола IP отсъства функция за потвърждение на приема, контрол на предаването, съхранение на последователността на предаваните пакети. В този смисъл протоколът IP не осигурява надеждно предаване с гарантирана доставка. Всички функции по осигуряване на надежност при необходимост се обезпечават от протоколите на горните нива.

• Протоколът IP обработва всеки пакет като самостоятелен объект независимо от другите предавани пакети. Той не използва виртуални канали или техните логически трактове на предаване за обработваните пакети.

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

• Понякога протоколът IP извършва преобразуване размера на пакета. Например, в случай, ако пакетът постъпил от мрежа построена на база Ethernet (размер на кадъра 1500 байта) и той трябва да бъде изпратен в мрежа изградена на стандарт FDDI (размер на кадъра 4470 байта), то протоколът IP ще трябва да обедини няколко кадъра Ethernet в един кадър FDDI. Или обратно да разбие кадър FDDI на няколко кадъра Ethernet при обратното предаване.

Протоколът IP (Internet Protocol)

Page 30: Протоколи

Процес на преобразуване на данните

Нивоприложения

Нивоприложения

Транспортно ниво

Транспортно ниво

T T T T

Междумрежово ниво

Междумрежово ниво

I T I T I T I T

Физическо ниво

Физическо ниво

Предаване на данни

IP - пакети

Възстановената битова последователност

ТСP - пакети

IP - пакети

Изходна битова последователност

ТСP - пакети

T – Заглавие на TCP; I – Заглавие на IP.

Page 31: Протоколи

Ниво мрежов достъп

Нивото на достъп до мрежата (физическо ниво) осигурява предаване на кадрите с данни между различни възли в мрежите с еднотипова топология или между два съседни възела в мрежи със смесена топология. За идентификация на възлите на местоназначение се използва локален (апаратен) адрес на компютъра (00:E0:29:78:96:FF). Към физическото ниво се отнасят протоколите за Ethernet, Token Ring, FDDI, SLIP, PPP, ATM, Frame Relay и други.

Page 32: Протоколи

Слой, осигуряващ достъп до мрежата

• Нарича се още физически слой (physical layer):– Пакетите се трансферират към комуникационната линия;– Изпращат се към следващия възел;– Както и другите слоеве получава съобщения от по-горния слой и

добавя собствен хедър• Така, всеки пакет, който се предава по комуникационната линия

има 3 хедъра:– Транспортен;– Интернет;– Физически

• Информацията, съдържаща се в хедърите се използва от протоколите на кореспондиращите слоеве в приемащите възли

• TCP/IP е отворен стандарт – архитектурата (включително детайлите) са публикувани и свободно достъпни за всеки.

Page 33: Протоколи

Мрежовия достъп добавя собствен хедър

Приложен слой

FTP заявкаПриложна програма

FTP заявкаFTP header

Транспортен слой (всеки пакет)

FTP заявкаFTP headerTCP header

Интернет слой (всеки пакет)

FTP заявкаFTP headerTCP headerIP header

Мрежов достъп слой FTP заявкаFTP headerTCP headerIP headerNetwork header

Page 34: Протоколи

Междумрежово ниво (интернет слой)

На това ниво се определят правилата за предаване на пакетите данни между мрежите. За идентификация на възлите на местоназначение се използва съставения от числа IP-адрес (194.85.160.050), състоящ се от две части: номер на мрежата и номер на възела в тази мрежа. Основният протокол на това ниво се явява протоколът IP (Internet Protocol - междумрежов протокол), който определя формата на адресите и маршрута на предаване.

Page 35: Протоколи

Интернет слой

• Нарича се още мрежови(междумрежови) слой (network layer):– Използва IP протокола за рутиране на пакети;

– Избира следващ възел, който може би води до целевия;

– Приема пакети от транспортния слой.

Page 36: Протоколи

Интернет протоколи

Приложен слой

Транспортен слой

Интернет слой

Мрежов достъп слой

IP ARP

От транспортния слой

Към мрежови достъп слоя

Име: Internet ProtocolФункция: избира следващия възел за

предаване на пакета и актуализира адреса му в IP хедъра.

Име: Address Resolution ProtocolФункция: трансформира IP адреси на

работни станции в MAC (Media Access Control) адрес.

Page 37: Протоколи

IP добавя собствен хедър

Приложен слой

FTP заявкаПриложна програма

FTP заявкаFTP header

Транспортен слой (всеки пакет)

FTP заявкаFTP headerTCP header

Интернет слой (всеки пакет)

FTP заявкаFTP headerTCP headerIP header

Page 38: Протоколи

Транспортно ниво

Това ниво осигурява предаването на данни между произволни възли на мрежата с необходимата степен на надежност. За това на транспортно ниво има средства за установяване на свързване, номерация, буферизация и подреждане на пакетите. Основен протокол на това ниво е TCP (Transmission Control Protocol - протокол за управление на предаването)

Page 39: Протоколи

Транспортно ниво

• Хост-към-хост транспортен протокол:– Отговаря за осигуряване на успешно end-to-end

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

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

• Използват се различни транспортни протоколи – TCP най-съществен.

Page 40: Протоколи

Транспортни протоколи

Приложен слой

Транспортен слой

Интернет слой

Мрежов достъп слой

TCP Други транспортни протоколи

От приложния слой

Към интернет слоя

Име: Transmission Control ProtocolФункция: декомпозира съобщенията

на пакети, номерира ги и следи за грешки

Page 41: Протоколи

Приложно ниво

• Съдържа протоколи, които директно поддържат приложните програми:

• Изпращащ компютър:– Приема параметри от една приложна програма;– Създава изходни параметри, необходими за по-

долния слой.• Приемащ компютър:

– Приема информация от по-долния протокол;– Предава я към съответната приложна

програма.

Page 42: Протоколи

Приложни протоколи

Приложен слой

Транспортен слой

Интернет слой

Мрежов достъп слой

FTP Telnet HTTP SMTP

POP SNMP OtherDNS

От приложната програма

Към транспортния слой

Име: File Transfer protocolФункция: свяляне (download) и

вдигане (upload) на файлове

Име: Terminal-emulation protocolФункция: свързване с отдалечен компютър –

използва се за дистанционен контрол на сървъри

Име: Hypertext Transfer ProtocolФункция: заявяване и свяляне

(download) на web страници

Име: Simple Mail Transfer ProtocolФункция: изпраща e-mail

съобщения към получателяИме: Post Office ProtocolФункция: предава събрани mails

от един mail сървър към друг

Име: Simple Network Management ProtocolФункция: следи оперирането на хардуера и на

софтуерните компоненти на една мрежа

Име: Domain Name SystemФункция: управлява логическите

имена на ресурсите

Page 43: Протоколи

Потребителска програма & потребителски протоколи

• Съществено е разбирането на разликата между приложната програма и протоколите на приложния слой:– Потребителите осъществяват достъп до системата

посредство подходящ потребителски интерфейс, доставен от приложението;

– Използваният потребителски протокол свързва приложната програма с протоколите на по-ниско ниво;

– Потребителят комуникира директно само с потребителския интерфейс на приложението;

– Потребителските протоколи са прозрачни за потребителя.

Page 44: Протоколи

Протоколът на приложния слой FTP добавя заглавна част към заявката

Приложен слой

FTP заявкаПриложна програма

FTP заявкаFTP header

Page 45: Протоколи

TCP добавя собствен хедър

Приложен слой

FTP заявкаПриложна програма

FTP заявкаFTP header

Транспортен слой (всеки пакет)

FTP заявкаFTP headerTCP header

Page 46: Протоколи

Протоколът UDP

• Протоколът UDP (User Datagram Protocol – протокол на потребителските дейтаграми) се явява един от двата основни протокола, расположени непосредственно над IP. Той предоставя на приложните процеси транспортни услуги, които не се отличават много от услугите, предоставяни от протокола IP.

• Взаимодействието между приложните процеси и модули UDP осъществява чрез UDP-портове. Портовете се номерират започвайки от нула. Фактически номера на порта еднозначно ще идентифицира номера на приложния процес на сървъра към който е направено запитване.

Page 47: Протоколи

Протоколът UDP• Протоколът UDP (User Datagram Protocol) – е един от двата

протокола на транспортно ниво, които се използват в стека протоколи TCP/IP. UDP позволява приложните програми да предават своите съобщения по мрежи с минимални изисквания, свързани с преобразуването на протоколите от ниво приложения в протокол IP. Като при това, приложната програма сама трябва да се досети за подтвърждение на това, че съобщението е доставено до местоназначението си.

• Портовете в заглавието определят протокола UDP като мултиплексор, който позволява да се събират съобщения от приложенята и ги изпраща на нивото на протоколите. При това приложението използва определен порт. Взаимодействуващите чрез мрежата приложения могат да използват различни портове, което е отразено в заглавието на пакета. Първите 256 порта са заделени, за така наречените "well known services", към които се отнасят, например, 53 порт UDP, който е резервиран за услугата DNS.

• Най - известните услуги, основани на UDP, са разпределение на домейн имената BIND и разпределената файлова система NFS.

Page 48: Протоколи

Протоколи ARP и RARP

• Протоколът ARP (RFC 826). Address Resolution Protocol се използва за определяне съответствието между IP-адреса и адреса Ethernet. Протоколът се използва в локалните мрежи. Съответствието се осъществява само в момента на изпращане на IP-пакета, тъй като само в този момент се създава заглавие IP и Ethernet. Съответствието на адресите се осъществява по пътя на търсене в ARP-таблица.

• Опростената, ARP-таблица се състои от две колони :

IP-адрес Ethernet-адрес

223.1.2.1 08:00:39:00:2F:C3

223.1.2.3 08:00:5A:21:A7:22

223.1.2.4 08:00:10:99:AC:54

• В първата колона се съдържа IP-адреса, а във втората Ethernet-адреса. Таблицата на съответствие е необходима, тъй като адреса се избира произволно и няма никакъв алгоритъм за неговото изчисление. Ако дадена работна станция се премести в друг сегмент на мрежата, то нейната ARP-таблица трябва да бъде изменена.

Page 49: Протоколи

Протоколът ICMP• Протоколът ICMP (Internet Control Message Protocol) се отнася към

междумрежово ниво. Протоколът се използва за изпращане на информационни и управляващи съобщения. При това се използват следните видове съобщения : – Flow control – ако приемащата машина (шлюз или реален получател на

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

– Detecting unreachаble destination – ако пакета не може да достигне до местоназначението си, то шлюза, който не може да достави пакета, съобщава за това на изпращача на пакета. Да информира за невъзможност за доставка на съобщение може и машина, чийто IP-адрес е указан в пакета. Само в този случай става дума за портове TCP и UDP.

– Redirect routing –това съобщение се изпраща в този случай, ако шлюзът не може да достави пакет, но при него има на отчет някой който може, а именно адреса на друг шлюз.

– Checking remote host – в този случай се използва така нареченото ICMP Echo Message. Ако е необходимо да се провери наличието на стека TCP/IP на отдалечената машина, то на нея се изпраща съобщение от този тип. Само когато системата получи това съобщение, тя незабавно подтвърждава за неговото получаване.