网络层创建数据包后,它会将数据包提供给数据链路层,以便添加报头和报尾,添加标头和标位后的数据包称为数据帧,数据链路层负责将数据帧从一个节点传输到另一个节点。数据链路层应该将源物理地址和目标物理地址封装在数据帧中,才能够实现节点和节点之间的通信。
数据链路层提供的服务有:数据成帧、物理寻址、流量控制、错误控制和访问控制。
数据成帧:
不同数据帧之间需要有区分
物理寻址:
在数据头中会将源物理地址和目标物理地址添加在其中。
流量控制:
匹配不同发送和接收数据快慢的节点。
访问控制:
如同一条公共链路上有很多节点想要发送数据,需要控制节点对公共链路的访问避免数据冲突。
错误控制:
数据链路需要有错误检测和错误纠正的能力
当数据帧起始表示位(11011)或终止标识位(11011)与payload中的字节相同时,会出现帧错误。