XDR (англ. External Data Representation) - міжнародний стандарт передачі даних в Інтернет і, використовується в різних RFC для опису типів. XDR дозволяє організувати не залежну від платформи передачу даних між комп'ютерами в гетерогенних мережах.

External Data Representation (XDR) - це стандарт IETF з 1995 року. Він дозволяє даним бути упакованими не залежно від архітектури, таким чином, дані можуть передаватися між гетерогенними комп'ютерними системами.

Серед програм, що використовують XDR можна назвати наступні:

Типи даних у XDR

[ред. | ред. код]

XDR вказує представлення для більшості типів даних в C. Закодована інформація містить тільки дані, вона не містить інформації про тип даних. Наприклад, після кодування 32-бітного integer, результатом буде 32-бітний integer в XDR. Не буде інформації про те, що це integer. Клієнти і сервери, що використовують XDR, повинні погоджувати тип даних повідомлень, якими вони обмінюються.

Мотивація використання XDR

[ред. | ред. код]

Різні комп'ютери можуть мати різне внутрішнє представлення інформації. Наприклад, 32-бітний Integer має 2 можливі форми подання:

Для деяких функцій WinSock, їхні аргументи (тобто параметри функцій), повинні зберігатися у зворотному порядку.

- Програма перетворює повідомлення зі свого внутрішнього представлення до XDR для подальшої передачі. Це називається кодуванням.

- Одержувач перетворює отримане повідомлення з XDR у власне представлення. Це називається декодування.

Програмна підтримка використання XDR

[ред. | ред. код]

Здійснення повідомлення в XDR

[ред. | ред. код]

- Ім'я (рядок символів) -ID (ціле) -Сукупний GPA (floating-point number)

Наприклад: xdrmem_create () повертає вказівник на порожній потік.

Стандартні програми перетворення в XDR

[ред. | ред. код]

Одержання повідомлення в XDR

[ред. | ред. код]

Посилання

[ред. | ред. код]