OSI参考模型之数据链路层
Posted 锦衣admin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OSI参考模型之数据链路层相关的知识,希望对你有一定的参考价值。
OSI参考模型之数据链路层
数据链路层
数据链路层设备:网卡、交换机
因为OSI参考模型在现实中没有与之对应的设备。所以一般用它来做参考。实际上我们使用的是TCP/IP的五层模型
生成数据帧的设备:
-
在网卡中生成数据帧
-
在路由器的接口中生成数据帧
-
数据链路层一般在节点的网络接口中实现
数据链路层基本概念:
-
连接相邻节点之间的通信信道称为链路(link)
-
数据链路层协议就是解决每一段链路上的数据传输问题的
-
相邻结点之间的链路以及该链路上采用的通信协议构成了数据链路(data link)的概念
-
数据链路层传输的分组被称为帧(frame)
数据链路层协议的功能:
封装成帧:
把数据封装成帧
帧包含首部和数据部分:
首部包含传递该帧需要的控制信息
数据部分包含要传递的信息数据,通常来自上层协议
帧的结构和首部各字段的含义由数据链路层协议规定
帧定界方法:用特殊的控制字符或特定的比特组合标记一帧的开始和结束
透明传输:
含义:不限制数据部分包含的比特组合,即使数据部分恰巧出现和控制字符或帧定界字符相同的编码字节,接收方也不会错误理解
两种方法:
字符填充(DLE作为转义字符)
比特填充( 当数据部分出现与帧定界符相同的码序列时,按照约定插入若干1或0比特)
差错检测:
物理层不提供比特差错校验的服务,为了对比特传输差错进行控制,数据链路层要提供差错控制功能。
该层多采用循环冗余校验编码(CRC),利用在帧数据后面添加n 比特的差错校验的冗余位(帧校验和)实现差错检验。
寻址:
数据链路层地址通常又被称为物理地址或硬件地址。
有时还要携带源地址,标识发送结点。
若接收节点固定则不需要进行寻址。
可靠交付:
含义:接收节点的数据链路层向上层交付无差错的分组
可靠交付通常使用确认和重传机制
若接收无误,向发送端发送确认信息(ACK);
若发现差错,则反馈回NACK信息,请求发送结点重发该帧
不是所有的数据链路层协议都提供确认机制
流量控制:
目的:避免接收方来不及接收而造成的数据丢失
原因:接收结点和发送结点在处理能力、缓存空间以及负载方面的差异造成
措施:对发送的数据流量的进行调控,使发送速率不致超过接收方的速率。
控制相邻两结点间数据链路上的流量,作用范围是一段点到点链路
链路接入和管理:
链路接入又被称为媒体访问控制
对面向连接的数据链路层协议,链路管理功能包括数据链路的建立、链路的维持和释放三个主要方面, 需要双方交换必要的信息
数据链路层包含的MAC子层和LLC子层
MAC子层功能:
媒体访问控制
帧的寻址和识别
帧检验等。
LLC子层功能:
逻辑链路控制
二种类型链路服务:无连接、面向连接
数据帧的字段(以太网MAC帧字段):
前导码
(Preamble,Pre),7字节的1和0交替码序列,比特同步,当物理层采用同步信道时(如SDH/SONET),不再需要前同步码。
帧定界
(Start-of-Frame Delimiter,SFD )。10101011。以太网的帧定界符只用于标识帧的开始,不必标识结束。
一般认为MAC 帧从目的mac地址 开始。
目的地址
:目的MAC 地址, 6字节。
源地址
:源MAC 地址, 6字节。
长度类型(Type)
:类型字段,上层协议类型,最常见的如0x0800指IP协议,0x0806指ARP协议。
- DIX Ethernet V2定义该字段为类型
- IEEE802.3 标准定义为“长度/类型”字段,规定小于0x0600时,表示数据部分的长度;大于0x0600时,表示类型。
数据部分(数据长度)
:长度在46字节 到1500字节之间可变的任意值序列。
帧校验序列(FCS)
,4字节,采用CRC编码,用于差错校验。FCS校验的计算不包括同步码、帧定界和FCS字段本身。
交换机工作原理
共享总线型传输媒体方式的局域网。以太网交换机的结构是每个端口都直接与主机相连,并且一般都工作在全双工方式
初始交换机的mac地址表是空的,在交换机收到数据帧后,将该帧的源MAC地址和交换机端口号的映射关系写入表中。
发送ARP广播包向全端口询问目的mac在哪个端口号,目的mac地址的主机会回应交换机。交换机记录目的mac地址和交换机端口号。进行数据帧转发
若目的MAC地址在映射表中,则将数据帧直接转发给对应的交换机端口。
虚拟局域网介绍(Virtual LAN ,简称VLAN)
交换机提供一种划分虚拟局域网的功能
虚拟局域网作用:
不受物理位置的限制划分逻辑组
将某些网络流量限制在各自的VLAN之中
VLAN划分的方法:
按照交换机端口划分
按照MAC 地址划分
按照第三层网络地址划分:常按IP子网来划分
虚拟局域网协议:IEEE 802.1Q
如何区分个vlan段:
IEEE 802.1Q(Virtual Bridged Local Area Networks)协议
扩展MAC帧首部——标识VLAN
首部增加4个字节:
TPID (Tag Protocol Identifier),固定取值为
0x8100
TCI (Tag Control Information)
- 用户优先级,
3bit
- CFI Canonical Format Indicator),
1bit
- VLAN ID,
12bit
基于Cisco交换机实现VLAN划分
以上是关于OSI参考模型之数据链路层的主要内容,如果未能解决你的问题,请参考以下文章