Jak używany jest BGP „AS_SET”?

11

RFC 1771 definiuje typ atrybutu ścieżki AS_PATH w następujący sposób:

AS_PATH (Type Code 2):

AS_PATH is a well-known mandatory attribute that is composed
of a sequence of AS path segments. Each AS path segment is
represented by a triple <path segment type, path segment
length, path segment value>.

The path segment type is a 1-octet long field with the
following values defined:

Value Segment Type
1 AS_SET:      unordered set of ASs a route in the
               UPDATE message has traversed
2 AS_SEQUENCE: ordered set of ASs a route in
               the UPDATE message has traversed

Użycie AS_PATH typu AS_SEQUENCE ma dla mnie idealny sens: kończysz się odwrotną listą ASNów, przez które przechodzisz, aby dostać się do określonego prefiksu.

Nie mam jednak pojęcia, jaki jest cel posiadania nieuporządkowanej listy ASN między tobą a prefiksem, która miałaby miejsce, gdybyś wybrał użycie AS_PATH z AS_SET.

Powyższy cytat pochodzi z formatu komunikatu UPDATE, więc przypuszczalnie administrator ma możliwość wysłania do peerów BGP listy uporządkowanej lub listy nieuporządkowanej. Moje pytanie brzmi zatem, jaki byłby cel wysłania nieuporządkowanej listy ? W jakich przypadkach lepiej byłoby wysłać listę nieuporządkowaną niż listę uporządkowaną?

Eddie
źródło

Odpowiedzi:

12

Moje pytanie brzmi zatem, jaki byłby cel wysłania nieuporządkowanej listy? W jakich przypadkach lepiej byłoby wysłać listę nieuporządkowaną niż listę uporządkowaną?

as-setjest powszechnie stosowany przy agregowaniu tras poniżej systemu autonomicznego; więc przypadkiem użycia nieuporządkowanej listy jest agregacja bgp .

PRZYKŁAD :

W poniższym przykładzie AS65500 agreguje ogłoszenia eBGP z AS65000 i AS65001 do 10.1.0.0/23. Po agregacji ogłoszeń z AS65000 i AS65001, AS65500 wysyła NETWORK: 10.1.2.0/23 AS-PATH: 65500i NETWORK: 10.1.0.0/23 AS-PATH: 65500 {65000, 65001}(agreguje). Zazwyczaj AS agreguje się, gdy deleguje części większego bloku adresu do klientów.

Budowanie uporządkowanej listy nie ma sensu, gdy agregujesz miejsce dla wielu ASN; Na przykład, zamówić jako ścieżki w całkowitej poniżej może być 65500 [65000, 65001]albo 65500 [65001, 65000]. Jednak obie listy uporządkowane nie mają sensu, ponieważ porządkowanie nie ma znaczenia dla agregacji (tzn. Oba autonomiczne systemy są bezpośrednio podłączone do AS 65500). Porządkowanie oznacza ciąg, który nie ma znaczenia dla agregatu.

Listy nieuporządkowane (tj. Zestawy matematyczne ) są najbardziej sensowne dla AS_SET.

          _.------------.
      ,-''               `--.
    ,'                       `.
   (         AS65000           )
    `.       10.1.0.0/24     ,'
      `--.               _.-'
          `------------''
                    \          ------> NETWORK: 10.1.2.0/23   AS-PATH: 65500
                     \         ------> NETWORK: 10.1.0.0/23   AS-PATH: 65500 {65000, 65001}
           _.--------------.        router bgp 65500
       ,-''                 `--.     no sync
     ,'                         `.   no auto-summary
    (          AS65500             ) neighbor 10.1.0.2 remote-as 65000
     `.        10.1.2.0/23      ,'   neighbor 10.1.1.2 remote-as 65001
       --.                 _.-'      network 10.1.2.0 mask 255.255.254.0
           `--------------''         aggregate-add 10.1.0.0 255.255.254.0 summary-only as-set
                    /
                   /
          _.--------------.
      ,-''                 `--.
   ,'                         `.
  (           AS65001           )
   `.         10.1.1.0/24     ,'
     `--.                 _.-'
         `--------------''
Mike Pennington
źródło