CRC校验与RARP协议

CRC(Cyclic Redundancy Check): 循环冗余检验。
CRC校验:广泛应用于数据链路层的差错检验技术,保证数据传输的可靠性。
CRC校验原理:
发送端:传送数据 M= 101001
冗余码即帧检验序列(FCS)的获得:
1、在CRC算法中,除数有一个专有名称叫做生成多项式
多项式P(X) = X³+X²+1表示除数P = 1101,多项式的位宽w=3(P的位数-1)也是冗余码的位数n。
2、在M的后面追加n个0,再对除数P进行模2运算。
这里写图片描述

3、将余数作为冗余码拼在M的后面即101001001发送给接收端。

接收端:把接收的数据以帧为单位进行CRC检验。
1、将接收到的数据对除数P进行模2运算,取得余数R。
这里写图片描述
2、若R = 0,则帧没有差错,接受并发送确认给发送方;
若R ≠ 0,则帧有差错,丢弃(但无法确定是哪一位出现差错);
注:发送方在一定的期限没有收到来自接收方的确认,则重传直到收到确认。


RARP协议:通过MAC地址解析IP地址。
局域网在很久以前是无盘工作站的,无盘工作站是硬盘和操作系统分开的,这样由于主机上没有硬盘故不能保存IP地址信息,而MAC地址是永久存储在网卡中的,所以此时主机知道自己的MAC但不知道自己IP,但是要通信必须有IP地址啊,否则FTP/TFTP/SMTP等应用层协议都不能使用了,如果局域网管理员一台一台的给主机配置IP就太麻烦了,此时你可能会想到用DHCP啊,DHCP就是用于自动获取IP地址的,正确又不完全正确,正确是DHCP确实能解决这个问题,不正确是因为在很久以前DHCP是没有的(DHCP RFC文档 2131在1997年3月份才发布),那么这个问题该如何解决呢?答案就是今天探讨的RARP(RFC文档编号903,发布日期1984年6月份),通常情况下我们把RARP理解为把MAC地址映射为IP地址,这里说的把MAC地址映射为IP地址实际上无盘主机在开机后,网卡引导程序会通过广播的方式询问局域网所有主机,有谁知道我的IP地址啊?RARP服务器收到这个报文后就会告诉你的IP地址是多少,这样无盘主机就有IP地址了。在1985年9月份BOOTP出现并取代了RARP协议,编号是RFC 951,然后就一直到1997年DHCP的出现。

RARP、BOOTP、DHCP这三种协议有什么区别呢?

1、RARP的实现是在数据链路层实现的,BOOTP和DHCP的实现是在UDP传输层实现的,这仅仅是表面上的区别,那优势呢,如果没有优势BOOTP就不会取代RARP了,RARP工作在数据链路层就需要网卡去解析协议,而随着操作系统的发展,纯软件实现的网络协议内核比纯硬件网卡解析更加实惠,而BOOTP就是使用网络协议内核去解析的。
2、RARP服务器只能提供简单的地址分配,而且这些IP地址和MAC地址必须要提前在RARP服务器上配置好,而BOOTP和DHCP有更多复杂的功能,比如租约周期、地址池、网关和DNS服务器等,在这个年代你没有DNS只有IP也是不能上网的,除非你手动指定DNS服务器。另外BOOTP在获取到IP地址后客户端还会通过TFTP或者FTP协议去网络服务器上下载一个引导镜像文件。
3、DHCP是BOOTP的升级版本,增加了Option配置选项,而且DHCP可以分配之前已经分过的但当前没有使用的IP地址,提高了IP地址利用率。而BOOTP的IP地址和MAC地址的映射是事先配置好不能动态改变的。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值