您的位置:首页 > 业界新闻

互联网控制消息协议ICMP和地址解析协议ARP及拥塞控制

2019-06-28 20:25 1746 查看

文章目录

  • 地址解析协议ARP
  • 拥塞控制
  • 互联网控制消息协议ICMP

    • 为什么需要ICMP
    • IP分组传送不可靠,可能遭遇各种问题(丢包,可能发生拥塞,产生很大的延迟、抖动等)

    为了解决这些问题设计了IP协议的姊妹协议ICMP,它可以向源报告拥塞、超时、目标不可达等问题,也可以用来测试网络(ping、tracert)

    ICMP消息格式

    ICMP被封装到IP分组的数据域中,这个时候IP报头的协议字段值为1,ICMP数据报分为ICMP头标和数据,头里包括类型,代码和校验和。

    ICMP的应用

    • ping
    • ping时,源机向母的站点发送一个icmp回声请求报文。目的站点接收到后,必须向源站点发挥一个ICMP回声应答报文,源站点收到应答报文且其数据和发出的数据相同,则目的可达。

    ** ping可以做的事情**

    测试TCP/IP是否正常工作 ping 127.0.0.1
    网络设备是否正常 ping 本机IP地址
    检查对外连接的路由器 ping 默认网关 IP
    检查与某台设备的畅通情况 ping IP
    检查DNS设置 ping www.scut.edu.cn
    DNS 反向查询 ping -a ip地址
    • 当ping不同时,如果想知道是哪一个环节出现故障,则可以使用tracert,tracert可以通过ICMP超时报文来得到一张途径的路由器列表(相对稳定的网络tracert才有意义)
    • 路径MTU(PMTU):动态发现互联网上任意一条路径的最大传输单元的技术(以太网的MTU=1500字节),当超过一个网络的MTU,网络将无法承载这个数据,这个时候需要进行分片,但是分片不安全,所以最好源机一开始就知道网络中的最小MTU。而PMTU算法就可以通过使用ICMP协议来发现网络中的最小MTU。

    地址解析协议ARP

    如果发放只知道对方的IP地址,而不知道对方的MAC地址怎么办?

    • 这时候就需要地址解析协议ARP(Address Resolution Protocol),运行在局域网中,他将目标机的IP地址映射到MAC地址上。当主机A向同一个局域网内的主机E发送消息,而不知道他的MAC地址时,会发送ARP请求,同一局域网内的所有主机都会收到这个请求,但只有主机E会应答,那并告知对方自己的MAC地址。
      ARP请求帧的格式:在这个帧中目的地址是48个1,广播地址
      ARP应答帧:目的地址有明确的地址,即是单播回请求机,
    • 为了让ARP工作的更高效,可以采用一些优化措施:1). 见一个ARP表缓存ARP的结果,2). 用ARP请求中的源信息来更新ARP表 3). 每一台主机在启动的时候回广播自己的IP地址与MAC地址映射对,这时候ARP请求帧的目标ip是他自己ip。
    • ARP是一个二层协议,当目标机是一个远程机时,怎么办?
    • Host1 想跟Host4 进行通信的时候,首先发现他们不在同一个局域网内,这时候Host1将通过默认网关(在上网时配置好的,或主机通过DHCP协议自动获取的),对外进行通信,这时候默认网关收到ARP请求后会将自己的mac地址发送给Host1,host1 将吧这个Mac地址封装到帧中,Host1将数据法向默认网关,默认网关将数据发向host4所在的网络,在最后一个网段通过MAC寻址定位到了host4。 **数据在途径每一个路由器或默认网关的时候头中的源IP地址和目的IP地址都不会发生改变,而MAC地址一直在发生改变。
    • 为了减少ARP请求,每个设备都有自己的ARP表包括路由器,这个ARP表是自动建立、更新 和维护的。
    • 通过广播ARP请求中的源设备信息添加和更新表
    • 利用自己的ARP请求之瘾大信息添加和更新表
    • 删除超过一定时限的信息
    • ARP表的动态维护,减少了人工操作和ARP请求的次数,但是同时也带来了安全隐患,局域网中经常出现ARP病毒,要彻底消除ARP病毒,只需要静态绑定IP地址和MAC地址即可

    拥塞控制

    当一个网或子网的一部分出现太多分组的时候,网络的性能开始急剧下降,这就是拥塞。网络出现拥塞的时候,分组被丢弃、重传,导致网络吞吐量急剧下降,甚至无法传输分组。

    拥塞控制的两类措施

    • 开环

    开环是试图通过良好的设计来避免拥塞的发生,它的本质是从一开始就保证问题不会发生,开环决定不考虑网络的当前状态,他是提前考虑;但网络变换太快,很难准确估计需求,即使超前的设计,随着时间的推移,也会越来越力不从心。所以更多的时使用闭环控制。

    • 闭环

    闭环控制是建立在反馈环路上,分为三步:1). 监视系统,发现网络在何时何地发送拥塞;2). 传递拥塞信号:将拥塞信号传递到可以解决问题的地方;3). 调整运行,控制拥塞

    • 如何知道何时何地发生拥塞?可以通过查看一些参数:比如,拥塞度量:因为缺乏缓存空间而丢弃的分组百分比;平均队列长度;超时和重传的分组数;平均分组延迟;分组延迟的标准方差。
    • 检测到拥塞后怎么办? 拥塞信息传播
    • 检测到拥塞的路由器发送一个警告分组给流量源,但是这个消息可能无法到达源
    • 其他方法:每个分组可以保留一位或一个域,当拥塞度量超过阈值时候,路由器填充该位域,以此警告他的邻居。
    • 其他方法:主机或路由器周期性的向外发送探寻分组,显示的询问有关拥塞的情况,然后,再有问题的区域利用回收的信息来路由流量

    怎么解决拥塞问题

    拥塞根源:负载>资源措施就分为两大类

    • 降低负载
    1. 拒绝为某些用户提供服务
    2. 给某些服务降低等级
    3. 绕开拥塞点
    • 增加资源
    1. 某些点之间增加通道,增加带宽
    2. 启用空闲的光纤,路由器
    • 数据报子网中的流量限制方法
    1. 每台路由器监视它的输出线路和其他资源的使用情况
      2)每条线路和一个实变量u关联在一起,其值位于(0.0-1.0)之间
      3)无论何时,只要u超出了阈值,对应的线路就进入到警告状态
      4)每个新到达的分组都将被检查,看他的输出线路是否处于“警告状态”,处于“警告状态”可以采取抑制分组的措施
    • 负载脱落 (分组丢弃)
      1)随机丢弃
      2)丢弃新到达的分组(葡萄酒策略,适合文件传输类)
      3)丢弃早到达的分组(牛奶策略,适合多媒体类)
      4)丢弃不太重要的分组

    随机早期检测(RED):在情况恶劣之前,早早的开始丢弃分组,

    注:主要参考袁华老师课程

    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: