Спасибо за видео о важности понимания сетевых протоколов и транспортных соединений, а также за подробное объяснение работы сокетов и прикладных протоколов. Я долго работал в сфере обслуживания и решил перейти в IT. Рассматривал разные курсы, но выбрал Skypro, потому что там есть наставники, которые помогают на протяжении всего обучения. Теперь работаю удаленно и доволен своим решением.
Послушал, было интересно. Таких тем немного. Нехватает подробных разборов в глубину. Было бы интересно послушать про безопаность и практические примеры, например как получить к нему доступ извне, что говорилось в этом видео про "хакнуть" сканером
Ну да ну да, сеть это база😂 Мы тут все пишем сервера и клиенты каждый день на сырых сокетах) Тогда бы уж было интересно узнать о типовых проблемах и приемах при работе с сетью.
Классное видео. Добавлю немного душноты JDBC - Java Database Connectivity стандарт для взаимодействия только jvm языков (Java, Kotlin, Scala ...) c БД. У вругих языков будет немного другое название протокола, например ODBC.
Не плохо было бы ещё объяснить , что есть Web сокеты которые можно рассматривать как протокол прикладного уровня или же обёртку над сокетами TCP и сокеты транспортного уровня как интерфейс передачи данных на прикладной уровень , и привести пример что Http протокол на более низком уровне работает тоже через сокеты
я бы посоветовал начать разбираться с файловых сокетов, тогда и понимание операционной системы возрастет в несколько раз. а сеть лучше изучать с протоколов l2 и l3, сокеты тут крайне второстепенная абстракция .
Самый лучший способ изучать - пробовать на практике, так у тебя и код останется и получишь реальные знания и понимание. Придумай себе задачу и приступай к реализации
@@konstantin.kozlovskiy но все же, наверное, должна быть системность? Чтобы все освоенные знания, а конкретно здесь про сети, были уложены по полочкам и в конечном счете иметь общую целостную картинку. Кажется, разрозненные знания тоже не самый лучший вариант
@@DmitrySorokin-cx7yz с одной стороны да, с другой стороны знаний в мире столько, что никаких полочек не хватит, поэтому в первую очередь нужно изучать то, что тебе непосредственно нужно, а если оно действительно окажется полезно, то постепенно и общая картина придет)
Самое сложное в сокетах это с умным лицом снимать дубли 5.5 часов, чтобы потом 17-минутное видео каши сделать на склейках. Результат видео: +0 очков навыков у новичков, но зато -20 к самооценке (лицо то вон умное какое, а главное умное и молодое одновременно, а у меня вот не очень...). Выражаюсь метриками манчкина.
Сокет это также и слот для процессора на материнской плате), а если говорить про Unix сокеты, то это не совсем файл, точнее в никсах вообще почти все элементы файловой системы это файлы. Для сокетов некоторых видов создаются специальные файлы, а по сути тут больше касается файловых дескрипторов
Когда говорят, что в юниксе всё есть файл - это не совсем правда. Файл - это в первую очередь кусочек памяти на жёстком диске, которые можно найти с помощью пути в файловой системе. И создатели юникса в своё время зацепились за идею, что вот этот путь в файловой системе - это универсальный идентификатор, через иерархию вложенных объектов можно описать что угодно: от буквально файлов до периферийных устройств и сокетов. В конце концов, запись в файл - это отправка упорядоченного набора байтов. И отправка команд на устройство - это тоже упорядоченный поток байтов. И отправка данных по сети - та же отправка байтов. Да, на физическом уровне это может быть устроено очень по-разному, но легко сводится в один интерфейс. Дальше, сокеты. Сокет - это заимствованное без перевода слово (хотя я когда-то встречал учебник, где написано про «работу с гнёздами», и ещё больше запутался, потому что представил птичьи гнёзда 😅). Слово socket переводится как розетка, гнездо, разъём. То есть, что-то, куда втыкается провод, чтобы появилось подключение. Если взять современный телевизор и посмотреть на него сзади - там как раз будет набор сокетов (разъёмов). Каждый своего типа, а если их несколько одинаковых - они пронумерованы. И в разъём одного типа без молотка не получится вставить штекер другого типа. Так вот, сокет в системном программировании - это метафора такого физического разъёма. Когда запускается сервер, он просит у системы: выдели мне разъём вот такого типа с таким-то адресом («порядковым номером»), и система выделяет его, если она умеет работать с таким типом, и такой адрес для такого типа ещё не занят. А когда клиент пытается подключиться к сокету, он просит систему подключиться к такому-то типу сокета с таким-то адресом, и система пытается это сделать по мере сил, например, отправляет запрос в сеть. Кстати, именно из-за клиента сервер всегда должен явно указать адрес нового сокета (и это иногда приводит к ошибкам биндинга, мол, порт уже занят), потому что клиент не может подключиться к какому-нибудь сокету, ему нужно точно знать адрес. Соответственно, сокеты бывают разных типов. В видео упомянуты TCP и UPD, если вы знакомы с юниксами, возможно, слышали про UNIX-сокет. Плюс есть ещё несколько более экзотических. У разных типов сокетов разные способы адресации. UNIX-сокеты используют для этого путь в файловой системе, то есть, по такому сокету приложения могут общаться только в рамках одного компьютера. А TCP и UPD используют пару IP адрес и порт. IP адрес обычно назначается провайдером или роутером, а порт - это просто число от 1 до 65536. По большому счёту, номер порта может быть произвольным, но есть стандартный список, по которому номер порта можно предположить из названия протокола (например, по умолчанию HTTPS - это 443).
тут игра слов. На самом деле socket это абстракция в си, которая описывает разные типы сокетов) и создает универсальный интерфейс для разных типов каналов.
Начало бодрит.. "Ну сокет и сокет, что такое сокет, я долгое время не мог понять, что такое сокет". На самом деле это должен был быть шортс, где автор говорит следующую фразу "Кто на плюсах пишет - boost asio, остальным соболезную. " ибо сынок, нехуй тебе к сокетам лезть, если ты не зарюхал, как асинхронное io работает
пулл соединений - это за гранью понимания. если http соединение после ответа сервера клиенту сразу закрывается сервером, о каком пуле соединений на стороне сервера можно говорить?
Соединение закрывается не всегда. Вот небольшая вырезка из статьи в интернете: HTTP 1.1 вводит еще одно понятие по умолчанию, которое называется keep-alive. keep-alive означает, что соединение TCP, по которому ходит HTTP, не закрывается. Причем по умолчанию так должны себя вести все веб-сервера.
тему не раскрыл. Такое ощущени - прочитал рускоязычное вики. Протоколы - это лишь способы взаимодействия через эти сокеты. А сокет по существу это файловый дескриптор на чтение и запись. Способ взаимодействия с этим особая тема!
на каком языке практикуешь? гугли "simple socket server " примеров очень много а самый простейший сокет сервер можно поднять командой nc -nlvp (утилита netcat)
Дядя! Между TCP и HTTP - есть еще несколько слоев! Граждане!Б такое чувство что этот НАЧАЛЬНИк держит нас тут за дураков. А вообще как он стал исполнительным директором по разработке?! Ну неужели через постель?
Хотел послушать про сокетам, а послушал по сетям вроде. Ни о протоколе толком ничего, ни как с ним работать, хотя бы вебсокеты для примера. Короче какой то кликбейт )
Я непонял. а где же слои OSI , сначала надо про слои и потом уже идти дальше! про сокеты он рассказывать начал, айпи и порт и вот и готов сокет, с английского сокет это розетка, куда надо подключить свой штепсель, все! Пользуйся ! нет тут 17 минут все накидано (
Абсолютно верно про наглядность. Но я б добавил слово "пока". Автор, не унывай, ты молодец. Но ПОКА это не тянет на преподавание. Инфографику, примеры, абстрактные аналогии, что там ещё? в общем объяснить эту тему надо лучше, много чего затронуто, но в красивую картину не складывается
Человек, который говорит о парсинге, а среди интернет обучателей таковых очень много, априори занимается или занимался фактическим "воровством" чужого контента. Есть и другое назначение, но к сожалению его применяют гораздо реже.
Очень толковое и краткое видео. Без воды. У автора талант.
Спасибо за видео о важности понимания сетевых протоколов и транспортных соединений, а также за подробное объяснение работы сокетов и прикладных протоколов. Я долго работал в сфере обслуживания и решил перейти в IT. Рассматривал разные курсы, но выбрал Skypro, потому что там есть наставники, которые помогают на протяжении всего обучения. Теперь работаю удаленно и доволен своим решением.
Я тысячный подписчик, теперь ты тысячник ютубер) Ура!
Спасибо:)) поздравляю и тебя))
Послушал, было интересно. Таких тем немного. Нехватает подробных разборов в глубину. Было бы интересно послушать про безопаность и практические примеры, например как получить к нему доступ извне, что говорилось в этом видео про "хакнуть" сканером
Спасибо за понятные простые объяснения
Сокет поднимается на прослушку какого-то порта...
Все, что нужно знать про разработку Газпромбанка.
Спасибо за видео, Константин
Ну да ну да, сеть это база😂 Мы тут все пишем сервера и клиенты каждый день на сырых сокетах) Тогда бы уж было интересно узнать о типовых проблемах и приемах при работе с сетью.
В след раз музыку можно чуть потише. А так видео на уровне, так держать спасибо!
Братик ты хорош реально
Отличное объяснение для чайников ))))
Спасибо! Подписался!
Спасибо, золотой человек. Наконец-то я понял, что такое "сокет".
За познания в киберсеке респект
хороший видос, успехов в ведении канала)
Классное видео. Добавлю немного душноты JDBC - Java Database Connectivity стандарт для взаимодействия только jvm языков (Java, Kotlin, Scala ...) c БД. У вругих языков будет немного другое название протокола, например ODBC.
Согласен, хорошее замечание )
Джава головного мозга
Спасибо, для меня было полезно.
Отличное видео! Как раз собираюсь делать свой пет проект, было очень актуально!
иди на онлифанс. там больше заработаешь. нахер тебе тот пет проект
Не плохо было бы ещё объяснить , что есть Web сокеты которые можно рассматривать как протокол прикладного уровня или же обёртку над сокетами TCP и сокеты транспортного уровня как интерфейс передачи данных на прикладной уровень , и привести пример что Http протокол на более низком уровне работает тоже через сокеты
я бы посоветовал начать разбираться с файловых сокетов, тогда и понимание операционной системы возрастет в несколько раз. а сеть лучше изучать с протоколов l2 и l3, сокеты тут крайне второстепенная абстракция .
Несколько раз услышал фразу "я не знаю". Это нужно исправлять. Иначе, зачем слушать человека, которой не знает.
Так щас у вас модно "янезнайкать" вместо классики "к примеру"
книга по теории игр на фоне хорошая кстати, тоже лежит дома, тема крайне интересная
Хорошо объяснил! Жму руку. Но очень часто фокус на авторе меняется, глаз дергаться начал
Помнится когда то лет 5-6 назад попались уроки Евгения Волосатова там создавались на Java сокет серверы , рекомендую для практики
Респект за видео!
Было бы вообще супер, если ты порекомендовал бы литературу для изучения сетей, сокетов и пр.
Самый лучший способ изучать - пробовать на практике, так у тебя и код останется и получишь реальные знания и понимание. Придумай себе задачу и приступай к реализации
@@konstantin.kozlovskiy но все же, наверное, должна быть системность? Чтобы все освоенные знания, а конкретно здесь про сети, были уложены по полочкам и в конечном счете иметь общую целостную картинку. Кажется, разрозненные знания тоже не самый лучший вариант
@@DmitrySorokin-cx7yz с одной стороны да, с другой стороны знаний в мире столько, что никаких полочек не хватит, поэтому в первую очередь нужно изучать то, что тебе непосредственно нужно, а если оно действительно окажется полезно, то постепенно и общая картина придет)
Самое сложное в сокетах это с умным лицом снимать дубли 5.5 часов, чтобы потом 17-минутное видео каши сделать на склейках. Результат видео: +0 очков навыков у новичков, но зато -20 к самооценке (лицо то вон умное какое, а главное умное и молодое одновременно, а у меня вот не очень...). Выражаюсь метриками манчкина.
Спасибо что посмотрели)
Ваш комментарий - бред. Незнание новичковых терминов ставит вас на уровень кухарки, а не программиста
@@tirex8954 каких терминов?)
Типичное видео обо всем и ни о чем. Лучше бы конкретно про абстракцию сокета поговорил
Дружище JDBC это все таки драйвер, а не протокол, и отличается от подхода обмена данных для веб
Классный ролик, было бы здорово если бы вы добавили тайм-коды
Добавил
Я так и не понял. Заголовок "сеть и сокеты", а весь рассказ про OSI model. В Linux socket это вообще файлы.
Сокет это также и слот для процессора на материнской плате), а если говорить про Unix сокеты, то это не совсем файл, точнее в никсах вообще почти все элементы файловой системы это файлы. Для сокетов некоторых видов создаются специальные файлы, а по сути тут больше касается файловых дескрипторов
+1, мы вроде собрались TCP / UNIX сокеты потрогать, а нам про ОСИ рассказывают
Когда говорят, что в юниксе всё есть файл - это не совсем правда. Файл - это в первую очередь кусочек памяти на жёстком диске, которые можно найти с помощью пути в файловой системе. И создатели юникса в своё время зацепились за идею, что вот этот путь в файловой системе - это универсальный идентификатор, через иерархию вложенных объектов можно описать что угодно: от буквально файлов до периферийных устройств и сокетов. В конце концов, запись в файл - это отправка упорядоченного набора байтов. И отправка команд на устройство - это тоже упорядоченный поток байтов. И отправка данных по сети - та же отправка байтов. Да, на физическом уровне это может быть устроено очень по-разному, но легко сводится в один интерфейс.
Дальше, сокеты. Сокет - это заимствованное без перевода слово (хотя я когда-то встречал учебник, где написано про «работу с гнёздами», и ещё больше запутался, потому что представил птичьи гнёзда 😅). Слово socket переводится как розетка, гнездо, разъём. То есть, что-то, куда втыкается провод, чтобы появилось подключение. Если взять современный телевизор и посмотреть на него сзади - там как раз будет набор сокетов (разъёмов). Каждый своего типа, а если их несколько одинаковых - они пронумерованы. И в разъём одного типа без молотка не получится вставить штекер другого типа.
Так вот, сокет в системном программировании - это метафора такого физического разъёма. Когда запускается сервер, он просит у системы: выдели мне разъём вот такого типа с таким-то адресом («порядковым номером»), и система выделяет его, если она умеет работать с таким типом, и такой адрес для такого типа ещё не занят. А когда клиент пытается подключиться к сокету, он просит систему подключиться к такому-то типу сокета с таким-то адресом, и система пытается это сделать по мере сил, например, отправляет запрос в сеть. Кстати, именно из-за клиента сервер всегда должен явно указать адрес нового сокета (и это иногда приводит к ошибкам биндинга, мол, порт уже занят), потому что клиент не может подключиться к какому-нибудь сокету, ему нужно точно знать адрес.
Соответственно, сокеты бывают разных типов. В видео упомянуты TCP и UPD, если вы знакомы с юниксами, возможно, слышали про UNIX-сокет. Плюс есть ещё несколько более экзотических. У разных типов сокетов разные способы адресации. UNIX-сокеты используют для этого путь в файловой системе, то есть, по такому сокету приложения могут общаться только в рамках одного компьютера. А TCP и UPD используют пару IP адрес и порт. IP адрес обычно назначается провайдером или роутером, а порт - это просто число от 1 до 65536. По большому счёту, номер порта может быть произвольным, но есть стандартный список, по которому номер порта можно предположить из названия протокола (например, по умолчанию HTTPS - это 443).
Супер спасибо! База!
Ахуенна,, братан. Спасибо за разжёвку
Взрывные котята
Спасибо за видео!
А на каком языке вы писали сокеты и как изучали протоколы?
Заранее спасибо.
Я начинал с C#, сейчас в приоритете Kotlin, протоколы изучал постепенно, на протяжении многих лет, когда сталкивался с ними на практике
Судя по видосу , на русском 😂😂😂😂
Сокет это совершенно конкретное понятие в unix-like системах а не какое не абстрактное :)
тут игра слов. На самом деле socket это абстракция в си, которая описывает разные типы сокетов) и создает универсальный интерфейс для разных типов каналов.
Нормальная тема.Спасибо
Лучшее объяснение из всех что я видел 🎉
где заказать такую сеточку на микрофон?)
На яндекс маркете)
Спойлер - в конце концов он объяснил что такое сокеты в 17:15
Начало бодрит.. "Ну сокет и сокет, что такое сокет, я долгое время не мог понять, что такое сокет". На самом деле это должен был быть шортс, где автор говорит следующую фразу "Кто на плюсах пишет - boost asio, остальным соболезную. " ибо сынок, нехуй тебе к сокетам лезть, если ты не зарюхал, как асинхронное io работает
пулл соединений - это за гранью понимания. если http соединение после ответа сервера клиенту сразу закрывается сервером, о каком пуле соединений на стороне сервера можно говорить?
Соединение закрывается не всегда. Вот небольшая вырезка из статьи в интернете: HTTP 1.1 вводит еще одно понятие по умолчанию, которое называется keep-alive. keep-alive означает, что соединение TCP, по которому ходит HTTP, не закрывается. Причем по умолчанию так должны себя вести все веб-сервера.
Как нарисовать сову. Берем карандаш, бререм листок бумаги, рисуем сову...
да, но теперь ты знаешь, что для рисования совы нужен листок бумаги и карандаши :P
@@konstantin.kozlovskiy ну следуя этой логике я скоро стану инженером NASA, потому что я знаю, что что бы построить ракету нужен метал и завод. 😉
Кажется для того чтобы стать Nasa инженером нужно чуть больше знаний))
тему не раскрыл. Такое ощущени - прочитал рускоязычное вики.
Протоколы - это лишь способы взаимодействия через эти сокеты.
А сокет по существу это файловый дескриптор на чтение и запись. Способ взаимодействия с этим особая тема!
Как пишутся Серверы на сокетах ?? ))) И расскажи про API и gRPC
на каком языке практикуешь? гугли "simple socket server " примеров очень много
а самый простейший сокет сервер можно поднять командой nc -nlvp (утилита netcat)
Golang начал изучать и везде слышу про Websocket
Это другое!@@aleksanderpeshkin2266
@@aleksanderpeshkin2266 websocket это вообще про другое
💪
Я разработчик - я хочу писать код, а не вот это вот все 😅😅
просто код писать это кодер а не разработчик )
Дядя! Между TCP и HTTP - есть еще несколько слоев! Граждане!Б такое чувство что этот НАЧАЛЬНИк держит нас тут за дураков. А вообще как он стал исполнительным директором по разработке?! Ну неужели через постель?
Через постель пытался, не взяли))
Да ну? А может база - таки база дaннblх ?
Back-end Dev != Network Engineer
Ты крутой !
Директор!
В заголовке - сокеты. В ролике кроме того, что это абстракция больше них*я, и поток воды
всё остальное понимание будет облЕгчено ... ты случайно в огранах не работал? ;)
Вроде не работал)
Очень сложно подаётся информация
Скорее всего ты еще слабовата для этой информации
Манчкин апокалипсис топ, рекомендую
Так сложно объяснял простейшие и базовая в построении сетей как IP адрес и порт. Socket - это сочетание IP адреса и порта. И всё!
Оу, как-то вдруг картинка проявилась, спасибо)
[ˈsɒkɪt] -- сокит
Таненбаум - Компьютерные сети...
Это теперь бакенд? юю да нет до бакенда это далеко...
Спасибо, но тема сокета не раскрыта.
так и не понял что такое сокеты))
Абстрактное понятие, отражающее комбинацию из адреса и порта, к которым можно подключиться (сетевой сокет)
зашёл услышать что такое сокеты
А он про протоколы 😂😂😂. Видать чел так и не разобрался что такое сокеты!
Хотел послушать про сокетам, а послушал по сетям вроде. Ни о протоколе толком ничего, ни как с ним работать, хотя бы вебсокеты для примера. Короче какой то кликбейт )
WebSocket это протокол поверх TCP, конкретно про этот протокол я ничего не рассказывал, но сокеты это не только WebSocket)
Про сокет не понятно (
задай вопрос, попробую ответить :)
Если кратко, то сокет это ip адрес + его порт, как пример: 127.0.0.1:8000 --- это сокетом будет называться
пара ip адрес + порт называется сокетом, вот и все
JDBC это не протокол
Если быть идеально точным, то это платформенно независимый промышленный стандарт взаимодействия Java приложений с различными СУБД
За видео респект, но вот ради интереса, челику на вид дай бог 28 лет, а он исполнительный директор по разработке, раскрой рецепт)
я почти все свободное время занимаюсь программированием и изучением технологий, уже вошло в привычку, постоянно прокачиваться, простого рецепта нет)
Видео называется сокеты и сеть, и собственно где сокеты? Где по большому счету сеть? Перечислить протоколы и? Автор не зачёт.
Я непонял. а где же слои OSI , сначала надо про слои и потом уже идти дальше! про сокеты он рассказывать начал, айпи и порт и вот и готов сокет, с английского сокет это розетка, куда надо подключить свой штепсель, все! Пользуйся ! нет тут 17 минут все накидано (
Чел, невозможно смотреть. Зачем приближать отдалять каждый кадр
что то айтишников развелось.плюнуть некуда
Куда ж без них
Ну да, нормально такиобиснил
Ничего не ясно
Мужик, тебе не стоит заниматься преподаванием. Размахивание руками не тянет на наглядность.
Это тебе не стоит заниматься разработкой
@@Batyrbala обиженка🤣
Проходи мимо умник, тебе не стоит прокачивать свою голову 😂
Аргументы будут? Или просто так буквы пишете?😁
Абсолютно верно про наглядность. Но я б добавил слово "пока". Автор, не унывай, ты молодец. Но ПОКА это не тянет на преподавание. Инфографику, примеры, абстрактные аналогии, что там ещё? в общем объяснить эту тему надо лучше, много чего затронуто, но в красивую картину не складывается
Ты объясняешь людям что такое сокет при этом используешь не понятные им слова как распарить. Ты не одыкват???
вроде "одыкват"...)
Зачем он машет руками?
Человек, который говорит о парсинге, а среди интернет обучателей таковых очень много, априори занимается или занимался фактическим "воровством" чужого контента. Есть и другое назначение, но к сожалению его применяют гораздо реже.
Нда , такое ощущение что просто заученный текст , каша однако
про тисипи и удп - читает ( ну ппц. невыучил! переделать !
слабенько, очень слабенко
И где вас таких головастых выращивают...