增补博客 第二十八篇 计算机网络复习三
第三章 数据链路层
1.理解数据链路层的地位与作用,三个基本问题
-
链路:从一个结点到相邻结点的一段物理线路(有线或无线),中间没有任何其他交换结点
-
数据链路:物理链路+通信协议
-
数据链路层的地位:局域网中的主机、交换机必须实现数据链路层;网络中的主机、路由器必须实现数据链路层。
-
数据链路层的作用:网络中两个主机发送数据所经过的网络可以是多种不同类型的,不同类型网络的链路层可能采用不同的协议
-
三个基本问题:
-
封装成帧:在一段数据的前后分别添加首部和尾部,构成一个帧。帧定界符:SOH(帧开始符),EOT(帧结束符)
-
透明传输:若帧出现定界符,在其前面用字符填充法
-
差错检测:循环冗余检验的原理:在发送端,计算CRC冗余码(在待发送数据(k位)后面再添加供差错检测用的CRC冗余码(n位),实际发送k+n位);在接收端:利用n位CRC冗余码对收到的数据进行检验
-
用除数P再除去收到的数,若余数R=0,则证明这个帧无差错,接受
2.使用点对点信道的链路层:信道特点,PPP帧格式,零比特填充法和字节填充法,差错检测(CRC)
-
信道特点:点对点信道使用一对一的点对点通信方式。通常使用PPP协议,用户通过PPP协议接入ISP,再接入互联网
-
PPP帧格图中F为志字段表示开始和结束,是PPP帧的定界符;A和C实际上并没有携带PPP帧的信息;协议字段中的不同数据表示该帧的数据部分的作用不同(背)
-
零比特填充法:同步传输(一连串比特连续传送)在原始数据中出现连续5个1时在其后面加一个0,在接收端收到数据时将这个0删去
-
字节填充法:异步传输(逐个字符传送)在原始数据中若出现开始符7E修改为7D5E;出现7D修改为7D5D;出现03修改为7D23;
-
差错检测(CRC) :同上面的差错检验,用冗杂码进行加密检验
3.使用广播信道的链路层:信道特点,CSMA/CD协议,MAC帧格式,最小帧长和最大帧长
-
信道特点:
-
局域网使用广播信道;
-
多台主机共享局域网内软硬件资源;
-
若多个设备在共享的广播信道上同时发送数据,则会彼此干扰,导致发送失败
-
CSMA/CD协议:载波监听多点接入/碰撞检测
-
“多点接入”:使用广播信道的总线型网络
-
“载波监听”:不停地检测信道(发送前、发送中)
-
“碰撞检测”:检测到碰撞→立即停止发送→等待随机事件后再发送
-
争用期=以太网的端到端往返时间2τ
-
10Mbit/s以太网的争用期2τ=51.2μs。
-
最先发送数据的站,在争用期内没有检测到碰撞,则这次发送肯定不会发生碰撞
-
如果在争用期内发生发生碰撞,需要用截断二进制支书退避算法来计算等待时间。即退避时间=r倍的争用期=r*2τ,r为离散集合【0,1,…,2^k-1】中的一个随机数。k=Min[重传次数,10]。当重传次数=16次,仍不能成功时即丢弃该帧,并向高层报告
-
MAC帧格式:类型:0x0800(IP数据报)、0x0806(ARP报文)
-
最小帧长和最大帧长:最小:64,最大1518主要取决于数据部分的长度
4.网卡的功能和MAC地址,帧的类型(单播帧,广播帧,多播帧)
网卡的功能:计算机通过网络适配器(网卡)和局域网进行通信
MAC地址:MAC地址固化在网卡的ROM中,全球唯一。由6个字节组成,前3个字节由IEEE注册管理机构RA分配,后3个字节由厂家自行指派。注意:当主机或路由器安装有多个适配器,就有多个“MAC地址”帧的类型(单播帧,广播帧,多播帧):
-
一台主机发送单播帧,仅当帧的目的地址与本网卡地址相同时才接收
-
一台主机发送广播帧,其他主机都接收该帧
-
一台主机发送多播帧,即发送给本局域网上一部分站点
5.比较集线器与交换机,交换机的自学习功能及转发帧的过程
比较集线器与交换机:
-
集线器:物理上星型,逻辑上总线型;每个主机到集线器的距离不超过100m;可以使用光纤扩展主机和集线器之间的距离,使用集线器扩展以太网(前提是连接的多个以太网段的速率要相同);采用CSMA/CD,不具有交换机的自学习能力,发送数据采用广播的方式,整个集线器是个碰撞域,不可以缓存帧
-
交换机:以太网交换机工作在数据链路层,处理对象是帧;全双工,不使用CSMA/CD;向某个接口转发帧;每一个接口是个碰撞域;可缓存帧,可自学习。
-
半双工数据传输允许数据在两个方向上传输,但是同一时刻只允许一个方向;全双工也允许在两个方向传输,但同时刻可以同时接受和发送信息
交换机的自学习功能及转发帧的过程:
-
开始时,交换表是空的
-
收到第一个帧后,广播发到其他接口,非目标主机会把收到的帧丢弃,并记录这个接口对应的MAC地址
-
当一个接口发送帧时,先从原接口进入,查找交换表是否有目的地址的记录,如果有就直接发送;如果没有就广播发帧。
-
交换表上的记录会存在有效时间,过了有效时间会清除记录,以免接口更换主机或者主机更换网卡
-
如果两个交换机有两个接口相互连接,会利用生成树协议,在逻辑上删除一个接口
6.广播域和碰撞域,VLAN,生成树协议STP
广播域:指网络中一个站点发出广播帧所影响的范围碰撞域:指网络中一个站点发出的单播帧会与其他站点发出的单播帧产生碰撞的范围;任一个时刻在一个碰撞域中只能有一个主机发送数据VLAN:即虚拟局域网,不改变网络的物理局域网,在逻辑上划分虚拟局域网。可以基于交换机端口,基于主机MAC地址,基于主机IP地址(交换机只在802.1Q标记相同的接口之间转发帧)划分VLAN
生成树协议STP:不改变网络的物理拓扑,但在逻辑上切断某些链路,消除回路
第四章 网络层
1.网络连接设备:中继器,集线器,交换机,路由器的工作层次
中继器:物理层使用设备集线器:物理层使用设备交换机:数据链路层使用设备路由器:网络层使用设备
2.IP地址:分类IP地址;互联网中的IP地址,特殊IP地址(网络地址,广播地址)
分类IP地址:
-
A类地址:0.0.0.0~127.255.255.255
-
B类地址:128.0.0.0~191.255.255.255
-
C类地址:192.0.0.0~223.255.255.255
-
D类地址:224.0.0.0~239.255.255.255
-
E类地址:240.0.0.0~255.255.255.255
互联网中的IP地址:有两个字段组成,第一个字段是网络号,标志着主机(或路由器)要连接到的网络;第二个字段是主机号,标志着一台主机号在他前面的网络号所指明的网络范围内必须是唯一的特殊IP地址(网络地址,广播地址等) :
-
网络号特定值;主机号全是0:网络地址,表示一个网络,如:10.0.0.0
-
网络号特定值,主机号全是1:直接广播地址,指特定网络中的所有主机,如:10.255.255.255
-
网络号主机号都为1,有限广播地址,指本网络中的所有主机:255.255.255.255
-
网络号主机号都为0,未获取UO地址的主机或路由表中的默认路由
-
网络号127,主机号全0或全1除外的任何数,环回地址,用于本主机软件环回测试
-
网络号169.254,主机号全0或全1除外的任何数,当不能通过DHCP正常得到IP地址时,由Windows系统自动为主机分配的IP地址
3.IP地址与硬件地址的关系,ARP协议(ARP原理,ARP缓存,同一局域网使用ARP,跨网使用ARP)
IP地址与硬件地址的关系:在网络中传输数据时,目的IP地址不变,但目的MAC地址会随着传输到不同设备改变ARP协议(ARP原理,ARP缓存,同一局域网使用ARP,跨网使用ARP)
-
ARP的作用:已知主机或路由器接口的IP地址,找出其MAC地址
-
ARP缓存:每个主机都有一个ARP高速缓存,保存本局域网中IP地址到MAC地址的映射表
-
同一局域网使用ARP:当主机A向本局域网中主机B发送数据时,先查ARP高速缓存,若没有,则运行ARP,查找B的MAC地址
-
ARP原理:主机A广播发送ARP请求分组,目标主机B收到请求后,向A发送ARP相应分组
-
跨网使用ARP:判断目标IP和源IP不是同一网段后,主机就要通过网关来传递信息了。信息先发送到网关机上,再由网关机转发。在查找目标不在同一网段后,目标IP改为网关机的IP,MAC地址为广播地址,发送信息时加上目标IP和MAC地址发送到网关中。
4.IP数据报格式:首部长度和总长度,IP分片与重组(标识,标志,片偏移),生存时间TTL,协议,首部检验和
首部长度:4位,首部长度=固定部分(20字节)+可选字段(0~40字节),取值范围5到15,单位为4字节总长度:16位,单位为1字节,最大值为65535,但总长度必须不超过MTUIP分片与重组(标识,标志,片偏移) :
-
网络链路存在MTU:链路层帧可封装数据的上限;不同链路的MTU不同
-
大IP分组向较小MTU链路转发时,可以被“分片”
-
IP分片到达目的主机后进行“重组”
-
标识(16位):标识一个IP数据报,IP数据报分片时,所有分片具有相同的标识
-
标志(3位):MF=1,还有分片;MF=0,最后一个分片;DF=1,禁止分片;DF=0,允许分片
-
片偏移(13位):某分片在原IP数据报中的相对位置。单位为8个字节
生存时间TTL:8位,指数据报在网络中可通过的路由器数的最大值。IP数据报每经过一个路由器,TTL减1。当减到0时,这个数据报就会被丢失协议:8位,指数据部分是何种协议
-
=6,TCP
-
=17,UDP
-
=1,ICMP
-
=41,IPv6首部检验和:只检验首部,不检验数据部分。,设首部检验和为0,将首部每2个字节当做一个数,将所有数相加求和,进位累加,对求和结果求反得到
5.划分子网:子网划分,子网掩码,根据IP地址和子网掩码计算该IP地址所在网络的网络地址,广播地址,子网数和子网中的主机数
子网划分:
子网掩码:形如IP地址,网络号和子网号全取1,主机号全取0
根据IP地址和子网掩码计算该IP地址所在网络的网络地址、广播地址、子网数和子网中的主机数:路由优级:直连路由》特定主机路由》静态路由》动态路由》默认路由
6.CIDR(给定一个CIDR地址快,计算最小IP地址,最大IP地址,掩码和地址总数)和路由聚合(给定几个IP地址,计算聚合后的地址)
CIDR(给定一个CIDR地址快,计算最小IP地址,最大IP地址,掩码和地址总数) :- 无类域间路由CIDR:a.b.c.d/x- 例如:200.23.16.0/23==200.23.16.0,255.255.254.0路由聚合(给定几个IP地址,计算聚合后的地址) :将多个子网聚合为一个较大的子网。前提:地址块是连续的。最长前缀匹配优先
7.ICMP协议:ICMP协议的作用,ICMP差错报文何时产生,由谁产生.PING命令和Tracert命令的工作原理
ICMP协议的作用:支持主机或路由器进行差错报告和网络探询。向源主机报告IP数据报的差错信息;只是报告差错,不能纠正差错。ICMP报文有两种,即ICMP差错报告报文(单向,向源主机报告差错)和ICMP询问报文(双向,向源主机请求,向目的主机应答)ICMP差错报文何时产生,由谁产生:
-
终点不可达:当路由器或主机不能交付数据报时向源点发送终点不可达报文
-
时间超过:当路由器收到生存时间为零的数据报,除丢弃该数据报外,还要向源点发送时间超过报文。当终点在预先规定的时间内不能收到一个数据报的全部数据报片时,就把已收到的数据报片都丢弃,并向源点发送时间超过报文。
-
参数问题:当路由器或目的主机收到的数据报的首部中有的字段的值不正确就丢弃该数据报,并向源点发送参数问题报文
-
改变路由(重定向):路由器把改变路由报文发送给主机,让主机知道下次应将数据报发给另外的路由器PING命令和Tracert命令的工作原理:分组网间探测PING用来测试两台主机之间的连通性,使用了ICMP回送请求与回送回答报文;tracert命令用来跟踪一个分组从源点到终点的路径
8.路由器:给定拓扑写出路由器(直连路由,静态路由和动态路由,默认路由),路由器根据路由器转发IP数据报的过程
给定拓扑写出路由器(直连路由,静态路由和动态路由,默认路由) :
-
静态路由:管理员手工配置的路由;需要人工维护,适合拓扑简单、稳定的网络,路由器开销小
-
动态路由:管理员在路由器上配置动态路由协议,使路由器与其他路由器进行通信来维护路由表;无需人工维护,适合拓扑复杂、变化的网络;路由器开销大
-
默认路由:是对IP数据报中的目的地址找不到存在的其他路由时,路由器所选择的路由。目的地不在路由表里的所有数据包都会使用默认路由。这条路由一般会连去另一个路由器,而这个路由器也同样处理数据包;如果知道应该怎么路由这个数据抱,则数据包被转发到已知的路由;否则,数据包会被转发到默认路由,从而到达另一个路由器。每次转发,路由都增加了一跳的距离。
-
直连路由:路由器接口所连接的子网的路由方式称为直连路由。直连路由是由链路层协议发现的,一般指去往路由器的接口地址所在网段的路径,该路径不需要网络管理员维护,也不需要路由器通过某种算法进行计算获得,只要该接口处于活动状态,路由器就会把通向该网段的路由学习天写到路由表中去,直连路由无法使路由器获取与其不直接相连的路由信息。
路由器根据路由器转发IP数据报的过程:
-
路由选择:根据IP数据报的目的地址查询路由表,确定下一跳地址。经过网络中的所有节点共同协调工作后,选择一条最佳路由
9.RIP:距离,距离向量算法,工作过程,特点
-
自治系统AS:属于一个组织机构的内部网络
-
内部网关协议:运行与AS内部路由器上的动态路由协议,如:RIP、OSPF
-
外部网关协议:用于在AS与AS之间建立动态路由的协议,如:BGP-4
距离:
-
从一个路由器到直接连接的网络的距离定义为1
-
从一个路由器到非直接连接的网络的距离定义为所经过的路由器数加1
-
RIP协议中的“距离”也称为“跳数”,实际上指的是“最短距离”
-
RIP认为一个好的路由就是他通过的路由器的数目少,即“距离短”
-
RIP允许一条路径最多只能包含15个路由器
-
“距离”的最大值为16时即相当于不可达。可见RIP只适用于小型互联网
-
RIP不能再两个网路之间同时适用多条路由
距离向量算法:路由器R收到邻居路由器X的路由表后:
-
将收到的路由表(即邻居的路由表)中所有的项目的“下一跳”改为X,所有“距离”值加1
-
对修改的每个项目(N,d,X):
-
若N不在R的路由表中,则添加该项目
-
若N在R的路由表中,且“下一跳”也是X,则更新该项目
-
若N在R的路由表中,但“下一跳”不是X,如果距离d值较小,则用该项目替换原项目
工作过程:
-
路由器在刚刚开始工作时,只知道到连接的网络的距离(此距离定义为1)。他的路由表是空的
-
以后,每一个路由器也只和数目非常有限的相邻路由器交换并更新路由信息
-
经过若干次更新后,所有的路由器最终都会知道到达本自治系统中任何一个网络的最短距离和下一跳路由器的地址
-
RIP协议的收敛过程较快。“收敛”就是在自治系统中所有的结点都得到正确的路由选择信息的过程
-
RIP协议让互联网中的所有路由器都和自己的相邻路由器不断交换
特点:
-
仅和相邻路由器交换信息
-
交换的信息是当前本路由器所知道的全部信息,即自己的路由表
-
按固定的时间间隔交换路由信息,例如每隔30秒。当网络拓扑发生变化时,路由器也及时向相邻路由器通告拓扑变化后的路由信息
-
网络规模较小
-
以跳表示链路开销
-
占用宽带较多
-
收敛慢:当网络出现故障时,RIP需较长时间才能让所有路由器知晓
10.OSPF:链路状态,OSPF的工作过程,OSPF区域
链路状态:
-
本路由器的各接口IP地址和接口状态
-
相邻路由器接口IP地址
-
链路的开销
OSPF的工作过程:
-
每个路由器维护链路状态数据库(全网的拓扑结构图)
-
可知全网共有多少台路由器
-
哪些路由器是相连的
-
链路代价是多少
-
每个路由器根据链路状态数据库,利用Dijkstra算法,求出到达每个网络的最短路径,一次构造路由表R8根据链路状态数据库调用Dijkstra算法获得以R8为根的最短路径树根据最短路径树生成路由表
OSPF区域:为了使OSPF能够用于规模很大的网络,OSPF将一个自治系统再划分为若干个更小的范围,叫做区域。划分区域的好处就是把利用洪泛法交换链路状态信息的范围局限于每一个区域而不是整个的自治系统,这就减少了整个网络上的通信量粉色区域为主干区域,里面的路由器叫主干路由器(包括边缘的)主干边缘和其他区域交接的路由器又叫区域边界路由器R6这种位置的叫自治系统边界路由
11.外部网关协议BGP:寻找可达性的路由,策略路由
寻找可达性的路由:用于在不同自治系统的边界路由器之间交换路由信息,寻找一条可以到达目的网络的较好路径策略路由:
12.IPv6:ipv6数据报格式,IPv6相比IPv4的变化,IPv6地址的表示,从IPv4相比IPv6的过渡技术
ipv6数据报格式:IPv6数据报=基本首部+有效载荷;有效载荷=扩展首部+数据部分
-
优先级(8位):为了区分不同的IPv6数据报的类别或优先级
-
流标签(20位):属于同一个流的数据报具有同样的流标签
-
有效载荷长度(16位):指IPv6数据报除基本首部以外字节数,最大值是65535
-
下一个首部(8位):相当于IPv4的协议字段
-
跳数限制(8位):相当于IPv4的TTL字段IPv6相比IPv4的变化:
IPv6地址的表示:
-
冒号十六进制记法:各段之间用冒号分隔:68E6:8C64:FFFF:FFFF:0000:1180:960A:FFFF
-
零压缩表示法:连续的零可用双冒号代替(只能使用一次):0:0:0:2AA:23:0:0:0→::2AA:23:0:0:0
-
CIDR表示法:21DA::D3:0:0/48
-
URLs:http://[3FFE::1:800:200C:417A]:8000
从IPv4相比IPv6的过渡技术:
-
使用双协议栈路由器B和E同时具有两种IP地址:一个IPv6地址和一个IPv4地址
-
使用隧道技术路由器B把IPv6数据报封装在IPv4数据报中发送给路由器E
13.IP多播:比较(单播,广播,多播,任播),IP多播数据报的封装,多播IP地址与多播MAC地址,IGMP协议的作用
比较(单播,广播,多播,任播):
-
单播:单个源节点向单个目的结点发送分组
-
广播:单个源节点向同网络中的所有结点发送分组
-
多播:单个源节点向多个目的结点发送分组
-
任播:单个源节点向多个目的结点中距离最近的单个结点发送分组
IP多播数据报的封装:IP首部加上IGMP报文,其中首部的协议字段等于2,目的地址为D类IP地址(224.0.0.0~239.255.255.255)
多播IP地址与多播MAC地址:
-
多播IP地址即D类IP地址:224.0.0.0~239.255.255.255
-
多播MAC地址的最低23位来自D类IP地址,即01-00-5E-00-00-00 ~ 01-00-5E-7F-FF-FF
IGMP协议的作用:是让连接在本地局域网上的多播路由器知道本局域网上是否有主机参加或退出了某个多播组
14.VPN:私有IP,VPN路由器封装IP数据报的过程,三种VPN类型的判断,NAT路由器封装IP数据报的过程
私有IP:仅在机构内部使用,不需要向因特网管理机构申请
-
A类:10.0.0.0到10.255.255.255
-
B类:172.16.0.0到172.31.255.255
-
C类:192.168.0.0到192.168.255.255
VPN路由器封装IP数据报的过程:用隧道技术实现VPN。将原本的IP数据报作为数据部分加密到新的IP数据报中,并为她添加新的数据报首部,源地址是发送的路由器地址,目的地址是收到的路由器地址
三种VPN类型的判断:
-
内联网VPN:同属于一个机构的内部部门A和B之间建立的VPN
-
外联网VPN:一个机构和某些外部机构共同建立的VPN
-
远程接入VPN:外地出差的工作人员与公司网络之间建立的VPNNAT路由器封装IP数据报的过程:
-
替换:替换每个外出IP数据报的源地址
-
记录:替换信息存储到NAT转换表
-
替换:替换每个进入内网的IP数据报的目的地址
15.MPLS:与传输路由技术的比较,负载均衡与FEC
MPLS:多协议标记交换,在MPLS域的入口处给每个IP数据报打标机,使用硬件转发
与传输路由技术的比较:
-
传统路由器技术数据转发机制:传统路由器IP寻址方式是逐跳转发的。转发需要由路由器对IP数据包进行解包处理,再通过路由协议决定转发方向。由于IP包的不定长特性,也就意味着时延大、转发速度慢
-
基于ATM的MPLS数据转发机制:多协议,因为MPLS基于IP路由和控制协议,一个介于第三层和第二层之间的“垫层”,MPLS不受链路层协议的限制(可使用多种链路层协议)
负载均衡与FEC:
-
转发等价类FEC:指路由器按照同样方式对待的IP数据报的集合
-
“按照同样方式对待”表示:从同样接口转发到同样的下一跳地址,并且具有同样服务类别和同样丢弃优先级等
-
FEC和标记是一一对应的关系:MPLS的入口结点将属于同样FEC的IP数据报指派同样的标记