网络体系结构
1. 定义
计算机网络体系结构是计算机网络及其部件所应完成的 功能精确定义。网络体系结构通常应包括以下内容:
- 网络功能部件的定义
- 相互关系的描述
- 网络与用户之间的接口定义
网络体系结构 = {层、协议、接口}
网络体系结构的三要素:
- 层:能够提供某种或某一类服务 功能集合 的逻辑构造
- 协议:为完成该层 对等实体 之间通信所必须遵循的规则 或 标准
- 接口:两个相邻协议层之间 交换信息 的 连接点
2. 以OSI参考模型举例
3. 常见的网络体系结构
网络体系结构,是一种 分层的 层次式结构
4. 分层原理
- 分层的原因:复杂的问题分而治之,逐个解决。
- 分层的思想:每一层都在它的下层服务的基础上,提供更高级的增值服务,最高层提供能运行应用程序的服务。
- 分层的好处:使每一层实现一种相独立的功能。每一层不必知道下面一层是如何实现的,只需要知道下层通过层间结构提供的服务是什么,及本层向上层提供什么样的服务,就能独立的设计。
在分层结构中,满足下图的关系:
n层,是n-1层的用户,又是n+1层的服务提供者。
- 分层原则:
- 当需要一个不同抽象体时,应该单独创建一层
- 每一层都应该执行一个明确定义的功能
- 选择每一层时,应考虑到定义国际标准化的协议
- 选择层的边界时,应使同故宫接口的信息量最少
- 层数应该足够多,以保证不同的功能不会被混在一层中
- 层数不能太多,以免体系结构变得过于庞大
5. 网络协议
网络协议是指通信双方在通信时,所应遵循的一组 规则、标准或约定。协议由语义、语法、定时三部分组成。
- 语义 Semantics:规定通信双方准备“Speak What ”,涉及用于协调与差错处理的控制信息
- 语法 Syntax:规定通信双方 “ How Speak ”,涉及数据及控制信息的格式、编码及信号电平等
- 定时 Timing:涉及速度匹配和排序等
OSI参考模型
开放式系统互连参考模型:OSI/RM,Reference Model of Open System Interconnection
- 第1 – 3层,通信子网层:主要负责通行功能
- 第 4 层:传输层:连接上下三层的作用
- 第5 – 7层,资源子网层
OSI 体系结构(七层)
1. 物理层 Physical
- Transmission and reception of raw bit streams over a physical medium
- OSI 参考模型的最底层。
- 为通信提供物理链路,实现比特流(bit)的透明传输
- 作用:尽可能地屏蔽掉不同物理设备和传输媒体的差异,使其上面的数据链路层感觉不到这些差异
- 定义了四个重要的特性,用于建立、维护和拆除物理链接
- 机械特性
- 电气特性
- 功能特性
- 规程特性
2. 数据链路层 Data Link
- Transmission of data frames between two nodes connected (相邻节点) by a physical layer
- 作用:通过 Data Link Protocol,在不太可靠的物理链路上实现可靠的数据传送
- 主要功能:链路管理、帧的装配与分解、帧同步、流量控制、差错控制、将数据和控制信息区分开、透明传输、寻址等
3. Network
- Structuring and managing a multi-node network, including addressing, routing and traffic control (路径规划)
- 功能:提供 Souce 到 Target 的信息传输服务,负责由一个站到另一个站点的路径选择。
- Network Layer 在通信子网中传输 信息包或报文分组
- 网络层为了向传输层提供整个网络上任意节点之间数据传输通路,需要解决:
- 建立、维护以及结束 两个站点之间的联系
- 以及由此而引起的路径选择、流量控制、阻塞、死锁等问题
4. Transport Layer
- Reliable transmission of data segments between points on a network, including segmentation, acknowledgement and multiplexing
- 作用:为不同系统内的 Session 实体建立 end 2 end 的连接,执行 end2end 的差错、顺序和流量控制,数据传输的基本单位是 message(报文)
- 传输层将 source 主机 与 target 主机 直接以点到点的方式连接起来,把从 Source 主机接收来的报文正确地传送到 Target 主机,是资源子网与通信子网的 接口层
- 传输层的服务可以提供一条无差错按顺序的 End2End 连接,也可以提供不保证顺序地独立报文传输,或多目标报文广播
5. 会话层 Session Layer
- Managing communication sessions, i.e., continuous exchange of information in the form of multiple back-and-forth transmissions between two nodes
- 也被称为 会晤层、对话层。
- 在两个实体之间,建立起同通信伙伴关系,向表示层提供对话服务
- 对通信的过程进行管理和协调
6. Presentation Layer
- Translation of data between a networking service and an application; including character encoding, data compression and encryption/decryption
- 负责数据的表示形式,解决格式和数据表示问题
7. Application Layer
- High-level protocols such as for resource sharing or remote file access, e.g. HTTP.
OSI协议集
TCP/IP参考模型
TCP/IP(Transmission Control Protocol / Internet Protocol):定义所有数据传输如何在 Internet 上进行交换的一个协议集合 或 一组协议簇。
- 这一系列协议是按其中最重要、应用最广泛的两个协议 TCP 与 IP 来命名的
- 目前 TCP/IP 已成为工业标准
TCP/IP主要功能
TCP是传输控制协议、规定了一种可靠的数据信息传递服务;
IP 协议又称为互联网协议、提供网络之间连接的完善功能。
主要特点:
- 与生产厂家无关
- 已经在各种计算机上实现
- 已被 LAN 和 WAN 采用
TCP/IP体系结构 (四层)
1. Application Layer
向用户提供应用程序
2. Transport Layer
- 提供 app 之间的通信,即 End2end 的通信。
- 功能:
- 1、 格式化信息流
- 2、提供可靠传输、保证数据无误有序地到达
3. Internet Layer
- 负责相邻计算机之间地通信
- 功能:
- 处理来自 Transport Layer 的分组发送 request;
- 处理输入数据报;用 因特网控制报文协议(ICMP)处理路径、流量、拥塞问题
4. Link Layer
- 又称为 通信层,负责接受 IP 数据包,并通过网络发送
- 或从网络上接受物理帧,抽出 IP 数据报,交给 IP 层
沙漏计时器形状的 TCP/IP 协议族
- TCP/IP 协议族的特点是 “
两头大,中间小
\color{red} 两头大,中间小
两头大,中间小”,这样可以为各式各样的应用提供服务,同时也可以连接到各式各样的网络上。
OSI 与 TCP/IP 的比较
- 两者都是以 协议栈 \color{red}协议栈 协议栈 的概念为基础,并且协议栈中的协议彼此相互独立。
- 传输层以及传输层以上的各层都为希望通信的进程提供了一种 端到端 \color{red}端到端 端到端 的, 与网络无关 \color{red}与网络无关 与网络无关 的服务。
- OSI 模型中,服务、接口、协议的 概念 \color{red}概念 概念 非常清晰;而 TCP/IP 模型中并没有明确地区分三者之间的差异。
- TCP/IP 一开始就考虑到多种 异构网的互联 \color{red}异构网的互联 异构网的互联 问题,并将互联网协议 IP 作为 TCP/IP 的重要组成部分。而OSI 最初只考虑到使用一种标准的公用数据网络将不同的系统互联在一起。
- TCP/IP的 传输层 \color{red}传输层 传输层支持面向连接服务和无连接服务, 网络层 \color{blue}网络层 网络层只支持无连接的服务;而OSI的 传输层 \color{red}传输层 传输层只支持面向连接服务, 网络层 \color{blue}网络层 网络层支持面向连接服务和无连接服务
- OSI 是先由模型,后有协议,适应范围广;而 TCP/IP 是先有协议,后有模型,因为 TCP/IP 模型的 通用性 \color{red}通用性 通用性 较差,很难描述其他种类的协议栈。