auto commit
This commit is contained in:
@ -1,26 +1,28 @@
|
||||
# 计算机网络 - 网络层
|
||||
<!-- GFM-TOC -->
|
||||
* [概述](#概述)
|
||||
* [IP 数据报格式](#ip-数据报格式)
|
||||
* [IP 地址编址方式](#ip-地址编址方式)
|
||||
* [1. 分类](#1-分类)
|
||||
* [2. 子网划分](#2-子网划分)
|
||||
* [3. 无分类](#3-无分类)
|
||||
* [地址解析协议 ARP](#地址解析协议-arp)
|
||||
* [网际控制报文协议 ICMP](#网际控制报文协议-icmp)
|
||||
* [1. Ping](#1-ping)
|
||||
* [2. Traceroute](#2-traceroute)
|
||||
* [虚拟专用网 VPN](#虚拟专用网-vpn)
|
||||
* [网络地址转换 NAT](#网络地址转换-nat)
|
||||
* [路由器的结构](#路由器的结构)
|
||||
* [路由器分组转发流程](#路由器分组转发流程)
|
||||
* [路由选择协议](#路由选择协议)
|
||||
* [1. 内部网关协议 RIP](#1-内部网关协议-rip)
|
||||
* [2. 内部网关协议 OSPF](#2-内部网关协议-ospf)
|
||||
* [3. 外部网关协议 BGP](#3-外部网关协议-bgp)
|
||||
* [计算机网络 - 网络层](#计算机网络---网络层)
|
||||
* [概述](#概述)
|
||||
* [IP 数据报格式](#ip-数据报格式)
|
||||
* [IP 地址编址方式](#ip-地址编址方式)
|
||||
* [1. 分类](#1-分类)
|
||||
* [2. 子网划分](#2-子网划分)
|
||||
* [3. 无分类](#3-无分类)
|
||||
* [地址解析协议 ARP](#地址解析协议-arp)
|
||||
* [网际控制报文协议 ICMP](#网际控制报文协议-icmp)
|
||||
* [1. Ping](#1-ping)
|
||||
* [2. Traceroute](#2-traceroute)
|
||||
* [虚拟专用网 VPN](#虚拟专用网-vpn)
|
||||
* [网络地址转换 NAT](#网络地址转换-nat)
|
||||
* [路由器的结构](#路由器的结构)
|
||||
* [路由器分组转发流程](#路由器分组转发流程)
|
||||
* [路由选择协议](#路由选择协议)
|
||||
* [1. 内部网关协议 RIP](#1-内部网关协议-rip)
|
||||
* [2. 内部网关协议 OSPF](#2-内部网关协议-ospf)
|
||||
* [3. 外部网关协议 BGP](#3-外部网关协议-bgp)
|
||||
<!-- GFM-TOC -->
|
||||
|
||||
|
||||
# 概述
|
||||
## 概述
|
||||
|
||||
因为网络层是整个互联网的核心,因此应当让网络层尽可能简单。网络层向上只提供简单灵活的、无连接的、尽最大努力交互的数据报服务。
|
||||
|
||||
@ -34,7 +36,7 @@
|
||||
- 网际控制报文协议 ICMP(Internet Control Message Protocol)
|
||||
- 网际组管理协议 IGMP(Internet Group Management Protocol)
|
||||
|
||||
# IP 数据报格式
|
||||
## IP 数据报格式
|
||||
|
||||
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/85c05fb1-5546-4c50-9221-21f231cdc8c5.jpg" width="700"/> </div><br>
|
||||
|
||||
@ -58,7 +60,7 @@
|
||||
|
||||
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/23ba890e-e11c-45e2-a20c-64d217f83430.png" width="700"/> </div><br>
|
||||
|
||||
# IP 地址编址方式
|
||||
## IP 地址编址方式
|
||||
|
||||
IP 地址的编址方式经历了三个历史阶段:
|
||||
|
||||
@ -66,29 +68,29 @@ IP 地址的编址方式经历了三个历史阶段:
|
||||
- 子网划分
|
||||
- 无分类
|
||||
|
||||
## 1. 分类
|
||||
### 1. 分类
|
||||
|
||||
由两部分组成,网络号和主机号,其中不同分类具有不同的网络号长度,并且是固定的。
|
||||
|
||||
IP 地址 ::= {< 网络号 >, < 主机号 >}
|
||||
IP 地址 ::= {\< 网络号 \>, \< 主机号 \>}
|
||||
|
||||
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/cbf50eb8-22b4-4528-a2e7-d187143d57f7.png" width="500"/> </div><br>
|
||||
|
||||
## 2. 子网划分
|
||||
### 2. 子网划分
|
||||
|
||||
通过在主机号字段中拿一部分作为子网号,把两级 IP 地址划分为三级 IP 地址。
|
||||
|
||||
IP 地址 ::= {< 网络号 >, < 子网号 >, < 主机号 >}
|
||||
IP 地址 ::= {\< 网络号 \>, \< 子网号 \>, \< 主机号 \>}
|
||||
|
||||
要使用子网,必须配置子网掩码。一个 B 类地址的默认子网掩码为 255.255.0.0,如果 B 类地址的子网占两个比特,那么子网掩码为 11111111 11111111 11000000 00000000,也就是 255.255.192.0。
|
||||
|
||||
注意,外部网络看不到子网的存在。
|
||||
|
||||
## 3. 无分类
|
||||
### 3. 无分类
|
||||
|
||||
无分类编址 CIDR 消除了传统 A 类、B 类和 C 类地址以及划分子网的概念,使用网络前缀和主机号来对 IP 地址进行编码,网络前缀的长度可以根据需要变化。
|
||||
|
||||
IP 地址 ::= {< 网络前缀号 >, < 主机号 >}
|
||||
IP 地址 ::= {\< 网络前缀号 \>, \< 主机号 \>}
|
||||
|
||||
CIDR 的记法上采用在 IP 地址后面加上网络前缀长度的方法,例如 128.14.35.7/20 表示前 20 位为网络前缀。
|
||||
|
||||
@ -98,7 +100,7 @@ CIDR 的地址掩码可以继续称为子网掩码,子网掩码首 1 长度为
|
||||
|
||||
在路由表中的项目由“网络前缀”和“下一跳地址”组成,在查找时可能会得到不止一个匹配结果,应当采用最长前缀匹配来确定应该匹配哪一个。
|
||||
|
||||
# 地址解析协议 ARP
|
||||
## 地址解析协议 ARP
|
||||
|
||||
网络层实现主机之间的通信,而链路层实现具体每段链路之间的通信。因此在通信过程中,IP 数据报的源地址和目的地址始终不变,而 MAC 地址随着链路的改变而改变。
|
||||
|
||||
@ -114,7 +116,7 @@ ARP 实现由 IP 地址得到 MAC 地址。
|
||||
|
||||
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/8006a450-6c2f-498c-a928-c927f758b1d0.png" width="700"/> </div><br>
|
||||
|
||||
# 网际控制报文协议 ICMP
|
||||
## 网际控制报文协议 ICMP
|
||||
|
||||
ICMP 是为了更有效地转发 IP 数据报和提高交付成功的机会。它封装在 IP 数据报中,但是不属于高层协议。
|
||||
|
||||
@ -124,13 +126,13 @@ ICMP 报文分为差错报告报文和询问报文。
|
||||
|
||||
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/aa29cc88-7256-4399-8c7f-3cf4a6489559.png" width="600"/> </div><br>
|
||||
|
||||
## 1. Ping
|
||||
### 1. Ping
|
||||
|
||||
Ping 是 ICMP 的一个重要应用,主要用来测试两台主机之间的连通性。
|
||||
|
||||
Ping 的原理是通过向目的主机发送 ICMP Echo 请求报文,目的主机收到之后会发送 Echo 回答报文。Ping 会根据时间和成功响应的次数估算出数据包往返时间以及丢包率。
|
||||
|
||||
## 2. Traceroute
|
||||
### 2. Traceroute
|
||||
|
||||
Traceroute 是 ICMP 的另一个应用,用来跟踪一个分组从源点到终点的路径。
|
||||
|
||||
@ -141,7 +143,7 @@ Traceroute 发送的 IP 数据报封装的是无法交付的 UDP 用户数据报
|
||||
- 不断执行这样的步骤,直到最后一个数据报刚刚到达目的主机,主机不转发数据报,也不把 TTL 值减 1。但是因为数据报封装的是无法交付的 UDP,因此目的主机要向源主机发送 ICMP 终点不可达差错报告报文。
|
||||
- 之后源主机知道了到达目的主机所经过的路由器 IP 地址以及到达每个路由器的往返时间。
|
||||
|
||||
# 虚拟专用网 VPN
|
||||
## 虚拟专用网 VPN
|
||||
|
||||
由于 IP 地址的紧缺,一个机构能申请到的 IP 地址数往往远小于本机构所拥有的主机数。并且一个机构并不需要把所有的主机接入到外部的互联网中,机构内的计算机可以使用仅在本机构有效的 IP 地址(专用地址)。
|
||||
|
||||
@ -157,7 +159,7 @@ VPN 使用公用的互联网作为本机构各专用网之间的通信载体。
|
||||
|
||||
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/1556770b-8c01-4681-af10-46f1df69202c.jpg" width="800"/> </div><br>
|
||||
|
||||
# 网络地址转换 NAT
|
||||
## 网络地址转换 NAT
|
||||
|
||||
专用网内部的主机使用本地 IP 地址又想和互联网上的主机通信时,可以使用 NAT 来将本地 IP 转换为全球 IP。
|
||||
|
||||
@ -165,7 +167,7 @@ VPN 使用公用的互联网作为本机构各专用网之间的通信载体。
|
||||
|
||||
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/2719067e-b299-4639-9065-bed6729dbf0b.png" width=""/> </div><br>
|
||||
|
||||
# 路由器的结构
|
||||
## 路由器的结构
|
||||
|
||||
路由器从功能上可以划分为:路由选择和分组转发。
|
||||
|
||||
@ -173,7 +175,7 @@ VPN 使用公用的互联网作为本机构各专用网之间的通信载体。
|
||||
|
||||
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/c3369072-c740-43b0-b276-202bd1d3960d.jpg" width="600"/> </div><br>
|
||||
|
||||
# 路由器分组转发流程
|
||||
## 路由器分组转发流程
|
||||
|
||||
- 从数据报的首部提取目的主机的 IP 地址 D,得到目的网络地址 N。
|
||||
- 若 N 就是与此路由器直接相连的某个网络地址,则进行直接交付;
|
||||
@ -184,7 +186,7 @@ VPN 使用公用的互联网作为本机构各专用网之间的通信载体。
|
||||
|
||||
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/1ab49e39-012b-4383-8284-26570987e3c4.jpg" width="800"/> </div><br>
|
||||
|
||||
# 路由选择协议
|
||||
## 路由选择协议
|
||||
|
||||
路由选择协议都是自适应的,能随着网络通信量和拓扑结构的变化而自适应地进行调整。
|
||||
|
||||
@ -195,7 +197,7 @@ VPN 使用公用的互联网作为本机构各专用网之间的通信载体。
|
||||
- 自治系统内部的路由选择:RIP 和 OSPF
|
||||
- 自治系统间的路由选择:BGP
|
||||
|
||||
## 1. 内部网关协议 RIP
|
||||
### 1. 内部网关协议 RIP
|
||||
|
||||
RIP 是一种基于距离向量的路由选择协议。距离是指跳数,直接相连的路由器跳数为 1。跳数最多为 15,超过 15 表示不可达。
|
||||
|
||||
@ -211,7 +213,7 @@ RIP 按固定的时间间隔仅和相邻路由器交换自己的路由表,经
|
||||
|
||||
RIP 协议实现简单,开销小。但是 RIP 能使用的最大距离为 15,限制了网络的规模。并且当网络出现故障时,要经过比较长的时间才能将此消息传送到所有路由器。
|
||||
|
||||
## 2. 内部网关协议 OSPF
|
||||
### 2. 内部网关协议 OSPF
|
||||
|
||||
开放最短路径优先 OSPF,是为了克服 RIP 的缺点而开发出来的。
|
||||
|
||||
@ -225,7 +227,7 @@ OSPF 具有以下特点:
|
||||
|
||||
所有路由器都具有全网的拓扑结构图,并且是一致的。相比于 RIP,OSPF 的更新过程收敛的很快。
|
||||
|
||||
## 3. 外部网关协议 BGP
|
||||
### 3. 外部网关协议 BGP
|
||||
|
||||
BGP(Border Gateway Protocol,边界网关协议)
|
||||
|
||||
@ -240,10 +242,3 @@ BGP 只能寻找一条比较好的路由,而不是最佳路由。
|
||||
每个 AS 都必须配置 BGP 发言人,通过在两个相邻 BGP 发言人之间建立 TCP 连接来交换路由信息。
|
||||
|
||||
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/9cd0ae20-4fb5-4017-a000-f7d3a0eb3529.png" width="600"/> </div><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div align="center"><img width="320px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/githubio/公众号二维码-2.png"></img></div>
|
||||
|
Reference in New Issue
Block a user