Smiluk

Пользователь

Регистрация: 20.08.2016

Сообщения: 3306

Рейтинг: 1309

Нарушения: 100

Smiluk

Регистрация: 20.08.2016

Сообщения: 3306

Рейтинг: 1309

Нарушения: 100

В общем я правильно понимаю, что есть tcp и udp на которых работает весь интернет, и тот же http, http2 это реализация передачи через, тот же tcp, как и grpc и websoket тоже работают по tcp.

То есть по сути всё это тупо tcp, или не так?

Объясните простым языком, я уже задолбался про все это читать сложные вещи.

sourcream

Пользователь

Регистрация: 09.04.2016

Сообщения: 587

Рейтинг: 469

sourcream

Регистрация: 09.04.2016

Сообщения: 587

Рейтинг: 469

tcp и udp это транспортные, которые отвечают за установку, поддержание и разрыв самого соединения между тобой и сервером, а http - прикладной протокол, который уже отвечает за передачу информации сайта тебе на капутер

то есть условно вот ты встречаешь друга на улице, вы здороваетесь - это tcp

потом вы начинаете обмениваться новостями - http

при этом транспортные протоколы никуда не делись, и если ты завтыкал на тянучку то он тебя спрашивает чел ты тут ваще или как

если достаточно долго не отвечаешь то уходит

если отвечаешь то дальше обмениваетесь

потом ты ему говоришь ну давай бывай, он отвечает на созвончике - снова tcp

ну эт совсем просто если


YoshkinKot

Пользователь

Регистрация: 20.06.2016

Сообщения: 15488

Рейтинг: 6113

YoshkinKot

Регистрация: 20.06.2016

Сообщения: 15488

Рейтинг: 6113

это transport layer протокольчики


их на самом деле раньше было побольше

там например винда раньше имела свой SPX, а условный Plan 9 имел InternetLink который типа TCP вид с боку


из шизо протоколов, которые не поверх UDP/TCP сейчас можно встретить только разве что STCP (2000 год), DCCP (2006 год),либо что-то крайне экспериментальное


потому что если появляется новый какой-то протокол доставочек (для битторента условно), то он обычно делается поверх текущих 4-х (в основном двух даже) у конкретного приложения или семейства приложений и всё


http ваще другой уровень

он не про доставку

Zacateca

Пользователь

Регистрация: 22.12.2017

Сообщения: 34321

Рейтинг: 13372

Zacateca

Регистрация: 22.12.2017

Сообщения: 34321

Рейтинг: 13372

ЗнаюанекдотпроUDP, но не факт, что он до тебя дойдет... А еще знаю анекдот про TCP. Если он до тебя не дойдет, я повторю его снова.


Как-то так

по-колхозному слои с верхнего вниз:

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

2) транспортный: транспорт-перевозчик с письмами

3) сетевой: адрес назначения письма и адрес отправителя

4) связь: вид транспорта с письмами (поезд, самолёт, голуби)

MTL

Пользователь

Регистрация: 26.11.2013

Сообщения: 11192

Рейтинг: 3338

MTL

Регистрация: 26.11.2013

Сообщения: 11192

Рейтинг: 3338

Чтобы вопросов не возникало, читай эталонную модель OSI. Сверху вниз от физического до прикладного.

TCP, IP, ARP и т.д. - это лишь реализации, а сокеты и прочее - это абстракции для того, чтобы не вникать в реализации сетевого соединения машин между собой.

YoshkinKot

Пользователь

Регистрация: 20.06.2016

Сообщения: 15488

Рейтинг: 6113

YoshkinKot

Регистрация: 20.06.2016

Сообщения: 15488

Рейтинг: 6113

MTL сказал(а):

Чтобы вопросов не возникало, читай эталонную модель OSI. Сверху вниз от физического до прикладного.

TCP, IP, ARP и т.д. - это лишь реализации, а сокеты и прочее - это абстракции для того, чтобы не вникать в реализации сетевого соединения машин между собой.

Нажмите, чтобы раскрыть...

ну по факту OSI у нас нет

у нас TCP/IP (надо читать китайским методом, как иероглиф: да, это название модели, по-дурацки получилось, но что поделать)


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


но если даже не http, он всё таки пытается быть stateless, то всё равно много другой дичи есть)


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


а TCP/IP плевать на всё это, у них сразу с транспорта заканчивается дальнейшая иерархия и все считается прикладными протоколами

MTL

Пользователь

Регистрация: 26.11.2013

Сообщения: 11192

Рейтинг: 3338

MTL

Регистрация: 26.11.2013

Сообщения: 11192

Рейтинг: 3338

YoshkinKot сказал(а):

ну по факту OSI у нас нет

у нас TCP/IP (надо читать китайским методом, как иероглиф: это название модели, по-дурацки получилось, но что поделать)


потому что http это давно монстр, который всякие там соединения гарантирует непрерывные


что по-хорошему в модели OSI должны реализовывать два разных протокола


а TCP/IP плевать на всё это, у них сразу с транспорта заканчивается дальнейшая иерархия и все считается прикладными протоколами

Нажмите, чтобы раскрыть...

OSI нет, но сама модель хорошо описывает как, что и где работает. Всё равно TCP/IP работает по принципу OSI, просто тут париться не стали и нижние уровни объединили в один - транспортный, где за каждым протоколом или приложением закрепляется порт. От этого много проблем и дырявость данного стэка, но это уже не совсем по теме.

BjornTightHonor

Пользователь

Регистрация: 19.05.2020

Сообщения: 1370

Рейтинг: 600

BjornTightHonor

Регистрация: 19.05.2020

Сообщения: 1370

Рейтинг: 600

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

Smiluk сказал(а):

То есть по сути всё это тупо tcp, или не так?

Нажмите, чтобы раскрыть...

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

Также не стоит забывать, что TCP\UDP работают поверх канальных протоколов, из которых доминирующее положение в мире занимают Ethernet и WiFi, у которых также разное отношение к пакетам.

Пакеты протоколов инкапсулируются в хедеры друг друга, словно матрешки или, лучшее сравнение, конверты. Один конверт (канальный уровень) несет информацию о MAC-адресе и раскрывается на ближайшей станции - коммутаторе, после чего содержимое (сетевой уровень) перепакуется в новый конверт такого же уровня. Содержимое же будет раскрыто на маршрутизаторе, а содержимое содержимого (транспортный уровень) - в сетевом стеке операционной системы получателя. Все остальное уже раскрывается либо в самой ОС, либо в приложении.

Когда дело доходит до сайтов, HTTPS действует только после прохождения SSL\TLS. А еще чтобы правильно запаковать конвертики канального и сетевого уровня, твой сетевой стек сначала будет посылать запросы по протоколу DNS.

Давай лучше определимся с конкретными вопросами.

Smiluk

Пользователь

Регистрация: 20.08.2016

Сообщения: 3306

Рейтинг: 1309

Нарушения: 100

Smiluk

Регистрация: 20.08.2016

Сообщения: 3306

Рейтинг: 1309

Нарушения: 100

BjornTightHonor сказал(а):

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

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

Также не стоит забывать, что TCP\UDP работают поверх канальных протоколов, из которых доминирующее положение в мире занимают Ethernet и WiFi, у которых также разное отношение к пакетам.

Пакеты протоколов инкапсулируются в хедеры друг друга, словно матрешки или, лучшее сравнение, конверты. Один конверт (канальный уровень) несет информацию о MAC-адресе и раскрывается на ближайшей станции - коммутаторе, после чего содержимое (сетевой уровень) перепакуется в новый конверт такого же уровня. Содержимое же будет раскрыто на маршрутизаторе, а содержимое содержимого (транспортный уровень) - в сетевом стеке операционной системы получателя. Все остальное уже раскрывается либо в самой ОС, либо в приложении.

Когда дело доходит до сайтов, HTTPS действует только после прохождения SSL\TLS. А еще чтобы правильно запаковать конвертики канального и сетевого уровня, твой сетевой стек сначала будет посылать запросы по протоколу DNS.

Давай лучше определимся с конкретными вопросами.

Нажмите, чтобы раскрыть...

grpc, websoket и т.д. - самые высокие уровени абстракции на основании http.

Http - само по себе просто текстовая разметка, то есть в каком виде будет передаваться информация.

tcp - транспорт, который по кускам передает инфу получателю, а тот еë собирает (откуда он знает как собирать кстати?), для стабильности ждёт подтверждения доставки каждого куска.

Udp - примерно то же самое, только не ждёт подтверждения.

Ip, dns - то что позволяет в сети найти получателя.

Верно говорю или не так?

А вот как tcp соотносится с езернетом не очень понял? Если http - разметка, а tcp - транспорт, вроде логично, то tcp-езернет не очень понятно.

Ну и вообще если можешь опиши полный цикл доставки например http запроса, интересно было бы.

Понятно что открывается tcp соединение и по нему передаётся инфа, но кроме этого.

BjornTightHonor

Пользователь

Регистрация: 19.05.2020

Сообщения: 1370

Рейтинг: 600

BjornTightHonor

Регистрация: 19.05.2020

Сообщения: 1370

Рейтинг: 600

Smiluk сказал(а):

grpc, websoket и т.д. - самые высокие уровени абстракции на основании http.

Http - само по себе просто текстовая разметка, то есть в каком виде будет передаваться информация.

tcp - транспорт, который по кускам передает инфу получателю, а тот еë собирает (откуда он знает как собирать кстати?), для стабильности ждёт подтверждения доставки каждого куска.

Udp - примерно то же самое, только не ждёт подтверждения.

Ip, dns - то что позволяет в сети найти получателя.

Верно говорю или не так?

А вот как tcp соотносится с езернетом не очень понял? Если http - разметка, а tcp - транспорт, вроде логично, то tcp-езернет не очень понятно.

Ну и вообще если можешь опиши полный цикл доставки например http запроса, интересно было бы.

Понятно что открывается tcp соединение и по нему передаётся инфа, но кроме этого.

Нажмите, чтобы раскрыть...

За вебсокет и грпс не скажу.

Http ты путаешь с html, это не разметка, а протокол передачи гипертекстовой информации, т.е. с веб-сайтов. Ассоциативно можно запомнить, чтобы не путать, с https, ибо какое отношение secured имеет к разметке, а также по ML в HTML - markup language (язык разметки).

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

IP позволяет получателя идентифицировать на сетевом уровне, т.к. MAC-адреса в подсети не объединишь и у них вообще свое назначение (некоторые биты из MAC-адреса используются для определения вендора, например).

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

Полный цикл лень расписывать, можешь загуглить, таких примеров много описывается.

Smiluk

Пользователь

Регистрация: 20.08.2016

Сообщения: 3306

Рейтинг: 1309

Нарушения: 100

Smiluk

Регистрация: 20.08.2016

Сообщения: 3306

Рейтинг: 1309

Нарушения: 100

BjornTightHonor сказал(а):

За вебсокет и грпс не скажу.

Http ты путаешь с html, это не разметка, а протокол передачи гипертекстовой информации, т.е. с веб-сайтов. Ассоциативно можно запомнить, чтобы не путать, с https, ибо какое отношение secured имеет к разметке, а также по ML в HTML - markup language (язык разметки).

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

IP позволяет получателя идентифицировать на сетевом уровне, т.к. MAC-адреса в подсети не объединишь и у них вообще свое назначение (некоторые биты из MAC-адреса используются для определения вендора, например).

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

Полный цикл лень расписывать, можешь загуглить, таких примеров много описывается.

Нажмите, чтобы раскрыть...

Я не путаю http и html, я имею в виду что http по сути также если не разметка, то какой-то протокол, который говорит о том, в каком виде должна передаваться информация, т.е просто еë представление так сказать, чтобы она была упорядочена определённым образом

ke1evra

Пользователь

Регистрация: 25.12.2012

Сообщения: 1437

Рейтинг: 1296

ke1evra

Регистрация: 25.12.2012

Сообщения: 1437

Рейтинг: 1296

img
Smiluk сказал(а):

В общем я правильно понимаю, что есть tcp и udp на которых работает весь интернет, и тот же http, http2 это реализация передачи через, тот же tcp, как и grpc и websoket тоже работают по tcp.

То есть по сути всё это тупо tcp, или не так?

Объясните простым языком, я уже задолбался про все это читать сложные вещи.

Нажмите, чтобы раскрыть...

да, так и есть. на транспортном уровне всё делится исключительно на tcp (с гарантией доставки) и udp (без гарантии доставки)

всё остальное это надстройки. к примеру гугл решил вые*****ся выделиться и сделать свой протокол QUIC, который не рыба не мясо, т.е. он вроде как UDP, но гарантирует шифрование и доставку, как TCP, и в то же время быстрее (по заявлениям гугл), чем TCP.


а факт остаётся фактом - когда твой трафик прослушивают, его делят исключительно на TCP и UDP. третьего не дано

E1ektr0(2)

Пользователь

Регистрация: 21.07.2014

Сообщения: 10

Рейтинг: 1

E1ektr0(2)

Регистрация: 21.07.2014

Сообщения: 10

Рейтинг: 1

90% интернета, на tcp, потому что udp не поддерживается браузером.
tcp работает медленней udp, потому, udp используют иногда в онлайн играх иногда на стриминге. Всё.


Smiluk сказал(а):

Я не путаю http и html, я имею в виду что http по сути также если не разметка, то какой-то протокол, который говорит о том, в каком виде должна передаваться информация, т.е просто еë представление так сказать, чтобы она была упорядочена определённым образом

Нажмите, чтобы раскрыть...

в этот протокол входят такие вещи как рукопожатие, подтверждение получения и прочее.

YoshkinKot

Пользователь

Регистрация: 20.06.2016

Сообщения: 15488

Рейтинг: 6113

YoshkinKot

Регистрация: 20.06.2016

Сообщения: 15488

Рейтинг: 6113

ke1evra сказал(а):

да, так и есть. на транспортном уровне всё делится исключительно на tcp (с гарантией доставки) и udp (без гарантии доставки)

всё остальное это надстройки. к примеру гугл решил вые*****ся выделиться и сделать свой протокол QUIC, который не рыба не мясо, т.е. он вроде как UDP, но гарантирует шифрование и доставку, как TCP, и в то же время быстрее (по заявлениям гугл), чем TCP.


а факт остаётся фактом - когда твой трафик прослушивают, его делят исключительно на TCP и UDP. третьего не дано

Нажмите, чтобы раскрыть...

что значит третьего не дано?


есть вот например протокол SCTP, который чаще всего конечно для итогового пользователя заворачивается в формате UDP, но только потому, что многие роутеры не понимают SCTP


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


* ну и да, TCP не энфорсит шифрование

QUIC вроде как — да

ke1evra

Пользователь

Регистрация: 25.12.2012

Сообщения: 1437

Рейтинг: 1296

ke1evra

Регистрация: 25.12.2012

Сообщения: 1437

Рейтинг: 1296

img
YoshkinKot сказал(а):

что значит третьего не дано?


есть вот например протокол SCTP, который чаще всего конечно для итогового пользователя заворачивается в формате UDP, но только потому, что многие роутеры не понимают SCTP


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


* ну и да, TCP не энфорсит шифрование

QUIC вроде как — да

Нажмите, чтобы раскрыть...

sctp нативно и линукс понимает уже 20 лет, только на практике это не используется. найди фаервол, в котором можно прописать правило для sctp. +все dpi системы делят пакеты только на tcp и udp (и даже в мобильных сетях)

YoshkinKot

Пользователь

Регистрация: 20.06.2016

Сообщения: 15488

Рейтинг: 6113

YoshkinKot

Регистрация: 20.06.2016

Сообщения: 15488

Рейтинг: 6113

ke1evra сказал(а):

sctp нативно и линукс понимает уже 20 лет, только на практике это не используется. найди фаервол, в котором можно прописать правило для sctp. +все dpi системы делят пакеты только на tcp и udp (и даже в мобильных сетях)

Нажмите, чтобы раскрыть...

firewalld?


чо значит не используется

я в кишки туда не лазил, но вроде WebRTC, не?


там проблема не в поддержке осей, а в коробках посередине через которые изначально в домашнюю/whatever сеть приходит пакетик

ke1evra

Пользователь

Регистрация: 25.12.2012

Сообщения: 1437

Рейтинг: 1296

ke1evra

Регистрация: 25.12.2012

Сообщения: 1437

Рейтинг: 1296

img
YoshkinKot сказал(а):

firewalld?

Нажмите, чтобы раскрыть...

АХАХАХАХАХА

ладно, я всё


YoshkinKot сказал(а):

я в кишки туда не лазил, но вроде WebRTC, не?

Нажмите, чтобы раскрыть...

ты уже себя в гроб загоняешь, прекращай

YoshkinKot

Пользователь

Регистрация: 20.06.2016

Сообщения: 15488

Рейтинг: 6113

YoshkinKot

Регистрация: 20.06.2016

Сообщения: 15488

Рейтинг: 6113

ke1evra сказал(а):

АХАХАХАХАХА

ладно, я всё


ты уже себя в гроб загоняешь, прекращай

Нажмите, чтобы раскрыть...

ну дак расскажи, что не так jokerge.png?1684055109

ну ладно, завтра расскажешь)

BjornTightHonor

Пользователь

Регистрация: 19.05.2020

Сообщения: 1370

Рейтинг: 600

BjornTightHonor

Регистрация: 19.05.2020

Сообщения: 1370

Рейтинг: 600

Вам обоим что-то не так. Удивительно, в провайдере на 2 линии проработал два года, оказывается я не понимаю сети.

YoshkinKot

Пользователь

Регистрация: 20.06.2016

Сообщения: 15488

Рейтинг: 6113

YoshkinKot

Регистрация: 20.06.2016

Сообщения: 15488

Рейтинг: 6113

BjornTightHonor сказал(а):

Вам обоим что-то не так. Удивительно, в провайдере на 2 линии проработал два года, оказывается я не понимаю сети.

Нажмите, чтобы раскрыть...

да не, мне все так

я просто не справился с управлениемroflanLico.png


котик должен был прилететь двумя сообщениями ниже (сейчас на месте)


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

потому что я не специалист

я ни дня в жизни не проработал


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