51mee - AI智能招聘平台Logo
模拟面试题目大全招聘中心会员专区

在航天测控系统中,嵌入式设备需通过无线链路(如S波段)与地面站通信,请设计链路层协议的可靠性机制,包括错误检测、重传策略及流量控制,并说明如何处理链路中断后的数据恢复。

贵州航天电子科技有限公司嵌入式开发岗难度:中等

答案

1) 【一句话结论】在航天测控无线链路中,链路层可靠性通过CRC错误检测、ARQ(自动重传请求,如滑动窗口重传)结合滑动窗口流量控制实现,链路中断后通过序列号标记未确认数据并从重传队列恢复,确保数据完整、有序且不丢失。

2) 【原理/概念讲解】
老师:首先讲错误检测,链路层常用CRC(循环冗余校验),通过预设生成多项式计算校验码附加在数据帧后,接收端验证校验码是否正确,若错误则丢弃帧。可以类比“给包裹贴标签”,标签是校验码,接收端核对标签是否匹配,若标签错误说明包裹内容出错。

接着讲重传策略,核心是ARQ(自动重传请求),分为两种:

  • 停止等待ARQ:发送端发送一帧后等待接收端ACK,超时未收到则重传该帧(简单,但链路利用率低)。
  • 连续ARQ(滑动窗口):发送端连续发送多帧,接收端按序确认,未确认的帧在发送窗口内等待,提高链路利用率(适用于数据量大、链路质量较好的场景)。

然后讲流量控制,用滑动窗口协议,接收端根据自身缓冲区大小控制发送端发送速率,避免发送端发送过快导致接收端缓冲区溢出(拥塞)。比如接收端缓冲区能存N帧,发送端最多发送N帧,接收端确认后窗口滑动,继续发送。

最后讲链路中断后的数据恢复,发送端维护重传队列,记录所有未确认的帧序列号,链路中断后重新建立连接时,按序列号顺序从队列中重传未确认数据,确保数据不丢失且顺序正确。

3) 【对比与适用场景】

策略类型定义特性使用场景注意点
停止等待ARQ发送一帧后等待ACK,超时重传单帧传输,ACK确认链路质量差、数据量小效率低,链路利用率低
连续ARQ(滑动窗口)连续发送多帧,按序确认多帧传输,窗口控制速率数据量大、链路质量较好需序列号,处理复杂
滑动窗口流量控制接收端缓冲区控制发送速率动态调整发送速率链路带宽有限、接收端处理能力有限需同步窗口大小,避免拥塞

4) 【示例】(伪代码,停止等待ARQ)

  • 发送端:
    while (有数据):  
        发送帧(data, seq_num)  # 附加序列号和CRC校验码  
        等待ACK(seq_num)       # 接收端确认  
        if (超时):             # 超时未收到ACK  
            重传帧(data, seq_num)  
    
  • 接收端:
    while (有数据):  
        接收帧(f)             # 接收数据帧  
        if (CRC校验正确):     # 校验正确  
            if (seq_num == 期望序列号):  # 序列号匹配  
                上层处理数据  
                发送ACK(seq_num)        # 确认  
                期望序列号 = (期望序列号 + 1) % 2  
            else:  
                发送NACK(seq_num)       # 序列号不匹配  
        else:  
            丢弃帧  
    

5) 【面试口播版答案】
在航天测控无线链路中,链路层可靠性设计需解决错误检测、重传和流量控制。首先,错误检测用CRC校验,接收端验证数据完整性,错误则丢弃;重传策略采用ARQ(如滑动窗口连续重传),提高效率;流量控制用滑动窗口,接收端根据缓冲区大小控制发送速率,避免拥塞。链路中断后,发送端维护重传队列,记录未确认的帧序列号,中断恢复后按序列号重传未确认数据,确保数据不丢失且顺序正确。具体来说,发送端发送帧时附加序列号和CRC校验码,接收端验证后按序确认,未确认的帧在发送窗口内等待,接收端通过滑动窗口控制发送速率,中断后通过序列号和重传队列恢复数据。

6) 【追问清单】

  • 问:CRC的生成多项式如何选择?
    答:根据数据长度和错误检测需求,通常选择标准多项式如CRC-32,适用于长数据,能有效检测突发错误。
  • 问:重传超时时间怎么计算?
    答:根据链路延迟和带宽,使用退避算法(如指数退避),避免频繁重传,同时保证链路中断后能及时重传。
  • 问:流量控制中滑动窗口大小如何确定?
    答:根据接收端缓冲区大小和链路带宽,确保发送速率不超过接收处理能力,避免拥塞导致数据丢失。
  • 问:中断后如何快速恢复?
    答:通过序列号标记未确认数据,重传队列按顺序重传,结合链路状态报告(如心跳包)检测中断,快速重建连接。
  • 问:航天系统对可靠性的特殊要求?
    答:需考虑高可靠性、低延迟,可能采用更严格的校验(如BCH码)、冗余重传,以及与上层协议结合的优化。

7) 【常见坑/雷区】

  • 错误检测只说CRC,没提校验位的作用或具体实现。
  • 重传策略只说重传,没提超时机制或指数退避。
  • 流量控制没考虑接收端缓冲区,导致拥塞。
  • 中断后恢复没提序列号和重传队列,而是简单说重传所有数据。
  • 忽略航天系统的实时性要求,比如重传时间过长影响系统响应。
51mee.com致力于为招聘者提供最新、最全的招聘信息。AI智能解析岗位要求,聚合全网优质机会。
产品招聘中心面经会员专区简历解析Resume API
联系我们南京浅度求索科技有限公司admin@51mee.com
联系客服
51mee客服微信二维码 - 扫码添加客服获取帮助
© 2025 南京浅度求索科技有限公司. All rights reserved.
公安备案图标苏公网安备32010602012192号苏ICP备2025178433号-1