CN101610272A - 一种避免邻居关系振荡的方法 - Google Patents

一种避免邻居关系振荡的方法 Download PDF

Info

Publication number
CN101610272A
CN101610272A CNA2009103049983A CN200910304998A CN101610272A CN 101610272 A CN101610272 A CN 101610272A CN A2009103049983 A CNA2009103049983 A CN A2009103049983A CN 200910304998 A CN200910304998 A CN 200910304998A CN 101610272 A CN101610272 A CN 101610272A
Authority
CN
China
Prior art keywords
neighbor
keep
alive
tasks
avoiding
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
Application number
CNA2009103049983A
Other languages
English (en)
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.)
Maipu Communication Technology Co Ltd
Original Assignee
Maipu Communication 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 Maipu Communication Technology Co Ltd filed Critical Maipu Communication Technology Co Ltd
Priority to CNA2009103049983A priority Critical patent/CN101610272A/zh
Publication of CN101610272A publication Critical patent/CN101610272A/zh
Priority to PCT/CN2010/075590 priority patent/WO2011012086A1/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/026Details of "hello" or keep-alive messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/028Dynamic adaptation of the update intervals, e.g. event-triggered updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明涉及计算机网络通信,特别涉及具有邻居关系的通信协议中避免邻居状态振荡的方法。本发明公开了一种避免邻居关系振荡的方法,避免协议的邻居状态因为得不到及时保活而导致振荡。本发明的技术方案是,一种避免邻居关系振荡的方法,包括以下步骤:a.对协议任务进行分离,分离为邻居保活任务和协议主体任务;b.简化邻居保活任务,使其仅用于完成邻居保活;c.协议主体任务保持基本流程不变,将其中邻居信息、保活报文同步到邻居保活任务中;d.协议运行过程中,邻居保活任务和协议主体任务独立运行。本发明用于计算机通信协议的设计和实现,在综合环境里,协议的邻居可以有效保活,避免了因为CPU繁忙而导致的协议邻居关系振荡。

Description

一种避免邻居关系振荡的方法
技术领域
本发明涉及计算机网络通信,特别涉及具有邻居关系的通信协议中避免邻居状态振荡的方法。
背景技术
在计算机通信领域,有大量的协议,具有邻居关系,需要定时保活邻居状态,而且协议本身也具有较复杂的算法。如果不能优先保证邻居状态的建立和维护,可能会导致邻居状态振荡,使协议不能稳定运行。在设计、实现协议时,如何避免协议的邻居状态振荡是协议设计实现时的一个重要内容。
大部分协议的内容都可以概括为两个公共部分:邻居保活任务和协议主体任务(又称为协议运算)。视协议复杂程度,协议运算部分可能有比较复杂的协议状态机维护、协议数据库维护和计算等,协议运算部分是比较消耗CPU资源的。如果一个协议用一个任务(或者进程)来实现这两个方面的内容,那么这里存在一个矛盾就是:邻居保活任务对实时性要求高,在系统中要求任务优先级较高;而协议运算因为存在密集性的计算,消耗CPU较高,为避免对系统的影响,其任务的优先级不能设置得过高。如果协议运算优先级设置得过高,会导致系统中其他较低优先级的任务得不到调度;如果优先级定的较低,则在系统高优先级任务调度时,协议主体任务因为一段时间没有收到或者发送保活报文,导致邻居超时断开,进而触发高密集性的计算,并且需要重新开始建立邻居,导致邻居关系振荡,协议迟迟不能收敛。
在综合环境下,出现协议邻居关系振荡的情况时,对协议流程本身做些优化是必要的。但是这种局部优化在比较恶劣的综合环境下,效果并不理想。比如当系统业务报文相当繁忙时,CPU资源相当紧张时,局部优化就失去效果了。即这种局部优化不是治本的方法。
邻居保活对实时性要求相当高,因此要保活邻居,必须把保活邻居的操作放在一个相对高优先级的任务里处理。而对于协议密集性的计算、状态机、数据库维护等工作,因占CPU资源较高,综合考虑,需要在一个相对低优先级的任务里处理,避免协议运行起来时因占用CPU资源较多,导致系统其他许多任务得不到调度。
发明内容
本发明所要解决的技术问题,就是提供一种避免邻居关系振荡的方法,避免协议的邻居状态因为得不到及时保活而导致振荡。
本发明解决所述技术问题,采用的技术方案是,一种避免邻居关系振荡的方法,包括以下步骤:
a、对协议任务进行分离,分离为邻居保活任务和协议主体任务;
b、简化邻居保活任务,使其仅用于完成邻居保活;
c、协议主体任务保持基本流程不变,将其中邻居信息、保活报文同步到邻居保活任务中;
d、协议运行过程中,邻居保活任务和协议主体任务独立运行;
进一步的,邻居保活任务的优先级别高于协议主体任务的优先级别;
具体的,所述优先级别是指实时性要求优先级别;
具体的,所述邻居保活任务用于接收保活报文保活自己的邻居状态,以及定时发送保活报文保活邻居的邻居状态;
进一步的,所述协议主体任务根据邻居保活任务发送的邻居保活通知,维护其本地邻居状态;
进一步的,邻居保活任务和协议主体任务需要避免共享数据结构;
进一步的,邻居保活任务和协议主体任务之间的通信采用标准通信方法;
具体的,所述标准通信方法包括但不限于内部TCP、管道、通信信号量触发。
本发明的有益效果是,实现任务分离后,在综合环境里,协议的邻居可以有效保活,避免了因为CPU繁忙而导致的协议邻居振荡、网络不通、占用系统资源的问题。
具体实施方式
下面结合具体实施方式,详细描述本发明的技术方案。
本发明对协议任务进行分离,分离为邻居保活任务和协议主体任务。为了便于描述,邻居保活任务称为HELLO任务,协议主体任务称为PROTO任务。本发明具体实施步骤如下:
1.协议实现进行任务分离
协议实现分离为邻居保活任务和协议主体任务。邻居保活任务设置可以满足高实时性要求的较高优先级别,协议主体任务则设置相对较低的优先级别,避免对系统其他任务造成冲击。
2.HELLO任务基本流程
HELLO任务设计得非常简单,主要完成两件事:
一是接收保活报文保活自己的邻居状态。
邻居的创建更新均在PROTO任务里完成,PROTO任务把邻居的映射同步到HELLO任务,即HELLO任务里维护的邻居和PROTO任务里的邻居一一映射。HELLO任务收到保活报文后,根据保活报文的关键字段查找到对应的邻居并把该邻居保活。在过了保活时间之后还没有收到保活报文时,HELLO任务把相应邻居删除,并且通知PROTO任务删除相应的邻居,表明该邻居确实无法保活需要删除。
二是定时发送保活报文保活邻居的邻居状态。
HELLO任务需要定时把保活报文发送到邻居,使邻居及时收到保活报文把邻居保活。保活报文的触发更新由PROTO任务处理,PROTO任务在处理的过程中复制一份保活报文给HELLO任务,并把定时发送的时间间隔通知到HELLO任务。在HELLO任务里定时发送该复制的保活报文。当PROTO任务里需要更新、中止保活报文的发送时,通知到HELLO任务,HELLO任务及时更新保活报文或者中止保活报文的发送。
3.PROTO任务基本流程
PROTO任务,按照RFC(互联网协议草案及标准)等描述来具体设计实现,基本流程可以认为是不受任务分离影响的,包括对邻居的保活处理。PROTO任务里一般情况下同样需要保活邻居,因为需要根据邻居的保活情况更新协议的数据库等操作。为了支持任务分离PROTO任务主要完成两件事:
一是把邻居信息和保活报文同步到HELLO任务。
PROTO任务根据协议数据和状态机,决定创建邻居、删除邻居,需要把邻居的一个映射邻居同步到HELLO任务,让HELLO任务能够根据该映射的邻居关系保活邻居。PROTO任务根据协议流程发送保活报文,把保活报文同步到HELLO任务,由HELLO任务把保活报文发送到邻居。PROTO任务根据协议运行过程需要更新保活报文时,需要把更新的保活报文及时同步到HELLO任务。
二是本地维护邻居状态,但是邻居状态是否保活需要接收HELLO任务的邻居保活通知。
邻居状态作为协议运算的一部分数据库,PROTO任务仍然要维护邻居状态。协议因为外部配置变化、接口状态变化等外界条件需要删除邻居时,可以直接删除邻居并通知到HELLO任务,让HELLO任务也删除相应的邻居。PROTO任务不能因为没有及时收到保活报文而删除邻居,HELLO任务因为没有及时收到保活报文才删除邻居,并且把删除邻居通知到PROTO任务,让PROTO任务删除相应邻居。
4.HELLO任务和PROTO任务之间的通信
这里可以作为两个一般任务之间的通信来考虑,任务之间的通信,基本的有内部TCP、管道、通信信号量触发、共享数据结构等。对HELLO和PROTO之间的通信,有一点是需要特别注意的,就是需要尽量避免共享数据结构,因为一旦共享数据结构,就需要两个任务使用同样的信号量来保护这个数据结构,如果PROTO拿到信号量对共享数据结构进行密集性计算,占用较长时间,务必会导致HELLO任务因为取不到信号量而得不到调度,或者导致PROTO任务优先级翻转到和HELLO任务一样,使得系统其他任务得不到调度。

Claims (8)

1.一种避免邻居关系振荡的方法,包括一下步骤:
a、对协议任务进行分离,分离为邻居保活任务和协议主体任务;
b、简化邻居保活任务,使其仅用于完成邻居保活;
c、协议主体任务保持基本流程不变,将其中邻居信息、保活报文同步到邻居保活任务中;
d、协议运行过程中,邻居保活任务和协议主体任务独立运行。
2.根据权利要求1所述的一种避免邻居关系振荡的方法,其特征在于,邻居保活任务的优先级别高于协议主体任务的优先级别。
3.根据权利要求2所述的一种避免邻居关系振荡的方法,其特征在于,所述优先级别是指实时性要求优先级别。
4.根据权利要求1所述的一种避免邻居关系振荡的方法,其特征在于,所述邻居保活任务用于接收保活报文保活自己的邻居状态,以及定时发送保活报文保活邻居的邻居状态。
5.根据权利要求1所述的一种避免邻居关系振荡的方法,其特征在于,所述协议主体任务根据邻居保活任务发送的邻居保活通知,维护其本地邻居状态。
6.根据权利要求1~5任意一项所述的一种避免邻居关系振荡的方法,其特征在于,邻居保活任务和协议主体任务需要避免共享数据结构。
7.根据权利要求6所述的一种避免邻居关系振荡的方法,其特征在于,邻居保活任务和协议主体任务之间的通信采用标准通信方法。
8.根据权利要求7所述的一种避免邻居关系振荡的方法,其特征在于,所述标准通信方法包括但不限于内部TCP、管道、通信信号量触发。
CNA2009103049983A 2009-07-30 2009-07-30 一种避免邻居关系振荡的方法 Pending CN101610272A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CNA2009103049983A CN101610272A (zh) 2009-07-30 2009-07-30 一种避免邻居关系振荡的方法
PCT/CN2010/075590 WO2011012086A1 (zh) 2009-07-30 2010-07-30 避免邻居关系振荡的方法和通信设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2009103049983A CN101610272A (zh) 2009-07-30 2009-07-30 一种避免邻居关系振荡的方法

Publications (1)

Publication Number Publication Date
CN101610272A true CN101610272A (zh) 2009-12-23

Family

ID=41483853

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2009103049983A Pending CN101610272A (zh) 2009-07-30 2009-07-30 一种避免邻居关系振荡的方法

Country Status (2)

Country Link
CN (1) CN101610272A (zh)
WO (1) WO2011012086A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011012086A1 (zh) * 2009-07-30 2011-02-03 迈普通信技术股份有限公司 避免邻居关系振荡的方法和通信设备
CN102014054A (zh) * 2010-11-22 2011-04-13 中兴通讯股份有限公司 保活报文的发送方法和设备
CN103560947A (zh) * 2013-10-25 2014-02-05 福建星网锐捷网络有限公司 一种避免中间系统邻居关系震荡的方法及装置
CN105991449A (zh) * 2015-05-27 2016-10-05 杭州迪普科技有限公司 一种保活优化方法及装置
WO2016155246A1 (zh) * 2015-04-01 2016-10-06 中兴通讯股份有限公司 一种保活报文的处理方法及装置
CN112152745A (zh) * 2019-08-07 2020-12-29 中兴通讯股份有限公司 时间同步方法、时间同步发送端、接收端及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101222443B (zh) * 2008-01-30 2012-04-25 杭州华三通信技术有限公司 一种处理报文的方法和网络设备
CN101262430A (zh) * 2008-04-25 2008-09-10 中兴通讯股份有限公司 一种分布式保活的路由设备和方法
CN101610272A (zh) * 2009-07-30 2009-12-23 迈普通信技术股份有限公司 一种避免邻居关系振荡的方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011012086A1 (zh) * 2009-07-30 2011-02-03 迈普通信技术股份有限公司 避免邻居关系振荡的方法和通信设备
CN102014054A (zh) * 2010-11-22 2011-04-13 中兴通讯股份有限公司 保活报文的发送方法和设备
CN103560947A (zh) * 2013-10-25 2014-02-05 福建星网锐捷网络有限公司 一种避免中间系统邻居关系震荡的方法及装置
CN103560947B (zh) * 2013-10-25 2016-11-23 福建星网锐捷网络有限公司 一种避免中间系统邻居关系震荡的方法及装置
WO2016155246A1 (zh) * 2015-04-01 2016-10-06 中兴通讯股份有限公司 一种保活报文的处理方法及装置
CN106161355A (zh) * 2015-04-01 2016-11-23 中兴通讯股份有限公司 一种保活报文的处理方法及装置
CN105991449A (zh) * 2015-05-27 2016-10-05 杭州迪普科技有限公司 一种保活优化方法及装置
CN105991449B (zh) * 2015-05-27 2019-09-06 杭州迪普科技股份有限公司 一种保活优化方法及装置
CN112152745A (zh) * 2019-08-07 2020-12-29 中兴通讯股份有限公司 时间同步方法、时间同步发送端、接收端及系统
CN112152745B (zh) * 2019-08-07 2021-09-28 中兴通讯股份有限公司 时间同步方法、时间同步发送端、接收端及系统

Also Published As

Publication number Publication date
WO2011012086A1 (zh) 2011-02-03

Similar Documents

Publication Publication Date Title
CN101610272A (zh) 一种避免邻居关系振荡的方法
EP2876945B1 (en) Method for processing data, modem and terminal
CN102761864A (zh) 一种数据传输的方法、系统及设备
CN104243496B (zh) 一种软件定义网跨域安全代理方法和系统
CN102970155A (zh) 保持活动管理
CN103051468A (zh) 网络接口设备的操作系统管理
CN103888441A (zh) 一种应用程序与协议栈之间的信息传输方法及处理装置
CN102664758A (zh) 一种网络配置绑定与自动恢复的方法
CN107450954A (zh) 一种基于云桌面的用户云终端升级方法
CN105847420A (zh) 一种适用于无线现场设备的opc ua休眠代理方法
CN108833569A (zh) 一种数据同步方法及相关装置
CN102420827B (zh) 面向智能移动平台的Web服务推送方法
CN102026228B (zh) 通信网络性能数据的统计方法和设备
CN105208054A (zh) 云调度管理方法、管理中心及管理系统
CN103533064A (zh) 不间断网络用户在线状态的服务器程序升级方法
CN104967580A (zh) 用于实现以太网报文发送的方法及装置
CN104486330A (zh) 一种基于远程过程调用的双向通信系统
CN101547414B (zh) 短信计费系统及方法
CN101626310B (zh) 集群环境中的服务信息传输方法、装置及系统
CN115378989B (zh) 基于唤醒通道的mqtt主题订阅系统、方法、终端及介质
CN101651701B (zh) 一种实现服务器管理终端设备的方法、系统及设备
CN101237663B (zh) 无线通信系统中基站设备的操作维护管理方法和系统
CN107786661B (zh) 信息同步方法
CN101615998A (zh) 一种在以太网中实现时钟同步的方法及系统及接入交换机
CN102291326A (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
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20091223