LSDB DataSet » History » Version 16
Davide Pesavento, 05/09/2025 04:56 PM
Minor formatting fixes
1 | 12 | Ashlesh Gawande | # LSA TLV encoding for NLSR-to-NLSR and NLSR-to-NLSRC (LSDB DataSet) communication |
---|---|---|---|
2 | 1 | Vince Lehman | |
3 | 16 | Davide Pesavento | LSDB datasets are published in the namespace `/$ROUTER_NAME/lsdb` and `/localhost/lsdb`. |
4 | 12 | Ashlesh Gawande | |
5 | 1 | Vince Lehman | ## LSAs |
6 | 2 | Vince Lehman | |
7 | All LSAs have 3 fields in common represented by an **LsaInfo** block: |
||
8 | 1 | Vince Lehman | |
9 | LsaInfo := LSA-TYPE TLV-LENGTH |
||
10 | 12 | Ashlesh Gawande | Name |
11 | 1 | Vince Lehman | SequenceNumber |
12 | 12 | Ashlesh Gawande | ExpirationTime |
13 | 1 | Vince Lehman | |
14 | SequenceNumber := SEQUENCE-NUMBER-TYPE TLV-LENGTH |
||
15 | 16 | Davide Pesavento | NonNegativeInteger |
16 | 1 | Vince Lehman | |
17 | 12 | Ashlesh Gawande | ExpirationTime(Point) is the time according to the sender when the LSA will expire. |
18 | 1 | Vince Lehman | |
19 | ## Adjacency LSAs |
||
20 | 12 | Ashlesh Gawande | |
21 | 16 | Davide Pesavento | All Adjacency LSAs in the LSDB are published as a [[NFD:StatusDataset|Status Dataset]] at `/$ROUTER_NAME/lsdb/adjacencies` and `/localhost/lsdb/adjacencies`. |
22 | 1 | Vince Lehman | |
23 | AdjacencyLsa := ADJACENCY-LSA-TYPE TLV-LENGTH |
||
24 | LsaInfo |
||
25 | Adjacency+ |
||
26 | |||
27 | Adjacency := ADJACENCY-TYPE TLV-LENGTH |
||
28 | Name |
||
29 | Uri |
||
30 | Cost |
||
31 | |||
32 | ## Coordinate LSAs |
||
33 | 12 | Ashlesh Gawande | |
34 | 16 | Davide Pesavento | All Coordinate LSAs in the LSDB are published as a [[NFD:StatusDataset|Status Dataset]] at `/$ROUTER_NAME/lsdb/coordinates` and `/localhost/lsdb/coordinates`. |
35 | 1 | Vince Lehman | |
36 | CoordinateLsa := COORDINATE-LSA-TYPE TLV-LENGTH |
||
37 | LsaInfo |
||
38 | HyperbolicRadius |
||
39 | 10 | Ashlesh Gawande | HyperbolicAngle+ |
40 | 1 | Vince Lehman | |
41 | Double := DOUBLE-TYPE TLV-LENGTH(=8) |
||
42 | double-precision floating-point number in binary64 format as defined in IEEE 754 |
||
43 | 4 | Vince Lehman | |
44 | 1 | Vince Lehman | |
45 | HyperbolicRadius := HYPERBOLIC-RADIUS-TYPE TLV-LENGTH |
||
46 | Double |
||
47 | |||
48 | HyperbolicAngle := HYPERBOLIC-ANGLE-TYPE TLV-LENGTH |
||
49 | Double |
||
50 | |||
51 | ## Name LSAs |
||
52 | 12 | Ashlesh Gawande | |
53 | 16 | Davide Pesavento | All Name LSAs in the LSDB are published as a [[NFD:StatusDataset|Status Dataset]] at `/$ROUTER_NAME/lsdb/names` and `/localhost/lsdb/names`. |
54 | 1 | Vince Lehman | |
55 | 16 | Davide Pesavento | NameLsa := NAME-LSA-TYPE TLV-LENGTH |
56 | LsaInfo |
||
57 | PrefixInfo* |
||
58 | 1 | Vince Lehman | |
59 | 15 | Alexander Lane | PrefixInfo := PREFIX-INFO-TYPE TLV-LENGTH |
60 | 16 | Davide Pesavento | Name |
61 | Cost |
||
62 | 15 | Alexander Lane | |
63 | 1 | Vince Lehman | ## TLV-TYPE assignments |
64 | |||
65 | Type | Assigned value | Assigned value (hex) |
||
66 | ------------------------------------------- | ----------------- | -------------------- |
||
67 | LsaInfo | 128 | 0x80 |
||
68 | SequenceNumber | 130 | 0x82 |
||
69 | AdjacencyLsa | 131 | 0x83 |
||
70 | Adjacency | 132 | 0x84 |
||
71 | CoordinateLsa | 133 | 0x85 |
||
72 | Double | 134 | 0x86 |
||
73 | HyperbolicRadius | 135 | 0x87 |
||
74 | HyperbolicAngle | 136 | 0x88 |
||
75 | NameLsa | 137 | 0x89 |
||
76 | LsdbStatus | 138 | 0x8A |
||
77 | 12 | Ashlesh Gawande | ExpirationTime | 139 | 0x8B |
78 | 1 | Vince Lehman | Cost | 140 | 0x8C |
79 | Uri | 141 | 0x8D |
||
80 | 14 | Alexander Lane | PrefixInfo | 146 | 0x92 |
81 | 12 | Ashlesh Gawande | |
82 | 16 | Davide Pesavento | See [[Routing_Table_Dataset|Routing Table Dataset]] for other assignments. |