Đồ án cuối khóa - triển khai hệ thống mạng với giao thức bgp cho doanh nghiệp

76
TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THÔNG TIN HỮU NGHỊ VIỆT-HÀN KHOA KHOA HỌC MÁY TÍNH ĐỒ ÁN CHUYÊN ĐỀ CUỐI KHÓA NGÀNH MẠNG MÁY TÍNH ĐỀ TÀI TÌM HIỂU VÀ TRIỂN KHAI HỆ THỐNG MẠNG VỚI GIAO THỨC BGP CHO DOANH NGHIỆP SVTH: Nguyễn Đức Trung Lớp: CCMM03C

Upload: nguyen-duc-trung

Post on 29-Jul-2015

877 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THÔNG TIN

HỮU NGHỊ VIỆT-HÀN

KHOA KHOA HỌC MÁY TÍNH

ĐỒ ÁN CHUYÊN ĐỀ CUỐI KHÓA

NGÀNH MẠNG MÁY TÍNH

ĐỀ TÀI

TÌM HIỂU VÀ TRIỂN KHAI HỆ THỐNG MẠNG VỚI

GIAO THỨC BGP CHO DOANH NGHIỆP

SVTH: Nguyễn Đức Trung

Lớp: CCMM03C

Niên khóa: 2009 – 2012

CBHD: Ths. Đặng Quang Hiển

Đà Nẵng, tháng 3 năm 2012

Page 2: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

LỜI CẢM ƠN

Sau gần 3 tháng nỗ lực tìm hiểu và thực hiện, đồ án “Tìm hiểu và triển khai hệ thống

mạng với giao thức BGP cho doanh nghiệp” đã được hoàn thành, ngoài sự cố gắng hết

mình của bản thân, em còn nhận được nhiều sự động viên, khích lệ từ gia đình, thầy cô và

bạn bè.

Em xin chân thành cảm ơn các thầy cô của trường Cao Đẳng CNTT Hữu Nghị Việt-

Hàn đã truyền đạt nhiều kinh nghiệm và kiến thức quý báu cho em trong suốt quá trình

học tập tại trường. Đặc biệt em xin tỏ lòng biết ơn sâu sắc tới Thầy Đặng Quang Hiển –

giảng viên khoa khoa học máy tính và các thầy cô trong khoa đã tận tình giúp đỡ em trong

suốt quá trình thực hiện đồ án cuối khóa này.

Mặc dù em đã cố gắng hết sức để hoàn thành đồ án cuối khóa này, nhưng vì tham

khảo ở nhiều nguồn tài liệu khác nhau, cộng thêm kiến thức còn nhiều hạn chế, do đó

không thể tránh khỏi những thiếu sót. Em rất mong nhận được sự thông cảm và đóng góp,

chỉ bảo tận tình của quý thầy cô và các bạn để đồ án ngày càng hoàn thiện hơn.

Một lần nữa em xin gửi làm cảm ơn chân thành nhất!

Đà Nẵng, tháng 3 năm 2012

Sinh viên thực hiện

Nguyễn Đức Trung – Lớp CCMM03C

Page 3: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

MỤC LỤC

LỜI CẢM ƠN....................................................................................................................... i

MỤC LỤC............................................................................................................................ii

DANH MỤC CÁC HÌNH VẼ..............................................................................................v

MỞ ĐẦU.............................................................................................................................vi

CHƯƠNG 1: TỔNG QUAN VỀ MẠNG MÁY TÍNH.......................................................1

VÀ ĐỊNH TUYẾN TRONG MẠNG MÁY TÍNH..............................................................1

1.1. TỔNG QUAN VỀ MẠNG MÁY TÍNH................................................................1

1.1.1. Khái niệm.........................................................................................................1

1.1.2. Lịch sử phát triển.............................................................................................1

1.1.3. Ứng dụng của mạng máy tính..........................................................................2

1.1.4. Kiến trúc mạng máy tính..................................................................................4

1.1.4.1. Một số kiểu kiến trúc cơ bản:....................................................................5

1.1.5. Phân loại các mạng máy tính...........................................................................6

1.2. TỔNG QUAN VỀ ĐỊNH TUYẾN TRONG MẠNG MÁY TÍNH........................7

1.2.1. Định nghĩa Router............................................................................................8

1.2.2. Bảng định tuyến...............................................................................................8

1.2.3. Giao thức..........................................................................................................9

1.2.4. Khái niệm định tuyến.....................................................................................10

1.2.5. Phân loại định tuyến.......................................................................................10

1.2.5.1. Định tuyến tập trung................................................................................10

1.2.5.2. Định tuyến phân tán................................................................................11

1.2.5.3. Định tuyến trong (Interior Routing)........................................................11

1.2.5.4. Định tuyến ngoài (Exterior Routing).......................................................11

CHƯƠNG 2: ĐỊNH TUYẾN VỚI GIAO THỨC BGP.....................................................12

2.1. KHÁI NIỆM CƠ BẢN VỀ BGP..........................................................................12

2.1.1. Định nghĩa......................................................................................................12

2.1.2. Sự cần thiết của BGP.....................................................................................12

2.1.3. Thuật ngữ BGP..............................................................................................12

i

Page 4: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

2.1.4. Một số tính chất của BGP..............................................................................13

2.2. HOẠT ĐỘNG CỦA BGP.....................................................................................13

2.2.1. Cập nhật bảng định tuyến...............................................................................14

2.2.2. Thiết lập mối quan hệ BGP neighbor.............................................................14

2.3. ĐỊNH DẠNG TIÊU ĐỀ CỦA BẢN TIN.............................................................15

2.3.1. Bản tin OPEN.................................................................................................15

2.3.2. Bản tin UPDATE...............................................................................................17

2.3.3. Bản tin KEEPALIVE.....................................................................................19

2.3.4. Bản tin NOTIFICATION...............................................................................19

2.4. CÁC THUỘC TÍNH QUAN TRỌNG..................................................................20

2.4.1. Phân loại.........................................................................................................20

2.4.2. Các thuộc tính cơ bản.....................................................................................20

2.4.2.1. Thuộc tính ORIGIN....................................................................................20

2.4.2.2. Thuộc tính AS_PATH.................................................................................21

2.4.2.3. Thuộc tính NEXT_HOP..............................................................................22

2.4.2.4. Thuộc tính MULTI_EXIT_DISC................................................................23

2.4.2.5. Thuộc tính LOCAL_PREF..........................................................................24

2.4.2.6. Thuộc tính Weight.......................................................................................25

2.5. THUẬT TOÁN TÌM ĐƯỜNG ĐI TỐT NHẤT CỦA BGP.................................26

2.6. MỘT SỐ LỖI VÀ CÁCH XỬ LÝ........................................................................28

2.6.1. Lỗi phần Header của bản tin..........................................................................28

2.6.2. Lỗi bản tin OPEN...........................................................................................28

2.6.3. Lỗi bản tin UPDATE.....................................................................................29

2.6.4. Lỗi bản tin NOTIFICATION.........................................................................30

2.6.5. Lỗi bản tin Hold Timer Expired.....................................................................30

2.6.6. Lỗi Finite State Machine................................................................................30

2.6.7. Cease..............................................................................................................30

2.6.8. Lỗi xung đột kết nối.......................................................................................30

CHƯƠNG 3. MÔ PHỎNG HỆ THỐNG MẠNG SỬ DỤNG GIAO THỨC ĐỊNH

TUYẾN BGP......................................................................................................................31

ii

Page 5: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

3.1. MÔ HÌNH HỆ THỐNG MẠNG SỬ DỤNG ĐỊNH TUYẾN BGP.....................31

3.2. CÀI ĐẶT VÀ KIỂM TRA HỆ THỐNG..............................................................31

3.2.1. Cài đặt giao thức BGP....................................................................................31

3.2.2. Kiểm tra hệ thống...........................................................................................37

3.3. TỐI ƯU HỆ THỐNG............................................................................................40

KẾT LUẬN........................................................................................................................43

DANH MỤC TÀI LIỆU THAM KHẢO...........................................................................44

NHÂN XÉT CỦA CÁN BỘ HƯỚNG DẪN.....................................................................45

iii

Page 6: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

DANH MỤC CÁC HÌNH VẼ

Hình 1.1. Mô hình mạng hình sao........................................................................................5

Hình 1.2. Mô hình mạng hình tuyến....................................................................................6

Hình 1.3. Mô hình mạng hình vòng.....................................................................................6

Hình 1.4. Bảng định tuyến của Router Cisco.......................................................................9

Hình 1.5. Định tuyến trên mạng Internet............................................................................10

Hình 2.1. Hệ thống nhiều AS.............................................................................................14

Hình 2.2. Định dạng tiêu đề bản tin....................................................................................15

Hình 2.3. Cấu tạo bản tin OPEN........................................................................................16

Hình 2.4. Định dạng trường Otional Parameters của bản tin OPEN..................................17

Hình 2.5. Định dạng bản tin UPDATE..............................................................................17

Hình 2.6. Định dạng trường Withdrawn Routes của thông điệp UPDATE.......................17

Hình 2.7. Định dạng trường Path Attribute của bản tin UPDATE.....................................18

Hình 2.8. Định dạng trường Attribute Type.......................................................................18

Hình 2.9. Định dạng trường Network Layer Reachability Information.............................19

Hình 2.10. Định dạng bản tin NOTIFICATION................................................................20

Hình 2.11. Mô tả thuộc tính AS_PATH của BGP..............................................................22

Hình 2.12. Mô tả thuộc tính NEXT_HOP của EBGP........................................................23

Hình 2.13. Mô tả thuộc tính NEXT_HOP của IGBP.........................................................23

Hình 2.14. Mô tả thuộc tính MULTI_EXIT_DISC của BGP............................................24

Hình 2.15. Mô tả thuộc tính LOCAL_PREF của BGP......................................................25

Hình 2.16. Mô tả Thuộc tính Weight.................................................................................26

Hình 3.1. Mô hình mạng mô phỏng...................................................................................31

iv

Page 7: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

MỞ ĐẦU

1. Lý do chọn đề tài.

Như chúng ta đã biết, nói đến mạng máy tính là nói đến truyền dữ liệu trên mạng.

Vậy, dữ liệu trên mạng được truyền như thế nào? Dữ liệu trên mạng được truyền nhờ các

bộ định tuyến thực thi các giải thuật chọn đường đi (hay chúng ta vẫn gọi là giao thức

định tuyến).

Chúng ta đã nói rất nhiều đến giao thức định tuyến, một trong những giao thức đó

phải để đến là giao thức định tuyến Border gateway protocol (BGP). Đây là giao thức mà

ngày nay được dùng để định tuyến liên vùng.

Xác định được tầm quan trọng của giao thức này trong hệ thống mạng ngày nay

nên em đã chọn và nghiên cứu đề tài “Tìm hiểu và triển khai hệ thống mạng với giao

thức BGP cho doanh nghiệp” với mục đích tìm hiểu sâu sắc về cơ chế hoạt động của nó

cũng như phát hiện ra những nhược điểm để tìm những giải pháp khắc phục những nhược

điểm này.

2. Mục tiêu và nhiệm vụ nghiên cứu.

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

Triển khai hệ thống mạng với giao thức định tuyển BGP trên môi trường giả lập sử

dụng phần mềm GNS3.

3. Đối tượng và phạm vi nghiên cứu.

Nghiên cứu mô hình hệ thống mạng với giao thức định tuyến BGP.

Nghiên cứu triển khai hệ thống mạng với giao thức định tuyến BGP cho doanh

nghiệp.

4. Phương pháp nghiên cứu.

Dưới sự hướng dẫn của cán bộ hướng dẫn.

Tìm hiểu các tài liệu liên quan về giao thức định tuyến BGP và các hệ thống mạng

được triển khai với giao thức định tuyến BGP.

Triển khai thực nghiệm trên môi trường ảo với phần mềm giả lập GNS3 để kiểm

chứng lý thuyết đã nghiên cứu được.

v

Page 8: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

5. Ý nghĩa khoa học và thực tiễn.

- Ý nghĩa khoa học:

Cung cấp một bộ tài liệu học tập và tham khảo cho các khóa sau.

Cung cấp một bộ tài liệu tập huấn triển khai hệ thống mạng với giao thức BGP.

- Ý nghĩa thực tiễn:

Sau khi thực hiện đề tài có thể giúp sinh viên nâng cao kỹ năng định tuyến với một

số thiết bị, cách xây dựng một hệ thống mạng với giao thức BGP.

Triển khai được một hệ thống mạng với giao thức định tuyến BGP.

vi

Page 9: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

CHƯƠNG 1: TỔNG QUAN VỀ MẠNG MÁY TÍNH

VÀ ĐỊNH TUYẾN TRONG MẠNG MÁY TÍNH

1.1. TỔNG QUAN VỀ MẠNG MÁY TÍNH

1.1.1. Khái niệm

Mạng máy tính hay hệ thống mạng là một tập hợp các máy tính tự hoạt được kết nối

với nhau thông qua các phương tiện truyền dẫn nhằm cho phép chia sẻ tài nguyên: máy

tính, máy fax, tập tin, dữ liệu…

Một máy tính được gọi là tự hoạt (autonomuous) nếu nó có thể khởi động, vận hành

các phần mềm đã cài đặt và tắt máy mà không cần phải có sự điểu khiển hay chi phối của

một máy tính khác.

Các thành phần của mạng có thể bao gồm:

Các thiết bị đầu cuối (end system) kết nối với nhau tạo thành mạng, có thể

là các máy tính hoặc các thiết bị khác. Nói chung hiện nay, ngày càng nhiều các loại thiết

bị có khả năng kết nối vào mạng máy tính như điện thoại di động, PDA, tivi,…

Môi trường truyền (media) là các thao tác truyền thông được thực hiện qua đó.

Môi trường truyền có thể là các loại dây dẫn (dây cáp), sóng (đối với các mạng không

dây).

Giao thức (protocol) là các quy tắc quy định cách trao đổi dữ liệu giữa các thực

thể.

1.1.2. Lịch sử phát triển

Máy tính của thập niên 1940 là các thiết bị cơ-điện tử lớn và rất dễ hỏng. Sự phát

minh ra transitor bán dẫn vào năm 1947 tạo ra cơ hội để làm ra chiếc máy tính nhỏ và

đáng tin cậy hơn.

Năm 1950, các máy tính mainframe chạy bởi các chương trình phiếu đục lỗ bắt đầu

được dùng trong các học viện lớn. Điều này tuy tạo nhiều thuận lợi với máy tính có khả

năng được lập trình nhưng cũng có rất nhiều khó khăn trong việc tạo ra các chương trình

dựa trên phiếu đục lỗ này.

vii

Page 10: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Vào cuối thập niên 1950, mạch tích hợp (IC) chứa nhiều transitor trên một mẫu bán

dẫn nhỏ được phát minh, tạo ra một bước nhảy vọt trong việc tạo ra các máy tính mạnh

hơn, nhanh hơn và nhỏ hơn. Đến nay, IC có thể chứa hàng triệu transitor trên một mạch.

Vào cuối thập niên 1960, đầu thập niên 1970, các máy tính nhỏ được gọi là

minicomputer bắt đầu xuất hiện.

Năm 1977, công ty máy tính Apple Computer giới thiệu máy vi tính cũng được gọi

là máy tính cá nhân (personal computer – PC).

Năm 1981, IBM đưa ra máy tính cá nhân đầu tiên. Sự thu nhỏ ngày càng tinh vi hơn

của các IC đưa đến việc sử dụng rộng rãi máy tính cá nhân tại nhà và trong kinh doanh.

Vào giữa thập niên 1980, người sử dụng dùng các máy tính độc lập bắt đầu chia sẻ

tập tin bằng cách dùng modem kết nối với máy tính khác. Cách thức này được gọi là điểm

nối điểm, hay truyền theo kiểu quay số. Khái niệm này được mở rộng bằng cách dùng các

máy tính là trung tâm truyền tin trong một kết nối quay số. Các máy tính này được gọi là

sàn thông báo (bullentin board). Các người dùng kết nối đến sàn thông báo này, để lại đó

hay lấy đi các thông điệp, cũng như gửi lên hay tải về các tập tin. Hạn chế của hệ thống là

có rất ít hướng truyền tin, và chỉ với những ai biết về sàn thông báo đó. Ngoài ra, các máy

tính sàn thông báo cần một modem cho mỗi kết nối, khi số lượng kết nối tăng lên, hệt

thống không đáp ứng được nhu cầu.

Qua các thập niên 1950, 1970, 1980 và 1990, Bộ Quốc phòng Hoa kỳ đã phát triển

các mạng diện rộng WAN tin cậy nhằm mục đích quân sự và khoa học. Công nghệ này

khác truyền tin điểm nối điểm. Nó cho phép nhiều máy tính kết nối lại với nhau bằng các

đường dẫn khác nhau. Bản thân mạng sẽ xác định dữ liệu di chuyển từ máy tính này đến

máy tính khác như thế nào. Thay vì chỉ có thể thông tin với một máy tính tại một thời

điểm, nó có thể thông tin với nhiều máy tính cùng lúc bằng một kết nối. WAN của Bộ

quốc phòng Hoa Kỳ về sau trở thành Internet.

1.1.3. Ứng dụng của mạng máy tính

Trong các tổ chức: Trước khi có mạng, trong các tổ chức, mỗi nơi đều phải có chỗ

lưu trữ dữ liệu riêng, các thông tin trong nội bộ sẽ khó được cập nhật kịp thời; một ứng

dụng ở nơi này không thể chia sẻ cho nơi khác. Với một hệ thống mạng người ta có thể:

viii

Page 11: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Chia sẻ các tài nguyên: Các ứng dụng, kho dữ liệu và các tài nguyên khác như sức

mạnh của các CPU được dùng chung và chia sẻ thì cả hệ thống máy tính sẽ làm việc hiệu

quả hơn.

Độ tin cậy và sự an toàn của thông tin cao hơn: Thông tin được cập nhật theo thời

gian thực, do đó chính xác hơn. Một khi có một hay một số máy tính bị hỏng thì các máy

còn lại vẫn có khả năng hoạt động và cung cấp dịch vụ không gây ách tắc.

Tiết kiệm: Qua kỹ thuật mạng người ta có thể tận dụng khả năng của hệ thống,

chuyên môn hóa các máy tính, và do đó, phục vụ đa dạng hóa hơn. Ví dụ: Hệ thống mạng

có thể cung cấp dịch vụ suốt ngày và nhiều nơi có thể dùng cùng một chương trình ứng

dụng, chia nhau một cơ sở dữ liệu và các máy in, do đó, tiết kiệm được rất nhiều tài

nguyên. Ngoài ra, khi tạo mạng, người chủ chỉ cần đầu tư một hoặc một vài máy tính có

khả năng hoạt động cao để làm máy chủ cung cấp các dịch vụ chính yếu, đa số các máy

còn lại là các máy khách dùng để chạy ứng dụng thông thường và khai thác hay yêu cầu

các dịch vụ mà máy chủ cung cấp. Một hệ thống như vậy gọi là mạng có kiểu chủ - khách

(client – server model). Người ta còn gọi các máy dùng để nối vào máy chủ là máy trạm

(work-station). Tuy nhiên các máy trạm vẫn có thể hoạt động độc lập mà không cần đến

các dịch vụ cung cấp từ máy chủ.

Mạng máy tính còn là một phương tiện thông tin mạnh và hữu hiệu giữa các cộng

sự trong tổ chức.

Cho nhiều người: Hệ thống mạng cung cấp nhiều tiện lợi cho sự truyền thông tin

trong các mối quan hệ người với người như:

Cung cấp thông tin từ xa giữa các cá nhân.

Liên lạc trực tiếp và riêng tư giữa các cá nhân với nhau.

Làm phương tiện giải trí chung nhau như: các trò chơi, các thú tiêu khiển, chia sẻ

phim ảnh…qua mạng.

Các ứng dụng quan trọng hiện tại qua mạng là: thư điện tử, hội nghị truyền hình

(video conference), điện thoại Internet, giao dịch và lớp học ảo( e-learning hay virtual

class), dịch vụ tìm kiếm thông tin qua các máy truy tìm. v.v.

ix

Page 12: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Các vấn đề xã hội: Quan hệ giữa người với người trở nên nhanh chóng, dễ dàng và

gần gũi hơn. Tuy nhiên, mạng máy tính cũng mang lại nhiều vấn đề xã hội cần giải quyết

như:

Lạm dụng hệ thống mạng để làm điều phi pháp hay thiếu đạo đức: Các tổ chức

buôn bán người, khiêu dâm, lừa gạt, hay tội phạm qua mạng, tổ chức tin tặc để ăn cắp tài

sản của công dân và các cơ quan, tổ chức khủng bố.v.v.

Mạng càng lớn thì nguy cơ lan truyền các phần mềm ác tính càng dễ xảy ra.

Hệ thống buôn bán trở nên khó kiểm soát hơn nhưng cũng tạo điều kiện cho cạnh

tranh gây gắp hơn.

Một vấn đề nảy sinh là xác định biên giới giữa việc kiểm soát nhân viên làm công

và quyền tư hữu của họ. (Chủ thì muốn toàn quyền kiểm soát các điện thư hay các cuộc

trò chuyện trực tuyến nhưng điều này có thể vi phạm nghiêm trọng quyền cá nhân).

Vấn đề giáo dục thanh thiếu niên cũng trở nên khó khăn hơn vì các em có thể

tham gia vào các hoạt động trên mạng mà cha mẹ rất khó kiểm soát.

Hơn bao giờ hết, với phương tiện thông tin nhanh chóng thì sự tự do ngôn luận

hay lạm dụng quyền ngôn luận cũng có thể ảnh hưởng sâu rộng hơn trước đây như là các

trường hợp của các phần mềm quảng cáo (adware) và các thư rác (spam mail).

1.1.4. Kiến trúc mạng máy tính

Kiến trúc mạng thể hiện cách nối các nút mạng với nhau và tập hợp các quy tắc, quy

ước mà tất cả các thực thể tham gia truyền thông trên mạng phải tuân theo để cho mạng

hoạt động tốt.

Có hai cách nối cơ bản:

+ Điểm nối điểm (point to point).

+ Điểm nối đa điểm (point to multipoint).

Mạng điểm nối điểm: Bao gồm nhiều mối nối giữa các cặp máy tính với nhau. Để

chuyển từ nguồn tới đích, một gói tin có thể phải đi qua các máy trung gian. Thường thì

có thể có nhiều đường di chuyển có độ dài khác nhau (từ máy nguồn tới máy đích với số

lượng máy trung gian khác nhau). Thuật toán để định tuyến đường truyền giữ vai trò quan

trọng trong kỹ thuật này.

x

Page 13: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Mạng điểm nối đa điểm: Bao gồm một kênh truyền thông được chia sẻ cho mọi

máy tính trong mạng. Mẫu thông tin ngắn gọi là gói tin được gửi ra bởi một máy bất kỳ

thì sẽ tới được tất cả máy khác. Trong gói tin sẽ có một phần ghi địa chỉ gói đó muốn gửi

tới. Khi nhận các gói tin, mỗi máy sẽ kiểm tra lại phần địa chỉ này. Nếu một gói tin là

dành cho đúng máy đang kiểm tra thì sẽ được xử lý tiếp, bằng không thì bỏ qua.

1.1.4.1. Một số kiểu kiến trúc cơ bản:

Kiến trúc hình sao (Star)

Gồm một trung tập và các nút mạng nối vào trung tâm này. Các nút mạng là các

máy tính, các trạm đầu cuối và các thiết bị khác của mạng. Trung tâm mạng điều phối mọi

hoạt động của mạng với các chức năng cơ bản:

+ Xác định cặp địa chỉ gửi và nhận liên lạc với nhau.

+ Theo dõi và xử lý quá trình trao đổi thông tin.

+ Theo dõi, thông báo trạng thái mạng.

Hình 1.1. Mô hình mạng hình sao

Kiến trúc hình BUS

Topo BUS có cấu hình trong đó, các máy tính (bao gồm cả máy chủ và máy trạm)

nối vào một đường cáp chính và sử dụng chung nhau đường cáp này. Phía hai đầu cáp

được bịt bởi một thiết bị chặn gọi là Terminator

xi

Page 14: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Hình 1.2. Mô hình mạng hình tuyến

Kiến trúc hình vòng (RING)

Trong cấu hình mạng RING, các nút mạng được bố trí theo một vòng tròn. Đường

dây cáp chung tạo thành một vòng khép kín, cho phép tín hiệu chạy quanh theo một chiều

xác định trước.

Hình 1.3. Mô hình mạng hình vòng

1.1.5. Phân loại các mạng máy tính

Có nhiều cách phân loại mạng máy tính: Theo phạm vi mạng, theo kỹ thuật chuyển

mạch, theo môi trường truyền dẫn.v.v.

Theo môi trường truyền dẫn:

+ Mạng hữu tuyến.

+ Mạng vô tuyến.

Theo kỹ thuật chuyển mạch có:

+ Chuyển mạch kênh: Khi 2 ứng dụng cần trao đổi thông tin với nhau, giữa chúng sẽ

được thiết lập một kênh (circuit) cố định. Kênh này được duy trì trong suốt thời gian liên

xii

Page 15: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

lạc. Dữ liệu sẽ chỉ được truyền đi giữa hai máy thông qua kênh cố định này. Đây là

phương thức truyền thống.

+ Chuyển mạch gói: Giữa hai thực thể trao đổi thông tin không có kênh cố định

được thiết lập. Thông tin cần trao đổi được chia ra thành các khối nhỏ gọi là gói tin có

khuôn dạng qui định trước. Mỗi gói tin có vùng dữ liệu và tiêu đề trong đó có chứa thông

tin điều khiển và thông tin địa chỉ cần tới. Mỗi nút mạng trung gian sẽ đọc các thông tin

này và chuyển tiếp gói tin sang nút tiếp theo trên một tuyến đường tới đích. Như vậy, mỗi

gói tin sẽ được lưu tạm thời tại mỗi nút trung gian, nút trung gian đó sẽ đọc thông tin điều

khiển và chuyển tiếp gói.

Tùy thuộc theo điều kiện của mạng, thông tin cập nhật của nút trung gian, các gói tin

có thể đi theo nhiều tuyến đường khác nhau để đến đích.

+ Chuyển mạch thông điệp: Giống như chuyển mạch gói nhưng gói tin là các thông

điệp.

+ Chuyển mạch tế bào: Giống như chuyển mạch gói nhưng gói tin có kích thước cố

địn và được gọi là tế bào (cell). Việc định tuyến cho các tế bào được thực hiện dựa trên

đường ảo (VP), kênh ảo (VC).

Theo phạm vi có mạng LAN, MAN, WAN, GAN:

LAN: Mạng có phạm vi tương đối nhỏ (tòa nhà, trường học…) cự ly trong vòng vài

trăm mét. Các máy được nối với nhau qua đường truyền là cáp đồng trục, cáp xoắn hoặc

cáp sợi quang. LAN thường được sử dụng trong phạm vi một cơ quan, tổ chức hoặc công

ty. Các LAN có thể nối với nhau thành WAN.

MAN: Mạng có phạm vi trong thành phố, một đô thị, cự ly trong vòng 10km.

Đường truyền khoảng 50 – 100 Mbps.

WAN: Mạng có diện tích trong một quốc gia hay châu lục, cự ly khoảng 100km.

Các kết nối thường được thực hiện qua mạng viễn thông.

GAN: Mạng toàn cầu, cho phép kết nối nhiều châu lục với nhau. Một thí dụ điển

hình cho mạng này là Internet. Các kết nối thường được thực hiện qua mạng viễn thông

và vệ tinh hoặc cáp sợi quang quốc tế.

1.2. TỔNG QUAN VỀ ĐỊNH TUYẾN TRONG MẠNG MÁY TÍNH

1.2.1. Định nghĩa Router

xiii

Page 16: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Router là một thiết bị thực hiện ở tầng thứ 3 (tầng mạng) của mô hình OSI. Nó xác

định tuyến đường tối ưu và vận chuyển các nhóm thông tin trong một liên mạng sau khi

hiểu được giao thức mạng. Nó dùng một bảng định tuyến (routing table) để lưu trữ các

ánh xạ - cổng địa chỉ mạng. Router đảm nhận hai chức năng chính:

Phân cách các mạng máy tính thành các Broadcast domain (miền quảng bá) để

giảm hiện tượng xung đột, giảm broadcast hay thực hiện chức năng bảo mật.

Kết nối các mạng WAN (mạng diện rộng) với nhau thông qua các đường truyền

thông: điện thoại, ISDN, T1, X.25…

Một cách tổng quát, router sẽ định tuyến các gói tin theo các bước sau:

Đọc gói tin.

Gỡ bỏ định dạng quy định bởi giao thức của nơi gửi.

Thay thế phần gỡ bỏ đó bằng định dạng của giao thức đích đến.

Cập nhật thông tin về việc chuyển dữ liệu: địa chỉ, trạng thái của nơi gửi, nơi

nhận.

Gửi gói tin đến nơi nhận qua đường truyền tối ưu nhất.

Ngoài ra, Router còn được cấu hình đảm nhận các chức năng như Gateway, Proxy…

1.2.2. Bảng định tuyến

Bảng định tuyến hay còn gọi là bảng chọn đường (Routing table). Các Host và

Router trên mạng Internet đều chứa một bảng định tuyến để tính toán các chặng tiếp theo

cho gói tin. Bảng định tuyến này gán tương ứng mỗi địa chỉ đích với một địa chỉ Router

cần đến ở chặng tiếp theo. Địa chỉ đích trong bảng định tuyến có thể bao gồm cả địa chỉ

mạng, mạng con và các hệ thống độc lập. Trong bảng định tuyến có thể bao gồm một

tuyến mặc định được biểu diễn bằng địa chỉ 0.0.0.0 (default route)

Bảng định tuyến có thể được tạo ra bởi người quản trị mạng hoặc từ sự trao đổi

thông tin định tuyến giữa các Router bằng các giao thức định tuyến động. Bảng định

tuyến có rất nhiều dạng nhưng dạng đơn giản và phổ biến nhất có thể diễn đạt được toàn

bộ sơ đồ hình mạng bao gồm các thông tin sau:

+ Địa chỉ đích của mạng, mạng con hoặc hệ thống độc lập.

+ Địa chỉ IP của giao diện Router kế tiếp phải đến.

+ Giao tiếp vật lý trên Router phải sử dụng đến chặng kế tiếp. xiv

Page 17: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

+ Mặt nạ mạng của địa chỉ đích.

+ Khoảng cách quản trị.

+ Thời gian (tính theo giây) từ khi Router cập nhật lần cuối.

Khi một router khởi động, nó chỉ biết về những giao diện kết nối trực tiếp với nó.

Các giao diện xuất hiện trong bảng định tuyến được đánh dấu bằng chữ C trong cột đầu

tiên của bảng.

Hình 1.4. Bảng định tuyến của Router Cisco

1.2.3. Giao thức

Giao thức là một tập hợp các luật lệ và tiêu chuẩn được thiết kế để cho phép các máy

tính (và các thiết bị) có thể kết nối và trao đổi thông tin với nhau. Để có thể truyền thông

hiệu quả trên mạng, các máy tính phải tuân theo các quy ước chung và một trong số các

quy ước chung đó là giao thức. Có thể hiểu giao thức qua ví dụ rất đời thường: Một người

Việt Nam không thể hiểu được chữ viết của người Thái Lan, vì họ hiểu và viết các mẫu tự

(giao thức) khác nhau.

Có nhiều giao thức được sử dụng để truyền thông trên mạng, dưới đây là một số các

giao thức tiêu biểu:

TCP: Thiết lập kết nối giữa các máy tính để truyền dữ liệu. Nó chia nhỏ dữ liệu ra

thành những gói (packet) và đảm bảo việc truyền dữ liệu thành công.

IP: Định tuyến các gói dữ liệu khi chúng được truyền qua Internet, đảm bảo dữ

liệu sẽ đến đúng nơi cần nhận.

HTTP: Cho phép trao đổi thông tin (chủ yếu ở dạng siêu văn bản) qua Internet.

FTP: Cho phép trao đổi tập tin qua Internet.

SMTP: Cho phép gửi các thông điệp như thư điện tử (e-mail) qua Internet.

POP3: Cho phép nhận các thông tin thư điện tử qua Internet.

xv

Page 18: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

MIME: Một mở rộng của giao thức SMTP là cho phép gửi kèm các tập tin

nhị phân, phim, nhạc… theo thư điện tử.

WAP: Cho phép trao đổi thông tin giữa các thiết bị không dây như điện thoại di

động.

1.2.4. Khái niệm định tuyến

Định tuyến là cách thức mà Router hay PC (hoặc thiết bị mạng khác) sử dụng để

truyền phát các gói tin tới địa chỉ đích trên mạng.

Hình 1.5. Định tuyến trên mạng Internet

Khái niệm routing gắn liền với mạng Intranet và Internet sử dụng mô hình định

tuyến hop-by-hop. Điều này có nghĩa rằng mỗi PC hay Router sẽ tiến hành kiểm tra

trường địa chỉ đích trong phần tiêu đề của gói IP, tính toán chặng tiếp theo (Next-hop) để

từng bước chuyển gói IP dần đến đích của nó và các Router cứ tiếp tục phát các gói tới

chặng tiếp theo. Như vậy, cho tới khi các gói IP đến được đích. Để làm được việc này thì

các Router cần phải được cấu hình một bảng định tuyến (routing table) và giao thức định

tuyến (routing protocol).

1.2.5. Phân loại định tuyến

Có nhiều cách phân loại định tuyến, dưới đây là một số định tuyến cơ bản

1.2.5.1. Định tuyến tập trung

Định tuyến tập trung thường được sử dụng trong các “mạng thông minh” mà các

node mạng tự nó giữ liên quan đơn giản. Các tuyến được tính toán tập trung tại một bộ xử

lý tuyến và sau đó phân bố chúng ra các Router trên mạng bất cứ khi nào sự cập nhật

được yêu cầu. Hay nói cách khác, được đặc trưng bởi sự tồn tại của một (hoặc vài) trung

xvi

Page 19: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

tâm điều khiển mạng thực hiện việc định tuyến. Sau đó, nó gửi các bảng định tuyến tới tất

cả các nút dọc theo con đường đã chọn đó. Theo cách này thì các nút mạng có thể hoặc

không gửi bất kỳ thông tin nào về trạng thái của chúng tới trung tâm, hoặc gửi theo định

kỳ hoặc chỉ gửi khi trạng thái mạng thay đổi.

1.2.5.2. Định tuyến phân tán

Các vùng phân chia thành các vùng tự trị AS. Các thành phần trong một AS chỉ biết

về nhau, mà không quan tâm tới các thành phần trong AS khác, khi có yêu cầu giao tiếp

với các AS khác sẽ thông qua thành phần ở biên AS. Từ đó các giao thức định tuyến được

chia thành giao thức trong cùng một AS là IGP (Interior Gateway Protocol) và giao thức

giao tiếp giữa các AS là EGP (Exterior Gateway Protocol).

1.2.5.3. Định tuyến trong (Interior Routing)

Định tuyến trong xảy ra bên trong một hệ thống độc lập (AS), phần tử có thể định

tuyến cơ bản là mạng hoặc mạng con IP, các giao thức thường dùng là RIP, IGRP, OSPF,

EIGRP…

1.2.5.4. Định tuyến ngoài (Exterior Routing)

Định tuyến xảy ra giữa các hệ thống độc lập (AS), và liên quan tới dịch vụ của nhà

cung cấp mạng sử dụng giao thức định tuyến ngoài rộng và rất phức tạp. Phần tử cơ bản

có thể được định tuyến là hệ thống độc lập (AS). Giao thức thường là BGP.

xvii

Page 20: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

CHƯƠNG 2: ĐỊNH TUYẾN VỚI GIAO THỨC BGP

2.1. KHÁI NIỆM CƠ BẢN VỀ BGP

2.1.1. Định nghĩa

Như ta đã biết Internet được tạo bởi rất nhiều AS. 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à TCP

(Transmission Control Protocol). BGP sử dụng cổng 179 để thiết lập kết nối. BGP hỗ trợ

VLSM (variable-length subnet mask), CIDR (classless interdomain routing), 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 speaking 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ó.

2.1.2. Sự cần thiết của BGP

BGP là một giao thức định tuyến phức tạp, được dùng nhiều trên Internet và trong

các công ty đa quốc gia. Giao thức này được thiết kế để kết nối các AS, không kết nối các

subnets với 1 AS. Một AS là một nhóm các router cùng chia sẻ một chính sách và hoạt

động trong cùng một miền nhất định. Mỗi AS được định dạng bởi một số và được cung

cấp bởi một nhà cung cấp AS hoặc bởi các ISPs. Con số này được chia làm 2 loại: Public

có giá trị từ 1 đến 64511, private có giá trị từ 64512 đế 65535. Các công ty lớn có thể

dùng BGP như là một kết nối giữa các mạng ở các quốc gia khác nhau.

2.1.3. Thuật ngữ BGP

Autonomous System: Là một hệ thống tự trị.

BGP speaker: Là Router mà được cài đặt và chạy giao thức BGP.

Peer/neighbor: : Là hai bộ định tuyến bất kỳ hình thành nên một kết nối TCP để trao

đổi thông tin định tuyến BGP. Cách gọi peer và neighbor là như nhau.

Nguyễn Đức Trung – Lớp CCMM03C Trang 1

Page 21: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

eBGP External Border Gateway Protocol (eBGP): Là giao thức định tuyến được sử

dụng để trao đổi thông tin định tuyến giữa các BGP peer của các AS khác nhau.

iBGP Internal Border Gateway Protocol (iBGP): Là giao thức định tuyến sử dụng để

trao đổi thông tin định tuyến giữa các BGP peer của cùng chung một AS

Inter-AS routing: Là định tuyến xảy ra giữa các AS khác nhau.

Inter-AS routing: Là định tuyến xảy ra trong cùng một AS.

2.1.4. Một số tính chất của BGP

- BGP là một giao thức định tuyến dạng path-vector và việc chọn đường đi tốt nhất

thông thường dựa vào một tập hợp các thuộc tính.

- Nhiệm vụ của BGP là đảm bảo thông tin liên lạc trao đổi thông tin định tuyến giữa

các AS.

- BGP sử dụng giao thức TCP 179.

- BGP chỉ ra chính xác danh sách toàn bộ đường dẫn đến đích.

- Chống vòng lặp rất hiệu quả nhờ vào cơ chế xem xét các tuyến đường mà router

gửi về xem có chính bản thân AS trong đó hay không nếu có route sẽ biết được ngay là đã

bị lặp và sẽ loại bỏ thông tin đó.

- Trong giai đoạn đầu tiên thiết lập mối quan hệ BGP thì toàn bộ thông tin cập nhật

sẽ được trao đổi và sau đó sẽ chuyển sang cơ chế trigger – update.

- Một điểm khác biệt thấy rõ nhất của BGP so với các giao thức định tuyến loại IGP

(như OSPF, RIP, EIGRP, IGRP,…) đó là nó không quan tâm đến các subnet cụ thể trong

một công ty, cơ quan,… mà nó quan tâm đến việc chuyển tải đầy đủ thông tin đến 1 AS

khác với các chính sách định tuyến (policy) cần thiết.

- BGP có thể sử dụng giữa các router trong cùng 1 AS và khác AS. Khi BGP được

dùng trong cùng 1 AS thì được gọi là iBGP, còn dùng để kết nối các AS khác nhau thì gọi

là eBGP.

2.2. HOẠT ĐỘNG CỦA BGP

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. Trên hình cho biết rất nhiều AS và chúng sử dụng BGP để chia sẻ thông tin định

Nguyễn Đức Trung – Lớp CCMM03C Trang 2

Page 22: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

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) và External BGP (eBGP)

Hình 2.1. Hệ thống nhiều AS.

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

speaking khác. eBGP được sử dụng giữa BGP speaking device của AS khác nhau.

2.2.1. Cập nhật bảng định tuyến

Chức năng của BGP là để trao đổi thông tin định tuyến giữa các AS khác nhau và

đảm bảo chọn lựa tuyến thông suốt không bị loop. Do BGP sử dụng giao thức TCP nên

nó thừa kết tính tin cậy và kết nối có hướng của TCP.

BGP xây dựng một biểu đồ hình cây của các AS dựa trên thông tin giữa các BGP

neighbor để đảm bảo lựa chọn tuyến không loop. Kết nối giữa hai AS bất kỳ được thể

hiện bởi đường Path

2.2.2. Thiết lập mối quan hệ BGP neighbor

Để chạy giao thức BGP thì đầu tiên các router phải thiết lập mối quan hệ neighbor

hay peer (có nghĩa là kết nối TCP phải được đảm bảo). Sau khi đã thiết lập được mối

quan hệ này, các router neighbor sẽ trao đổi thông tin bằng nhiều bản tin để mở và xác

nhận các thông số kết nối. Tiếp chúng sẽ trao đổi thông tin về các tuyến đường BGP. Sau

khi trao đổi thông tin này được hoàn tất thì các cập nhật thành phần (incremental update)

sẽ được gửi đi khi có sự cố trong mạng chứ không truyền toàn bộ bảng định tuyến (hoạt

động theo cơ chế trigger-update). Nếu như không có thông tin định tuyến nào được trao

Nguyễn Đức Trung – Lớp CCMM03C Trang 3

Page 23: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

đổi thì sau thời gian keepalive (mặc định là 60s) các router chạy BGP sẽ tự động ngắt kết

nối.

2.3. ĐỊNH DẠNG TIÊU ĐỀ CỦA BẢN TIN

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à tối đa là 4093 octet. Header của message bao

gồm những thông tin sau:

Hình 2.2. Định dạng tiêu đề bản tin

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ức 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 đến 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. Với mỗi

một giá trị sẽ tương ứng với kiểu của một bản tin được quy định như sau:

1- Bản tin OPEN

2- Bản tin UPDATE

3- Bản tin NOTIFICATION

4- Bản tin KEEPALIVE

2.3.1. Bản tin OPEN

Bản tin OPEN là bản tin được gửi đầu tin sau khi giao thức 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. Khi OPEN được xác nhận thì các bản tin UPDATE, KEEPALIVE,

NOTIFICATION mới có thể được trao đổi. Bản tin OPEN chỉ gửi và xác nhận một lần

Nguyễn Đức Trung – Lớp CCMM03C Trang 4

Page 24: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

sau khi giao thức TCP được thiết lập, khi đã được xác nhận để mở kết nối thì thông điệp

OPEN không dùng để trao đổi nữa.

Cấu tạo bản tin OPEN bao gồm phần header phải có trong mỗi bản tin thì gồm các

trường sau:

Hình 2.3. Cấu tạo bản tin OPEN

Version: Trường này có kích thước 1 bytes, nó chỉ ra phiên bản của giao thức BGP

đang sử dụng.

Autonomous System: Trường này có kích thước 2 byte, nó chỉ ra số hiệu mạng AS

number nơi đã gửi bản tin này.

Hold-Time: Trường này có kích thước 2 byte, nó chính là số giây mà nơi gửi đặt ra

cho bộ đếm thời gian Hold-Timer.

BGP Identifier: Trường này có kích thước 4 byte, nó chỉ ra nơi gửi thông điệp này.

Một BGP speaker bao giờ cũng được định dạng bằng một địa chỉ IP. Và địa chỉ IP này

chính là giá trị trong trường BGP Identifier.

Optional Parameters Length: Trường này có kích thước 1 byte, nó cho biết toàn bộ

độ dài của trường Optional Parameters. Nếu giá trị là 0 tức là không có trường Optional

Parameters.

Optional Parameters: Trường này có kích thước thay đổi, nó chứa một danh sách

các optional parameter mà chúng sẽ được sử dụng trong quá trình đàm phán với neigbor.

Mỗi một optional parameter đã được mã hóa và phân làm 3 thuộc tính, do đó, trường

optional parameters cũng phân làm 3 trường nhỏ để tướng ứng với các thuộc tính của

optional parameter.

Nguyễn Đức Trung – Lớp CCMM03C Trang 5

Page 25: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Hình 2.4. Định dạng trường Otional Parameters của bản tin OPEN

Parameter Type: Có kích thước 1 byte, nó chỉ rõ từng kiểu parameters.

Parameter Length: Có kích thước 1 byte cho biết độ dài của trường Parameter Value.

Parameter Value: Trường này có kích thước tùy thuộc vào kiểu của Parameter mà đã

khai báo trong trường Parameter Type.

2.3.2. Bản tin UPDATE

Bản tin UPDATE được sử dụng để truyền các thông tin tuyến đường (routing

information) giữa các BGP peer. Thông tin trong bản tin này có thể được sử dụng để xây

dựng một đồ thị mô tả liên kết giữa các AS khác nhau.

Một thông điệp UPDATE được sử dụng để quảng bá một feasible route tới một peer

hoặc rút lại các unfeasible route từ dịch vụ. Nó có thể làm hai công việc này cùng một lúc.

Cũng như định dạng bản tin OPEN, thông điệp UPDATE cũng bao gồm phần

header và các trường sau:

Hình 2.5. Định dạng bản tin UPDATE

Unfeasible Routes Length: Trường này có kích thước 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:

Hình 2.6. Định dạng trường Withdrawn Routes của thông điệp UPDATE

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.

Nguyễn Đức Trung – Lớp CCMM03C Trang 6

Page 26: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Prefix: có giá trị biến đổi và chứa đựng IP address prefix.

Total Path Attribute Length: Trường này có kích thước 2 byte, nó cho biết tổng

chiều dài của trường Path Attribute.

Path Attribute: Trường này có kích thước thay đổi, nó chứa một chuỗi các thuộc

tính path, mỗi một thuộc tính path là một bộ 3 cấu tạo như sau:

Hình 2.7. Định dạng trường Path Attribute của bản tin UPDATE

Attribute Type: Có kích thước 2 byte được chia làm 2 phần như sau:

Hình 2.8. Định dạng trường Attribute Type

Attr.Flags:

- Bit cao thứ nhất (bit 0), nếu là 0 thì thuộc tính là kiểu Optional, nếu là 1 thì thuộc

tính là Well-Known.

- Bit cao thứ hai (bit 1), nếu là 0 thì thuộc tính đó là Transitive, nếu là 1 thì nó là

Non-Transitive. Nếu thuộc tính là kiểu Well-Known thì bit này chắc chắn là 1.

- Bit cao thứ ba (bit 2), nếu là 1 thì Optional Transitive là Partial, nếu là 0 thì

Optional Transitive là Complete. Với Well-Known và Optional Non-Transitive thì bit này

là 0.

- Bit cao thứ 4 (bit 3), nếu là 0 thì Attibute Length có chiều dài là 1 byte, nếu là 1 thì

Attribute Length có chiều dài 2 byte. Trường hợp Attribute Length có chiều dài 2 byte chỉ

được sử dụng khi giá trị của thuộc tính lớn hơn 255.

- Bốn bit thấp vẫn chưa được sử dụng và mặc định là giá trị 0.

Attr. Type Code: Trong phần này chứa mã của thuộc tính, ứng với mỗi mã là tên một

thuộc tính.

Attribute Length: Phần này có chiều dài phụ thuộc vào bit cao thứ tư của Attr.Flags

nó cho biết chiều dài của Attribute Value.

Nguyễn Đức Trung – Lớp CCMM03C Trang 7

Page 27: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Attribute Value: Phần này cho biết giá trị của các thuộc tính.

Sau đây là một số thuộc tính:

- ORIGIN

- AS_PATH

- NEXT_HOP

- MULTI_EXIT_DISC

- LOCAL_PREF

Chi tiết về các thuộc tính này sẽ được trình bày trong các phần sau.

Network Layer Reachability Information: Trường này có kích thước thay đổi, nó

chứa một danh sách các IP address Prefix. Mỗi một IP Address Prefix được mã hóa thành

hộ hai giống như ở trường Withdrawn routes. Nhưng đây là các địa chỉ dùng để quảng bá

route tới đó chứ không phải để thu hồi lại như ở trường Withdrawn routes.

Hình 2.9. Định dạng trường Network Layer Reachability Information

Ý nghĩ của Length và Prefix cũng tương tự như ở trường Withdrawn routes.

2.3.3. Bản tin KEEPALIVE

Bản tin KEEPALIVE được sử dụng để duy trì kết nối, chúng được trao đổi một cách

định kỳ giữa các peer để kết nối BGP không rơi vào tình trạng HoldTime và thoát.

Cấu tạo thông điệp KEEPALIVE chỉ bao gồm phần header 19 byte.

2.3.4. Bản tin NOTIFICATION

Bất cứ khi nào có một lỗi xảy ra trong một BGP session, BGP speaker phát ra một

bản tin NOTIFICATION. Ngay sau khi BGP speaker được phát ra thì phiên kết nối sẽ bị

ngắt. Bản tin NOTIFICATION bao gồm error code, error sub-code sẽ cho phép người

quản trị thuận lợi hơn trong quá trình gỡ rồi. Định dạng của bản tin NOTIFICATION như

sau:

Nguyễn Đức Trung – Lớp CCMM03C Trang 8

Page 28: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Hình 2.10. Định dạng bản tin NOTIFICATION

2.4. CÁC THUỘC TÍNH QUAN TRỌNG

2.4.1. Phân loại

Trong phần trước đã trình bày về bản tin UPDATE, trường path attribute trong

thông điệp UPDATE là một trường quan trọng chứa các thông tin về các thuộc tính đường

đi. Có 4 loại thuộc tính được phân như sau:

- Well-Know mandatory

- Well-Know discretionary

- Optional transitive

- Optional non-transitive

Well-Know mandatory: Đây là thuộc tính luôn phải có trong mỗi thông điệp

UPDATE, nếu không có thuộc tính này thì thông điệp lỗi.

Well-Know discretionary: Đây là thuộc tính được mọi thiết bị hỗ trợ nhưng không

nhất thiết phải có trong mỗi thông điệp UPDATE.

Optional transitive: Đây là thuộc tính mà không được tất cả các thiết bị hỗ trợ, nếu

nhận được mà không hiểu thì nó vẫn cứ truyền đến các neighbor của nó.

Optional non-transitive: Đây là thuộc tính có thể không tồn tại ở tất cả các Router,

trường hợp này dù hiểu hay không thì nó cũng không truyền cho các neighbor của nó.

2.4.2. Các thuộc tính cơ bản

2.4.2.1. Thuộc tính ORIGIN

ORIGIN là một thuộc tính Well-Know mandatory. Nó được phát sinh từ một AS nơi

đã bắt nguồn ra thông tin định tuyến (routing information). Nó sẽ được chứa trong bản tin

UPDATE của tất cả các BGP speaker chọn để truyền thông tin này tới các BGP speaker

khác. Giá trị của nó chỉ có thể là 1 trong các giá trị sau:

Nguyễn Đức Trung – Lớp CCMM03C Trang 9

Page 29: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Giá trị Ý nghĩa

0 IGP

1 EGP

2 INCOMPLETE

2.4.2.2. Thuộc tính AS_PATH

AS_PATH là một thuộc tính Well-Know mandatory. Thuộc tính này xác định các

AS mà thông tin định tuyến được mang trong bản tin UPDATE đã đi qua. Một BGP

speaker sẽ truyền một route ngay khi nó nhận được bản tin UPDATE từ một BGP speaker

khác, nó sẽ thêm vào thuộc tính AS_PATH số hiệu mạng (AS number) của chính nó rồi

mới gửi đi. Vậy giá trị của thuộc tính này được tạo ra từ một chuỗi các AS path và mỗi

một AS path segment thể hiện thành bộ ba < path segment type, path segment length, path

segment value>.

Path segment type: Kích thước 1 byte chứa giá trị.

1- AS_SET: Tập hợp các AS chưa sắp xếp mà bản tin UPDATE đã đi ngang qua.

2- AS_SEQUECE: Tập hợp các AS đã sắp xếp mà bản tin UPDATE đã đi ngang

qua.

Path segment length: Kích thước 1 byte chứa số lượng các AS trong trương path

segment value.

Path segment value: Chưa một hoặc nhiều AS number, mỗi một AS number chiếm

kích thước 2 byte.

- Khi một BGP speaker quảng bá một route tới một BGP speaker khác nằm trong

cùng một AS, BGP speaker sẽ không thêm gì vào thuộc tính này trong route gửi đi.

- Khi một BGP speaker quảng bá một route tới một BGP speaker nằm ở một AS bên

cạnh thì BGP speaker sẽ thêm vào AS number của chính nó theo cách như sau:

+ Nếu path segment type đầu tien của thuộc tính là 2 (tức AS_SEQUECE) thì thêm

vào cuối của trường Path segment value.

+ Nếu path segment type đầu tiên của thuộc tính là 1 (tức AS_SET) thì nó sẽ thêm

vào một path segment type mới với giá trị 2 (tức AS_SEQUECE) và số hiệu mạng (AS

number) của chính nó.

Nguyễn Đức Trung – Lớp CCMM03C Trang 10

Page 30: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Thuộc tính này đưa ra để tránh các hiện tượng loop như trong ví dụ sau đây:

Hình 2.11. Mô tả thuộc tính AS_PATH của BGP

AS1 bắt đầu một route có địa chỉ 172.16.1.0/24 quảng bá tới AS2 và AS3, đặt thuộc

tính AS_PATH là AS_path 1. AS3 và AS2 sẽ quảng bá tiếp với AS_path 3,1 và AS_path

2,1. AS1 sẽ không nhận lại các route khi nó tìm thấy trong route này có chứa AS number

của chính nó. Do đó các route này sẽ bị loại bỏ. Đây chính là cơ chế trống loop. AS3 và

AS2 quảng bá route cho nhau và đều đã thêm vào AS number của nó và AS_PATH. Tuy

nhiên, các route vẫn không được cài đặt vào trong bảng định tuyến vì AS2 và AS3 đang

được nhận route cùng một địa chỉ 172.16.1.0/24 với danh sách AS_path ngắn hơn.

2.4.2.3. Thuộc tính NEXT_HOP

Là một thuộc tính Well-Known mandatory, giá trị của nó là một địa chỉ IP của một

Router đường viền mà cần phải được sử dụng như một chặng kế tiếp để tới đích đã được

list trong trường Network Layer Reachability Information của bản tin UPDATE.

Với các peer EGBP, thì địa chỉ IP có là địa chỉ của neighbor quảng bá các route đó.

Với các peer IBGP, thì địa chỉ IP này được duy trì từ một neighbor đã quảng bá tới qua

EGBP.

Để hiểu hơn ta xem minh họa sau:

Nguyễn Đức Trung – Lớp CCMM03C Trang 11

Page 31: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Hình 2.12. Mô tả thuộc tính NEXT_HOP của EBGP

Router C quảng bá route từ mạng 172.16.1.0 với Next hop là 10.1.1.1. Khi Router A

quảng bá route này trong AS của nó thì Next hop của EGBP vẫn được duy trì để quảng bá

tới các neigtbor trong cùng một AS. Trong trường hợp route xuất phát từ một Router

trong cùng một AS thì next hop của nó chính là IP của Router đã quảng bá route đó như

minh họa dưới đây.

Hình 2.13. Mô tả thuộc tính NEXT_HOP của IGBP

2.4.2.4. Thuộc tính MULTI_EXIT_DISC

Là một thuộc tính Optional non-transitive. Nó được sử dụng khi tồn tại nhiều đường

giữa hai AS. Giá trị của nó được gọi là metric, một route cùng được quảng bá từ AS1 tới

AS2 với 2 đường khác nhau thì giá trị metric nào nhỏ hơn sẽ được ưu tiên hơn. Như trong

hình minh họa dưới đây.

Nguyễn Đức Trung – Lớp CCMM03C Trang 12

Page 32: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Hình 2.14. Mô tả thuộc tính MULTI_EXIT_DISC của BGP

Router C đang quảng bá miền mạng 172.16.1.0 với metric bằng 10. Trong khi

Router D đang quảng bá route miền mạng 172.16.1.0 với me tric bằng 5. Giá trị thấp hơn

của metric sẽ được ưu tiên. Do vậy, AS 100 sẽ chọn route đi từ Router D cho mạng

172.16.1.0 trong AS200. MEDs được quảng bá toàn bộ trong AS.

2.4.2.5. Thuộc tính LOCAL_PREF

LOCAL_PREF là thuộc tính Well-Known discretionary. Thuộc tính này có ý nghĩa

là cho phép chọn đường mong muốn khi ra khỏi 1 AS. Nó được biểu diễn bằng một con

số và được so sánh để tìm đường đi (trong nhiều đường đi của 1 AS) đến đích (2 hoặc

nhiều AS khác). Đường đi nào có giá trị Local Preference cao hơn sẽ được chọn. Thuộc

tính này chỉ có ý nghĩa trong phạm vi 1 AS và không bao giờ gửi ra khỏi AS đó, vì vậy tất

cả các router có cùng một quyết định chung để đến một route bên ngoài.

Nguyễn Đức Trung – Lớp CCMM03C Trang 13

Page 33: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Hình 2.15. Mô tả thuộc tính LOCAL_PREF của BGP

Trong AS100 đang nhận 2 sự quảng bá từ một địa chỉ mạng 172.16.1.0 của AS200.

Router A nhận sự quảng bá từ mạng 172.16.1.0, tương ứng với local preference là 50.

Router B nhận sự quảng bá từ mạng 172.16.1.0, tương ứng với local preference là 100.

Giá trị của thuộc tính local preference sẽ được trao đổi giữa A và B. Bởi vì, Router B có

local preference cao hơn Router A nên Router B sẽ được sử dụng làm “exit point” của

AS 100 để tới mạng 172.16.1.0 trong AS 200.

2.4.2.6. Thuộc tính Weight

Thuộc tính này tương tự như Local Preference ở điểm là nó sẽ ưu tiên sử dụng route

có giá trị weight cao hơn. Tuy nhiên điểm khác biệt đó là nó chỉ có ý nghĩa trong nội bộ 1

router chứ không gửi thông tin cho những router bên cạnh. Có nghĩa là mô hình áp dụng

cho thuộc tính này là một router đi ra ngoài internet được nối với 2 hay nhiều nhà cung

cấp dịch vụ (khác với mô hình sử dụng thuộc tính Local Preference là 2 hay nhiều router

trong cùng AS được nối với 2 hay nhiều nhà cung cấp dịch vụ).

Ví dụ:

Một Công ty A đã mua hai đường kết nối ra ngoài internet bởi hai nhà cung cấp dịch

vụ là ISP 1 và ISP 2 thông qua R3. Nếu quản trị mạng của Công ty A muốn mạng của

mình ra ngoài internet thông qua dịch vụ của nhà cung cấp ISP 1 thì đặt trọng số Weight

trên Interface kết nối với ISP 1 là 150 và trên Interface còn lại có con số cao hơn là 200.

Nguyễn Đức Trung – Lớp CCMM03C Trang 14

Page 34: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Lúc này, nếu mạng ổn định thì mọi gói tin ra ngoài internet đến R3 đều đi qua nhà cung

cấp dịch vụ ISP 1.

Hình 2.16. Mô tả Thuộc tính Weight

2.5. THUẬT TOÁN TÌM ĐƯỜNG ĐI TỐT NHẤT CỦA BGP

BGP sẽ gán đường đi hợp lệ đầu tiên như là đường đi tốt nhất hiện có. Sau đó BGP

sẽ so sánh đường đi tốt nhất này với đường đi kế tiếp trong danh sách cho tới khi nào

hoàn tất tất cả các đường trong danh sách đường đi hợp lệ. Dưới đây là danh sách các luật

được dùng để xác định đường đi tốt nhất.

- Ưu tiên đường đi có trọng số WEIGHT cao nhất. WEIGHT là một thông số do

Cisco đưa ra. Thông số này chỉ có ảnh hưởng trong phạm vi nội bộ của router được cấu

hình dùng thông số này.

- Ưu tiên đường có LOCAL_PREF cao nhất. Những đường đi không có thuộc tính

LOCAL_PREF sẽ có giá trị mặc định là 100.

- Ưu tiên những đường đi có nguồn gốc từ lệnh network hoặc lệnh aggregate hoặc

thông qua quá trình redistribution từ một IGP. Các đường đi có nguồn gốc từ lệnh

network hoặc lệnh redistribution được ưu tiên hơn những đường đi có nguồn gốc từ lệnh

aggregate.

- Ưu tiên những đường đi có thuộc tính AS_PATH ngắn nhất. Bước này sẽ bị bỏ qua

nếu biến bgp bestpath as-path được cấu hình. Một tập hợp AS_SET sẽ được đếm từ 1, bất

Nguyễn Đức Trung – Lớp CCMM03C Trang 15

Page 35: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

chấp có bao nhiêu AS bên trong tập hợp. Các biến AS_CONFED_SEQUENCE và

AS_CONFED_SET sẽ không bao gồm trong AS_PATH.

- Ưu tiên các đường đi có nguồn gốc thấp nhất. IGP thì thấp hơn EGP và EGP thì

thấp hơn INCOMPLETE.

- Ưu tiên những đường đi có giá trị MED nhỏ nhất. Sự so sánh này chỉ được thực

hiện nếu AS đầu tiên là giống nhau cho cả hai đường đi. Bất cứ một AS con của

confederation sẽ bị bỏ qua. Nói cách khác, ME được so sánh chỉ nếu giá trị AS đầu tiên

trong AS_SEQUENCE là giống nhau. Nếu lệnh bgp always-compare-med được cấu hình,

MED được so sánh cho tất cả các đường đi có thể. Nếu dùng chọn lựa này, tất cả các

router trong AS phải được cấu hình với chọn lựa bgp always-compare-med, nếu không

routing loop sẽ xảy ra. Nếu thông số bgp bestpath med-confed được cấu hình, MED sẽ

được so sánh trên tất cả các đường đi mà chỉ chứa biến AS_CONFED_SEQUENCE (là

những đường đi xuất phát từ local confederation). Những đường đi được nhận từ một

router láng giềng có giá trị MED là 4,294,967,295 sẽ có giá trị MED thay đổi đến

4,294,967,294 trước khi được chèn vào bảng BGP. Những đường đi được nhận mà không

có MED được cấu hình sẽ được gán giá trị MED bằng 0.

- Ưu tiên những đường đi eBGP so với iBGP. Nếu đường đi tốt nhất được chọn lựa,

qua bước 9.

- Ưu tiên những đường đi có IBP metric thấp nhất đến BGP next-hop.

- Kiểm tra xem có nhiều đường đi dự phòng cần phải cài đặt vào bảng routing hay

không. Nếu cả hai đường đi là từ bên ngoài, ưu tiên đường đi được nhận trước (đường đi

cũ nhất). Bước này sẽ bị bỏ qua nếu:

+ Lệnh bgp best path compare-routerid được dùng.

+ RouterID là giống nhau cho nhiều đường đi vì các routes được nhận từ cùng 1

router.

+ Hiện tại không có một đường đi tốt nhất.

- Ưu tiên những đường đi đến từ BGP router có routerID nhó nhất. Giá trị routerID

là địa chỉ IP cao nhất trên router. Giá trị này cũng có thể được gán bằng lệnh bgp router-

Nguyễn Đức Trung – Lớp CCMM03C Trang 16

Page 36: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

id. Nếu một đường đi chứa 1 route-reflector, thuộc tính Originator ID của Route-Reflector

sẽ thay thế cho routerID.

- Nếu RouterID là giống nhau cho nhiều đường đi, ưu tiên đường đi có số cluster là

ít nhất. Điều này chỉ đúng trong môi trường BGP route-reflector. Nó cho phép những

thành viên trong Route-Reflector thiết lập quan hệ peer với các thành viên trong các RR

khác.

- Ưu tiên những đường đi đến từ những láng giếng có địa chỉ thấp nhất. Địa chỉ này

là địa chỉ được dùng trong lệnh neighbor.

2.6. MỘT SỐ LỖI VÀ CÁCH XỬ LÝ

2.6.1. Lỗi phần Header của bản tin

Lỗi được phát hiện khi xử lý phần header của bản tin. Bản tin NOTIFICATION sẽ

được gửi với mã lỗi là lỗi header của bản tin. Error Subcode sẽ chi tiết hóa lỗi này.

Nếu lỗi xảy ra ở trường Marker thì Error Subcode sẽ báo lỗi là Connection Not

Synchronized.

Trong trường hợp bản tin có chiều dài nhỏ hơn 19 byte hoặc lớn hơn 4096 byte thì

Error Subcode sẽ báo lỗi Bad Message Length.

Trường hợp lỗi thứ ba là trường Type của phần header không phù hợp với một trong

4 kiểu bản tin, Error Subcode sẽ báo lỗi là Bad Message Type.

2.6.2. Lỗi bản tin OPEN.

Lỗi được phát hiện trong quá trình xử lý bản tin OPEN. Bản tin NOTIFICATION sẽ

được gửi với mã lỗi là lỗi bản tin OPEN. Error Subcode sẽ chỉ tiết hóa lỗi này như sau:

Nếu số được chứa trong trường Version của bản tin OPEN đã nhận không được hỗ

trợ thì Error Subcode thiết lập là Unsupported Version Number.

Nếu trường Autonomous System của bản tin OPEN mà giá trị của nó không chấp

nhận được (không thuộc phạm vi của giao thức) thì Error Subcode thiết lập Bad Peer AS.

Nếu giá trị của trường Hold Time không thể chấp nhận được thì Error Subcode thiết

lập là Unacceptable Hold Time.

Nếu giá trị của trường BGP Identifier mà không đúng cú pháp (tức không hợp lệ địa

chỉ IP host) thì Error Subcode thiết lập là Bad BGP Identifier.

Nguyễn Đức Trung – Lớp CCMM03C Trang 17

Page 37: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Nếu một trong các Optional Parameter mà không được chấp nhận thì Error Subcode

thiết lập là Unsupported Optional Parameters.

Nếu thông điệp OPEN mang theo một Optional Parameter là Authentication

information thì thủ tục authentication (xác minh) sẽ được gọi. Nếu kết quả là fail thì Error

Subcode thiết lập là Authentication Failure.

2.6.3. Lỗi bản tin UPDATE

Lỗi được phát hiện trong quá trình xử lý bản tin UPDATE. Bản tin

NOTIFICATION sẽ được gửi với mã lỗi là lỗi bản tin UPDATE. Error Subcode sẽ chi tiết

hóa lỗi này như sau:

Nếu giá trị của trường Unfeasible Routes Length hoặc Total Attribute Length quá

lớn thì Error Subcode thiết lập là Malformed Attribute List.

Nếu trong trường thuộc tính mà có Attribute Flags mâu thuẫn với Attribute Type

code thì Error Subcode thiết lập là Attribute Flags Error.

Nếu trong Attribute Length có giá trị không đúng với chiều dài yêu cầu (dựa trên mã

của thuộc tính) thì Error Subcode thiết lập là Attribute Length Error.

Nếu không có bất kỳ thuộc tính well-known mandatory nào thì Error Subcode thiết

lập là Missing Well-known Attribute.

Nếu bất kỳ thuộc tính well-known mandatory nào mà không được chấp nhận thì

Error Subcode thiết lập là Unrecognized Well-known Attribute.

Nếu thuộc tính ORIGIN có giá trị không xác định thì Error Subcode thiết lập là

Invalid Origin Attribute.

Nếu trường của thuộc tính Next_Hop mà sai cú pháp (tức không hợp lệ địa chỉ IP

host) thì Error Subcode thiết lập là Invalid NEXT_HOP Attribute.

Nếu thuộc tính AS_PATH mà sai cú pháp thì Error Subcode thiết lập là Malformed

AS_PATH.

Nếu phát hiện giá trị của một thuộc tính Optional không hợp lệ thì Error Subcode

thiết lập là Optional Attribute Error.

Nếu bất kỳ một thuộc tính nào xuất hiện nhiều hơn 1 trong cùng một bản tin

UPDATE thì Error Subcode thiết lập là Malformed Attribute List.

Nguyễn Đức Trung – Lớp CCMM03C Trang 18

Page 38: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Trường NLRI của bản tin UPDATE mà không hợp lệ thì Error Subcode thiết lập là

Invalid Network Field.

2.6.4. Lỗi bản tin NOTIFICATION

Nếu một peer gửi một bản tin NOTIFICATION nhưng bản tin này lại bị lỗi thì một

bản tin NOTIFICATION sẽ được gửi sau đó với mã lỗi và Error Subcode không xác định

(bằng 0).

2.6.5. Lỗi bản tin Hold Timer Expired

Một hệ thống mà không nhận được liên tiếp các bản tin KEEALIVE/ UPDATE/

NOTIFICATION trong khoảng thời gian đã xác định ở trường Hold Time của bản tin

OPEN thì bản tin NOTIFICATION sẽ được gửi với mã lỗi Hold Timer Expired Error

Code và kết nối sẽ được đóng lại.

2.6.6. Lỗi Finite State Machine

Lỗi được phát hiện trong trạng thái của BGP xuất hiện những trường hợp xung đột.

Một bản tin NOTIFICATION sẽ được gửi với mã lỗi Finite State Machine Error.

2.6.7. Cease

Đây là trường hợp một BGP peer muốn đóng kết nối ở bất kỳ thời gian nào nó sẽ

gửi một bản tin NOTIFICATION với mã lỗi Cease.

2.6.8. Lỗi xung đột kết nối

Nếu một cặp BGP speaker đang cố gắng cùng thiết lập một kết nối TCP lẫn nhau.

Hai kết nối này có thể được thiết lập giữa chúng và đây là một sự xung đột. Một trong hai

kết này sẽ phải đóng lại. Khi một kết nối nào muốn đóng lại thì sẽ gửi một bản tin

NOTIFICATION với mã lỗi là Cease.

Nguyễn Đức Trung – Lớp CCMM03C Trang 19

Page 39: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

CHƯƠNG 3. MÔ PHỎNG HỆ THỐNG MẠNG SỬ DỤNG GIAO THỨC ĐỊNH TUYẾN BGP

3.1. MÔ HÌNH HỆ THỐNG MẠNG SỬ DỤNG ĐỊNH TUYẾN BGP

Xây dựng một hệ thống mạng như hình vẽ:

Hình 3.1. Mô hình mạng mô phỏng

Trong mô hình này, cấu hình kết nối IBGP và EBGP, sử dụng local preference và

MED để chọn đường đi ra và đi vào mạng.

Trong mạng nội bộ gồm có VH1 và VH2 chạy giao thức định tuyến EIGRP, và trên

ISP chạy BGP với AS = 200, VH1 và VH2 với AS=64512.

Cấu hình và gán địa chỉ IP cho các interface như trong hình.

3.2. CÀI ĐẶT VÀ KIỂM TRA HỆ THỐNG

3.2.1. Cài đặt giao thức BGP

Một số lệnh liên quan đến config các router

Nguyễn Đức Trung – Lớp CCMM03C Trang 20

Page 40: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Config Cấu hình các thiết bị (Router, Switch, PC…)

Disable Tắt các lệnh đặc quyền

Disconnect Ngắt một kết nối mạng

Enable Bật các lệnh đặc quyền

End Kết thúc cấu hình

Exit Thoát ra khỏi lệnh

Hostname Đặt tên Router

Ping Kiểm tra kết nối

Một số lệnh dùng để cài đặt BGP

Router bgp Asnumber Cài đặt router thuộc AS

Neighbor ip-address remote-as Khai báo các Neighbor

Neighbor ip-address next-hop-self Định nghĩa Neighbor là một Next hop self

Network address mask mask Định nghĩa Neighbor được quảng bá bởi BGP

Show ip bgp Đưa ra bảng BGP

Show ip route Đưa ra bảng định tuyến

Show ip bgp summary Đưa thông tin các trạng thái của các Neighbor

Show ip bgp Neighbor Đưa thông tin chi tiết các trạng thái của các

Neighbor

Hướng dẫn cấu hình

- Bước 1: Tạo sơ đồ

Kết nối cáp theo như sơ đồ và khởi động router

- Bước 2: Cấu hình các thông số cơ bản trên các router

RouterR1(hostname ISP)

Router(config)#hostname ISP

ISP(config)#enable password cisco

ISP(config)#no ip domain-lookup

ISP(config)#banner motd #Vo phan su mien vao#

Nguyễn Đức Trung – Lớp CCMM03C Trang 21

Page 41: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

ISP(config)#line console 0

ISP(config-line)#logging synchoronous

ISP(config-line)#password cisco

ISP(config-line)#login

ISP(config-line)#exit

ISP(config)#lin vty 0 4

ISP(config-line)#password cisco

ISP(config-line)#login

ISP(config-line)#exit

ISP(config)#interface serial 1/0

ISP(config-if)#ip address 192.168.1.5 255.255.255.252

ISP(config-if)#no shutdown

ISP(config-if)#clock rate 64000

ISP(config-if)#exit

ISP(config)#interface serial 1/1

ISP(config-if)#ip address 192.168.1.1 255.255.255.252

ISP(config-if)#no shutdown

ISP(config-if)#clock rate 64000

ISP(config-if)#exit

ISP(config)#interface loopback 0

ISP(config-if)#ip address 192.168.100.1 255.255.255.0

ISP(config-if)#exit

RouterR2(hostname VH1)

Router(config)#hostname VH1

VH1(config)#enable password cisco

VH1(config)#no ip domain-lookup

VH1(config)#banner motd #Vo phan su mien vao#

VH1(config)#line console 0

VH1(config-line)#logging synchoronous

Nguyễn Đức Trung – Lớp CCMM03C Trang 22

Page 42: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

VH1(config-line)#password cisco

VH1(config-line)#login

VH1(config-line)#exit

VH1(config)#lin vty 0 4

VH1(config-line)#password cisco

VH1(config-line)#login

VH1(config-line)#exit

VH1(config)#interface serial 1/0

VH1(config-if)#ip address 192.168.1.6 255.255.255.252

VH1(config-if)#no shutdown

VH1(config-if)#clock rate 64000

VH1(config-if)#exit

VH1(config)#interface serial 1/1

VH1(config-if)#ip address 172.16.1.1 255.255.255.0

VH1(config-if)#no shutdown

VH1(config-if)#clock rate 64000

VH1(config-if)#exit

VH1(config)#interface loopback 0

VH1(config-if)#ip address 172.16.64.1 255.255.255.0

VH1(config-if)#exit

RouterR2(hostname VH2)

Router(config)#hostname VH2

VH2(config)#enable password cisco

VH2(config)#no ip domain-lookup

VH2(config)#banner motd #Vo phan su mien vao#

VH2(config)#line console 0

VH2(config-line)#logging synchoronous

VH2(config-line)#password cisco

VH2(config-line)#login

Nguyễn Đức Trung – Lớp CCMM03C Trang 23

Page 43: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

VH2(config-line)#exit

VH2(config)#lin vty 0 4

VH2(config-line)#password cisco

VH2(config-line)#login

VH2(config-line)#exit

VH2(config)#interface serial 1/0

VH2(config-if)#ip address 192.168.1.2 255.255.255.252

VH2(config-if)#no shutdown

VH2(config-if)#clock rate 64000

VH2(config-if)#exit

VH2(config)#interface serial 1/1

VH2(config-if)#ip address 172.16.1.2 255.255.255.0

VH2(config-if)#no shutdown

VH2(config-if)#clock rate 64000

VH2(config-if)#exit

VH2(config)#interface loopback 0

VH2(config-if)#ip address 172.16.32.1 255.255.255.0

VH2(config-if)#exit

- Bước 3: Cấu hình EIGRP

Cấu hình EIGRP giữa 2 router: VH1 và VH2

Router VH1

VH1(config)#router eigrp 64512

VH1(config-router)#no auto-summary

VH1(config-router)#network 172.16.0.0

VH1(config-router)#exit

Router VH2

VH2(config)#router eigrp 64512

VH2(config-router)#no auto-summary

VH2(config-router)#network 172.16.0.0

Nguyễn Đức Trung – Lớp CCMM03C Trang 24

Page 44: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

VH2(config-router)#exit

- Bước 4: Cấu hình EBGP và IBGP

Router ISP

ISP(config)#router bgp 200

ISP(config-router)#neighbor 192.168.1.2 remote-as 64512

ISP(config-router)#neighbor 192.168.1.6 remote-as 64512

ISP(config-router)#network 192.168.100.0

ISP(config-router)#exit

Router VH1

VH1(config)#ip route 172.16.0.0 255.255.0.0 null 0

VH1(config)#router bgp 64512

VH1(config-router)#neighbor 172.16.32.1 remote-as 64512

VH1(config-router)#neighbor 172.16.32.1 update-source loopback 0

VH1(config-router)#neighbor 192.168.1.5 remote-as 200

VH1(config-router)#network 172.16.0.0

VH1(config-router)#exit

Router VH2

VH1(config)#ip route 172.16.0.0 255.255.0.0 null 0

VH1(config)#router bgp 64512

VH1(config-router)#neighbor 172.16.64.1 remote-as 64512

VH1(config-router)#neighbor 172.16.64.1 update-source loopback 0

VH1(config-router)#neighbor 192.168.1.1 remote-as 200

VH1(config-router)#network 172.16.0.0

VH1(config-router)#exit

- Bước 5: Cấu hình Next-hop-Self trên các Router VH1 và VH2

Trước khi Router ISP có thể ping thành công các giao diện nối tiếp nội bộ của

AS 64512, có 2 vấn đề cần được giải quyết. Thứ nhất là, Router VH1 không biết đường

liên kết giữa Router ISP và VH2. Thứ 2, Router VH2 cũng không biết về đường liên kết

Nguyễn Đức Trung – Lớp CCMM03C Trang 25

Page 45: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

giữa Router ISP và VH1. Điều này có thể được giải quyết bằng cách quảng bá các đường

liên kết thông qua BGP trên Router ISP.

Router ISP

ISP(config)#router bgp 200

ISP(config-router)#network 192.168.1.0 mask 255.255.255.252

ISP(config-router)#network 192.168.1.4 mask 255.255.255.252

Router VH1

VH1(config)#router bgp 64512

VH1(config-router)#neighbor 172.16.32.1 next-hop-self

Router VH2

VH2(config)#router bgp 64512

VH2(config-router)#neighbor 172.16.64.1 next-hop-self

3.2.2. Kiểm tra hệ thống

- Kiểm tra hàng xóm BGP trong ISP, VH1, VH2 với câu lệnh:

Router ISP

ISP#Show ip bgp summary

Router VH1

VH1#Show ip bgp summary

Nguyễn Đức Trung – Lớp CCMM03C Trang 26

Page 46: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Router VH2

VH2#Show ip bgp summary

- Kiểm tra bảng BGP trong ISP,VH1,VH2

Router ISP

ISP#Show ip bgp

Router VH1

VH1#Show ip bgp

Nguyễn Đức Trung – Lớp CCMM03C Trang 27

Page 47: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Router VH2

VH2#Show ip bgp

- Kiểm tra bảng định tuyến trong ISP, VH1,VH2

Router ISP

ISP#Show ip route

Router VH1

VH1#Show ip route

Nguyễn Đức Trung – Lớp CCMM03C Trang 28

Page 48: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Router VH2

VH2#Show ip route

3.3. TỐI ƯU HỆ THỐNG

Cấu hình đường đi từ các Router VH ra ngoài ISP và ngược lại sẽ đi theo đường 192.168.1.4/30 và đường còn lại sẽ làm dự phòng.

- Bước 1: Cấu hình giá trị BGP Local Preference trên Router VH

Router VH1

VH1(config)#router-map PRIMARY_T1_IN permit 10

VH1(config-route-map)#set local-preference 150

VH1(config-route-map)#exit

Nguyễn Đức Trung – Lớp CCMM03C Trang 29

Page 49: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

VH1(config)#router bgp 64512

VH1(config-router)#neighbor 192.168.1.5 route-map PRIMARY_T1_IN in

Router VH2

VH2(config)#router-map SECONDARY_T1_IN permit 10

VH2(config-route-map)#set local-preference 125

VH2(config-route-map)#exit

VH2(config)#router bgp 64512

VH2(config-router)#neighbor 192.168.1.1 route-map SECONDARY_T1_IN in

- Bước 2: Cấu hình giá trị BGP MED

Router VH1

VH1(config)#router-map PRIMARY_T1_MED_OUT permit 10

VH1(config-route-map)#set metric 50

VH1(config-route-map)#exit

VH1(config)#router bgp 64512

VH1(config-router)#neighbor 192.168.1.5 route-map PRIMARY_T1_MED_OUT out

Router VH2

VH2(config)#router-map SECONDARY_T1_MED_OUT permit 10

VH2(config-route-map)#set metric 75

VH2(config-route-map)#exit

VH2(config)#router bgp 64512

VH2(config-router)#neighbor 192.168.1.1 route-map SECONDARY_T1_MED_OUT out

- Bước 3: Thiết lập một tuyến đường mặc định

Router VH1

VH1(config)#ip default-network 192.168.100.0

Nguyễn Đức Trung – Lớp CCMM03C Trang 30

Page 50: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Router VH2

VH2(config)#ip default-network 192.168.100.0

- Bước 4: Kiểm tra lại mạng sau khi tối ưu

Router ISP

ISP#clear ip bgp *

ISP#show ip bgp

Router VH1

VH1#clear ip bgp *

VH1#show ip bgp

Router VH2

VH2#clear ip bgp *

VH2#show ip bgp

Nguyễn Đức Trung – Lớp CCMM03C Trang 31

Page 51: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

KẾT LUẬN

Hiện nay, BGP làm một giao thức định tuyến được sử dụng rất rộng rãi. Nó được sử dụng chủ yếu cho mạng Internet và một số mạng lớn khác mà các giao thức khác không đáp ứng được. Kể từ khi ra đời, BGP vẫn luôn luôn được nghiên cứu và phát triển. Nó ngày càng đáp ứng được nhu cầu sử dụng của con người

Cho đến bây giờ vẫn chưa có một giao thức nào được phát triển và thay thế vị trí của BGP. Điều này chứng tỏ rằng BGP có nhiều tính năng nổi bật. Một trong những tính năng nổi bật đó là:

BGP hỗ trợ tìm đường phi phân lớp (CIDR Classless Inter-Domain Routing) và dùng kỹ thuật kết hợp đường đi để giảm kích thước bảng tìm đường (ví dụ nếu một mạng chiếm 255 địa chỉ lớp C từ 203.162.0.0/24 – 203.162.254.0/24 thì chỉ dùng 1 địa chỉ 203.162.0.0/16 để định dạng mạng).

Ngoài việc sử dụng để định tuyến giữa các AS. BGP có thể sử dụng trong các mạng riêng quy mô lớn do OSPF không đáp ứng được.

Trong quá trình tìm hiểu về đề tài, vì định tuyến BGP là một giao thức định tuyến khá phức tạp, cũng như thời gian, điều kiện thực tế và đặc biệt là kiến thức còn nhiều hạn chế, do đó để tài chỉ dừng ở mức cung cấp những kiến thức cơ bản nhất về BGP. Việc triển khai giao thức định tuyến BGP trên một hệ thống mạng nhỏ bằng công cụ giả lập do đó chưa thể đánh giá hết được những ưu nhược điểm của giao thức BGP so với một số giao thức khác. Trong thời gian tới sẽ cố gắng tìm hiểu thật sâu sắc là giao thức BGP cũng như tìm kiếm cơ hội được triển khai trên một hệ thống thật để đề tài này ngày càng hoàn thiện hơn nữa.

Nguyễn Đức Trung – Lớp CCMM03C Trang 32

Page 52: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

DANH MỤC TÀI LIỆU THAM KHẢO

Tiếng Việt

[1] Ths.Trần Thế Sơn (2007), Giáo trình Mạng máy tính

[2] Ths.Trần Quốc Việt (2011), Giáo trình Định tuyến và chuyển mạch, NXB

Thông tin và truyền thông

Tiếng Anh

[3] Clare Gough (2001), Cisco CCNP Routing Exam Certification Guide

[4] Sam Halabi, Internet Routing Architectures, Second Edition

Nguồn từ Internet

[5] http://vi.wikipedia.org

[6] http://pronet.edu.vn

[7] http://nhatnghe.com

[8] http://vnpro.org

[9] http://en.wikipedia.org

[10] http://cisco.com

33

Page 53: Đồ án cuối khóa - Triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp

NHÂN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

..................................................................................................................................................................

34