⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mplsldp.h

📁 技术文件名称:MPLSv1.0软件模块测试规程
💻 H
📖 第 1 页 / 共 2 页
字号:
	unsigned short			protocolversion;  /* 协商的版本号*/	
	unsigned long			keepaliveholdtimeremaining;  /*协商的保活时间*/
	unsigned long			maxpdulength;                /*协商的最大PDU长度*/
	unsigned long			discontinuitytime;           /*has the same value as the discontinuitytime in the corresponding entitytable*/
	
/* begin the following in the old mib,added in order to implement the function 
  the follow is not operated and only to be showed during the debugging procedure 01-7-24 */	
	unsigned char   	    role;                  /* ACTIVE(1),PASSIVE(2) */         
	unsigned char       	vcNumeberdType;        /* ODD(1), EVEN(2) */
	
#if 1  /* vpi/vci negotiated in the mplsLdpAtmSessionTable_t*/
	unsigned char         lblRngNum;
	mplsLdpAtmLblRange_t  lblRngList[MPLS_ATMLBLMAXLEN];  /* label range negotiated  */
#endif 
	unsigned long		helloArrayNum;
	unsigned long   		helloArray[SESSION_OWNED_HELLO];   /* deal with many hello messages*/
    unsigned short			tcpConRetry;                /* TCP重新连接尝试次数 ,此项在stats中好象有*/        
/*    unsigned short      	tmidRetry;    */              /* TCP重新连接定时器标识 */
    unsigned short      	tmidCon;                    /* TCP连接定时器标识 */
/*    unsigned short      	tmidRel;     */               /* TCP删除连接定时器标识 */
/*    unsigned char       	mark;		*/				/* 标识会话状态从运行转为其他 0:no,1:yes */
/* end  in the old mib,added in order to implement the function 01-7-24 */	
 /*   unsigned short          LocalPort;
    unsigned short          PeerPort;*/
	connectivity_t	connect;     /* the item not in the mib, added in order to show the 
	                               connectivity of the peer*/
	interface_name_t  ifName;
	unsigned short            ifIndex;
}MPLS_PACK MplsLdpSessionTable_t;

/* this table of mpls ldp generic session information is added,  */
typedef struct {
	mplsLdpId_t		entityLdpId;
	unsigned long			entityindex;
	mplsLdpId_t		peerLdpId;
	
	unsigned long           lblRngListmin;  /* negotiated general label min range */
	unsigned long           lblRngListmax;  /* negotiated general label max range */       
	
	/* the following items not in the mib */	
	unsigned char           module;
	unsigned short          ifIndex;
}MPLS_PACK mplsLdpGeneralSessionTable_t;

/*   mpls ldp atm session information */
typedef struct {
	mplsLdpId_t		entityLdpId;
	unsigned long			entityindex;
	mplsLdpId_t		peerLdpId;
	
	unsigned short 			lowerVpi;               /*(R-W),range is 0..4095,(R-W),*/
	unsigned short			lowerVci;               /*(R-W),range is 32..65535 */
	unsigned short			UpperVpi;               /*(R-W),range is 0..4095,(R-W),*/
	unsigned short			UpperVci;               /*(R-W),range is 32..65535 */
	
	/* the following items not in the mib */	
	unsigned char           module;
	unsigned short          ifIndex;
}MPLS_PACK mplsLdpAtmSessionTable_t;

/*  mpls ldp frame relay session information  */
typedef struct {
	mplsLdpId_t		entityLdpId;
	unsigned long			entityindex;
	mplsLdpId_t		peerLdpId;
	unsigned long			mindlci;
	unsigned long			maxdlci;
	unsigned short			frlen;	
}MPLS_PACK mplsLdpFrameRelaySessionTable_t;

/*  mpls ldp session statistics table  */
typedef struct {
	mplsLdpId_t		entityLdpId;    /*the fore three entries not in the mib */              
	mplsLdpId_t		peerLdpId;                  
	unsigned long 			index;
	unsigned long 			unknownmessagetypeerrors;  /* 未知消息类型错误数 */
	unsigned long			unknowntlverrors;	       /* 未知TLV错误数 */
	
	/* the item not in the mib, added in order 
	                                   to select the entries to be showed*/
	unsigned short          ifIndex; 
	connectivity_t	connect;   
	interface_name_t  ifName;                                   
}MPLS_PACK mplsLdpSessionStatsTable_t;

/*  mpls fec table  */
typedef struct {
	unsigned char		RowStatus;
	unsigned long		fecindex;
	unsigned short		fectype;
	unsigned long		fecaddresslength;
	unsigned short		fecaddressfamily;
	unsigned long		fecaddress;
	unsigned char		storagetype;
}MPLS_PACK mplsFecTable_t;

/*  mpls ldp session inlabel and in segment */
typedef struct {
	mplsLdpId_t		entityLdpId;
	unsigned long			entityindex;
	mplsLdpId_t		peerLdpId;
	unsigned long 			inLabelifindex;
	unsigned long			inlabel;
	unsigned short			inlabeltype;
	unsigned short			inlabelconnectiontype;
}MPLS_PACK mplsLdpSessionInLabelMapTable_t;

/*  mpls ldp session outlabels and outsegment  */
typedef struct {
	mplsLdpId_t		entityLdpId;
	unsigned long			entityindex;
	mplsLdpId_t		peerLdpId;
	unsigned long			outlabelifindex;
	unsigned long			outlabel;
	unsigned short			outlabeltype;
	unsigned short			outlabelconnectiontype;
	unsigned long			outsegmentindex;	
}MPLS_PACK mplsLdpSessionOutLabelMapTable_t;

/*  mpls ldp sessions and xconnects  */
typedef struct {
	mplsLdpId_t		entityLdpId;
	unsigned long			entityindex;
	mplsLdpId_t		peerLdpId;
	unsigned long 			inLabelifindex;
	unsigned long			inlabel;
	unsigned long			outlabelifindex;
	unsigned long			outlabel;
	unsigned long			xcindex;	
}MPLS_PACK mplsLdpSessionXCMaptable_t;

/*   mpls ldp xcrossConnectsfecs table  */
typedef struct {
	mplsLdpId_t		entityLdpId;
	unsigned long			entityindex;
	mplsLdpId_t		peerLdpId;
	
	unsigned long 			inLabelifindex;
	unsigned long			inlabel;
	unsigned long			outlabelifindex;
	unsigned long			outlabel;
	unsigned long			fecindex;
	unsigned char			operstatus;
	unsigned long 			operstatusLastchange;
}MPLS_PACK mplsXCsFecsTable_t;

/*  mpls ldp seeion peer address table */
typedef struct {
	mplsLdpId_t		entityLdpId;
	unsigned long			entityindex;
	mplsLdpId_t		peerLdpId;
	unsigned long			peeraddressindex;
	unsigned char			peernexthopaddresstype;
	unsigned long			peernexthopaddress;
	
	/*  not in the mib, in order to search one item */
	unsigned char           module;  
	unsigned short          ifIndex;   
}MPLS_PACK mplsLdpSessionPeerAddressTable_t;
 
typedef struct{
    prefixOrLspid_t   prefixLspId;
	labelAtm_t        remoteBinds;
	unsigned long			  bytes;
	unsigned long			  nextHop;
	interface_name_t  outIf;
	/*  暂时未用,以后放开 1-12-17 sbp */
	/*
	unsigned short			  mtu;
	unsigned long			  mac_encaps;
	MplsLabelStackTable_t	stack[LABEL_STACK_MAX];
	*/
}MPLS_PACK forwardingTableChild_t;

/* forwarding table */
typedef struct{
    unsigned short                  ifIndex;
    labelAtm_t              localLabel;
    unsigned char                   remoteNum;
	forwardingTableChild_t  remoteBinds[MPLS_LBL_BINDS_MAX];
	unsigned char                   adminStatus;	
}MPLS_PACK forwardingtable_t;

/* LDP parameters table*/
typedef struct{
    unsigned char                   rowStatus;
	unsigned short					protocolversion; /* protocol configured not in the session table*/
	unsigned long                   labelMin;
	unsigned long                   labelMax;
	unsigned short 			        minVpi;               /*(R-W),range is 0..4095,(R-W),*/
	unsigned short			        minVci;               /*(R-W),range is 32..65535 */
	unsigned short			        maxVpi;               /*(R-W),range is 0..4095,(R-W),*/
	unsigned short			        maxVci;               /*(R-W),range is 32..65535 */
	
	mplsldptimer_t          time;
	unsigned short					acceptingdirectedhellos;  /* 0: no,  1: yes */
	interface_name_t        ifName;          /*  */
	unsigned short					ifIndex;
}MPLS_PACK mplsldpparamtable_t;

/* interface type and transport address table for one interface */
typedef struct{
    unsigned char       rowStatus;
	unsigned short 		ifIndex;
	unsigned char		ifType;         /*   egress 1,  ingress 2,  backbone  3*/
	unsigned long		ifIpAddr;
	unsigned long		ifNet;
	unsigned long		ifMask;
	unsigned long		ifBrdcstAddr;
	
	interface_name_t  ifName;   /* in ooder to show the name of interface */
}MPLS_PACK if_transport_table_t;


/*  label information base */
typedef struct{
    unsigned short            ifIndex;
    unsigned long		      netaddr;
	union
	{
	    unsigned long 		  netmask;
	    unsigned char         maskLen;
	}mask;
	unsigned char             localNum;
	labelAtm_t        localBinds[MPLS_LBL_BINDS_MAX];
	unsigned char             remoteNum;
	remoteBindings_t  remoteBinds[MPLS_LBL_BINDS_MAX];
	
	unsigned char             adminStatus;	
	interface_name_t  ifName;			/*  */
}MPLS_PACK libtable_t;

typedef struct{
    unsigned short               ifIndex;
    interface_name_t     ifName;
    AtmLdpCapability_t   local;
    AtmLdpCapability_t   peer;
    AtmLdpCapability_t   negotiat;
}MPLS_PACK mplsAtmLdpCapability_t;

/* discovery table */
typedef struct {
	mplsLdpId_t	         localLdpId;
	interface_name_t     localIfName;
	unsigned short  	         xmit;      /* 0:  not,  1 : yes */
	unsigned short               recv;      /* 0:  not,  1 : yes */
}MPLS_PACK mplsLdpDiscovery_t;

#include"_restore.h"
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -