SRV6學習筆記


  1. SRv6產生的背景
    1. SDN深入人心:運營商業務管道化,業務驅動網絡,已經成為業界共識。
    2. 雲網融合帶來新的變化:傳統的MPLS網絡由於部署復雜,消耗的資源較多,數據中心內部對MPLS不完全接受,但是也希望在數據中心內部進行高效的流量調優。
    3. NFV對網絡帶來新的變化,由於網絡功能虛擬化,虛擬化后的設備可能無法指出MPLS所以就無法部署SR MPLS,但是也希望能否借助SR進行對網絡的編程。
    4. IPv6的發展正在加速,5G、IoT業務和雲化業務都需要更多的地址,另外,終端/OTT等廠商的IPv6化正在加速,業界運營商希望構建純IPv6的網絡。
  2. 特性價值
    1. 智慧:表現在SRv6的網絡路徑可以編程、業務可以編程、轉發行為可以編程。SRv6是完全基於SDN架構,能夠跨越APP和網絡之間的鴻溝,將APP的應用程序信息帶入到網絡中。
    2. 簡單:SRv6是基於IGP和BGP擴展來實現的,沒有MPLS標簽,另外SRv6也不使用LDP/RSVP-TE協議,在數據中心內部引入SRv6之后,只需要TOR交換機支持SRv6即可,其他交換機僅支持IPv6。在NFV場景引入SRv6之后。可以輕松的實現業務鏈SFC(Service Function Chain)等需求。
    3. 純IP化:SRv6基於Native IPv6進行轉發,完全融入現有的IPv6網絡,網絡中的中間節點可以不支持SRv6,不需要規模升級就可以部署新業務。
  3. 實現原理
    1. 為了實現IPv6,IPv6的報文進行了一種擴展,新增了一種擴展頭,IPv6報文是由IPv6標准頭+擴展頭(0~n個)+負載Payload組成。

       

       在SRv6里面,IPv6目的IP字段是一個不斷變換的字段,他的取值由Segment Left和Segment List字段共同決定,當指針指向一個活躍的段,需要將對應段的IPv6地址復制到IPv6目的地址字段。在轉發層面,如果說一個階段不支持SRv6,那么該節點可以不用處理下層的SR信息,僅依靠IPv6的目的地址字段,查找路由表來完成轉發。如果一個節點支持SRv6,那么需要處理SRH,將Sgement Left進行減一操作,然后將指針偏向新的活躍段,之后將Segment List信息復制到IPv6目的地址字段,然后將報文向下一個節點進行轉發,當Segment Left字段減為0的時候,節點可以彈出SRH報文頭,然后對報文進行下一步處理。

       Segment List:段列表,段列表從路徑的最后一段開始編碼。Segment List是IPv6地址形式。

       Segments Left:是一個指針,指向當前活躍的Segment List,即到達目的節點前仍然應當訪問的中間節點數。

    2.  在SRv6里面存在3重可編程空間:

      1. 由Segment List構成的路徑信息可編程。
      2. 報文里面新增的可選的TLV字段可以進行編程。
      3. IPv6地址形式的Segment List(IPv6 SID)可編程。
    3. Segment List詳細說明:

      1. Segment List類似於IPv6地址形式,但是又不同於傳統的IPv6地址,在SRv6中,IPv6地址賦予了新的含義,他由3個部分組成:
        1. Locator部分:配置之后,會在本機生成一條理由,通過IGP向外擴散,網絡中的其他節點通過這條路由可以定位到配置該Locator的節點,所以Locator具有定位功能,所以一般要在SR域內唯一,但是在一些特殊場景,比如Anycast保護場景,多個設備可能配置相同的Locator。
        2. Function部分:表示綁定的本機的一個指令。這些指令都由設備預先設定,Function部分用於指示SRv6 SID的生成節點進行相應的功能操作。
        3. Arguments部分(可選):Arguments占據IPv6地址的低比特位,通過Arguments字段可以定義一些報文的流和服務等信息。當前一個重要應用是EVPN VPLS的CE多歸場景,轉發BUM流量時,利用Arguments實現水平分割。
      2. IPv6的SID的類型:
        1. End SID:代表網絡中的一個節點,他給設備的指令是處理SRH,更新IPv6目的地址字段,然后查找IPv6路由表進行報文轉發。
        2. End.x SID:代表網絡中的一個鄰接,他給設備的一個指令是處理SRH,更新IPv6目的地址字段,然后從該SID指定的一個出接口轉發報文。
        3. End.DT4 SID:這是一種PE類型的SID,主要用於IPv4 L3VPN場景,他給設備的一個指令是解封報文,去除外層SRH和IPv6報文頭,然后根據剩余報文里面的目的地址查找IPv4 VPN實例路由表進行轉發。
        4. End.DT6 SID:主要用於IPv6 L3VPN場景,他給設備的一個指令是解封報文,去除外層SRH和IPv6報文頭,然后根據剩余報文里面的目的地址查找IPv6 VPN實例路由表進行轉發。

           

           

        5. End.DX2 SID:這種SID主要用在L2VPN/EVPN VPWS場景,他給設備的一個指令是解封報文,去除外層SRH和IPv6報文頭,然后從該SID綁定的出接口轉發出去。 
      3. 不同SID的轉發行為是不一樣的,這就是我們說的第三重編程空間,也就是轉發行為可編程。
  4. 業務應用
    1. L3VPN(拓撲:CE1--PE1--P--PE2--CE2)
      1. 路由發布階段PE2(SID:Locator + Function,例如Locator為:A2:1::/64)
        1. PE2將會把A2:1::/64這個路由通過IGP宣告出去,這樣P和PE1節點將會通過IGP學習到該路由。
        2. PE2為CE2所在的VPN實例分配SID,假設為A2:1::B100,由於是IPv4 VPN,所以這個SID也是一個End.DT4類型。
        3. 然后是私網路由發布,現在CE2向PE2發布一條普通的IPv4路由,PE2從指定的接口收到這條路由以后,會轉換為VPNv4路由,然后向PE1發布,發布的過程中,這個VPNv4路由會攜帶VPN SID,也就是A2:1::B100,PE1收到這個VPNv4路由以后會進行路由交叉,交叉到CE1所屬的VPN實例,然后向CE1發布。
      2. 數據轉發階段
        1. 跟BGP VPNv4類似。
    2. EVPN VPWS(跟L3VPN類似)
      1. 發布End.DX2類型的SID
      2. 數據轉發的時候封裝的是個2層報文。為源MAC和目的MAC信息。
  5. SRv6跨域,組建大規模網絡
  6. 可靠性
  7. SRv6現網演進
  8. SRv6適用場景
  9. SRv6 vs SR MPLS

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM