Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

5ый семестр / 1. Производственная практика / стащил с работы / 62 урок - Технология клиент-сервер

.pdf
Скачиваний:
5
Добавлен:
18.07.2023
Размер:
2.04 Mб
Скачать

ОБОРУДОВАНИЕ

ТЕХНОЛОГИИ

РАЗРАБОТКИ

(HTTP://MYPRACTIC.RU/)

БЛОГ ТЕХНИЧЕСКОЙ ПОДДЕРЖКИ МОИХ РАЗРАБОТОК

ГЛАВНАЯ (HTTP://MYPRACTIC.RU/)

РУБРИКИ (HTTP://MYPRACTIC.RU/RUBRIKI)

 

 

АРДУИНО (HTTP://MYPRACTIC.RU/UROKI-PROGRAMMIROVANIYA-ARDUINO-NAVIGACIYA-PO-UROKAM)

 

STM32 (HTTP://MYPRACTIC.RU/UROKI-STM32)

О САЙТЕ (HTTP://MYPRACTIC.RU/O-SA JTE)

КОНТАКТЫ (

)

КАРТА САЙТА (HTTP://MYPRACTIC.RU/KARTA-SA JTA)

ФОРУМ (HTTP://MYPRACTIC.RU/GOTO/MPFORUMLINK.PHP)

 

ПОДДЕРЖКА (HTTP://MYPRACTIC.RU/FINANSOVAYA-PODDERZHKA-SA JTA )

 

(http://mypractic.ru

 

 

 

 

 

/goto/ArduinoSys.php)

Урок 62. Технология клиент-сервер.

25.02.2018 (HTTP://MYPRACTIC.RU/UROK -62-TEXNOLOGIYA-KLIENT-SERVER .HTML) Автор: ЭДУАРД

(HTTP://MYPRACTIC.RU/ACCOUNT?USER=1)

(http://mypractic.ru/wp-

content/uploads/2017/02/Lesson47_4.png)

В уроке постараюсь коротко и просто рассказать о принципе обмена информацией по

технологии клиент-сервер.

Предыдущий урок (http://mypractic.ru/urok-61-apparatnaya-realizaciya-interfejsa-rs-485-

 

obedinenie-plat-arduino-v-lokalnuyu-set-rs-485.html)

Список уроков (http://mypractic.ru/uroki-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

programmirovaniya-arduino-navigaciya-po-urokam)

Следующий урок (http://mypractic.ru/urok-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

63-lokalnaya-set-ethernet-modul-enc28j60-ego-podklyuchenie-k-plate-arduino.html)

Дальнейшие распределенные вычислительные системы мы будем создавать с

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

В дальнейших уроках я планирую рассказывать о создании информационных сетей с использованием:

контроллеров локальной сети Ethernet;

WiFi модемов;

GSM модемов;

Bluetooth модемов.

(http://mypractic.ru

Катодная/goto/fn1защита .php)

(http://mypractic.ru/category /katodnaya-zashhita)(//freekassa.ru/)

Проекты Ардуино

(http://mypractic.ru/category /proekty-arduino)

Разработки

(http://mypractic.ru/category

/razrabotki)

Умное растениеводство

(http://mypractic.ru/category /umnoe-rastenievodstvo)

Умный дом

(http://mypractic.ru/category /umnyj-dom)

Уроки ESP32 (http://mypractic.ru/category /uroki-esp32)

Уроки STM32 (http://mypractic.ru/category /uroki-stm32)

Уроки Ардуино

(http://mypractic.ru/category /uroki-programmirovaniya- arduino)

Фасовочное оборудование

(http://mypractic.ru/category

/oborudovanie)

Электронные компоненты

(http://mypractic.ru/category /elektronnye-komponenty)

Все эти устройства осуществляют обмен данными, используя модель клиент-сервер. По

происходит передача информации в сети Интернет.

полное освещение этой объемной темы. Я хочу дать минимум

необходимой для понимания последующих уроков.

Технология клиент-сервер.

программы, расположенное на разных компьютерах, в разных других подобных устройствах. Между собой они взаимодействуют через

сеть с помощью сетевых протоколов.

являются поставщиками услуг. Они постоянно ожидают запросы от и предоставляют им свои услуги (передают данные, решают

задачи, управляют чем-либо и т.п.). Сервер должен быть постоянно включен сеть. Каждая программа-сервер, как правило, может выполнять запросы от

-клиентов.

является инициатором запроса, который может произвести в любой от сервера клиент не должен быть постоянно включен. Достаточно

(http://mypractic.ru

подключиться в момент запроса. /goto/ArduinoSys.php)

Итак, в общих чертах система клиент-сервер выглядит так:

, контроллеры Ардуино, планшеты, сотовые телефоны и другие устройства.

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

глобальную сеть, например через интернет.

устройствах установлены программы-серверы. Эти устройства серверами, должны быть постоянно включены, и их задача

запросы от клиентов.

устройствах работают программы-клиенты. Такие устройства называются инициируют запросы серверам. Их включают только в моменты,

когда необходимо обратиться к серверам. (http://mypractic.ru

/goto/fn1.php)

Например, если вы хотите с сотового телефона по WiFi включать утюг, то утюг будет сервером(//freekassa, а телефон.ru/)– клиентом. Утюг должен быть постоянно включен в розетку, а

управляющую программу на телефоне вы будете запускать по необходимости. Если к WiFi

сети утюга подключить компьютер, то вы сможете управлять утюгом и с помощью компьютера. Это будет еще один клиент. WiFi микроволновая печь, добавленная в систему, будет сервером. И так систему можно расширять бесконечно.

Передача данных пакетами.

Технология клиент-сервер в общем случае предназначена для использования с объемными

информационными сетями. От одного абонента до другого данные могут проходить сложный путь по разным физическим каналам и сетям. Путь доставки данных может меняться в зависимости от состояния отдельных элементов сети. Какие-то компоненты сети могут не работать в этот момент, тогда данные пойдут другим путем. Может изменяться время

доставки. Данные могут даже пропасть, не дойти до адресата.

Поэтому простая передача данных в цикле, как мы передавали данные на компьютер в некоторых предыдущих уроках, в сложных сетях совершенно невозможна. Информация передается ограниченными порциями – пакетами. На передающей стороне информация разбивается на пакеты, а на приемной “склеивается” из пакетов в цельные данные. Объем пакетов обычно не больше нескольких килобайт.

Пакет это аналог обычного почтового письма. Он также, кроме информации, должен содержать адрес получателя и адрес отправителя.

Пакет состоит из заголовка и информационной части. Заголовок содержит адреса получателя и отправителя, а также служебную информацию, необходимую для “склейки” пакетов на приемной стороне. Сетевое оборудование использует заголовок для определения, куда передавать пакет.

Свежие записи

Базовое программное обеспечение контроллера автоматизированного выращивания растений

(КАВР). (http://mypractic.ru /bazovoe-programmnoe- obespechenie-kontrollera- avtomatizirovannogo- vyrashhivaniya-rastenij- kavr.html)

Контроллер

автоматизированного выращивания растений (КАВР), как развитие проекта управления гроубоксом. (http://mypractic.ru /kontrolleravtomatizirovannogo- vyrashhivaniya-rastenij-kavr- kak-razvitie-proekta- upravleniyagrouboksom.html)

Урок 34. Работа с контроллером DMA через CMSIS регистры. Практический опыт использования его для передачи данных в порты ввода/вывода. Разработка многоканального генератора импульсов. (http://mypractic.ru/urok-34- rabota-s-kontrollerom-dma- cherez-cmsis-registry- prakticheskij-opyt- ispolzovaniya-ego-dlya- peredachi-dannyx-v-porty- vvodavyvoda-razrabotka- mnogokanalnogo- generatora-impulsov.html)

Еще два варианта программного обеспечения контроллера гроубокса. (http://mypractic.ru/eshhe- dva-varianta-programmnogo- obespecheniya-kontrollera- grouboksa.html)

Урок 33. Прямой доступ к памяти в STM32. Контроллер DMA. (http://mypractic.ru/urok-33- pryamoj-dostup-k-pamyati- v-stm32-kontroller-dma.html)

Популярные записи

Уроки STM32 (http://mypractic.ru/urokistm32)

Уроки программирования Ардуино. (http://mypractic.ru /uroki-programmirovaniya-

Адресация пакетов.

интернете есть много подробной информации. Я хочу рассказать как можно

уроке для передачи данных с использованием клиент-серверной

придется задавать информацию для адресации пакетов. Т.е. информацию,

пакеты данных. В общем случае нам придется задавать следующие

устройства;

;

;

шлюза;

, что это такое.

(http://mypractic.ru

/goto/ArduinoSys.php)

IP-адреса.

-сервер предполагает, что все абоненты всех сетей мира подключены к

сети. На самом деле во многих случаях это так и есть. Например, компьютеров или мобильных устройств подключено к интернету. Поэтому

адресации, рассчитанный на такое громадное количество абонентов. технология клиент-сервер применяется в локальных сетях, все равно

формат адресов, при явной избыточности.

подключения устройства к сети присваивается уникальный номер – IP-адрес Address). IP-адрес присваивается не устройству (компьютеру), а интерфейсу принципе устройства могут иметь несколько точек подключения, а значит

IP-адресов.

IP-адрес это 32х разрядное число или 4 байта. Для наглядности принято записывать его в

(http://mypractic.ru

виде 4 десятичных чисел от 0 до 255, разделенных точками. Например, IP-адрес моего

/goto/fn1.php) сервера 31.31.196.216.

(//freekassa.ru/)

Для того чтобы сетевому оборудованию было проще выстраивать маршрут доставки пакетов

в формат IP-адреса введена логическая адресация. IP-адрес разбит на 2 логических поля: номер сети и номер узла. Размеры этих полей зависят от значения первого (старшего) октета IP-адреса и разбиты на 5 групп – классов. Это так называемый метод классовой маршрутизации.

Класс

Старший

Формат

Начальный

Конечный адрес

Количество

Количество

 

октет

 

адрес

 

сетей

узлов

 

 

(С-сеть,

 

 

 

 

 

 

У-узел)

 

 

 

 

 

 

 

 

 

 

 

A

0

С.У.У.У

0.0.0.0

127.255.255.255

128

16777216

 

 

 

 

 

 

 

B

10

С.С.У.У

128.0.0.0

191.255.255.255

16384

65534

 

 

 

 

 

 

 

C

110

С.С.С.У

192.0.0.0

223.255.255.255

2097152

254

 

 

 

 

 

 

 

D

1110

Групповой

224.0.0.0

239.255.255.255

-

228

 

 

адрес

 

 

 

 

 

 

 

 

 

 

 

E

1111

Резерв

240.0.0.0

255.255.255.255

-

227

Класс A предназначен для применения в больших сетях. Класс B используется в сетях средних размеров. Класс C предназначен для сетей с небольшим числом узлов. Класс D используется

для обращения к группам узлов, а адреса класса E зарезервированы.

Существуют ограничения на выбор IP-адресов. Я посчитал главными для нас следующие:

Адрес 127.0.0.1 называется loopback и используется для тестирования программ в пределах одного устройства. Данные посланы по этому адресу не передаются по сети, а возвращаются программе верхнего уровня, как принятые.

“Серые” адреса – это IP-адреса разрешенные только для устройств, работающих в локальных сетях без выхода в Интернет. Эти адреса никогда не обрабатываются

arduino-navigaciya-po- urokam)

DS18B20 – датчик температуры с интерфейсом 1-Wire. Описание на русском языке. (http://mypractic.ru /ds18b20-datchik- temperatury-s-interfejsom- 1-wire-opisanie-na-russkom- yazyke.html)

Урок 2. Плата

STM32F103C8T6. Загрузка программы во FLASHпамять микроконтроллера через системный бутлоадер. (http://mypractic.ru/urok- 2-plata-stm32f103c8t6- zagruzka-programmy-vo- flash-pamyat- mikrokontrollera-cherez- sistemnyj-butloader.html)

Урок 23. Работа с UART через библиотеку HAL с использованием прерываний. (http://mypractic.ru/urok-23- rabota-s-uart-cherez- biblioteku-hal- s-ispolzovaniem- preryvanij.html)

Архивы

2021 (18) (http://mypractic.ru /2021)

2020 (11) (http://mypractic.ru /2020)

2019 (30) (http://mypractic.ru /2019)

2018 (17) (http://mypractic.ru /2018)

2017 (22) (http://mypractic.ru /2017)

2016 (77) (http://mypractic.ru /2016)

2015 (7) (http://mypractic.ru /2015)

маршрутизаторами. Их используют в локальных сетях.

.0.0.0 – 10.255.255.255

172.16.0.0 – 172.31.255.255

192.168.0.0 – 192.168.255.255

номера сети содержит все 0, то это означает, что узел принадлежит той же и узел, который отправил пакет.

методе маршрутизации число битов адресов сети и узла в IP-адресе задается

классов всего 5, реально используется 3. Поэтому метод классовой

большинстве случаях не позволяет оптимально выбрать размер сети. Что неэкономному использованию пространства IP-адресов.

введен бесклассовый способ маршрутизации, который в данный момент

. Он позволяет гибко, а значит и рационально выбирать требуемое

сети. В этом методе адресации применяются маски подсети переменной

(http://mypractic.ru

длины.

/goto/ArduinoSys.php)

Сетевому узлу присваивается не только IP-адрес, но и маска подсети. Она имеет такой же адрес, 32 бит. Маска подсети и определяет, какая часть IP-адреса относится к

.

подсети соответствует биту IP-адреса в том же разряде. Единица в бите том, что соответствующий бит IP-адреса принадлежит сетевому адресу, а бит

0 определяет принадлежность бита IP-адреса к узлу.

, узел с помощью маски выделяет из своего IP-адреса сетевую часть, адресом назначения, и если они совпадают, то это означает, что приемный узлы находятся в одной сети. Тогда пакет доставляется локально. В

пакет передается через сетевой интерфейс в другую сеть. Подчеркиваю, не является частью пакета. Она влияет только на логику маршрутизации

(http://mypractic.ru

/goto/fn1По сути, маска.php) позволяет одну большую сеть разбить на несколько подсетей. Размер любой

подсети (число IP-адресов) должен быть кратным степени числа 2. Т.е. 4, 8, 16 и т.д. Это

(//freekassa.ru/)

условие определяется тем, что биты полей адресов сети и узлов должны идти подряд. Нельзя

задать, например, 5 битов - адрес сети, затем 8 битов – адрес узла, а затем опять биты адресации сети.

Пример формы записи сети с четырьмя узлами выглядит так:

Сеть 31.34.196.32, маска 255.255.255.252

Маска подсети всегда состоит из подряд идущих единиц (признаков адреса сети) и подряд идущих нулей (признаков адреса узла). Основываясь на этом принципе, существует другой способ записи той же адресной информации.

Сеть 31.34.196.32/30

/30 это число единиц в маске подсети. В данном примере остается два нуля, что соответствует

2 разрядам адреса узла или четырем узлам.

Мне кажется подсчитать нетрудно, но можно использовать простую таблицу.

Размер сети (количество

Длинная маска

Короткая маска

узлов)

 

 

 

 

 

4

255.255.255.252

/30

 

 

 

8

255.255.255.248

/29

 

 

 

16

255.255.255.240

/28

 

 

 

32

255.255.255.224

/27

 

 

 

64

255.255.255.192

/26

 

 

 

128

255.255.255.128

/25

 

 

 

256

255.255.255.0

/24

 

 

 

число первого адреса подсети должно делиться без остатка на размер

последний адреса подсети – служебные, их использовать нельзя.

работать с IP-адресами. Это наборы чисел, а человек привык читать связно написанные буквы, т.е. слова. Для того, чтобы людям было удобнее используется другая система идентификации сетевых устройств.

может быть присвоен буквенный идентификатор, более понятный

называется доменным именем или доменом.

последовательность из двух или более слов, разделенных точками.

это домен первого уровня, предпоследнее – домен второго уровня и т.д.

знают все.

Связь между IP-адресами и доменными именами происходит через распределенную базу

(http://mypractic.ru

/goto/ArduinoSysданных, с использованием.php) DNS-серверов. DNS-сервер должен иметь каждый владелец

домена второго уровня. DNS-серверы объединены в сложную иерархическую структуру и

обмениваться между собой данными о соответствии IP-адресов и доменных имен.

важно. Для нас главное, что любой клиент или сервер может обратиться к -запросом, т.е. с запросом о соответствии IP-адрес – доменное имя или

имя – IP-адрес. Если DNS-сервер обладает информацией о соответствии , то он отвечает. Если не знает, то ищет информацию на других DNS-

этого сообщает клиенту.

аппаратный маршрутизатор или программа для сопряжения сетей с

разными протоколами. В общем случае его задача конвертировать протоколы одного типа

(http://mypractic.ru

сети в протоколы другой сети. Как правило, сети имеют разные физические среды передачи

/goto/fn1.php)

данных.

(//freekassa.ru/)

Пример – локальная сеть из компьютеров, подключенная к Интернету. В пределах своей

локальной сети (подсети) компьютеры связываются без необходимости в каком-либо

промежуточном устройстве. Но как только компьютер должен связаться с другой сетью, например выйти в Интернет, он использует маршрутизатор, который выполняет функции сетевого шлюза.

Роутеры, которые есть у каждого, кто подключен к проводному интернету, являются одним из примеров сетевого шлюза. Сетевой шлюз это точка, через которую обеспечивается выход в Интернет.

В общем случае использование сетевого шлюза выглядит так:

Допустим у нас система из нескольких плат Ардуино, подключенных через локальную сеть Ethernet к маршрутизатору, который в свою очередь подключен к Интернету.

В локальной сети мы используем ”серые” IP-адреса (выше об этом написано), которые не допускают выхода в Интернет. У маршрутизатора два интерфейса: нашей локальной сети с “серым” IP-адресом и интерфейс для подключения к Интернету с ”белым” адресом.

В конфигурации узла мы указываем адрес шлюза, т.е. “белый” IP-адрес интерфейса маршрутизатора, подключенного к Интернету.

Теперь, если маршрутизатор получает от устройства с ”серым” адресом пакет с запросом на получение информации из Интернета, он заменяет в заголовке пакета ”серый” адрес на свой ”белый” и отправляет его в глобальную сеть. Получив из Интернета ответ, он заменяет ”белый” адрес на запомненный при запросе ”серый” и передает пакет локальному устройству.

MAC-адрес.

MAC-адрес это уникальный идентификатор устройств локальной сети. Как правило, он заводе-производителе оборудования в постоянную память устройства.

байтов. Принято записывать его в шестнадцатеричной системе

следующих форматах: c4-0b-cb-8b-c3-3a или c4:0b:cb:8b:c3:3a. Первые три байта идентификатор организации-производителя. Остальные байты называются

” и их значение является уникальным для каждого конкретного

логическим и устанавливается администратором. MAC-адрес – это постоянный адрес. Именно он используется для адресации фреймов, например,

Ethernet. При передаче пакета по определенному IP-адресу компьютер соответствующий MAC-адрес с помощью специальной ARP-таблицы. Если в

данные о MAC-адресе, то компьютер запрашивает его с помощью

протокола. Если MAC-адрес определить не удается, то пакеты этому устройству

.

адреса сетевое оборудование определяет получателя данных. Но на

(http://mypractic.ru

устройстве, например сервере, могут работать несколько приложений. Для того чтобы

/goto/ArduinoSys.php)

определить какому приложению предназначены данные в заголовок добавлено еще одно число – номер порта.

для определения процесса приемника пакета в пределах одного IP-адреса.

выделено 16 бит, что соответствует числам от 0 до 65535. Первые 1024

под стандартные процессы, такие как почта, веб-сайты и т.п. В своих

лучше не использовать.

Статические и динамические IP-адреса. Протокол DHCP.

назначаться вручную. Достаточно утомительная операция для А в случае, когда пользователь не обладает нужными знаниями, задача

(http://mypracticстановится трудноразрешимой.ru . К тому же не все пользователи находятся постоянно /goto/fn1подключенными.php) к сети, а выделенные им статические адреса другие абоненты использовать

не могут. (//freekassa.ru/)

Проблема решается применением динамических IP-адресов. Динамические адреса выдаются клиентам на ограниченное время, пока они непрерывно находятся в сети. Распределение динамических адресов происходит под управлением протокола DHCP.

DHCP – это сетевой протокол, позволяющий устройствам автоматически получать IP-адреса и

другие параметры, необходимые для работы в сети.

На этапе конфигурации устройство-клиент обращается к серверу DHCP, и получает от него необходимые параметры. Может быть задан диапазон адресов, распределяемых среди сетевых устройств.

Просмотр параметров сетевых устройств с помощь командной строки.

Существует много способов, как узнать IP-адрес или MAC-адрес своей сетевой карты. Самый простой – это использовать CMD команды операционной системы. Я покажу, как это делать на примере Windows 7.

В папке Windows\System32 находится файл cmd.exe. Это интерпретатор командной строки. С помощь него можно получать системную информацию и конфигурировать систему.

Открываем окно выполнить. Для этого выполняем меню Пуск -> Выполнить или нажимаем комбинацию клавиш Win + R.

(http://mypractic.ru/wp-

_62_2.png)

нажимаем OK или Enter. Появляется окно интерпретатора команд.

(http://mypractic.ru

/goto/ArduinoSys.php)

ru/wp-content/uploads/2018/02/Lesson_62_3.png)

задавать любые из многочисленных команд. Пока нас интересуют команды для

просмотра конфигурации сетевых устройств. (http://mypractic.ru

/goto/fn1.php)

Прежде всего, это команда ipconfig, которая отображает настройки сетевых плат. (//freekassa.ru/)

(http://mypractic.ru/wp-content/uploads/2018/02/Lesson_62_4.png)

Подробный вариант ipconfig/all.

(http://mypractic.ru

/goto/ArduinoSys.php)

(http://mypractic.ru

/goto/fn1.php)

(//freekassa.ru/)

(http://mypractic.ru/wp-content/uploads/2018/02/Lesson_62_5.png)

Только MAC-адреса показывает команда getmac.

(http://mypractic.ru/wp-content/uploads/2018/02/Lesson_62_6.png)

Таблицу соответствия IP и MAC адресов (ARP таблицу) показывает команда arp –a.

(http://mypractic.ru/wp-content/uploads/2018/02/Lesson_62_7.png)

сетевым устройством можно командой ping.

имя

ru/wp-content/uploads/2018/02/Lesson_62_8.png)

(http://mypractic.ru

Сервер моего сайта отвечает. /goto/ArduinoSys.php)

Основные сетевые протоколы.

о протоколах, необходимых нам в дальнейших уроках.

это набор соглашений, правил, которые определяют обмен данными в реализовывать эти протоколы на низком уровне. Мы намерены

аппаратные и программные модули, которые реализуют сетевые нет необходимости подробно разбирать форматы заголовков, данных и

каждый протокол, чем он отличается от других, когда используется знать

(http://mypractic.ru /goto/fn1Протокол.php)IP.

(//freekassa.ru/)

Inernet Protocol (межсетевой протокол) доставляет пакеты данных от одного сетевого

устройства к другому. IP протокол объединяет локальные сети в единую глобальную сеть,

обеспечивая передачу пакетов информации между любыми устройствами сетей. Из представленных в этом уроке протоколов IP находится на самом низком уровне. Все остальные протоколы используют его.

IP протокол работает без установления соединений. Он просто пытается доставить пакет по

указанному IP-адресу.

IP обрабатывает каждый пакет данных, как отдельную независимую единицу, не связанную с

другими пакетами. Невозможно используя только IP протокол, передать значительный

объем связанных данных. Например, в сетях Ethernet максимальный объем данных одного IP-пакета составляет всего 1500 байт.

В протоколе IP нет механизмов, позволяющих контролировать достоверность конечных

данных. Контрольные коды используются только для защиты целостности данных заголовка.

Т.е. IP не гарантирует, что данные в полученном пакете будут правильными.

Если во время доставки пакета произошла ошибка, и пакет был потерян, то IP не пытается заново послать пакет. Т.е. IP не гарантирует, что пакет будет доставлен.

Коротко о протоколе IP можно сказать, что:

это протокол без установления соединений;

он доставляет небольшие (не более 1500 байт) отдельные пакеты данных между IPадресами;

он не гарантирует, что доставленные данные будут правильными;

он не гарантирует, что данные вообще будут доставлены;

он не сообщит отправителю, были ли доставлены данные и не повторит передачу пакета;

нет упорядоченности пакетов, порядок доставки сообщений не определен.

Protocol (протокол управления передачей) основной протокол передачи

. Он использует способность IP протокола доставлять информацию от

. Но в отличии от IP он:

переносить большие объемы информации. Разделение данных на пакеты ” данных на приемной стороне обеспечивает TCP.

передаются с предварительной установкой соединения.

контроль целостности данных.

данных инициирует повторные запросы потерянных пакетов, дублирование при получении копий одного пакета.

TCP снимает все проблемы доставки данных. Если есть возможность, он их

это основной протокол передачи данных в сетях. Часто используют

TCP/IP сети.

(http://mypractic.ru

/goto/ArduinoSys.php)

Protokol (протокол пользовательских датаграмм) простой протокол для

без установления соединения. Данные отправляются в одном направлении готовности приемника и без подтверждения доставки. Объем данных пакета

кБайт, но на практике многие сети поддерживают размер данных только

этого протокола – простата и высокая скорость передачи. Часто приложениях критичных к скорости доставки данных, таких как видеопотоки.

предпочтительнее потерять несколько пакетов, чем ждать отставшие.

свойственно:

(http://mypractic.ru

это протокол без установления соединений; /goto/fn1.php)

он доставляет небольшие отдельные пакеты данных между IP-адресами; (//freekassa.ru/)

он не гарантирует, что данные вообще будут доставлены;

он не сообщит отправителю, были ли доставлены данные и не повторит передачу пакета;

нет упорядоченности пакетов, порядок доставки сообщений не определен.

Протокол HTTP.

Скорее всего, об этом протоколе в следующих уроках буду писать подробнее. А сейчас коротко скажу, что это протокол передачи гипертекста (Hyper Text Transfer Protocol). Он используется для получения информации с веб-сайтов. При этом веб-браузер выступает в роли клиента, а сетевое устройство в качестве веб-сервера.

В следующем уроке будем применять технологию клиент-сервер на практике, используя сеть

Ethernet.

Предыдущий урок (http://mypractic.ru/urok-61-apparatnaya-realizaciya-interfejsa-rs-485-

 

obedinenie-plat-arduino-v-lokalnuyu-set-rs-485.html)

Список уроков (http://mypractic.ru/uroki-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

programmirovaniya-arduino-navigaciya-po-urokam)

Следующий урок (http://mypractic.ru/urok-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

63-lokalnaya-set-ethernet-modul-enc28j60-ego-podklyuchenie-k-plate-arduino.html)

(http://mypractic.ru/finansovaya-podderzhka-sajta)

Поддержать проект (http://mypractic.ru/finansovaya-podderzhka-sajta)