Протокол завантаження bootp

Семенов Ю.А. (ІТЕФ-МФТІ)
Yu. Semenov (ITEP-MIPT)

Так як програма завантаження знаходиться на прикладному рівні, і їй заборонено виправляти ARP-таблиці, реально доступний тільки другий шлях. Використання різних номерів портів для сервера і клієнта робить роботу системи більш ефективною. Коли відгук сервера є широкомовною, це дозволяє не переривати роботу прикладних програм, що працюють з номерами портів, відмінними від 68 (порт Bootp-клієнта). У Bootp відповідальність за надійність зв'язку лежить на ЕОМ-клієнті. При відсутності відгуку у відведений час клієнт повторює Bootp-запит. На IP-рівні, де дані не мають контрольної суми, цілісність повідомлення не гарантована. Bootp вимагає, щоб перевірка контрольної суми обов'язково проводилася на UDP-рівні (слід зауважити, що зазвичай це не є обов'язковим). Сервер читає UDP-дейтограмми через порт 67. Для підвищення надійності обмінів, як правило, блокується фрагментація дейтограмм.

Завантаження робочих станцій часто запускається кидком напруги електроживлення. При цьому кілька Bootp-процесів стартують одночасно. Для того щоб знизити ймовірність зіткнень, величина часу тайм-ауту вибирається випадково в інтервалі 0-4сек. Після кожного повторного запиту цей час подвоюється. Верхнє значення тайм-ауту одно 60сек. Для довідок час завантаження бездискового x-терміналу при сприятливих умовах може становити близько 20 сек.

BOOTP здійснює завантаження в два етапи. На першому етапі bootp лише постачає клієнта інформацією, де лежить потрібні йому дані. Далі ЕОМ-клієнт використовує протокол RFTP для отримання шуканого завантаження. Bootp-сервер не обов'язково повинен працювати на тій же машині, де зберігаються завантаження, але він повинен знати їх імена. Формат Bootp-повідомлень представлений на рис. 4.4.10.1.

Таблиця 4.4.10.1 Різновиди субполів і їх коди (BOOTP)

Довжина субполя в октетах

Схожі статті