Locator ID separation protocol
- entities
- EID: endpoint ID
- RLOC: routing locator
- xTR
- ITR: ingress tunnel router
- ETR: egress tunnel router
- proxy xTR: connection with non-LISP
- MS: map server
- MR: map resolver
- message
- map-request
- type = 0x1
- probing
- receive EID-RLOC mapping
- solicit-map-request (SMR)
- demand map-request from ITR to refresh cache
- map-reply
- type = 0x2
- map-register
- type = 0x3
- map-notify
- type = 0x4
- map-request
(config)# router lisp
; MS
(config-router-lisp)# site <SITE>
(config-router-lisp-site)# authentication-key <KEY>
(config-router-lisp-site)# eid-prefix <PREFIX>
; MS
(config-router-lisp)# ipv4 map-server
; MR
(config-router-lisp)# ipv4 map-resolver
; xTR
(config-router-lisp)# ipv4 etr map-server <IP> key <KEY>
(config-router-lisp)# ipv4 etr
(config-router-lisp)# ipv4 itr map-resolver <IP>
(config-router-lisp)# ipv4 itr
; ETR, priority: lower ≡ better
(config-router-lisp)# database-mapping <PREFIX> <ETR> priority <N> weight <M>
Map-request (0x1)
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 0x1 |A|M|P|S|p|s| Reserved | IRC | Record Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ Nonce /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source-EID-AFI | Source EID Address (var len) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ITR-RLOC-AFI 1 | ITR-RLOC Address 1 (var len) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ITR-RLOC-AFI n | ITR-RLOC Address n (var len) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+--+
| Reserved | EID mask-len | EID-Prefix-AFI | \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ > record
| EID-Prefix (variable length) | /
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+--+
\ \
/ Map-Reply Record /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
A: authoritative, 1 ≡ reply from ETR, not MS, is required
M: map-data-present, 1 ≡ map-reply included
P: probe, 1 ≡ confirm reachability
S: solicit-map-request (SMR)
p: proxy ITR, 1 ≡ request from proxy ITR
s: SMR-invoked, 1 ≡ reply to SMR
IRC: ITR-RLOC count
Nonce: 24 or 64 bits
Source EID: host IP, whose packet triggered map-request
Map-reply record may be included for ETR to cache it
Map-reply (0x2), map-register (0x3), map-notify (0x4)
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type |P|E|S| Reserved |M| Record Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ Nonce /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-----------+
| Record TTL | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| Locator Count | EID mask len | ACT |A| Reserved | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| Rsvd | Map-Version Number | EID-Prefix-AFI | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
\ \ |
/ EID prefix / \
\ \ > Record
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+--+ /
| Priority | Weight | M Priority | M Weight | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |
| Unused |L|p|R| Locator AFI | \ |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ > RLOC |
\ \ / |
/ Locator / | |
\ \ | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+--+--------+
P: probe
E: site enabled for Echo-nonce Locator Reach algorithm
S: security, 1 ≡ auth trailer is appended to packet
M: 1 ≡ want map-notify (acknowledge map-register)
Nonce: 24 or 64 bits
Record TTL: mins
- 0 ≡ purge from cache
- 0xF..F ≡ ITR decides on its own, how long to cache
ACT: used, when RLOC is not present (Locator count = 0)
- 0: no action ≡ drop packet, do not update cache
- 1: forward natively
- 2: send-map-sequest
- 3: drop
A: authoritative, 1 ≡ reply from ETR, not MS, is required
M priority/weight: multicast
Priority: 255 ≡ do not use RLOC
L: local RLOC, 0 ≡ reply from proxy ITR
p: reply to probe from Locator, may differ from source IP
R: 1 ≡ sender has route to Locator (≡ ETR can be used for forwarding), useful on site partitioning
Mobility
- detect change using GARP, RARP, IP traffic
- updates MS and proxy ITR