# CCNA

### 1、协议与协议分层&#x20;

协议：设备之间要想进行通信，必须遵循一套相同的通信标准，而这个标准就是“协议”&#x20;

协议分层：简单讲，协议分层是让数据的传播工作在不同的设备&#x20;

分层的逻辑原因：当一个问题比较复杂的时候，最好的方法就是把它按照逻辑分成很多部分或者很多步骤，然后分别交由具有专门功能的机制来处理&#x20;

分层处理的优越性：&#x20;

1. 容易排错&#x20;
2. 可以分别对各层的工作进行调整和替换

### 2、OSI参考模型

OSI参考模型是一个理论参考模型

| 层数 | 名称    | 数据单元 |
| -- | ----- | ---- |
| 7  | 应用层   | APDU |
| 6  | 表示层   | PPDU |
| 5  | 会话层   | SPDU |
| 4  | 传输层   | TPDU |
| 3  | 网络层   | 数据包  |
| 2  | 数据链路层 | 帧    |
| 1  | 物理层   | 比特   |

介绍OSI的思路：

1. 从应用层到物理层，自顶向下
2. 从物理层到应用层，自底向上，适合新手

#### 物理层

定义：实际上是一个逻辑层，定义了一台设备与物理传输介质（光纤/双绞线）之间的沟通方式&#x20;

其中包括了：

1. 用什么信号状态表示比特0和1&#x20;
2. 表示1比特信号需要多长时间&#x20;
3. 网线插头中针脚数量及每个针脚的作用&#x20;
4. 可以使用哪些物理介质进行传输&#x20;
5. 两台设备间对物理层协议的建立与拆除方式&#x20;
6. 传输模式是什么等&#x20;

传输单元：比特&#x20;

涉及协议：

1. RJ-45：定义了以太网链路的物理层协议&#x20;
2. RS-232：定义了串行链路的物理层协议
3. ISM：定义了WIFI和蓝牙的物理层协议

#### 数据链路层

作用：接受物理层提供的服务，同时为网络层提供服务&#x20;

功能：

1. 在广域网中实现相邻网络设备之间的俩通信，以及在局域网中实现网络设备之间的连通性&#x20;
2. 检查收到的数据帧是否完整
3. 重传未经确认的帧的请求，以此检测和恢复物理层中的错误&#x20;
4. 帧流量的控制和管理&#x20;

传输单元：帧&#x20;

涉及协议：

1. PPP协议
2. FR&#x20;
3. 802.2&#x20;
4. 802.3&#x20;
5. HDLC

#### 网络层

依赖于数据链路层来实现直连设备之间的二层通信，并在此基础上扩大了服务范围&#x20;

功能：

1. 实现一个或多个网络中两个设备的通讯&#x20;
2. 网络寻址&#x20;
3. 决定了如何传输数据包&#x20;
4. 对过大的数据进行分段操作，并在接收端重组数据&#x20;

缺点：数据传输不可靠&#x20;

交换单元：数据包&#x20;

协议：

1. IPv4/IPv6&#x20;
2. ICMP
3. IGMP&#x20;
4. PIM-SM
5. PIM-DM

#### 传输层&#x20;

确保消息无错，有序，无损或无重复的传播&#x20;

功能：&#x20;

1. 其中一些协议是面向连接的，所以可以追踪数据的链接状态，并在传输失败后重新传递，提供了一种成功传输数据后的确认机制，源端设备能偶在目的端设备成功收到数据后，再发送下一个数据
2. 控流：在一条逻辑链路上传输多条数据流，并跟踪维护每条数据流的信息

#### 会话层&#x20;

业内最常用参考模型：将会话层与表示层并入应用层所形成的五层模型&#x20;

功能：控制终端用户应用程序之间的会话&#x20;

协议：

1. H.245&#x20;
2. H.323：负责多媒体连接控制的协议 RTCP：实时传输控制协议

#### 表示层

将复杂的数据结构转化为扁平的字符串格式，这个过程称为串行化&#x20;

功能：

1. 确保从一个系统的应用层发出的信息可以被另一个系统的应用层正确识别
2. 压缩与加解密
3. 识别字符编码&#x20;

协议：HTTP

#### 应用层&#x20;

定义：用作用户接口，负责将接收到的信息呈现给用户 作用：向表示层发出请求，同时向应用进程提供服务 功能：资源共享，远程文件访问，远程打印访问，网络管理，网络虚拟终端等 协议：HTTP，DNS，Telnet

网络分层的好处：

1. 减轻问题的复杂程度，一旦发生网络故障，可迅速定位故障所处乘次，便于查找和纠错
2. 在各层分别定义标准的接口，使对等层的不同网络设备能实现互操作，各层之间则相对独立，一种高层协议可放在多种低层协议上运行
3. 能有效刺激网络技术革新，因为每次更新都可以在小范围内以“模块化”的方式进行，无需对整个网络动大手术
4. 便于研究和教学

### 3、TCP/IP参考模型

|   分层  |        功能       |
| :---: | :-------------: |
|  应用层  |    为用户表示应用数据    |
|  传输层  | 支持设备间的通信和执行错误纠正 |
|  网络层  |    确定网络的最佳路由    |
| 网络接口层 |   控制网络的硬件设备和介质  |

与OSI模型的异同：

|       同       |                 异                 |
| :-----------: | :-------------------------------: |
|  两者都以协议栈概念为基础 |      OSI先有模型，而TCP/IP先有协议，后有模型     |
| 协议栈中的协议彼此相互独立 | OSI模型适用于各种协议栈，而TCP/IP只适用于TCP/IP网络 |
|   下层对上层提供服务   |               层次数量不同              |

### 4、TCP/IP五层模型及数据封装与解封

三模型对应关系如下：

![对应关系](/files/-MG6lYSV2_oXeJoCZ8R3)

#### 五层模型&#x20;

优势：有利于读者理解和掌握数据在通过网络进行传输的前后，需要经过怎么样的处理流程&#x20;

数据处理流程及作用：

![](/files/-MG70J8pcjiJ8vU-UbF2)

在封装过程中，数据从上层至下层，会依次添加上相关的控制信息。而当数据通过网络传输，到达目的主机之后，对方的主机则会相应地执行解封装的过程。而在解封装的过程中，封装时添加的控制信息被逐层去除，最终还原成原始的应用程序消息 。

![数据封装过程](/files/-MG70mQ_mH9t11br7EIF)

TCP/IP模型，也可称为DOD模型：

![TCP/IP（DOD）模型与OSI对应关系](/files/-MG78jmAA4ngKEgCBo9D)


---

# 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://xu-an.gitbook.io/sec/net/ccna.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.
