CN105245413A - 一种eoc设备局端获取终端控制消息响应的方法 - Google Patents
一种eoc设备局端获取终端控制消息响应的方法 Download PDFInfo
- Publication number
- CN105245413A CN105245413A CN201510614373.2A CN201510614373A CN105245413A CN 105245413 A CN105245413 A CN 105245413A CN 201510614373 A CN201510614373 A CN 201510614373A CN 105245413 A CN105245413 A CN 105245413A
- Authority
- CN
- China
- Prior art keywords
- response
- local side
- terminal
- receiver module
- semaphore
- 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.)
- Granted
Links
Abstract
本发明涉及数据通信领域中的EOC设备控制领域,尤其是一种EOC设备局端获取终端控制消息响应的方法。本发明针对现有技术存在的问题,在保证系统原有稳定、安全、准确性不受损的前提下,以大大减少时耗为目标,提出了一种控制消息响应的方法,可节省原有机制中无意义的多余等待时间,大大削减整个操作的时耗。本发明通过局端消息控制模块发送需要对应终端响应的控制消息,并实时检测局端响应接收模块是否释放了同步信号;局端响应接收模块实时接收终端发来的响应,若收到终端响应,则释放同步信号;同时局端消息控制模块若获得同步信号,则立即去局端响应接收模块读取响应信息。
Description
技术领域
本发明涉及数据通信领域中的EOC(EthernetoverCoax)设备控制领域,尤其是一种EOC设备局端获取终端控制消息响应的方法。
背景技术
在EOC通信系统中,由于局端需要对终端进行管理和控制,因此除了业务数据流的转发外,还存在各种控制消息会在两者之间交互,局端通过这些消息管理、配置和获取终端状态。在配置终端或终端启动上线过程中,局端往往需要对终端进行多项配置,而通常每一项配置又需要多次控制消息交互。在实际应用中存在的多台终端同时上线和同时配置的情况,使得短时间内局端终端控制信息需要交互的次数进一步增加。可见在EOC系统中,控制信息的交互需求量较大,需要处理大量控制信息时,如何能提高每次控制信息的处理速度,是提高局端对终端管理功能效率的关键。控制信息可被分为两类,即需要终端响应,和不需要终端响应。根据某些EOC设备原有的通信机制,在处理需要终端响应的控制消息时,有一个固定的等待时间time1,如图1所示。
等待time1时间的目的在于,局端处理控制消息的模块不知道响应何时被收到,因此必须等待一个足够长的时间time1,保证响应已被收到,再去响应接收模块读取响应。然而这些时间消耗大都在作无意义的空闲等待,因为为了保证每次读取的成功率,time1的选择往往远长于实际平均所需时间,造成大量浪费。在大量处理需要终端响应的控制消息场景下,每次固定的大量额外时间支出是一笔沉重的负担。可见,在不对系统稳定、安全和准确性造成负面影响的前提下,如何能节省原有逻辑中不必要的时间损耗,是一个值得研究的问题。
发明内容
本发明所要解决的技术问题是:针对EOC局端获取终端控制消息响应时耗太长的问题,在保证系统原有稳定、安全、准确性不受损的前提下,以大大减少时耗为目标,提出了一种EOC设备局端获取终端控制消息响应的方法,可节省原有机制中无意义的多余等待时间,大大削减整个操作的时耗。通过引入同步信号,实现相关线程间的同步,以保证响应能及时被获取。采用本发明,即可省去发起请求后,获取响应前的固定等待时间,使得整体耗时较为接近实际所需。
本发明采用的技术方案如下:
一种EOC设备局端获取终端控制消息响应的方法包括:
步骤1:局端装置分别包括局端消息控制模块与局端响应接收模块,局端消息控制模块与局端响应接收模块同时运行;
步骤2:局端消息控制模块发送需要终端响应的控制消息,并实时检测局端响应接收模块是否释放了同步信号;局端响应接收模块实时接收终端发来的响应,若收到终端响应,则释放同步信号;
步骤3,与步骤2同时,局端消息控制模块若获得同步信号,则立即去局端响应接收模块读取响应信息;否则,进入等到状态,直到设定的等待时间结束,并返回读取失败信息。
进一步的,所述步骤1具体包括:
局端装置启动时创建需要使用的信号量,并提供该信号量使用的相关接口;信号量为0表示存储响应的固定内存中,没有未被读取过的响应,信号量为1表示固定内存中有未被读取的响应;局端装置包括局端消息控制模块与局端响应接收模块,局端装置启动后,局端消息控制模块与局端响应接收模块同时运行,局端消息控制模块创建第一处理线程和第二处理线程;局端响应接收模块创建局端响应接收模块线程。
进一步的,所述步骤2具体包括:
步骤21:第一处理模块线程向第二处理模块线程发送需要获取响应的控制消息,第二处理模块线程向终端发送相应的请求,并返回校验结果给第一处理模块线程。
步骤22:局端响应接收模块线程接收第二处理模块线程发来的响应,若收到响应后,则将其放入固定的内存中,若此时前一次的响应未被读取,即信号量为1,则调用信号量减1的函数将信号量清零,然后调用信号量加1函数,将信号量置1,表示有未被读取的响应放入了固定内存中,局端响应接收模块线程释放了同步信号。
进一步的,所述步骤3具体包括:
步骤31:与步骤2同时,第一处理线程收到第二处理线程返回的校验结果后,立即向第二处理线程请求读取响应;若当前存储响应的固定内存中,没有未被读取过的响应,则第二处理线程进入阻塞等待状态,并设置请求超时的时间为T,执行步骤32;否则,局端响应接收模块线程释放了同步信号,第二处理线程从固定内存中读取响应,并将响应送到第一处理线程,执行步骤33;
步骤32:如果在设定超时的时间内,不存在未被读取的响应,则本次获取响应失败,并返回失败信息;
步骤33:将该响应与之前的校验信息进行校验,校验通过则此次读取响应成功;如果校验不通过,则返回失败信息。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
本发明取消了用户态的空闲等待,节省了图1中的time1。由于终端控制消息的发送过程在局端用户态有互斥锁确保无并发执行,且信号量阻塞有超时机制,因此引入信号量不会带来死锁问题,也不会对系统的稳定、精确性带来负面影响。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1是某些EOC设备原有处理需要终端响应的控制消息的机制。
图2是发明内容示意图。
图3是MOCA1.1局端读取终端寄存器值流程图。
具体实施方式
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
本说明书(包括任何附加权利要求、摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
MOCA1.1设备是EOC设备的一种,本发明在MOCA1.1设备的应用实例如下步骤说明。设置信号量就是为了释放信号量。将信号量加1,就是“释放了同步信号”。
1、局端装置在启动时,创建一个信号量,并初始化为0。信号量为0表示存储响应的固定内存中,没有未被读取过的响应,信号量为1表示固定内存中有未被读取的响应,此处信号量不能为除0、1外其他值。提供若干该信号量相关的接口:
1)voidsem_up(void):作用将该信号量+1;
2)intsem_down_timeout(unsignedinttime2):在时间time2毫秒内试图将该信号量-1(信号量为0时,不能被-1),如果成功-1,则返回0,反之返回非0.;
3)intsem_trydown(void):尝试将该信号量-1,若成功则返回0,若当前不能将该信号量-1,则放弃该操作并立即返回非0。
局端控制消息处理模块和响应接收模块中的相关线程可通过这些接口操作该信号量。
2、处理模块线程1向处理模块线程2发送需要获取响应的控制消息。
3、处理模块线程2向底层发送相应的请求,并返回transid给处理模块线程1(transid被处理模块用来校验所收到响应是否正确)。
4、接收模块负责接收终端发来的响应,若收到,则将其放入固定内存中。此时信号量可能为1(表示前一次的响应未被读取),为了避免信号量大于1(无并行读取场景,因此只允许信号量为0或1),先调用接口sem_trydown(保证此刻信号量为0),再调用接口sem_up(将信号量置为1,表示有未被读取的响应被放入固定内存)。
5、与步骤4同时,处理模块线程1收到transid后,立即向处理模块线程2请求读取响应,此处省去了原有的固定等待时间time1(MOCA1.1局端的time1典型值为200ms,一般这个值按照不同需求取不同的值。
6、处理模块线程2接收到处理模块线程1的读响应请求后,立刻调用接口sem_down_timeout,超时时间200ms(设置超时是为了避免引入永久等待,时限设为200ms是考虑到原有逻辑的等待时间为200ms)。
7、若处理模块线程2调用接口sem_down_timeout未立即成功,说明现信号量为0,固定内存中无未被读取的响应,线程2进入阻塞,等待信号量为1。
8、若处理模块线程2最终调用接口sem_down_timeout失败,说明在超时时间内,响应接收模块未能将响应放入固定内存,本次获取响应失败,返回失败。
9、若处理模块线程2调用接口sem_down_timeout成功(信号量由1变为0,表示当前响应已被读取),,则线程2便从固定内存中读取响应,并将响应送到线程1。
10、处理模块线程1将响应与之前获得的transid进行校验,如果校验通过,则此次读取响应成功。
本发明取消了用户态的空闲等待,以moca1.1局端获取终端交换芯片寄存器值为例,实测整个过程耗时将减少3/4左右。由于终端控制消息的发送过程在局端用户态有互斥锁确保无并发执行,且信号量阻塞有超时机制,因此引入信号量不会带来死锁问题,也不会对系统的稳定、精确性带来负面影响。
本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。
Claims (4)
1.一种EOC设备局端获取终端控制消息响应的方法,其特征在于包括:
步骤1:局端装置分别包括局端消息控制模块与局端响应接收模块,局端消息控制模块与局端响应接收模块同时运行;
步骤2:局端消息控制模块发送需要终端响应的控制消息,并实时检测局端响应接收模块是否释放了同步信号;局端响应接收模块实时接收终端发来的响应,若收到终端响应,则释放同步信号;
步骤3,与步骤2同时,局端消息控制模块若获得同步信号,则立即去局端响应接收模块读取响应信息;否则,进入等到状态,直到设定的等待时间结束,并返回读取失败信息。
2.根据权利要求1所述的一种EOC设备局端获取终端控制消息响应的方法,其特征在于所述步骤1具体包括:
局端装置启动时创建需要使用的信号量,并提供该信号量使用的相关接口;信号量为0表示存储响应的固定内存中,没有未被读取过的响应,信号量为1表示固定内存中有未被读取的响应;局端装置包括局端消息控制模块与局端响应接收模块,局端装置启动后,局端消息控制模块与局端响应接收模块同时运行,局端消息控制模块创建第一处理线程和第二处理线程;局端响应接收模块创建局端响应接收模块线程。
3.根据权利要求2所述的一种EOC设备局端获取终端控制消息响应的方法,其特征在于所述步骤2具体包括:
步骤21:第一处理模块线程向第二处理模块线程发送需要获取响应的控制消息,第二处理模块线程向终端发送相应的请求,并返回校验结果给第一处理模块线程;
步骤22:局端响应接收模块线程接收第二处理模块线程发来的响应,若收到响应后,则将其放入固定的内存中,若此时前一次的响应未被读取,即信号量为1,则调用信号量减1的函数将信号量清零,然后调用信号量加1函数,将信号量置1,表示有未被读取的响应放入了固定内存中,局端响应接收模块线程释放了同步信号。
4.根据权利要求2所述的一种EOC设备局端获取终端控制消息响应的方法,其特征在于所述步骤3具体包括:
步骤31:与步骤2同时,第一处理线程收到第二处理线程返回的校验结果后,立即向第二处理线程请求读取响应;若当前存储响应的固定内存中,没有未被读取过的响应,则第二处理线程进入阻塞等待状态,并设置请求超时的时间为T,执行步骤32;否则,局端响应接收模块线程释放了同步信号,第二处理线程从固定内存中读取响应,并将响应送到第一处理线程,执行步骤33;
步骤32:如果在设定超时的时间内,不存在未被读取的响应,则本次获取响应失败,并返回失败信息;
步骤33:将该响应与之前的校验信息进行校验,校验通过则此次读取响应成功;如果校验不通过,则返回失败信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510614373.2A CN105245413B (zh) | 2015-09-24 | 2015-09-24 | 一种eoc设备局端获取终端控制消息响应的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510614373.2A CN105245413B (zh) | 2015-09-24 | 2015-09-24 | 一种eoc设备局端获取终端控制消息响应的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105245413A true CN105245413A (zh) | 2016-01-13 |
CN105245413B CN105245413B (zh) | 2018-07-13 |
Family
ID=55042922
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510614373.2A Expired - Fee Related CN105245413B (zh) | 2015-09-24 | 2015-09-24 | 一种eoc设备局端获取终端控制消息响应的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105245413B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107147620A (zh) * | 2017-04-19 | 2017-09-08 | 武汉票据交易中心有限公司 | 一种消息交互处理方法、客户端和服务端 |
CN109905208A (zh) * | 2019-03-14 | 2019-06-18 | 闪联信息技术工程中心有限公司 | 一种获取终端控制消息响应的方法 |
CN110891006A (zh) * | 2019-12-24 | 2020-03-17 | 成都康特电子科技股份有限公司 | Hinoc通信方法、装置、设备及计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102984016A (zh) * | 2012-12-24 | 2013-03-20 | 上海斐讯数据通信技术有限公司 | 一种管理协议异步处理方法 |
US20130202293A1 (en) * | 2012-02-03 | 2013-08-08 | Broadcom Corporation | Systems and Methods for Ethernet Passive Optical Network Over Coaxial (EPOC) Power Saving Modes |
CN103346917A (zh) * | 2013-07-10 | 2013-10-09 | 中怡(苏州)科技有限公司 | EoC系统传输时延和抖动计算方法及链路故障诊断方法 |
CN104320328A (zh) * | 2014-10-28 | 2015-01-28 | 中国联合网络通信集团有限公司 | 一种消息同步方法、终端和服务器 |
CN104811342A (zh) * | 2015-05-12 | 2015-07-29 | 成都广达电子股份有限公司 | 一种eoc局端批量管理带wifi的eoc终端的方法 |
-
2015
- 2015-09-24 CN CN201510614373.2A patent/CN105245413B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130202293A1 (en) * | 2012-02-03 | 2013-08-08 | Broadcom Corporation | Systems and Methods for Ethernet Passive Optical Network Over Coaxial (EPOC) Power Saving Modes |
CN102984016A (zh) * | 2012-12-24 | 2013-03-20 | 上海斐讯数据通信技术有限公司 | 一种管理协议异步处理方法 |
CN103346917A (zh) * | 2013-07-10 | 2013-10-09 | 中怡(苏州)科技有限公司 | EoC系统传输时延和抖动计算方法及链路故障诊断方法 |
CN104320328A (zh) * | 2014-10-28 | 2015-01-28 | 中国联合网络通信集团有限公司 | 一种消息同步方法、终端和服务器 |
CN104811342A (zh) * | 2015-05-12 | 2015-07-29 | 成都广达电子股份有限公司 | 一种eoc局端批量管理带wifi的eoc终端的方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107147620A (zh) * | 2017-04-19 | 2017-09-08 | 武汉票据交易中心有限公司 | 一种消息交互处理方法、客户端和服务端 |
CN107147620B (zh) * | 2017-04-19 | 2020-07-24 | 武汉聚风天下科技有限公司 | 一种消息交互处理方法、客户端和服务端 |
CN109905208A (zh) * | 2019-03-14 | 2019-06-18 | 闪联信息技术工程中心有限公司 | 一种获取终端控制消息响应的方法 |
CN110891006A (zh) * | 2019-12-24 | 2020-03-17 | 成都康特电子科技股份有限公司 | Hinoc通信方法、装置、设备及计算机可读存储介质 |
CN110891006B (zh) * | 2019-12-24 | 2021-11-05 | 成都康特电子科技股份有限公司 | Hinoc通信方法、装置、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105245413B (zh) | 2018-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110309161B (zh) | 一种数据同步方法、装置及服务器 | |
CN103440867A (zh) | 语音识别方法及系统 | |
CN106354865B (zh) | 一种同步主从数据库的方法、装置和系统 | |
CN109361525B (zh) | 重启分布式部署多服务的方法、装置、控制终端及介质 | |
CN105245413A (zh) | 一种eoc设备局端获取终端控制消息响应的方法 | |
CN104181567B (zh) | 终端设备的定位方法、终端设备及终端设备定位系统 | |
CN103064757A (zh) | 数据备份方法及系统 | |
CN110572464A (zh) | 底层资源状态同步方法、装置、云平台系统及存储介质 | |
CN104835004A (zh) | 一种客房信息管理方法及系统 | |
CN105989139A (zh) | 一种事务同步方法及设备 | |
CN106131137A (zh) | 数据同步方法、系统及用于数据同步的用户终端和服务端 | |
CN102023899A (zh) | 多线程数据同步方法及装置 | |
CN106851595B (zh) | 有序广播处理方法、装置和终端设备 | |
CN104346346A (zh) | 业务发布方法和系统、业务更新方法、客户端 | |
CN103259863B (zh) | 基于集群的控制zookeeper服务的系统及方法 | |
CN102811154B (zh) | 资源获取方法与网络服务器系统 | |
CN104572317A (zh) | 主板及利用主板的基板管理控制器获取时间信息的方法 | |
CN105187472A (zh) | 数据同步方法及装置 | |
CN101146283B (zh) | 一种实现终端设备关键业务配置的方法 | |
CN101183966B (zh) | 一种实现多图形用户界面单元同步的方法 | |
CN107592967B (zh) | 控制帧在网络中传输的方法和装置及相关单元和运输工具 | |
CN111552667B (zh) | 一种数据删除方法、装置及电子设备 | |
CN113891263B (zh) | 短信服务系统及其同步发送方法、异步发送方法 | |
US9647976B2 (en) | Method and device for implementing end-to-end hardware message passing | |
CN104009968B (zh) | 一种视频调度的控制装置及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180713 Termination date: 20200924 |
|
CF01 | Termination of patent right due to non-payment of annual fee |