网络层-2

网际控制报文协议ICMP:
为了更有效地转发IP数据报和提高交付成功的机会,在网际层使用了ICMP,ICMP允许主机或路由器报告差错情况和提供有关异常情况的报告。
ICMP差错报告报文
1 终点不可达:不能交付,向源点发此报文,如接受方发现是无效的端口
2 源点抑制:拥塞而丢弃数据报,向源点发此报文
3 时间超过:ttl被路由器减为0了,丢弃且发此报文,对端在规定时间内没有收到全部分片,丢弃已收分片发此报文。
4 参数问题:首部有内容不正确,丢弃且发此报文
5 改变路由(重定向):主机喜欢走默认路由,默认路由器发现有更好路由,告知主机下次这个地址可以走别的路由器,主机路由表新增表项。
在这里插入图片描述在这里插入图片描述

可以看到差错报告报文含IP数据报首部,ICMP首部,原IP数据报首部,原IP数据报8字节内容(含tcp/udp端口号和tcp的seq no,可用于源点通知高层协议)。
ICMP询问报文
1 回送请求和回送回答报文:测试可达性,如ping
2 时间戳请求和时间戳回答报文:请某个主机或路由器应答当前时间,用于时钟同步和测量时间。
应用:ping
traceroute:跟踪分组从源点到终点的路径,ttl为1,为2,不断增长,收到各路由器的ICMP时间超过报文,最终到达目标主机,UDP用户数据报含非法端口,无法交付,主机发来ICMP终点不可达报文

路由选择协议:
路由表是如何建立和更新的?
理想的路由算法:正确,完整,简单,自适应性(适应通信量和网络拓扑的变化,通信量变了能否改变路由均衡各链路负载,新加或减少节点时能否改变路由),稳定性(通信量和网络拓扑相对稳定时,是否收敛,而不是路由不断变化),公平(对所有用户一样),最佳(如分组平均时延最小,吞吐量最大,但这需要具体要求来看)
静态(非自适应)路由选择:简单,开销小,适用小网络,人工配置路由。
动态(自适应)路由选择:复杂,开销大,适用大网络。
Internet 使用自适应的,分层次的,分布式路由选择协议
互联网分为多个自治系统AS(一般是ISP),
解决两个问题:1 路由器知道所有网络的路由会导致路由表太大,自治系统内路由器可关注系统内各网络如何到达
2 许多单位不希望公布自己的网络细节
路由选择协议分以下两类
内部网关协议 IGP:一个自治系统内部使用的路由选择协议。有多种协议,如 RIP 和OSPF 协议。域内路由选择
外部网关协议EGP:一个自治系统的边界,将路由选择信息传递到另一个自治系统中。目前使用的就是BGP,域间路由选择
目标主机在自治系统内,内部路由器(含AS内各网络路由)就送到目标主机。
目标主机在自治系统外,数据传至边界路由器,数据在多个AS的边界路由器传递最后到达目标AS边界路由器,然后由目标AS内部路由器传至目标主机。

RIP(路由信息协议):
基于距离向量,固定时间间隔和相邻路由器交换自身的完整路由表(网络规模增大,开销增大)
实现简单,开销较小
路由格式:(网络,最短距离,下一跳地址)
与路由器直连的网络距离为1,最大距离为 15(16 表示不可达),两个网络之间不存在多条路由,只有最少距离(路由器)的路由,因此限制了网络规模,适用小型网络
坏消息传递慢:网络故障,长时间才能将此信息传到所有路由器。如下图R1和R2都到16后才知道网1不可达
在这里插入图片描述

路由器A收到相邻路由器B的路由信息:
1 距离加1,下一跳地址改为B,目的网络为D(不变)
2 A没有D的路由信息,新增
3 A内D的路由信息下一跳也是B,直接替换
4 A内D的路由信息下一跳不是B,若新路由距离更小,替换。
一段时间未收到相邻路由器的信息,标记相邻路由器不可达(16)

RIP格式:IP+UDP+RIP首部+RIP数据
RIP首部:4字节,其中的命令字段:1 为请求路由信息,2 为对请求的响应或主动发出的路由更新报文
RIP数据:单个路由信息20字节,最多25个,故RIP报文最长504字节,路由器交换全部路由信息可能发多个RIP报文

OSPF(开放最短路径优先):
使用分布式的链路状态协议,
(1)使用洪泛法向本自治系统中所有路由器发送信息,给相邻的,相邻的再给其相邻的,但不回传。
(2)发送的信息是与本路由器相邻的所有路由器的链路状态。链路状态:本路由器与哪些路由器相邻,及每条链路的metric(度量,代价,具体可以是带宽,距离等等,网管决定)
(3)只有当链路状态发生变化时,路由器才用洪泛法向所有路由器发送此信息。
所有路由器都能建立和拥有一个一致的链路状态数据库(全网的拓扑结构图),每个路由器根据此数据库构建自己的路由表(最小代价来决定路由,同样的代价可以负载均衡),更新过程收敛得快(链路变化,洪泛法各路由器快速更新自己的数据库,从而更新自己的路由表)
OSPF将AS划分为区域, 层次结构区域划分,主干(上层)区域和下层的区域,主干区域用于连通下层的区域, 洪泛法的范围局限于区域内
区域内部路由器 区域边界路由器, 主干路由器(主干区域内的路由器,包含下层区域的边界路由器和在主干区域内连通的路由器和自治系统边界路由器)

OSPF格式:IP+OSPF首部+数据
五种分组类型:
1 问候:发现和维持邻站可达性,定时交换,没收到认为邻站不可达
2 数据库描述:向邻站给出自己的数据库摘要
3 链路状态请求:向邻站请求某些链路的详细信息
4 链路状态更新:核心,可靠的洪泛法全网更新,可靠是因为有更新的确认
5 链路状态确认:对更新的确认
路由器刚开始工作,先问候确认哪些相邻路由器在工作,然后和邻站交换数据库描述,发现自己很多没有,向邻站请求某些链路的详细信息

BGP(边界网关协议):
不同自治系统的路由器之间交换路由信息的协议,BGP采用了路径向量路由选择协议
自治系统AS之间的路由选择必须考虑有关策略(政治,安全等),如传数据不过某个AS(国家)
BGP只能力求寻找一条能够到达目的网络且比较好的路由,而并非要寻找一条最佳路由。
BGP发言人一般是BGP边界路由器,发言人要运行AS本身的内部网关协议和BGP协议
发言人之间交换路由信息,先建立TCP连接,然后建立BGP会话,利用会话交换路由(新增,撤销路由,报告差错等)
BGP路由表:(目的网络前缀,下一跳路由器,AS序列)
BGP交换的信息:到某个网络(前缀)要经过的一系列AS,BGP发言人自己可画出AS连通图
BGP刚开始工作,邻站交换整个BGP路由表,以后交换更新的部分。

BGP格式:IP+TCP+BGP首部+数据,如下四种类型
OPEN: 相邻发言人建立关系,我发OPEN,你回KEEPALIVE,关系建立
UPDATE:通知一条新路由和撤销多条路由
KEEPALIVE:周期性证实邻站连通性
NOTIFICATION:发送错误

路由器:
多输入,多输出端口,交换结构(根据转发表转发分组)
路由表:(网络,下一跳地址 )
转发表:根据路由表构建,使查找过程最优,甚至可用硬件实现,有些时候不区分这两个。
输入端口:物理层,数据链路层和网络层处理模块(1分组为路由信息,送入路由选择处理机 2数据分组,查找转发表,经交换结构到输出端口),复制转发表到每个输入端口中
输出端口:网络层,数据链路层和网络层处理模块。
两个问题:线路传数据给路由器的速率(线速)超过输入端口的处理速率,交换结构传送过来的速率超过输出链路的发送速率,所以输入输出端口的网络层处理模块都有缓存功能(队列),队列溢出导致分组丢失
交换结构:如何转移,考虑查找转发表后,需从输出端口2输出,怎么把分组传送到输出端口2?
1通过存储器 2 通过共享的总线 3 通过互联网络(多总线)

IP多播(略)

专用互联网/本地互联网/专用网(private network):使用专用地址(private address)的网络,这种地址只能用于机构内部通信
10.0.0.0到10.255.255.255
172.16.0.0 到172.31.255.255
192.168.0.0到192.168.255.255
一个机构有多个遥远的部门,分别使用自己的专用网,专用网之间如何通信?
vpn(virtual private network): 使用互联网来进行专用网之间的通信(IP隧道技术)
加密整个内部数据报(srcIP,destIP,真实数据)作为外部数据报的数据,外部数据报(route1IP,route2IP),通过互联网给到route2,route2解密恢复内部数据报。

NAT网络地址转换
专用网的机器如何与互联网通信?专用网主机不能作为服务器(外界无法直接访问)
路由器安装NAT软件,成为NAT路由器,含NAT地址转换表
传统NAT: 专用网的多台主机轮流使用路由器的几个IP, 对外访问时临时分配ip并修改srcIP并记录在转换表,收到应答时查找转换表修改destIP
NAPT:对外访问时修改srcIP和srcPort并记录,收到应答时查找转换表修改destIP和destPort.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值