Я Читал таненбаума по сетям, смотрел курсы от стенфорда, и всякие пафосные ролики на утюбе о сетях и протоколах, но так и не усвоил( практики нет).
Можете подсказать, как вообще эффективнее всего изучить сети?
Я в принципе знаком с OSI моделью, знаю различие протоколов, и вообще, как устроен интернет, но мне нужно что-то более практичное, например, знать как и где эти протоколы использовать, как вообще писать сетевые приложения, хотя бы самые примитивные.
У меня даже толку нет разобраться, как чат, который идеально отрабатывает на моем локальном сервере, можно развернуть в глобальной сети.
TCP/IP Illustrated, Volume 1: The Protocols, 2nd Edition
W. Richard Stevens, Kevin R. Fall
May 05, 2012
Я в принципе знаком с OSI моделью, знаю различие протоколов, и вообще, как устроен интернет, но мне нужно что-то более практичное, например, знать как и где эти протоколы использовать, как вообще писать сетевые приложения, хотя бы самые примитивные.
1. Забыть про модель OSI: реальная сеть TCP/IP не вписывается в модель OSI ... точнее, модель OSI не соответствует реальной сети TCP/IP.
2. Изучать сеть только в Linux, про Windows забыть как страшный сон!
3. Установить VirtualBox + насоздавать виртуальных машин и из них строить сеть (как здесь советовали).
4. Сетевое программирование в Linux.
Можете подсказать, как вообще эффективнее всего изучить сети?
Уже отвечал на подобный вопрос. Но могу кое-что дополнить.
Арендуйте VPS за долларов 5-10, или бесплатно (amazon). Установите на нем любой TCP-сервис, веб-сервер, например, или echo. Подсоединитесь к сервису при помощи netcat. Попробуйте взаимодействовать с свервисом (слать символы через nc). Запишите трафик взаимодействия на сервере и на клиенте, изучите различия, а они будут, в случае использования NAT. Изучите вывод traceroute 'ip-адрес вашего сервера'. Каждому хопу соотнесите номер AS. Для каждой AS проверьте маршруты до вашего сервера и до вашего домашнего провайдера через looking glass. Постройте граф связей AS (bgp.he.net в помощь).
В процессе у вас возникнет множество специфичных вопросов, которые дадут вам направление для дальнейших исследований.
не прокатывает.Там инфа для сис админов, а не для программистов.
Мне нужно понимание того, как сокеты работают, как их создавать, как передаются пакеты, размеры этих пакетов, какой протокол выбирать для конкретных случаев, как, что, где в общем.Нужна какая-то практика.Я писал чат по урокам, и не понимал этих вещей.Вот именно поэтому и решил сюда обратиться.
Думаю тут даже ничего покупать не надо, качаете образы всяких linux систем или freebsd, настраиваете виртуальные машины, настраиваете их взаимодействие между собой и развлекаетесь как хотите, для уменьшения нагрузки на комп. можно освоить Vagrant, чтобы работать с системами только через терминал.
Изучайте радиотехнику
потом модель OSI
потом стандарты ieee и rfc
модель OSI это стандарт взаимодействия пример разные люди создают сетевое оборудование которые никогда не пересекались чтоб ихнее оборудование было совместимо между собой и придумали стандарты стандарты эти разрабатывают в IEEE Институт инженеров электротехники и электроники международная некоммерческая ассоциация специалистов в области техники, мировой лидер в области разработки стандартов по радиоэлектроник
и RFC стандарты документ из серии пронумерованных информационных документов Интернета, содержащих технические спецификации и стандарты, широко применяемые
Вот видо уроки вебинары лутьше них я нечего не встречал там все от А до Я