Как работает интернет провайдер. Общие принципы устройства сети (для совсем новичков)

Добрый день, друзья! В прошлой статье, мы узнали, . Теперь, давайте разберем, как устроен интернет? У большинства людей по данному вопросу ошибочное мнение. Многие люди считают, что интернет – это просто цепь подключенных между собой компьютеров.

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

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

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

Чтобы легче проходить по линиям сети, данные разбиваются специальным протоколом TCP/IP на пакеты нужного объёма. Когда данные пакеты идут к нужному месту, они идут по множеству различных сетей и уровней.

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

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

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

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

Кто поставляет услуги интернета

Предоставляют интернет людям компании поставщики, вроде Internet Service Provide. Таким компаниям принадлежат блоки адресов Internet. Они их предоставляют клиентам. Человек подсоединяет свой ПК к подобному поставщику, его тут же соединяет с сервером.

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

Подобный маршрут происходит с помощью известных путей в Internet и объема трафика на различных частях сегмента. Затем, маршрутизатор отдаёт информацию в нужную точку сети – Network Access Point. Сервисы включают в себя:

  1. Электронную почту посредством серверов SMTP и POP
  2. Услугу идентификации компьютера благодаря IP адресу.
  3. Путь с применением серверов DNS.
  4. Услугу новостной службы благодаря сервирам Usenet.

Как устроен интернет и его IP адрес

Я думаю, многие из вас знают, что такое IP адрес и для чего он нужен. Даже знают собственный IP. Но я всё же сделаю пояснения. Провайдеры дают своим клиентам IP адрес для соединения компьютеров с интернетом. Их ещё называют адреса протокола IP.

IP адрес проводит идентификацию ПК человека в интернете, давая ему возможность получать различные данные из глобальной сети. Я думаю, многие из вас знают, что большая часть пользователей используют протокол IPv4. Но всё больше людей переходят на протокол IPv6.

Как устроен интернет с адресом IPv4

В конце 20 века преобладал протокол IPv4. Данная версия IP даёт адрес вида – XXX.YYY.ZZZ.AAA. Группы символов представляют трехзначную цифру в десятичном формате. Число может быть 8 – битное и формат двоичный.

Он носит название – Десятичное представление с разделительными точками. Группа же называется – октет. Десятичные цифры образуются из двоичных. С двоичными работает система компьютера. К примеру, адрес 106.122.115.102 в десятичном будет выглядеть как 01101010. 01111010. 01110011. 01100110.

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

IP адрес включает в себя адрес узла и сети. Соответственно, адрес сети проводит идентификацию всей сети, а адрес узла – отдельного узла в данной сети: сервер, рабочую станцию или маршрутизатор. Локальную сеть делят на 3 класса: A,B,C. Сетевая часть IP определяет принадлежность сети к её классу.

Как устроен интернет три класса сетей


Класс А занят крупными сетями. Сетевая часть применяет 8 битов, узловая 24 бита IP. У старшего бита первый октет = 0. Далее, идёт комбинация из любых других семи битов. Отсюда, IP А класса имеет диапазон: 001.х.х.х-126.х.х.х. Это даёт возможность появлению 126 сетей или 17000000 узлов.

Класс В даётся среднего размера сетям. Суть начальных октетов находится в пределах 128.х.х.х – 191.254.0.0. что даёт возможность появления 16384 сетей. Любой из подобных сетей может принадлежать 65534 узлов.

Класс С нужен для сетей, число узлов которых довольно мало. Сетевой элемент состоит из первых трех октетов. Адрес же сети – октетом последним. Суть первых 3-х октетов находится в диапазоне 192.х.х.х – 223.254.254.0. Отсюда, к классу С относится около 2000000 сетей. Каждой из данных сетей может принадлежать 254 узлов.

Как устроен интернет с адресом IPv6

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

IPv6, кроме прочего, проверяет подлинность пакета отправителя, и шифрование подобного пакета. Данный протокол поддерживают ОС от Windows 7 до Windows 10 и часть дистрибутивов Linux. IPv6 в последнее время применяют всё больше. Также, мобильные телефоны поддерживают данный протокол, автомобильные компьютеры и прочие устройства.

IPv6 состоит из 8 групп четырехзначных шестнадцатеричных цифр, которые разделены двоеточием: 1045: 0аке: 4df3: 56uy: 0045: ert1: g56j: 0001. Что интересно, группы, где одни нули, могут писаться просто двоеточием, но не более двух двоеточий.

Иногда нули даже отпускаются. URL адрес такого вида обязательно заключается в квадратные скобочки: — http://.

Как устроен интернет подсети

Узлы сети группируются в подсети, их назвали интрасетями. Каждая часть интрасети должна иметь защитный шлюз, выполняющий роль точек для входа и выхода сегмента. Функцию шлюза выполняет прибор, называющийся – маршрутизатором.

Маршрутизатор представляет интеллектуальный прибор, пересылающий информацию получателю. Часть сетей в виде шлюза использует защитный сетевой экран, firewall (брандмауэр).

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

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

Причины создания подсети

  1. Эффективное использование IP адресов. Когда используют 32 битный адрес, получается ограниченное число адресов. На первый взгляд, 126 сетей и 17000000 узлов кажется приличным количеством, но, в глобальном масштабе это не много.
  2. Изоляция различных сегментов сети. К примеру, у сети имеется 1000 ПК. Если не применять сегментацию, информация пройдёт через все 1000 ПК. Можете представить, какую нагрузку в это время испытывает канал связи. Также, все пользователи сети получат доступ и информации всех её участников.
  3. Для повторного использования одного IP. К примеру, если разделить адреса класса С в двух местах подсети, можно дать каждой подсети одну вторую часть адресов сети. Отсюда, две подсети смогут применять один IP класса С.

Для создания подсети, необходима блокировка цифрами части или всех битов данного IP. К примеру, маска, имеющее значение 254 будет блокировать все адреса октета, кроме одного. Значение 255, заблокирует весь октет.

Чтобы создать подсеть класса А, подойдёт маска 255.0.0.0. Класса В – 255.255.0.0. Класса С 255.255.255.0. Чтобы узнать свой IP адрес, достаточно в поисковик ввести «Узнать IP адрес» и вы в течение секунды узнаете свой IP.

Что такое хостинги

Я забыл упомянуть про хостинги, где располагаются сайты, с которых мы получаем большинство информации. Хостинги — это тоже суперкомпьютеры, в которых, как в ячейках, находятся сайты. Хостинги также дают и получают информацию, точнее, это делают сайты и блоги, которые в них находятся. Даже Яндекс с Google находятся в суперкомпьютерах и имеют множество своих серверов по всему миру.

Рекордсмен в этом деле поисковая система Google. У неё по всему миру тысячи своих серверов и все они соединены между собой с помощью оптиковолоконных или просто телефонных линий. Это действительно похоже на гигантскую сеть (или паутину), которая опутала весь мир. Недаром, интернет называют Глобальной сетью! И удивительно, как быстро данная Глобальная сеть распространяется по всему миру!

Я надеюсь, теперь вам понятно, как устроен интернет. Успехов!

  • Tutorial

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


Немного оффтопа: Приблизительно месяц назад сдал экзамен CCNA (на 980/1000 баллов) и осталось много материала за год моей подготовки и обучения. Учился я сначала в академии Cisco около 7 месяцев, а оставшееся время вел конспекты по всем темам, которые были мною изучены. Также консультировал многих ребят в области сетевых технологий и заметил, что многие наступают на одни и те же грабли, в виде пробелов по каким-то ключевым темам. На днях пару ребят попросили меня объяснить, что такое сети и как с ними работать. В связи с этим решил максимально подробно и простым языком описать самые ключевые и важные вещи. Статьи будут полезны новичкам, которые только встали на путь изучения. Но, возможно, и бывалые сисадмины подчеркнут из этого что-то полезное. Так как я буду идти по программе CCNA, это будет очень полезно тем людям, которые готовятся к сдаче. Можете держать статьи в виде шпаргалок и периодически их просматривать. Я во время обучения делал конспекты по книгам и периодически читал их, чтобы освежать знания.

Вообще хочу дать всем начинающим совет. Моей первой серьезной книгой, была книга Олиферов «Компьютерные сети». И мне было очень тяжело читать ее. Не скажу, что все было тяжело. Но моменты, где детально разбиралось, как работает MPLS или Ethernet операторского класса, вводило в ступор. Я читал одну главу по несколько часов и все равно многое оставалось загадкой. Если вы понимаете, что какие то термины никак не хотят лезть в голову, пропустите их и читайте дальше, но ни в коем случае не отбрасывайте книгу полностью. Это не роман или эпос, где важно читать по главам, чтобы понять сюжет. Пройдет время и то, что раньше было непонятным, в итоге станет ясно. Здесь прокачивается «книжный скилл». Каждая следующая книга, читается легче предыдущей книги. К примеру, после прочтения Олиферов «Компьютерные сети», читать Таненбаума «Компьютерные сети» легче в несколько раз и наоборот. Потому что новых понятий встречается меньше. Поэтому мой совет: не бойтесь читать книги. Ваши усилия в будущем принесут плоды. Заканчиваю разглагольствование и приступаю к написанию статьи.

Вот сами темы

1) Основные сетевые термины, сетевая модель OSI и стек протоколов TCP/IP.
2)
3)
4)
5)
6)
7)
8)
9) Маршрутизация: статическая и динамическая на примере RIP, OSPF и EIGRP.
10) Трансляция сетевых адресов: NAT и PAT.
11) Протоколы резервирования первого перехода: FHRP.
12) Безопасность компьютерных сетей и виртуальные частные сети: VPN.
13) Глобальные сети и используемые протоколы: PPP, HDLC, Frame Relay.
14) Введение в IPv6, конфигурация и маршрутизация.
15) Сетевое управление и мониторинг сети.

P.S. Возможно, со временем список дополнится.


Итак, начнем с основных сетевых терминов.

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

1) Оконечные узлы: Устройства, которые передают и/или принимают какие-либо данные. Это могут быть компьютеры, телефоны, сервера, какие-то терминалы или тонкие клиенты, телевизоры.

2) Промежуточные устройства: Это устройства, которые соединяют оконечные узлы между собой. Сюда можно отнести коммутаторы, концентраторы, модемы, маршрутизаторы, точки доступа Wi-Fi.

3) Сетевые среды: Это те среды, в которых происходит непосредственная передача данных. Сюда относятся кабели, сетевые карточки, различного рода коннекторы, воздушная среда передачи. Если это медный кабель, то передача данных осуществляется при помощи электрических сигналов. У оптоволоконных кабелей, при помощи световых импульсов. Ну и у беспроводных устройств, при помощи радиоволн.

Посмотрим все это на картинке:

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

Теперь, на мой взгляд, главный вопрос: Для чего мы используем сети? Ответов на этот вопрос много, но я освещу самые популярные, которые используются в повседневной жизни:

1) Приложения: При помощи приложений отправляем разные данные между устройствами, открываем доступ к общим ресурсам. Это могут быть как консольные приложения, так и приложения с графическим интерфейсом.

2) Сетевые ресурсы: Это сетевые принтеры, которыми, к примеру, пользуются в офисе или сетевые камеры, которые просматривает охрана, находясь в удаленной местности.

3) Хранилище: Используя сервер или рабочую станцию, подключенную к сети, создается хранилище доступное для других. Многие люди выкладывают туда свои файлы, видео, картинки и открывают общий доступ к ним для других пользователей. Пример, который на ходу приходит в голову, - это google диск, яндекс диск и тому подобные сервисы.

4) Резервное копирование: Часто, в крупных компаниях, используют центральный сервер, куда все компьютеры копируют важные файлы для резервной копии. Это нужно для последующего восстановления данных, если оригинал удалился или повредился. Методов копирования огромное количество: с предварительным сжатием, кодированием и так далее.

5) VoIP: Телефония, работающая по протоколу IP. Применяется она сейчас повсеместно, так как проще, дешевле традиционной телефонии и с каждым годом вытесняет ее.

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

1) Загрузчики. Это файловые менеджеры, работающие по протоколу FTP, TFTP. Банальный пример - это скачивание фильма, музыки, картинок с файлообменников или иных источников. К этой категории еще можно отнести резервное копирование, которое автоматически делает сервер каждую ночь. То есть это встроенные или сторонние программы и утилиты, которые выполняют копирование и скачивание. Данный вид приложений не требует прямого человеческого вмешательства. Достаточно указать место, куда сохранить и скачивание само начнется и закончится.

Скорость скачивания зависит от пропускной способности. Для данного типа приложений это не совсем критично. Если, например, файл будет скачиваться не минуту, а 10, то тут только вопрос времени, и на целостности файла это никак не скажется. Сложности могут возникнуть только когда нам надо за пару часов сделать резервную копию системы, а из-за плохого канала и, соответственно, низкой пропускной способности, это занимает несколько дней. Ниже приведены описания самых популярных протоколов данной группы:

FTP- это стандартный протокол передачи данных с установлением соединения. Работает по протоколу TCP (этот протокол в дальнейшем будет подробно рассмотрен). Стандартный номер порта 21. Чаще всего используется для загрузки сайта на веб-хостинг и выгрузки его. Самым популярным приложением, работающим по этому протоколу - это Filezilla. Вот так выглядит само приложение:


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

Интерактивные приложения. Приложения, позволяющие осуществить интерактивный обмен. Например, модель «человек-человек». Когда два человека, при помощи интерактивных приложений, общаются между собой или ведут общую работу. Сюда относится: ICQ, электронная почта, форум, на котором несколько экспертов помогают людям в решении вопросов. Или модель «человек-машина». Когда человек общается непосредственно с компьютером. Это может быть удаленная настройка базы, конфигурация сетевого устройства. Здесь, в отличие от загрузчиков, важно постоянное вмешательство человека. То есть, как минимум, один человек выступает инициатором. Пропускная способность уже более чувствительна к задержкам, чем приложения-загрузчики. Например, при удаленной конфигурации сетевого устройства, будет тяжело его настраивать, если отклик от команды будет в 30 секунд.

Приложения в реальном времени. Приложения, позволяющие передавать информацию в реальном времени. Как раз к этой группе относится IP-телефония, системы потокового вещания, видеоконференции. Самые чувствительные к задержкам и пропускной способности приложения. Представьте, что вы разговариваете по телефону и то, что вы говорите, собеседник услышит через 2 секунды и наоборот, вы от собеседника с таким же интервалом. Такое общение еще и приведет к тому, что голоса будут пропадать и разговор будет трудноразличимым, а в видеоконференция превратится в кашу. В среднем, задержка не должна превышать 300 мс. К данной категории можно отнести Skype, Lync, Viber (когда совершаем звонок).

Теперь поговорим о такой важной вещи, как топология. Она делится на 2 большие категории: физическая и логическая . Очень важно понимать их разницу. Итак, физическая топология - это как наша сеть выглядит. Где находятся узлы, какие сетевые промежуточные устройства используются и где они стоят, какие сетевые кабели используются, как они протянуты и в какой порт воткнуты. Логическая топология - это каким путем будут идти пакеты в нашей физической топологии. То есть физическая - это как мы расположили устройства, а логическая - это через какие устройства будут проходить пакеты.

Теперь посмотрим и разберем виды топологии:

1) Топология с общей шиной (англ. Bus Topology)


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

2) Кольцевая топология (англ. Ring Topology)


В данной топологии каждое устройство подключается к 2-ум соседним. Создавая, таким образом, кольцо. Здесь логика такова, что с одного конца компьютер только принимает, а с другого только отправляет. То есть, получается передача по кольцу и следующий компьютер играет роль ретранслятора сигнала. За счет этого нужда в терминаторах отпала. Соответственно, если где-то кабель повреждался, кольцо размыкалось и сеть становилась не работоспособной. Для повышения отказоустойчивости, применяют двойное кольцо, то есть в каждое устройство приходит два кабеля, а не один. Соответственно, при отказе одного кабеля, остается работать резервный.

3) Топология звезда (англ. Star Topology)


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

4)Полносвязная топология (англ. Full-Mesh Topology)


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

5)Неполносвязная топология (англ. Partial-Mesh Topology)


Как правило, вариантов ее несколько. Она похожа по строению на полносвязную топологию. Однако соединение построено не с каждого на каждый, а через дополнительные узлы. То есть узел A, связан напрямую только с узлом B, а узел B связан и с узлом A, и с узлом C. Так вот, чтобы узлу A отправить сообщение узлу C, ему надо отправить сначала узлу B, а узел B в свою очередь отправит это сообщение узлу C. В принципе по этой топологии работают маршрутизаторы. Приведу пример из домашней сети. Когда вы из дома выходите в Интернет, у вас нет прямого кабеля до всех узлов, и вы отправляете данные своему провайдеру, а он уже знает куда эти данные нужно отправить.

6) Смешанная топология (англ. Hybrid Topology)


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

И последнее, что осталось разобрать - это сетевые модели. На этапе зарождения компьютеров, у сетей не было единых стандартов. Каждый вендор использовал свои проприетарные решения, которые не работали с технологиями других вендоров. Конечно, оставлять так было нельзя и нужно было придумывать общее решение. Эту задачу взвалила на себя международная организация по стандартизации (ISO - International Organization for Standartization). Они изучали многие, применяемые на то время, модели и в результате придумали модель OSI , релиз которой состоялся в 1984 году. Проблема ее была только в том, что ее разрабатывали около 7 лет. Пока специалисты спорили, как ее лучше сделать, другие модели модернизировались и набирали обороты. В настоящее время модель OSI не используют. Она применяется только в качестве обучения сетям. Мое личное мнение, что модель OSI должен знать каждый уважающий себя админ как таблицу умножения. Хоть ее и не применяют в том виде, в каком она есть, принципы работы у всех моделей схожи с ней.

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

1) Физический уровень (Physical Layer): определяет метод передачи данных, какая среда используется (передача электрических сигналов, световых импульсов или радиоэфир), уровень напряжения, метод кодирования двоичных сигналов.

2) Канальный уровень (Data Link Layer): он берет на себя задачу адресации в пределах локальной сети, обнаруживает ошибки, проверяет целостность данных. Если слышали про MAC-адреса и протокол «Ethernet», то они располагаются на этом уровне.

3) Сетевой уровень (Network Layer): этот уровень берет на себя объединения участков сети и выбор оптимального пути (т.е. маршрутизация). Каждое сетевое устройство должно иметь уникальный сетевой адрес в сети. Думаю, многие слышали про протоколы IPv4 и IPv6. Эти протоколы работают на данном уровне.

4) Транспортный уровень (Transport Layer): Этот уровень берет на себя функцию транспорта. К примеру, когда вы скачиваете файл с Интернета, файл в виде сегментов отправляется на Ваш компьютер. Также здесь вводятся понятия портов, которые нужны для указания назначения к конкретной службе. На этом уровне работают протоколы TCP (с установлением соединения) и UDP (без установления соединения).

5) Сеансовый уровень (Session Layer): Роль этого уровня в установлении, управлении и разрыве соединения между двумя хостами. К примеру, когда открываете страницу на веб-сервере, то Вы не единственный посетитель на нем. И вот для того, чтобы поддерживать сеансы со всеми пользователями, нужен сеансовый уровень.

6) Уровень представления (Presentation Layer): Он структурирует информацию в читабельный вид для прикладного уровня. Например, многие компьютеры используют таблицу кодировки ASCII для вывода текстовой информации или формат jpeg для вывода графического изображения.

7) Прикладной уровень (Application Layer): Наверное, это самый понятный для всех уровень. Как раз на этом уроне работают привычные для нас приложения - e-mail, браузеры по протоколу HTTP, FTP и остальное.

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

На прикладном, представления и сеансовым уровнях, передаваемая информация обозначается как PDU (Protocol Data Units). На русском еще называют блоки данных, хотя в моем круге их называют просто данные).

Информацию транспортного уровня называют сегментами. Хотя понятие сегменты, применимо только для протокола TCP. Для протокола UDP используется понятие - датаграмма. Но, как правило, на это различие закрывают глаза.
На сетевом уровне называют IP пакеты или просто пакеты.

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

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

2) Полученные данные прибегают на уровень представления. Здесь эти данные структурируются и приводятся в формат, который сможет быть прочитан на сервере. Запаковывается и спускается ниже.

3) На этом уровне создается сессия между компьютером и сервером.

4) Так как это веб сервер и требуется надежное установление соединения и контроль за принятыми данными, используется протокол TCP. Здесь мы указываем порт, на который будем стучаться и порт источника, чтобы сервер знал, куда отправлять ответ. Это нужно для того, чтобы сервер понял, что мы хотим попасть на веб-сервер (стандартно - это 80 порт), а не на почтовый сервер. Упаковываем и спускаем дальше.

5) Здесь мы должны указать, на какой адрес отправлять пакет. Соответственно, указываем адрес назначения (пусть адрес сервера будет 192.168.1.2) и адрес источника (адрес компьютера 192.168.1.1). Заворачиваем и спускаем дальше.

6) IP пакет спускается вниз и тут вступает в работу канальный уровень. Он добавляет физические адреса источника и назначения, о которых подробно будет расписано в последующей статье. Так как у нас компьютер и сервер в локальной среде, то адресом источника будет являться MAC-адрес компьютера, а адресом назначения MAC-адрес сервера (если бы компьютер и сервер находились в разных сетях, то адресация работала по-другому). Если на верхних уровнях каждый раз добавлялся заголовок, то здесь еще добавляется концевик, который указывает на конец кадра и готовность всех собранных данных к отправке.

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

Процесс деинкапсуляции аналогичен, но с обратной последовательностью:

1) На физическом уровне принимаются электрические сигналы и конвертируются в понятную битовую последовательность для канального уровня.

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

3) На сетевом уровне проверяется IP адрес назначения. И если он верен, данные поднимаются выше. Не стоит сейчас вдаваться в подробности, почему у нас адресация на канальном и сетевом уровне. Это тема требует особого внимания, и я подробно объясню их различие позже. Главное сейчас понять, как данные упаковываются и распаковываются.

4) На транспортном уровне проверяется порт назначения (не адрес). И по номеру порта, выясняется какому приложению или сервису адресованы данные. У нас это веб-сервер и номер порта - 80.

5) На этом уровне происходит установление сеанса между компьютером и сервером.

6) Уровень представления видит, как все должно быть структурировано и приводит информацию в читабельный вид.

7) И на этом уровне приложения или сервисы понимают, что надо выполнить.

Много было написано про модель OSI. Хотя я постарался быть максимально краток и осветить самое важное. На самом деле про эту модель в Интернете и в книгах написано очень много и подробно, но для новичков и готовящихся к CCNA, этого достаточно. Из вопросов на экзамене по данной модели может быть 2 вопроса. Это правильно расположить уровни и на каком уровне работает определенный протокол.

Как было написано выше, модель OSI в наше время не используется. Пока разрабатывалась эта модель, все большую популярность получал стек протоколов TCP/IP. Он был значительно проще и завоевал быструю популярность.
Вот так этот стек выглядит:


Как видно, он отличается от OSI и даже сменил название некоторых уровней. По сути, принцип у него тот же, что и у OSI. Но только три верхних уровня OSI: прикладной, представления и сеансовый объединены у TCP/IP в один, под названием прикладной. Сетевой уровень сменил название и называется - Интернет. Транспортный остался таким же и с тем же названием. А два нижних уровня OSI: канальный и физический объединены у TCP/IP в один с названием - уровень сетевого доступа. Стек TCP/IP в некоторых источниках обозначают еще как модель DoD (Department of Defence). Как говорит википедия, была разработана Министерством обороны США. Этот вопрос встретился мне на экзамене и до этого я про нее ничего не слышал. Соответственно вопрос: «Как называется сетевой уровень в модели DoD?», ввел меня в ступор. Поэтому знать это полезно.

Было еще несколько сетевых моделей, которые, какое то время держались. Это был стек протоколов IPX/SPX. Использовался с середины 80-х годов и продержался до конца 90-х, где его вытеснила TCP/IP. Был реализован компанией Novell и являлся модернизированной версией стека протоколов Xerox Network Services компании Xerox. Использовался в локальных сетях долгое время. Впервые IPX/SPX я увидел в игре «Казаки». При выборе сетевой игры, там предлагалось несколько стеков на выбор. И хоть выпуск этой игры был, где то в 2001 году, это говорило о том, что IPX/SPX еще встречался в локальных сетях.

Еще один стек, который стоит упомянуть - это AppleTalk. Как ясно из названия, был придуман компанией Apple. Создан был в том же году, в котором состоялся релиз модели OSI, то есть в 1984 году. Продержался он совсем недолго и Apple решила использовать вместо него TCP/IP.

Также хочу подчеркнуть одну важную вещь. Token Ring и FDDI - не сетевые модели! Token Ring - это протокол канального уровня, а FDDI это стандарт передачи данных, который как раз основывается на протоколе Token Ring. Это не самая важная информация, так как эти понятия сейчас не встретишь. Но главное помнить о том, что это не сетевые модели.

Вот и подошла к концу статья по первой теме. Хоть и поверхностно, но было рассмотрено много понятий. Самые ключевые будут разобраны подробнее в следующих статьях. Надеюсь теперь сети перестанут казаться чем то невозможным и страшным, а читать умные книги будет легче). Если я что-то забыл упомянуть, возникли дополнительные вопросы или у кого есть, что дополнить к этой статье, оставляйте комментарии, либо спрашивайте лично. Спасибо за прочтение. Буду готовить следующую тему.

  • топология сети
  • Добавить метки

    Как работает интернет?



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

    Структура интернета

    По всему миру в офисах компаний, государственных учреждений, в частных домах и квартирах стоят компьютеры. Отдельными группами они объединяются в небольшие локальные сети (от сети компьютеров в какой-то организации до городской сети). Те в свою очередь включаются в более крупные сети - региональные, национальные. Они также являются частью, только уже еще более масштабных сетей — континентальных. Эти сети соединяются между собой колоссальным по параметрам подводным трансатлантическим оптоволоконным кабелем. За счет этого, например, компьютер, стоящий в Орле, связан с компьютером в Ванкувере. Пользователи этих двух ПК посредством интернета могут общаться друг с другом.

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

    Кроме того, имеются достаточно крупные сети, не соединенные или соединенные лишь частично вместе с другими сетями мирового интернета. Например, такова ситуация в Северной Корее. В этой стране доступ к «Всемирной паутине» осуществляется исключительно по разрешению властей, а потому право на него имеют редкие чиновники высшего ранга. Внутри же самой страны работает внутренняя сеть под названием «Кванмен», которая стала доступна местным гражданам не так давно. Количество информации и ее характер жестко контролируются властями республики.

    Как работает сеть интернет: составляющие элементы

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

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

    Или какая-то автоматическая программа, посылающая запросы в интернет для получения информации.

    Компьютер

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

    Интернет-провайдер

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

    • Первая - это владельцы какой-то доли мирового интернета, располагающие обычно своими оптоволоконными сетями, по которым они и передают трафик (то есть заданный объем информации, которую можно получить через интернет) сетевым провайдерам низшей группы.
    • Вторая - это компании национального уровня или регионального (созданные несколькими соседними странами). Например, это "Ростелеком".
    • Третья - это все остальные участники рынка, представленные менее крупными фирмами-провайдерами в городах и областях.

    Финансовые взаимоотношения, определяющие, в частности, количество полученного трафика между всеми этими группами (а особенно между первой и второй категориями) провайдеров очень сложны. Здесь нередко играют роль не только экономические моменты, но и личные интересы, политика и проч.

    Браузер

    Это программа-клиент для работы в интернете, которую можно установить либо с диска, либо скачав через тот же интернет. Самыми популярными браузерами являются Google Chrome, Internet Explorer, Mozilla Firefox, Safari, Opera.

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

    Домен

    Под этим понятием подразумевается некая зона в сети интернет, занятая тем или иным сайтом. Соответственно, у каждой страницы в интернете есть свое неповторимое доменное имя - адрес, по которому вы можете найти сайт в сети.

    Запустив браузер, в адресной строке вы вводите именно доменное имя нужного вам ресурса. После этого система обращается с соответствующим запросом к сети интернет-провайдера. У провайдера установлен сервер типа DNS (Domain Name System), который позволяет перекодировать доменное имя сайта в IP-адрес. IP-адрес (Internet Protocol Address) - это уникальный адрес какой-то зоны в интернете, представленный, в отличие от доменного имени, в виде цифр. К слову, IP-адрес имеют не только сайты, но и сами компьютеры. Каждому ПК IP-адрес присваивает интернет-провайдер, предоставляющий доступ к сети. Это делается для того, чтобы иметь возможность поставлять трафик по нужному адресу, то есть к каждому конкретному ПК, а также чтобы решать какие-то проблемы в обслуживании.

    После этого IP-адрес сайта перекодируется из десятичной системы вычисления в двоичную (с участием 0 и 1). В этом виде провайдер посредством сервера отправляет запрос о получении информации с нужного пользователю сайта на маршрутизатор.

    Маршрутизатор

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

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

    Сервер

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

    • Обеспечивает получение компьютерами сети интернет-трафика.
    • Занимается перекодировкой доменных имен в IP-адреса.
    • Хранит данные. Например, это может быть сервер с данными пользователей какой-то электронной почты: входящими и исходящими письмами, письмами в корзине и в папке со спамом, информация из адресных книг и проч.
    • Размещает в своей памяти информации о различных сайтах сети, всех данных на них. Такие серверы называются хостингами.

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

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

    Порт

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

    Для работы с веб-сайтами также существует отдельный порт. Он анализирует полученную информацию и отправляет ее в браузер. В результате перед нами открывается желанная страница.

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

    Давайте, в общих чертах, разберемся, как работает сеть Интернет.

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

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

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

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

    Интернет-провайдер – это организация, предоставляющая доступ к сети Интернет через свой Интернет-сервер. Компьютеры пользователей (клиенты) соединяются с сервером провайдера по телефонным линиям, выделенному каналу или беспроводной сети. В свою очередь, серверы провайдера соединены с Интернетом постоянными высокоскоростными линиями связи.

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

    А теперь представьте, что различные пользователи имеют разные типы компьютеров, в которых установлены различные операционные системы (Windows, Vista и пр.), разные браузеры (Opera, Internet Explorer, Mozilla Firefox). На различных серверах, также установлены различные типы компьютеров и различное серверное программное обеспечение. Для того, чтобы программы, написанные разными авторами для разного типа компьютеров, с разными операционными системами, могли корректно взаимодействовать между собой, были придуманы специальные правила – Протоколы . Можно сказать, что протоколы помогают компьютерам обмениваться информацией.

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

    Таким образом, для использования какой-либо из служб Интернета нам нужны:

    • Компьютер
    • Программа-клиент, установленная на нашем компьютере, и способная работать по протоколу избранной службы
    • Адрес сервера, на котором установлена программа-сервер.

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

    Осталось, только выяснить, а как же Ваня найдет Била, чтобы пообщаться с ним? Элементарно – Ваня знает номер сотового телефона Била.

    По такому же принципу находят друг друга миллионы компьютеров в Интернете. Каждый компьютер, подключенный к сети Интернет, имеет свой уникальный IP – адрес (Internet Protocol Address), который представляет собой последовательность четырех чисел, разделенных точками, например 195.5.46.34. Каждое число может лежать в диапазоне от 0 до 255. IP-адрес для компьютера, как для нас номер сотового телефона. По нему можно найти компьютер в любом уголке мира.

    Далее возникает следующий вопрос – если все веб-сайты, веб-страницы, блоги и пр. являются частью всемирной базы данных WWW, то где и на каких полках все это лежит? И как до всего этого добирается наш компьютер?

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

    Хост-провайдер – это организация, которая предоставляет услуги хостинга, т.е. предоставляет дисковое пространство на Интернет-сервере (Хостинге), для размещения вашего сайта в сети Интернет. Запомните, что хостинг это не процесс публикации сайта, а только аренда дискового пространства.

    С английского «хост» переводится, как главный компьютер или хозяин постоялого двора. Так вот, на этот постоялый двор и сваливают сайты. Таких постоялых дворов в сети тысячи.

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

    Для облегчения работы была придумана Система доменных имен (DNS – Domain Name System). Эта альтернативная система адресации, более понятна человеку, т.к. компьютерам присваивается не только IP-адрес, но и символьное имя или доменное имя . Доменное имя состоит из цепочки символов, разделенных между собой точкой.

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

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

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

    Если с адресами серверов, более или менее все понятно, то, как же находятся и передаются необходимые нам документы на сайтах?

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

    Всем пользователям компьютеров, даже чайникам, хорошо знакомо понятие полного имени файла, которое включает в себя краткое имя файла с расширением и полный путь к файлу, начиная с имени устройства или диска, затем идет перечень вложенных папок, разделенных между собой слешем «\». Таким образом, мы однозначно идентифицируем файл в пределах одного компьютера.

    Каждый файл в Интернете также имеет свой уникальный адрес. Он называется URL .

    URL (Uniform Resource Locator ) – универсальный локатор ресурса, или адрес любого файла в Интернете. Кроме адреса компьютера в URL содержится указание о протоколе, по которому нужно обращаться к файлу, какую программу на сервере запустить и к какому конкретному файлу следует обратиться.

    Типичный адрес URL состоит из трех основных элементов: Протокол + Доменное имя + Путь/Файл .

    Давайте разберем более подробно следующий URL http://nic.ru/dns/service/dns-service.html . Этот адрес принадлежит одной из страниц сайта RU-Center.

    1. http – это протокол, он определяет совокупность правил, по которым происходит взаимодействие между клиентом и сервером. Протокол, принятый в WWW для передачи гипертекста, называется HyperText Transfer Protocol , сокращенно - HTTP .
    2. Далее идет доменное имя сервера, к которому вы обращаетесь за информацией, в нашем случае это nic . ru . Где . ru – домен верхнего уровня, nic . ru – домен второго уровня. Между доменом и протоколом ставится разделитель :// .
    3. /dns/service/dns-service.html – путь до нужного нам файла dns-service.html, который находится в папке service ,которая в свою очередь вложена в папку dns .

    Вот и все. В «трех словах» я попыталась вам объяснить, как работает Сеть Интернет, и ее самый популярный ресурс – всемирная путина WWW.

    В основе работы глобальной сети Интернет лежит набор (стек) протоколов TCP/IP. Но эти термины лишь на первый взгляд кажутся сложными. На самом деле стек протоколов TCP/IP - это простой набор правил обмена информацией, и правила эти на самом деле вам хорошо известны, хоть вы, вероятно, об этом и не догадываетесь. Да, все именно так, по существу в принципах, лежащих в основе протоколов TCP/IP, нет ничего нового: все новое - это хорошо забытое старое.

    Человек может учиться двумя путями:

    1. Через тупое формальное зазубривание шаблонных способов решения типовых задач (чему сейчас в основном и учат в школе). Такое обучение малоэффективно. Наверняка вам приходилось наблюдать панику и полную беспомощность бухгалтера при смене версии офисного софта - при малейшем изменении последовательности кликов мышки, требуемых для выполнения привычных действий. Или приходилось видеть человека, впадающего в ступор при изменении интерфейса рабочего стола?
    2. Через понимание сути проблем, явлений, закономерностей. Через понимание принципов построения той или иной системы. В этом случае обладание энциклопедическими знаниями не играет большой роли - недостающую информацию легко найти. Главное - знать, что искать. А для этого необходимо не формальное знание предмета, а понимание сути.

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

    Итак, начнем.

    Принципы работы интернет-протоколов TCP/IP по своей сути очень просты и сильно напоминают работу нашей советской почты.

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

    На конверте письма будет написано примерно следующее:

    Адрес отправителя: От кого : Иванов Иван Иванович Откуда : Ивантеевка, ул. Большая, д. 8, кв. 25 Адрес получателя: Кому : Петров Петр Петрович Куда : Москва, Усачевский переулок, д. 105, кв. 110

    Теперь мы готовы рассмотреть взаимодействие компьютеров и приложений в сети Интернет (да и в локальной сети тоже). Обратите внимание, что аналогия с обычной почтой будет почти полной.

    Каждый компьютер (он же: узел, хост) в рамках сети Интернет тоже имеет уникальный адрес, который называется IP-адрес (Internet Protocol Address), например: 195.34.32.116. IP адрес состоит из четырех десятичных чисел (от 0 до 255), разделенных точкой. Но знать только IP адрес компьютера еще недостаточно, т.к. в конечном счете обмениваются информацией не компьютеры сами по себе, а приложения, работающие на них. А на компьютере может одновременно работать сразу несколько приложений (например почтовый сервер, веб-сервер и пр.). Для доставки обычного бумажного письма недостаточно знать только адрес дома - необходимо еще знать номер квартиры. Также и каждое программное приложение имеет подобный номер, именуемый номером порта. Большинство серверных приложений имеют стандартные номера, например: почтовый сервис привязан к порту с номером 25 (еще говорят: «слушает» порт, принимает на него сообщения), веб-сервис привязан к порту 80, FTP - к порту 21 и так далее.

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

    "адрес дома" = "IP компьютера" "номер квартиры" = "номер порта"

    В компьютерных сетях, работающих по протоколам TCP/IP, аналогом бумажного письма в конверте является пакет , который содержит собственно передаваемые данные и адресную информацию - адрес отправителя и адрес получателя, например:

    Адрес отправителя (Source address): IP: 82.146.49.55 Port: 2049 Адрес получателя (Destination address): IP: 195.34.32.116 Port: 53 Данные пакета: ...

    Конечно же в пакетах также присутствует служебная информация, но для понимания сути это не важно.

    Обратите внимание, комбинация: "IP адрес и номер порта" - называется "сокет" .

    В нашем примере мы с сокета 82.146.49.55:2049 посылаем пакет на сокет 195.34.32.116:53, т.е. пакет пойдет на компьютер, имеющий IP адрес 195.34.32.116, на порт 53. А порту 53 соответствует сервер распознавания имен (DNS-сервер), который примет этот пакет. Зная адрес отправителя, этот сервер сможет после обработки нашего запроса сформировать ответный пакет, который пойдет в обратном направлении на сокет отправителя 82.146.49.55:2049, который для DNS сервера будет являться сокетом получателя.

    Как правило взаимодействие осуществляется по схеме «клиент-сервер»: "клиент" запрашивает какую-либо информацию (например страницу сайта), сервер принимает запрос, обрабатывает его и посылает результат. Номера портов серверных приложений общеизвестны, например: почтовый SMTP сервер «слушает» 25-й порт, POP3 сервер, обеспечивающий чтение почты из ваших почтовых ящиков «слушает» 110-порт, веб-сервер - 80-й порт и пр.

    Большинство программ на домашнем компьютере являются клиентами - например почтовый клиент Outlook, веб-обозреватели IE, FireFox и пр.

    Номера портов на клиенте не фиксированные как у сервера, а назначаются операционной системой динамически. Фиксированные серверные порты как правило имеют номера до 1024 (но есть исключения), а клиентские начинаются после 1024.

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

    Однако человеку запоминать цифровые IP адреса трудно - куда удобнее работать с буквенными именами. Ведь намного легче запомнить слово, чем набор цифр. Так и сделано - любой цифровой IP адрес можно связать с буквенно-цифровым именем. В результате например вместо 82.146.49.55 можно использовать имя А преобразованием доменного имени в цифровой IP адрес занимается сервис доменных имен - DNS (Domain Name System).

    Рассмотрим подробнее, как это работает. Ваш провайдер явно (на бумажке, для ручной настройки соединения) или неявно (через автоматическую настройку соединения) предоставляет вам IP адрес сервера имен (DNS). На компьютере с этим IP адресом работает приложение (сервер имен), которое знает все доменные имена в Интернете и соответствующие им цифровые IP адреса. DNS-сервер «слушает» 53-й порт, принимает на него запросы и выдает ответы, например:

    Запрос от нашего компьютера: "Какой IP адрес соответствует имени www.сайт?" Ответ сервера: "82.146.49.55."

    Теперь рассмотрим, что происходит, когда в своем браузере вы набираете доменное имя (URL) этого сайта () и, нажав , в ответ от веб-сервера получаете страницу этого сайта.

    Например:

    IP адрес нашего компьютера: 91.76.65.216 Браузер: Internet Explorer (IE), DNS сервер (стрима): 195.34.32.116 (у вас может быть другой), Страница, которую мы хотим открыть: www.сайт.

    Набираем в адресной строке браузера доменное имя и жмем . Далее операционная система производит примерно следующие действия:

    Отправляется запрос (точнее пакет с запросом) DNS серверу на сокет 195.34.32.116:53. Как было рассмотренно выше, порт 53 соответствует DNS-серверу - приложению, занимающемуся распознаванием имен. А DNS-сервер, обработав наш запрос, возвращает IP-адрес, который соответствует введенному имени.

    Диалог примерно следующий:

    Какой IP адрес соответствует имени www.сайт ? - 82.146.49.55 .

    Далее наш компьютер устанавливает соединение с портом 80 компьютера 82.146.49.55 и посылает запрос (пакет с запросом) на получение страницы . 80-й порт соответствует веб-серверу. В адресной строке браузера 80-й порт как правило не пишется, т.к. используется по умолчанию, но его можно и явно указать после двоеточия - .

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

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

    Зачем эти принципы надо понимать?

    Например, вы заметили странное поведение своего компьютера - непонятная сетевая активность, тормоза и пр. Что делать? Открываем консоль (нажимаем кнопку «Пуск» - «Выполнить» - набираем cmd - «Ок»). В консоли набираем команду netstat -an и жмем . Эта утилита отобразит список установленных соединений между сокетами нашего компьютера и сокетами удаленных узлов. Если мы видим в колонке «Внешний адрес» какие-то чужие IP адреса, а через двоеточие 25-й порт, что это может означать? (Помните, что 25-й порт соответствует почтовому серверу?) Это означает то, что ваш компьютер установил соединение с каким-то почтовым сервером (серверами) и шлет через него какие-то письма. И если ваш почтовый клиент (Outlook например) в это время не запущен, да если еще таких соединений на 25-й порт много, то, вероятно, в вашем компьютере завелся вирус, который рассылает от вашего имени спам или пересылает номера ваших кредитных карточек вкупе с паролями злоумышленникам.

    Также понимание принципов работы Интернета необходимо для правильной настройки файерволла (проще говоря брандмауэра:)). Эта программа (которая часто поставляется вместе с антивирусом), предназначенна для фильтрации пакетов - "своих" и "вражеских". Своих пропускать, чужих не пущать. Например, если ваш фаерволл сообщает вам, что некто хочет установить соединение с каким-либо портом вашего компьютера. Разрешить или запретить?

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

    Напоследок приведу список портов, с которыми вам, вероятно, придется столкнуться:

    135-139 - эти порты используются Windows для доступа к общим ресурсам компьютера - папкам, принтерам. Не открывайте эти порты наружу, т.е. в районную локальную сеть и Интернет. Их следует закрыть фаерволлом. Также если в локальной сети вы не видите ничего в сетевом окружении или вас не видят, то вероятно это связано с тем, что фаерволл заблокировал эти порты. Таким образом для локальной сети эти порты должны быть открыты, а для Интернета закрыты. 21 - порт FTP сервера. 25 - порт почтового SMTP сервера. Через него ваш почтовый клиент отправляет письма. IP адрес SMTP сервера и его порт (25-й) следует указать в настройках вашего почтового клиента. 110 - порт POP3 сервера. Через него ваш почтовый клиент забирает письма из вашего почтового ящика. IP адрес POP3 сервера и его порт (110-й) также следует указать в настройках вашего почтового клиента. 80 - порт WEB -сервера. 3128, 8080 - прокси-серверы (настраиваются в параметрах браузера).

    Несколько специальных IP адресов:

    127.0.0.1 - это localhost, адрес локальной системы, т.е. локальный адрес вашего компьютера. 0.0.0.0 - так обозначаются все IP-адреса. 192.168.xxx.xxx - адреса, которые можно произвольно использовать в локальных сетях, в глобальной сети Интернет они не используются. Они уникальны только в рамках локальной сети. Адреса из этого диапазона вы можете использовать по своему усмотрению, например, для построения домашней или офисной сети.

    Что такое маска подсети и шлюз по умолчанию (роутер, маршрутизатор)?

    (Эти параметры задаются в настройках сетевых подключений).

    Все просто. Компьютеры объединяются в локальные сети. В локальной сети компьютеры напрямую «видят» только друг друга. Локальные сети соединяются друг с другом через шлюзы (роутеры, маршрутизаторы). Маска подсети предназначена для определения - принадлежит ли компьютер-получатель к этой же локальной сети или нет. Если компьютер-получатель принадлежит этой же сети, что и компьютер-отправитель, то пакет передается ему напрямую, в противном случае пакет отправляется на шлюз по умолчанию, который далее, по известным ему маршрутам, передает пакет в другую сеть, т.е. в другое почтовое отделение (по аналогии с советской почтой).

    Напоследок рассмотрим что же означают непонятные термины:

    TCP/IP - это название набора сетевых протоколов. На самом деле передаваемый пакет проходит несколько уровней. (Как на почте: сначала вы пишете писмо, потом помещаете в конверт с адресом, затем на почте на нем ставится штамп и т.д.).

    IP протокол - это протокол так называемого сетевого уровня. Задача этого уровня - доставка ip-пакетов от компьютера отправителя к компьютеру получателю. По-мимо собственно данных, пакеты этого уровня имеют ip-адрес отправителя и ip-адрес получателя. Номера портов на сетевом уровне не используются. Какому порту, т.е. приложению адресован этот пакет, был ли этот пакет доставлен или был потерян, на этом уровне неизвестно - это не его задача, это задача транспортного уровня.

    TCP и UDP - это протоколы так называемого транспортного уровня. Транспортный уровень находится над сетевым. На этом уровне к пакету добавляется порт отправителя и порт получателя.

    TCP - это протокол с установлением соединения и с гарантированной доставкой пакетов. Сначала производится обмен специальными пакетами для установления соединения, происходит что-то вроде рукопожатия (-Привет. -Привет. -Поболтаем? -Давай.). Далее по этому соединению туда и обратно посылаются пакеты (идет беседа), причем с проверкой, дошел ли пакет до получателя. Если пакет не дошел, то он посылается повторно («повтори, не расслышал»).

    UDP - это протокол без установления соединения и с негарантированной доставкой пакетов. (Типа: крикнул что-нибудь, а услышат тебя или нет - неважно).

    Над транспортным уровнем находится прикладной уровень. На этом уровне работают такие протоколы, как http , ftp и пр. Например HTTP и FTP - используют надежный протокол TCP, а DNS-сервер работает через ненадежный протокол UDP.

    Как посмотреть текущие соединения?

    Текущие соединения можно посмотреть с помощью команды

    Netstat -an

    (параметр n указывает выводить IP адреса вместо доменных имен).

    Запускается эта команда следующим образом:

    «Пуск» - «Выполнить» - набираем cmd - «Ок». В появившейся консоли (черное окно) набираем команду netstat -an и жмем . Результатом будет список установленных соединений между сокетами нашего компьютера и удаленных узлов.

    Например получаем:

    Активные подключения

    Имя Локальный адрес Внешний адрес Состояние
    TCP 0.0.0.0:135 0.0.0.0:0 LISTENING
    TCP 91.76.65.216:139 0.0.0.0:0 LISTENING
    TCP 91.76.65.216:1719 212.58.226.20:80 ESTABLISHED
    TCP 91.76.65.216:1720 212.58.226.20:80 ESTABLISHED
    TCP 91.76.65.216:1723 212.58.227.138:80 CLOSE_WAIT
    TCP 91.76.65.216:1724 212.58.226.8:80 ESTABLISHED
    ...

    В этом примере 0.0.0.0:135 - означает, что наш компьютер на всех своих IP адресах слушает (LISTENING) 135-й порт и готов принимать на него соединения от кого угодно (0.0.0.0:0) по протоколу TCP.

    91.76.65.216:139 - наш компьютер слушает 139-й порт на своем IP-адресе 91.76.65.216.

    Третья строка означает, что сейчас установлено (ESTABLISHED) соединение между нашей машиной (91.76.65.216:1719) и удаленной (212.58.226.20:80). Порт 80 означает, что наша машина обратилась с запросом к веб-серверу (у меня, действительно, открыты страницы в браузере).

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