• 计算机网络-数据链路层


    数据链路层

    1、主要功能:用于两个设备(同一种数据链路节点)之间进行信息传递,

    ​ 注:数据链路层以为单位传输和处理数据。

    (1) 链路:就是从一个结点到相邻结点的一段物理线路,而中间没有任何其他交换结点。
    (2)数据链路:是指把实现通信协议的硬件和软件加到链路上,就构成了数据链路。
    

    2、链路层的重要问题

    在点对点信道的数据链路层进行传输我们需要考虑以下问题。

    封装成帧:在数据的头部和尾部加上标记(加上帧头和帧尾),确定帧的范围。

    差错检测:传输过程中可能会产生比特差错: 1可能会变成0而0也可能变成1

    误码率BER(BitErrorRate):在一段时间内,传输错误的比特占所传输比特总数的比率。误码率与信噪比有很大的关系。
    

    可靠传输:使用差错检错技术,接受方的数据链路层就可以检测出帧在传输过程中是否出现误码。

    不可靠传输:仅仅丢弃有误码的帧,其他的什么也不做。
    可靠传输:想方法实现发送端发送什么,接收端就收到什么。
    

    封装成帧:

    • 是指数据链路层给上层交付的协议数据单元添加帧头和帧尾使之成为帧。
    • ASCII控制字符SOH表示帧首部开始,EOT表示帧的结束

    透明传输:

    • 指数据链路层对上层交付的传输数据没有任何限制,就好像数据链路层不存在一样。

    如何实现透明传输的问题?

    (1)面向字节的物理链路使用字节填充(或称字符传输)的方法实现透明传输。
    (2)面向比特的物理链路使用比特填充的方法实现透明填充。
    

    差错检查

    奇偶校验

    • 奇偶校验:在待发送的数据后面添加1位奇偶校验位,使得整个数据(包括所添加的校验码位在内)中的“1”的个数为奇数(奇校验)或偶数(偶校验)。

    循环冗余校验CRC:

    1)收发双方约定好一个生成多项式G(x).
    (2)发送方基于待发送的数据生成多项式计算出差错检测码(冗余码),将其添加到带传输数据的后面一起传输

    (3)接收方通过生成多项式来计算收到的数据是否产生了误码

    可靠传输

    • 停止-等待协议SW
    • 回退N帧协议GBN
    • 地址解析协议ARP

    3、集线器与交换机

    集线器:集线器:(Hub)是指将多条以太网双绞线或光纤集合连接在同一段物理介质下的设备。发生在物理层

    交换机:交换机:(Switch)是一种用于电(光)信号转发的网络设备。它可以为接入交换机的任意两个网络节点提供独享的电信号通路,把传输的信息送到符合要求的相应路由上。发生在数据链路层

    4、交换机生成树协议STP

    参考博文

  • 相关阅读:
    【计组】指令和运算1--《深入浅出计算机组成原理》(二)
    Excel VSTO开发5 -Excel对象结构
    JavaScript 浏览器对象模型BOM 概念
    Python 接口测试之接口关键字封装
    实战指南,SpringBoot + Mybatis 如何对接多数据源
    【嵌入式学习】--Uart串口
    Leetcode2-AddTwoNumbers
    Vue04/Vue组件通信、Vue组件父传子 props 传值 及 props 介绍
    微服务远程调用组件Feign的使用详解
    第三章 Scala运算符
  • 原文地址:https://blog.csdn.net/qq_44665456/article/details/126953997