IS-IS(中間系統到中間系統協議):基于鏈路狀態并使用最短路徑優先演算法進行路由計算的一種IGP協議 基于802.3封裝
IS-IS最初是國際化標準組織ISO為它的無連接網路協議CLNP設計的一種動態路由協議
為了提供對IP的路由支持
IETF在RFC1195中對IS-IS進行了擴充和修改,使它能夠同時應用在TCP/IP和OSI環境中,修訂后的IS-IS協議被稱為集成化的IS-IS
作業在資料鏈路層,路由收斂速度快,結構清晰,適合于大規模網路
場景應用
園區網:區域多樣、策略多變、調度精細
特點:
應用型網路,主要面向企業網用戶,
路由器數量偏少,動態路由的LSDB庫容量相對偏少,三層路由域相對偏少,
有出口路由的概念,對內部外部路由劃分敏感,
地域性跨度不大,帶寬充足,鏈路狀態協議開銷對帶寬占用比偏少,
路由策略和策略路由應用頻繁多變,需要精細化的路由操作,
OSPF的多路由型別(內部/外部),多區域型別(骨干/普通/特殊),開銷規則優良(根據帶寬設定),網路型別多樣(最多五種型別)的特點在園區網得到了極大的發揮

骨干網(運營商網路):區域扁平、收斂極快、承載龐大
特點:
服務型網路,由ISP(互聯網服務提供商)組建,并為終端用戶提供互聯服務,
路由調度占據絕對統治地位,路由器數量龐大,
架構層面扁平化,要求IGP作為基礎路由為上層BGP協議服務,
LSDB規模宏大,對鏈路收斂極度敏感,線路費用高昂,
追求簡單高效,擴展性高,滿足各種客戶業務需求(IPV6/IPX),
IS-IS的快速演算法(PRC得到加強),簡便報文結構(TLV),快速鄰居關系建立,大容量路由傳遞(基于二層開銷低)等一系列特點在骨干網有著天然的優勢

歷史起源:


IS-IS屬于內部網關協議,用于自治系統內部
作業程序:
1.建立鄰居關系:通過HELLO包互動并協商各種引數,包括電路型別(level-1/level-2),Hold time,網路型別,支持協議,區域號,系統ID,PDU長度,介面IP等
分為兩種:兩次和三次握手,P2P網路是支持兩次和三次握手,MA網路僅支持三次握手
2.同步LSDB資料庫(鏈路資訊交換):與OSPF不同,ISIS互動鏈路狀態的基本載體不是LSA,而是LSP;互動的程序沒有OSPF協議那樣經歷了多個階段,主要是通過CSNP和PSNP兩種協議報文來同步,請求以及確認鏈路狀態資訊(承載的是鏈路狀態資訊摘要),而鏈路狀態資訊的詳細拓撲和路由資訊是由LSP報文傳遞
1)P2P網路:先描述,再同步
2)MA網路:直接同步,然后通過DIS來保障資料庫同步的完整性
3.執行SPF路由計算:SPF計算和OSPF基本一樣的,但ISIS演算法分離了拓撲結構和IP網段,加快了網路收斂速度(ISPF演算法)
ISIS內部優先級:
level-1:15
level-2:18
建立鄰居需要協商的引數:掩碼、MTU、sys id、area id、最大區域地址數
如何協商區域地址:只要攜帶的區域地址有一個相同就能建立鄰居
不需要協商hold time
地址結構:2位為1B

IDP:相當于IP地址的網路號
DSP:相對于IP地址的子網號和主機地址,由High Order DSP、System ID和SEL三個部分組成
AREA ID:區域id,標識一個區域,相當于OSPF的區域標號
SYSTEM ID:系統id,標識一臺設備,固定6位元組,每臺設備最多3個相同的系統id
SEL:上層協議識別符號
路由器分類(ISIS基于路由器劃磁區域):
Level-1路由器(只能創建level-1的LSDB),性能相對較差,位于Level-1區域相當于OSPF的非骨干區域,相當于IR
Level-1路由器必須通過Level-1-2路由器才能連接至其他區域
Level-2路由器(只能創建level-2的LSDB),性能較強,Level-2區域相當于OSPF的骨干區域,相當于BR
所有Level-2級別(即形成Level-2鄰居關系)的路由器組成路由域的骨干網,負責在不同區域間通信,路由域中Level-2級別的路由器必須是物理連續的,以保證骨干網的連續性,只有Level-2級別的路由器才能直接與區域外的路由器交換資料報文或路由資訊
Level-1-2路由器(路由器默認的型別,能同時創建level-1和level-2的LSDB ),性能強,用于連接Level-1區域和Level-2區域,類似于OSPF的ABR
默認為Level-1-2路由器,連接骨干區域的路由器
Level-1路由器的路由特點:
? 只擁有Level-1的鏈路狀態資料庫,
? 其鏈路狀態資料庫中只有本區域路由器LSP,
? 其路由表里沒有其他區域的路由資訊,
? 其路由表里都有一條默認路由,下一跳是指向到Level-1-2路由器,
Level-2路由器的路由特點:
? Level-2路由器只有Level-2的鏈路狀態資料庫,
? 其LSDB中有骨干區域路由器的LSP,但是沒有Level-1路由器產生的LSP,
? 路由表里面有整個網路的路由資訊,
Level-1-2路由器的路由特點:
? Level-1-2路由器同時擁有Level-2和Level-1的鏈路狀態資料庫,
? Level-1資料庫包含本區域的LSP,Level-2資料庫包含骨干區域LSP,
? 在自己產生的Level-1的LSP中設定了ATT位元位為1,
? 路由表里面有整個網路的路由資訊,
默認有將level-1的路由引入level-2的命令
鄰居關系的建立:
Level-1路由器:只能與同一區域的Level-1路由器/Level-1-2路由器建立Level-1路由器鄰居關系,維護Level-1路由器的LSDB
不能跨區域建立鄰居關系
Level-2路由器:只能與同一區域/不同區域的Level-2路由器/不同區域的Level-1-2路由器建立Level-2的路由器鄰居關系,維護Level-2LSDB
Level-1-2路由器:可以與同一區域的Level-1路由器/Level-1-2路由器建立Level-1鄰居關系,鄰居直接維護Level-1LSDB,可以與同一區域/不同區域的Level-2路由器建立Level-2鄰居關系,維護Level-2LSDB,與不同區域的Level-1-2路由器建立Level-2鄰居關系;
ISIS的區域劃分:與OSPF不一樣,OSPF是基于路由器的介面劃分,ISIS是基于一臺路由器劃磁區域
ISIS區域分兩種:骨干區域(L2)
非骨干區域(L1)
ISIS的報文封裝:封裝于資料鏈路層,所以傳輸中可能會存在丟包現象,因為沒有保障可靠協議支持,OSPF封裝于IP協議,協議號89
ISIS報文:

1.Hello PDU:用于發現,建立,維護鄰居關系,
與OSPF一樣,周期性發送,普通路由器發送時間間隔是10s,死亡時間(hold time)30s,如果30s內沒有收到鄰居發送過來的hello報文,則鄰居報文中斷,DIS路由器(相當于OSPF的DR)發送hello報文時間間隔為10/3s(3.3333…),其他路由器連續三次沒有收到來自DIS路由器的hello報文,則認為DIS故障,重新選舉新的DIS
為什么DIS發送hello報文的時間間隔是10/3s?:為了快速檢測出DIS故障
P2P hello PDU:用于點到點網路
LAN hello PDU:用于MA網路
level-1 LAN IIH:用于MA網路中的level-1鄰居,目的組播MAC為:0180-c200-0014
level-2 LAN IIH:用于MA網路中的level-2鄰居,目的組播MAC為:0180-c200-0015
2.LSP PDU:用于描述鏈路狀態資訊
實節點LSP
偽節點LSP(只在廣播鏈路存在)
LSP的重繪間隔為15分鐘;老化時間為20分鐘,
但是一條LSP的老化除了要等待20分鐘外,還要等待60秒的零老化時延;LSP重傳時間為5秒;LSP超時后從網路中清除
以下三個標志組合起來用來唯一標識一個LSP
Source ID:產生該LSP的結點或偽結點的Sys lD ,8位元組
Pseudonode ID:對普通LSP為0 ; 對 Pseudonode LSP 非 0, 這 是 區 分 一 個 LSP 是 否 是 偽 結 點 產 生 的 標 志 ;
LSP number:分 片 號 ( 產 生 的 LSP 大 于 LSP MTU 將 分 片 ) 最多256個分片
LSP id 例 子 : 00C0 . 0040 . 1234 . 01 一 00 , 其 中 :
SourcelD: 00C0 . 0040 . 1234
Pseudonode ID: 01 ( 表 明 為 偽 結 點 產 生 的 )
分 片 號 . 0
LSP Sequence Number.
Sequence Number: 每 個 LSP ( 含 LSP 分 片 ) 都 有 一 個 自 己 的 序 列 號
當 路 由 器 啟 動ISIS時,自 己 產生 的 LSP 的 序 列 號 為 1
當 發 生 變 化 需 要 重 新 生 成 LSP 的 時 候 , 產 生 序 列 號 增 加 的 新 的 LSP 傳 播 出 去
較 大 的 序 列 號 意 味 著 LSP 較 新
3.SNP PDU:用于維護LSDB 的完整與同步,且為摘要資訊
CSNP PDU:完全序列號報文,用于描述LSDB,同步LSP,類似于OSPF中用于描述LSDB的DD報文,DIS周期性10s發送
level-1 CSNP PDU:用于level-1鄰居
level-2 CSNP PDU:用于level-2鄰居
PSNP PDU:部分序列號報文,用于請求或確認LSP PDU,類似于OSPF中的LSR或LSACK(確認只用于點到點網路,廣播網路無需確認)
level-1 PSNP PDU:用于level-1鄰居
level-2 PSNP PDU:用于level-2鄰居
鄰居關系建立:
1.P2P鏈路上,
兩次握手機制:
兩次握手只要路由器收到對端發來的Hello報文,就單方面宣布鄰居為up狀態,建立鄰居關系,容易存在單通風險
三次握手機制(默認):
通過三次發送P2P的IS-IS Hello PDU最終建立起鄰居關系,與廣播鏈路鄰居關系的建立情況相同
TLV:鄰居狀態
為了P2P網路型別使用三次握手建立鄰居,P2P hello 中增加了鄰居狀態TLV

2.廣播鏈路上,使用LAN IIH報文執行三次握手建立鄰居關系
當收到鄰居發送的Hello PDU報文里面沒有自己的system ID的時候,狀態機進入initialized
只有收到鄰居發過來的Hello PDU有自己的system ID才會up,排除了鏈路單通的風險,
廣播網路中鄰居up后會選舉DIS(虛節點),DIS的功能類似OSPF的DR(指定路由器)
DIS與偽節點:
DIS:指定中間系統(Designated IS)
偽節點:在廣播網路中由DIS創建的虛擬路由器
選舉DIS:在廣播網路,需要選舉DIS,在鄰居關系建立后,路由器會等待兩個Hello報文間隔再進行DIS的選舉
Hello報文中包含Priority 欄位(0-127,默認64)
選舉規則: Priority值最大的將被選舉為該廣播網的DIS
優先級相同,介面MAC地址較大的被選舉為DIS
MAC地址一樣,比較Systerm ID,大的為DIS
DIS發送Hello時間間隔默認為10/3秒,而其他非DIS路由器發送Hello間隔為10秒
搶占性:后期有新的Router加入到鏈路進來,如果優先級比DIS高是可搶占的,但是DR是不可搶占的
DIS的作用:
進行SPF計算時,簡化MA網路的邏輯拓撲
減少LSP/LSA的泛洪
保障LSP互動的可靠性
由DIS發送CSNP來同步鏈路的LSDB
DIS與DR的類比

鏈路狀態資訊的互動:

P2P先互動LSP再發CSNP
不同網路型別如何同步LSDB:
P2P網路中:鄰居關系建立后,立即給對端發送CSNP報文,若發現有沒同步的LSP條目則發起PSNP請求,而對端則回應LSP,收到LSP更新后要回PSNP作為收到LSP的回應,本端在發送LSP時會啟動重傳定時器,一旦定時器歸零后沒收到PSNP回應則會重新發送LSP并重新設定定時器,直到收到對端的PSNP回應
MA網路中:鄰居關系建立后,路由器等待LSP重繪定時器超時,然后將自己的LSP發往組播地址 (Level-1:01-80-C2-00-00-14;Level-2:01-80-C2-00-00-15),這樣網路上所有的鄰居都將收到該LSP,該網段中的DIS會把收到鄰居的LSP加入到LSDB中,并等待CSNP報文定時器超時 并發送CSNP報文,進行該網路內的 LSDB 同步, 鄰居收到DIS發來的CSNP報文,對比自己的LSDB資料庫,然后向DIS發送PSNP報 文請求自己沒有的LSP,DIS收到該PSNP報文請求后向鄰居發送對應的LSP進行LSDB的同步
路由演算法
SPF計算程序:
? 單區域LSDB同步完成
? 生成全網拓撲結構圖
? 以本節點為根生成最短路徑樹
? 默認跨越每個節點開銷一樣
IS-IS的計算特點:
? 在本區域內路由器第一次啟動的時候執行的是Full-SPF演算法,
? 后續收到的LSP更新,如果是部分拓撲的變化執行的iSPF計算,
? 如果只是路由資訊的變化,執行的就是PRC計算,
由于采用拓撲與網路分離的演算法,路由收斂速度得到了加強
ISIS開銷:
采用默認開銷,默認開銷均為10,不管鏈路帶寬高低,開銷都為10
配置命令:介面視圖下: isis cost
ISIS計算開銷的方式:
1.基于抖動(默認):華為只支持默認
Narrow模式(窄)(設備默認模式開銷都是10,手工配置介面開銷取值范圍為1~63),不適合大型網路(默認為窄)
Wide模式(寬)(設備默認模式開銷都是10,手工配置介面開銷取值范圍是1~16777215),適合大型網路
寬兼容窄
2.基于延遲
修改:協議視圖:cost-style + 模式
行程下加入auto-cost enable命令,Narrow模式和Wide模式都會參考介面帶寬大小計算開銷值,只是參考準則有少許差異
ISIS的區域與區域間的訪問:
骨干區域:所有的Level-2路由器和Level-1-2路由器構成一個連續的骨干區域(level-2區域)
Level-1-2路由器會將自己連接的Level-1區域的路由資訊放進Level-2的LSP中,再泛洪給骨干區域中的其他Level-1-2路由器和Level-2路由器,所以骨干區域中的Level-1-2路由器和Level-2路由器會知道整個IS-IS路由域的路由資訊
非骨干區域:所有連續的并且在同一個區域ID下的Level-1路由器和Level-1-2路由器構成一個非骨干區域(Level-1區域),Level-1區域只能連接到骨干區域,和其他的Level-1區域并不相連
1.骨干區域訪問非骨干區域:
level-1-2路由器將level-1路由向level-2區域傳遞,那么level-2路由器就會有去往所有level-1的路由
2.非骨干區域訪問骨干區域并且去訪問其他區域:
level-1訪問level-2區域,必須獲取level-2的路由,還有level-1想訪問其他level-1區域的路由,其他level-1區域的路由已經將全部發往level-2了,預設路由;
總結:
level-2區域去訪問level-1區域是通過明細路由訪問,因為level-1-2路由器會將level-1區域的路由向level-2區域傳遞,level-2區域的設備性能好,承載能力強
level-1去訪問level-2/其他level-1區域是通過預設路由訪問
該預設路由由Level-1-2路由器產生ATT位元置位為1的LSP發布給Level-1區域
預設下,Level-1-2路由器不會將其他Level-1區域以及Level-2區域的路由資訊引入到Level-1區域,這樣Level-1路由器不會學習到其他區域的路由資訊,只能通過指向Level-1-2路由器的預設路由訪問其他區域的目的地址,在Level-1區域中有兩臺或者兩臺以上Level-1-2路由器的時候,Level-1路由器訪問其他區域的目的地址可能無法選擇最佳路徑)-------可做路由滲透,將level-2路由引入level-1
路由滲透:指Level-1-2路由器將其他Level-1區域以及Level-2區域的路由資訊引入到Level-1區域
作用:
為了將其他Level-1區域以及Level-2區域的路由資訊通過Level-1-2路由器引入到Level-1區域,使Level-1路由器訪問其他區域,解決次優路徑
配置:
import-route level 2 into level 1
ISIS協議視圖下:attached-bit advertise never 關閉ATT位元位產生的預設路由,配合路由滲透使用
引入的Level-2路由,路由器不在重新發布出去
TLV編碼:
TLV 編 碼 方 式 :
TLV 即 type-length-value. TLV 編 碼 方 式 一 種 高 效 率 , 擴 展 性 好 的 協 議 報 文 編 碼 方 式 , 也 稱 為 CLVG 碼 (code-length-value)
T–Type 采 用 不 同 的 值 定 義 不 同 類 型
L—Length : 整 個 TLV 三 元 組 的 長 度
V-Value . 本 TLV 的 實 際 內 容 , 最 車 要 的 部 分
TLV 編 碼 的 優 點 :
可 擴 展 性 好 , 如 果 想 增 加 對 于 新 特 性 的 支 持 , 只 需 增 加 新 的 TLV 類 型
ATT為1的LSP:
由level-1-2路由器生成,同區域level-1收到后,生成指向level-1-2的預設路由
ATT為1條件:level-1-2和level-2必須處于不同區域
拓撲所體現的IS-IS與OSPF不同點:
在OSPF中,每個鏈路只屬于一個區域;而在IS-IS中,每個鏈路可以屬于不同的區域
在IS-IS中,單個區域沒有物理的骨干與非骨干區域的概念;而在OSPF中,Area0被定義為骨干區域
在IS-IS中,Level-1和Level-2級別的路由器分別采用SPF演算法,分別生成最短路徑樹SPT;在OSPF中,只有在同一個區域內才使用SPF演算法,區域之間的路由需要通過骨干區域來轉發
IS-IS與OSPF差異性:
差異性 IS-IS OSPF
網路型別 少 多
開銷方式 復雜 簡便
區域型別 少 多
路由報文型別 簡單 多樣
路由收斂速度 很快 快
擴展性 強,使用TLV傳遞,結構簡單,易于擴展 一般,本身是為IP特定開發的,支持IPv4和IPv6的OSPF協議是兩個獨立的版本
路由負載能力 超強 強


轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/333641.html
標籤:其他
上一篇:IP組播基礎
下一篇:OSPF外部路由
