CN116599833B - 对前传网络进行故障排查的方法及装置 - Google Patents

对前传网络进行故障排查的方法及装置 Download PDF

Info

Publication number
CN116599833B
CN116599833B CN202310881413.4A CN202310881413A CN116599833B CN 116599833 B CN116599833 B CN 116599833B CN 202310881413 A CN202310881413 A CN 202310881413A CN 116599833 B CN116599833 B CN 116599833B
Authority
CN
China
Prior art keywords
time
data packet
data
packet
time window
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310881413.4A
Other languages
English (en)
Other versions
CN116599833A (zh
Inventor
曾振兴
曾维
雷文明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Shiju Network Technology Co Ltd
Original Assignee
Guangzhou Shiju Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Shiju Network Technology Co Ltd filed Critical Guangzhou Shiju Network Technology Co Ltd
Priority to CN202310881413.4A priority Critical patent/CN116599833B/zh
Publication of CN116599833A publication Critical patent/CN116599833A/zh
Application granted granted Critical
Publication of CN116599833B publication Critical patent/CN116599833B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0677Localisation of faults
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/04Arrangements for maintaining operational condition
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供一种对前传网络进行故障排查的方法及装置,用以解决故障排查时间较长导致通信效率低的技术问题。其中,一种对前传网络进行故障排查的方案,包括:存储基带处理单元发送的数据包至前传缓存区;根据时间脉冲,确定起始时间节点、结束时间节点、由起始时间节点和结束时间节点构建的时间脉冲窗口;当前传缓存区的剩余容量不允许存储数据包时,将数据包存储时间作为最大提前量,确定时间窗口的起始时间节点;获取预设的数据流参数,确定前传缓存区至少存储数据包的时间,作为最小提前量,构建时间窗口;射频拉远单元以时间窗口接收并检测数据包,确定数据包内容故障。检测在时间窗口内收到的数据包,缩短了故障排查时间,提高通信效率低。

Description

对前传网络进行故障排查的方法及装置
技术领域
本申请涉及通信技术领域,尤其涉及一种对前传网络进行故障排查的方法及装置。
背景技术
在5G-NR系统中,5G基站由基带处理单元(Baseband Unit,BBU)、射频拉远单元(Remote Radio Unit,RRU)或有源天线单元(Active Antenna Unit,AAU)组成。所述5G-NR系统在通用服务器上实现基带处理单元BBU中层一、层二、层三的协议功能,并在射频拉远单元RRU上实现射频收发的功能。基带处理单元BBU与射频拉远单元RRU之间通过光纤连接。
手机入网的过程中,首先需要通过空中接口连接到基站。基站中基带处理单元BBU通过eCPRI接口与射频拉远单元RRU进行数据交互。当手机无法入网时,需要分析故障原因。故障原因可以为手机本身,例如欠费,手机软件问题、手机内存问题、手机内存问题。另一方面,故障原因也可以为基带处理单元BBU与射频拉远单元RRU之间数据包故障。现有技术在手机入网业务过程中,需要处理全部数据包才能得出故障原因。
在实现现有技术中,发明人发现:
基带处理单元BBU与射频拉远单元RRU之间的链路要传输的数据包量很大且数据包种类繁多。在分析故障原因时,处理全部数据包比较耗时,即故障排查时间较长。
因此,需要提供一种对前传网络进行故障排查的方法及装置,用以解决故障排查时间较长导致通信效率低的技术问题。
发明内容
本申请实施例提供一种对前传网络进行故障排查的方法及装置,用以解决故障排查时间较长导致通信效率低的技术问题。
具体的,一种对前传网络进行故障排查的方法,应用于基带处理单元BBU在时间脉冲内发送数据包至射频拉远单元RRU,具体包括:
存储基带处理单元BBU发送的数据包至前传缓存区;
根据时间脉冲,确定时间脉冲的起始时间节点、结束时间节点、由起始时间节点和结束时间节点构建的时间脉冲窗口;
当前传缓存区的剩余容量不允许存储数据包时,将数据包存储时间作为最大提前量;
获取预设的数据流参数,确定前传缓存区至少存储数据包的时间;
将前传缓存区至少存储数据包的时间作为最小提前量;
在时间脉冲窗口内,根据最大提前量,确定时间窗口的起始时间节点;
在时间脉冲窗口内,根据最小提前量,确定时间窗口的结束时间节点;
根据时间窗口的起始时间节点、时间窗口的结束时间节点,构建时间窗口;
在时间脉冲内,射频拉远单元RRU以时间窗口,接收前传缓存区中基带处理单元BBU发送的数据包;
检测在时间窗口内收到的数据包,确定数据包内容故障。
进一步的,所述检测在时间窗口内收到的数据包,确定数据包内容故障,具体包括:
获取数据包中序列标识符编号;
当序列标识符编号未递增时,环绕式计数器以eAxc粒度对数据包进行计数;
当环绕式计数器计数的数据包数量不满足预设递增条件时,确定数据包内容故障为序列标识符编号错误。
进一步的,所述检测在时间窗口内收到的数据包,确定数据包内容故障,具体还包括:
当环绕式计数器计数的数据包数量满足预设递增条件时,获取数据包包文协议;
确定不满足包文协议的数据包;
环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果;
根据计数结果,确定数据包内容故障为包文协议错误。
进一步的,所述方法具体还包括:
通过环绕式计数器,记录在时间窗口外收到的数据包数量;
根据在时间窗口外收到的数据包数量,确定数据包发送时间故障。
进一步的,所述在时间脉冲内,射频拉远单元RRU以时间窗口,接收前传缓存区中基带处理单元BBU发送的数据包,具体包括:
接收前传缓存区中基带处理单元BBU发送的数据包;
在时间脉冲内,提取数据包中第一时隙内第一符号中数据;
当数据在时间窗口内到达时,射频拉远单元RRU接收数据包。
本申请实施例还提供一种对前传网络进行故障排查的装置,应用于基带处理单元BBU在时间脉冲内发送数据包至射频拉远单元RRU,具体包括:
基带处理单元BBU,用于发送数据包;
前传缓存区,用于存储基带处理单元BBU发送的数据包;
时间窗口配置模块,用于根据时间脉冲,确定时间脉冲的起始时间节点、结束时间节点、由起始时间节点和结束时间节点构建的时间脉冲窗口;
还用于当前传缓存区的剩余容量不允许存储数据包时,将数据包存储时间作为最大提前量;还用于获取预设的数据流参数,确定前传缓存区至少存储数据包的时间;还用于将前传缓存区至少存储数据包的时间作为最小提前量;
还用于在时间脉冲窗口内,根据最大提前量,确定时间窗口的起始时间节点;还用于在时间脉冲窗口内,根据最小提前量,确定时间窗口的结束时间节点;
还用于根据时间窗口的起始时间节点、时间窗口的结束时间节点,构建时间窗口;
射频拉远单元RRU,用于在时间脉冲内,以时间窗口接收前传缓存区中基带处理单元BBU发送的数据包;
检测模块,用于检测在时间窗口内收到的数据包,确定数据包内容故障。
进一步的,所述检测模块,用于检测在时间窗口内收到的数据包,确定数据包内容故障,具体用于:
获取数据包中序列标识符编号;
当序列标识符编号未递增时,环绕式计数器以eAxc粒度对数据包进行计数;
当环绕式计数器计数的数据包数量不满足预设递增条件时,确定数据包内容故障为序列标识符编号错误。
进一步的,所述检测模块,用于检测在时间窗口内收到的数据包,确定数据包内容故障,具体还用于:
当环绕式计数器计数的数据包数量满足预设递增条件时,获取数据包包文协议;
确定不满足包文协议的数据包;
环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果;
根据计数结果,确定数据包内容故障为包文协议错误。
进一步的,所述装置还包括:
计数模块,用于通过环绕式计数器,记录在时间窗口外收到的数据包数量;
所述检测模块,还用于根据在时间窗口外收到的数据包数量,确定数据包发送时间故障。
进一步的,所述射频拉远单元RRU,用于在时间脉冲内,以时间窗口接收前传缓存区中基带处理单元BBU发送的数据包,具体用于:
接收前传缓存区中基带处理单元BBU发送的数据包;
在时间脉冲内,提取数据包中第一时隙内第一符号中数据;
当数据在时间窗口内到达时,射频拉远单元RRU接收数据包。
本申请实施例提供的技术方案,至少具有如下有益效果:
通过前传缓存区存储基带处理单元BBU发送的数据包,避免数据包拥塞,导致基站系统瘫痪。通过将将数据包存储时间作为最大提前量,保证了数据包不会溢出,保证了传输内容的准确性。通过将前传缓存区至少存储数据包的时间作为最小提前量,使得基站系统正常运行,不会断流导致信号差。通过检测在时间窗口内收到的数据包,减少处理的数据量,缩短故障排查时间,提高数据包处理的效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种对前传网络进行故障排查的方法的流程框图;
图2为本申请实施例提供的时间窗口的缓存设计图;
图3为本申请实施例提供的时间窗口的设计图;
图4为本申请实施例提供的数据包计数结果呈现设计图;
图5为本申请实施例提供的环绕式计数器呈现效果图;
图6为本申请实施例提供的一种对前传网络进行故障排查的装置的结构示意图。
图中附图标记表示为:
100-对前传网络进行故障排查的装置
11-基带处理单元BBU
12-前传缓存区
13-时间窗口配置模块
14-射频拉远单元RRU
15-检测模块。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
基站包括基带处理单元(Building Baseband Unit,BBU)、射频拉远单元(RadioRemote Unit,RRU)、天馈系统等部分。基带处理单元主要完成基带信号的处理,并通过光纤将信号传输至RRU。射频拉远单元射频模块主要是完成空中射频信号和基带信号之间的转换,以及射频信号的放大、收发等功能。RRU一般位于上塔,且位于天线的下方。天馈系统主要就是馈线和天线。馈线用于连接RRU和天线,天线将射频信号辐射出去。5G时代,RRU和天馈系统合并成了有源天线单元(Active Antenna Unit,AAU),通过光纤和BBU相连,可以简化站点部署,降低馈线复杂度,减少传输损耗,提升网络整体性能。BBU则拆解为CU(Centralized Unit)和DU(Distributed Unit),CU用来集中处理非实时数据,DU负责分布处理实时数据。每个CU可以管理多个DU,CU和DU之间通过不同的组网方案可以适配不同的基站接入场景。
本申请的方法用来排查基站中基带处理单元BBU在时间脉冲内发送数据包至射频拉远单元RRU产生的故障。
请参看图1,本申请提供的一种对前传网络进行故障排查的方法,应用于基带处理单元BBU在时间脉冲内发送数据包至射频拉远单元RRU,具体包括:
S101:存储基带处理单元BBU发送的数据包至前传缓存区。
可以理解的是,基带处理单元BBU可以处理核心网、用户的信令与数据、移动通信中最复杂的协议、算法等。基带处理单元BBU可以用来处理基站中天馈系统接收的信号。可以理解的是,所述基带处理单元BBU发送的数据包种类、数量众多。从种类上看,所述基带处理单元BBU发送的数据包包括控制面数据包、用户面数据包、管理面数据包、同步面数据包等。
由于所述基带处理单元BBU发送的数据包种类、数量众多,所以系统在处理数据过程中会数据包拥塞影响效率。因此,需要存储基带处理单元BBU发送的数据包至前传缓存区。所述前传缓存区可以理解为数据交换的缓冲区。先接受数据包,再以预设的计划进行处理,避免数据拥塞。值得注意的是,所述前传缓存区的空间量不超过系统的最大存储空间量。
S102:根据时间脉冲,确定时间脉冲的起始时间节点、结束时间节点、由起始时间节点和结束时间节点构建的时间脉冲窗口。
将基带处理单元BBU发送的数据包存储至前传缓存区后,需要设定数据传输规划,使得数据包发送方和数据包接收方可以同步接收基带处理单元BBU发送的数据包。本申请的一个实施例中,基于时间脉冲,数据包接收方同步接收数据包发送方发送的数据。
S103:当前传缓存区的剩余容量不允许存储数据包时,将数据包存储时间作为最大提前量。
S104:获取预设的数据流参数,确定前传缓存区至少存储数据包的时间。
S105:将前传缓存区至少存储数据包的时间作为最小提前量。
请参看图2,为时间窗口的缓存设计图。
可以理解的是,时间窗口的配置基于前传缓存区的大小设定的。
当前传缓存区的剩余容量不允许存储数据包时,将数据包存储时间作为最大提前量。获取预设的数据流参数,确定前传缓存区至少存储数据包的时间。将前传缓存区至少存储数据包的时间作为最小提前量。另外的,准时提前量可以理解为空口对齐系统真正工作时需要的提前量。时间窗口的缓存设计需要根据最大提前量>当前提前量>最小提前量来设计。
在本申请的一个具体缓存实施例中,当前传缓存区的剩余容量不允许存储数据包时,将数据包存储时间作为最大提前量。例如,当前传缓存区能够存储10个symbol的数据时,基带处理单元BBU可以根据gps_1pps或者1588_1pps,提前发出10个symbol数据。因此,提前发出10个symbol数据所需要的时间就可以表示为数据包存满前传缓存区所需要的时间,即最大提前量。值得注意,假设基带处理单元BBU到射频拉远单元RRU的延迟量为0。至于最小提前量,可以获取预设的数据流参数来设定。获取预设的数据流参数后,根据预设的数据流参数可以得到系统最少需要存储多少symbol数据,才不会使数据流断开。例如,当前传缓存区最少需要存储3个symbol才能正常运行时,将前传缓存区至少存储数据包的时间就可以表示为最小提前量。
在本申请的一个具体缓存实施例中,当前传缓存区能够存储5个symbol的数据时,基带处理单元BBU可以根据gps_1pps或者1588_1pps,提前发出5个symbol数据。因此,提前发出5个symbol数据所需要的时间就可以表示为数据包存满前传缓存区所需要的时间,即最大提前量。值得注意,假设基带处理单元BBU到射频拉远单元RRU的延迟量为0。至于最小提前量,可以获取预设的数据流参数来设定。获取预设的数据流参数后,根据预设的数据流参数可以得到系统最少需要存储多少symbol数据,才不会使数据流断开。例如,当前传缓存区最少需要存储2个symbol才能正常运行时,将前传缓存区至少存储数据包的时间就可以表示为最小提前量。
S106:在时间脉冲窗口内,根据最大提前量,确定时间窗口的起始时间节点。
S107:在时间脉冲窗口内,根据最小提前量,确定时间窗口的结束时间节点。
S108:根据时间窗口的起始时间节点、时间窗口的结束时间节点,构建时间窗口。
请参看图3,为时间窗口的设计图。
可以理解的是,将时间窗口的起始时间节点、时间窗口的结束时间节点之间设定为时间窗口。为了更好地描述接收地数据包量,本申请中采用环绕式计数器。所述环绕式计数器可以被1pps_1ms清零。换句话说,环绕式计数器以1秒为周期,记录一秒内收到的异常数据包。当系统运行到下一子帧时,所述环绕式计数器清零。另外的,所述环绕式计数器的计数范围为0-M循环计数。0为最小计数值;M为最大计数值。可以这样理解,当M+1时,所述环绕式计数器变为0。当系统时钟为156.25Mhz,最大计数值M为156249。当系统时钟为245.76Mhz,最大计数值那么M为245759。可以直观得出的是,从时间窗口之前获取的数据包表示为提前。从时间窗口之后获取的数据包表示为延后。从时间窗口内获取的数据包表示为命中。
在本申请的一个实施例中,可以选取子帧n来描述时间窗口的设计。子帧n-1、子帧n+1和子帧n以1pps_1ms边界。当前提前量可以理解为准时提前量。简言之,与目前系统的缓存设计相匹配。将前传缓存区的剩余容量不允许存储数据包时的数据包存储时间作为最大提前量。所述最大提前量即为时间窗口的起始时间节点。将系统能正常工作,前传缓存区至少存储数据包的时间作为最小提前量。所述最小提前量即为时间窗口的结束时间节点。根据时间窗口的起始时间节点、时间窗口的结束时间节点,构建时间窗口。
S109:在时间脉冲内,射频拉远单元RRU以时间窗口,接收前传缓存区中基带处理单元BBU发送的数据包。
可以理解的是,射频拉远单元RRU和基带处理单元BBU之间可以通过前传卡进行通信。因此,可以在前传接口上使用一个特定性能计数器,例如环绕式计数器,实现以按O-RU、按传输流、按eAxC粒度对获取数据包事件进行计数。通过设置时间窗口,可将获取数据包事件分为三类。为了方便标识,将从时间窗口之前获取的数据包定义为“RX_EARLY”,即表示提前。将从时间窗口之后获取的数据包定义为“RX_LATE”,即表示延后。将从时间窗口内获取的数据包定义为“RX_ON_TIME”,即表示命中。所述在时间脉冲内,射频拉远单元RRU以时间窗口,接收前传缓存区中基带处理单元BBU发送的数据包可以理解为射频拉远单元RRU以时间窗口,接收“RX_ON_TIME”命中的数据包。
S110:检测在时间窗口内收到的数据包,确定数据包内容故障。
可以理解的是,在时间窗口内收到的数据包,可能会出现数据包内容故障。所述数据包内容故障可以包括序列标识符编号错误、包文协议错误。值得注意的是,如果数据包为分片包,需要将分片包重组后,再在时间窗口内收到。换句话说,本申请在接收数据包进行统计前,需要将分片包重组,以确保检测准确率。
进一步的,所述检测在时间窗口内收到的数据包,确定数据包内容故障,具体包括:
获取数据包中序列标识符编号;
当序列标识符编号未递增时,环绕式计数器以eAxc粒度对数据包进行计数;
当环绕式计数器计数的数据包数量不满足预设递增条件时,确定数据包内容故障为序列标识符编号错误。
可以理解的是,所述序列标识符编号eCPRISeqId可以提供数据包的标识和排序。所述环绕式计数器可以理解为基于移位寄存器的计数器。对于n个移位寄存器构成的计数器,可以有n个有效状态。设置一个初始状态,通过移位即可进行循环。至于环绕式计数器的计数范围可以根据系统时钟进行设置。当系统时钟为156.25Mhz,设置计数器范围为0-156249。当系统时钟为245.76Mhz,设置计数器范围为0-245759。环绕式计数器计数达最大值后加1,变为0后继续运行。
当序列标识符编号未递增时,环绕式计数器以eAxc粒度对数据包进行计数。当环绕式计数器计数的数据包数量不满足预设递增条件时,确定数据包内容故障为序列标识符编号错误。
在本申请的一个具体实施例中,接受的数据包均在“RX_ON_TIME”接收到。在“RX_ON_TIME”情况下,根据Sequence ID字段来判断该ID的连续性。可知,环绕式计数器0-255之间进行循环。环绕式计数器计数达最大值后加1,变为0后继续运行。如果当前数据包比历史数据包不是加1的关系,确定数据包内容故障为序列标识符编号错误。当数据包为分片包时,检测Sequence ID和Subsequence ID字段。当数据包为非分片包时,检测Sequence ID字段。值得注意的是,当数据包在接收之前被丢弃,或数据包被网络重新排序后超过数据包接收端的接收能力时,环绕式计数器的计数也会增加。另外,当环绕式计数器以eAxc粒度对数据包进行计数,上行链路和下行链路需要使用不同的环绕式计数器。
进一步的,所述检测在时间窗口内收到的数据包,确定数据包内容故障,具体还包括:
当环绕式计数器计数的数据包数量满足预设递增条件时,获取数据包包文协议;
确定不满足包文协议的数据包;
环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果;
根据计数结果,确定数据包内容故障为包文协议错误。
可以理解的是,当环绕式计数器计数在时间窗口内接收的数据包数量满足预设递增条件时,可以确定eCPRISeqId正确。eCPRISeqId正确的数据包中还包含因为包文协议错误,而被丢弃的数据包。因此,需要先获取数据包包文协议。从数据包包文协议中,可以得到满足协议的条件。
可以理解的是,所述数据包包文协议可以包括六个条件。
第一个条件:所述数据包是否配置了Pcid或section Id。
所述Pcid可以理解为IQ数据传输消息系列标识符,例如物理信道标识符、用户标识符、层标识符、天线端口标识符等。可见,IQ数据传输消息系列标识符都是物理层PHY处理的共同属性。
在本申请的一个具体实施例中,所述IQ数据传输消息系列标识符Pcid用来对IQ数据进行标识。其中,对IQ数据进行标识包括DU_Port_ID,即DU的端口ID。再者,还包括BandSector_ID,即聚合小区标识,用于区分O-RU支持的波段和扇区;还包括CC_ID,即载波和天线ID;还包括RU_Port_ID,即RU端口ID。显而易见,当所述IQ数据传输消息系列标识符Pcid将IQ数据进行了标识后,可以获取IQ数据包的发送方DU_Port_ID、IQ数据包的接收方RU_Port_ID、以及传输的IQ数据包数量。
所述section Id可以理解为区域ID。在本申请的一个具体实施例中,所述区域ID可以用来标识控制面消息中描述的各个数据部分,目的是将用户面数据区段映射到与该数据关联的相应控制面数据区段。换句话说,所述区域ID用来将用户面的数据区段映射到与该数据关联的相应的控制面的数据区段,使得用户面和控制面的数据保持一致,而不会对应其他区段的数据导致混乱。
结合以上Pcid或section Id,当数据包未配置IQ数据传输消息系列标识符Pcid,换句话说,就是不能获取到数据包的发送方、接收方以及传输数量时,即判定为不满足包文协议。当数据包未配置section Id,换句话说,就是未将用户面的数据区段映射到与该数据关联的相应的控制面的数据区段时,即判定为不满足包文协议。环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果。所述计数结果可以理解确定不满足包文协议的数据包数量。得到不满足包文协议的数据包数量后,即可以确定数据包内容故障为包文协议错误。
第二个条件:所述数据包的C bit是否正常使用。
所述C bit可以理解为级联符号标志,可以用来判断数据包接收方收到的数据包是否和数据包发送方发送的数据包一致。在本申请的一个具体实施例中,当数据包的级联符号标志出现异常,即可以判断出数据包接收方收到的数据包是否和数据包发送方发送的数据包不一致,即判定为不满足包文协议。环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果。所述计数结果可以理解确定不满足包文协议的数据包数量。得到不满足包文协议的数据包数量后,即可以确定数据包内容故障为包文协议错误。
第三个条件:所述数据包是否配置了或支持udCompHdr设置。
所述udCompHdr(User data compression header,用户数据压缩头)可以理解为在用户面上用来说明下行方向的O-RU和上行方向的O-DU如何对接收到的用户面数据包进行解释和解压缩,即可以指示数据压缩的起始位置。参看本申请的一个具体实施例,在解压缩数据包过程中,不同的数据包被设置了不同的udCompHdr。换句话说,基站系统可以根据设置的udCompHdr,获得可以解压缩数据包的指示,并根据指示进行解压缩。当数据包的用户数据压缩头错误,即未能解压缩对应的正确数据包,导致混乱,即判定为不满足包文协议。环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果。所述计数结果可以理解确定不满足包文协议的数据包数量。得到不满足包文协议的数据包数量后,即可以确定数据包内容故障为包文协议错误。
第四个条件:所述数据包是否支持扩展部分。在本申请的一个具体实施例中,数据包不支持的扩展部分可以理解为,数据包发送方发送的数据不能被接收方完全应用。换句话说,发送方发送的数据部分可以被接收方接收处理,还有部分是未进行处理,即判定为不满足包文协议。环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果。所述计数结果可以理解确定不满足包文协议的数据包数量。得到不满足包文协议的数据包数量后,即可以确定数据包内容故障为包文协议错误。
第五个条件:所述数据包的eCPRIVersion或payloadVersion信息是否正确。
所述eCPRIVersion可以理解为eCPRI协议修订版本号,用于指示系统应用的eCPRI协议的版本号。可以理解的是,eCPRI协议可以有1.0、2.0、3.0版本。在具体实施例中,在基带处理单元BBU发送数据包至射频拉远单元RRU过程中,射频拉远单元RRU需获得数据包的eCPRI协议版本号,才能处理数据包。假设eCPRI协议的版本号为4.0,射频拉远单元RRU就无法与现有的1.0、2.0、3.0版本进行匹配接收数据包。换句话说,数据包的eCPRIVersion错误,即判定不满足包文协议。
所述payloadVersion可以理解为有效载荷版,用于指示现在载荷的版本。可以理解的是,包文协议规定了payloadVersion版本固定为1。在具体实施例中,假如获取的payloadVersion版本为非1以外的值,即判定为payloadVersion错误,即判定不满足包文协议。
结合以上数据包的eCPRIVersion错误、payloadVersion错误,环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果。所述计数结果可以理解确定不满足包文协议的数据包数量。得到不满足包文协议的数据包数量后,即可以确定数据包内容故障为包文协议错误。
第六个条件:所述数据包的eCPRIMessage字段是否包含0、2或5。
所述eCPRIMessage可以理解为eCPRI消息类型。值得注意的是,本申请中描述的数据包可以包含用户面数据包、控制面数据包、同步管理面数据包等。所述数据包的eCPRIMessage字段可以指示eCPRI消息类型传递的服务类型。另外的,所述数据包的eCPRIMessage字段是eCPRI common header的一部分。在本申请的协议版本中,可以支持“0000 0000b”,“0000 0010b”和“0000 0101b”。所述“0000 0000b”可以理解为数据包的eCPRIMessage字段为0。所述“0000 0010b”可以理解为数据包的eCPRIMessage字段为2。所述“0000 0101b”可以理解为数据包的eCPRIMessage字段为5。具体的,“0000 0000b”表示IQ数据消息,即用户面数据包。“0000 0010b”表示实时控制数据消息,即控制面数据包。“00000101b”表示传输网络延迟测量消息。
在本申请的一个实施例中,先获取数据包的eCPRIMessage字段包含哪些数据包种类。当eCPRIMessage字段为0,即指示传输的数据包为用户面数据包。当eCPRIMessage字段为2,即指示传输的数据包为控制面数据包。当eCPRIMessage字段为5,即指示传输的数据包为传输网络延迟测量消息的数据包。但是,当eCPRIMessage字段不包含0、2或5时,表示没有用户面数据包、控制面数据包、传输网络延迟测量消息的数据包。因此,所述确定传输的数据包种类不满足包文协议需要的数据包类型。环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果。所述计数结果可以理解确定不满足包文协议的数据包数量。得到不满足包文协议的数据包数量后,即可以确定数据包内容故障为包文协议错误。
总的来说,基于包文协议,判断数据包中不满足条件的数据包。环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果。根据计数结果,确定数据包内容故障为包文协议错误。值得说明的是,在本申请的具体实施例中,包文协议的条件可以根据系统实际要求进行选择。当选择两个条件时,只需要判断出两个条件未满足,即可判断数据包内容故障为包文协议错误。这样可以缩短故障排查时间,提高数据包处理的效率。
进一步的,所述方法具体还包括:
通过环绕式计数器,记录在时间窗口外收到的数据包数量;
根据在时间窗口外收到的数据包数量,确定数据包发送时间故障。
可以理解的是,时间窗口外包括时间窗口之前和时间窗口之后。不管是时间窗口内,还是时间窗口外接收数据包,都需要将数据包可视化。本申请中,通过环绕式计数器记录“RX_EARLY”和“RX_LATE”收到的数据包数量。所述环绕式计数器可以理解为基于移位寄存器的计数器。对于n个移位寄存器构成的计数器,可以有n个有效状态。设置一个初始状态,通过移位即可进行循环。至于环绕式计数器的计数范围可以根据系统时钟进行设置。当系统时钟为156.25Mhz,设置计数器范围为0-156249。当系统时钟为245.76Mhz,设置计数器范围为0-245759。环绕式计数器计数达最大值后加1,变为0后继续运行。
在本申请的一个具体实施例中,在秒脉冲内,当在“RX_EARLY”和“RX_LATE”接收到数据时,环绕式计数器通过计数统计1秒内收到的数据包。如果计数值不为0,毫无疑问的可以表示数据包在时间上发送错误。换句话说,数据包发送端和数据包接收端未实现同步收发数据。数据包接收端接收不到数据,即确定根据数据包发送时间故障。
通过配置时间窗口可以减少数据量,不用处理众多数据包。缩短时间,提高效率。
进一步的,所述在时间脉冲内,射频拉远单元RRU以时间窗口,接收前传缓存区中基带处理单元BBU发送的数据包,具体包括:
接收前传缓存区中基带处理单元BBU发送的数据包;
在时间脉冲内,提取数据包中第一时隙内第一符号中数据;
当数据在时间窗口内到达时,射频拉远单元RRU接收数据包。
可以理解的是,在移动通信中,数据包在无线网络上是以无线帧为单位进行传输。换句话说,无线帧就是数据包传输的时间单位。所述无线帧发送的周期一般为10ms。一个无线帧中包含10个子帧,即一个子帧为1秒。在5G系统中,根据子载波大小,子帧的上下行分配单位时隙也不同。所述时隙是数据包调度和同步的最小单位,一般包含14个symbol。
在本申请的一个具体实施例中,配置好时间窗口后,便可以将基带处理单元BBU发送的数据包进行分类,包括“RX_ON_TIME”、“RX_LATE”、“RX_EARLY”。为了更加缩短处理时间,可以在时间脉冲内,提取数据包中第一时隙内第一符号中数据。由于基带处理单元BBU都是按symbol0-symbol13发送数据包,所以可以根据数据包中第一时隙内第一符号中数据来判断其余symbol1-symbol13的数据。当symbol=0,slot=0的第一个数据包是“RX_ON_TIME”时,其余symbol1-symbol13的数据包可以认为是“RX_ON_TIME”。如果symbol=0,slot=0的第一个数据包是“RX_LATE”时,其余symbol1-symbol13的数据包可以认为是“RX_LATE”。总的来说,在判断frameid/subframeid/slotid/symbolid时,只需要判断1ms内,每个天线的第一数据包,就可以判断出整个子帧的数据包到达情况。值得注意的,不包括“RX_EARLY”的数据包,需要另外判断。
进一步的,所述对前传网络进行故障排查的方法,还包括:
采用环绕式计数器对接收的数据包进行计数,生成计数结果;
设定统计时间;
在统计时间内,设计计数结果呈现图。
可以理解的是,本申请中的环绕式计数器可以包括:RX_TOTAL、RX_ON_TIME、RX_EARLY、RX_LATE、RX_SEQID_ERR、RX_ON_TIME_C、RX_EARLY_C、RX_LATE_C、RX_SEQID_ERR_C、RX_CORRUPT、TX_TOTAL。可以理解的是,上述的环绕式计数器的大小可以为64bits。所述RX_SEQID_ERR、RX_SEQID_ERR_C、RX_CORRUPT计数器可选,而非必选。
其中,RX_TOTAL用来计数接收端接收到的控制面、用户面数据包,包括所有正常和异常的数据包。
RX_ON_TIME用来计数“RX_ON_TIME”收到的用户面数据包。RX_EARLY用来计数“RX_EARLY”收到的用户面数据包。所述数据包后续是否被处理或删除,该RX_EARLY计数器都将递增。RX_LATE用来计数“RX_LATE”收到的用户面数据包。所述数据包后续是否被处理或删除,该RX_LATE计数器都将递增。RX_SEQID_ERR用来计数“RX_ON_TIME”中,由于序列标识符编号错误收到的用户面数据包。当RX_SEQID_ERR计数器以eAxc粒度实现时,上行和下行链路必须实现单独的计数器。
RX_ON_TIME_C用来计数“RX_ON_TIME”收到的控制面数据包。RX_EARLY_C用来计数“RX_EARLY”收到的控制面数据包。RX_LATE_C用来计数“RX_LATE”收到的控制面数据包。RX_SEQID_ERR_C用来计数由于序列标识符编号错误收到的控制面数据包。
RX_CORRUPT用来计数由于包文协议错误收到的数据包。
TX_TOTAL用来计数输出的控制或用户面数据包的数量。
在本申请的一个具体实施例中,请参看图4,为数据包计数结果呈现设计图。图中所述清零周期,即两次清零之间的时间,可以设置为12h、24h。在清零周期刻度里,可以分为n份统计周期。n越大,即图中点数越多,画图的精度越高。但是CPU负荷也越大。相反的,n越小,即图中点数越少,画图的精度越低。但是CPU负荷也减小。需要说明的是,所述n可以依据实际情况选取合适的大小。在n个统计周期里,可以设置每一份的统计时间。所述统计时间可以为1分钟,2分钟,5分钟等。当统计时间为5分钟时,可以理解为5分钟统计一次数据包数量,然后将第0份统计周期、第x份统计周期、第n份统计周期计数值上报。再通过CPU查询到与环绕式计数器相关的寄存器参数后,分别呈现出相关图像。请参看图5,为环绕式计数器呈现效果图,可以更直观,便捷地得出异常数据包量,进行下一步地故障排查,提高效率。
综上所述,本申请提出的一种多媒体教学中多终端数据同步方法通过前传缓存区存储基带处理单元BBU发送的数据包,避免数据包拥塞,导致基站系统瘫痪。通过将将数据包存储时间作为最大提前量,保证了数据包不会溢出,保证了传输内容的准确性。通过将前传缓存区至少存储数据包的时间作为最小提前量,使得基站系统正常运行,不会断流导致信号差。通过检测在时间窗口内收到的数据包,减少处理的数据量,缩短故障排查时间,提高数据包处理的效率。通过计数器呈现图可以更直观,便捷地得出异常数据包量,进行下一步地故障排查,提高效率。
本申请实施例还提供一种对前传网络进行故障排查的装置100,用于执行步骤S101-S110。
请参看图6,本申请提供一种对前传网络进行故障排查的装置100,应用于基带处理单元BBU在时间脉冲内发送数据包至射频拉远单元RRU,具体包括:
基带处理单元BBU11,用于发送数据包;
前传缓存区12,用于存储基带处理单元BBU发送的数据包;
时间窗口配置模块13,用于根据时间脉冲,确定时间脉冲的起始时间节点、结束时间节点、由起始时间节点和结束时间节点构建的时间脉冲窗口;
还用于当前传缓存区的剩余容量不允许存储数据包时,将数据包存储时间作为最大提前量;还用于获取预设的数据流参数,确定前传缓存区至少存储数据包的时间;还用于将前传缓存区至少存储数据包的时间作为最小提前量;
还用于在时间脉冲窗口内,根据最大提前量,确定时间窗口的起始时间节点;还用于在时间脉冲窗口内,根据最小提前量,确定时间窗口的结束时间节点;
还用于根据时间窗口的起始时间节点、时间窗口的结束时间节点,构建时间窗口;
射频拉远单元RRU14,用于在时间脉冲内,以时间窗口接收前传缓存区中基带处理单元BBU发送的数据包;
检测模块15,用于检测在时间窗口内收到的数据包,确定数据包内容故障。
基带处理单元BBU11,用于发送数据包。
前传缓存区12,用于存储基带处理单元BBU发送的数据包。
由于所述基带处理单元BBU发送的数据包种类、数量众多,所以系统在处理数据过程中会数据包拥塞影响效率。因此,需要存储基带处理单元BBU发送的数据包至前传缓存区。所述前传缓存区可以理解为数据交换的缓冲区。先接受数据包,再以预设的计划进行处理,避免数据拥塞。值得注意的是,所述前传缓存区的空间量不超过系统的最大存储空间量。
时间窗口配置模块13,用于根据时间脉冲,确定时间脉冲的起始时间节点、结束时间节点、由起始时间节点和结束时间节点构建的时间脉冲窗口。
将基带处理单元BBU发送的数据包存储至前传缓存区后,需要设定数据传输规划,使得数据包发送方和数据包接收方可以同步接收基带处理单元BBU发送的数据包。本申请的一个实施例中,基于时间脉冲,数据包接收方同步接收数据包发送方发送的数据。
时间窗口配置模块13还用于当前传缓存区的剩余容量不允许存储数据包时,将数据包存储时间作为最大提前量,还用于获取预设的数据流参数,确定前传缓存区至少存储数据包的时间,还用于将前传缓存区至少存储数据包的时间作为最小提前量。
可以理解的是,时间窗口的配置基于前传缓存区的大小设定的。
在本申请的一个具体缓存实施例中,当前传缓存区的剩余容量不允许存储数据包时,将数据包存储时间作为最大提前量。例如,当前传缓存区能够存储10个symbol的数据时,基带处理单元BBU可以根据gps_1pps或者1588_1pps,提前发出10个symbol数据。因此,提前发出10个symbol数据所需要的时间就可以表示为数据包存满前传缓存区所需要的时间,即最大提前量。值得注意,假设基带处理单元BBU到射频拉远单元RRU的延迟量为0。至于最小提前量,可以获取预设的数据流参数来设定。获取预设的数据流参数后,根据预设的数据流参数可以得到系统最少需要存储多少symbol数据,才不会使数据流断开。例如,当前传缓存区最少需要存储3个symbol才能正常运行时,将前传缓存区至少存储数据包的时间就可以表示为最小提前量。
在本申请的一个具体缓存实施例中,当前传缓存区能够存储5个symbol的数据时,基带处理单元BBU可以根据gps_1pps或者1588_1pps,提前发出5个symbol数据。因此,提前发出5个symbol数据所需要的时间就可以表示为数据包存满前传缓存区所需要的时间,即最大提前量。值得注意,假设基带处理单元BBU到射频拉远单元RRU的延迟量为0。至于最小提前量,可以获取预设的数据流参数来设定。获取预设的数据流参数后,根据预设的数据流参数可以得到系统最少需要存储多少symbol数据,才不会使数据流断开。例如,当前传缓存区最少需要存储2个symbol才能正常运行时,将前传缓存区至少存储数据包的时间就可以表示为最小提前量。
时间窗口配置模块13还用于在时间脉冲窗口内,根据最大提前量,确定时间窗口的起始时间节点,还用于在时间脉冲窗口内,根据最小提前量,确定时间窗口的结束时间节点。
时间窗口配置模块13还用于根据时间窗口的起始时间节点、时间窗口的结束时间节点,构建时间窗口。
可以理解的是,将时间窗口的起始时间节点、时间窗口的结束时间节点之间设定为时间窗口。为了更好地描述接收地数据包量,本申请中采用环绕式计数器。所述环绕式计数器可以被1pps_1ms清零。换句话说,环绕式计数器以1秒为周期,记录一秒内收到的异常数据包。当系统运行到下一子帧时,所述环绕式计数器清零。另外的,所述环绕式计数器的计数范围为0-M循环计数。0为最小计数值;M为最大计数值。可以这样理解,当M+1时,所述环绕式计数器变为0。当系统时钟为156.25Mhz,最大计数值M为156249。当系统时钟为245.76Mhz,最大计数值那么M为245759。可以直观得出的是,从时间窗口之前获取的数据包表示为提前。从时间窗口之后获取的数据包表示为延后。从时间窗口内获取的数据包表示为命中。
在本申请的一个实施例中,可以选取子帧n来描述时间窗口的设计。子帧n-1、子帧n+1和子帧n以1pps_1ms边界。当前提前量可以理解为准时提前量。简言之,与目前系统的缓存设计相匹配。将前传缓存区的剩余容量不允许存储数据包时的数据包存储时间作为最大提前量。所述最大提前量即为时间窗口的起始时间节点。将系统能正常工作,前传缓存区至少存储数据包的时间作为最小提前量。所述最小提前量即为时间窗口的结束时间节点。根据时间窗口的起始时间节点、时间窗口的结束时间节点,构建时间窗口。
射频拉远单元RRU14,用于在时间脉冲内,以时间窗口接收前传缓存区中基带处理单元BBU发送的数据包。
可以理解的是,射频拉远单元RRU和基带处理单元BBU之间可以通过前传卡进行通信。因此,可以在前传接口上使用一个特定性能计数器,例如环绕式计数器,实现以按O-RU、按传输流、按eAxC粒度对获取数据包事件进行计数。通过设置时间窗口,可将获取数据包事件分为三类。为了方便标识,将从时间窗口之前获取的数据包定义为“RX_EARLY”,即表示提前。将从时间窗口之后获取的数据包定义为“RX_LATE”,即表示延后。将从时间窗口内获取的数据包定义为“RX_ON_TIME”,即表示命中。所述在时间脉冲内,射频拉远单元RRU以时间窗口,接收前传缓存区中基带处理单元BBU发送的数据包可以理解为射频拉远单元RRU以时间窗口,接收“RX_ON_TIME”命中的数据包。
检测模块15,用于检测在时间窗口内收到的数据包,确定数据包内容故障。
可以理解的是,在时间窗口内收到的数据包,可能会出现数据包内容故障。所述数据包内容故障可以包括序列标识符编号错误、包文协议错误。值得注意的是,如果数据包为分片包,需要将分片包重组后,再在时间窗口内收到。换句话说,本申请在接收数据包进行统计前,需要将分片包重组,以确保检测准确率。
进一步的,所述检测模块15,用于检测在时间窗口内收到的数据包,确定数据包内容故障,具体用于:
获取数据包中序列标识符编号;
当序列标识符编号未递增时,环绕式计数器以eAxc粒度对数据包进行计数;
当环绕式计数器计数的数据包数量不满足预设递增条件时,确定数据包内容故障为序列标识符编号错误。
可以理解的是,所述序列标识符编号eCPRISeqId可以提供数据包的标识和排序。所述环绕式计数器可以理解为基于移位寄存器的计数器。对于n个移位寄存器构成的计数器,可以有n个有效状态。设置一个初始状态,通过移位即可进行循环。至于环绕式计数器的计数范围可以根据系统时钟进行设置。当系统时钟为156.25Mhz,设置计数器范围为0-156249。当系统时钟为245.76Mhz,设置计数器范围为0-245759。环绕式计数器计数达最大值后加1,变为0后继续运行。
当序列标识符编号未递增时,环绕式计数器以eAxc粒度对数据包进行计数。当环绕式计数器计数的数据包数量不满足预设递增条件时,确定数据包内容故障为序列标识符编号错误。
在本申请的一个具体实施例中,接受的数据包均在“RX_ON_TIME”接收到。在“RX_ON_TIME”情况下,根据Sequence ID字段来判断该ID的连续性。可知,环绕式计数器0-255之间进行循环。环绕式计数器计数达最大值后加1,变为0后继续运行。如果当前数据包比历史数据包不是加1的关系,确定数据包内容故障为序列标识符编号错误。当数据包为分片包时,检测Sequence ID和Subsequence ID字段。当数据包为非分片包时,检测Sequence ID字段。值得注意的是,当数据包在接收之前被丢弃,或数据包被网络重新排序后超过数据包接收端的接收能力时,环绕式计数器的计数也会增加。另外,当环绕式计数器以eAxc粒度对数据包进行计数,上行链路和下行链路需要使用不同的环绕式计数器。
进一步的,所述检测模块15,用于检测在时间窗口内收到的数据包,确定数据包内容故障,具体还用于:
当环绕式计数器计数的数据包数量满足预设递增条件时,获取数据包包文协议;
确定不满足包文协议的数据包;
环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果;
根据计数结果,确定数据包内容故障为包文协议错误。
可以理解的是,当环绕式计数器计数在时间窗口内接收的数据包数量满足预设递增条件时,可以确定eCPRISeqId正确。eCPRISeqId正确的数据包中还包含因为包文协议错误,而被丢弃的数据包。因此,需要先获取数据包包文协议。从数据包包文协议中,可以得到满足协议的条件。
可以理解的是,所述数据包包文协议可以包括六个条件。
第一个条件:所述数据包是否配置了Pcid或section Id。
所述Pcid可以理解为IQ数据传输消息系列标识符,例如例如物理信道标识符、用户标识符、层标识符、天线端口标识符等。可见,IQ数据传输消息系列标识符都是物理层PHY处理的共同属性。
在本申请的一个具体实施例中,所述IQ数据传输消息系列标识符Pcid用来对IQ数据进行标识。其中,对IQ数据进行标识包括DU_Port_ID,即DU的端口ID。再者,还包括BandSector_ID,即聚合小区标识,用于区分O-RU支持的波段和扇区;还包括CC_ID,即载波和天线ID;还包括RU_Port_ID,即RU端口ID。显而易见,当所述IQ数据传输消息系列标识符Pcid将IQ数据进行了标识后,可以获取IQ数据包的发送方DU_Port_ID、IQ数据包的接收方RU_Port_ID、以及传输的IQ数据包数量。
所述section Id可以理解为区域ID。在本申请的一个具体实施例中,所述区域ID可以用来标识控制面消息中描述的各个数据部分,目的是将用户面数据区段映射到与该数据关联的相应控制面数据区段。换句话说,所述区域ID用来将用户面的数据区段映射到与该数据关联的相应的控制面的数据区段,使得用户面和控制面的数据保持一致,而不会对应其他区段的数据导致混乱。
结合以上Pcid或section Id,当数据包未配置IQ数据传输消息系列标识符Pcid,换句话说,就是不能获取到数据包的发送方、接收方以及传输数量时,即判定为不满足包文协议。当数据包未配置section Id,换句话说,就是未将用户面的数据区段映射到与该数据关联的相应的控制面的数据区段时,即判定为不满足包文协议。环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果。所述计数结果可以理解确定不满足包文协议的数据包数量。得到不满足包文协议的数据包数量后,即可以确定数据包内容故障为包文协议错误。
第二个条件:所述数据包的C bit是否正常使用。
所述C bit可以理解为级联符号标志,可以用来判断数据包接收方收到的数据包是否和数据包发送方发送的数据包一致。在本申请的一个具体实施例中,当数据包的级联符号标志出现异常,即可以判断出数据包接收方收到的数据包是否和数据包发送方发送的数据包不一致,即判定为不满足包文协议。环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果。所述计数结果可以理解确定不满足包文协议的数据包数量。得到不满足包文协议的数据包数量后,即可以确定数据包内容故障为包文协议错误。
第三个条件:所述数据包是否配置了或支持udCompHdr设置。
所述udCompHdr(User data compression header,用户数据压缩头)可以理解为在用户面上用来说明下行方向的O-RU和上行方向的O-DU如何对接收到的用户面数据包进行解释和解压缩,即可以指示数据压缩的起始位置。参看本申请的一个具体实施例,在解压缩数据包过程中,不同的数据包被设置了不同的udCompHdr。换句话说,基站系统可以根据设置的udCompHdr,获得可以解压缩数据包的指示,并根据指示进行解压缩。当数据包的用户数据压缩头错误,即未能解压缩对应的正确数据包,导致混乱,即判定为不满足包文协议。环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果。所述计数结果可以理解确定不满足包文协议的数据包数量。得到不满足包文协议的数据包数量后,即可以确定数据包内容故障为包文协议错误。
第四个条件:所述数据包是否支持扩展部分。在本申请的一个具体实施例中,数据包不支持的扩展部分可以理解为,数据包发送方发送的数据不能被接收方完全应用。换句话说,发送方发送的数据部分可以被接收方接收处理,还有部分是未进行处理,即判定为不满足包文协议。环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果。所述计数结果可以理解确定不满足包文协议的数据包数量。得到不满足包文协议的数据包数量后,即可以确定数据包内容故障为包文协议错误。
第五个条件:所述数据包的eCPRIVersion或payloadVersion信息是否正确。
所述eCPRIVersion可以理解为eCPRI协议修订版本号,用于指示系统应用的eCPRI协议的版本号。可以理解的是,eCPRI协议可以有1.0、2.0、3.0版本。在具体实施例中,在基带处理单元BBU发送数据包至射频拉远单元RRU过程中,射频拉远单元RRU需获得数据包的eCPRI协议版本号,才能处理数据包。假设eCPRI协议的版本号为4.0,射频拉远单元RRU就无法与现有的1.0、2.0、3.0版本进行匹配接收数据包。换句话说,数据包的eCPRIVersion错误,即判定不满足包文协议。
所述payloadVersion可以理解为有效载荷版,用于指示现在载荷的版本。可以理解的是,包文协议规定了payloadVersion版本固定为1。在具体实施例中,假如获取的payloadVersion版本为非1以外的值,即判定为payloadVersion错误,即判定不满足包文协议。
结合以上数据包的eCPRIVersion错误、payloadVersion错误,环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果。所述计数结果可以理解确定不满足包文协议的数据包数量。得到不满足包文协议的数据包数量后,即可以确定数据包内容故障为包文协议错误。
第六个条件:所述数据包的eCPRIMessage字段是否包含0、2或5。
所述eCPRIMessage可以理解为eCPRI消息类型。值得注意的是,本申请中描述的数据包可以包含用户面数据包、控制面数据包、同步管理面数据包等。所述数据包的eCPRIMessage字段可以指示eCPRI消息类型传递的服务类型。另外的,所述数据包的eCPRIMessage字段是eCPRI common header的一部分。在本申请的协议版本中,可以支持“0000 0000b”,“0000 0010b”和“0000 0101b”。所述“0000 0000b”可以理解为数据包的eCPRIMessage字段为0。所述“0000 0010b”可以理解为数据包的eCPRIMessage字段为2。所述“0000 0101b”可以理解为数据包的eCPRIMessage字段为5。具体的,“0000 0000b”表示IQ数据消息,即用户面数据包。“0000 0010b”表示实时控制数据消息,即控制面数据包。“00000101b”表示传输网络延迟测量消息。
在本申请的一个实施例中,先获取数据包的eCPRIMessage字段包含哪些数据包种类。当eCPRIMessage字段为0,即指示传输的数据包为用户面数据包。当eCPRIMessage字段为2,即指示传输的数据包为控制面数据包。当eCPRIMessage字段为5,即指示传输的数据包为传输网络延迟测量消息的数据包。但是,当eCPRIMessage字段不包含0、2或5时,表示没有用户面数据包、控制面数据包、传输网络延迟测量消息的数据包。因此,所述确定传输的数据包种类不满足包文协议需要的数据包类型。环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果。所述计数结果可以理解确定不满足包文协议的数据包数量。得到不满足包文协议的数据包数量后,即可以确定数据包内容故障为包文协议错误。
总的来说,基于包文协议,判断数据包中不满足条件的数据包。环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果。根据计数结果,确定数据包内容故障为包文协议错误。值得说明的是,在本申请的具体实施例中,包文协议的条件可以根据系统实际要求进行选择。当选择两个条件时,只需要判断出两个条件未满足,即可判断数据包内容故障为包文协议错误。这样可以缩短故障排查时间,提高数据包处理的效率。
进一步的,所述装置100还包括:
计数模块,用于通过环绕式计数器,记录在时间窗口外收到的数据包数量。
所述检测模块,还用于根据在时间窗口外收到的数据包数量,确定数据包发送时间故障。
可以理解的是,时间窗口外包括了时间窗口之前和时间窗口之后。不管是时间窗口内,还是时间窗口外接收数据包,都需要将数据包可视化。本申请中,通过环绕式计数器记录“RX_EARLY”和“RX_LATE”收到的数据包数量。所述环绕式计数器可以理解为基于移位寄存器的计数器。对于n个移位寄存器构成的计数器,可以有n个有效状态。设置一个初始状态,通过移位即可进行循环。至于环绕式计数器的计数范围可以根据系统时钟进行设置。当系统时钟为156.25Mhz,设置计数器范围为0-156249。当系统时钟为245.76Mhz,设置计数器范围为0-245759。环绕式计数器计数达最大值后加1,变为0后继续运行。
在本申请的一个具体实施例中,在秒脉冲内,当在“RX_EARLY”和“RX_LATE”接收到数据时,环绕式计数器通过计数统计1秒内收到的数据包。如果计数值不为0,毫无疑问的可以表示数据包在时间上发送错误。换句话说,数据包发送端和数据包接收端未实现同步收发数据。数据包接收端收不到数据,即确定根据数据包发送时间故障。
通过配置时间窗口可以减少数据量,不用处理众多数据包。缩短时间,提高效率。
进一步的,所述射频拉远单元RRU14,用于在时间脉冲内,以时间窗口接收前传缓存区中基带处理单元BBU发送的数据包,具体用于:
接收前传缓存区中基带处理单元BBU发送的数据包;
在时间脉冲内,提取数据包中第一时隙内第一符号中数据;
当数据在时间窗口内到达时,射频拉远单元RRU接收数据包。
可以理解的是,在移动通信中,数据包在无线网络上是以无线帧为单位进行传输。换句话说,无线帧就是数据包传输的时间单位。所述无线帧发送的周期一般为10ms。一个无线帧中包含10个子帧,即一个子帧为1秒。在5G系统中,根据子载波大小,子帧的上下行分配单位时隙也不同。所述时隙是数据包调度和同步的最小单位,一般包含14个symbol。
在本申请的一个具体实施例中,配置好时间窗口后,便可以将基带处理单元BBU发送的数据包进行分类,包括“RX_ON_TIME”、“RX_LATE”、“RX_EARLY”。为了更加缩短处理时间,可以在时间脉冲内,提取数据包中第一时隙内第一符号中数据。由于基带处理单元BBU都是按symbol0-symbol13发送数据包,所以可以根据数据包中第一时隙内第一符号中数据来判断其余symbol1-symbol13的数据。当symbol=0,slot=0的第一个数据包是“RX_ON_TIME”时,其余symbol1-symbol13的数据包可以认为是“RX_ON_TIME”。如果symbol=0,slot=0的第一个数据包是“RX_LATE”时,其余symbol1-symbol13的数据包可以认为是“RX_LATE”。总的来说,在判断frameid/subframeid/slotid/symbolid时,只需要判断1ms内,每个天线的第一数据包,就可以判断出整个子帧的数据包到达情况。值得注意的,不包括“RX_EARLY”的数据包,需要另外判断。
进一步的,所述对前传网络进行故障排查的方法,还包括:
采用环绕式计数器对接收的数据包进行计数,生成计数结果;
设定统计时间;
在统计时间内,设计计数结果呈现图。
可以理解的是,本申请中的环绕式计数器可以包括:RX_TOTAL、RX_ON_TIME、RX_EARLY、RX_LATE、RX_SEQID_ERR、RX_ON_TIME_C、RX_EARLY_C、RX_LATE_C、RX_SEQID_ERR_C、RX_CORRUPT、TX_TOTAL。可以理解的是,上述的环绕式计数器的大小可以为64bits。所述RX_SEQID_ERR、RX_SEQID_ERR_C、RX_CORRUPT计数器可选,而非必选。
其中,RX_TOTAL用来计数接收端接收到的控制面、用户面数据包,包括所有正常和异常的数据包。
RX_ON_TIME用来计数“RX_ON_TIME”收到的用户面数据包。RX_EARLY用来计数“RX_EARLY”收到的用户面数据包。所述数据包后续是否被处理或删除,该RX_EARLY计数器都将递增。RX_LATE用来计数“RX_LATE”收到的用户面数据包。所述数据包后续是否被处理或删除,该RX_LATE计数器都将递增。RX_SEQID_ERR用来计数“RX_ON_TIME”中,由于序列标识符编号错误收到的用户面数据包。当RX_SEQID_ERR计数器以eAxc粒度实现时,上行和下行链路必须实现单独的计数器。
RX_ON_TIME_C用来计数“RX_ON_TIME”收到的控制面数据包。RX_EARLY_C用来计数“RX_EARLY”收到的控制面数据包。RX_LATE_C用来计数“RX_LATE”收到的控制面数据包。RX_SEQID_ERR_C用来计数由于序列标识符编号错误收到的控制面数据包。
RX_CORRUPT用来计数由于包文协议错误收到的数据包。
TX_TOTAL用来计数输出的控制或用户面数据包的数量。
在本申请的一个具体实施例中,所述清零周期,即两次清零之间的时间,可以设置为12h、24h。在清零周期刻度里,可以分为n份统计周期。n越大,即图中点数越多,画图的精度越高。但是CPU负荷也越大。相反的,n越小,即图中点数越少,画图的精度越低。但是CPU负荷也减小。需要说明的是,所述n可以依据实际情况选取合适的大小。在n个统计周期里,可以设置每一份的统计时间。所述统计时间可以为1分钟,2分钟,5分钟等。当统计时间为5分钟时,可以理解为5分钟统计一次数据包数量,然后将第0份统计周期、第x份统计周期、第n份统计周期计数值上报。再通过CPU查询到与环绕式计数器相关的寄存器参数后,分别呈现出相关图像,可以更直观,便捷地得出异常数据包量,进行下一步地故障排查,提高效率。
综上所述,本申请提出的一种对前传网络进行故障排查的装置,通过前传缓存区存储基带处理单元BBU发送的数据包,避免数据包拥塞,导致基站系统瘫痪。通过时间窗口配置模块配置时间窗口,将将数据包存储时间作为最大提前量,保证了数据包不会溢出,保证了传输内容的准确性。通过将前传缓存区至少存储数据包的时间作为最小提前量,使得基站系统正常运行,不会断流导致信号差。通过检测模块检测在时间窗口内收到的数据包,减少处理的数据量,缩短故障排查时间,提高数据包处理的效率。通过计数器呈现图可以更直观,便捷地得出异常数据包量,进行下一步地故障排查,提高效率。
需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,有语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (10)

1.一种对前传网络进行故障排查的方法,其特征在于,应用于基带处理单元BBU在时间脉冲内发送数据包至射频拉远单元RRU的过程,具体包括:
存储基带处理单元BBU发送的数据包至前传缓存区;
根据时间脉冲,确定时间脉冲的起始时间节点、结束时间节点、由起始时间节点和结束
时间节点构建的时间脉冲窗口;
当前传缓存区的剩余容量不允许存储数据包时,将数据包存储时间作为最大提前量;
根据预设的数据流参数,确定前传缓存区至少存储数据包的时间;
将前传缓存区至少存储数据包的时间作为最小提前量;
在时间脉冲窗口内,根据最大提前量,确定时间窗口的起始时间节点;
在时间脉冲窗口内,根据最小提前量,确定时间窗口的结束时间节点;
根据时间窗口的起始时间节点、时间窗口的结束时间节点,构建时间窗口;
在时间脉冲内,射频拉远单元RRU以时间窗口,接收前传缓存区中基带处理单元BBU发送的数据包;
检测在时间窗口内收到的数据包,确定数据包内容故障的类型。
2.如权利要求1所述方法,其特征在于,所述检测在时间窗口内收到的数据包,确定数据包内容故障的类型,具体包括:
获取数据包中序列标识符编号;
当序列标识符编号未递增时,环绕式计数器以eAxc粒度对数据包进行计数;
当环绕式计数器计数的数据包数量不满足预设递增条件时,确定数据包内容故障的类型为序列标识符编号错误。
3.如权利要求2所述方法,其特征在于,所述检测在时间窗口内收到的数据包,确定数据包内容故障的类型,具体还包括:
当环绕式计数器计数的数据包数量满足预设递增条件时,获取数据包包文协议;
确定不满足包文协议的数据包;
环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果;
根据计数结果,确定数据包内容故障的类型为包文协议错误。
4.如权利要求1所述方法,其特征在于,所述方法具体还包括:
通过环绕式计数器,记录在时间窗口外收到的数据包数量;
根据在时间窗口外收到的数据包数量,确定数据包发送时间故障。
5.如权利要求4所述方法,其特征在于,所述在时间脉冲内,射频拉远单元RRU以时间窗口,接收前传缓存区中基带处理单元BBU发送的数据包,具体包括:
接收前传缓存区中基带处理单元BBU发送的数据包;
在时间脉冲内,提取数据包中第一时隙内第一符号中数据;
当数据在时间窗口内到达时,射频拉远单元RRU接收数据包。
6.一种对前传网络进行故障排查的装置,其特征在于,用于实现基带处理单元BBU在时间脉冲内发送数据包至射频拉远单元RRU的过程,具体包括:
基带处理单元BBU,用于发送数据包;
前传缓存区,用于存储基带处理单元BBU发送的数据包;
时间窗口配置模块,用于根据时间脉冲,确定时间脉冲的起始时间节点、结束时间节点、由起始时间节点和结束时间节点构建的时间脉冲窗口;
还用于当前传缓存区的剩余容量不允许存储数据包时,将数据包存储时间作为最大提前量;还用于获取预设的数据流参数,确定前传缓存区至少存储数据包的时间;还用于将前传缓存区至少存储数据包的时间作为最小提前量;
还用于在时间脉冲窗口内,根据最大提前量,确定时间窗口的起始时间节点;还用于在时间脉冲窗口内,根据最小提前量,确定时间窗口的结束时间节点;
还用于根据时间窗口的起始时间节点、时间窗口的结束时间节点,构建时间窗口;
射频拉远单元RRU,用于在时间脉冲内,以时间窗口接收前传缓存区中基带处理单元BBU发送的数据包;
检测模块,用于检测在时间窗口内收到的数据包,确定数据包内容故障的类型。
7.如权利要求6所述装置,其特征在于,所述检测模块,用于检测在时间窗口内收到的数据包,确定数据包内容故障的类型,具体用于:
获取数据包中序列标识符编号;
当序列标识符编号未递增时,环绕式计数器以eAxc粒度对数据包进行计数;
当环绕式计数器计数的数据包数量不满足预设递增条件时,确定数据包内容故障的类型为序列标识符编号错误。
8.如权利要求7所述装置,其特征在于,所述检测模块,用于检测在时间窗口内收到的数据包,确定数据包内容故障的类型,具体还用于:
当环绕式计数器计数的数据包数量满足预设递增条件时,获取数据包包文协议;
确定不满足包文协议的数据包;
环绕式计数器以O-RU粒度对不满足包文协议的数据包进行计数,生成计数结果;
根据计数结果,确定数据包内容故障的类型为包文协议错误。
9.如权利要求6所述装置,其特征在于,所述装置还包括:
计数模块,用于通过环绕式计数器,记录在时间窗口外收到的数据包数量;
所述检测模块,还用于根据在时间窗口外收到的数据包数量,确定数据包发送时间故障。
10.如权利要求6所述装置,其特征在于,所述射频拉远单元RRU,用于在时间脉冲内,以时间窗口接收前传缓存区中基带处理单元BBU发送的数据包,具体用于:
接收前传缓存区中基带处理单元BBU发送的数据包;
在时间脉冲内,提取数据包中第一时隙内第一符号中数据;
当数据在时间窗口内到达时,射频拉远单元RRU接收数据包。
CN202310881413.4A 2023-07-18 2023-07-18 对前传网络进行故障排查的方法及装置 Active CN116599833B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310881413.4A CN116599833B (zh) 2023-07-18 2023-07-18 对前传网络进行故障排查的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310881413.4A CN116599833B (zh) 2023-07-18 2023-07-18 对前传网络进行故障排查的方法及装置

Publications (2)

Publication Number Publication Date
CN116599833A CN116599833A (zh) 2023-08-15
CN116599833B true CN116599833B (zh) 2023-10-03

Family

ID=87608565

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310881413.4A Active CN116599833B (zh) 2023-07-18 2023-07-18 对前传网络进行故障排查的方法及装置

Country Status (1)

Country Link
CN (1) CN116599833B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101471724A (zh) * 2007-12-28 2009-07-01 鼎桥通信技术有限公司 一种时分双工系统中的上行数据同步方法
DE102013114512A1 (de) * 2012-12-28 2014-07-03 Nvidia Corporation Globales Einfangschema mit niedriger Leistung für Kerne
CN104185193A (zh) * 2014-08-18 2014-12-03 京信通信系统(中国)有限公司 多通道rru时延控制方法及其装置
JP2018133694A (ja) * 2017-02-15 2018-08-23 日本電信電話株式会社 パス選択装置及びパス選択方法
CN110287010A (zh) * 2019-06-12 2019-09-27 北京工业大学 一种面向Spark时间窗口数据分析的缓存数据预取方法
WO2022263499A1 (en) * 2021-06-16 2022-12-22 Nokia Solutions And Networks Oy Transmitting data via a fronthaul interface with adjustable timing

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6697013B2 (en) * 2001-12-06 2004-02-24 Atheros Communications, Inc. Radar detection and dynamic frequency selection for wireless local area networks
US10608734B2 (en) * 2015-10-22 2020-03-31 Phluido, Inc. Virtualization and orchestration of a radio access network
EP3554181B1 (en) * 2016-12-23 2020-09-09 China Mobile Communication Co., Ltd Research Institute Front-haul transport network, data transmission method, apparatus and computer storage medium
US11301316B2 (en) * 2019-07-12 2022-04-12 Ebay Inc. Corrective database connection management

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101471724A (zh) * 2007-12-28 2009-07-01 鼎桥通信技术有限公司 一种时分双工系统中的上行数据同步方法
DE102013114512A1 (de) * 2012-12-28 2014-07-03 Nvidia Corporation Globales Einfangschema mit niedriger Leistung für Kerne
CN104185193A (zh) * 2014-08-18 2014-12-03 京信通信系统(中国)有限公司 多通道rru时延控制方法及其装置
JP2018133694A (ja) * 2017-02-15 2018-08-23 日本電信電話株式会社 パス選択装置及びパス選択方法
CN110287010A (zh) * 2019-06-12 2019-09-27 北京工业大学 一种面向Spark时间窗口数据分析的缓存数据预取方法
WO2022263499A1 (en) * 2021-06-16 2022-12-22 Nokia Solutions And Networks Oy Transmitting data via a fronthaul interface with adjustable timing

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
无源光网络承载5G前传信号可行性的研究概述;贾武;孙越;程海瑞;;移动通信(01);全文 *

Also Published As

Publication number Publication date
CN116599833A (zh) 2023-08-15

Similar Documents

Publication Publication Date Title
CN102210118B (zh) 用于多播通信的数据速率自适应的方法
US11612016B2 (en) Fronthaul interface for advanced split-radio access network (RAN) systems
CN101268673B (zh) 用于通信系统中的分组分割和级联信号传输的方法和装置
CN1774898B (zh) 无线分组通信方法以及无线分组通信装置
CN107734520A (zh) 一种资源配置方法及装置
CN103369593B (zh) 一种压缩和解压缩以太网报文的方法及网元设备
CN109257143B (zh) 用于有长度限制的网络传输协议中分片传输数据包的方法
CN110831061B (zh) 调度吞吐量的获取方法及装置、基站、存储介质
CN101640846A (zh) 用于无线通讯网络中的内容同步的方法与系统
CN103609055B (zh) 用于确认来自多个设备的通信的系统和方法
CN108886713B (zh) 一种数据传输方法、数据接收设备及数据发送设备
CN105101278A (zh) 用于fdd-lte基站的一致性测试方法及系统
US10805047B2 (en) System, method and apparatus for QoS support and retransmission
AU2018286249B2 (en) Communication method, apparatus, and computer-readable storage medium
CN101977358A (zh) 一种数据短信的传输方法、装置及设备
CN116599833B (zh) 对前传网络进行故障排查的方法及装置
WO2013163962A1 (en) System and method for radio frequency repeating
GB2266641A (en) Digital mobile telephone control system
CN109981227A (zh) 物联网场景中基于组通信的harq传输方法及控制系统
CN106792907B (zh) 一种基于天线接口的lte基带处理单元实时调度方法
WO2017193908A1 (zh) 信息的收发方法、装置及系统
CN101365188A (zh) 基带数字处理单元和射频单元之间信息传递的方法
CN116074191A (zh) 一种ioam处理方法、装置、电子设备和计算机可读存储介质
CN100558113C (zh) 确定基带处理单元-射频处理单元接口传输模式的方法
CN102067471B (zh) 在无线通信网络中的资源管理

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant