数据链路层
数据链路层三个基本问题:封装成帧、透明传输、错误检测
封装成帧:给上层传输来的数据添加数据首部SOH(十六进制:01;二进制00000001)和尾部EOT(十六进制:04;二进制:00000100);
透明传输:封装成帧使用的首部和尾部的编码可会和需要封装的数据的编码相同,则添加一个转义的编码ESC(十六进制:1B;二进制00011011);
错误检测:在需传输数据(二进制:101000)添加添加n为冗余码,进行冗余检测来检测数据是否出错。
点对点protocol: PPP
静态划分信道:时分复用、频分复用、码分复用、波分复用
动态媒体接入控制:随机接入、受控接入
随机接入:
随机接入的特点是所有的用户可以随机地发送信息。但如果恰巧两个或更多的用户在同一时刻发送信息,那么在共享媒体上就要产生碰撞(即发生冲突),使得这些用户的发送都失败。因此,必须要有解决碰撞的协议。
受控接入:
受控接入特点是用户不能随机的发送信息二而必须服从一定的控制。例如:令牌网络和轮询网络。(参考网络协议与网络安全 凌力编著)
LLC(逻辑链路控制 英文: Logical Link Control)
LLC作为数据链路层的一个子层,使用MAC子层为其提供的服务,通过与对等实体LLC子层的交互为它的上层网络层提供服务。LLC负责识别网络层协议,然后对它们进行封装。LLC报头告诉数据链路层一旦帧被接收到时,应当对数据包做何处理。
MAC(介质访问控制 英文:Media Access Control)
介质访问控制是解决当局域网中共用信道的使用产生竞争时,如何分配信道的使用权问题.
MAC子层是用来实现介质访问控制的网络实体。MAC子层主要功能包括数据帧的封装/拆封、帧的寻址与识别、帧的接收与发送、链路的管理、帧的差错控制及MAC协议的维护等。
载波监听:
不管在发送前,还是发送中,每个站点都必须不停地检测信道
碰撞检测:
边发送边检测。
多点接入:说明是总线型网络。许多计算以多点接入的方式连接在一根总线上。
CSMA/CD Protocol(载波监听多点接入、碰撞检测 英文:Carrier Sense Multiple Access with Collision Detection)被动侦测 总线式以太网
- 用“载波监听”的方法检查信道是否空闲。若空闲,进行下一步;若忙,等待并继续监听。
- 发送数据,同时检测信道是否冲突(碰撞检测)。若成功发送完毕(未发生冲突),完成;若冲突,进入下一步。
- 终止本次发送,进行下一步。
- 等待一段时间,返回第一步。
CSMA/CA Protocol (Carrier Sense Multiple Access with Collision Avoidance )主动预订信道 无线局域网
- 设备在发送前,侦听信道是否空闲,若空闲,等待随机时间后,信道依然空闲,发送数据帧。
- RTS-CTS握手:设备发送数据帧前先发送一个很小的帧RTS(Request to send)帧给目标端,等待目标端回应CTS(Clear to send)帧后,才开始发送。
MAC帧的格式
参考文献
http://blog.youkuaiyun.com/dadoneo/article/details/8315833
http://blog.youkuaiyun.com/kaikai_sk/article/details/52357332
凌力 网络协议与网络安全 清华大学出版社 2007年11月
https://www.cnblogs.com/cherishui/p/4046360.html(感觉挺重要)
http://www.doc88.com/p-1963061541235.html