文章目录
计算机网络模型
一、体系结构
计算机网络的各层及其协议的集合被称为网络的体系结构,按照不同的维度,其常被分为七层、五层、四层网络结构:
1.1 七层网络模型
开放式系统互联模型(Open System Interconnection Model,简称为 OSI 模型)是一种概念模型,由国际标准化组织提出,并试图成为计算机在世界范围内互连为网络的标准框架,它具有七层网络结构.
1.2 四层网络模型
互联网协议套件(Internet Protocol Suite,IPS)是多个网络传输协议的集合,它为网际网络的基础通信提供架构支撑。
由于该协议族中最核心的两个协议分别为 TCP(传输控制协议)和 IP(网际协议),因此它也被称为 TCP/IP 协议族(TCP/IP Protocol Suite 或 TCP/IP Protocols),简称 TCP/IP,它具有四层网络结构 。
1.3 五层网络模型
OSI 七层网络模型由国际标准化组织进行制定,它是正统意义上的国际标准。但其实现过于复杂,且制定周期过长,在其整套标准推出之前,TCP/IP 模型已经在全球范围内被广泛使用,所以 TCP/IP 模型才是事实上的国际标准。
TCP/IP 模型定义了应用层、传输层、网际层、网络接口层这四层网络结构,但并没有给出网络接口层的具体内容,因此在学习和开发中,通常将网络接口层替换为 OSI 七层模型中的数据链路层和物理层来进行理解,这就是五层网络模型:
- 应用层 (application layer):直接为应用进程提供服务。应用层协议定义的是应用进程间通讯和交互的规则,不同的应用有着不同的应用层协议,如
HTTP协议(万维网服务)、FTP协议(文件传输)、SMTP协议(电子邮件)、DNS(域名查询)等。 - 传输层 (transport layer):有时也译为运输层,它负责为两台主机中的进程提供通信服务。该层主要有以下两种协议:
传输控制协议
:提供面向连接的、可靠的数据传输服务,数据传输的基本单位是报文段(segment);用户数据报协议
:提供无连接的、尽最大努力的数据传输服务,但不保证数据传输的可靠性,数据传输的基本单位是用户数据报。
- 网络层 (internet layer):有时也译为网际层,它负责为两台主机提供通信服务,并通过选择合适的路由将数据传递到目标主机。
- 数据链路层 (datalink layer):负责将网络层交下来的 IP
数据报封装成帧,并在链路的两个相邻节点间传送帧,每一帧都包含数据和必要的控制信息(如同步信息、地址信息、差错控制等)。 - 物理层 (physical Layer):确保数据可以在各种物理媒介上进行传输,为数据的传输提供可靠的环境。
二、物理层
物理层考虑的是如何在各种媒介上传输数据,它定义了与传输媒介相关的接口特性,如:
机械特性
:指明接口所用的接线器的形状和尺寸、引线数目和排列、固定和锁定装置等。电气特性
:指明在接口电缆的各条线上出现的电压的范围。功能特性
:指明某条线上出现的某一电平的电压的意义。规程特性
:指明对于不同功能的各种可能事件的出现顺序。
2.1 传输媒介
物理层并不指具体的传输媒介,相反物理层希望能够尽量屏蔽不同媒介间的差异。这些传输媒介可以分为以下两类:
导引型传输媒介:信号被导引沿着固体媒介进行传播,如双绞线、同轴电缆、光缆。
非导引型传输媒介:信号在自由空间内进行传播,如短波通信、微波通信。
2.2 信道分类
信道是指信息传输的基本通道,它可以分为以下三类:
单工信道:只能有一个方向的通信而没有反方向的通信;
半双工信道:通信的双方都能发送信息,但双方不能同时发送或接收信息。
全双工信道:通信的双方可以同时发送和接收信息。
2.3 信道复用
信道复用是信息传输当中最常使用的技术,用于提高信息传输的效率,根据采用技术的不同,可以分为以下几类:
- 频分复用
频分复用是将用于传输信道的总带宽划分成若干个子频带(或称子信道),每个子信道传输一路信号:
- 时分复用
时分复用是指采用同一物理连接的不同时段来传输不同的信号:
如上图所示,在一个时分复用帧中,不同用户的信号周期性出现,如果某个用户处于闲置状态,则其对应的帧上也会出现空闲:
为了解决时分复用的这个缺点就产生了统计时分复用。
- 统计时分复用
在统计时分复用(Statistic TDM)模式下,各用户将数据发送到集中器的输入缓存中,然后由集中器进行顺序扫描并放入到 STDM 帧中:
4. 波分复用
波分复用是将两种或多种不同波长的光载波信号在发送端经复用器汇合在一起,并耦合到光线路的同一根光纤中进行传输;在接收端,经分用器将各种波长的光载波分离,然后由光解调器作进一步处理以恢复原信号:
5.码分复用
码分复用是靠不同的编码来区分各路原始信号的一种复用方式。
三、数据链路层
3.1 基本功能
- 封装成帧
数据链路层会将网络层传递下来的数据拆分为多段,并在每段数据前后分别添加首部和尾部,以构成一个完成的帧,帧是链路层传输的基本数据单元。帧首部用控制字符 SOH 表示,帧尾部用控制字符 EOT 表示:
2. 透明传输
透明传输是指不论何种数据都应当能够在链路上进行安全地传输。由于我们采用控制字符来封装帧,当传输数据中出现了控制字符时,就会导致无法正确区分出帧头帧尾,此时需要使用转移字符 ESC 来进行转义:
3. 差错检测
由于现实环境中的通信链路都是不理想的,因此比特在传输过程中可能会产生差错:1 可能会变成 0,而 0 也可能变成 1,这称为比特差错。
在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率。为了解决这个问题,数据链路层将待发送的数据分为多组,并采用循环冗余校验(CRC,Cyclic Redundancy Check)技术为每组数据生成冗余校验码,之后将每组数据和其校验码共同构成一帧后再发送出去。
3.2 PPP 协议
点到点协议(PPP)是目前使用最为广泛的数据链路层协议,主要用于建立点对点的连接来传输数据单元。它由以下三部分组成:
一个将 IP 数据报封装到串行链路的方法;
链路控制协议 (LCP) :一种扩展链路控制协议,用于建立、配置、测试和管理数据链路连接。
网络控制协议 (NCP) :协商该链路上所传输的数据包格式与类型,建立、配置不同的网络层协议。
3.3 Mac 地址
MAC 地址
,直译为媒体存取控制地址,也称为局域网地址(LAN Address)或物理地址(Physical Address)。
MAC 地址用于在网络中唯一标识一个网卡,一台设备若有多个网卡,则每个网卡都会有一个唯一的 MAC 地址。链路层通过 Mac 地址来识别需要发送数据的目标节点。
MAC地址为 48 位的(6 个字节),通常表示为 12 个 16 进制数,每两个 16 进制数之间用冒号隔开,如 08:00:20:0A:8C:6D,前 3 字节为组织机构唯一标识(OUI),由 IEEE 的注册管理机构统一分配给硬件生产厂家,以确保在全球范围内的唯一;后 3 字节由厂家自行分配。
3.4 局域网
局域网(LAN)
是连接住宅、学校、实验室、大学校园或办公大楼等有限区域内计算机的网络。 按照 IEEE802 标准,局域网体系结构分为三层,即物理层,媒体链路控制层(MAC),逻辑链路控制层(LLC)。实际上是两层,该标准将数据链路层拆分为更具体的媒体链路控制层和逻辑链路控制层。
3.5 以太网
以太网(Ethernet)是目前使用范围最广的局域网,以常用的以太网 v2 标准为例,其帧格式如下:
其中 Mac Header 分别记录了目的地的 Mac 地址和来源地的 Mac 地址。