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 f
Trang 1TRƯỜ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
Trang 2LỜ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ị 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
Việt-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
Trang 3MỤC LỤC
LỜI CẢM ƠN 2
MỤC LỤC i
DANH MỤC CÁC HÌNH VẼ iv
MỞ ĐẦU v
CHƯƠNG 1: TỔNG QUAN VỀ MẠNG MÁY TÍNH vi
VÀ ĐỊNH TUYẾN TRONG MẠNG MÁY TÍNH vii
1.1.T NG QUAN V M NG MÁY TÍNH Ổ Ề Ạ vii
1.1.1.Khái ni m ệ vii
1.1.2.L ch s phát tri n ị ử ể vii
1.1.3 ng d ng c a m ng máy tính Ứ ụ ủ ạ viii
1.1.4.Ki n trúc m ng máy tính ế ạ x
1.1.4.1.M t s ki u ki n trúc c b n: ộ ố ể ế ơ ả xi
1.1.5.Phân lo i các m ng máy tính ạ ạ xii
1.2.T NG QUAN V Ổ Ề ĐỊ NH TUY N TRONG M NG MÁY TÍNH Ế Ạ xiii
1.2.1 nh ngh a Router Đị ĩ xiii
1.2.2.B ng đ nh tuy n ả ị ế xiv
1.2.3.Giao th c ứ xv
1.2.4.Khái ni m đ nh tuy n ệ ị ế xv
1.2.5.Phân lo i đ nh tuy n ạ ị ế xvi
1.2.5.1 nh tuy n t p trung Đị ế ậ xvi
1.2.5.2 nh tuy n phân tán Đị ế xvi
1.2.5.3 nh tuy n trong (Interior Routing) Đị ế xvii
1.2.5.4 nh tuy n ngoài (Exterior Routing) Đị ế xvii
CHƯƠNG 2: ĐỊNH TUYẾN VỚI GIAO THỨC BGP 1
2.1 KHÁI NI M C B N V BGP Ệ Ơ Ả Ề 1
Trang 42.1.2 S c n thi t c a BGP ự ầ ế ủ 1
2.1.3 Thu t ng BGP ậ ữ 1
2.1.4 M t s tính ch t c a BGP ộ ố ấ ủ 2
2.2 HO T Ạ ĐỘ NG C A BGP Ủ 2
2.2.1 C p nh t b ng đ nh tuy n ậ ậ ả ị ế 3
2.2.2 Thi t l p m i quan h BGP neighbor ế ậ ố ệ 3
2.3 ĐỊ NH D NG TIÊU Ạ ĐỀ Ủ C A B N TIN Ả 3
2.3.1 B n tin OPEN ả 4
2.3.2 B n tin UPDATE ả 6
2.3.3 B n tin KEEPALIVE ả 8
2.3.4 B n tin NOTIFICATION ả 8
2.4 CÁC THU C TÍNH QUAN TR NG Ộ Ọ 8
2.4.1 Phân lo i ạ 8
2.4.2 Các thu c tính c b n ộ ơ ả 9
2.4.2.1 Thu c tính ORIGIN ộ 9
2.4.2.2 Thu c tính AS_PATH ộ 9
2.4.2.3 Thu c tính NEXT_HOP ộ 11
2.4.2.4 Thu c tính MULTI_EXIT_DISC ộ 12
2.4.2.5 Thu c tính LOCAL_PREF ộ 12
2.4.2.6 Thu c tính Weight ộ 13
2.5 THU T TOÁN TÌM Ậ ĐƯỜ NG I T T NH T C A BGP Đ Ố Ấ Ủ 14
2.6 M T S L I VÀ CÁCH X LÝ Ộ Ố Ỗ Ử 16
2.6.1 L i ph n Header c a b n tin ỗ ầ ủ ả 16
2.6.2 L i b n tin OPEN ỗ ả 16
2.6.3 L i b n tin UPDATE ỗ ả 17
2.6.4 L i b n tin NOTIFICATION ỗ ả 17
2.6.5 L i b n tin Hold Timer Expired ỗ ả 18
Trang 52.6.6 L i Finite State Machine ỗ 18
2.6.7 Cease 18
2.6.8 L i xung đ t k t n i ỗ ộ ế ố 18
CHƯƠNG 3 MÔ PHỎNG HỆ THỐNG MẠNG SỬ DỤNG GIAO THỨC ĐỊNH TUYẾN BGP 19
3.1 MÔ HÌNH H TH NG M NG S D NG Ệ Ố Ạ Ử Ụ ĐỊ NH TUY N BGP Ế 19
3.2 CÀI ĐẶ T VÀ KI M TRA H TH NG Ể Ệ Ố 19
3.2.1 Cài đ t giao th c BGP ặ ứ 19
3.2.2 Ki m tra h th ng ể ệ ố 25
3.3 T I U H TH NG Ố Ư Ệ Ố 28
KẾT LUẬN 30
DANH MỤC TÀI LIỆU THAM KHẢO 32
NHÂN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN 33
Trang 6DANH MỤC CÁC HÌNH VẼ
Hình 1.1 Mô hình mạng hình sao xi
Hình 1.2 Mô hình mạng hình tuyến xi
Hình 1.3 Mô hình mạng hình vòng xii
Hình 1.4 Bảng định tuyến của Router Cisco xv
Hình 1.5 Định tuyến trên mạng Internet xvi
Hình 2.1 Hệ thống nhiều AS 3
Hình 2.2 Định dạng tiêu đề bản tin 4
Hình 2.3 Cấu tạo bản tin OPEN 5
Hình 2.4 Định dạng trường Otional Parameters của bản tin OPEN 5
Hình 2.5 Định dạng bản tin UPDATE 6
Hình 2.6 Định dạng trường Withdrawn Routes của thông điệp UPDATE 6
Hình 2.7 Định dạng trường Path Attribute của bản tin UPDATE 7
Hình 2.8 Định dạng trường Attribute Type 7
Hình 2.9 Định dạng trường Network Layer Reachability Information 8
Hình 2.10 Định dạng bản tin NOTIFICATION 8
Hình 2.11 Mô tả thuộc tính AS_PATH của BGP 10
Hình 2.12 Mô tả thuộc tính NEXT_HOP của EBGP 11
Hình 2.13 Mô tả thuộc tính NEXT_HOP của IGBP 12
Hình 2.14 Mô tả thuộc tính MULTI_EXIT_DISC của BGP 12
Hình 2.15 Mô tả thuộc tính LOCAL_PREF của BGP 13
Hình 2.16 Mô tả Thuộc tính Weight 14
Hình 3.1 Mô hình mạng mô phỏng 19
Trang 7Xá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
Trang 8- Ý 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
CHƯƠNG 1: TỔNG QUAN VỀ MẠNG MÁY TÍNH
Trang 9VÀ ĐỊNH TUYẾN TRONG 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
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
Trang 10Và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ể:
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
Trang 11 Độ 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
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ư:
Trang 12 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
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
Trang 13Khi 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
Hình 1.2 Mô hình mạng hình tuyến
Kiến trúc hình vòng (RING)
Trang 14Trong 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 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
Trang 15sẽ đượ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.1 Định nghĩa Router
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
Trang 16 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
+ 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
Trang 17Hì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
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
Trang 18Đị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 InternetKhá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 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
Trang 19Cá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
Trang 20Tì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.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
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
Trang 21Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp
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
- 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 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)
Trang 22Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp
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 đổ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
Trang 23Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp
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:
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:
Trang 24Tì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.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
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
Trang 25Tìm hiểu và triển khai hệ thống mạng với giao thức BGP cho doanh nghiệp
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
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:
Trang 26Tì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.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
- 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
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: