diff --git a/notes/pics/ip-internet.png b/notes/pics/ip-internet.png new file mode 100644 index 00000000..4c1f68d0 Binary files /dev/null and b/notes/pics/ip-internet.png differ diff --git a/notes/计算机网络 - 网络层.md b/notes/计算机网络 - 网络层.md index e8227300..f2f922d1 100644 --- a/notes/计算机网络 - 网络层.md +++ b/notes/计算机网络 - 网络层.md @@ -19,6 +19,7 @@ * [1. 内部网关协议 RIP](#1-内部网关协议-rip) * [2. 内部网关协议 OSPF](#2-内部网关协议-ospf) * [3. 外部网关协议 BGP](#3-外部网关协议-bgp) + * [参考资料](#参考资料) @@ -28,7 +29,7 @@ 使用 IP 协议,可以把异构的物理网络连接起来,使得在网络层看起来好像是一个统一的网络。 -

+

与 IP 协议配套使用的还有三个协议: @@ -40,23 +41,15 @@

-- **版本** : 有 4(IPv4)和 6(IPv6)两个值; - -- **首部长度** : 占 4 位,因此最大值为 15。值为 1 表示的是 1 个 32 位字的长度,也就是 4 字节。因为固定部分长度为 20 字节,因此该值最小为 5。如果可选字段的长度不是 4 字节的整数倍,就用尾部的填充部分来填充。 - -- **区分服务** : 用来获得更好的服务,一般情况下不使用。 - -- **总长度** : 包括首部长度和数据部分长度。 - -- **生存时间** :TTL,它的存在是为了防止无法交付的数据报在互联网中不断兜圈子。以路由器跳数为单位,当 TTL 为 0 时就丢弃数据报。 - -- **协议** :指出携带的数据应该上交给哪个协议进行处理,例如 ICMP、TCP、UDP 等。 - -- **首部检验和** :因为数据报每经过一个路由器,都要重新计算检验和,因此检验和不包含数据部分可以减少计算的工作量。 - -- **标识** : 在数据报长度过长从而发生分片的情况下,相同数据报的不同分片具有相同的标识符。 - -- **片偏移** : 和标识符一起,用于发生分片的情况。片偏移的单位为 8 字节。 +- 版本:有 4(IPv4)和 6(IPv6)两个值; +- 首部长度:占 4 位,因此最大值为 15。值为 1 表示的是 1 个 32 位字的长度,也就是 4 字节。因为固定部分长度为 20 字节,因此该值最小为 5。如果可选字段的长度不是 4 字节的整数倍,就用尾部的填充部分来填充; +- 区分服务:用来获得更好的服务,一般情况下不使用; +- 总长度:包括首部长度和数据部分长度; +- 生存时间:TTL,它的存在是为了防止无法交付的数据报在互联网中不断兜圈子。以路由器跳数为单位,当 TTL 为 0 时就丢弃数据报; +- 协议:指出携带的数据应该上交给哪个协议进行处理,例如 ICMP、TCP、UDP 等; +- 首部检验和:因为数据报每经过一个路由器,都要重新计算检验和,因此检验和不包含数据部分可以减少计算的工作量; +- 标识:在数据报长度过长从而发生分片的情况下,相同数据报的不同分片具有相同的标识符; +- 片偏移:和标识符一起,用于发生分片的情况。片偏移的单位为 8 字节。

@@ -202,8 +195,8 @@ VPN 使用公用的互联网作为本机构各专用网之间的通信载体。 可以把路由选择协议划分为两大类: -- 自治系统内部的路由选择:RIP 和 OSPF -- 自治系统间的路由选择:BGP +- 自治系统内部的路由选择:RIP 和 OSPF; +- 自治系统间的路由选择:BGP。 ### 1. 内部网关协议 RIP @@ -250,3 +243,16 @@ BGP 只能寻找一条比较好的路由,而不是最佳路由。 每个 AS 都必须配置 BGP 发言人,通过在两个相邻 BGP 发言人之间建立 TCP 连接来交换路由信息。

+ +## 参考资料 + +- 谢希仁. 计算机网络(第 7 版)[M]. 电子工业出版社, 2017. +- Kurose J F, Ross K W. 计算机网络:自顶向下方法(第 7 版)[M]. 机械工业出版社, 2018. +- [RFC 791: Internet Protocol](https://www.rfc-editor.org/rfc/rfc791) +- [RFC 792: Internet Control Message Protocol](https://www.rfc-editor.org/rfc/rfc792) +- [RFC 826: An Ethernet Address Resolution Protocol](https://www.rfc-editor.org/rfc/rfc826) +- [RFC 1918: Address Allocation for Private Internets](https://www.rfc-editor.org/rfc/rfc1918) +- [RFC 4632: Classless Inter-domain Routing (CIDR)](https://www.rfc-editor.org/rfc/rfc4632) +- [RFC 3022: Traditional IP Network Address Translator](https://www.rfc-editor.org/rfc/rfc3022) +- [RFC 2328: OSPF Version 2](https://www.rfc-editor.org/rfc/rfc2328) +- [RFC 4271: A Border Gateway Protocol 4 (BGP-4)](https://www.rfc-editor.org/rfc/rfc4271)