Въведение в OSI

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

Моделът на работа на мрежата се нарича мрежов модел на базовия референтен модел за взаимно свързване на отворени системи ISO/OSI. Накратко – моделът OSI (Open Systems Interconnection).

OSI модел

Общо в този модел има 7 нива. Взаимодействието на нивата е строго стандартизирано и сведено до минимум. По-ниското ниво няма представа за наличието на по-високи нива и тяхната структура.

Най-долният слой може просто да изпраща битове . Дори не предаване, а именно изпращане. Той няма представа дали ще го направят or не. Изпратено и забequalsо.

По-високо ниво вече работи с групи от битове - рамки и знае малко за физическото устройство на мрежата, разбира MAC addressи и други подобни.

Следващото ниво е партида. Той е още по-умен и знае How да работи с мрежови IP addressи. И така нататък.

Защо е необходимо всичко това? За да увеличите максимално гъвкавостта.

Представете си, че всеки слой е Java интерфейс и може да има няколко различни реализации. Така че и тук. На физическо ниво можете да изпращате битове по кабела, да изпращате по въздуха (Wi-Fi), да изпращате чрез сателит и всички други нива дори няма да знаят нищо за това. И всичко ще работи по преднаmeaning.

OSI протоколен стек

Можете да проучите протоколния стек по-подробно на снимката по-долу :

Но ако не сте системен администратор, тогава нямате нужда от такова подробно описание на протоколите. По-интересно може да бъде изследването на TCP (Transmission Control Protocol) / IP (Internet Protocol) протоколен стек.

Горните три слоя в OSI модела, т.е. приложният слой, презентационният слой и сесийният слой, не се разграничават отделно в TCP/IP модела, който има само приложен слой над транспортния слой:

Разпределение на протоколите по слоеве на OSI модела

TCP/IP OSI
Приложено Приложено HTTP, SMTP, SNMP, FTP, Telnet, SSH, SCP, SMB, NFS, RTSP, BGP
Представителство XDR, AFP, TLS, SSL
сесия ISO 8327 / CCITT X.225, RPC, NetBIOS, PPTP, L2TP, ASP
транспорт транспорт TCP, UDP, SCTP, SPX, ATP, DCCP, GRE
мрежа мрежа IP, ICMP, IGMP, CLNP, OSPF, RIP, IPX, DDP
канален канален Ethernet, Token ring, HDLC, PPP, X.25, Frame Relay, ISDN, ATM, SPB, MPLS, ARP/td>
Физически електрически проводници, радиокомуникации, оптични проводници, инфрачервено лъчение

TCP/IP стек от протоколи

Протоколният стек TCP/IP включва четири слоя:

  • Приложен слой
  • Транспортен слой
  • Интернет слой (мрежов слой) (интернет слой)
  • Слой за свързване (слой за мрежов достъп)

Протоколите на тези слоеве напълно реализират цялата функционалност на OSI модела. Цялото потребителско взаимодействие в IP мрежите е изградено върху протоколен стек TCP / IP.

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

Приложният слой е мястото, където работят повечето мрежови applications.

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

За взаимодействието на програмите има протоколи от високо ниво за обмен на информация. Например, браузърите работят с помощта на HTTP протокола, пощата се изпраща с помощта на SMTP протокола, Telegram работи с помощта на собствен криптиран протокол.

Но ние не се интересуваме много от частни протоколи. Най-често ще срещнете групови протоколи като ftp клиент за FTP (прехвърляне на файлове), SSH (сигурна връзка към отдалечена машина), DNS (преобразуване на символ в IP address) и много други.

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

  • 20 FTP към TCP порт 20 (за трансфер на данни) и 21 (за контролни команди)
  • 22-SSH
  • 23 - Telnet
  • 53 - DNS заявки
  • 80-HTTP
  • 443 - HTTPS

Тези портове са определени от Агенцията за присвояване на имена и уникални параметри (IANA).

Има няколко други популярни протокола на приложния слой: Echo, Finger, Gopher, HTTP, HTTPS, IMAP, IMAPS, IRC, NNTP, NTP, POP3, POPS, QOTD, RTSP, SNMP, SSH, Telnet, XDMCP.

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

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

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

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

За да предотврати това да се случи, транспортният слой or изброява съобщенията, or не изпраща ново, докато не получи потвърждение за получаване на предишното. Автоматичните протоколи за маршрутизиране, които логически присъстват на този слой (тъй като работят върху IP), всъщност са част от протоколите на мрежовия слой.

TCP протоколът е „гарантирана“ връзка, предварително установен транспортен механизъм, който осигурява на приложението надежден поток от данни, гарантира, че получените данни са без грешки, повторно изисква данни в случай на загуба и елиминира дублирането на данни.

TCP ви позволява да регулирате натоварването на мрежата, Howто и да намалите времето за изчакване на данни при предаване на дълги разстояния. Освен това TCP гарантира, че получените данни са изпратени в точно същата последователност. Това е основната му разлика от UDP.

UDP е дейтаграмен протокол без връзка. Нарича се още „ненадежден“ протокол за предаване, в смисъл на невъзможност да се провери доставката на съобщение до addressта, Howто и възможното смесване на пакети. Приложенията, които изискват гарантирано предаване на данни, използват TCP протокола.

UDP обикновено се използва в applications като стрийминг на видео и игри, където загубата на пакети се толерира и повторният опит е труден or неоправдан, or в applications за отговор на предизвикателство (като DNS заявки), където установяването на връзка отнема повече ресурси от повторното изпращане.

И TCP, и UDP използват номер, наречен порт, за да дефинират протокола на горния слой.