In this lesson, we will focus on Cisco LISP. We will learn what is LISP and the details of this protocol. LISP is the abbreviation of Location ID Separation Protocol or Locator ID Separation Protocol. This mapping and encapsulation protocol has created to solve routing scalability issues because of the growing routing table of Internet. LISP has developed by Cisco but it is not a Cisco proprietary protocol. Locator ID Separator Protocol is an open standard which has explained with RFC 6830.
You can DOWNLOAD Protocol Cheat Sheets!
Table of Contents
Internet consists of a lot of prefixes. These prefixes are stored in the routing table of Internet. Today there are more than 800.000 prefixes on Internet routing table and it is growing. Such a big growth has caused some scalability issues on Internet and to overcome this issue Cisco has developed LISP (Locator ID Separator Protocol). Cisco LISP has developed by Cisco but it is not a Cisco proprietary protocol. It is a standard protocol.
When we use standard IPv4 or IPv6 addresses without LISP, these addresses show both the location and the identity of the device. In other words, location and identity are combined in traditional IP system. This causes more job on routing system. Whenever a device needs to move from one location to another, its IPv4 or IPv6 addresses need to be change too. This is not scalable for today’s extremely growing Internet. With Locator ID Separator Protocol, there is no need for this change. But how? How LISP solve this scalability issue? To understand this better, let’s talk about the mechanism of Cisco LISP.
In traditional IP Scheme, there is no separation between location and identity. LISP mechanism separates the location and identity of a device through two different parts. These parts are given below:
EID is the abbreviation of Endpoint Identifier. The address assigned to end hosts like PCs, printers etc.
RLOC is the abbreviation of Routing Locator. The address of the router to which end hosts are connected.
By using LISP, whenever a device moves from one location to another, its EID, IPv4 or IPv6 address does not changed, but its RLOC is changed. This means that a movement does not change the identity of a device. This mechanism reduces the number of changes. Cisco LISPuses EID to RLOC mappings which matches EIDs to RLOCs. Here, EIDs are end devices and the RLOCs are the routers that these end points are connected.
In traditional IP routing, all the prefixes are installed to the routing table. But with Cisco LISP, there is no need to do this. With LISP, EID to RLOC mapping database is created. And whenever a gateway needs RLOC of an EID, it requests from this database.
There are different roles of some routers for EID to RLOC mappings in a LISP enabled network. These roles are given below:
Map Server (MS) is the repository of the EID to RLOC mappings. Every RLOC sends its connected EID here as EID to RLOC mappings with Map Register messages. And Map Server (MS) replies with Map Notify message. Below, you can see this messaging mechanism which shows how to register an EID to RLOC mappings to Map Server (MS).
Map Resolver (MR) is the router which answers the mapping requests. When Map Resolver (MR) receives a Map Request, it checks this EID to RLOC mapping in its database and replies with Map Reply. You can see this messaging below.
If there is no entry about the requested mapping, then Map Resolver (MR) sends this request to Map Server (MS). MS send this request directly to ETR. ETR replies with Map Reply.
MR/MS is the router which combines both roles. This solution is used often and it is mainly good for small networks.
In this Cisco LISP mechanism, there are other LISP routers and they have different roles. These routers and roles are given below:
Ingress Tunnel Router (ITR) is the router which encapsulates IP packet through the tunnel and create LISP packet. On this router, EID remains and the RLOC addresses are changed. ITR is responsible to find EID to RLOC mappings.
Egress Tunnel Router (ETR) is the router which decapsulates IP packet as the last router. With this process, EID appears again.
If there is a router which behaves both ITR and ETR, then it is called Tunnel Router (xTR).
LISP provides not only scalable routing but also efficient multihoming and traffic engineering opportunity with this efficient mechanism.
In a Cisco LISP Environment, there are three environments. These are given below:
LISP Sites are the sites in which EIDs are located.
Non-LISP Sites are the sites in which RLOCs are located.
LISP Mapping Service is the part responsible with EID to RLOC mapping.
Cisco LISP mechanism is basically similar to DNS (Doman Name System) mechanism. As you know, DNS resolves host names to IP addresses. With this mechanism, we do not need to write the IP address of a website to the browser. Instead of IP address, we wrote the memorable hostname of a website and DNS resolves this hostname to IP address. LISP does the same. But here the mapping is done between EIDs and RLOCs. LISP maps EIDs to RLOCS.
To explain LISP mechanism better, let’s give an example. In this example, we will send a packet from one end to another end in a network which uses Location ID Separator Protocol.
Above, we have talked about Cisco LISP Sites. How about non-LISP sites? How can we manage interoperation between LISP sites and Non-LISP sites. We can do this by using Proxy Ingress Tunnel Router (PITR) and Proxy Egress Tunnel Router (PETR).
Proxy Ingress Tunnel Router (PITR) is the LISP router which receives packets from non-LISP sites and encapsulates it to the LISP sites.
Proxy Egress Tunnel Router (PETR) is the LISP router which de decapsulates packets from LISP sites and send them to non-LISP sites.
These two device can be combined in one device and it is called PxTR.
Lastly, let’s talk about LISP Header. AS we have mentioned before, LISP is an encapsulation. Beside it uses LISP Header for LISP operation. Below, you can find the fields of LISP header in this encapsulation process.