= Модель TCP/IP =
Модель TCP/IP — сетевая модель передачи данных, представленных в цифровом виде.
Модель TCP/CIP:
* фактический (de facto) стандарт на основе стека протоколов TCP/CP;
* модель описывает, как нужно строить сети на основе разных технологий, чтобы в них работал стек TCP/IP.
{{devops/tcpip/pic_levels.png|Уровни модели TCP/IP}}
== Транспортный уровень ==
Транспортный уровень передает данные между '''процессами''' на хостах.
Транспортный уроень обеспечивает надежность передачи данных.
Адрес на транспортном уровне - это число от 1 до 65535. Адрес называется ''портом''.
Типы портов:
* хорошо известные порты: 1-1024
* зарегистрированные порты: 1024-49151
* динаические порты: 49151-65535
Протоколы:
. '''TCP''' - Tansmission Control Protocol ("протокол управления передачей") - используется для надежной передачи потока байт.
. '''UDP''' - User Datagram Protocol ("протокол датаграмм пользователя") - используется для быстрой негарантированной доставки данных. Протокол ''DNS'' использует ''UDP'', порт 53.
== Сетевой уровень ==
Сетевой уровнь (network layer) - объединяет сети, построенные на основе различных технологий: Ethernet, WiFi, 5G/4G/3G, MPLS, ATM, TokenRing и другие.
Идею сетевого уровня, как объединяющего, предложили ''Винтон Серф'' и ''Роберт Кан'' (''отцы интернета'').
Потребность в сетевом уровне: технологии канального уровня различны и плохо масштабируются.
Задачи сетевого уровня:
* объединение сетей (internetworking);
* маршрутизация;
* обеспечение качества обслуживания.
Оборудование, которое работает на сетевом уровне, - это ''маршрутизатор''.
''Маршрутизация'' - поиск маршрута доставки пакета между сетями через транзитные узлы - ''маршрутизаторы''.
Протоколы сетевого уровня:
* '''IP''' - Internet Protocol (''межсетевой протокол'') - используется для передачи данных по сети;
* '''ICMP''' - Internet Control Message Protocol (''протокол межсетевых управляющих сообщений'') - используется для управления сетью;
* '''ARP''' - Address Resolution Protocol (''протокол определения адреса'') - используется для определения адреса канального уровня по адресу сетевого уровня;
* '''DHCP''' - Dynamic Host Configuration Protocol (''протокол динамической настройки хостов'') - используется для динамического назначения IP адресов узлам. Это клиент-серверный протокол, где клиентом выступаем компьютер в сети, а серверов - сервер DHCP. Процесс получения IP-адреса: ''Discover'', ''Offer'' IP-адрес, ''Request'' IP-адрес, ''ACK'' IP-адрес (''DORA'').