crc校验码计算 | 您所在的位置:网站首页 › 计算机网络crc计算方式 › crc校验码计算 |
概览
计算机网络定义 计算机网络主要是由一些通用的、可编程的硬件互连而成,通过这些硬件,可以传送不同类型的数据,并且可以支持广泛和日益增长的应用。 需要注意的点 计算机网络不是软件概念,还包括硬件设备计算机网络不仅仅是信息通信,还可以支持广泛的应用根据网络的作用范围,可以将计算机网络分为广域网(WAN)、城域网(MAN)、局域网(LAN)。如图:各个计算机网络的介绍 根据网络的使用者划分,分为公用网络、专用网络。 计算机网络的发展历史如图:互联网历史发展的阶段 第一阶段 第二阶段 第三阶段 ISP:网络服务提供商 全世界网络分布范围live.infrapedia.com如图:中国互联网的发展阶段 中国当前最大的共用计算机网络 计算机网络层次结构计算机网络为什么使用层次结构的设计? 第一,需要保障数据通信顺畅;第二,能识别目的计算机;第三,通过计算机网络,计算机可以查询到目的计算机的状态;第四,计算机网络可以保障数据不会出错。因此,计算机网络采用分层设计,分层实现不同的功能。 如图:计算机网络层次结构的例子 计算机网络层次设计的基本原则 各层是相互独立的每一层有足够的灵活性各层之间完全解耦:也就是说某一层变化,不影响其他层次的稳定OSI七层模型 OSI制定标准时,想成为全球计算机都遵循的标准,但是困难重重,TCP/IP在全球成功地运行了。 为什么OSI没有成为全球计算机市场的标准呢? OSI的专家缺乏实际经验OSI的标准制定的周期过长,按照OSI标准生产的设备无法及时进入市场OSI模型设计不合理,一些功能在多层中重复出现如图:TCP/IP四层模型 如图:TCP/IP四层模型与OSI模型的对应关系 如图:TCP/IP四层模型各层的协议,中间窄、两端大的形状 如图:计算机A通过路由器传输到计算机B的例子 现代计算机的网络拓扑网络拓扑分为边缘部分、核心部分。 如图:边缘部分-家庭 如图:边缘部分-企业 如图:网络核心部分结构 如图:现代互联网的网络拓扑树状图,也就是将边缘部分和核心部分连接起来 计算机网络性能指标网络速率指标单位是bps=bit/s,评测计算机网络性能的两个指标:时延、往返时间RTT。 时延分为发送时延、传播时延、处理时延、排队时延。 发送时延 数据长度由用户决定,发送速率由计算机网卡决定 传播时延 传播速率受限于传输介质 排队时延 数据包在网络设备中等待被处理的时间。 处理时延 数据包到达设备或者机器被处理所花费的时间。 总时延 总时延=发送时延+排队时延+传播时延+处理时延 关于时间的另一个指标——往返时间RTT,评估网络质量的重要指标。RTT表示数据报文在端到端通信中的往返一次的时间。通常使用ping命令查看RTT。 物理层的概述连接不同物理设备的介质 双绞线:分为无屏蔽双绞线、有屏蔽双绞线同轴电缆光纤红外线无线信号激光物理层作用 连接不同的物理设备传输比特流物理层特性 机械特性电气特性功能特性过程特性信道的定义 往一个方向传送信息的媒体,一个通信电路往往包括一个接收信道和一个发送信道。 根据信道的不同,通信电路分为 单工通信信道:只能一个方向通信,没有反方向反馈的信道。半双工通信信道:双方都可以发送以及接收信息,但是双方不同同时发送或者接受。全双工通信信道:双方都可以同时发送和接收信息分用-复用技术 作用 有很多计算机之间需要连接,很多时候计算机处于关机状态,这会导致信道的利用率不高,可以通过分用-复用技术提高信道的利用率。 如图:分用-复用技术原理 分用-复用技术用到了哪些技术 频分复用时分复用波分复用码分复用 数据链路层数据链路层的三个基本功能:封装成帧、透明传输、差错检测。 帧:数据链路层中,数据的基本单位。 封装成帧的定义 发送端在网络层的一段数据前后添加特定标记,形成“帧”,接收端根据前后特定的标记,识别出“帧”。 封装成帧的过程 网络层把一些IP的数据报传送到数据链路层,数据链路层接收到数据之后,就会把它看成是“帧”的数据,然后会在数据帧的前后分别添加标记,从帧首部到帧尾部的长度就是数据帧的长度。帧的首部和尾部实际上是特定的控制字符(特定的比特流)。如图:封装成帧的过程 如果数据里面恰好有帧首部和帧尾部的比特流,怎么办?如图: 可以通过透明传输解决。 什么是透明? 控制字符在帧数据中,但是要当做不存在处理 透明传输的处理方法 在数据包里的控制字符前面加上转义字符。如图:ESC表示转义字符 差错检测 由于物理层只负责传输比特流,无法控制是否出错,数据链路层负责“差错检测”的工作 数据链路层的差错检测奇偶校验码 是一种简单的检测差错的方法,在比特流的尾部添加一位比特位来检测比特流。 过程 将比特流相加,如果得到奇数,就在比特流后面+1;如果得到偶数,就在比特流后面+0。通过奇偶校验码可以得到传输过程中比特流是否错误 奇偶校验码的局限性 如果比特流发生了两位的错误,将比特流相加,就会发现奇偶没变化,从而无法检测出比特流错误。 铺垫知识:模“2”除法 与算数除法类似,但是模“2”除法不借位,实际上是异或的操作。如图:异或运算,两个比特位不一样,结果为1,反之为0。 循环冗余校验码(CRC) 定义 根据传输或保存的数据而产生固定位数校验码的方法,检测数据传输或者保存后可能出现的错误。 过程 生成的数字计算出来,并且附加到数据后面。 步骤 选定一个用于校验的多项式G(x),并在数据尾部添加r个0将添加r个0的数据,使用模“2”除法,除以多项式的位串得到的余数填充到原数据r个0的位置,得到可验证的位串例子:使用CRC计算101001的可校验位串,如图 小结 CRC的错误检测能力与位串的阶数r有关数据链路层只进行检测,不进行纠正常用的CRC多项式 最大传输单元MTUMTU的作用 数据链路层所传输的数据帧也不是无限大的,MTU用来描述所能传输的最大数据帧。如图: 数据帧过大或者过小,都会影响传输的效率,MTU受限于物理硬件的特性,以太网的MTU一般是1500字节。 路径MTU 如图:从计算机A传输到计算机B的MTU,整个路径的MTU是1492 以太网协议MAC地址 也称之为物理地址、硬件地址,每一个设备都拥有唯一的MAC地址。MAC地址有48位,使用十六进制表示。 以太网地址 是广泛使用的局域网技术,应用于数据链路层的协议,使用以太网可以完成相邻设备的数据帧传输。如图:以太网数据的格式,单位都是字节 MAC地址表:记录MAC地址和相应的硬件接口的映射关系,MAC地址表会放到路由器上,如图: 如图:计算机A发送数据给计算机C的过程 如果路由器的MAC地址表不知道C的硬件接口,计算机怎么传输数据呢? 新的问题 如图: 通过MAC地址表(数据链路层),只能进行相邻物理节点的传输,如果想跨设备传输,比如从A传到B,或者从A传到C,应该怎么做呢? 通过网络层可以解决 |
CopyRight 2018-2019 实验室设备网 版权所有 |