3 TRIP的实现
虽然TRIB由以上的四个部分构成,但这并不意味也并不要求一个路由选择过程的完成必须要保留这四个每一个的单独备份,其选择并不拘泥于协议的划分,有些路由选择过程可能要用到一个TRIB,有时可能要用到多个,甚至在TRIP-MIB库设计中大家并不一定能意识其的单独存在,这根据具体需要而定。
前两个字节标明了这个TRIP消息的总长度,这个长度也包括消息头的长度,最大值为4096,最小值为3;消息类别标明了本次TRIP消息的类型,取值范围是1~4,表示的意义如下:
- Attribute Flags
在此消息格式中Error Code和Error Subcode的取值范围为:
Error Code 错误类别和错误内容
1 Message Header Error(TRIP消息头错误) ,对应的具体故障为:
Error Subcode=1 :Bad Message Length(错误的消息长度)
Error Subcode=2 :Bad Message Type(错误的消息类型)
2 OPEN Message Error(OPEN 消息错误),对应的具体故障为:
Error Subcode=1 :Unsupported Version Number.(错误的版本号)
Error Subcode=2 :Bad Peer ITAD(错误的ITAD编号)
Error Subcode=3 :Bad TRIP Identifier(错误TRIP标识)
Error Subcode=4 :Unsupported Optional Parameterr(错误TRIP标识)
Error Subcode=5 :Unacceptable Hold Time(消息有效时间不合适)
Error Subcode=6 :Unsupported Capability(无法支持的能力属性)
Error Subcode=7 :Capability Mismatch(能力属性不匹配)
3 UPDATE Message Error(UPDATE消息错误),对应的具体故障为:
Error Subcode=1 :Malformed Attribute List(奇形属性列表)
Error Subcode=2 :Unrecognized Well-known Attribute(不可识别的Well-known属性值)
Error Subcode=3 :Missing Well-known Mandatory Attribute(无Well-known强制属性)
Error Subcode=4 :Attribute Flags Error(属性标志错误)
Error Subcode=5 :Attribute Length Error(属性长度错误)
Error Subcode=6 :Invalid Attribute(无效的属性值)
4 Hold Timer Expired(消息有效时间到)
5 Finite State Machine Error(有限状态机错误)
6 Cease (遇到致命性错误,TRIP交互立即停止)
通知消息中数据值的长度的计算公式是:数据值长度 = 消息的总长度 - 5
3.2.5 KEEPALIVE(活)消息
KEEPALIVE消息是OPEN消息成功后的一个响应消息,它主要是为了告诉双方LS它们之间已经建立的成功会话还处于活动状态,以便进行UPDATE消息的交互,KEEPALIVE消息发送的时间间隔是自定义的,一般比较合理的最大间隔是OPEN消息中设定寿命值(Hold Time)的三分之一,如果寿命值为0,则不发送KEEPALIVE消息。
KEEPALIVE消息格式就是TRIP消息的格式,如图8,其无单独的消息格式和内容,只须标明消息类型值为4。
TRIP--IP电话路由的新技术和应用(上)作者供稿 CTI论坛编辑