Як влаштований інтернет

Дійсно, всі ми користуємося Інтернетом, для багатьох з нас він вже став частиною життя, а чи багато хто знає, як він улаштований? Розглядаючи такий глобальний питання, варто розділити всю розповідь, аж ніяк не претендує на всеосяжність і всеосяжність, на три частини: 1) комп'ютер користувача плюс його модем, 2) провайдер, 3) безліч серверів у всьому світі - з усіма сполуками і мережевими пристроями, які утворюють Всесвітню Мережу Інтернет.

Почати, звичайно, варто спочатку. Тобто, з себе. Тому як в більшості своїй ви і є кінцевий користувач, який сидить вдома за своїм комп'ютером, слухає "спів" свого модему під час установки зв'язку. Ви і є остання (серед мільйонів) точка Інтернету. "Першою" точки немає. Чому - про це окрема розповідь. Отже, починаємо з вас, як з самого крайнього.

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

Що взагалі відбувається після того, як ви вдома або на роботі (якщо у вас зв'язок з провайдером НЕ через локальну мережу) натискаєте кнопку "Встановити зв'язок"? Після набору номера, ваш модем [1] з'єднається з провайдерським [2]. З цього моменту краще розповідати, як це відбувається, дивлячись "з того кінця" - з провайдерського. До маршрутизатора [3] підчеплений модемний пул [2] (набір певної кількості модемів), маршрутизатор налаштовує їх на автовідпов. Після надходження дзвінка і успішного проходження handshaking (тобто настройки обох модемів, коли вони "домовляються" про швидкість і протоколі обміну), обидва модему, разом з лінією між ними, починають представляти вже просто транспорт для зв'язку маршрутизатор ваш комп'ютер. Все, про модеми з цього моменту вже можна не згадувати. Зв'язок встановлена.

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

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

Отже, Apache починає видавати ресурс з директорії, що містить файли www.irk.ru по порту 80. Що він повинен видати? Адже ви явно не вказували, що саме ви хочете, а просто написали назву сайту (правда, ще й явно або неявно вказали протокол верхнього рівня, за яким будете спілкуватися - HTTP). В Apache прописано, що за замовчуванням для 80 порту з такою-то директорії завжди видається файл index.html. Іноді це може бути default.html або ще що-небудь. Для кожного типу файлів існує свій заголовок, який надсилається вашому браузеру перед посилкою самого файлу (використовуючи протокол HTTP). Робиться це для того, щоб браузер розумів, що саме потрібно робити з цим файлом - показати його у вікні або запропонувати запис на диск (наприклад, something.zip - не треба показувати у вікні, а треба зберегти - звідки браузер повинен це дізнаватися?) .

Існують і інші вказівки від сервера браузеру, що йому робити з файлами, що знаходяться на сервері. Наприклад, коли ще тип файлів .mp3 не був достатньо відомий, заголовка на нього, природно, ніхто не прописував (це робиться окремо в конфігураціях сервера), тому ви могли помічати, що тикаючи на посилання, що вказує на файл з розширенням mp3, браузер його сумлінно вантажив вам у вікно, як файл html. Доводилося обходити це, затискаючи Shift при натисканні мишкою. Це, до речі, стандартний прийом вказівки браузеру записувати вказаний ресурс на свій диск незалежно від заголовка.

В принципі, на описі роботи Інтернету з боку користувача можна призупинитися і перейти до наступного пункту - робота систем провайдера ... Хоча, все настільки ув'язано, що при описі одного завжди доведеться зачіпати всі частини величезної і складної системи - Інтернету.

Схожі статті