转发发生在路由器的内部,路由选择发生在路由器的外部(路由器之间)
动态路由:路由器自己根据一系列算法动态地计算出一个合理的路由
如果整个网络都采用动态路由的话,那么每个路由器的负担就很大,所以就引出了层次路由,把整个网络规模划分成几个小区域,每个小区域称为一个自治系统,自治系统内使用的协议成为IGP,自治系统之间使用的协议成为EGP
IP组播:不是在主机复制N份数据发送给各台主机(腾讯会议),而是每经过一个路由器的时候对这个数据进行复制,减轻的我电脑的复制压力,同时也给整个网络的资源流动减轻压力,避免一些拥塞的情况发生
ARP给IP服务,IP给ICMP服务
IP数据报分割成一个个的小单位就叫IP分组(传输单元)
IP层的数据部分就是传输层的报文段
IP数据报首部长度至少20B:0101-1111
填充字段:将首部长度填充到4B的整数倍
IP数据报理论上最大总长度小于65535,但是如果IP数据报过大就会对他进行分片,以满足数据链路层的MTU大小限制
生存时间TTL每经过一个路由器就会-1,变成0就丢弃掉
IPV4的地址长度是32位
每经过一个路由器都要重新计算一下首部检验和,因为每经过一个路由器TTL,标志、片偏移这些字段都有可能会发生变化
片偏移指的是相对于原先未分片的IP数据报数据部分的偏移量
使用IP地址用来标识主机/路由器等设备的接口
在哪个网络?是哪个主机?
使用网络号来标识一个网络
用网桥连接起来的网段仍然是一个局域网,而且只能有一个网络号
路由器的每一个接口都有一个不同网络号的IP地址
绿色部分:无编号/无名网络
一共有6个逻辑上的网络
前几个位数表示的是网络的类别类
分类的目的:有的网络需要的主机多,有的网络需要的主机少
网络号全0表示本网络是不能够使用的
看书:
只有A类地址要多减去一个127开头的网络号
路由器对目的地址是私有IP地址的数据报一律不进行转发
一般都是你请求知名公司的服务,而网络公司的服务器一般都有真实的IP地址与知名端口号或者会通过某种形式告知你的主机的,这样你的目的地址就可以填写它的真实IP地址+端口号了,源地址是NAT转换后的地址+端口号,这样返回的时候可以根据端口号找到对应的内网哪台主机的哪个端口,再发给对应主机就行了
子网掩码的主机号全0,其余全1
主机号全填0就是网络地址
网络号+子网号
选D
子网广播分组:子网号+主机号全1
使用目的地址和子网掩码相与,若和对应子网的网络地址相等就发送给该子网
路由表的表项从之前的几千个增长到几万个
网络前缀是可变长的
cidr地址块:128.14.32.0/20
有几个网络地址都对应同一个路由器的接口就可以把这两个表项做路由聚集
每个主机/路由器都有一个ARP高速缓存:存储的都是局域网内的主机/路由器的IP地址和MAC地址的映射,什么是局域网?》不出路由器就是局域网,本局域网的路由器的端口也要存储,她也属于这个局域网
数据链路层的尾部FCS一般是一个帧检验序列
交换机这种二层设备是没有IP地址和mac地址的
而路由器的每个端口既有IP地址也有mac地址
源/目的IP地址始终不变,mac地址每经过一个路由器就会发生变化
跨局域网发送的全过程:首先主机1将要通信的主机5的IP地址和主机1的子网掩码相与,发现主机5不在局域网内,就把目的mac地址填成默认网关(ip1,ip5,mac1,mac6)发送给默认网关路由器,路由器查路由表从端口7放出,发送给下一个路由器的时候也需要知道下一跳的mac地址,到达第二个路由器的时候,将目的IP地址进行与操作,发现到家了(没有下一跳了),就把数据包交给交换机,交换机根据mac地址查交换表,发送给主机5
使用DHCP给移动的主机分配IP,我带着笔记本电脑从会议室A走到会议室B会使用不同的IP地址
主机广播:你这个破局域网/附近有没有DHCP服务器啊?
第二步因为如果附近有很多DHCP服务器的话,主机就需要从中挑选一个
第三步为什么需要广播?》让其他的DHCP服务器收回他们拟发送的IP地址
第四次为什么还是广播?》此时主机a还没有IP地址啊
全是广播:
组播:一个节点到多个节点
广播:一个节点到所有节点
ICMP询问报文
当IP数据报到达路由器1的时候,路由器会把它的TTL字段-1,发现此时TTL=0的话就把他丢弃掉,并返回主机一个icmp差错报告报文
测算从原点到目的地之间的距离
资源有限怎么办?》开源节流
附加信息有的都放扩展首部,以此来加快路由器的处理速度
IPv6的有效载荷指的是扩展首部+数据部分的大小
下一个首部:指向扩展首部1》扩展首部1的下一个首部》扩展首部2》数据部分
如果IPv4使用了扩展首部路由器是需要检查的
IPv6的地址出厂的时候就已经分配好了,全球唯一,不需要动态地分配了
红字是重点
任播:我发给你这块区域里的随便一个人
组播只是给一个组播组内的主机(有相同需求的主机)
发送的时候只是发送一份,直到快到对应客户们所在的局域网了才会在路由器那里复制N份,再分发给组播组里的主机
单播:
多播/组播(需要组播路由器的支持)
某个主机想要接收某个特定多播组的分组,那么怎么才能使多播数据报传送到主机当中呢?
》组播数据报的目的地址肯定不能写一台主机的IP地址,所以需要一个新的地址,来接收组播的数据报
有的组播只能在局域网内进行,有的范围比较大,可以进入互联网
2个不同的IP地址最后映射成同一个MAC地址
组播路由器还要根英特网上的其他路由器合作来完成组播的任务
稀疏/密集:一个组播组内的主机他们离得远/近 (了解)
手机漫游需要移动IP技术来支持:手机永久地址+转交地址(额外费用)
移动IP最终达到的目的:设备移动,IP不动
A的永久地址:A在最开始的归属网络当中获得的本地地址
对于任何层次的设备都能互联它所在层次及以下层次不同协议的网段?》错误:集线器
路径费用/链路代价/路由跳数
一个自治系统既有内部网关协议,也有外部网关协议
网关以前代表的是路由器
一个AS内使用的:RIP使用距离向量(小网络),OSPF使用的链路状态(大网络)
AS间使用的:BGP
自己的路由表:当前路由器所知道的所有路由信息
我到net1网络的距离是5跳,下一跳走R1路由器
仅和自治系统内部的相邻路由器交换信息!!!
路由表怎么更新的?RIP报文
收到邻居发来的rip报文直接无脑地把跳数+1,下一跳路由器改成X
然后查看自己的路由表当中有没有到net3的路径,并和新收到的路径对比
重要例题!!!
注:这里应该是更新R6的路由表
R1更新之后30秒后才会发送消息给R2,但是此时R2已经把消息发给了R1,R1就会更新它的表项
来回交换错误信息:
OSPF表面是给相邻节点发送路由信息,其实是向全网发送路由信息
最后的结果:每一个路由器都知道它自己到全网路由器的最短路径
链路状态数据库(全网的拓扑结构图)
计网不考迪杰斯特拉算法
主干部分的路由器都叫主干路由器,当然也包括R3和R7这样的区域边界路由器
将一个大的自治系统再划分成小的区域,每个区域处理的信息量就少了,可以处理的规模就大了
OSPF:网络层协议
有变化的时候才交换
树形结构才能保证不兜圈子
交换的信息是一组完整的路径