# 分层模型

## 分层优点

* 各层独立。每一层不需要知道下层是如何实现的，只需要知道层间的接口和所提供的服务。 &#x20;
* 使复杂问题简化，高层屏蔽低层细节问题 &#x20;
* 灵活性好。当任意层发生变化时，只要接口不变，上下层均不受影响。 &#x20;
* 结构上分开，各层可采用最适合的技术。 &#x20;
* 易于实现和维护。 &#x20;
* 促进标准化。由于每一层及其提供的服务都有明确的定义，便于制订统一的协议。 &#x20;

## 计算机网络体系结构

1. 定义 &#x20;
   * 层次结构和协议的集合构成网络的体系结构  &#x20;
2. 作用 &#x20;
   * 复杂网络的抽象概念描述，形成网络的框架结构，实现网络的结构化设计； &#x20;
   * 对每一层进行功能界定，成为该层次的实现者进行软件编程和硬件设计的依据。 &#x20;
3. 研究方法 &#x20;
   * 按功能抽象分层 &#x20;
   * 定义层间的结构和提供的服务 &#x20;
   * 定义同层间通信的规则—协议 &#x20;

## 分层原则

1. 根据功能需要分层 &#x20;
2. 每层的功能明确 &#x20;
3. 每层的功能选择有利于指定国际标准 &#x20;
4. 每层的接口信息量尽可能少  &#x20;
5. 层数足够多：避免不同的功能混于同一层  &#x20;
6. 层数不能太多：避免体系结构过于庞大 &#x20;

## ISO OSI Reference Model

ISO: International Standard Organization\
OSI: Open System Interconnect\
![](/files/-M1JIX9u6W4w4DGyyvrU)\
底层三层是 hop-by-hop 由电信部门管，在网络中\
上面四层是 end-to-end 由电脑内部实现\
物理连接示意：\
![](/files/-M1JIX9w7rPKfQSaGXOu)

## 主机1向主机2发送数据实例

![](/files/-M1JIXA0jRIXa6iLgpaG)

## 网络体系结构的主要概念

1. 每个层次定义三个基本概念 &#x20;
   * 接口：上下层之间联络的方式(e.g. 快递给收发室) &#x20;
   * 服务：解决的功能(e.g. 寄送服务) &#x20;
   * 协议：规范(e.g. 快递单需要填写的格式) &#x20;
2. 三个概念之间的相互关系 &#x20;
   * 接口与服务的关系：通过接口提供服务   &#x20;
   * 协议与服务的关系：服务建立在相同的协议之上   &#x20;
   * **协议是水平的，服务是垂直的**：同层之间要确保协议一致才能正常，服务只需要解决自己的功能，不需要关系其他层    &#x20;

     ![](/files/-M1JIXA3-IVvKr00YPpW) &#x20;

## 每个层次定义的三个概念

1. 接口 &#x20;
   * 每层接口告诉上层进程对其的访问方式 &#x20;
   * 定义需要的**参数**和**预期**的结果 &#x20;
2. 服务 &#x20;
   * 每层为上层提供服务，定义该层做什么 &#x20;
   * 服务通常由一组**原语操作**来描述(原语：最基本操作，不可再分)    &#x20;
3. 协议 &#x20;
   * 定义服务是如何实现的 &#x20;
   * 每层中使用的**对等协议**只涉及该层的内部事物 &#x20;
   * 协议的修改和替换**不影响更高层次** &#x20;

## Internet Layering and OSI Layering

![](/files/-M1JIXAAmnBLtmaDJMJ-)\
7层协议是概念性的东西，但实际上使用的时候使用的是4层

物理的连通，关注物理上如何进行数据的传输：\
![](/files/-M1JIXAFBYscr2_a-7pm)

逻辑的连通，关注逻辑上如何进行数据的交互：\
![](/files/-M1JIXAKjzA-KSTpDJxS)

## 协议 protocol

### 协议定义

协议：计算机网络**同等层次**中，通信**双方进行信息交换时**必须**遵守的规则**。

### 协议组成 (协议三要素)

1. 语法（syntax)：表示数据与控制信息的**结构或格式** &#x20;
2. 语义（semantics)：指出需要发出何种**控制信息**、完成何种**动作**以及做出何种**响应** &#x20;
3. 定时（timing)：有关事件**顺序**的说明或者叫同步 &#x20;

## 计算机网络的各种定义

1. 计算机网络是以实现远程通信为目的，一些**互连**的，**独立自治**的计算机的**集合**。 &#x20;
   * 必须是多态机器，拥有多个IP，可以互相访问，单机分时系统 **不属于** 计算机网络 &#x20;

     2．计算机网络是把**地理位置上分散**的为能够相互共享资源（硬，软件，信息）的方式而连接起来，并且各自具有**独立功能**的计算机系统之**集合**。 &#x20;
   * 计算机间通信的目的是为共享硬、软件、信息资源； &#x20;
   * 各计算机功能独立，地域可以分散； &#x20;
   * 计算机网络应具有网络操作系统。 &#x20;
2. 计算机网络是一组**相互连在一起**的计算机系统的**集合**。 &#x20;
3. 凡将具有**独立功能**的**两个以上**计算机系统，通过通信设备和线路（或无线）将其连接起来，由功能完善的网络软件（网络协议，操作系统等）**实现网络资源共享和信息交换**的系统，称之为计算机网络。 &#x20;

## 网络结构

![](/files/-M1JIXAMDH8Hm_srokOH)

* access net: 接入网，如：4G, 光纤等，末端设备先接入接入网 &#x20;
* Internet Service Provider: 主干网，如：中国移动，接入网一般用光缆接到主干网 &#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://legacy.cookielau.com/archives/5-junior2/2-computernetwork/2-layermodel.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
