关键词搜索

源码搜索 ×
×

互联网协议 — TCP/IP 分层体系结构

发布2023-03-16浏览4140次

详情内容

目录

计算机网络的分层体系结构

计算机网络是一个非常庞大且复杂的系统,所以在设计之初就严格遵守着「分层」的设计理念。分层思想将庞大的问题细分为了若干个局部的小问题,具有分层隔离、易于实现和维护、以及能促进标准化工作的优势。其中「标准化」是促进互联网全球化的关键,各种各样的网络协议,就是标准化的结果。

目前,计算机网络的分层体系结构主要有 2 个:

  1. 偏学术研究的 OSI(Open Systems Interconnection Reference Model,开放系统互联基本参考模型)七层模型
  2. 偏实际应用的 TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/因特网协议)五层模型

之所有有此分别,源于国际化标准组织在制定的 OSI 的时候过于理想化,又正逢 TCP/IP 飞速发展已经覆盖了全球大部分地区。种种原因,导致 OSI 并没有取得市场化的认可,仅仅是获得了理论上的研究成果。

在这里插入图片描述

TCP/IP 分层体系结构

  1. L1(物理层):最底层的数据传输物理媒介。主要提供各种物理连接设备,如:网卡、串口卡、网线、光模块等等。
  2. L2(数据链路层):主要提供对物理层进行访问的各种接口卡的驱动程序,如:网卡驱动程序等。数据链路层通过 MAC 地址来定位本地子网中的主机。
  3. L3(网路层):负责将网络数据包传输到目的位置,通过 IP 地址来定位不同子网间的主机。
  4. L4(传输层):为应用程序之间提供端到端连接,通过 Port 来定位到主机上的应用程序。
  5. L5-7(应用层):顾名思义,主要由应用程序提供服务,是用来对传输数据进行语义解释的 “人机交互界面层”。

在这里插入图片描述

分层协议族

在这里插入图片描述

分层 PDU(Protocol Data Unit,协议数据单元)类型

  1. 物理层:比特(Bit);
  2. 数据链路层:数据帧(Frame);
  3. 网络层:数据包(Packet);
  4. 传输层
    • TCP 数据段(Segment)
    • UDP 数据报(Datagram)
  5. 应用层:消息/数据(Message/Data)

在这里插入图片描述

分层 PDU 的封装与解封装

逐层封装

在这里插入图片描述

逐层解封装

在这里插入图片描述

PDU 的传输方式

  • 单播(Unicast):在发送者和接收者之间实现点对点网络连接。如果发送者同时给多个的接收者传输相同的数据,也必须相应的复制多份相同的数据包。如果有大量接受者希望获得数据包的同一份拷贝时,将导致发送者负担沉重、延迟长、网络拥塞;

  • 组播(Multicast):在发送者和收者之间实现一点对多点的网络连接。如果发送者同时给多个接收者传输相同的数据,也只需复制一份相同的数据包。它提高了数据传送效率,减少了骨干网络出现拥塞的可能性。组播解决了单播和广播效率低的问题。当网络中的某些用户需求特定信息时,组播源(即组播信息发送者)仅发送一次信息,组播路由器借助组播路由协议为组播数据包建立树型路由,被传递的信息在尽可能远的分叉路口才开始复制和分发。

  • 多播(Multicast):1988 年 Steve Deering 首次在其博士论文中提出多播的概念。多播是 IPv6 数据包的 3 种基本目的地址类型之一,多播是一点对多点的通信,IPv6 没有采用 IPv4 中的组播术语,而是将广播看成是多播的一个特殊例子。

  • 广播(Broadcasting):是指在 LAN 内广播数据包,所有在 LAN 内的主机都将收到这些数据包。广播意味着向 LAN 内每台主机都投递一份数据包,不论这些主机是否愿意接收该数据包。所以广播的使用范围非常小,只在本地子网内有效,通过路由器和网络设备控制广播传输。

  • 泛洪:将某个端口收到的数据从除该端口之外的所有端口发送出去。泛洪操作广播的是普通数据帧而不是广播帧。

在这里插入图片描述

相关技术文章

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载