Информация об изменениях

Сообщение Re[6]: TCP все... от 27.12.2018 12:52

Изменено 27.12.2018 13:02 netch80

Re[6]: TCP все...
Здравствуйте, Mr.Delphist, Вы писали:

MD>Здравствуйте, vsb, Вы писали:


vsb>>Распишешь эти 7 уровней? Вот у меня компьютер к роутеру подключен Ethernet-проводком. Отправляю я это сообщение POST-запросом на https://rsdn.org/. Давай по уровням выписывай 7 задействованных протоколов.


MD>1. Физический уровень: медь, оптика или wireless

MD>2. Канальный уровень: Ethernet
MD>3. Сетевой уровень: IP (четвёртый или шестой)
MD>4. Транспортный уровень: TCP
MD>5. Сеансовый уровень: SSL/TLS (для случая с http:// префиксом этот уровень не требуется)
MD>6. Уровень представления: plaintext или gzip или ещё какой набор правил по кодированию контента
MD>7. Прикладной уровень: HTTP

Не совсем так, мягко говоря.
В HTTP свой сеансовый уровень — собственно HTTP фрейминг. Здесь TLS даёт туннелирование, поэтому то, что над ним, работает своими слоями над 4-м уровнем (TLS даёт внутри себя поток октетов, такой же, как TCP). Но само TLS имеет полный комплект уровней — свой протокол и передаваемые данные, поэтому получается порядок:
4. Транспортный уровень: TCP
5(1). Сеансовый уровень: TLS — установление связи, выбор шифра, аутентификация, фрейминг, подписи пакетов...
6(1). Представление данных: TLS — разделение на порции
-- Тут инверсия за счёт туннелирования в TLS
5(2). Сеансовый уровень: HTTP — фрейминг (заголовки, тело).

Далее:

6(2). Представление данных: это не просто plaintext или gzip. Это HTML, CSS и прочие. Plaintext, gzip — это артефакты сеансового уровня (если они, говоря языком HTTP, transfer-coding, а не content-coding), это чисто вопрос, как передать конкретное содержимое — со сжатием или без.
И наконец
7. Прикладной уровень: это уже не сеть как таковая, это логика браузера или сервера.

Проблема в том, что заведомо некорректное разделение между L5-L6-L7 проникло даже в википедию, не говоря про множество прочих источников. А в результате получается, как в той же вики, что HTTP — на L7, а RTCP или H.245 (намеренно беру именно указанное в статье) — на L5.
Хотя разница между ними тут ничтожна.

MD>Милостивые господа, впереди новогодние праздники. Потратьте их с пользой, почитайте проф-литературу, если в обычные дни вам некогда.


Так и литература хромает нипадеццки. Тут у модели OSI проблемы на обоих концах, увы.
Re[6]: TCP все...
Здравствуйте, Mr.Delphist, Вы писали:

MD>Здравствуйте, vsb, Вы писали:


vsb>>Распишешь эти 7 уровней? Вот у меня компьютер к роутеру подключен Ethernet-проводком. Отправляю я это сообщение POST-запросом на https://rsdn.org/. Давай по уровням выписывай 7 задействованных протоколов.


MD>1. Физический уровень: медь, оптика или wireless

MD>2. Канальный уровень: Ethernet
MD>3. Сетевой уровень: IP (четвёртый или шестой)
MD>4. Транспортный уровень: TCP
MD>5. Сеансовый уровень: SSL/TLS (для случая с http:// префиксом этот уровень не требуется)
MD>6. Уровень представления: plaintext или gzip или ещё какой набор правил по кодированию контента
MD>7. Прикладной уровень: HTTP

Не совсем так, мягко говоря.
В HTTP свой сеансовый уровень — собственно HTTP фрейминг. Здесь TLS даёт туннелирование, поэтому то, что над ним, работает своими слоями над 4-м уровнем (TLS даёт внутри себя поток октетов, такой же, как TCP). Но само TLS имеет полный комплект уровней — свой протокол и передаваемые данные, поэтому получается порядок:
4. Транспортный уровень: TCP
5(1). Сеансовый уровень: TLS — установление связи, выбор шифра, аутентификация, фрейминг, подписи пакетов...
6(1). Представление данных: TLS — разделение на порции
-- Тут инверсия за счёт туннелирования в TLS
5(2). Сеансовый уровень: HTTP — фрейминг (заголовки, тело).

Далее:

6(2). Представление данных: это не просто plaintext или gzip. Это HTML, CSS и прочие. Plaintext, gzip — это артефакты сеансового уровня (если они, говоря языком HTTP, transfer-coding, а не content-coding), это чисто вопрос, как передать конкретное содержимое — со сжатием или без.
И наконец
7. Прикладной уровень: это уже не сеть как таковая, это логика браузера или сервера.

Проблема в том, что заведомо некорректное разделение между L5-L6-L7 (и понятие "протокола прикладного уровня" — на прикладном уровне, и даже на представлении данных, протоколов уже нет!) проникло даже в википедию, не говоря про множество прочих источников. А в результате получается, как в той же вики, что HTTP — на L7, а RTCP или H.245 (намеренно беру именно указанное в статье) — на L5.
Хотя разница между ними тут ничтожна.

MD>Милостивые господа, впереди новогодние праздники. Потратьте их с пользой, почитайте проф-литературу, если в обычные дни вам некогда.


Так и литература хромает нипадеццки. Тут у модели OSI проблемы на обоих концах, увы.