Курс лекцій „Комп’ютерні мережі

Вид материалаКурс лекцій

Содержание


Протокол ІМАР4.
Destination Unreachable Message
Source Quench Message
Redirect Message
Echo Message
Timestamp Message
SNMP (Simple Network Management Protocol, простий протокол керування мережею)
Trap (ловушка)
2.2.5. Протокол НТТР.
WWW (World Wide Web, Всесвітня павутина)
Сервіси WWW
URI (Uniform Resource Identifier, Ідентифікатор ресурсу), URL (Uniform Resource Locator, Місцезнаходження ресурсу), URN (Uniform
HyperText Markup Language (HTML)
Common Gateway Interface (CGI)
Принципи побудови HTTP-з'єднання
Опис протоколу HTTP
2.3. Діагностика та управління мережею з допомогою утиліт на основі протоколу ICMP.
Подобный материал:
1   2   3   4   5   6   7   8   9

Протокол ІМАР4. Протокол ІМАР4 (Internet Message Access Protocol, version 4, протокол доступу до електронної пошти Інтернет) дозволяє клієнтам отримувати доступ і маніпулювати повідомленнями електронної пошти на сервері.

Суттєвою відмінністю прототолу ІМАР4 від РОР3 є те, що ІМАР4 підтримує роботу з системою каталогів (або папок) повідомлень. ІМАР4 дозволяє управляти каталогами (папками) віддалених повідомлень так само, як ніби вони були розташовані на локальному комп’ютері. ІМАР4 дозволяє клієнту створювати, видаляти та перейменовувати поштові скриньки, перевіряти наявність нових повідомлень та видаляти старі. Завдяки тому, що ІМАР4 підтримує механізм унікальної ідентифікації кожного повідомлення у поштовій папці клієнта, він дозволяє читати з поштової скриньки лише повідомлення, які відповідають певним умовам або їх частині, міняти атрибути окремих повідомлень та переміщати їх.

Структура папок значною мірою залежить від типу поштової системи, але у будь-якій системі у клієнта є спеціальний каталог INBOX, куди потрапляють всі повідомлення, що поступають клієнту.

Протокол ІМАР4 працює поверх транспортного протокола, який забезпечує надійний і достовірний канал передачі даних між клієнтом і сервером ІМАР4. При роботі по ТСР ІМАР4 використовує 143-й порт.

Принцип передачі даних ІМАР4 такий же, як і у інших подібних протоколів. Спочатку клієнт та сервер обмінюються привітаннями. Потім клієнт відправляє на сервер команди та дані. Сервер передає клієнту відповіді на обробку команд і даних. Після завершення обміну канал закривається.

Важливою особливістю протоколу ІМАР4 є те, що взаємодія клієнта з сервером не будується за принципом „запитання-відповідь”. Клієнт може відправити нову команду, не чекаючи відповіді на попередню, якщо ці команди не взаємопов’язані, або відповідь на одну не вплине на результат іншої. Сервер може обробляти кілька команд одночасно і відповідати на кожну з них по її закінченню. При цьому відповідь на більш пізню команду може поступити раніше.

58

2.2.4. Протоколи моніторингу та управління мережею SNMP, ICMP.

Протокол ICMP. Протокол ІР використовується для обміну один з одним дейтаграмами. У процесі передачі дейтаграм можуть виникати ситуації, коли шлюзу або хосту необхідно передати відправнику якусь інформацію службового характеру, або при передачі дейтаграми виникають помилки, про які необхідно повідомити відправнику або іншому вузлу. Для передачі цих повідомлень призначено протокол ICMP (Internet Control Message Protocol, протокол передачі управляючих повідомлень). Він використовує протокол ІР у якості протокола нижнього рівня, але за своєю структурою і призначенням ICMP є частиною ІР і зобов’язаний підтримуватися всіма ІР-модулями.

Основне призначення управляючих повідомлень – це забезпечити систему зворотного зв’язку між компонентами мережі, тим самим роблячи ІР більш надійним протоколом, хоча це і не гарантує, що дейтаграми будуть доставлені за призначенням, а управляючі повідомлення – повертатися.

ICMP повідомлення формуються з використанням заголовка ІР-пакету, який передує йому без поля опцій та вирівнювання:

0 8 16 31

Type

Code

Checksum

TD...

Ідентифікатор типу повідомлення ICMP міститься у полі Type. Різні типи повідомлень використовуються для різних цілей. Поле Code заголовка також носить службовий характер і забезпечує додаткову ієрархію повідомлень даного типу. Величина контрольної суми обчислюється, починаючи з поля Type. За полем контрольної суми розташовуються поля повідомлення – TD, формат яких залежить від типу повідомлення.

Характеристики деяких типів ICMP-повідомлень:

Type

Тип повідомлення

3

Destination Unreachable Message

Повідомлення цього типу відправляється:
  • якщо, у відповідності до інформації таблиці маршрутизації шлюза, мережа (або вузол), куди відправляється дейтаграма, недосяжна
  • якщо на вузлі отримувача ІР-модуль не може передати дейтаграму протоколу верхнього рівня (наприклад, невірно вказано порт ТСР)
  • якщо дейтаграму фрагментовано, але ІР-модуль хоста отримувача не дозволяє приймати фрагментовані дейтаграми

Хосту віправника або шлюзу передається ІР-заголовок недоставленої дейтаграми та 64 байти заголовка протокола верхнього рівня.

4

Source Quench Message

Повідомлення цього типу відправляється:
  • якщо шлюз або хост отримувача не може опрацювати і знищує отриману дейтаграму. При отриманні такого повідомлення відправник повинен зменшити швидкість передачі до тих пір, поки подібні повідомленні перестануть приходити.

Хосту віправника або шлюзу передається ІР-заголовок недоставленої дейтаграми та 64 байти заголовка протокола верхнього рівня.

5

Redirect Message

Повідомлення цього типу відправляється:
  • при виявленні більш оптимального способу маршрутизації дейтаграми на основі таблиці маршрутизації шлюза
  • якщо в дейтаграмі вказано спосіб її маршрутизації, дане повідомлення не відправляється.

Хосту віправника або шлюзу передається ІР-заголовок недоставленої дейтаграми 64 байти заголовка протокола верхнього рівня та адреса шлюзу, куди слід відправляти дейтаграми для більш оптимальної маршрутизації.

8

Echo Message

Повідомлення цього типу вірпавляється:
  • в якості відповіді на дані, які поступили з повідомленням

Хосту відправника або шлюзу передається номер пакету, ідентифікатор і дані.

11

Time Exceeded Message

Повідомлення цього типу відправляється:
  • при обробці дейтаграми шлюзом виявилося, що її TTL=0
  • при складанні дейтаграми з фрагментів виявилося, що частина з них містить TTL=0

Хосту віправника або шлюзу передається ІР-заголовок недоставленої дейтаграми та 64 байти заголовка протокола верхнього рівня.

13

Timestamp Message

Повідомлення цього типу відправляється
  • при різних повідомленнях про події, що відбулися в системі

Хосту відправник або шлюзу передається службовий номер пакету, ідентифікатор і три часові мітки (час побудови повідомлення, прибуття та його обробки отримувачем)

Протокол SNMP (Simple Network Management Protocol, простий протокол керування мережею) призначений для роботи мережевих керуючих станцій. Він дозволяє керуючим станціям збирати інформацію про „стан справ” у підконтрольній мережі.

Система керування мережею на базі протоколу SNMP являє собою комплекс керуючих станцій мережі та елементів мережі – об’єктів, якими керують. Керуючі станції виконують додатки, які контролюють і управляють діями „агентів” SNMP, розташованих на мережевих елементах. Ними можуть бути такі об’єкти, як хости, шлюзи, сервери та інші, на яких можуть виконуватися модулі мережевих агентів.

Агентами в SNMP називаються програмні модулі, які працюють на керованих об’єктах – елементах мережі. Агенти збираються інформацію про керовані об’єкти, на яких вони працюють, і розміщують її у своїх локальних змінних, які є складовими елементами єдиної інформаційної бази даних управління мережею – MIB (Management Information Base).

Протокол SNMP використовується для обміну керуючою та контрольною інформацією між керуючими станціями та елементами мережі. Крім того, з допомогою протоколу SNMP локальна інформація стає доступною для систем керування мережею NMS (Network Management System) та системи керування базою даних МІВ.

Керований об’єкт може бути вузлом будь-якого типу, що знаходиться у будь-якій мережі: це може бути хост, службовий пристій зв’язку, принтер, маршрутизатор, міст або концентратор.

Керуючі системи NMS як правило працюють на досить потужних комп’ютерах, які мають швидкодіючі процесори, значний об’єм пам’яті диска та високопродуктивну периферію.







З метою зменшення навантаження на систему та трафіка керуючих повідомлень, обмін SNMP-повідомленнями використовує сервіс UDP-дейтаграм.

Більшість операцій протоколу SNMP виконуються з метою отримання або запису певної інформації. Звернення за інформацією здійснюється напряму до агенту ресурса.

Повідомлення SNMP верхнього рівня протоколу складається із наступних частин:
  • Ідентифікатора версії протоколу (version)
  • Імені спільноти (community name)
  • Структури даних (data)
  • Параметрів аутентифікації.

Ім’я спільности призначає середовище доступу для змінних NMS, які використовують це ім’я. Спільнота – це, по суті, набір правил, яким підпорядковується певна група SNMP-агентів, які працюють з певними об’єктами.

Інформаційна частина повідомлення містить операцію SNMP та пов’язані з нею операнди, які визначають реалізації об’єктів, включених в дану транзакцію SNMP.

У протоколі SNMP визначено 4 операції:
  • Get (отримати) – отримує будь-яку реалізацію об’єкта від агента
  • Get-next (отримати наступний) – отримує наступнв реалізацію об’єкта із таблиці або списку, які знаходяться в даному агенті
  • Set (установити) – встановлює реалізації об’єкта в межах якогось агента
  • Trap (ловушка) – використовується агентом для асинхронного інформування NMS про якусь подію.

При обміні повідомленнями SNMP-агенти використовують механізм аутентифікації відправника та отримувача повідомлень. Ці механізми являють собою набір правил, згідно з якими модулі окремих спільнот ідентифікують один одного.

59

2.2.5. Протокол НТТР.

HTTP (Hypertext Transfer Protocol, Протокол передачі гіпертексту) являє собою протокол прикладного рівня. HTTP забезпечує високопродуктивний механізм тиражування інформації мультимедійних систем незалежно від типу представлення даних. Протокол побудований за об'єктно-орієнтованою технологією і може використовуватися для рішення різних задач, наприклад, роботи із серверами імен або керування розподіленими інформаційними системами. На даний момент найбільш розповсюдженою є специфікація протоколу "НТТР/1.0".

WWW (World Wide Web, Всесвітня павутина) складається з комп'ютерів, що надають графічний доступ до інформації, що зберігається на них. Здатність зберігати мультимедійну інформацію, таку як відео, аудіо, картинки і звуки, робить WWW унікальним засобом тиражування інформації. WWW-сервер являє собою комп'ютер, на якому працює певне програмне забезпечення, що надає можливість користувачам Internet приєднуватися і користуватися WWW-ресурсами цього комп'ютера для пошуку і вибору інформації.

З 1990 року протокол HTTP використовується інформаційною системою WWW у якості одного з основних протоколів роботи.

Сервіси WWW

Протокол HTTP дозволяє одержувати доступ до ресурсів і сервісів WWW-серверів. Для уніфікації доступу до багатофункціональних ресурсів мережі, WWW-сервери підтримують комплекс інтерфейсів, що дозволяють структурувати рівні і методи роботи з різними ресурсами мережі. По суті, кожний з інтерфейсів являє собою об'єкт мережі зі своїми методами і своєю структурою. Узгоджена взаємодія цих об'єктів і складає вся розмаїтість світу WWW.

URI (Uniform Resource Identifier, Ідентифікатор ресурсу), URL (Uniform Resource Locator, Місцезнаходження ресурсу), URN (Uniform Resource Name, Ім'я ресурсу) — різні імена того самого сервісу, що призначений для ідентифікації типів, методів роботи і комп'ютерів, на яких знаходяться визначені ресурси, доступні через Internet. Цей сервіс складається з трьох частин:
  • Схема. Ідентифікує тип сервісу, через який можна одержати доступ до сервісу, наприклад FTP або WWW-сервер
  • Адреса. Ідентифікує адресу (хост) ресурсу, наприклад, www.ripn.net
  • Ім'я або шлях доступу. Ідентифікує повний шлях до ресурсу на обраному хості, що ми хочемо використовувати для доступу до ресурсу, наприклад, /home/images/imagel.gif

Іншими словами, URL, URI і URN — це спосіб для уздженої ідентифікації ресурсів у Internet.

Як правило, коли мають на увазі комп'ютер, на якому розташований ресурс, використовують значення URL або URN, а коли позначають ресурс цілком (тип, хост, шлях) використовують URI

URI ресурсу може містити не тільки ім'я ресурсу, але і параметри, необхідні для його роботи. Ім'я ресурсу відділене від рядка параметрів символом "?". Рядок параметрів складається з лексем, поділюваних символом "&". Кожна така лексема складається з імені параметра і його значення, розділених символом "=". Символи, що не входять у набір символів ASCII, заміняються знаком "%" і шістнадцятковим значенням цього символу. Наприклад, символ пробілу " " заміняється на "%20".

HyperText Markup Language (HTML) — це мова опису інформації, яка міститься на WWW. HTML-файл являє собою звичайний ASCII-текст, що містить спеціальні коди, що позначають приєднану до файлу графічну, відео, аудіо інформацію або виконувані коди середовища перегляду інформації — Web browser — Java Script, Java Classes. Уся ця інформація зберігається у файлах на WWW-сервері. Коли Web browser одержує доступ до цього файлу, він спочатку інтерпретує закодовану в HTML-файлі інформацію, а потім представляє для користувача всю інформацію в графічному або текстовому виді Web-сторінок.

НТ у HTML позначає HyperText, основну концепцію розміщення інформації на WWW. HyperText або hyperlinks (гіперпосилання), містить зв’язки (URL) усередині текстового документа, що дозволяють користувачеві швидко переходити від однієї частини документа до іншої або до іншого документа.

Common Gateway Interface (CGI) — це стандарт розширення функціональності WWW, що дозволяє WWW-серверам виконувати програми, аргументами роботи яких може керувати користувач. WWW-сервери дозволяють запитувати статичні HTML Web-сторінки і переглядати їх за допомогою We-браузерів. CGI розширює можливості користувача і дозволяє виконувати програми, асоційовані з даною Web-сторінкою і надає можливість одержання динамічної інформації з WWW-сервера. Наприклад, користувач такого WWW-сервера може одержати саму останню інформацію про погоду, виконавши програму, що запитує прогноз погоди на даний момент із бази даних.

CGI-інтерфейс, в основному, служить як шлюз між WWW-сервером і зовнішніми програмами, що виконуються. Він одержує запит від користувача, передає його зовнішній програмі і потім повертає результати користувачеві через динамічно побудовану Web-сторінку. При цьому побудовані Web-сторінки можуть докорінно відрізнятися друг від друга, якщо вони побудовані в залежності від переданих користувачем параметрів.

Найчастіше CGI використовується для вибірки інформації з баз даних. Користувач уводить запит у Web-сторінку; WWW-сервер його читає, передає відповідному додаткові або запускає процес для його обробки, одержує результат запиту і показує його користувачеві.

Механізм CGI цілком платформно-незалежний і може передавати дані між будь-якими WWW-серверами, що підтримують механізм CGI. Оскільки CGI заснований на файлах, що виконуються, немає обмежень на тип програми, що буде виконуватися в CGI. Програма може бути написана на будь-якій з мов програмування, що дозволяє створювати модулі, що виконуються, C/C++, FORTRAN, Pascal, Visual Basic або PowerBuilder. CGI-програма також може бути написана з використанням командних мов операційних систем, таких як Perl або Shell.

Останнім часом бурхливо розвивається тенденція активних серверних сторінок, так званих ASP. По суті це використання того ж самого стандарту CGI, тільки на рівні об’єктно-орієнтованого підходу до побудови Web-сторінок.

Принципи побудови HTTP-з'єднання

Протокол HTTP побудований по моделі "запит/відповідь”. Іншими словами, клієнт установлює з'єднання із сервером і відправляє запит. У ньому зазначений тип запиту, URL (URI, URN), версія протоколу HTTP (оскільки формат запиту може мінятися від версії до версії) і зміст запиту: інформація клієнта (параметри) і, можливо, супровідна інформація або тіло повідомлення. Сервер HTTP відповідає рядком статусу обробки запиту, що містить: версію підтримуваного протоколу, код обробки запиту або код помилки й інформацію, що повертається на запит. Інформація тіла повідомлень як клієнта, так і сервера повинна бути представлена в МІМЕ-форматі.

HTTP-з'єднання ініціюється користувачем і складається з запиту до ресурсу визначеного сервера. У найпростішому випадку, з'єднання являє собою потік даних між клієнтом — ініціатором з'єднання і сервером (рис.1).





Рис. 1. Найпростіша схема взаємодії між клієнтом і сервером HTTP

У більш складній ситуації, у процесі передачі даних беруть участь кілька проміжних об'єктів (Рис.2). Вони можуть бути трьох видів: proxy (проміжний агент), gateway (шлюз) і tunnel (тунель):

Proxy являє собою проміжний агент, що приймає запит клієнта і, у залежності від своїх настройок, змінює частину або все повідомлення запиту і передає переформатований запит далі по ланцюжку, наприклад, іншим серверам або запитуваному серверові. У момент прийняття запитів Proxy може працювати як сервер, а при передачі запитів — як клієнт. Proxy часто використовується як ретранслятор протоколів внутрішньої мережі в Internet і, як правило, являє собою "головні ворота" виходу користувачів внутрішньої мережі назовні.

Gateway (шлюз) являє собою проміжний сервер. На відміну від proxy, шлюз приймає запити клієнта, начебто він і є запитуваний сервер і передає їх далі. Робота шлюзу зовсім прозора для клієнта. Шлюз, як правило, використовується як ретранслятор запитів або протоколів зовнішньої мережі у внутрішню, до ресурсів сервера, тобто це "головні ворота" входу користувачів зовнішньої мережі.

Tunnel (тунель) являє собою програму-посередник між двома з'єднаннями. Тунелі використовуються в тих випадках, коли необхідно організувати потік даних через який-небудь проміжний об'єкт (наприклад, той же proxy), що не може інтерпретувати структуру потоку даних.


Рис.2. Схема взаємодії клієнта і сервера через проміжні об'єкти мережі

На схемі показане з'єднання між клієнтом і сервером із трьома проміжними об'єктами ("А", "В" і "С"). Повідомлення запиту і відповіді повинні пройти через чотири окремих канали, а кожний із проміжних об'єктів може одночасно підтримувати кілька з'єднань. Наприклад, "В" може одержувати одночасно запит як від "А", так і від інших клієнтів, і передавати повідомлення на "С" і на інші сервери.

Кожний з об'єктів — учасників з'єднання, за винятком тунелю, може підтримувати внутрішній кеш запитів і відповідей.

Кеш являє собою локальну базу даних повідомлень відповідей і систему керування цією базою. Кеш зберігає відповіді серверів і повертає їх на запит клієнта, не передаючи запит наступному об'єктові ланцюжка з'єднання (рис.3).

Ефект від використання кеша полягає в тому, що він зменшує довжину ланцюжка з'єднання і, тим самим, зменшує час з'єднання.




Рис. 3. Схема використання кеша

На представленій схемі об'єкт "В" передає відповідь на запит зі свого кеша, що був побудований на підставі даних попереднього з'єднання.

Однак необхідно пам'ятати, що далеко не усі відповіді можуть кешуватися. Деякі запити можуть містити параметри, що накладають обмеження на роботу кеша.

HTTP - це протокол прикладного рівня, що, як правило, працює поверх транспортного протоколу TCP/IP, хоча, як усякий протокол прикладного рівня, може працювати на будь-якому іншому транспорті, який забезпечує надійне і достовірне з'єднання. При роботі з TCP сервер HTTP використовує, як правило, порт 80, хоча можливо використання й інших портів.

HTTP-з'єднання повинне відкриватися клієнтом перед кожним запитом і закриватися сервером після відправлення відповіді. Як клієнт, так і сервер повинні мати на увазі, що з'єднання може бути передчасно закрито або користувачем, або після закінчення часу з'єднання, або через збій системи.

Опис протоколу HTTP

HTTP, імовірно, найпростіший із протоколів прикладного рівня, як по синтаксису, так і по принципах побудови з'єднання.

Після встановлення TCP-каналу між клієнтом і сервером HTTP, клієнт відправляє на сервер запит. Загальна структура запиту виглядає наступним чином:

(Тут і далі позначає символ пробілу, /* line */ — позначення порожнього рядка, що закінчується парою — повернення каретки.)

METHOD Request-URI HTTP-Version [General-Header]

Date

Pragma

[Request-Header]

Authorization

From

If-Modified-Since

Referer

User-Agent

[Entity-Header]

Allow

Content-Encoding

Content-Length

Content-Type

Expires

Last-Modified

extension-header

/* line */

[Entity-Body]

Поле "METHOD" містить ідентифікатор методу звертання до HTTP-сервера. Метод визначає склад і структуру заголовків запиту, вид передачі і структуру параметрів запиту. Найбільш розповсюдженими методами є "GET" і "POST". Іноді також використовуються методи "HEAD", "DELETE", "PUT".
  1. Метод "GET" запитує інформацію про ресурс, розташований за заданим URI. Як правило, запитувана інформація являє собою HTML, TXT або інший текстовий файл. Якщо URI асоційований з файлом, що виконується — сервісом CGI, процес CGI буде запущений, і клієнтові будуть передані результати стандартного потоку виводу цього процесу. Якщо ресурсові URI для роботи необхідні параметри, вони повинні бути зазначені в URI ресурсу.
  2. Метод "POST", як правило, використовується для передачі клієнтом на сервер даних, що повинні бути оброблені ресурсом, зазначеним у URI. Даний метод найчастіше використовується для роботи з CGI-сервісом. Метод "POST" передає параметри ресурсові URI у тілі повідомлення, тому при його використанні не потрібно дотримувати ніяких обмежень на довжину переданого рядка параметрів. Відповіді на запити методом POST, як правило, не кешуються.
  3. Метод "HEAD" аналогічний методові "GET", за винятком того, що клієнту повертається тільки заголовок повідомлення відповіді (скорочений "GET"). Цей метод, в основному, використовується для тестування гіперпосилань і перевірки доступу до ресурсів.
  4. Метод "DELETE" використовується для видалення ресурсу певного URI.
  5. Метод "PUT" використовується, коли клієнт бажає зберегти переданий на сервер ресурс з ідентифікатором URI.

Також протокол HTTP надає простий механізм аутентифікації користувача ресурсів WWW-сервера. Механізм побудований на обміні інформацією аутентифікації між клієнтом і сервером ресурсу. Механізм дозволяє вибирати схему аутентифікації і рівень таємності переданих даних.

60

2.3. Діагностика та управління мережею з допомогою утиліт на основі протоколу ICMP.

На основі протоколу ІСМР працюють такі популярні утиліти управління мережею, як PING та TRACEROUTE.

PING (Packet Internetwork Groper, пакетний міжмережевий щуп) використовується для виявлення елементарного мережевого з’єднання у ТСР/ІР мережах.

Для перевірки активності віддаленого хоста PING використовує серію ІСМР ехо-повідомлень, які визначають період повернення дейтаграми від вказаного хоста і тим самим дозволяють „прослухати” мережевий шлях до нього. Утиліта PING входить у склад практично всіх пакетів програмного забезпеченння для роботи з сімейством протоколів ТСР/ІР. Параметри роботи утиліти задаються в якості аргументів командного рядка виклику програми PING. Крім адреси або імені хоста, який перевіряється, що є обов’язковим параметром, користувач може встановити, наприклад, час очікування відповіді, інтервали відправки запитів, кількість пакетів запитів, розмір пакетів та інші опції, які можуть підтримуватися програмою у залежності від її версії та використовуваної операційної системи.

У роботі утиліти TRACEROUTE використовуються протоколи UDP та ІСМР. Утиліта TRACEROUTE дозволяє переглядати шлях маршрутизації пакета від користувача до віддаленого хоста. Вона часто використовується як засіб відладки маршрутизації пакетів із локальної мережі організації у Internet. Принцип роботи утиліти полягає у наступному.

Утиліта TRACEROUTE відправляє на неіснуючий порт віддаленого хоста послідовність UDP-дейтаграм. За замовчуванням, відправляються 3 дейтаграми, кожна з них містить параметр TTL=1. Оскільки цей параметр зменшується на 1 на кожному вузлі маршрутизації, перший же маршрутизатор знищить дані дейтаграми і відправить відправнику повідомлення. Вони являють собою ІСМР-повідомлення Time Exceeded Message (ТЕМ) і містять часову мітку надходження повідомлення та адресу маршрутизатора.

Після цього TRACEROUTE відправляє UDP-повідомлення із параметром TTL=2, тобто ці повідомлення повинен знищити другий маршрутизатор на шляху до вузла призначення, далі з параметром TTL=3, і т.д. Цей процес продовжується до тих пір, поки дейтаграма не буде доходити до віддаленого хоста. Після того, як чергова дейтаграма, пройшовши всі попутні маршрутизатори, дійде до вузла призначення, хост не зможе її обробити, оскільки в ній вказано неіснуючий порт, та згенерує повідомлення ICMP Destination Unreachable. Це повідомлення служить командою для припинення роботи TRACEROUTE.

У процесі обміну UDP та ІСМР повідомленнями формується таблиця затримок маршрутизації пакетів на кожному із вузлів і на шляху до віддаленого хоста в цілому. Ця інформація і виводиться на екран користувача. Утиліта TRACEROUTE входить до складу майже всіх пакетів програмного забезпечення для роботи із сімейством протоколів ТСР/ІР. Параметри роботи утиліти задаються у якості аргументів командного рядка виклику програми. Крім адреси (або імені) хоста, до якого досліджується канал, яка є обов’язковим параметром, користувач може встановити, наприклад, максимальне значення TTL ІР-пакетів (за замовчуванням цей параметр рівний 30), кількість UDP-дейтаграм (за замовчуванням – 3), час очікування відповіді, номер неіснуючого порта (за замовчуванням – 33434).