LISP是什麼?
LISP是基於網路映射-封裝的協議,其優點在於無需對主機協議棧做任何修改,也不需要對網路中現有的基礎設定做大規模改進,只需添加相對較少的具有特殊功能的隧道路由器以實現映射-封裝。
LISP採取了「Jack Up」的架構,透過在原始的IP網路層下添加路由層(原始的IP網路層標識節點身份訊息,添加的路由層標識節點位置資訊)實現「身份與位置分離」的想法。
LISP的設計旨在提高站點的多宿性,增強ISP多家鄉技術。在LISP中,IP位址的使用與傳統的網路無異。 LISP的IP位址被分為兩類,一類是終端識別(Endpoint Identifiers, EIDs),另一類則是位置識別(Routing Locators, RLOCs)。 EID用於標識主機身份,其長度為32位元(IPv4)或128位元(Ipv6),用於填寫LISP裡層包頭的來源位址或目的位址。
來源主機取得目的主機的EID與現有網際網路的實作方式無異,例如透過DNS查詢或SIP訊號交換。
來源主機所在的站點擁有自己的EID前綴塊,當來源主機請求EID時,站點透過現有的機制分配EID給來源主,EID也可作為來源主機的「本機」IP位址。
由於EID標識主機身份,EID必須全球唯一且不能用作RLOC。值得一提的是,EID塊可以依照層次劃分、獨立於拓樸或易於映射系統操作的方式進行分配。
另外,EID位址區塊的分配可以根據本地佔地結構,以方便站點內資料包的路由;但站點內的結構對外不可見。
EID不是全球可路由位址,其路由範圍僅限於本地站點。
RLOC用於標識主機位置,其長度為32位元(IPv4)或128位元(Ipv6),用於填入LISP外層包頭的來源位址或目的位址,它是gress Tunnel Router, ETR)的位址,是EID到RLOC的對應結果。
RLOC通常是由業者依照拓樸編址,它也是PA位址,易於聚合,是全球可路由位址。一台ETR上可以分配多個RLOC位址,使得一個EID可以對應多個RLOC,以實現多家鄉技術和流量工程技術。
在LISP中,為了實現映射-封裝技術,引進了兩個新的實體-入口隧道路由器(Ingress Tunnel Router, ITR)和出口隧道路由器(Egress Tunnel Router, ETR)。
ITR是來源主機發送資料的預設閘道。當來源主機需要向站點外的傳送資料時,資料將傳送至ITR並由ITR進行封裝。
ITR首先查看來源主機所傳送封包的目的EID,並執行EID-RLOC的對應。
之後,ITR將所獲得的RLOC位址作為外層包頭目的位址以及自身的RLOC位址作為外層包頭的來源位址封裝到來源主機所傳送的封包上並依照路由表轉送出去。
簡而言之,ITR接收主機發送的資料包並進行封裝,並向更廣闊的網路轉送。 ETR是LISP封包外層包頭的目的位址所指向的路由器。
ETR收到發送給自己的LISP資料包後,將資料包解封裝,把外包頭剝離,並根據內包頭的目的EID轉送資料。
另外,ETR也負責向映射系統註冊本站點內的EID。
LISP的基本規則如下:
1. 主機所傳送的資料包,其目的位址只能是EID。
主機對EID-RLOC的對應完全透明,並認為以EID作為目的位址可以穿越網路到達對端節點。
LISP路由器截獲本站點內以EID為目的位址的封包,封裝RLOC位址並將其轉送至EID不可路由的核心網,最終到達目的節點,但此操作並未改變現有主機傳送封包的過程。
2. EID是分配給主機IP位址。
3. LISP路由器通常只處理RLOC位址。
4. RLOC位址通常指派給路由器。
5. 由路由器發起的封包,其來源位址可以是EID也可以是RLOC。
當路由器充當主機的時候,其封包來源位址為EID。
但此時路由器所使用的EID不可以在作為RLOC使用。 EID僅可以在自己所屬的站點路由。
6. EID可以依層次劃分方便管理,同時,也能促進映射系統的可擴展性。 EID的層次劃分獨立於網路拓樸。 7. EID也可依照適合本地路由的方式組織。
LISP的協定流程當LISP域內來源主機發起通訊時,與傳統網際網路一致,來源主機首先查詢DNS系統並取得目的主機的EID。
來源主機將自己的EID作為資料的來源位址、目的主機的EID作為目的位址傳送資料至ITR。
ITR檢查EID-RLOC快取是否有相關條目,如果存在,ITR直接封裝封包並轉送至網路中,外層包頭來源位址為ITR的RLOC,目的位址為目的主機所對應的ETR的RLOC。
資料到達目的主機所屬的ETR後,由此ETR對資料包進行解封裝,移除外層包頭並依目的主機的EID轉送。 ITR如果沒有對應的快取條目,ITR會向映射系統發送Map Request訊息,查詢對應映射資訊。 Map Request訊息被映射系統轉送到目的主機所屬的ETR上,並由該ETR透過發送Map Reply訊息回覆ITR目的主機EID所對應的RLOC。
當ITR收到Map Reply後,快取目的主機EID-RLOC的映射條目。此後,ITR/ETR所傳送的資料包不再經過映射系統,直接透過核心網路傳送。
另外,ETR也可根據Map Request資訊快取來源主機的EID-RLOC來映射條目。
示意圖如下:

Leave a Reply