Что такое стек протоколов? - PullRequest
       21

Что такое стек протоколов?

1 голос
/ 28 октября 2009

Я слышал этот термин много раз, когда сталкивался с некоторыми реализациями протокола, но не мог представить, как «протокол» относится к «стеку»? Используется ли здесь стек буквально как структура данных стека? Если да, то почему нам нужны стеки протоколов на клиенте и сервере для связи.

Ответы [ 4 ]

9 голосов
/ 28 октября 2009

TCP построен на IP.

IP построен на Ethernet.

Ethernet построен на уровнях напряжения и времени.

Таким образом, TCP Stack - это стек, который необходим для использования TCP.

4 голосов
/ 28 октября 2009

В этом смысле «стек» не связан со структурой данных стека - он просто ссылается на то, как каждый протокол построен на основе тех, которые находятся под ним.

3 голосов
/ 28 октября 2009

Это ссылка на многоуровневый подход к сети. Помните эталонную модель OSI? Модель TCP / IP? По сути, вы разбиваете сеть на уровни, и каждый уровень решает проблему сетевого взаимодействия на различном уровне абстракции от оборудования до приложения.

Каждый уровень имеет свой собственный набор протоколов, и каждый верхний уровень использует нижний уровень для выполнения своей работы. Например, как TCP (транспортный уровень) использует IP (сетевой уровень) для отправки своих фреймов. Когда вы берете все протоколы, используемые в сети для перемещения битов, вы «укладываете» их один поверх другого. Приложение видит протокол только в верхней части стека.

0 голосов
/ 28 октября 2009

«Стек протоколов» относится к конкретной используемой реализации. Так, например, каркас tcp обычно называют «стеком tcp». Здесь стек используется как термин, обозначающий различные «части» каркаса.

...