Как устроен Интернет
HashFlare
 
Главная HI-TECH Форум Поиск Книги Авторам Новости партнёров Реклама
Новостей на сайте: 10263
Программы  
  Система
  Безопасность
  Интернет и сети
  Текст
  Графика и дизайн
  Мультимедиа
  Программирование
  Бизнес
  Образование
  Дом, семья, хобби
  Игры и развлечения
 
Рассылка
 
HashFlare
 
Рейтинг программ...    
    Ф2Мастер Банк (138316)
    Коллекция руссификаторов O-S (34782)
    Товар версия 1.10 (25294)
    Коллекция софта № 13 (24860)
    NetGraf 1.0 (23985)
    New_Profile v3.4 (400) (23923)
    Revolter Commander 3.9 beta 8 (16378)
    Коллекция софта № 14 (15729)
    Net Transport 2.22 (15390)
    Intel Sound MAX 4.0 Ac' 97 5.12.01 (15207)
 

[!] Знаете ли Вы, что на нашем портал Вы можете найти более 1000 разнообразных программ для ПК?


Интернет Статьи
Как устроен Интернет

Действительно, все мы пользуемся Интернетом, для многих из нас он уже стал частью жизни, а многие ли знают, как он устроен? Рассматривая такой глобальный вопрос, стоит разделить все повествование, отнюдь не претендующее на всеобъемлемость и всеохватность, на три части: 1) компьютер пользователя плюс его модем, 2) провайдер, 3) множество серверов во всем мире - со всеми соединениями и сетевыми устройствами, которые образуют Всемирную Сеть Интернет.

Начать, конечно, стоит сначала. То есть, с себя. Потому как в большинстве своем вы и есть конечный пользователь, сидящий дома за своим компьютером, слушающий "пение" своего модема во время установки связи. Вы и есть последняя (среди миллионов) точка Интернета. "Первой" точки нет. Почему – об этом отдельный рассказ. Следовательно, начинаем с вас, как с самого крайнего.

Вот схема, на которую я буду ссылаться далее (1 – компьютер пользователя с модемом, 2 – модемы провайдера, 3 – маршрутизатор, 4 – локальная сеть сервера провайдера, 5 – сервер провайдера, 1a – локальная сеть пользователей, 6 – концентратор для обмена трафиком между локальной сетью и провайдером).

Что вообще происходит после того, как вы дома или на работе (если у вас связь с провайдером не через локальную сеть) нажимаете кнопку "Установить связь"? После набора номера, ваш модем [1] соединится с провайдерским [2]. С этого момента лучше рассказывать, как это происходит, глядя "с того конца" - с провайдерского. К маршрутизатору [3] подцеплен модемный пул [2] (набор некоторого количества модемов), маршрутизатор настраивает их на автоответ. После поступления звонка и успешного прохождения handshaking (т.е. настройки обоих модемов, когда они "договариваются" о скорости и протоколе обмена), оба модема, вместе с линией между ними, начинают представлять уже просто транспорт для связи маршрутизатор <--> ваш компьютер. Все, о модемах с этого момента уже можно не вспоминать. Связь установлена.

Теперь маршрутизатор должен договориться с вашей операционной системой (он ведь пока не знает, какая у вас стоит) об авторизации вашего подключения. Для этого существует несколько специальных протоколов. Windows использует протокол CHAP. После того, как маршрутизатор это сделает, он посылает пакет с вашим именем и паролем на авторизующий сервер [5]. Как только авторизация пройдет успешно (если нет – соединение закрывается со стороны провайдера), маршрутизатор должен договориться с вашим компьютером о протоколе, посредством которого ваша система будет общаться с Интернетом в дальнейшем. Конкретно для ОС Windows этот протокол называется PPP (point-to-point protocol) - это можно увидеть в настройках.

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

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

С корпоративными сетями [1a] дела обстоят несколько проще - они просто напрямую (или через концентратор [6]) включены в маршрутизатор, и адрес их сети уже заранее прописан.

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

Ну и, само собой, у провайдера есть сервер [5], который содержит в себе базу пользователей, занимается обработкой почты, ftp, http и т.п. В принципе провайдер для предоставления просто услуг по подключению в Интернет способен обойтись только одним компьютером, который будет заниматься авторизацией (тут и 386-й пойдет). Остальное будет делать маршрутизатор.

Итак, связь установлена, браузер запущен и ожидает ввода сетевого адреса. В браузере вы набираете, к примеру, www.irk.ru в строке URL (заметьте, здесь - без добавки http:// - она сама добавится браузером). Полное имя (www.irk.ru) уходит в пакете запроса на DNS (Domain Name Service), который должен вернуть нормальный IP-адрес браузеру, чтобы работать дальше. Чтобы было понятнее, отвлекусь на термины DNS и "IP-адрес". Дело в том, что привычные имена, обозначающие адреса в Интернете, на самом деле предназначены только для человека - чтобы было удобнее запоминать имена. Компьютер же оперирует цифровыми адресами в виде четырех групп чисел, разделенных точками. Например, 195.160.40.12 – это одно из представлений IP-адреса. В принципе, имя ресурса в строке браузера можно набирать и таким образом, но это неудобно. Следовательно, должна существовать система, которая будет сопоставлять привычные нам имена с числовым представлением.

Этим как раз и занимается служба DNS (domain name service). Преобразования типа cooler.irk.ru -> 195.206.40.164. называются прямым преобразованием. А 195.206.40.164 -> cooler.irk.ru называется обратным преобразованием. То есть, существует два типа сервиса преобразования. У каждого провайдера должен быть свой DNS, который преобразовывает ваши запросы, чтобы вы не лазили далеко за простыми и часто используемыми именами и чтобы другие DNS могли у него спрашивать о его собственных доменах. Но всех имен в Интернете он, конечно, знать не может. На самом деле, DNS - это распределенная база данных. При "незнании" какого-либо адреса DNS провайдер начинает запрашивать его по частям у других DNS-серверов. Начинает с главного (или корневого, root) DNS-сервера, вернее, с нескольких главных – root-сервер не один.

Сам адрес не таков, каким мы его привыкли видеть. Например, www.irk.ru выглядит на самом деле как www.irk.ru. - с точкой в конце. Точка и указывает на "корень", т.е. у "главного" DNS спрашивают: - а кто там у нас отвечает за зону "ru"? Ему отвечают: такие-то и такие-то DNS, и он уже теперь у этих DNS спрашивает: - а кто отвечает за зону irk? - "такой то"... и так далее, пока не получит нужный IP. То есть, если где-либо не на сервере irk.ru запрашивали первый раз название cooler.irk.ru - то сервер того провайдера получил окончательную расшифровку как раз от DNS-сервера с доменом .irk.ru.

Теперь становится понятной надпись во время работы браузера Looking up host... - это он ждет, пока DNS отыщет нужный IP-адрес.

После этого браузер получает пакет с настоящим (цифровым) IP-адресом, и теперь он будет запрашивать ресурс по уже реальному IP-адресу. И будет подставлять порт 80 к своим запросам. Почему подставлять порт, причем именно 80? Это делается для того, чтобы разграничить типы ресурсов. Ведь FTP-сервер может находиться на том же IP-адресе, что и WWW. Протоколу http соответствует по стандарту порт 80 и браузер по умолчанию работает с www, т.е. с 80 портом, ведь написав, например, www.microsoft.com, я попадаю на WWW, а не на FTP. Кроме того, браузер пытается определить порт по первому слову в URL. Если пишется www.microsoft.com, значит нужно подставить 80 порт, а если ftp.microsoft.com, то 21 - порт для работы с FTP. Сами вы этот порт не пишите, он подставляется автоматом, как и многое другое. Конечно, можно написать в строке URL вместо www.microsoft.com - www.microsoft.com:80 - это будет одно т. Существует такая вещь, как alias - виртуальный хост. IP-адреса у разных хостов могут быть одинаковы. Например, IP-адреса www.irk.ru и www.dsi.ru – это одно и то же, и набирая в строке URL "чистый" IP-адрес, попадать вы будете только на какой-то один.

Виртуальный хост делается для того, чтобы вам не пришлось запоминать длинное название директории, где бы мог лежать нужный вам файл, например - www.irk.ru/siberia/ и т.п. Просто системный администратор так прописал настройки, что директория на сервере, где находится siberia, теперь вроде бы как является отдельным сервером www.siberia.ru. Но, все же, физически он находится на основном - www.irk.ru. Хотя, конечно, в Интернете все очень виртуально, и сам сервер www.irk.ru может находиться еще на каком-нибудь другом сервере.

Теперь возникает вопрос: как сервер различает, что именно вы хотите - www.irk.ru или www.dsi.ru, когда вы честно пишете в строке URL нормальный адрес? Ведь IP-адрес у них один и тот же (когда DNS вернет его после сопоставления). Так вот, после получения реального IP-адреса, браузер посылает серверу пакет, содержащий запрос на ресурс с адреса IP (который браузер уже получил) и в нем же (в пакете) обязательно будет присутствовать строка www.irk.ru, то есть обычное имя. На самом деле, адрес виртуального хоста содержится в запросе GET по HTTP-протоколу, но я описываю общий случай.

Наиболее популярной из программ www-серверов является программа Apache, (есть и одноименный проект для русской версии apache.lexa.ru), которая работает под операционной системой UNIX. Названа программа не по имени индейского племени, а по аббревиатуре "A PAtCHy sErver" т.е. "сервер, собираемый из patch-файлов" (из модулей). Apache занимается непосредственно тем, что отвечает на ваши запросы и по требованию выполняет скрипты (script) CGI, отдает файлики, картинки и сам html-код документа. Apache - это HTTPd - hypertext transfer protocol daemon, т.е. по русски – www-сервер.

Так вот, этот самый HTTP-демон, воспринимая IP-адрес с нормальным именем ресурса, смотрит у себя в конфигурационных файлах (слэнговое "конфиги" - они заранее были настроены сисадмином), какой именно ресурс отдать пользователю - с www.irk.ru или www.dsi.ru, ведь имя он получил вместе с IP-адресом, предварительно углядев там адрес своего сервера. А вот если сервер будет не его, то он такой пакет и не получит вовсе, так как маршрутизатор отправит его дальше.

Итак, Apache начинает выдавать ресурс с директории, содержащей файлы www.irk.ru по порту 80. Что он должен выдать? Ведь вы явно не указывали, что именно вы хотите, а просто написали название сайта (правда, еще и явно или неявно указали протокол верхнего уровня, по которому будете общаться – HTTP). В Apache прописано, что по умолчанию для 80 порта с такой-то директории всегда выдается файл index.html. Иногда это может быть default.html или еще что-либо. Для каждого типа файлов существует свой заголовок, который посылается вашему браузеру перед посылкой самого файла (используя протокол HTTP). Делается это для того, чтобы браузер понимал, что именно нужно делать с этим файлом - показать его в окне или предложить запись на диск (например, something.zip - не надо показывать в окне, а надо сохранить - откуда браузер должен это узнавать?).

Существуют и другие указания от сервера браузеру, что ему делать с файлами, находящимися на сервере. Например, когда еще тип файлов .mp3 не был достаточно известен, заголовка на него, естественно, никто не прописывал (это делается отдельно в конфигурациях сервера), поэтому вы могли замечать, что тыкая на ссылку, указывающую на файл с расширением mp3, браузер его добросовестно грузил вам в окно, как файл html. Приходилось обходить это, зажимая Shift при щелчке мышкой. Это, кстати, стандартный прием указания браузеру записывать указанный ресурс на свой диск независимо от заголовка.

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

Автор: Александр Чижов
Источник: http://www.winzone.ru


Ссылки по теме:
Полезные советы по смс рассылке
Динамические «черные списки»
Немного о портах и прокси-серверах
70 кусочков Skype обошлись в 2 миллиарда долларов
Возникновение идеи Internet. История создания сети Интернет



 
Статьи    
  Windows 10
  Windows 8
  Windows 7
  Windows Vista
  Windows XP/2003
  Windows NT/2000
  Безопасность
  Windows 9x/ME
  Hardware
  Software
  Интернет
  BIOS
  Сеть
  Разное
 
Рекомендуем
 
 
Рейтинг статей...    
    Предел входящих подключений в Windows (128682)
    Как установить Windows XP на ноутбук или как добавить SATA-драйвер в дистрибутив Windows XP (69540)
    Из дома в офис - быстро, надежно и безопасно (55393)
    Всё, что надо начинающему хакеру (50398)
    Восстановление реестра Windows XP (23281)
    Второй сервис-пак для Windows XP: личный опыт (23151)
    Вызываем синий экран смерти Windows (18429)
    Настройка удаленного подключения между Windows 7 и Linux с помощью TightVNC (17427)
    Информация о proxy серверах (17279)
    Как устроена защита Windows Vista (17126)
 
 
Programmed by Ventura
 

 

Яндекс цитирования