欢迎来到TB体育·(中国)手机客户端下载
le TB体育appdata-v
栏目:行业动态 发布时间:2023-04-30 21:03:01

  数据链路层:在物理层和网络层之间。向下利用物理层提供的位流服务(比特流?)

  链路接入:也是链路层服务之一,如果是共享介质,需要解决信道接入的问题(谁用共享介质)。帧首部中的”MAC“地址,用于标识帧的源和目的

  该层的具体实现呢,区别与物理层的光纤等物理介质,该层在每个主机或者路由器的接口中实现,在网卡实现或者一个芯片上实现

  把IP数据报啥的在网卡上封装成帧,加上一些差错检测比特,地址啥的,然后发送,接收方就检查差错,然后就接受。

  差错编码的基本原理: 在数据的基础上增加冗余信息,这个冗余信息事实上建立起了比特和比特之间的关联关系,我们把带有冗余信息的数据发送给接收端,接收端判断关联关系是否存在。

  汉明距离:就是两个码字之间对应位不同的数目,比如 11 和10 就是第一位不同,所以汉明距离是1.

  编码集的汉明距离:编码集内就是任意两个码字之间最小的汉明距离(长得最像的码字之间差多少位不一样)

  那么这个结论就是,对于检错而言,汉明距离-1就是可以检错的位数,对于纠错而言,汉明距离-1的一半就是可以纠错的位数,也就是说,纠错只能纠检错的一半。上图的纠错是把错误的码字纠正为相邻最近的有效码字

  二维奇偶校验:将数据切分,使其变成一个矩阵,如上图的3*5矩阵。得到i+j+1个检错比特,1是右下角那个。可以检测奇数位差错,部分偶数维差错,也能纠正同一行或列的奇数位错。

  这个是具体的例子,就是把一串数据,把checksum那几位设为0,然后把数据拆分成16位的数,从左到右,不够16位就在后面补0,然后把和相加,和大于ffff的线相加,得到sum接着取反(FFFF-这个值),就得到了checksum

  这个式子说的是,D往左移r位然后和R异或(就是按位加起来嘛),就得到了D,R

  就是说假如有了G的话,我用G去除D,余数就是R,上面的商就是n 注意这个除是异或运算,手算一遍这个例题。

  就是说蓝绿这俩是可靠数据传输信道,所以传的是好的,接受的也是好的,但是可能会用到不可靠的信道。在不可靠的信道上,是双向的传输。

  make packet 加上了checksum 然后发送这个包,不知道正确到达没,所以等待ACK或者NAK,假如收到对方返回的控制消息并且收到了NAK,就重发,然后回到这个等待状态;假如收到控制消息并且收到ACK,就回到等待上层调用的状态。

  receiver:收到并且有错,就返回NAK;如果分组没错,就提取数据,交付数据,并且发送一个ACK

  等待一个”合理“的时间,但合理时间不好界定,万一就是延迟在后面一点的话,重传就会重复,那么就用序列号机制处理

  time out就是超时的情况,就没有ACK回来,超时就重发上次没成功的。

  什么导致利用率这么低呢?停等协议,这个就有种电路交换的感觉,性能很低,能不能用分组交换的思想然后发一堆这样子来提高性能?(思考

  数据链路层的共享介质也需要解决冲突问题,所以就有了多路访问控制协议,multiple access control protocol

  CSMA carrier sense 带感知的多路访问,有点投石问路的感觉(“能用吗?” “ 能!” “ok那我用了”)

  1- 非 P 指的是 以1、0、P的概率坚持监听信道,一旦空闲,直接发出。

  但假如两个结点都监听,都同时发送,还是会出现冲突,这个图从上往下看。尖点是B和D发送信号的时间,面积是信号随时间发送到达信道各点的形象化表示。

  CSMA/CD就是带冲突检测的投石问路(感知更灵敏),一旦冲突,直接停止传输。

  这个ppt讲的是一个极端情况:A在空闲的时候发送信号,快要到达B的时候,B此时检测信道也空闲,所以发送信号,在这一瞬间检测到冲突,需要中止传输的概念。

  L/R=2dmax/v 左边是A发送的数据帧的传输速率 右边是两个传播时延(A检测到冲突要发送到B,B再发送回来),也就是说A发送的数据帧的传输时间要大于等于这个传播时延。为什么呢?因为”边发边听,不发不听“,假如小于就是说,A发数据发的很快,一会就发完了,而此时B发送给A的冲突检测信息没有被A收到,因为A此时已经不发了,自然也就不听了

  所以自然也就引出了下面绿色的两个结论,最小数据帧传输的时间要足够长,也就是距离最远的结点的RTT。

  最长以太网数据帧1518B 有效数据1500B,第二问算一下两个帧的传输时延,然后得到总时延,有效数据除以总时延就可以得到有效数据的传输速率。

  公式感觉不用记,当场推一下就可以,核心就是传输时延要足够长,以达到边发边听的效果。

  很好理解,这俩的极限目的都是你发完我瞬间就知道。比如两个人说话贴的很近,一说话,双方瞬间就回收。

  第一个是polling,也有一些问题,比如每次都要发送特殊帧的开销;一个从属设备准备好了,但是还没轮到他的等待延迟;master坏了,系统就无法工作了(选个备用的就行)。

  第二个就是令牌传递,结点获取令牌后才能发送。由于该特性,所以一般都是环形网络。

  之前有说数据链路层使用的是网卡这类的东西,那么网卡用的就是MAC地址,该地址标识局域网内的一个帧(链路层概念)从哪个接口发出(链路层的结点概念)到达哪个物理相连(使用下层服务)的其他接口(目标结点)。

  那么以太网的多路访问控制技术(MAC)使用的是CSMA/CD(也是最常用的协议)

  从上层接收到了数据包,创建一个以太网数据帧,开始监听信道,发送,成功;假如检测到其他节点传输数据,中止发送并发送堵塞信号(冲突啦!),然后NIC进入二进制指数退避(就是一个怎么让别人的算法吧)

  二进制指数退避是什么呢:在1-10之间,根据冲突次数选择一个数,逐次增大,然后从0-2^n-1 中选择一个数K,然后NIC等待K*512 bit 的传输延迟时间(就是说让你K*512bit的数据通过以后我再过),再返回第二步监听

  为什么作业题目里帧是1518B呢,就是1500+6+6+4+2=1518(忽略了前导码)。

  接下来就是交换机,交换机是链路层的设备(没有IP地址,但是有MAC地址),交换机也使用CSMA/CD 访问链路来发送帧。

  未知的时候直接一个flood,flood以后就可以得到所有接口上的MAC了(我猜的,不然学习啥呢

  然后PPP协议需要管的就是封装,数据域要灵活,能检测差错(但不用纠正),检测链路状态、端结点之间可以学习/配置彼此的网络地址。

  数据帧结构如上,点对点不需要地址,不需要控制域,标识上层协议,上层协议分组的数据,使用CRC校验码。TB体育官网app下载