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

OSI модел

от Уикипедия, свободната енциклопедия

OSI (на английски: Open Systems Interconnection Basic Reference Model) е теоретичен модел, описващ принципния начин на комуникация и строежа на телекомуникационните и компютърните мрежи. Като главна градивна единица са използвани така наречените слоеве – всеки слой предоставя интерфейс и услуги към по-горния слой, като в същото време получава услуги от слоя под него.

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

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

През 1982 г. Международната организация по стандартизация (ISO) в сътрудничество с ITU-T започва нов проект в областта на мрежовите технологии, наречен взаимодействие на отворени системи, на английски: Open Systems Interconnection или OSI.

Преди това мрежовите технологии са били изцяло частна собственост (собственически софтуер, на английски: proprietary software), основан на предимно щатски корпоративни стандарти като SNA, Decnet и XNS. OSI представлява опит за създаване на мрежови стандарти, осигуряващи оперативна съвместимост на устройствата и решенията, предоставени от различни доставчици. Дотогава много от големите мрежи са принудени да поддържат по няколко протокола за взаимодействие и включват голям брой устройства, които не могат да комуникират с устройства от други производители поради липсата на общи протоколи.

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

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

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

Процесът на предаване и приемане на информация между източника и приемника се осъществява по строго определени правила, наречени протокол. Протоколът представлява сбор от правила, определящи форма̀та на данните и начина на предаване и приемане за съответния слой (за транспортирането се грижат протоколите от по-долните нива, с изключение на каналното ниво, където транспорт трудно може да се дефинира). Обикновено протоколът не засяга повече от един или два слоя на OSI модела, т.е. предназначен е за комуникация вътре в слоя или между съседни слоеве. Това позволява оперативна съвместимост и преносимост на протоколите в различни преносни среди (допустими са различни реализации на по-долните слоеве). Свързването на протоколи от различни слоеве става с помощта на предварително дефинирани интерфейси, като всеки по-долен слой ограничава и определя възможностите за предаване на информация на по-горните. По време на този процес протоколите от всеки слой си разменят специфична информация/данни, наречени PDU (Protocol Data Unit)

Слой OSI протоколи TCP/IP протоколи Сигнализация №7[1] AppleTalk IPX SNA UMTS Примери
# Име
7 Приложен слой FTAM, X.400, X.500, DAP, ROSE, RTSE, ACSE[2] CMIP[3] NNTP, SIP, SSI, DNS, FTP, Gopher, HTTP, NFS, NTP, DHCP, SMPP, SMTP, SNMP, Telnet, RIP, BGP INAP, MAP, TCAP, ISUP, TUP AFP, ZIP, RTMP, NBP RIP, SAP APPC HL7, Modbus
6 Представителен слой ISO/IEC 8823, X.226, ISO/IEC 9576-1, X.236 MIME, SSL, TLS, XDR AFP TDI, ASCII, EBCDIC, MIDI, MPEG
5 Сесиен слой ISO/IEC 8327, X.225, ISO/IEC 9548-1, X.235 Създаване на сесия в TCP, RTP ASP, ADSP, PAP NWLink DLC FIFO, NetBIOS, SAP, Полудуплекс, Пълен дуплекс, Симплекс, RPC, SOCKS
4 Транспортен слой ISO/IEC 8073, TP0, TP1, TP2, TP3, TP4 (X.224), ISO/IEC 8602, X.234 TCP, UDP, SCTP, DCCP DDP, SPX NBF
3 Мрежов слой ISO/IEC 8208, X.25 (PLP), ISO/IEC 8878, X.223, ISO/IEC 8473-1, CLNP X.233. IP, IPsec, ICMP, IGMP, OSPF SCCP, MTP ATP (TokenTalk или EtherTalk) IPX RRC, PDCP и BMC NBF, Q.931, IS-IS
2 Канален слой ISO/IEC 7666, X.25 (LAPB), Token Bus, X.222, ISO/IEC 8802-2 LLC тип 1 и 2[4] PPP, SBTV SLIP, PPTP MTP, Q.710 LocalTalk, AppleTalk Remote Access, PPP IEEE 802.3 framing, Ethernet II framing SDLC LLC, MAC 802.3 (Ethernet), 802.11a/b/g/n MAC/LLC, 802.1Q (VLAN), ATM, HDP, FDDI, Fibre Channel, Frame Relay, HDLC, ISL, PPP, Q.921, Token Ring, CDP, NDP, ARP, ITU-T G.hn DLL, CRC, Bit stuffing, ARQ, DOCSIS
1 Физически слой X.25 (X.21bis, EIA/TIA-232, EIA/TIA-449, EIA-530, G.703)[4] MTP, Q.710 RS-232, RS-422, STP, PhoneNet Twinax UMTS Physical layer or L1 RS-232, Full duplex, RJ45, V.35, V.34, I.430, I.431, T1, E1, 10BASE-T, 100BASE-TX, POTS, SONET, SDH, DSL, 802.11a/b/g/n PHY, ITU-T G.hn PHY, Controller Area Network, DOCSIS

Приложният слой (на английски: Application layer) е най-горният слой от OSI модела, който се отнася за приложения (програми) като интернет браузъри, мениджъри за отдалечено управление, клиенти за обмен на съобщения, HTTP, FTP, DNS сървъри и др. Този слой позволява на потребителските приложения да заявяват услуги или информация, а на сървър приложенията – да се регистрират и предоставят услуги в мрежата.

Някои от основните услуги, които се регистрират на приложния слой са електронна поща (e-mail), достъп до Web, файлови и принтерни услуги (приложения с мрежови услуги) и др. Някои от по-важните протоколи, функциониращи на този слой, са FTP, TFTP, DNS, HTTP, SMTP, Telnet и др.

Представителен слой

[редактиране | редактиране на кода]

Представителният слой (на английски: Presentation layer) се грижи за представяне на данните във вид, разбираем за получателя, като осигурява общия им формат за различни платформи. Извършва конвертиране и „превеждане“ на данните, компресиране/декомпресиране, както и криптиране/декриптиране на информацията. Към протоколите, отнасящи се към представителния слой, спадат XDR, NFS и др.

Сесийният слой (на английски: Session layer) управлява създаването (и съответно прекъсването) на сесиите (диалога) между представителните слоеве на две (или повече) системи. Контролира и диалога между две приложения на различни сървъри и управлява потоците от данни посредством точки на синхронизация (checkpoints). Това включва поставянето на маркери в потока от данни. При некоректно предаване на информацията или при прекратяване на връзката в мрежата, данните трябва да бъдат предадени само в частта им след последния коректно предаден маркер.

Ефективността на управление на потока зависи от комуникационния режим – пълен дуплекс или полу-дуплекс (при първия вид и двете станции могат да „говорят“ едновременно, докато при полу-дуплекса в даден момент данни може да предава само едната страна). Типичен протокол, функциониращ в този слой, е NetBIOS.

Транспортният слой (на английски: Transport layer) осигурява комуникация от край до край (end-to-end) между процеси, изпълнявани на различни сървъри. Предоставя на по-горните слоеве услуги с или без установяване на връзка (connection-oriented или connectionless), в зависимост от застъпените протоколи. Слоят използва адресите на клиентските и сървърните портове, за да идентифицира различните процеси. Извършва сегментиране на данните, подадени му от сесийния слой, с цел правилното им подреждане от получателя, като определя пореден номер за всеки сегмент. Протоколи, отнасящи се към транспортния слой, са TCP и UDP (първият – осигуряващ надеждност, а вторият – бързина при трансфера на данните).

Мрежовият слой (на английски: Network layer) има за основна цел да задава логически адреси на източника и местоназначението, както и да определя най-добрия път за маршрутизиране на данните. За постигане на възможно най-добра маршрутизация устройствата от мрежовия слой (маршрутизаторите) използват превключване на пакети (packet switching), което накратко се състои в това, че четейки адреса на логическото местоназначение, получен от един интерфейс, маршрутизаторът изпраща трафика (пакетите) чрез друг интерфейс към местоназначението. Протоколи, работещи на този слой, са IP, IPsec, ICMP, IGMP, OSPF и др.

Каналният слой (на английски: DataLink layer) има за цел да предава и да приема кадри (на английски: frames), а също така отговаря за тяхното физическо адресиране. Преди предаването на всеки пакет тук се прибавят глава (хедър) – в началото – и ремарке (трейлър) – в края, превръщайки го по този начин в кадър. Хедъри към данните прибавят и мрежовият и транспортният слоеве, но трейлърът се добавя само на ниво Data-link. Каналният слой се разделя на два подслоя, LLC и MAC, като първия добавя още контролна информация, служеща за правилното транспортиране на данните, а вторият осигурява достъп до преносната среда (медията). Някои от основните характеристики на слоя са контрол на достъпа до преносната среда, добавяне на хардуерни (MAC) адреси на източника и местоназначението, подготвяне на пакетите за предаване (чрез капсулирането им в кадри, описано по-горе), изчисляване на контролната сума на кадъра (FCS), както и кодирането на електрическите, светлинните или електромагнитните импулси в преносната среда. При предаване на данни изпращащите устройства изпълняват алгоритъм за циклична проверка с остатък (CRC) или контрол на последователността на данните (FCS), като записват получената стойност в трейлъра на кадъра. Станцията-получател изпълнява същия алгоритъм и сверява стойностите, като по тази начин се установява дали кадърът се е повредил по време на преноса. Към този слой се отнасят протоколи като Frame Relay, ISDN, HDLC, PPP и др.

Физическият слой (на английски: Physical layer) е най-долният слой от модела и работи само с единици и нули (битове), изграждащи кадъра. Основната му функция е да предава битове по комуникационна линия. Битовете са кодирани като физически състояния на преносната среда. При жичните кабели това са електрически сигнали, при оптичните влакна – светлинни импулси, а при безжичните връзки – електромагнитни вълни. В този слой имат значение електрическите и механичните характеристики, които определят представянето и формирането на сигналите. Към този слой има спецификации за отделните типове преносна среда и конектори, като форма, структура и състав.

  1. ITU-T Recommendation Q.1400 (03/1993), Architecture framework for the development of signaling and OA&M protocols using OSI concepts, pp. 4, 7.
  2. ITU Rec. X.227 (ISO 8650), X.217 (ISO 8649)
  3. X.700 series of recommendations from the ITU-T (in particular X.711), and ISO 9596
  4. а б CISCO Cisco Systems, Inc. Internetworking Technology Handbook OSI Model Physical layer