面试题答案
一键面试物理层主要功能
- 信号传输:负责将数据转换为物理信号(如电信号、光信号、无线信号等),并通过物理介质(如网线、光纤、无线频段等)进行传输。例如在以太网中,将数字信号编码成特定的电信号模式在双绞线上传输。
- 物理介质管理:处理与物理介质相关的特性,包括介质的电气特性(如电压、阻抗等)、机械特性(如接口形状、引脚数量等)、功能特性(各引脚的功能定义)和规程特性(信号的时序关系等)。比如RJ45接口的网线,其物理层定义了接口的形状、引脚排列以及信号传输的电气规范。
数据链路层主要功能
- 成帧:将来自网络层的数据包封装成帧(Frame)。帧包含头部和尾部,头部包含目的MAC地址、源MAC地址等控制信息,尾部包含差错检测字段(如CRC校验码)。例如以太网帧,它规定了帧的最大和最小长度,以及各字段的格式和含义。
- 差错控制:通过在帧尾部添加差错检测码(如CRC),接收方可以检测传输过程中是否发生错误。如果检测到错误,数据链路层会根据具体的协议机制,如自动重传请求(ARQ),通知发送方重传错误的帧,以确保数据的准确性。
- 介质访问控制:当多个设备共享同一物理介质时,数据链路层负责协调设备对介质的访问。例如在以太网中,采用载波监听多路访问/冲突检测(CSMA/CD)机制,设备在发送数据前先监听介质是否空闲,若空闲则发送数据,同时监测是否发生冲突,若发生冲突则停止发送并等待随机时间后重发。
两层协作过程
- 发送端协作:网络层将数据包传递给数据链路层,数据链路层按照特定的协议格式将数据包封装成帧,添加MAC地址等控制信息以及CRC校验码。完成封装后,数据链路层将帧传递给物理层。物理层把帧转换为物理信号,并通过物理介质发送出去。例如在局域网环境下,主机要发送数据到另一台主机,网络层将IP数据包交给数据链路层,数据链路层封装成以太网帧,再由物理层将其转换为电信号在网线上传输。
- 接收端协作:物理层接收到物理信号后,将其转换为数字信号,并传递给数据链路层。数据链路层根据帧的格式对信号进行解析,提取出帧中的控制信息和数据部分,并通过CRC校验检测帧的正确性。若校验通过,数据链路层去除帧头和帧尾,将数据包传递给网络层。若校验失败,数据链路层根据协议要求处理错误,如丢弃该帧并通知发送方重传。例如接收主机的物理层从网线上接收到电信号,转换为数字信号给数据链路层,数据链路层检查以太网帧的正确性,若正确则将IP数据包交给网络层处理。