-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathBFDSession.java
More file actions
156 lines (125 loc) · 3.23 KB
/
BFDSession.java
File metadata and controls
156 lines (125 loc) · 3.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
package bfd.fsm;
/**
* Keeps track of a specific BFD session
*
* @author angelos
*/
public class BFDSession {
int RequiredMinEchoRxInterval,SessionState,RemoteSessionState,LocalDiscr,RemoteDiscr,LocalDiag,DesiredMinTxInterval,RequiredMinRxInterval,RemoteMinRxInterval,DemandMode,RemoteDemandMode,DetectMult,AuthType;
int sid,RemoteDetectMult;
boolean isActive=false;
void setSessionId(int id){
sid=id;
}
void setIsActive(boolean active){
isActive=active;
}
boolean getIsActive(){
return isActive;
}
int getSessionId(){
return sid;
}
void setSessionState(int state){
SessionState=state;
}
int getSessionState(){
return SessionState;
}
void setRemoteSessionState(int state){
RemoteSessionState=state;
}
int getRemoteSessionState(){
return RemoteSessionState;
}
void setRemoteDiscr(int discr){
RemoteDiscr=discr;
}
int getRemoteDiscr(){
return RemoteDiscr;
}
void setLocalDiscr(int discr){
LocalDiscr=discr;
}
int getLocalDiscr(){
return LocalDiscr;
}
void setLocalDiag(int diag){
LocalDiag=diag;
}
int getLocalDiag(){
return LocalDiag;
}
void setDesiredMinTxInterval(int interval){
DesiredMinTxInterval=interval;
}
int getDesiredMinTxInterval(){
return DesiredMinTxInterval;
}
void setRequiredMinRxInterval(int interval){
RequiredMinRxInterval=interval;
}
int getRequiredMinRxInterval(){
return RequiredMinRxInterval;
}
void setRequiredMinEchoRxInterval(int interval){
RequiredMinEchoRxInterval=interval;
}
int getRequiredMinEchoRxInterval(){
return RequiredMinEchoRxInterval;
}
void setRemoteMinRxInterval(int interval){
RemoteMinRxInterval=interval;
}
int getRemoteMinRxInterval(){
return RemoteMinRxInterval;
}
void setDemandMode(int mode){
DemandMode=mode;
}
int getDemandMode(){
return DemandMode;
}
void setRemoteDemandMode(int mode){
RemoteDemandMode=mode;
}
int getRemoteDemandMode(){
return RemoteDemandMode;
}
void setDetectMult(int mult){
DetectMult=mult;
}
int getDetectMult(){
return DetectMult;
}
void setRemoteDetectMult(int mult){
RemoteDetectMult=mult;
}
int getRemoteDetectMult(){
return RemoteDetectMult;
}
void setAuthType(int type){
AuthType=type;
}
int getAuthType(){
return AuthType;
}
int getDetectionTime(){
if (DemandMode==0){
if( RequiredMinRxInterval>DesiredMinTxInterval){
return (RemoteDetectMult*RequiredMinRxInterval);
}
else{
return (RemoteDetectMult*DesiredMinTxInterval);
}
}
else {
if (DesiredMinTxInterval>RemoteMinRxInterval){
return (DetectMult*DesiredMinTxInterval);
}
else{
return (DetectMult*RemoteMinRxInterval);
}
}
}
}