Поясните по сетям
177
20
В общем я правильно понимаю, что есть tcp и udp на которых работает весь интернет, и тот же http, http2 это реализация передачи через, тот же tcp, как и grpc и websoket тоже работают по tcp.
То есть по сути всё это тупо tcp, или не так?
Объясните простым языком, я уже задолбался про все это читать сложные вещи.
tcp и udp это транспортные, которые отвечают за установку, поддержание и разрыв самого соединения между тобой и сервером, а http - прикладной протокол, который уже отвечает за передачу информации сайта тебе на капутер
то есть условно вот ты встречаешь друга на улице, вы здороваетесь - это tcp
потом вы начинаете обмениваться новостями - http
при этом транспортные протоколы никуда не делись, и если ты завтыкал на тянучку то он тебя спрашивает чел ты тут ваще или как
если достаточно долго не отвечаешь то уходит
если отвечаешь то дальше обмениваетесь
потом ты ему говоришь ну давай бывай, он отвечает на созвончике - снова tcp
ну эт совсем просто если
это transport layer протокольчики
их на самом деле раньше было побольше
там например винда раньше имела свой SPX, а условный Plan 9 имел InternetLink который типа TCP вид с боку
из шизо протоколов, которые не поверх UDP/TCP сейчас можно встретить только разве что STCP (2000 год), DCCP (2006 год),либо что-то крайне экспериментальное
потому что если появляется новый какой-то протокол доставочек (для битторента условно), то он обычно делается поверх текущих 4-х (в основном двух даже) у конкретного приложения или семейства приложений и всё
http ваще другой уровень
он не про доставку
ЗнаюанекдотпроUDP, но не факт, что он до тебя дойдет... А еще знаю анекдот про TCP. Если он до тебя не дойдет, я повторю его снова.
Как-то так
Спойлерпо-колхозному слои с верхнего вниз:
1) прикладной: письма на разных языках которые ты кому-то отправляешь
2) транспортный: транспорт-перевозчик с письмами
3) сетевой: адрес назначения письма и адрес отправителя
4) связь: вид транспорта с письмами (поезд, самолёт, голуби)
Чтобы вопросов не возникало, читай эталонную модель OSI. Сверху вниз от физического до прикладного.
TCP, IP, ARP и т.д. - это лишь реализации, а сокеты и прочее - это абстракции для того, чтобы не вникать в реализации сетевого соединения машин между собой.
MTL сказал(а):↑Чтобы вопросов не возникало, читай эталонную модель OSI. Сверху вниз от физического до прикладного.
TCP, IP, ARP и т.д. - это лишь реализации, а сокеты и прочее - это абстракции для того, чтобы не вникать в реализации сетевого соединения машин между собой.
Нажмите, чтобы раскрыть...ну по факту OSI у нас нет
у нас TCP/IP (надо читать китайским методом, как иероглиф: да, это название модели, по-дурацки получилось, но что поделать)
потому что http это давно монстр, который всякие там сеансы гарантировать может и даже про кодирование что-то умеет рассказывать (ну, могу быть не прав, надо перечитать, я что-то засомневался, но что-то какой-то дичи в http не первой, а последующих версий, напихали
но если даже не http, он всё таки пытается быть stateless, то всё равно много другой дичи есть)
что по-хорошему в модели OSI должны реализовывать три разных протокола на трех разных уровнях
а TCP/IP плевать на всё это, у них сразу с транспорта заканчивается дальнейшая иерархия и все считается прикладными протоколами
YoshkinKot сказал(а):↑ну по факту OSI у нас нет
у нас TCP/IP (надо читать китайским методом, как иероглиф: это название модели, по-дурацки получилось, но что поделать)
потому что http это давно монстр, который всякие там соединения гарантирует непрерывные
что по-хорошему в модели OSI должны реализовывать два разных протокола
а TCP/IP плевать на всё это, у них сразу с транспорта заканчивается дальнейшая иерархия и все считается прикладными протоколами
Нажмите, чтобы раскрыть...OSI нет, но сама модель хорошо описывает как, что и где работает. Всё равно TCP/IP работает по принципу OSI, просто тут париться не стали и нижние уровни объединили в один - транспортный, где за каждым протоколом или приложением закрепляется порт. От этого много проблем и дырявость данного стэка, но это уже не совсем по теме.
Ох, ну ты и вопрос задал. На него можно ответить коротко, и тогда ты сможешь пройти собес. Но если тебя действительно интересует, как работает интернет, то эта тема гораздо глубже.
Smiluk сказал(а):↑То есть по сути всё это тупо tcp, или не так?
Нажмите, чтобы раскрыть...Подавляющее большинство. UDP как правило используется при трансляции данных в режиме реального времени, когда искажение данных ввиду потери пакета несущественно сказывается на воспринимаемой информации, но при этом важна своевременная доставка - телефония и стриминг видео. Некоторые мультиплеерные игры используют UDP для отдельных транзакций. RDP частично использует UDP, и в рамках решения проблемы разрывов эту опцию можно отключать.
Также не стоит забывать, что TCP\UDP работают поверх канальных протоколов, из которых доминирующее положение в мире занимают Ethernet и WiFi, у которых также разное отношение к пакетам.
Пакеты протоколов инкапсулируются в хедеры друг друга, словно матрешки или, лучшее сравнение, конверты. Один конверт (канальный уровень) несет информацию о MAC-адресе и раскрывается на ближайшей станции - коммутаторе, после чего содержимое (сетевой уровень) перепакуется в новый конверт такого же уровня. Содержимое же будет раскрыто на маршрутизаторе, а содержимое содержимого (транспортный уровень) - в сетевом стеке операционной системы получателя. Все остальное уже раскрывается либо в самой ОС, либо в приложении.
Когда дело доходит до сайтов, HTTPS действует только после прохождения SSL\TLS. А еще чтобы правильно запаковать конвертики канального и сетевого уровня, твой сетевой стек сначала будет посылать запросы по протоколу DNS.
Давай лучше определимся с конкретными вопросами.
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 соединение и по нему передаётся инфа, но кроме этого.
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 - это канальный уровень, грубо говоря как должны идти пакеты между сетевыми интерфейсами. Поверх него уже строится все остальное.
Полный цикл лень расписывать, можешь загуглить, таких примеров много описывается.
BjornTightHonor сказал(а):↑За вебсокет и грпс не скажу.
Http ты путаешь с html, это не разметка, а протокол передачи гипертекстовой информации, т.е. с веб-сайтов. Ассоциативно можно запомнить, чтобы не путать, с https, ибо какое отношение secured имеет к разметке, а также по ML в HTML - markup language (язык разметки).
TCP маркирует в заголовках конечный бит пакета, таким образом на принимающей стороне разберутся, каким по счету его ставить. Для стабильности есть TCP-окно, которое постоянно сдвигается, если первые пакеты в нем дошли.
IP позволяет получателя идентифицировать на сетевом уровне, т.к. MAC-адреса в подсети не объединишь и у них вообще свое назначение (некоторые биты из MAC-адреса используются для определения вендора, например).
Ethernet - это канальный уровень, грубо говоря как должны идти пакеты между сетевыми интерфейсами. Поверх него уже строится все остальное.
Полный цикл лень расписывать, можешь загуглить, таких примеров много описывается.
Нажмите, чтобы раскрыть...Я не путаю http и html, я имею в виду что http по сути также если не разметка, то какой-то протокол, который говорит о том, в каком виде должна передаваться информация, т.е просто еë представление так сказать, чтобы она была упорядочена определённым образом
Smiluk сказал(а):↑В общем я правильно понимаю, что есть tcp и udp на которых работает весь интернет, и тот же http, http2 это реализация передачи через, тот же tcp, как и grpc и websoket тоже работают по tcp.
То есть по сути всё это тупо tcp, или не так?
Объясните простым языком, я уже задолбался про все это читать сложные вещи.
Нажмите, чтобы раскрыть...да, так и есть. на транспортном уровне всё делится исключительно на tcp (с гарантией доставки) и udp (без гарантии доставки)
всё остальное это надстройки. к примеру гугл решил вые*****ся выделиться и сделать свой протокол QUIC, который не рыба не мясо, т.е. он вроде как UDP, но гарантирует шифрование и доставку, как TCP, и в то же время быстрее (по заявлениям гугл), чем TCP.
а факт остаётся фактом - когда твой трафик прослушивают, его делят исключительно на TCP и UDP. третьего не дано
90% интернета, на tcp, потому что udp не поддерживается браузером.
tcp работает медленней udp, потому, udp используют иногда в онлайн играх иногда на стриминге. Всё.Smiluk сказал(а):↑Я не путаю http и html, я имею в виду что http по сути также если не разметка, то какой-то протокол, который говорит о том, в каком виде должна передаваться информация, т.е просто еë представление так сказать, чтобы она была упорядочена определённым образом
Нажмите, чтобы раскрыть...в этот протокол входят такие вещи как рукопожатие, подтверждение получения и прочее.
ke1evra сказал(а):↑да, так и есть. на транспортном уровне всё делится исключительно на tcp (с гарантией доставки) и udp (без гарантии доставки)
всё остальное это надстройки. к примеру гугл решил вые*****ся выделиться и сделать свой протокол QUIC, который не рыба не мясо, т.е. он вроде как UDP, но гарантирует шифрование и доставку, как TCP, и в то же время быстрее (по заявлениям гугл), чем TCP.
а факт остаётся фактом - когда твой трафик прослушивают, его делят исключительно на TCP и UDP. третьего не дано
Нажмите, чтобы раскрыть...что значит третьего не дано?
есть вот например протокол SCTP, который чаще всего конечно для итогового пользователя заворачивается в формате UDP, но только потому, что многие роутеры не понимают SCTP
тем не менее есть сети, типа сетей мобильных операторов или всякого говна типа cdn-ок, которые эту дичь нативно понимают
* ну и да, TCP не энфорсит шифрование
QUIC вроде как — да
YoshkinKot сказал(а):↑что значит третьего не дано?
есть вот например протокол SCTP, который чаще всего конечно для итогового пользователя заворачивается в формате UDP, но только потому, что многие роутеры не понимают SCTP
тем не менее есть сети, типа сетей мобильных операторов или всякого говна типа cdn-ок, которые эту дичь нативно понимают
* ну и да, TCP не энфорсит шифрование
QUIC вроде как — да
Нажмите, чтобы раскрыть...sctp нативно и линукс понимает уже 20 лет, только на практике это не используется. найди фаервол, в котором можно прописать правило для sctp. +все dpi системы делят пакеты только на tcp и udp (и даже в мобильных сетях)
ke1evra сказал(а):↑sctp нативно и линукс понимает уже 20 лет, только на практике это не используется. найди фаервол, в котором можно прописать правило для sctp. +все dpi системы делят пакеты только на tcp и udp (и даже в мобильных сетях)
Нажмите, чтобы раскрыть...firewalld?
чо значит не используется
я в кишки туда не лазил, но вроде WebRTC, не?
там проблема не в поддержке осей, а в коробках посередине через которые изначально в домашнюю/whatever сеть приходит пакетик
BjornTightHonor сказал(а):↑Вам обоим что-то не так. Удивительно, в провайдере на 2 линии проработал два года, оказывается я не понимаю сети.
Нажмите, чтобы раскрыть...да не, мне все так
я просто не справился с управлением
котик должен был прилететь двумя сообщениями ниже (сейчас на месте)
ко мне претензии в целом справедливы
потому что я не специалист
я ни дня в жизни не проработал
но чел мне кажется не совсем прав, заявляя категорически, что иного не дано
Тема закрыта
-
ЗаголовокОтветов ПросмотровПоследнее сообщение
-
SinigA 18 Dec 2024 в 15:08Сообщений: 2 18 Dec 2024 в 15:08
Сообщений:2
Просмотров:4
-
Сообщений:14
Просмотров:16
-
Сообщений:9
Просмотров:10
-
Сообщений:4
Просмотров:6
-
Сообщений:34
Просмотров:41
