Gri*_*fin 4 networking internet tcp ip
我读过的每个教程都讨论各层如何相互“通信”,但从未提及硬件/软件接收、添加和发送每层控制数据的内容。
哪块硬件和软件接收/封装/发送与 IP/TCP 每层相关的数据?
例如,我的路由器工作在哪一层?什么软件可以将文本文件转换为 SMTP?我的计算机中的什么/哪里有用于流量控制/传输的软件?
Layer 1 - Physical - Signaling
Layer 2 - Data Link - Switching (Ethernet frames)
Layer 3 - Network - Routing (IP packets)
Layer 4 - Transport - Multiplexing (TCP segments)
Layer 5 - Session
Layer 6 - Presentation
Layer 7 - Application
Run Code Online (Sandbox Code Playgroud)
之所以没有提及具体的软件/硬件实现,是因为这是开发标准的全部目的。每一层并不关心上面和下面的层如何处理其功能,只要数据按照标准呈现即可。它可以是软件、硬件、固件,通过机械非电子设备,甚至可以是人类手动的(一个不严肃的例子,谷歌“基于信鸽的TCP”)。
在现实世界中,所涉及的具体软件和硬件也有很大差异。完全有可能在软件中执行所有功能(便宜但速度慢)。也完全有可能在硬件中完成所有这些(快速但昂贵)。专用网络设备(例如 Cisco 路由器等)将在硬件中执行比配置为路由器的运行 Linux 的 PC 更多的功能。
一般来说,第 1 层和大多数第 2 层保证在硬件中执行。第 3 层主要在企业级路由器(例如 Cisco 的路由器)上的硬件中完成。许多 NIC 都具有称为“TCP 卸载引擎”的功能,可以通过 NIC 上的硬件加速大多数第 3 层和第 4 层。沃尔玛的消费级路由器通常完全通过软件来完成路由功能。第 5、6 和 7 层通常不是在硬件中完成的,如果是,则这样做的设备被称为“加速器”。
归档时间: |
|
查看次数: |
6109 次 |
最近记录: |