今天都三月了,昨天终于出了一趟门散散步晒晒太阳,心情愉悦,这一周主要是复习计算机网络层的相关知识,把一些重点的协议啊,包的格式总结一下方便自己后期的阅读。
在计算机网络层,主要是担任运输中转的功能,他的主要的目的就是选择各种合适的路径,然后讲数据包发送出去。人们在设计网络层的时候主要是考虑它是面向链接还是无连接的方式。
(1)无连接的网络服务:数据报服务
对比方面 | 虚电路服务 | 数据报服务 |
---|---|---|
思路 | 可靠通信应当由网络来保证 | 可靠通信应当由用户主机来保证 |
连接的建立 | 要 | 不要 |
目的站地址 | 仅在连接建立阶段使用,每个分组使用短的虚电路号 | 每个分组都有目的站的全地址 |
分组的转发 | 属于同一条虚电路的分组均按照同一路由转发 | 每个分组独立选择路由进行转发 |
当节点出现故障 | 所有通过故障的节点的虚电路均不能工作 | 故障节点可能丢失分组,一些路由可能会发生变化 |
分组顺序 | 总是按发送顺序到达 | 到达目的站时不一定按照发送顺序 |
端到端的差错处理和流量控制 | 可以由分组交换网负责也可以由用户主机负责 | 由用户主机负责 |
网络在发送分组时不需要先建立连接。每一个分组(IP数据报)独立发送,与其前后的分组无关(不进行编号)。网络层被定义成不可靠的无连接分组交付系统。尽最大努力交付,不提供服务质量的承诺。即所传送分组可能出错、丢失、重复和失序,也不保证分组传送的时限。可靠性由网络的主机中的运输层负责。
这样设计的原因
协议名 | 作用 |
---|---|
ARP | 地址解析协议 |
RARP | 逆地址解析协议 |
ICMP | 网际控制报文协议 |
IGMP | 网际组管理协议 |
1)一个IP数据报由首部和数据两部分组成;
2)首部的前一部分是固定长度、共20字节、是所有IP数据报必须具有的;
3)在首部的固定部分的后面是一些可选字段,其长度是可变的;
1)MTU定义:无力网络对帧的数据部分的最大字节数限制,由硬件决定。
2)IP分组的大小由软件定义
IP地址为32位二进制数,4个用圆点隔开的十进制数。由两个固定的字段组成,其中一个字段是网络号net-id,它标志主机(或者路由器)所连接的网络,另一个字段是主机号host-id,它标志的是主机(或路由器)
路由器转发分组时,先按照IP地址中的网络号把目的网络找到,当分组到达目的网络后,再利用主机号将数据报直接交付给目的主机
(1)A类地址的网络号字段net-id为1字节,也就是前8bit;后24bit为host-id
(2)B类地址的网络号字段net-id为2字节,也就是前16bit;后16bit为host-id
(3)C类地址的网络号字段net-id为3字节,也就是前24bit;后8bit为host-id
net-id | host-id | 最为源地址 | 作为目的地址 | 含义 |
---|---|---|---|---|
全0 | 全0 | 可以 | 不可以 | 代表本网络上的本主机 |
全0 | host-id | 可以 | 不可以 | 代表本网络上的某个主机(host-id) |
全1 | 全1 | 不可以 | 可以 | 对本网络上所有主机广播(路由器不转发) |
net-id | 全1 | 不可以 | 可以 | 对net-id指明的网络上的所有主机广播 |
127 | 非全0/1 | 可以 | 可以 | 本地软件环回测试用 |
(1)回环测试地址:本机将IP数据报回传回自身的地址-IP地址第一个字节是127;
(2)广播地址
直接广播地址:用于向某个网络的所有主机广播;例如主机212.111.44.136所在网络的广播地址为212.111.44.255;
有限广播地址(255.255.255.255):在未知本网地址情况下用于本网广播;
(3)网络地址:主机地址部分全部定义为“0”,用于区分网络;
(4)专用IP地址(供测试和独立的网络用,以下IP地址的数据包会被路由器过滤,不会在网络上传输)
(1)IP地址是一种分等级的地址结构。分两个等级的好处是:
(2)实际上IP地址是标志一个主机(或路由器)与一条链路间的接口;
(3)用转发器或网桥连接起来的若干个局域网仍为一个网络,因此这些局域网都具有相同的网络号net-id;
(4)所有分配到网络号net-id的网络,无论是范围很小的局域网,还是可能覆盖很大地理范围的广域网,都是平等的。
1)从数据报的首部提取目的站的IP地址D,得出目的网络地址为N;
2)若网络N与此路由器直接相连,则直接将数据报交付给目的站D;否则是间接交付;
3)若路由表中有目的地址为D的特定主机路由,则将数据报传送给路由表中所指明的下一挑路由器;否则执行(4);
4)若路由表中有到达网络N的路由,则将数据报传送给路由表指明的下一跳路由器;否则执行(5);
5)若路由表中有一个默认路由,则将数据报传送给路由表中所指明的默认路由器;否则执行(6)
6)报告转发分组出错
例如:将一个C类地址划分为6个子网,子网掩码应该此用什么?
定义:组成网络的各个站点都具有一个机器可以识别的地址,称为该站点的物理地址
特点:长度和格式由物理网络的硬件决定,不同网络具有各自的地址定义方式。物理地址不能保证在整个互联网上具有唯一性,但在同一网络上物理地址是唯一的
在大多数情况下,两台主机之间不回仅传递一个数据报。如果每次传递数据报之前都要使用arp请求获取目标的物理地址,通信效率会大大降低
实际中,主机都在本地设置一个ARP高速缓存(ARPCache),存放最近解析出来的IP/MAC映射关系。发送方在发送数据首先会在本地ARP高速缓存中查找,如果找到直接使用,否则会广播arp请求报文,进行地址解析
例如:当主机A向本局域网上的某个主机E发送IP数据报时,就先在其ARP高速缓存中查看有无主机E的IP地址。如果有,就查处其对应的物理地址,再将此硬件写入MAC帧,然后通过局域网将该MAC帧发往此硬件地址
(1)主机A判断D是否与自己处于同一个物理网络,如果不是(即需简介交付),则必须将数据发送给它的默认网关—路由器R,再由R转发给D。
为了提高IP数据报交付成功的机会,在网络层使用了因特网控制报文协议ICMP。ICMP协议允许主机或路由器报告差错情况和提供有关异常情况的报告。它不是高层协议,而是IP层协议。ICMP报文作为IP层数据报的数据,加上IP首部,组成IP报文发送出去。
ICMP差错报告报文
ICMP询问报文
ICMP(Type=3:Destination Unreachable)IP路由过程中,若出现以下问题,路由器或目的主机便发出”目的不可达“ICMP报文通知源端;
优点:
1)分布式路由选择算法(代表算法:距离向量算法)
2)全局路由选择算法(代表算法:链路状态算法)
3)距离向量算法基本思想
1)多播通信是一个源点和一组终点。源点和终点的关系是一对多的;
2)多播通信中,IP数据报中的源地址是单播地址,目的地址都是多播地址。多播地址定义多播组成员,即多播地址并不代表接收者的地址,而是说明了当前分组(目的地址为该多播地址)携带的是哪个多播组的数据。
3)多播通信中,路由器在收到IP数据报后,可以在它的多个接口转发这个分组;
1)单播通信是一个源点和一个终点。源点和终点的关系是一对一的;
2)单播通信中,IP数据报中的源地址和目的地址都是指派给主机的单播地址;
3)单播通信中,路由器在收到IP数据报后,只从它的一个接口转发这个分组;
1)广播通信中,源点和终点的关系也是一对多的。源点只有一个,但所有其他主机都是终点;
2)因特网不支持广播,因为这会产生巨大的通信量;