SSF.Net
Class RadixTreeRoutingTable
java.lang.Object
|
+--SSF.OS.ProtocolSession
|
+--SSF.Net.RadixTreeRoutingTable
- All Implemented Interfaces:
- com.renesys.raceway.DML.Configurable, RoutingTable
- public synchronized class RadixTreeRoutingTable
- extends ProtocolSession
- implements RoutingTable
|
Method Summary |
void |
add(java.lang.String,
NIC,
int)
|
void |
add(java.lang.String,
NIC,
int,
int)
|
void |
add(java.lang.String,
NIC,
int,
int,
java.lang.String)
|
void |
add(java.lang.String,
NIC,
int,
java.lang.String)
|
void |
addDefault(NIC,
int)
|
void |
addDefault(NIC,
int,
int)
|
void |
addDefault(NIC,
int,
int,
java.lang.String)
|
void |
addFIBChangeListener(FIBChangeListener)
|
int |
approxBytes()
|
private int |
approxBytesHelper(int,
RtgTblNode,
int)
|
static int |
bytes2ip(java.lang.StringBuffer,
byte[],
int)
|
static int |
bytes2ipprefix(java.lang.StringBuffer,
byte[],
int)
|
static int |
bytes2nhi(java.lang.StringBuffer,
byte[],
int)
|
static int |
bytes2str(java.lang.StringBuffer,
byte[],
int,
java.lang.String,
boolean)
|
private void |
changed(RoutingInfo,
java.lang.String,
boolean)
|
void |
clearTable()
|
void |
config(com.renesys.raceway.DML.Configuration)
|
private void |
configRoute(com.renesys.raceway.DML.Configuration,
boolean)
|
void |
del(java.lang.String)
|
void |
del(java.lang.String,
java.lang.String)
|
private void |
dump(FIBChangeListener)
|
private void |
dump(FIBChangeListener,
RtgTblNode)
|
RoutingInfo |
find(int)
|
RoutingInfo |
find(int,
int)
|
RoutingInfo |
find(int,
int,
java.lang.String)
|
RoutingInfo |
find(int,
java.lang.String)
|
RoutingInfo |
findBest(int)
|
RoutingInfo |
findBest(int,
int)
|
private int |
getAdminDistance(java.lang.String)
|
int |
getID()
|
void |
insert(boolean[],
RoutingInfo)
|
private void |
insertLeft()
|
private void |
insertRight()
|
private int |
ip2bytes(int,
byte[],
int,
boolean)
|
static int |
ipprefix2bytes(int,
int,
byte[],
int)
|
static int |
nhi2bytes(java.lang.String,
byte[],
int)
|
private java.lang.String |
preorderTraversal(java.lang.String,
java.lang.String,
boolean,
RtgTblNode,
int)
|
void |
print()
|
void |
print(java.lang.String)
|
void |
print(java.lang.String,
boolean)
|
boolean |
push(ProtocolMessage,
ProtocolSession)
|
void |
remove(boolean[],
java.lang.String)
|
void |
removeFIBChangeListener(FIBChangeListener)
|
void |
rep(java.lang.String,
NIC,
int,
int,
java.lang.String)
|
void |
replace(boolean[],
RoutingInfo,
java.lang.String)
|
void |
setAdminDistance(java.lang.String,
int)
|
void |
setDefaultAdminDistances()
|
private void |
settopnet()
|
int |
toBytes(byte[],
int,
boolean)
|
private int[] |
toBytesHelper(byte[],
int,
boolean,
RtgTblNode,
int,
int)
|
java.lang.String |
toString()
|
java.lang.String |
toString(java.lang.String,
boolean)
|
| Methods inherited from class SSF.OS.ProtocolSession |
close, closed, debugIdentifier, inGraph, init, open, opened, pushAfterDelay, pushAfterDelayFailed, setGraph, version |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
root
private RtgTblNode root
window
private RtgTblNode window
ID
private int ID
route
private boolean[] route
inGraph
private ProtocolGraph inGraph
SHOW_ADD
private boolean SHOW_ADD
tieBreaker
private RouteTieBreaker tieBreaker
fibChangeListeners
private java.util.ArrayList fibChangeListeners
ROUTE_DELETED
private static final boolean ROUTE_DELETED
- See Also:
- Constant Field Values
ROUTE_INSERTED
private static final boolean ROUTE_INSERTED
- See Also:
- Constant Field Values
adminDistances
private java.util.HashMap adminDistances
cache_dstip
private int cache_dstip
cache_srcip
private int cache_srcip
cache
private RoutingInfo cache
topnet
public static Net topnet
RadixTreeRoutingTable
public RadixTreeRoutingTable(ProtocolGraph)
RadixTreeRoutingTable
public RadixTreeRoutingTable(ProtocolGraph,
RouteTieBreaker)
addFIBChangeListener
public void addFIBChangeListener(FIBChangeListener)
- Specified by:
addFIBChangeListener in interface RoutingTable
removeFIBChangeListener
public void removeFIBChangeListener(FIBChangeListener)
- Specified by:
removeFIBChangeListener in interface RoutingTable
changed
private void changed(RoutingInfo,
java.lang.String,
boolean)
getAdminDistance
private int getAdminDistance(java.lang.String)
setAdminDistance
public void setAdminDistance(java.lang.String,
int)
setDefaultAdminDistances
public void setDefaultAdminDistances()
config
public void config(com.renesys.raceway.DML.Configuration)
throws com.renesys.raceway.DML.configException
- Specified by:
config in interface com.renesys.raceway.DML.Configurable- Overrides:
config in class ProtocolSession
com.renesys.raceway.DML.configException
configRoute
private void configRoute(com.renesys.raceway.DML.Configuration,
boolean)
throws com.renesys.raceway.DML.configException
com.renesys.raceway.DML.configException
getID
public int getID()
add
public void add(java.lang.String,
NIC,
int)
- Specified by:
add in interface RoutingTable
add
public void add(java.lang.String,
NIC,
int,
java.lang.String)
- Specified by:
add in interface RoutingTable
add
public void add(java.lang.String,
NIC,
int,
int)
- Specified by:
add in interface RoutingTable
add
public void add(java.lang.String,
NIC,
int,
int,
java.lang.String)
- Specified by:
add in interface RoutingTable
addDefault
public void addDefault(NIC,
int)
- Specified by:
addDefault in interface RoutingTable
addDefault
public void addDefault(NIC,
int,
int)
- Specified by:
addDefault in interface RoutingTable
addDefault
public void addDefault(NIC,
int,
int,
java.lang.String)
- Specified by:
addDefault in interface RoutingTable
rep
public void rep(java.lang.String,
NIC,
int,
int,
java.lang.String)
- Specified by:
rep in interface RoutingTable
del
public void del(java.lang.String)
- Specified by:
del in interface RoutingTable
del
public void del(java.lang.String,
java.lang.String)
- Specified by:
del in interface RoutingTable
insertLeft
private void insertLeft()
insertRight
private void insertRight()
insert
public void insert(boolean[],
RoutingInfo)
replace
public void replace(boolean[],
RoutingInfo,
java.lang.String)
remove
public void remove(boolean[],
java.lang.String)
find
public RoutingInfo find(int)
- Specified by:
find in interface RoutingTable
find
public RoutingInfo find(int,
java.lang.String)
find
public RoutingInfo find(int,
int)
- Specified by:
find in interface RoutingTable
find
public RoutingInfo find(int,
int,
java.lang.String)
findBest
public RoutingInfo findBest(int)
- Specified by:
findBest in interface RoutingTable
findBest
public RoutingInfo findBest(int,
int)
- Specified by:
findBest in interface RoutingTable
settopnet
private void settopnet()
nhi2bytes
public static int nhi2bytes(java.lang.String,
byte[],
int)
bytes2nhi
public static int bytes2nhi(java.lang.StringBuffer,
byte[],
int)
ipprefix2bytes
public static int ipprefix2bytes(int,
int,
byte[],
int)
bytes2ipprefix
public static int bytes2ipprefix(java.lang.StringBuffer,
byte[],
int)
ip2bytes
private int ip2bytes(int,
byte[],
int,
boolean)
bytes2ip
public static int bytes2ip(java.lang.StringBuffer,
byte[],
int)
toBytes
public int toBytes(byte[],
int,
boolean)
toBytesHelper
private int[] toBytesHelper(byte[],
int,
boolean,
RtgTblNode,
int,
int)
approxBytes
public int approxBytes()
approxBytesHelper
private int approxBytesHelper(int,
RtgTblNode,
int)
bytes2str
public static int bytes2str(java.lang.StringBuffer,
byte[],
int,
java.lang.String,
boolean)
toString
public java.lang.String toString()
- Overrides:
toString in class java.lang.Object
toString
public java.lang.String toString(java.lang.String,
boolean)
print
public void print()
- Specified by:
print in interface RoutingTable
print
public void print(java.lang.String)
print
public void print(java.lang.String,
boolean)
preorderTraversal
private java.lang.String preorderTraversal(java.lang.String,
java.lang.String,
boolean,
RtgTblNode,
int)
dump
private void dump(FIBChangeListener)
dump
private void dump(FIBChangeListener,
RtgTblNode)
push
public boolean push(ProtocolMessage,
ProtocolSession)
- Specified by:
push in class ProtocolSession
clearTable
public void clearTable()