欢迎光临112期刊网!
网站首页 > 论文范文 > 计算机论文 > 软件技术 > 基于Linux的LTE RLC层协议设计与实现

基于Linux的LTE RLC层协议设计与实现

日期:2023-01-24 阅读量:0 所属栏目:软件技术


摘 要:根据3GPP协议中LTE空中接口协议栈Release 8标准,首先研究无线链路控制(RLC)层的原理和工作机制,然后基于Linux操作系统,给出实现RLC层协议的设计方案和总体框架。

关键词:LTE协议栈;RLC层;AM;UM;Linux操作系统
1 引言
  LTE(Long Term Evolution)是3GPP组织基于3G移动通信技术研发出的下一代“准4G”技术。该标准可以支持最大20MHZ的系统带宽、超过200Mbit/s的数据传输速率和更短的传输延时。LTE协议栈可分为三层:物理层(L1),数据链路层(L2)和网络层(L3)。其中L2自下而上分为MAC(Media Access Control)子层、RLC(Radio Link Control)子层和PDCP(Packet Data Convergence Protocol)子层,如图1所示。其中RLC子层是面向连接的、基于比特流的可靠的传输控制协议,用于为上层不同类型的业务提供不同的数据传输链路和QoS控制。L3的RRC(Radio Resource Control)层对RLC层进行状态管理和参数配置等。

图1 RLC在LTE协议栈中的位置
2 RLC协议研究
2.1 概述
  RLC层的功能由RLC实体实现。根据上层不同的数据传输要求,RLC实体可被配置为TM(Transparent Mode)发送实体、TM接收实体、UM(Unacknowledged Mode)发送实体、UM接收实体和AM(Acknowledged Mode)实体。其中RLC发送实体从上层的SAP(Service Access Point,服务接入点)接收SDU(Service Data Unit),在得到下层发送机会通知后,将SDU分段拼接为指示大小的PDU(Packet Data Unit),如图2所示,然后通过下层的逻辑信道发送给对等端实体。RLC接收实体从下层逻辑信道接收PDU,并重新组合为SDU,再发送给上层SAP。RLC AM实体同时具有发送和接收功能。

图2 RLC PDU结构图
  TM实体为上层提供透明模式传输,这种模式不对数据包进行任何处理,常用于信令发送,如广播消息、寻呼消息等。UM实体为上层提供非确认模式传输,这种模式提供了一定的可靠性保障,但是可能会存在丢包现象,适用于对延迟敏感,但允许一定误码率的业务,如VoIP等。AM实体为上层提供确认模式传输,这种模式可实现无差错传输,但会导致较大的延时,适用于对错误敏感但对时延不敏感的业务,如RRC信令传输和FTP业务等。
2.2 非确认传输模式UM

图3 UM实体模型
  UM传输模式实体模型如图3所示。UM发送实体把从上层接收到的SDU放入发送缓冲区中。当下层通知RLC层发送时机时,UM发送实体将发送缓冲区中的SDU分段拼接成下层指示大小的PDU,添加RLC包头后通过逻辑信道发送给下层。
UM接收实体定义了一个接收窗口,它从下层逻辑信道接收到PDU后,首先检测该PDU是否落在该窗口之内,如果没有,则丢弃,否则将其放入接收缓冲区中。如果接收缓冲区中的PDU序列号有乱序,则进行重排序,之后去掉RLC包头,将PDU重组为SDU,并递交到上层。
为了避免过多的重排序时延,UM接收实体设置了一个重排序定时器。当检测到有没收到的PDU时,就启动该定时器,若定时器超时,UM接收实体不再等待没收到的PDU,而是开始将接收缓冲区中的PDU重组为SDU,递交到上层。
2.3 确认传输模式AM

图4 AM实体模型
  AM传输模式实体模型如图4所示,它在支持UM模式所有功能的基础上,采用ARQ(Automatic Repeat reQuest,自动重复请求)机制来实现对出错或丢失数据包的重传。与ARQ有关的功能包括:PDU的重传和重分段,轮询和状态报告。
重传和重分段为了让发送方重传丢失的PDU,接收方会向发送方发送一个状态PDU,也叫做状态报告,用来通知发送方成功接收的PDU和丢失的PDU。AM实体发送端在发送完PDU之后,应该把它们保存在一个重传缓冲区中,以便对等端通过状态报告要求对某些PDU进行重传。
  AM实体接收端接收到状态PDU后,判断发送端哪些PDU或PDU分段需要重传。当需要对某个PDU重传时,若下层指示的发送大小小于该PDU的大小,还需将该PDU重分段成更小的PDU分段再发送。
  轮询和状态报告
  AM实体发送端通过将PDU包头中的轮询位置为1,来要求对等实体接收端给它发送状态报告,该功能叫做轮询。发送端发起轮询的条件有:发送端最后一个PDU被发出去,或者从上次发送轮询以来记录的发送过的PDU个数或字节数达到某个预定值。此外,当AM实体接收端检测到一个PDU接收失败,也可以生成一个状态报告,以期待对等端的重传,而不是像UM实体那样认为在一定时间内没收到的PDU是永远丢失了。
3 RLC层在Linux中的设计和实现
  基于Linux操作系统的RLC子层协议开发有效利用Linux操作系统的多线程编程、内存管理和通信方式简单高效等方面的特点,按功能独立性来划分RLC子层的各个模块,并妥善处理模块之间的通信。
3.1 整体架构设计
  RLC子层由发送线程、接收线程和定时器线程三个线程组成,所有线程均从属于LTE协议栈进程。这三个线程之间通过消息队列和传输控制块(TCB)进行协调,如图5所示。线程的建立和调度则由操作系统负责。

图5 RLC层整体架构
发送线程和接收线程均有自己的消息队列,用于接收其他线程的各类消息,如RRC层发来的RLC实体建立消息、PDCP层发来的SDU接收消息、MAC层发来的PDU接收消息、定时器线程发来的某个定时器超时消息等。
RLC层定时器线程定义了UM实体和AM实体用到的所有定时器,多个定时器用链表来管理,定时器超时即向发送或接收线程的消息队列发送消息,由发送或接收线程来调用相应的超时例程。
3.2 功能模块设计
  协议控制模块
  RLC子层最多可以同时建立32个不同工作模式的实体,因此定义一个包含32个元素的全局数组,每个数组元素称为一个协议控制块(PCB),用来存放对应实体用到的状态变量、定时器和数据缓冲区等。采用链表方式对PCB进行管理:当收到RLC实体建立消息时,在PCB全局数组中找到一个未分配的元素加入该链表中,标记分配状态为已分配,并关联给刚建立的RLC实体,最后配置该PCB的各个参数。
  数据处理模块
  将RLC子层的功能进行抽象化、模块化的设计之后,可将UM模块划分为:PDU构造子模块、发送管理子模块、PDU解析子模块和接收管理子模块,将AM模块划分为:PDU构造子模块、发送管理子模块、PDU解析子模块、接收管理子模块和状态控制子模块。各模块之间界限清晰、功能独立,彼此之间的通信简洁高效。
4 总结和展望
  本文介绍了LTE协议栈RLC层的工作机制,并给出了在Linux操作系 统下实现RLC层协议栈的设计方案。现阶段的协议软件能够完成LTE RLC层协议文档Release 8的主要功能,但是还需要提高代码的运行效率和对异常情况的处理能力。这些将在今后的工作中得以改进。
参考文献
Stevens, W. Richard. UNIX网络编程:卷2 进程间通信:英文版. 北京:人民邮电出版社. 2009 本文链接:http://www.qk112.com/lwfw/jsjlw/ruanjianjishu/229528.html

论文中心更多

发表指导
期刊知识
职称指导
论文百科
写作指导
论文指导
论文格式 论文题目 论文开题 参考文献 论文致谢 论文前言
教育论文
美术教育 小学教育 学前教育 高等教育 职业教育 体育教育 英语教育 数学教育 初等教育 音乐教育 幼儿园教育 中教教育 教育理论 教育管理 中等教育 教育教学 成人教育 艺术教育 影视教育 特殊教育 心理学教育 师范教育 语文教育 研究生论文 化学教育 图书馆论文 文教资料 其他教育
医学论文
医学护理 医学检验 药学论文 畜牧兽医 中医学 临床医学 外科学 内科学 生物制药 基础医学 预防卫生 肿瘤论文 儿科学论文 妇产科 遗传学 其他医学
经济论文
国际贸易 市场营销 财政金融 农业经济 工业经济 财务审计 产业经济 交通运输 房地产经济 微观经济学 政治经济学 宏观经济学 西方经济学 其他经济 发展战略论文 国际经济 行业经济 证券投资论文 保险经济论文
法学论文
民法 国际法 刑法 行政法 经济法 宪法 司法制度 法学理论 其他法学
计算机论文
计算机网络 软件技术 计算机应用 信息安全 信息管理 智能科技 应用电子技术 通讯论文
会计论文
预算会计 财务会计 成本会计 会计电算化 管理会计 国际会计 会计理论 会计控制 审计会计
文学论文
中国哲学 艺术理论 心理学 伦理学 新闻 美学 逻辑学 音乐舞蹈 喜剧表演 广告学 电视电影 哲学理论 世界哲学 文史论文 美术论文
管理论文
行政管理论文 工商管理论文 市场营销论文 企业管理论文 成本管理论文 人力资源论文 项目管理论文 旅游管理论文 电子商务管理论文 公共管理论文 质量管理论文 物流管理论文 经济管理论文 财务管理论文 管理学论文 秘书文秘 档案管理
社科论文
三农问题 环境保护 伦理道德 城镇建设 人口生育 资本主义 科技论文 社会论文 工程论文 环境科学