计算机网络学习--网络层
第一章 概述
第二章 物理层
第三章 数据链路层
第四章 网络层
第五章 传输层
第六章 应用层
第四章 网络层
4.1、网络层提供两种服务
虚电路连接
- 面向连接的通信方式
- 建立虚电路(Virtual Circuit),以保证双方通信所需的一切网络资源
- 网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务
数据报服务
对比的方面 | 虚电路服务 | 数据报服务 |
---|---|---|
思路 | 可靠通信应当由网络来保证 | 可靠通信应当由用户主机来保证 |
连接的建立 | 必须有 | 不需要 |
终点地址 | 仅在连接建立阶段使用,每个分组使用短的虚电路号 | 每个分组都有终点的完整地址 |
分组的转发 | 属于同一条虚电路的分组均按照同一路由进行转发 | 每个分组独立选择路由进行转发 |
当结点出故障时 | 所有通过出故障的结点的虚电路均不能工作 | 出故障的结点可能会丢失分组,一些路由可能会发生变化 |
分组的顺序 | 总是按发送顺序到达终点 | 到达终点时不一定按发送顺序 |
端到端的差错处理和流量控制 | 可以由网络负责,也可以由用户主机负责 | 由用户主机负责 |
4.2、IP数据报格式
- 一个 IP 数据报由首部和数据两部分组成。
- 首部的前一部分是固定长度,共 20 字节,是所有 IP 数据报必须具有的。
- 在首部的固定部分的后面是一些可选字段,其长度是可变的。
4.3、网际控制报文协议ICMP
-
为了提高 IP 数据报交付成功的机会,在网际层使用了网际控制报文协议 ICMP (Internet Control Message Protocol)。
-
ICMP 允许主机或路由器报告差错情况和提供有关异常情况的报告。
-
ICMP 不是高层协议,而是 IP 层的协议。
-
ICMP 报文作为 IP 层数据报的数据,加上数据报的首部,组成 IP 数据报发送出去。
-
ICMP 报文的种类有两种,即 ICMP 差错报告报文和 ICMP 询问报文。
- 差错报告报文:
- 终点不可达
- 源点抑制(Source quench)
- 时间超过
- 参数问题
- 改变路由(重定向)(Redirect)
- 询问报文:
- 回送请求和回答报文
- 时间戳请求和回答报文
- 差错报告报文:
ICMP格式:
route add 0.0.0.0 mask 0.0.0.0 192.168.101.1
pathping www.hebic.cn
4.4、内部网关协议
4.4.1、RIP
-
最早的动态路由协议
-
RIP 是一种分布式的基于距离向量(跳数,最多16跳)的路由选择协议
-
三个要点
- 仅和相邻路由器交换信息。
- 交换的信息是当前本路由器所知道的全部信息,即自己的路由表。
- 按固定的时间间隔交换路由信息,例如,每隔 30 秒。
4.4.2、OSPF
- “最短路径优先”使用了 Dijkstra 提出的最短路径算法SPF
- 最短路径根据网速确定
- 由于各路由器之间频繁地交换链路状态信息,因此所有的路由器最终都能建立一个链路状态数据库
- OSPF 将一个自治系统再划分为若干个更小的范围,叫作区域
- OSPF 不用 UDP 而是直接用 IP 数据报传送
- 如果到同一个目的网络有多条相同代价的路径,那么可以将通信量分配给这几条路径。这叫作多路径间的负载平衡
- 每一个链路状态都带上一个 32 位的序号,序号越大状态就越新
- 规定每隔一段时间,如 30 分钟,要刷新一次数据库中的链路状态
4.4.3、BGP
-
BGP 是不同自治系统的路由器之间交换路由信息的协议
-
边界网关协议 BGP 只能是力求寻找一条能够到达目的网络且比较好的路由(不能兜圈子),而并非要寻找一条最佳路由
-
每一个自治系统的管理员要选择至少一个路由器作为该自治系统的“BGP 发言人”
4.5、路由器
-
路由器是一种具有多个输入端口和多个输出端口的专用计算机,其任务是转发分组
-
“转发”(forwarding)就是路由器根据转发表将用户的 IP 数据报从合适的端口转发出去。
-
“路由选择”(routing)则是按照分布式算法,根据从各相邻路由器得到的关于网络拓扑的变化 情况,动态地改变所选择的路由
-
路由表是根据路由选择算法得出的。而转发表是从路由表得出的
4.6、IP多播
-
多播使用组地址—— IP 使用 D 类地址支持多播。多播地址只能用于目的地址,而不能用于源地址。
-
永久组地址——由因特网号码指派管理局 IANA 负责指派。
-
动态的组成员
-
使用硬件进行多播
为了使路由器知道多播组成员的信息,需要利用网际组管理协议 IGMP (Internet Group Management Protocol)
4.7 VPN 和 NAT
- VPN用于从公网连接到内网
- NAT用于IP地址转化
- 还有PAT用于将IP转化为IP+端口号,增加IP地址运用