CN109586780A - 卫星网络中防止报文阻塞的方法 - Google Patents
卫星网络中防止报文阻塞的方法 Download PDFInfo
- Publication number
- CN109586780A CN109586780A CN201811458654.3A CN201811458654A CN109586780A CN 109586780 A CN109586780 A CN 109586780A CN 201811458654 A CN201811458654 A CN 201811458654A CN 109586780 A CN109586780 A CN 109586780A
- Authority
- CN
- China
- Prior art keywords
- message
- data queue
- priority
- level code
- precedence level
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/14—Relay systems
- H04B7/15—Active relay systems
- H04B7/185—Space-based or airborne stations; Stations for satellite systems
- H04B7/1851—Systems using a satellite or space-based relay
- H04B7/18519—Operations control, administration or maintenance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/625—Queue scheduling characterised by scheduling criteria for service slots or service orders
- H04L47/6275—Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Astronomy & Astrophysics (AREA)
- Aviation & Aerospace Engineering (AREA)
- General Physics & Mathematics (AREA)
- Radio Relay Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及卫星通信技术领域,解决了现有卫星网络中防止报文阻塞的方法容易导致重要数据丢失,进而使得系统容易出现异常的问题。技术方案概括为:卫星网络中防止报文阻塞的方法,使用不同的数据队列存储不同优先级的报文,同一优先级的报文存储在同一个数据队列中,当所有数据队列中当前存储报文总数达到报文最大存储值时,通过比较当前报文和优先级最小的数据队列的优先级,决定是丢弃当前报文,还是丢弃数据队列中的报文,并且当数据队列中的报文被清空时,删除被清空的数据队列。有益效果是:本发明在防止报文阻塞的同时,能够减少重要报文的丢失,使系统出现异常的几率减小,并且更节约处理时间。本发明特别适用于卫星通信网络。
Description
技术领域
本发明涉及卫星通信技术领域,特别涉及卫星网络中报文传输技术。
背景技术
卫星网络中各设备与管理系统之间都是通过各种报文交互进行信令控制及业务传输,随着接入设备的增多,系统网络间的报文成倍数增加,受限于网络资源及软件处理能力,设备网口上可能堆积大量报文,导致报文阻塞,以至于后续业务处理延时,甚至系统异常。现有技术处理上述问题时,采用的方法是当数据队列中缓存的报文数量达到报文最大存储值时,将堆积的报文直接丢弃,这种直接丢弃报文的方式容易导致重要数据丢失,而数据队列中一些不重要的数据却保留下来,因此现有防止报文阻塞的方法容易导致重要数据丢失,进而使得系统容易出现异常。
发明内容
本发明为解决现有卫星网络中防止报文阻塞的方法容易导致重要数据丢失,进而使得系统容易出现异常的问题,提供一种卫星网络中防止报文阻塞的方法。
为解决上述问题,本发明采用的技术方案是:卫星网络中防止报文阻塞的方法,包括:
预先约定报文的优先级规则并在各报文的信息中加入相应的优先级编码,预设报文最大存储值,创建报文读取线程;
报文读取线程读取网口上的报文,若未读取到报文则不进行处理,每读取到一个报文,则获取当前报文的优先级编码,并判断所有数据队列中当前存储报文总数是否达到报文最大存储值:
若未达到报文最大存储值,则查询是否存在与当前报文的优先级编码对应的数据队列,当不存在时,创建与当前报文的优先级编码对应的数据队列,并将当前报文存入与当前报文的优先级编码对应的数据队列,该数据队列的优先级就是与该数据队列对应的优先级编码的优先级,当存在时,将当前报文存入与当前报文的优先级编码对应的数据队列;
若达到报文最大存储值,则将所有数据队列中优先级最低的数据队列对应的优先级编码与当前报文的优先级编码进行比较,若当前报文的优先级高于该优先级最低的数据队列的优先级,则将该优先级最低的数据队列中最后一个报文丢弃,然后判断该优先级最低的数据队列中的报文是否被清空,若被清空则删除该优先级最低的数据队列和该优先级最低的数据队列对应的优先级编码,否则不进行处理,查询是否存在与当前报文的优先级编码对应的数据队列,当不存在时,创建与当前报文的优先级编码对应的数据队列,并将当前报文存入与当前报文的优先级编码对应的数据队列,该数据队列的优先级就是与该数据队列对应的优先级编码的优先级,当存在时,将当前报文存入与当前报文的优先级编码对应的数据队列,若当前报文的优先级低于或等于该优先级最低的数据队列的优先级,则将当前报文丢弃。
作为进一步优化,通过创建键值对存储数据队列和数据队列对应的优先级编码,一个键值对中,键用于存储一个优先级编码,值用于存储与键中的优先级编码对应的数据队列。使用键值对将优先级编码与数据队列一一对应存储,方便查询数据队列。
作为进一步优化,当查询到存在与当前报文的优先级编码对应的数据队列时,轮询该数据队列中的报文,若该数据队列中已存在和当前报文来自相同终端设备的报文,则将该已存在的和当前报文来自相同终端设备的报文替换为当前报文。当前报文作为包含某一终端设备最新数据的新报文,如果相应数据队列中有同一终端设备的旧报文,则将该设备的旧报文替换为该设备的新报文,能够使该设备的最新数据得到及时处理,并且避免了重复处理。
作为进一步优化,所述报文的格式采用TLV(Tag-Length-Vlaue)格式,其中T用于存储报文的优先级编码。通过Tag标识报文的优先级编码,便于获取报文的优先级。
有益效果是:本发明使用不同的数据队列存储不同优先级的报文,同一优先级的报文存储在同一个数据队列中,通过判断优先级来决定所要丢弃的报文,在防止报文阻塞的同时,能够减少重要报文的丢失,使系统出现异常的几率减小,同时,本发明判断优先级时,将读取到的报文的优先级与数据队列的优先级进行比较,不需要将读取到的报文的优先级与数据队列中每个报文的优先级进行比较,节约了判断时间,提高了系统处理效率。本发明特别适用于卫星通信网络。
附图说明
图1是本发明实施例的程序流程图。
具体实施方式
下面结合附图和实施例,进一步说明本发明的技术方案。
本发明的技术方案是:卫星网络中防止报文阻塞的方法,包括:
预先约定报文的优先级规则并在各报文的信息中加入相应的优先级编码,预设报文最大存储值,创建报文读取线程;
报文读取线程读取网口上的报文,若未读取到报文则不进行处理,每读取到一个报文,则获取当前报文的优先级编码,并判断所有数据队列中当前存储报文总数是否达到报文最大存储值:
若未达到报文最大存储值,则查询是否存在与当前报文的优先级编码对应的数据队列,当不存在时,创建与当前报文的优先级编码对应的数据队列,并将当前报文存入与当前报文的优先级编码对应的数据队列,该数据队列的优先级就是与该数据队列对应的优先级编码的优先级,当存在时,将当前报文存入与当前报文的优先级编码对应的数据队列;
若达到报文最大存储值,则将所有数据队列中优先级最低的数据队列对应的优先级编码与当前报文的优先级编码进行比较,若当前报文的优先级高于该优先级最低的数据队列的优先级,则将该优先级最低的数据队列中最后一个报文丢弃,然后判断该优先级最低的数据队列中的报文是否被清空,若被清空则删除该优先级最低的数据队列和该优先级最低的数据队列对应的优先级编码,否则不进行处理,查询是否存在与当前报文的优先级编码对应的数据队列,当不存在时,创建与当前报文的优先级编码对应的数据队列,并将当前报文存入与当前报文的优先级编码对应的数据队列,该数据队列的优先级就是与该数据队列对应的优先级编码的优先级,当存在时,将当前报文存入与当前报文的优先级编码对应的数据队列,若当前报文的优先级低于或等于该优先级最低的数据队列的优先级,则将当前报文丢弃。
上述方法使用不同的数据队列存储不同优先级的报文,同一优先级的报文存储在同一个数据队列中,通过比较当前报文和优先级最小的数据队列的优先级,决定是丢弃当前报文,还是丢弃数据队列中的报文,以保留优先级高的报文,达到减少重要报文丢失的目的,减小系统出现异常的几率;优先级比较时,将当前报文与数据队列进行优先级比较,不用将当前报文的优先级与数据队列中每个报文的优先级进行比较,节约了判断时间。
对上述方法进行优化,具体可以是:通过创建键值对存储数据队列和数据队列对应的优先级编码,一个键值对中,键用于存储一个优先级编码,值用于存储与键中的优先级编码对应的数据队列;使用键值对将优先级编码与数据队列一一对应存储,方便查询数据队列。当查询到存在与当前报文的优先级编码对应的数据队列时,轮询该数据队列中的报文,若该数据队列中已存在和当前报文来自相同终端设备的报文,则将该已存在的和当前报文来自相同终端设备的报文替换为当前报文;当前报文作为包含某一终端设备最新数据的新报文,如果相应数据队列中有同一终端设备的旧报文,则将该设备的旧报文替换为该设备的新报文,能够使该设备的最新数据得到及时处理,并且避免了重复处理。报文的格式可以采用TLV(Tag-Length-Vlaue)格式,其中T用于存储报文的优先级编码;通过Tag标识报文的优先级编码,便于获取报文的优先级。
实施例
下面结合附图,进一步说明本发明的技术方案。
本例中预先约定报文的优先级规则并在各报文的信息中加入相应的优先级编码,报文的格式采用TLV格式,其中T用于存储报文的优先级编码,并预设报文最大存储值,创建报文读取线程。
报文读取线程读取网口上的报文,若未读取到报文则不进行处理,本例中以读取到报文一为例,具体说明对读取到的报文如何进行处理,程序流程图参见图1。
步骤S1、读取到报文一。
步骤S2、获取报文一的优先级编码。
步骤S3、判断所有数据队列中当前存储报文总数是否达到报文最大存储值,若未达到则执行步骤S4,若达到则执行步骤S5。
步骤S4、查询是否存在与报文一的优先级编码对应的数据队列,当不存在时,创建一个键值对,创建与报文一的优先级编码对应的数据队列,该键值对的键存储报文一对应的优先级编码,值存储报文一的优先级编码对应的数据队列,该数据队列的优先级就是与该数据队列对应的优先级编码的优先级,然后将报文一存入与报文一的优先级编码对应的数据队列;当存在时,轮询查询到的数据队列中的报文,若该数据队列中已存在和报文一来自相同终端设备的报文,则将该已存在的和报文一来自相同终端设备的报文替换为报文一,若该数据队列中不存在和报文一来自相同终端设备的报文,则将报文一存入与报文一的优先级编码对应的数据队列。
步骤S5、将所有数据队列中优先级最低的数据队列对应的优先级编码与报文一的优先级编码进行比较,若报文一的优先级高于该优先级最低的数据队列的优先级,则将该优先级最低的数据队列中最后一个报文丢弃,然后执行步骤S4,同时判断该优先级最低的数据队列中的报文是否被清空,若被清空则删除该优先级最低的数据队列对应的键值对,否则不进行处理;若报文一的优先级低于或等于该优先级最低的数据队列的优先级,则将报文一丢弃。
每读取到一个报文后,都按照上述步骤对读取到的报文进行处理,即可实现在防止报文阻塞的同时,减少重要报文的丢失,使系统出现异常的几率减小。
Claims (4)
1.卫星网络中防止报文阻塞的方法,其特征在于,包括:
预先约定报文的优先级规则并在各报文的信息中加入相应的优先级编码,预设报文最大存储值,创建报文读取线程;
报文读取线程读取网口上的报文,若未读取到报文则不进行处理,每读取到一个报文,则获取当前报文的优先级编码,并判断所有数据队列中当前存储报文总数是否达到报文最大存储值:
若未达到报文最大存储值,则查询是否存在与当前报文的优先级编码对应的数据队列,当不存在时,创建与当前报文的优先级编码对应的数据队列,并将当前报文存入与当前报文的优先级编码对应的数据队列,该数据队列的优先级就是与该数据队列对应的优先级编码的优先级,当存在时,将当前报文存入与当前报文的优先级编码对应的数据队列;
若达到报文最大存储值,则将所有数据队列中优先级最低的数据队列对应的优先级编码与当前报文的优先级编码进行比较,若当前报文的优先级高于该优先级最低的数据队列的优先级,则将该优先级最低的数据队列中最后一个报文丢弃,然后判断该优先级最低的数据队列中的报文是否被清空,若被清空则删除该优先级最低的数据队列和该优先级最低的数据队列对应的优先级编码,否则不进行处理,查询是否存在与当前报文的优先级编码对应的数据队列,当不存在时,创建与当前报文的优先级编码对应的数据队列,并将当前报文存入与当前报文的优先级编码对应的数据队列,该数据队列的优先级就是与该数据队列对应的优先级编码的优先级,当存在时,将当前报文存入与当前报文的优先级编码对应的数据队列,若当前报文的优先级低于或等于该优先级最低的数据队列的优先级,则将当前报文丢弃。
2.如权利要求1所述的卫星网络中防止报文阻塞的方法,其特征在于,通过创建键值对存储数据队列和数据队列对应的优先级编码,一个键值对中,键用于存储一个优先级编码,值用于存储与键中的优先级编码对应的数据队列。
3.如权利要求1所述的卫星网络中防止报文阻塞的方法,其特征在于,当查询到存在与当前报文的优先级编码对应的数据队列时,轮询该数据队列中的报文,若该数据队列中已存在和当前报文来自相同终端设备的报文,则将该已存在的和当前报文来自相同终端设备的报文替换为当前报文。
4.如权利要求1所述的卫星网络中防止报文阻塞的方法,其特征在于,所述报文的格式采用TLV格式,其中T用于存储报文的优先级编码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811458654.3A CN109586780A (zh) | 2018-11-30 | 2018-11-30 | 卫星网络中防止报文阻塞的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811458654.3A CN109586780A (zh) | 2018-11-30 | 2018-11-30 | 卫星网络中防止报文阻塞的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109586780A true CN109586780A (zh) | 2019-04-05 |
Family
ID=65926636
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811458654.3A Pending CN109586780A (zh) | 2018-11-30 | 2018-11-30 | 卫星网络中防止报文阻塞的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109586780A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111131089A (zh) * | 2019-12-24 | 2020-05-08 | 西安电子科技大学 | 改善多播业务hol阻塞的队列管理方法 |
CN114900805A (zh) * | 2022-05-07 | 2022-08-12 | 武汉星辰北斗科技有限公司 | 一种高并发北斗三号短报文收发方法、系统和装置 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1536820A (zh) * | 2003-04-09 | 2004-10-13 | 华为技术有限公司 | 提高网络拥塞时数据传输性能的方法 |
US6961539B2 (en) * | 2001-08-09 | 2005-11-01 | Hughes Electronics Corporation | Low latency handling of transmission control protocol messages in a broadband satellite communications system |
CN1729655A (zh) * | 2003-01-17 | 2006-02-01 | 富士通株式会社 | 网络交换装置和网络交换方法 |
CN1913486A (zh) * | 2005-08-10 | 2007-02-14 | 中兴通讯股份有限公司 | 一种增强协议报文安全的方法和装置 |
CN101610213A (zh) * | 2009-07-14 | 2009-12-23 | 哈尔滨工业大学 | 宽带多媒体卫星系统中基于跨层缓存储器管理的闭环拥塞控制方法 |
CN101616097A (zh) * | 2009-07-31 | 2009-12-30 | 中兴通讯股份有限公司 | 一种网络处理器输出端口队列的管理方法及系统 |
CN102111383A (zh) * | 2009-12-28 | 2011-06-29 | 北京安码科技有限公司 | 一种利用优先级队列防止dos攻击的方法 |
CN102195885A (zh) * | 2011-05-27 | 2011-09-21 | 成都市华为赛门铁克科技有限公司 | 报文处理方法及装置 |
CN103200125A (zh) * | 2013-03-28 | 2013-07-10 | 广东电网公司电力调度控制中心 | 电力数据网节点拥塞规避方法和系统 |
WO2014067409A1 (zh) * | 2012-10-30 | 2014-05-08 | 中兴通讯股份有限公司 | 一种队列调度方法、装置及系统 |
CN104038440A (zh) * | 2014-06-23 | 2014-09-10 | 福建星网锐捷网络有限公司 | 一种报文转发的方法和设备 |
CN105812285A (zh) * | 2016-04-29 | 2016-07-27 | 华为技术有限公司 | 一种端口拥塞管理方法及装置 |
CN106027416A (zh) * | 2016-05-23 | 2016-10-12 | 北京邮电大学 | 一种基于时空结合的数据中心网络流量调度方法及系统 |
CN106453128A (zh) * | 2016-10-19 | 2017-02-22 | 中国工商银行股份有限公司 | 一种数据报文缓冲通讯方法及装置 |
CN106559354A (zh) * | 2015-09-28 | 2017-04-05 | 中兴通讯股份有限公司 | 一种防止cpu报文拥塞的方法及装置 |
-
2018
- 2018-11-30 CN CN201811458654.3A patent/CN109586780A/zh active Pending
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6961539B2 (en) * | 2001-08-09 | 2005-11-01 | Hughes Electronics Corporation | Low latency handling of transmission control protocol messages in a broadband satellite communications system |
CN1729655A (zh) * | 2003-01-17 | 2006-02-01 | 富士通株式会社 | 网络交换装置和网络交换方法 |
CN1536820A (zh) * | 2003-04-09 | 2004-10-13 | 华为技术有限公司 | 提高网络拥塞时数据传输性能的方法 |
CN1913486A (zh) * | 2005-08-10 | 2007-02-14 | 中兴通讯股份有限公司 | 一种增强协议报文安全的方法和装置 |
CN101610213A (zh) * | 2009-07-14 | 2009-12-23 | 哈尔滨工业大学 | 宽带多媒体卫星系统中基于跨层缓存储器管理的闭环拥塞控制方法 |
CN101616097A (zh) * | 2009-07-31 | 2009-12-30 | 中兴通讯股份有限公司 | 一种网络处理器输出端口队列的管理方法及系统 |
CN102111383A (zh) * | 2009-12-28 | 2011-06-29 | 北京安码科技有限公司 | 一种利用优先级队列防止dos攻击的方法 |
CN102195885A (zh) * | 2011-05-27 | 2011-09-21 | 成都市华为赛门铁克科技有限公司 | 报文处理方法及装置 |
WO2014067409A1 (zh) * | 2012-10-30 | 2014-05-08 | 中兴通讯股份有限公司 | 一种队列调度方法、装置及系统 |
CN103200125A (zh) * | 2013-03-28 | 2013-07-10 | 广东电网公司电力调度控制中心 | 电力数据网节点拥塞规避方法和系统 |
CN104038440A (zh) * | 2014-06-23 | 2014-09-10 | 福建星网锐捷网络有限公司 | 一种报文转发的方法和设备 |
CN106559354A (zh) * | 2015-09-28 | 2017-04-05 | 中兴通讯股份有限公司 | 一种防止cpu报文拥塞的方法及装置 |
CN105812285A (zh) * | 2016-04-29 | 2016-07-27 | 华为技术有限公司 | 一种端口拥塞管理方法及装置 |
CN106027416A (zh) * | 2016-05-23 | 2016-10-12 | 北京邮电大学 | 一种基于时空结合的数据中心网络流量调度方法及系统 |
CN106453128A (zh) * | 2016-10-19 | 2017-02-22 | 中国工商银行股份有限公司 | 一种数据报文缓冲通讯方法及装置 |
Non-Patent Citations (4)
Title |
---|
孟祥瑞 等: "《数据结构 C语言版》", 31 July 2004, 华东理工大学出版 * |
宋绍云 等: "基于队列的网络拥塞管理研究", 《玉溪师范学院学报》 * |
胡云: "对网络流量管理与拥塞管理的研究", 《电脑开发与应用》 * |
赵珍: "视频会议中缓冲队列的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111131089A (zh) * | 2019-12-24 | 2020-05-08 | 西安电子科技大学 | 改善多播业务hol阻塞的队列管理方法 |
CN111131089B (zh) * | 2019-12-24 | 2021-07-27 | 西安电子科技大学 | 改善多播业务hol阻塞的队列管理方法 |
CN114900805A (zh) * | 2022-05-07 | 2022-08-12 | 武汉星辰北斗科技有限公司 | 一种高并发北斗三号短报文收发方法、系统和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101459627B (zh) | 消息管理方法 | |
CN104092717B (zh) | 消息处理方法及系统、消息目的端设备 | |
CN105376589A (zh) | 基于mqtt的智能电视消息的推送装置及方法 | |
CN104604189A (zh) | 大型企业的高效状态发布机制 | |
CN102394925B (zh) | 远程监测诊断中心与地区调度中心的通讯方法及装置 | |
CN109525376B (zh) | 快速重传方法、装置及终端设备 | |
CN101599987A (zh) | 消息队列管理方法和装置 | |
CN109586780A (zh) | 卫星网络中防止报文阻塞的方法 | |
CN103516580A (zh) | 一种基于消息队列实现消息接收与转发的方法及系统 | |
CN113467969B (zh) | 一种处理消息堆积的方法 | |
CN106792905B (zh) | 一种消息处理的方法及基站 | |
CN108600769A (zh) | 图像传输方法、装置及系统 | |
US11700189B2 (en) | Method for performing task processing on common service entity, common service entity, apparatus and medium for task processing | |
US7453808B2 (en) | Throttling network management and element management system messaging | |
CN109756464B (zh) | 一种通信方法及服务器、客户端 | |
CN109885613A (zh) | 集群化数据规则处理方法 | |
CN105472586A (zh) | 一种垃圾短信监控系统及方法 | |
CN101212415A (zh) | 一种wimax网络中数据转发方法及装置以及通讯系统 | |
US9130827B2 (en) | Sampling from distributed streams of data | |
CN108243397B (zh) | 一种短信发送方法和短信网关设备 | |
CN100466635C (zh) | 一种发送消息的方法及装置 | |
CN115174502A (zh) | 一种api网关的流量控制方法、装置、设备及介质 | |
CN116017742B (zh) | 基于多级nwdaf的数据处理方法、系统和存储介质 | |
CN111132130B (zh) | 一种数据通讯方法、基站、终端、系统及存储介质 | |
CN103415043B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190405 |
|
RJ01 | Rejection of invention patent application after publication |