Tìm hiểu về giao thức định tuyến BGP

Như ta đã biết Internet được tạo bởi rất nhiều các Autonomous System. BGP được sử dụng để chia sẻ thông tin định tuyến giữa các AS khác nhau. BGP sử dụng giao thức vận chuyển tin cậy (reliable transport protocol) để trao đổi thông tin định tuyến đó chính là Transmission Control Protocol (TCP). BGP sử dụng cổng 179 để thiêt lập kết nối. BGP hỗ trợ variable-length subnet mask (VLSM), classless interdomain routing (CIDR), và summarization. Điều đáng chú ý về BGP là nó không quan tâm về intra-AS routing, nó tin tưởng rằng các IGP được sử dụng trong AS sẽ đảm nhiệm intra-AS routing. Mà nó chỉ đề cập tới inter-AS routing. Một BGP speaking device sẽ chia sẻ thông tin đến được mạng với neighbor của nó. Thông tin đến được mạng chứa đựng dữ liệu dựa trên các AS khác nhau mà nó đi qua. Thông tin này sẽ được BGP spaking device để tạo graph của tất cả các AS đang sử dụng. Graph đó sẽ giúp cho BGP loại bỏ được routing loop và đảm bảo hiệu lực của policy cho AS của nó.

doc46 trang | Chia sẻ: lvbuiluyen | Lượt xem: 4474 | Lượt tải: 17download
Bạn đang xem nội dung tài liệu Tìm hiểu về giao thức định tuyến BGP, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
HỌC VIỆN KỸ THUẬT MẬT MÃ KHOA AN TOÀN THÔNG TIN *** BÀI TẬP LỚN AN TOÀN INTERNET VÀ THƯƠNG MẠI ĐIỆN TỬ TÌM HIỂU VỀ GIAO THỨC ĐỊNH TUYẾN BGP MỤC LỤC : CHƯƠNG I.TỔNG QUAN VỀ BGP ………………………………………………. 2 I.1.Khái niệm BGP…………………………………………………………….. 2 I.2.Đặc điểm của BGP…………………………………………………………. 2 I.3.Thuật ngữ BGP…………………………………………………………….. 5 I.4.Hoạt động của BGP………………………………………………………... 6 I.5.Khi dùng BGP và khi không dùng BGP ………………………………….. 15 I.5.1.Khi nào dùng BGP?.................................................................................. 15 I.5.2.Khi nào không dùng BGP?....................................................................... 16 I.6.So sánh IBGP và EBGP…………………………………………………… 16 I.7.Các bước xây dựng bảng định tuyến………………………………………. 16 CHƯƠNG II.CÁC THÔNG SỐ TUYẾN ĐƯỜNG TRONG BGP…………… 17 *Có 2 dạng thông số : + Well – Know : - Mandatory ( Origin , AS – path , Next-hop ) Discretionary ( Local preference , Atomic aggregate…) + Option : - Non – transitive ( MED , Cluster – list ) Transitive ( Communities…) II.1. Thông số AS – path ……………………………………………………… 17 II.2.Thông số Next hop ……………………………………………………….. 19 II.3.Thuộc tính Aggregator và Local – preference…………………………….. 22 II.4.Thuộc tính Weight và thuộc tính MED…………………………………… 25 CHƯƠNG III.SỬ DỤNG CHÍNH SÁCH VỚI BGP…………………………...… 28 III.1.Lọc tuyến……………………………………………………………………… 28 III.2.Sử dụng distribute list để lọc route…………………………………………… 28 III.3.Lệnh ip prefix list……………………………………………………………. 29 III.4.Route map ……………………………………………………………………. 30 CHƯƠNG IV.DEMOVÀ KIỂM TRA BGP …………………………………...… 34 IV.1.Xem trạng thái BGP ……………………………………………………. IV.2.Xem hàng xóm BGP ……………………………………………………. IV.3.Xem bảng BGP …………………………………………………………. IV.4.Xem bảng routing ………………………………………………………. Tài liệu tham khảo : - CCNP ROUTE 642-902 Official Certification Guide - Cisco IOS Cookbook, 2nd Edition - Cisco Press - Routing TCPIP Volume II (CCIE Professional Development) (2010) - Cisco.Press.CCNP.BSCI.Portable.Command.Guide.May.2007 - ISP WorkShop Danh mục các hình vẽ : Danh mục các hình Trang Hình 1.1 .Bảng các giao thức định tuyến động 2 Hình 1.2 . CHƯƠNG I . TỔNG QUAN VỀ BGP I.1.KHÁI NIỆM Như ta đã biết Internet được tạo bởi rất nhiều các Autonomous System. BGP được sử dụng để chia sẻ thông tin định tuyến giữa các AS khác nhau. BGP sử dụng giao thức vận chuyển tin cậy (reliable transport protocol) để trao đổi thông tin định tuyến đó chính là Transmission Control Protocol (TCP). BGP sử dụng cổng 179 để thiêt lập kết nối. BGP hỗ trợ variable-length subnet mask (VLSM), classless interdomain routing (CIDR), và summarization. Điều đáng chú ý về BGP là nó không quan tâm về intra-AS routing, nó tin tưởng rằng các IGP được sử dụng trong AS sẽ đảm nhiệm intra-AS routing. Mà nó chỉ đề cập tới inter-AS routing. Một BGP speaking device sẽ chia sẻ thông tin đến được mạng với neighbor của nó. Thông tin đến được mạng chứa đựng dữ liệu dựa trên các AS khác nhau mà nó đi qua. Thông tin này sẽ được BGP spaking device để tạo graph của tất cả các AS đang sử dụng. Graph đó sẽ giúp cho BGP loại bỏ được routing loop và đảm bảo hiệu lực của policy cho AS của nó. Hình1.1 Bảng các giao thức định tuyến động I.2: ĐẶC ĐIỂM CỦA BGP + Sử dụng giao thức định hướng kết nối với những cải tiến:     - Bản tin cập nhật là tin cậy     - cập nhật theo chu kì     - nhiều thông số tính metrics + Được dùng để thiết kế mạng có quy mô rất lớn BGP là một giao thức định tuyến dạng path-vector nên việc chọn lựa đường đi tốt nhất thông thường dựa trên một tập hợp các thuộc tính được gọi là ATTRIBUTE. Do sử dụng metric khá phức tạp, BGP được xem là một giao thức khá phức tạp. Nhiệm vụ của BGP là đảm bảo thông tin liên lạc giữa các AS, trao đổi thông tin định tuyến giữa các AS, cung cấp thông tin về trạm kế cho mỗi đích đến. BGP sử dụng giao thức TCP cổng 179. Các giao thức nhóm distance vector thường quảng bá thông tin hiện có đến các router láng giềng, còn path vector chỉ ra chính xác danh sách toàn bộ đường dẫn đến đích. Ngoài ra các giao thức định tuyến hoạt động dùng path vector giúp việc xác định vòng lặp trên mạng rất tốt bằng cách xem xét các con đường mà các router khác gởi về xem có chính bản thân AS trong đó hay không, nếu có sẽ biết được ngay là lặp, và sẽ loại bỏ.   BGP hỗ trợ cho các địa chỉ CIDR (Classless Interdomain Routing). BGP cho phép dùng xác thực và BGP có các cơ chế keepalive định kỳ nhằm duy trì quan hệ giữa các BGP peers.  Trong giai đoạn ban đầu của của phiên thiết lập quan hệ BGP, toàn bộ các thông tin routing-update sẽ được gửi. Sau đó, BGP sẽ chuyển sang cơ chế dùng trigger-update. Bất kỳ một thay đổi nào trong hệ thống mạng cũng sẽ là nguyên nhân gây ra trigger-update.   Một trong các đặc điểm khác biệt nhất của BGP là trong các routing-update của nó. Khi ta xem xét các BGP update, ta sẽ nhận thấy các routing update này là khá chính xác. BGP không quan tâm đến việc giao tiếp để có đầy đủ kiến thức của tất cả các subnet bên trong một công ty mà BGP quan tâm đến việc chuyển tải đầy đủ thông tin để tìm một AS khác. Các BGP update thực hiện quá trình summarization đến một mức tối đa bằng cách cho phép một số AS, cho phép một số prefix và một vài thông tin định tuyến. Tuy nhiên, một phần nhỏ của BGP update là khá quan trọng. BGP đảm bảo rằng lớp transport đã truyền các update và các cơ sở dữ liệu về đường đi đã được đồng bộ. BGP có thể được hiện thực bao gồm giữa các AS khác nhau hay trong cùng 1 AS. Khi dùng BGP để kết nối các AS khác nhau, BGP được gọi là eBGP. Giao thức này cũng có thể được dùng để mang thông tin giữa các router eBGP trong một AS. Khi đó BGP được gọi là iBGP. Trong một AS ta sử dụng giao thức định tuyến nội IGP (ví dụ như RIP, ISIS, EIGRP, OSPF) nhưng khi ra ngoài một AS thì phải sử dụng một giao thức khác. Vấn đề ở đây chính là mục đích của các IGP và EGP không giống nhau. Các IGP thực hiện định tuyến gói đi từ nguồn đến đích mà không cần quan tâm đến chính sách định tuyến (policy). Trong khi ra khỏi phạm vi một AS thì chính sách định tuyến lại là vấn đề quan trọng . Xét ví dụ sau: AS4---AS1---AS2---AS3---(C Company) |........................................| |........................................| B Company-----------A Company Giả sử A muốn truyền dữ liệu đến AS4. A và B là 2 đối thủ của nhau. B không muốn chuyển dữ liệu cho công ty A nên A chỉ có thể chuyển dữ liệu thông qua AS3, AS2, AS1 để đến được AS4, mặc dù con đường thông qua công ty B có thể là tối ưu nhất. Giả sử C thuộc AS3 cũng muốn đến AS4 nhưng C là đối tác của B nên B sẵn sàng cho quá giang. Như vậy A và C có cùng một đích đến nhưng phải đi theo những cách khác nhau. Các IGP không thể làm được điều này vì một nguyên nhân chủ yếu chính là các giao thức đó đều liên quan đến metric hay là cost mà hoàn toàn không quan tâm đến chính sách định tuyến. Nó chỉ biết cố gắng làm sao chuyển được các gói dữ liệu đến đích một cách hiệu quả và tối ưu nhất  I.3.THUẬT NGỮ BGP Stt Thuật ngữ Định nghĩa 1 Aggregation Là quá trình tóm tắt các route – (summarization) 2 Attribute Tương tự như metric. Các biến này sẽ mô tả các đặc điểm của đường đi tới một địa chỉ đích nào đó. Khi được định nghĩa, các đặc điểm này có thể được dùng để ra quyết định về nên đi theo đường đi nào. 3 Autonomous System Định nghĩa mạng của một tổ chức. Trong một AS, các router sẽ có cùng giao thức định tuyến. Nếu ta kết nối ra Internet, chỉ số AS này phải là duy nhất và được cung cấp bởi các ủy ban Internet. 4 Exterior Gateway Protocol (EGP) Thuật ngữ chung cho một giao thức được chạy giữa các AS khác nhau. Cũng có một giao thức có tên là EGP là tiền thân của BGP 5 EBGP Gửi thông tin định tuyến giữa các AS khác nhau 6 Interior Gateway Protocol (IGP) Đây là các giao thức định tuyến chạy bên trong một AS. Trong quá khứ, thuật ngữ gateway thường được dùng để định nghĩa một router. 7 IBGP Giao thức này được dùng bên trong một AS. Các router không yêu cầu phải là láng giềng của nhau về phương diện kết nối vật lý và thường ở ngoài rìa của một AS. IBGP được dùng giữa các router chạy BGP trong cùng một AS. 8 Originator-ID Đây là thuộc tính của BGP. Nó là một thuộc tính tùy chọn. Thuộc tính này sẽ chứa giá trị routerID của router đã phát sinh ra đường đi đó. Mục đích của thuộc tính này là ngăn ngừa routing loop. Nếu một router nhận được một update từ chính nó, router đó sẽ bỏ qua update đó. 9 policy-based routing Cơ chế này cho phép người quản trị lập trình giao thức định tuyến bằng cách định nghĩa traffic sẽ được route như thế nào. Đây là một dạng của định tuyến tĩnh. PBR độc lập với các giao thức định tuyến và dùng route-map để tạo ra các quá trình riêng lẽ để áp đặt các quyết định định tuyến. 10 prefix list Prefix list được dùng như một thay thế cho distribute-list để kiểm soát BGP học hoặc quảng bá các cập nhật như thế nào. Prefix-list thì nhanh hơn, uyển chuyển hơn và ít tốn tài nguyên của hệ thống hơn. 11 Route-reflector Đây là router được cấu hình để chuyển các routes từ các router iBGP khác. Khi cấu hình route-reflector, các iBGP không cần phải fully-mesh nữa. Một mạng fully-mesh thì không có khả năng mở rộng. 12 Route-Reflector Client Một client là một router có một TCP session với một router khác hoạt động như một route-reflector-server. Client không cần thiết phải thiết lập peer với các client khác. 13 Route_reflector Clustor Một cluster là một nhóm bao gồm một route-reflector và clients. Có thể có nhiều hơn một route-reflector server trong một cluster. 14 transit autonomous system Là AS được dùng để mang các BGP traffic qua các AS khác. I.4.HOẠT ĐỘNG CỦA BGP ( BGP OPERATION ) BGP cho phép truyền thông thông tin định tuyến giữa các AS khác nhau trải khắp thế giới. Hình dưới cho biết rất nhiều AS và chúng sử dụng BGP để chia sẻ thông tin đinh tuyến giữa các AS khác nhau. Chúng sử dụng 2 dạng BGP để thực hiện điều đó: Internal BGP (iBGP) External BGP (eBGP) Tất cả BGP speaking device cùng trong một AS sẽ sử dụng iBGP để liên lạc với một BGP speaking khác. Và đối với các BGP speaking trong cùng AS sẽ phải thiết lập peer với các BGP speaking khác. Điều đó có nghĩa là chúng ta phi cấu hình full mesh cho iBGP để hoạt động một cách đúng cách. Hay nói cách khác tất cả các thiết bị phải thiết lập kết nối TCP với thiết bị khác. eBGP được sử dụng giữa BGP speaking device của các AS khác nhau. Giông như iBGP, BGP speking device tham gia phi có kết nối layer-3 giữa chúng. Sau đó TCP sẽ được sử dụng bởi eBGP để thiết lập peer session. Sau khi đã thiết lập được peer, BGP speaking device sẽ sử dụng thông tin mà chúng có được từ những trao đổi để tạo một BGP graph. Chỉ một lần BGP speaking device thiết lập được peer cũng như tạo được BGP graph, chúng mới bắt đầu quá trình trao đổi thông tin định tuyến. Lúc khởi tạo BGP speaking sẽ trao đổi toàn bộ BGP routing table của nó. Sau đó chúng sẽ trao đổi thông tin update từng phần giữa các peer với nhau và trao đổi bản tin KEEPALIVE dể duy trì kết nối. I.4.1. Định dạng mào đầu của bản tin (Message Header Format) BGP sẽ tiến hành xử lý bản tin chỉ khi toàn bộ bản tin được nhận. BGP yêu cầu mỗi bản tin có kích thước nhỏ nhất là 19 octet và max là 4096 octet. Header của message bao gồm những thông tin sau:   + Marker: trường này dài 16 byte. Trường Marker được sử dụng để xác định sự mất đồng bộ giữa một tập BGP peer và chứng thực các bản tin BGP đến (incoming BGP message). Giá trị của trường này phụ thuộc vào loại bản tin. Nếu là một OPEN message nó sẽ không chứa thông tin chứng thực và Marker có giá trị là toàn bit 1. + Length: trường này có độ dài là 2 byte. Trường Length cho biết độ dài của toàn bộ bản tin. Giá trị của nó biến đổi từ 19 cho đến 4096. + Type: trường này có độ dài 1 byte. Nó cho biết loại bản tin được sử dụng. Cụ thể như hình bên dưới:   a/ Bản tin OPEN ( OPEN Message) Bản tin OPEN là loại bản tin đầu tiên được gửi sau khi phiên kết nối TCP được thiết lập. Khi bản tin OPEN được chấp nhận, một bản tin KEEPALIVE xác nhận bản tin OPEN được gửi trả lại. Sau khi bản tin KEEPALIVE được gửi để xác nhận bản tin OPEN, bản tin UPDATE từng phần, bản tin NOTIFICATION và bản tin KEEPALIVE sẽ được trao đổi giữa các BGP peer. Bản tin OPEN có định dạng như sau:   - Version: trường này có chiều dài 1 byte và được sử dụng để xác định phiên bản của các BGP speaker từ kết quả của quá trình đàm phán với neighbor. Cụ thể quá trình này như sau: BGP speaker sẽ thử đàm phán với giá trị version number cao nhất mà cả 2 cùng hỗ trợ. Nếu giá trị version number được xác định trong trường version mà BGP speaker khác không hỗ trợ, một bản tin lỗi sẽ được gửi về cho nới gửi và phiên kết nối TCP sẽ bị ngắt. Quá trình trên sẽ tiếp tục cho đến khi có một giá trị version number chung được thiết lập. - My Autonomous System: trường này có độ dài 2 byte và nó chứa đựng Autonolous System Number của BGP speaker gửi. Trường này sẽ thông báo cho BGP speaker nhận biết được giá trị của AS Number của neighbor của nó. Và giá trị đó cũng được sử dụng để tạo nên BGP graph của BGP speaker. - Hold Time: trường này có độ dài 2 byte. Nó thông báo cho BGP speaker nhận giá trị đề nghị hold time của BGP speker gửi. Sau khi BGP speaker nhận được giá trị hold time từ neighbor nó sẽ tính toán và đưa ra giá trị hold time trong trường Hold Time. Nó sẽ xác định thời gian tối đa mà nơi nhận phải đợi một thông điệp từ nơi gửi (KEEPALIVE hay UPDATE message). Mỗi lần một bản tin được nhận giá trị hold time được reset về 0. - BGP Identifier: trường này có độ dài 4 byte và chứa đựng giá trị BGP identifier của BGP speaker gửi. BGP identifier tưng tự RID trong OSPF, nó xác định duy nhất một BGP speaker. BGP identifier chính là địa chỉ IP cao nhất của loopback interface. Nếu loopback không được cấu hình thì nó chính là địa chỉ IP cao nhất của bất kỳ interface nào của router. Giá trị này được xác định chỉ một lần và giá trị này không thay đổi trừ phi khởi động lại BGP process. - Optional Parameters Length: trường này có độ dài 1 byte và nó thể hiện tổng độ dài của trường - ----- Optional Parameters. Nếu giá trị trường này là 0 cho biết Optional Parameters không được thiết lập. - Optional Parameters: trường này có độ dài biến đổi và chứa đựng một danh sách các optional parameters mà chúng sẽ được sử dụng trong quá trình đàm phán với neighbor. Mỗi một optional parameter được biểu diễn bởi bộ ba: . Định dạnh cụ thể như hình sau: Parameter Type: trường này có độ dài 1 byte và nhận ra từng thông số riêng lẻ. Parameter Length: có độ dài 1 byte và chứa đựng độ dài của trường Parameter Value. Parameter Value: trường này có độ dài thay đổi và giải thích dựa trên giá trị của trường Parameter Type. b/ Bản tin UPDATE (UPDATE Message) Sau khi BGP speaker trở thành peer, chúng sẽ trao đổi bản tin UPDATE từng phần (incremental UPDATE message) chứa đựng thông tin định tuyến cho BGP. Thông tin này chứa trong bản tin UPDATE được sử dụng để xây dựng môi trường định tuyến không có loop (loop-free routing environment). Bản tin UPDATE không chỉ chứa tuyến kh thi để sử dụng mà nó còn chứa những tuyến không kh thi để loại bỏ. Một bản tin UPDATE có thể chứa tối đa một feasible route để sử dụng và nhiều unfeasible route để loại bỏ. Đinh dạng của bản tin UPDATE như sau: + Unfeasible Routes Length: trường này có độ dài 2 byte và chứa đựng độ dài của trường Withdrawn Routes. Giá trị của nó là 0 cho biết trường Withdrawn Routes không được thể hiện trong bản tin UPDATE. + Withdrawn Routes: trường này có độ dài thay đổi và chứa một danh sách những tiền tố địa chỉ IP (IP address prefixes)sẽ bị loại bỏ. Với mỗi tiền tố địa chỉ IP có định dạng như sau: - Length: trường này có độ dài 1 byte và chứa đựng độ dài (đơn vị là bit) của IP address prefix. Nếu có giá trị là 0 có nghĩa là tất cả IP address prefix. - Prefix: có giá trị biến đổi và chứa đựng IP address prefix. - Total Path Attributes Length: trường này có độ dài 2 byte và chứa đựng độ dài của trường Path Attributes. - Path Attributes: trường này có độ dài thay đổi và chứa đựng một chuỗi các thuộc tính về path. Trường Path Attributes được thể hiện trong mỗi bản tin UPDATE. Thông tin chứa đựng trong trường Path Attribute được sử dụng để theo dõi thông tin định tuyến đặc biệt và cũng được sử dụng cho routing decision và filtering. Mỗi path attribute được phân chia vào một bộ ba (triplet): - Attribute Type: có độ dài 2 byte và bao gồm một byte Attribute Flags và một byte Attribute Type Code. • Attribute Flags: có 4 trạng thái như sau: + Well-known mandatory: thuộc tính này phải được thừa nhận bởi sự thi hành của tất cả BGP speaker và phải được trình bày trong bản tin UPDATE. Một phiên BGP sẽ bị ngắt nếu một thuộc tính wellknown attribute không được trình bày trong bn tin UPDATE. + Well-known discretionary: thuộc tính này phải được thừa nhận bởi sự thi hành của tất cả BGP speaker nhưng không nhất thiết nó phải có trong bản tin UPDATE. + Optional transitive: thuộc tính này là một tính tuỳ chọn và nó có thể không được thừa nhận bởi sự thi hành của BGP speaker. Chú ý giá trị này không thay đổi nếu nó không được thừa nhận bởi BGP speaker. + Optional non-transitive: Nếu thuộc tính này không được thừa nhận bởi BGP speaker và transitive flag không được thiết lập thì thuộc tính này sẽ bị loại bỏ. + Attribute Type Code: xác định loại Path Attribute. Cụ thể được minh hoạ như hình sau:   Trong đó: ORIGIN: là một well-known mandatory attribute. AS mà tạo ra thông tin định tuyến sẽ tạo ra thuộc tính ORIGIN attribute. Nó có trong tất cả bản tin UPDATE để nhân bản thông tin định tuyến. AS_PATH: là một well-known mandatory attribute. Nó bao gồm một danh sách của tất cả các AS mà thông tin định tuyến đã đi qua. Thành phần AS_PATH bao gồm một chuỗi của các AS path segment. Mỗi AS path segment được biểu diễn bằng bộ ba (triplet): . Khi một BGP speaker quảng bá một route mà nó học được tới BGP speaker khác trong AS của nó, BGP speaker sẽ không sửa đổi (modify) AS_PATH attribute. Khi một BGP speaker quảng bá một route mà nó được tới BGP speaker khác ở ngoài AS của nó, BGP speaker sẽ sửa đổi (modify) AS_PATH. - Khi một BGP speaker tạo ra một route. Nó sẽ bao gồm một empty AS_PATH attribute khi quảng bá tới BGP speaker trong AS của nó_đó chính là iBGP peer. BGP speaker sẽ bao gồm AS number trong AS_attribute khi qung bá tới BGP speaker ở ngoài AS của nó_đó chính là eBGP peer. NEXT_HOP: là một well-known mandatory attribute, nó xác định địa chỉ IP của router biên (border router) mà được sử dụng như hop tiếp theo để tới đích xác định nào đó. MULTI_EXIT_DISC: là một optional non-transitive attribute. Nếu có nhiều mục nhập tới cùng một AS, nó có thể được sử dụng để xác định mục nhập nào được sử dụng. Mục nhập nào có metric nhỏ nhất sẽ được sử dụng. LOCAL_PREF: là một well-known discretionary attribute. Thuộc tính này được sử dụng bởi BGP speaker để thiết lập độ ưu tiên của một route, nó được sử dụng để cho biết độ ưu tiên cao hơn của một đường để thoát khỏi AS. BGP speaker sẽ quảng bá thuộc tính này tới BGP peer của nó. ATOMIC_AGGREGATE: là một well-known discretionary attribute. Khi một BGP speaker nhận được những route trùng khớp từ peer của nó, nó có thể thiết lập thuộc tính ATOMIC_AGGREGATE. Thuộc tính này sẽ được thiết lập nếu BGP speaker chọn được một route với subnet mask ngắn hơn subnet mask của một route khác. AGGREGATOR: là một optional transitive attribute. Khi một BGP speaker thực hiện route aggregator, nó sẽ tính đến thuộc tính AGGREGATOR bao gồm AS number của nó và BGP identifier. COMMUNITY: là một optional transitive attribute. Thuộc tính này sẽ phân nhóm các bằng cách gằn thẻ (tag) vào những route có một số đặc điểm chung. ORIGINATOR_ID: là một optional non-transitive attribute. Một BGP speaker thực hiện vai trò của một route reflector sẽ tạo ra thuộc tính này. Thuộc tính ORIGINATOR_ID sẽ bao gồm BGP identifier của route reflector. Thuộc tính này chỉ có ý nghĩa local AS. CLUSTER_LIST: là một optional non-transitive attribute. Thuộc tính này bao gồm một danh sách giá