Project

General

Profile

LSDB DataSet » History » Version 1

Vince Lehman, 11/13/2014 01:12 PM

1 1 Vince Lehman
DataSet
2
=======
3
## LSAs
4
5
    LsaInfo := LSA-TYPE TLV-LENGTH
6
                 OriginRouter
7
                 SequenceNumber
8
                 ExpirationPeriod?
9
10
    OriginRouter := ORIGIN-ROUTER-TYPE TLV-LENGTH
11
                      Name
12
13
    SequenceNumber := SEQUENCE-NUMBER-TYPE TLV-LENGTH
14
                        nonNegativeInteger
15
16
ExpirationPeriod is the remaining lifetime of an LSA or omitted if it's infinity.
17
18
## Adjacency LSAs
19
20
All Adjacency LSAs in the LSDB are published as a [[NFD:StatusDataset|Status Dataset]] at `/$ROUTER_NAME/lsdb/adjacencies`.
21
22
    AdjacencyLsa := ADJACENCY-LSA-TYPE TLV-LENGTH
23
                      LsaInfo
24
                      Adjacency+
25
26
    Adjacency := ADJACENCY-TYPE TLV-LENGTH
27
                   Name
28
                   Uri
29
                   Cost
30
31
## Coordinate LSAs
32
33
All Coordinate LSAs in the LSDB are published as a [[NFD:StatusDataset|Status Dataset]] at `/$ROUTER_NAME/lsdb/coordinates`.
34
35
    CoordinateLsa := COORDINATE-LSA-TYPE TLV-LENGTH
36
                       LsaInfo
37
                       HyperbolicRadius
38
                       HyperbolicAngle
39
40
    Double := DOUBLE-TYPE TLV-LENGTH
41
                best representation?
42
43
    HyperbolicRadius := HYPERBOLIC-RADIUS-TYPE TLV-LENGTH
44
                          Double                      
45
46
    HyperbolicAngle := HYPERBOLIC-ANGLE-TYPE TLV-LENGTH
47
                         Double
48
49
50
## Name LSAs
51
52
All Name LSAs in the LSDB are published as a [[NFD:StatusDataset|Status Dataset]] at `/$ROUTER_NAME/lsdb/names`.
53
54
    NameLsa := NAME-LSA-TYPE TLV-LENGTH
55
                 LsaInfo
56
                 Name+
57
58
## LSDB Dataset
59
60
All LSAs in the LSDB are published as a [[NFD:StatusDataset|Status Dataset]] at `/$ROUTER_NAME/lsdb/list`.
61
62
The LSAs in the LSDB are organized and represented as an **LsdbStatus** block:
63
64
    LsdbStatus := LSDB-STATUS-TYPE TLV-LENGTH
65
                    AdjacencyLsa*
66
                    CoordinateLsa*
67
                    NameLsa*
68
69
70
71
## TLV-TYPE assignments
72
73
Type                                        | Assigned value    | Assigned value (hex)
74
------------------------------------------- | ----------------- | --------------------
75
LsaInfo                                     | 128               | 0x80
76
OriginRouter                                | 129               | 0x81
77
SequenceNumber                              | 130               | 0x82
78
AdjacencyLsa                                | 131               | 0x83
79
Adjacency                                   | 132               | 0x84
80
CoordinateLsa                               | 133               | 0x85
81
Double                                      | 134               | 0x86
82
HyperbolicRadius                            | 135               | 0x87
83
HyperbolicAngle                             | 136               | 0x88
84
NameLsa                                     | 137               | 0x89
85
LsdbStatus                                  | 138               | 0x8A