LSDB DataSet » History » Revision 7
      « Previous |
    Revision 7/17
      (diff)
      | Next »
    
    Laqin Fan, 02/28/2017 09:13 AM 
    
    
LSDB DataSet¶
LSDB datasets are published in the namespace /$ROUTER_NAME/lsdb/ or '/localhost/nlsr/lsdb':
LSAs¶
All LSAs have 3 fields in common represented by an LsaInfo block:
LsaInfo := LSA-TYPE TLV-LENGTH
             OriginRouter
             SequenceNumber
             ExpirationPeriod?
OriginRouter := ORIGIN-ROUTER-TYPE TLV-LENGTH
                  Name
SequenceNumber := SEQUENCE-NUMBER-TYPE TLV-LENGTH
                    nonNegativeInteger
ExpirationPeriod is the remaining lifetime of an LSA or omitted if it's infinity.
Adjacency LSAs¶
All Adjacency LSAs in the LSDB are published as a Status Dataset at /$ROUTER_NAME/lsdb/adjacencies or '/localhost/nlsr/lsdb/adjacencies'.
AdjacencyLsa := ADJACENCY-LSA-TYPE TLV-LENGTH
                  LsaInfo
                  Adjacency+
Adjacency := ADJACENCY-TYPE TLV-LENGTH
               Name
               Uri
               Cost
Coordinate LSAs¶
All Coordinate LSAs in the LSDB are published as a Status Dataset at /$ROUTER_NAME/lsdb/coordinates or '/localhost/nlsr/lsdb/coordinates'.
CoordinateLsa := COORDINATE-LSA-TYPE TLV-LENGTH
                   LsaInfo
                   HyperbolicRadius
                   HyperbolicAngle
Double := DOUBLE-TYPE TLV-LENGTH(=8)
            double-precision floating-point number in binary64 format as defined in IEEE 754
HyperbolicRadius := HYPERBOLIC-RADIUS-TYPE TLV-LENGTH
                      Double                      
HyperbolicAngle := HYPERBOLIC-ANGLE-TYPE TLV-LENGTH
                     Double
Name LSAs¶
All Name LSAs in the LSDB are published as a Status Dataset at /$ROUTER_NAME/lsdb/names or '/localhost/nlsr/lsdb/names'.
NameLsa := NAME-LSA-TYPE TLV-LENGTH
             LsaInfo
             Name*
LSDB Status¶
All LSAs in the LSDB are published as a Status Dataset at /$ROUTER_NAME/lsdb/list or '/localhost/nlsr/lsdb/list'.
The LSAs in the LSDB are organized and represented as an LsdbStatus block:
LsdbStatus := LSDB-STATUS-TYPE TLV-LENGTH
                AdjacencyLsa*
                CoordinateLsa*
                NameLsa*
TLV-TYPE assignments¶
| Type | Assigned value | Assigned value (hex) | 
|---|---|---|
| LsaInfo | 128 | 0x80 | 
| OriginRouter | 129 | 0x81 | 
| SequenceNumber | 130 | 0x82 | 
| AdjacencyLsa | 131 | 0x83 | 
| Adjacency | 132 | 0x84 | 
| CoordinateLsa | 133 | 0x85 | 
| Double | 134 | 0x86 | 
| HyperbolicRadius | 135 | 0x87 | 
| HyperbolicAngle | 136 | 0x88 | 
| NameLsa | 137 | 0x89 | 
| LsdbStatus | 138 | 0x8A | 
| ExpirationPeriod | 139 | 0x8B | 
| Cost | 140 | 0x8C | 
| Uri | 141 | 0x8D | 
Updated by Laqin Fan over 8 years ago · 17 revisions