什么是协议栈?

时间:2009-10-28 14:03:42

标签: networking terminology

当我遇到一些协议实现时,我多次听到这个术语,但无法想象'协议'如何与'堆栈'相关?这里使用的堆栈字面上是堆栈数据结构吗?如果是这样,为什么我们需要在客户端和服务器上进行堆栈协议进行通信。

4 个答案:

答案 0 :(得分:9)

TCP建立在IP上。

IP建立在以太网上。

以太网建立在电压电平和时序上。

因此,TCP堆栈是您需要使用TCP的堆栈。

答案 1 :(得分:4)

从这个意义上说,“堆栈”与堆栈数据结构无关 - 它只是指每个协议如何构建在它下面的那些协议上。

答案 2 :(得分:3)

它是对网络分层方法的参考。还记得OSI参考模型吗? TCP / IP模型?基本上,您将网络分解为多个层,每个层解决了从硬件到应用程序的不同抽象级别的网络问题。

每个层都有自己的协议集,每个更高层使用较低层执行其工作。就像TCP(传输层)如何使用IP(网络层)发送其帧一样。当您使用网络中使用的所有协议移动位时,您将它们“堆叠”在另一个之上。应用程序只能看到堆栈顶部的协议。

答案 3 :(得分:0)

“协议栈”是指使用的具体实现。例如,tcp框架通常被称为“tcp堆栈”。这里堆栈用作表示框架的各种“部分”的术语。