zoukankan      html  css  js  c++  java
  • 网络知识笔记-数据链路层

    数据链路层的简单模型

    数据链路层使用的信道主要有以下两种

    点对点信道:

    全世界使用最多的数据链路层协议是点对点协议PPP(Point To Point Protocol)
    用户使用拨号电话线接入因特网时,一般都是使用PPP协议

    PPP协议的三个组成部分:

    数据链路层协议可以用于异步串行或同步串行介质
    它使用LCP(链路控制协议)建立并维护数据链路连接
    网络控制协议NCP允许在点到点连接上使用多种网络层协议

    广播信道:

    使用的协议为CSMA/CD
    总线型,集线器都是应用的广播信道的数据链路层
    局域网是使用广播信道的数据链路层
    局域网拓扑图:

    共享通信媒体:
    静态划分通道:频分复用,时分复用,波分复用,码分复用;
    动态媒体接入控制:
    随机接入(主要被以太网采用)
    受控接入,如多点线路探询,目前已不被采用

    认识以太网:

    最初的以太网是将许多计算机都连接到一根总线上。当初认为这样的连接方法既简单又可靠,因为总线上没有有源器件。
    总线上的每一个工作的计算机都能检测到某一台计算机发送的数据信号。只有计算机地址与帧首部写入的地址一致时才接收这个数据。通过这种方式实现一对一通信。使用的协议为CSMA/CD(带冲突检测的载波监听多路访问协议,Carrier Sense Multiple Access with Collision Detection)。

    重要特性:使用CSMA/CD协议的以太网不能使用全双工通信而只能使用半双工;每个站再发送数据之后的一小段时间内,存在着遭遇碰撞的可能性;这种发送的不确定性使整个以太网的平均通信量远小于以太网的最高数据率。

    以太网网线大于100m会影响争用期,从而影响最短有效帧长。

    以太网的两个标准:
    ①DIX Ethernet V2 是世界上第一个局域网产品(以太网)的规约;
    ②IEEE的802.3标准。
    DIX Ethernet V2 标准 与 IEEE的802.3 标准只有很小的差别,因此可以将802.3局域网简称为“以太网”。
    严格来说,“以太网”应当是指符合DIX Ethernet V2标准的局域网

    以太网与数据链路层的两个子层:
    为了使数据链路层能更好的适应多种局域网标准,802委员会 就将局域网的数据链路层拆成两个子层:
    ①逻辑链路控制LLC(Logical link Control)子层
    ②媒体接入控制MAC(Medium Access Control)子层

    由于TCP/IP体系经常使用的局域网是DIX Ethernet V2,因此现在802委员会制定的LLC作用已经不大了。
    很多厂商生产的适配器就仅装有MAC协议而没有LLC协议。

    以太网提供的服务是不可靠的交付,即尽最大努力的交付。

    ipconfig /all可以查看MAC地址

    在局域网中,硬件地址又被称为物理地址,或MAC地址;MAC地址,实际上就是适配器地址或适配器标识符EUI-48;

    常用的以太网MAC帧格式有两种标准:DIX Ethernet V2标准与IEEE的802.3标准;
    最常用的是DIX Ethernet V2标准;
    物理层的帧是7字节的前同步码+1字节的帧开始定界符 + MAC层的帧
    MAC层帧是 6字节的目的地址+ 6字节的源地址 + 2字节的类型 + IP层的IP数据报

    扩展以太网:
    在物理层考虑:主机使用光纤和一对光纤调制解调器连接到集线器
    在数据链路层考虑扩展:使用网桥
    网桥工作在数据链路层,它根据MAC帧的目的地址对收到的帧进行转发。
    网桥具有过滤帧的功能。当网桥收到一个帧时,并不是向所有的接口转发此帧,而是先检查此帧的目的MAC地址,然后再确定将帧转发到哪一个接口
    网桥是交换机的前身,交换机是存储转发的,交换机是宽带独享 ,全双工(因为有存储功能故可以实现)

    链路以及数据链路的概念:
    链路是一条点对点的物理线路段,中间没有任何其他的交换节点。
    一条链路只是一条通路的组成部分。
    数据链路:除了物理链路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。
    现最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件。
    一般的适配器都包含了数据链路层和物理层这两层的功能。


    数据链路层传送的是帧。数据链路层像一个数字管道。
    帧包含帧头,帧尾,物理层地址和校验值。

    数据链路层的三个基本问题:
    封装成帧:
    透明传输:用开始字符,结束字符 来传输 。用字节填充法解决透明传输的问题。
    差错控制:加上差错检测

    欢迎大家留言,以便于后面的人更快解决问题!另外亦欢迎大家可以关注我的微信公众号,方便利用零碎时间互相交流。共勉!

    ------愿来生只做陌上的看花人,无须入尘缘,仅行于陌上,看一川风花,无爱无伤-----
  • 相关阅读:
    JSP中文乱码问题
    PLSQLDeveloper 提示不能初始化?
    Sublime Text3 (转) 配置 以及快捷键配置
    收藏博客
    Struts2 验证框架 validation.xml 常用的验证规则
    正则表达式
    Frameset 框架集 导航栏 的使用
    nginx + tomcat + memcached 做负载均衡及session同步
    elasticsearch 7.2 集群节点配置
    禁止、允许MySQL root用户远程访问权限
  • 原文地址:https://www.cnblogs.com/caozz/p/network_datalink.html
Copyright © 2011-2022 走看看