Ðây là phiên bản html của tập tin http://www.thangln.bigblue.vn/ospf.doc.

G o o g l e tự động tạo ra những phiên bản html của các tài liệu khi chúng tôi crawl web. Để liên kết tới hoặc đánh dấu trang này, hãy sử dụng URL sau: http://www.google.com/search?q=cache:Y_RsJzrfNIJ:www.thangln.bigblue.vn/ospf.doc+giao+th%E1%BB%A9c+%C4%91%E1%BB%8Bnh+tuy%E1 a

Google không có một mối liên hệ nào đến cá

Những cụm từ tìm kiếm này đã được tô sáng: giao thức định tuyến ospf đồ tốt nghiệp Những cụm từ này c

MỤC LỤC

DANH SÁCH HÌNH VẼTLN CHƯƠNG 1:

THUẬT NGỮ VIẾT TẮT ACK AS BDR BGP DR IETF IETF IGMP IGRP IOS IP LAN LSA LSAck LSDB LSR LSU MAC NS Acknowledgment Autonomous Systems Backup Designated Router Border Gateway Protocol Designated Router Internet Engineering Task Force Internet Engineering Task Force Internet Group Management Protocol Interior Gateway Routing Protocol Internetwork Operating System Internet Protocol Local Area Network Link-State Advertisement Link-State Acknowledgement Link State Database Link-State Request Link-State Update Media Access Control Network Simulator Xác nhận Miền tự trị Bộ định tuyến chủ dự phòng Giao thức gateway biên Bộ định tuyến chủ Tổ chức quản lý Internet Lực lượng đặc trách kỹ thuật Internet Giao thức quản lý nhóm Internet Giao thức định tuyến Gateway bên trong Hệ điều hành liên mạng Giao thức Internet Mạng nội hạt Bản tin quảng bá trạng thái kết nối Xác nhận trạng thái kết nối Cơ sở dữ liệu trạng thái kết nối Yêu cầu trạng thái kết nối Cập nhật trạng thái kết nối Điều khiển phương tiện truyền dẫn Bộ mô phỏng mạng

OSPF PDU RFC RIP SPF SPT SRT TCP UDP VLSM WAN

Open Shortest Path First Protocol Data Unit Request For Comments Routing Information Protocol Shortest Path First Shortest Path Tree Source-Rooted Tree Tranfer Control Protocol User Datagram Protocol Variable–Length Subnet Masking Wide Area network

Đường ngắn nhất mở đầu tiên Khối dữ liệu giao thức Khuyến nghị Giao thức thông tin định tuyến Giao thức định tính tuyến theo phương thức ưu tiên tuyến đường ngắn nhất Cây đường dẫn ngắn nhất Cây gốc nguồn Giao thức điều khiển truyền tải Giao thức dữ liệu người dùng Gán mặt nạ cho các mạng con theo chiều dài thay đổi tuỳ biến Mạng diện rộng

LỜI NÓI ĐẦUTLN

Trong thế kỉ XX, rất nhiều thành tựu của cuộc cách mạng khoa học kĩ thuật đã được ghi nhận.Bước sang thế kỉ XXI, cuộc cách mạng này đang phát triển vô cùng mạnh mẽ, từng ngày, từng giờ làm thay đổi cuộc sống con người. Mạng lưới thông tin liên lạc hiện nay đã thu được rất nhiều thành tựu to lớn thể hiện qua nhiều ứng dụng, nhiều sản phẩm mới. Hệ thống Internet và Viễn thông là những hệ thống không thể thiếu trong xã hội hiện đại. Chúng là những hệ thống khổng lồ,mang tính chất toàn cầu. Nhằm tìm hiểu sâu sắc hơn về mạng viễn thông,chúng tôiTLN, những sinh viên lớp D05VT1- Học viện Công Nghệ Bưu Chính Viễn Thông xây dựng đề tài “Nghiên cứu tính đáp ứng của mạng sử dụng giao thức định tuyến OSPF” nhằm tìm hiểu về giao thức OSPF và ứng dụng của nó trong mạng Viễn thông. Sau khi có quyết định giao đề tài, chúng tôi đã nhanh chóng nghiên cứu tài liệu và thực hiện các nội dung đã đăng kí trong đề cương khoa học. Đề tài chúng tôi nghiên cứu bao gồm những nội dung chính sau : Chương 1: Tổng quan về mạng IP và định tuyến trên nền mạng IP. Chương 2: Giao thức định tuyến OSPF. Chương 3: Lựa chọn công cụ mô phỏng và kết quả mô phỏng. Chúng tôi xin chân thành cảm ơn Ban lãnh đạo Học viện, thầy Nguyễn Đình Long, cô Nguyễn Thị Thu Hằng đã tạo điều kiện, giúp đỡ chúng tôi hoàn thành đề tài này.

Do chúng tôi chưa có nhiều kinh nghiệm làm đề tài nghiên cứu khoa học, chúng tôi rất mong nhận được sự góp ý, phê bình của các thầy cô giáo để có thể thực hiện tốt hơn trong những đề tài tiếp theo.

CHƯƠNG 1 ĐỊNH TUYẾN TRÊN NỀN MẠNG IP 1.1 Mô Hình Kết Nối Hệ Thống Mở OSI Mô hình OSI phân chia những quá trình khác nhau cần thiết trong một phiên kết nối thành 7 tầng với những chức năng riêng biệt. Những tầng này được tổ chức dựa trên trình tự tự nhiên của những sự kiện xảy ra trong quá trình kết nối. Mô hình OSI là mô hình khung, một khuôn khổ thống nhất, được sử dụng để diễn giải được dữ liệu được đóng gói ra sao, vận chuyển thế nào qua mạng, qua liên mạng. Mô hình OSI cũng giải thích các gói dữ liệu được đóng gói qua các tầng như thế nào từ thiết bị đích và được bóc tách ra sao ở thiết bị nguồn, mặc dù có thể thiết bị nguồn và thiết bị đích nằm trong các môi trường mạng khác nhau. Trong mô hình OSI có 7 tầng, mỗi một tầng minh hoạ các chức năng đặc trưng của hệ thông mạng. Việc phân chia các chức năng của mạng ra 7 tầng rõ ràng như vậy mang đến nhiều ưu điểm: Hình 1.1 Biểu đồ mô hình kết nối 7 tầng của hệ thống do ISO đề xuất. 1. Phân tách kết nối mạng ra thành nhiều thành phần nhỏ hơn, dễ dàng cho việc quản lý chúng dễ dàng hơn. 2. Chuẩn hoá các thiết bị mạng, cho phép nhiều nhà sản xuất phát triển và hỗ trợ các thiết bị của họ. 3. Cho phép rất nhiều dạng các thiết bị phần cứng và phần mềm kết nối với nhau. 4. Việc phân tách này cho phép khả năng linh hoạt của từng tầng, sự thay đổi ở mỗi tầng không làm ảnh hưởng đến hoạt động của các tầng khác. Mỗi một tầng thấp hơn bao phủ lấy một nhóm các tầng cao hơn, để từ đó có thể phân tách chúng một cách có hiệu quả với các chức năng của tầng cao hơn. Theo cách này mỗi một tầng thực hiện một số các chức năng cần thiết để cung cấp một số dịch vụ cho tầng cao hơn kế tiếp. Việc phân tách các tầng cho phép mỗi một tầng riêng có thể thay đổi mà không ảnh hưởng đến những tầng còn lại của mô hình. 1.2 Mô hình TCP/IP 1.2.1 Giới thiệu về mô hình TCP/IP

Mô hình TCP/IP bao gồm 4 tầng: 1. 2. 3. 4. Application Layer -- Tầng Ứng Dụng Transport Layer -- Tầng Vận Chuyển Internet Layer -- Tầng Internet Network Access Layer -- Tầng Truy Cập Mạng

Mô hình TCP/IP có một số tầng có tên trùng với một số tầng của mô hình OSI-7Layers, đó là tầng Application, TransportTLN, tuy nhiên ta không nên nhầm lẫn giữa các tầng ở 2 mô hình này, do ở mô hình TCP/IP thì 2 tầng này có thêm một số chức năng khác. Phiên bản đầu tiên của mô hình TCP/IP được giới thiệu vào năm 1981. Hình 1.6 Mô hình TCP/IP 1.2.2 Các chức năng cơ bản của giao thức TCP và UDP: 1. Băm nhỏ khối dữ liệu lớn được chuyển từ tầng Ứng Dụng xuống. 2. Truyền tải các khối dữ liệu này từ thiết bị nguồn tới thiết bị đích. Các chức năng cơ bản của giao thức TCP: 1. Thiết lập các kết nối điểm cuối tới điểm cuối. 2. Cung cấp khả năng điều khiển và kiểm soát luồng dữ liệu bằng các kỹ thuật như Sliding Windows. 3. Đảm bảo kết nối đáng tin cậy bằng các kỹ thuật như Sequence Number và Acknowledgement. 1.3 So sánh mô hình OSI và mô hình TCP/IP Mô hình OSI và mô hình TCP/IP đều là các mô hình chuẩn của hệ thống mạng. Chúng là nền tảng cơ bản, không thể thiếu trong hệ thống mạng ngày nay. Mô hình OSI ra đời trước, và được làm căn cứ để xác lập mô hình TCP/IP. Trong khi mô hình OSI xác lập các tầng, các tiến trình cụ thể của hệ thống đóng gói dữ liệu ở phía thiết bị phát và bóc tách chúng ở phía thiết bị nhận, thì mô hình TCP/IP lại tái hợp các chức năng ở các tầng này lại, giúp cho chúng hoàn thiện hơn. Tuy vậy khi nghiên cứu quá trình đóng gói bản tin, ta nên tham khảo kỹ mô hình OSI hơn. Mô hình OSI và mô hình TCP/IP có những điểm chung và có những điểm riêng, khác biệt, tuy vậy xét từ quan điểm vĩ mô thì chúng vẫn là một thể thống nhất. Hình 1.7 So sánh giữa mô hình OSI và mô hình TCP/IP Mô hình OSI và mô hình TCP/IP có những điểm chung là: Đều được phân chia thành các tầng. Mô hình OSI phân chia thành 7 tầng, và thường được gọi là Chồng Giao Thức, mô hình TCP/IP được phân chia thành 4 tầng.

1. Đều có tầng Ứng Dụng, tuy vậy ở mỗi mô hình thì tầng này có một số chức năng khác nhau. 2. Đều có tầng Vận Chuyển và tầng Mạng. 3. Đều sử dụng công nghệ Chuyển Mạch Gói thay thế cho công nghệ Chuyển Mạch Mạch Điện Tử đã lỗi thời và lạc hậu, qua đó tiết kiệm và tối ưu hoá băng thông hệ thống. 4. Khi một chuyên gia về hệ thống mạng, một người quản trị mạng tác nghiệp, nhất thiết phải nắm rõ cấu trúc, tiến trình hoạt động của cả hai mô hình. Một số điểm khác biệt giữa mô hình OSI và mô hình TCP/IP: 1. Mô hình TCP/IP kết hợp 3 tầng trên cùng của mô hình OSI là tầng Ứng Dụng, tầng Trình Diễn và tầng Phiên vào chung một tầng, gọi là tầng Ứng Dụng (TCP/IP – Application). 2. Mô hình TCP/IP kết hợp 2 tầng phía dưới cùng của mô hình OSI là tầng Vật Lý và tầng Liên Kết Mạng vào chung một tầng, gọi là tầng Truy Cập Mạng . 3. Mô hình TCP/IP được xem như gọn gàng và đơn giản hơn mô hình OSI vì nó ít tầng hơn. 4. Tầng Vận Chuyển của mô hình OSI khi truyền tải dữ liệu luôn truyền theo phương thức đáng tin cậy, còn tầng Vận Chuyển của mô hình TCP/IP có thể truyền tải dưới dạng giao thức phi kết nối khi nó truyền tải dữ liệu dựa trên giao thức UDP. Mô hình TCP/IP và mô hình OSI đều là các mô hình chuẩn của mạng Internet. Mô hình TCP/IP tạo dựng nên sự tin tưởng bởi các giao thức của nó. Mô hình OSI nhìn chung không được sử dụng để xây dựng các mạng. Mô hình OSI thực chất thường được sử dụng để giúp cho những người nghiên cứu có thể nắm rõ về bản chất của một quá trình kết nối, dữ liệu bên phía thiết bị phát được đóng gói ra sao, gửi đi như thế nào và bên thiết bị nhận, nó được bóc tách ra sao. 1.4 Cơ cấu đánh địa chỉ IP Khi hai hệ thống bất kỳ thực hiện một phiên kết nối, chúng cần phải có khả năng nhận diện và xác định vị trí của nhau. Xét một cấu trúc mạng như hình vẽ bên dưới đây, mặc dù các địa chỉ này không thực sự là các địa chỉ mạng trên thực tế, nhưng chúng đại diện cho việc nhóm các địa chỉ với nhau để hình thành nên các mạng. Trong hình dưới đây có mạng A gồm các máy tính có địa chỉ tượng trưng là A1, A2, A3, A4. Mạng B bao gồm các máy tính có địa chỉ tượng trưng là B1, B2, B3, B4. Mạng A kết nối tới mạng B qua Router (Bộ định tuyến) Hình 1.1: Mạng IP đơn giản A và B xác định mạng, tên mạng. Các số theo dạng A, B xác định các máy tính cá nhân trong các mạng A và B tương ứng. Sự kết hợp giữa địa chỉ mạng và các số thuộc mạng đó cho phép xác định một địa chỉ riêng biệt, duy nhất đối với mỗi một thiết bị nằm trong

mạng A và mạng B, liên mạng A và B. Việc đánh địa chỉ các thiết bị trong mạng như vậy cũng có thể được xem như việc đánh số điện thoại hay đánh số nhà trên một con đường. Địa chỉ này cho phép các thiết bị trong mạng kết nối với nhau, phân biệt nhau và truyền tải dữ liệu cho nhau. Một máy tính có thể được kết nối đến nhiều mạng, do vậy hệ thống cần phải đánh địa chỉ cho máy tính đó, để máy tính này có thể được phân biệt với bất kỳ một máy tính nào khác trong mạng mà nó kết nối đến. Đồng thời các mạng khác nhau cũng cần được cung cấp các địa chỉ khác nhau để chúng có thể nhận diện được nhau. Router khi thực hiện chức năng định tuyến gói tin giữa mạng A và mạng B, nó phân biệt được hai mạng này nhờ vào cơ cấu đánh địa chỉ IP, qua đó thiết lập được đường truyền tải dữ liệu giữa hai mạng này. Xét cấu trúc mạng như hình ở trên đây, có nhiều máy tính trong cùng một mạng, do vậy để thực hiện việc truyền tải dữ liệu giữa các máy tính đó với nhau, nhất thiết phải thực hiện việc đánh địa chỉ cho các máy tính trong mạng. Và cơ cấu này được gọi là cơ cấu đánh địa chỉ IP. Mỗi một địa chỉ sẽ xác định một kết nối từ một máy tính đến hệ thống mạng. Mỗi một điểm kết nối trong mạng (Connection Point) hay bất kỳ một giao diện giao tiếp với đường truyền trên bất kỳ một thiết bị nào trong mạng đều được đánh một địa chỉ riêng biệt, khác nhau trong mạng. Việc này cho phép xác định vị trí, nhận diện được các máy tính trong mạng. Mỗi thiết bị trong mạng được đánh địa chỉ và mỗi mạng riêng biệt cũng được đánh địa chỉ để phân biệt giữa mạng này và mạng kia. Sự kết hợp giữa địa chỉ mạng (Network Address) và địa chỉ thiết bị (Host Address) cho phép tạo ra một địa chỉ duy nhất cho mỗi thiết bị trong mạng. Mỗi một máy tính trong hệ thống mạng sử dụng giao thức theo mô hình TCP/IP cần được cung cấp một địa chỉ riêng biệt, được gọi là địa chỉ IP. Địa chỉ này hoạt động nằm trong tầng 3 của mô hình 7 tầng OSI, cho phép một máy tính có thể kết nối đến một máy tính khác trong mạng. Ngoài ra, tất cả các thiết bị trong mạng đều có một loại địa chỉ khác. Đó là địa chỉ vật lý (Physical Address) hay còn gọi là địa chỉ MAC. Địa chỉ này do nhà sản xuất ghi trực tiếp vào trên bo mạch của thiết bị, địa chỉ này hoạt động nằm trong tầng 2 của mô hình OSI. 1.5 Địa chỉ IPv4 1.5.1 Giới thiệu về địa chỉ IPv4 Một bộ định tuyến sử dụng địa chỉ tầng 3 hay còn gọi là địa chỉ IP để truyền tải gói tin từ máy tính nguồn đến máy tính đích, từ mạng nguồn đến mạng đích. Các gói tin có cấu trúc bao gồm địa chỉ IP nguồn và địa chỉ IP đích (Source Address and Destination Address) trong phần nhận diện nằm ở đầu gói tin.

Bộ định tuyến sử dụng địa chỉ IP đích để chuyển phát gói tin đến đích chính xác. Trên thực tế, một gói tin đi từ mạng nguồn, trước khi tới được đích thì phải đi qua một số lượng bộ định tuyến nhất định nào đó. Qua mỗi một bộ định tuyến, thì bộ định tuyến này bóc tách địa chỉ IP để chuyển phát gói tin. Đến khi gói tin tới bộ định tuyến kết nối trực tiếp với mạng đích, bộ định tuyến này lại sử dụng IP để truyền gói tin tới địa chỉ máy tính đích đã được xác định đó. Hình 1.2 Mạng IP và phân chia địa chỉ mạng IP Công việc này cũng giống như việc đánh dấu số hiệu bưu cục, bưu điện trong một quốc gia. Chuyển phát một bức thư từ một thành phố, khi đã xác định được khu vực thì mã bưu chính (Zip Code) dùng để chuyển bức thư đó đến bưu cục tại thành phố nhận và bưu cục này phải sử dụng địa chỉ số nhà, con đường trên bức thư đó để xác định đích đến cuối cùng của bức thư trong thành phố. 1.5.2 Phân chia mạng bằng địa chỉ IPv4 Mỗi một địa chỉ IPv4 bao gồm 2 phần. Phần đầu tiên dùng để xác định địa chỉ mạng (Network ID), nơi mà hệ thông được kết nối đến, còn phần thứ hai dùng để xác định địa chỉ hệ thống (Host ID). Hình 1.3 Phân chia mạng thành các mạng con Hình 1.4 Phân chia mạng dựa vào địa chỉ IPv4 Địa chỉ IPv4 bao gồm 4 Octet là A,B,C,D. Mỗi Octet có giá trị là 8 bit nhị phân, mỗi Octet có tầm giá trị nằm trong khoảng từ 0-255. Mỗi một Octet phân chia thành 256 mạng con và với mỗi mạng con này chúng lại phân chia tiếp thành 256 mạng con nữa và 256 địa chỉ trong mỗi mạng con đó. Bằng việc nhóm các địa chỉ máy tính thành các địa chỉ mạng, nhóm các địa chỉ mạng thành các địa chỉ mạng lớn hơn dưới dạng cấu trúc phân cấp rõ ràng và triệt để, một nhóm các máy tính trong một mạng có thể được xem như một thiết bị đơn trên mạng (Single Unit), đồng thời giúp cho việc quản lý mạng một cách dễ dàng hơn. Việc phân chia địa chỉ nhưng vậy, hay cơ cấu địa chỉ như vậy được gọi là cơ cấu địa chỉ phân cấp, bởi nó chứa đựng nhiều cấp khác nhau, mỗi cấp phân chia từ lớp A cho tới lớp D. Một địa chỉ IPv4 của một thiết bị trong mạng là sự kết hợp của hai thành phần. Thứ nhất là địa chỉ mạng mà nó thuộc về, thứ hai là địa chỉ của nó trong mạng đó. Bất kỳ một thiết bị nào trên mạng cũng cần được đánh địa chỉ IP, địa chỉ IP này là duy nhất bởi nếu có các địa chỉ IP trùng nhau, việc định tuyến, tìm đường đi trên mạng sẽ gặp lỗi, các máy tính và các mạng sẽ không thể truyền tải được dữ liệu cho nhau một cách chính xác. 1.6 Cơ bản về Định Tuyến

1.6.1 Giới thiệu cơ bản về Định Tuyến Routing hay Định Tuyến là một giao thức thuộc lớp 3 ( Lớp Mạng – Network Layer) trong mô hình kết nối hệ thống mở OSI. Routing là một quá trình hệ thống thiết lập hướng hay còn gọi là định tuyến, để kết nối và truyền tải thông tin dưới dạng gói tin giữa mạng này và các mạng khác. Hình 1.8 Quá trình Định Tuyến và mô hình OSI Định tuyến là một sự sắp xếp tổ chức có phân cấp và cho phép những địa chỉ riêng lẻ được tập hợp lại thành nhóm. Những địa chỉ này được xem như một thành phần đơn nhất cho tới khi quá trình chuyển phát dữ liệu cần tìm ra đích đến cuối cùng. Thực chất của điều này tức là khi một bộ định tuyến tìm đường đi trên hệ thống mạng cho một gói tin từ nguồn đến đích, nó chỉ tìm đường đến mạng mà điểm đích đó kết nối trực tiếp đến, còn quá trình gói tin đó đi đến điểm đích là nhiệm vụ của nội bộ mạng đó. Quá trình này còn được xem làm quá trình chuyển mạch. Quá trình định tuyến bao gồm hai hoạt động chính: 1. Xác định đường truyền. 2. Chuyển phát thông tin theo đường đã xác định đó (còn gọi là Switching). Việc truyền thông tin đi theo đường truyền khá đơn giản (về mặt thuật toán), trong khi đó, việc xác định đường truyền ban đầu phức tạp hơn nhiều.Trong các mạng thông tin khác nhau, việc xác định đường truyền là khác nhau. Tuy nhiên, cách xác định đường truyền trong các mạng thông tin nào cũng bao gồm hai công việc cơ bản là : 1. Thứ nhất là thu thập thông tin về tình trạng của mạng (ví dụ như trạng thái đường truyền, tình trạng tắc nghẽn...) và của thông tin cần truyền (ví dụ như dung lượng, băng thông, tốc độ, yêu cầu dịch vụ ...). Các thông tin này sẽ được sử dụng làm cơ sở cho việc xác định đường truyền. 2. Thứ hai là việc phân tích, tính toán để chọn ra đường truyền tối ưu nhất từ các thông tin định tuyến ở trên. Đường truyền khả dụng là đường truyền thoả mãn mọi yêu cầu của thông tin cần truyền (về tốc độ, về băng thông,…) và khả năng của đường truyền. Đường truyền tối ưu là đường truyền tốt nhất trong những đường truyền khả dụng. Chúng ta xét một hệ thống mạng như hình dưới đây. Khi máy tính A muốn truyền tải dữ liệu cho máy tính E, Router mà kết nối trực tiếp với mạng chứa máy tính A sẽ định tuyến, tìm đường đi hiệu quả nhất để truyền tải dữ liệu từ mạng chứa máy tính A đến mạng chứa máy tính E. Hình 1.9 Định tuyến qua hệ thống mạng IP

1.6.2 Bộ Định Tuyến Thiết bị chính thực hiện quá trình định tuyến là bộ định tuyến. Khi thực hiện quá trình định tuyến, bộ định tuyến gửi đi những gói tin từ mạng nguồn xác định đến mạng đích. Một bộ định tuyến khi đưa ra một quyết định thì thường dựa trên địa chỉ đích tầng 3, chính là địa chỉ IP đích của một gói tin. Những thiết bị dọc theo tuyến trong mạng sử dụng địa chỉ IP đích để chỉ hướng cho gói tin đi theo đúng hướng sao cho gói tin có thể đến được chính xác đích mà nó cần đến. Vậy để có thể đưa ra những quyết định chính xác, các bộ định tuyến cần phải học những tuyến, hướng đi tới các mạng lân cận hoặc các mạng từ xa. Hình 1.10 CISCO SYTEMS – LinkSys Wireless–G Broadband Router Hai chức năng chính của bộ định tuyến là: 1. Định Tuyến: Bộ định tuyến phải duy trì tính cập nhật cho Bảng định tuyến của mình và đảm bảo chắc chắn rằng các bộ định tuyến khác kết nối với nó có khả năng nhận biết sự thay đổi cấu trúc của mạng. Các bộ định tuyến thường sử dụng các giao thức định tuyến để trao đổi thông tin về cấu trúc và trạng thái của mạng với nhau. Từ bảng định tuyến, bộ định tuyến mới có thể thực hiện chức năng định tuyến của mình. 2. Chuyển Mạch nội bộ Router : Khi có một gói tin được truyền đến một giao diện của bộ định tuyến (có thể là cổng Ethernet hoặc là cổng Serial). Bộ định tuyến cần sử dụng bản định tuyến của mình để xác định xem rằng mình cần chuyển phát gói tin này đến nơi nào. Khi đã xác định được đường truyền, bộ định tuyến sẽ thực hiện quá trình chuyển mạch nội bộ trong bộ định tuyến , từ cổng nhận được gói tin sang cổng mà nó sẽ truyền đi, cổng này được xác định từ quá trình định tuyến. Bộ định tuyến là thiết bị thuộc lớp mạng trong mô hình kết nối hệ thống mở OSI Models, sử dụng một hay nhiều các đặc trưng định tuyến để xác định đường dẫn tối ưu nhất trên cấu trúc mạng mà có thể truyền tải tốt nhất, để từ đó mà truyền tải dữ liệu. Các đặc trưng định tuyến là một hệ thống các đơn vị được sử dụng để xác định phẩm chất của các đường truyền, từ đó mà xác định ra đường truyền tốt nhất, tối ưu nhất. Các giao thức định tuyến phối hợp một cách phức tạp các tiêu chuẩn cho việc xác định các đặc trưng định tuyến. Từ các đặc trưng định tuyến, bộ định tuyến xác định được tính chất của đường truyền, từ đó xác định đường dẫn nhanh nhất. Vai trò quan trọng của các đặc trưng định tuyến trong việc xác định phẩm chất của các đường truyền trên hệ thống mạng. Hình 1.11 Các Đặc Trưng Định Tuyến (Routing Characteristics) Có rất nhiều đặc trưng định tuyến, quyết định phẩm chất của đường truyền. Không phải rằng đường truyền ngắn nhất bao giờ cũng là đường truyền tốt nhất. Ta cần phải xét đến băng thông đường truyền, độ trễ liên mạng, mức độ tin cậy, mật độ tải, tức là mật độ

truyền tải thông tin của đường truyền đó. Một đường truyền băng thông lớn nhưng có mật độ tải lớn cũng không thể tốt bằng đường truyền có băng thông nhỏ hơn nhưng có mật độ tải thấp hơn. Bộ định tuyến tổng hợp tất cả các đặc trưng trên để tính ra được COST, đặc trưng quan trọng nhất. COST càng nhỏ, thì đường truyền càng tốt. Phần mềm được các bộ định tuyến sử dụng để điều khiển bộ định tuyến được gọi là IOS (Internetwork Operating System). 1.6.3. Giới thiệu về các giao thức được định tuyến và các giao thức định tuyến 1.6.3.1. Khái niệm về các giao thức được định tuyến Routed Protocols hay còn được gọi là các giao thức được định tuyến. Các giao thức này là một vài các giao thức trong mạng, cung cấp những thông tin đầy đủ trong địa chỉ lớp mạng của nó để cho phép một gói tin có thể đi từ một host này tới một host khác dựa trên phương thức, trật tự địa chỉ (Addressing Scheme). Các giao thức được định tuyến xác lập những định dạng trường (Field Formats) trong phạm vi một gói tin. Một giao thức được định tuyến sử dụng bảng thông tin định tuyến để gửi đi những gói tin. Một số giao thức được định tuyến :
• •

Internet Protocols (IP) Internetwork Packet Exchange (IPX)

1.6.3.2. Khái niệm về các giao thức định tuyến Routing Protocols hay còn được gọi là các giao thức định tuyến. Một giao thức định tuyến hỗ trợ một giao thức được định tuyến bằng cách cung cấp cơ cấu cho việc chia sẻ thông tin định tuyến. Các thông điệp giao thức định tuyến có thể được truyền tải qua lại giữa các bộ định tuyến . Một giao thức định tuyến cho phép các bộ định tuyến này kết nối với các bộ định tuyến khác để cập nhật và duy trì bảng thông tin định tuyến của chúng. Một số giao thức định tuyến : 1. 2. 3. 4. 5. Routing Information Protocol (RIP). Interior Gateway Routing Protocol (IGRP). Enhanced Interior Gateway Routing Protocol (EIGRP). Open Shortest Path First (OSPF). Border Gateway Protocol (BGP).

1.6.3.3. Sự khác nhau giữa các giao thức được định tuyến và các giao thức định tuyến Các giao thức định tuyến khác so với các giao thức được định tuyến cả về chức năng lẫn tác vụ.

Một giao thức định tuyến là sự kết nối được sử dụng giữa các bộ định tuyến với nhau. Một giao thức định tuyến cho phép một bộ định tuyến này chia sẻ thông tin định tuyến của nó với một bộ định tuyến khác về mạng (bao gồm cấu trúc mạng, trạng thái mạng,…) mà nó biết hoặc ở gần nó.Thông tin mà một bộ định tuyến này tiếp nhận từ một bộ định tuyến khác (sử dụng giao thức định tuyến) được sử dụng để xây dựng và duy trì bảng thông tin định tuyến. Một giao thức được định tuyến được sử dụng để chỉ thị cho giao thông dữ liệu của người dùng và cung cấp những thông tin đầy đủ trong địa chỉ lớp mạng của nó để cho phép một gói tin có thể đi từ một host này tới một host khác dựa trên phương thức, trật tự địa chỉ. 1.6.3.4. Mục đích và nhiệm vụ của các giao thức định tuyến. Mục tiêu của các giao thức định tuyến là xây dựng và duy trì bảng thông tin định tuyến. Bảng thông tin định tuyến của một bộ định tuyến chứa thông tin về những mạng đã được bộ định tuyến đó học và các Associate Ports dùng cho những mạng đó. Những bộ định tuyến sử dụng giao thức định tuyến để quản lý thông tin nhận từ các bộ định tuyến khác và những thông tin mà nó được cấu hình từ giao diện của nó. Giao thức định tuyến nhận dạng tất cả các đường dẫn đang có hiệu lực hoặc đang rảnh rỗi và đặt đường dẫn tối ưu nhất vào bảng thông tin định tuyến đồng thời gỡ bỏ các đường dẫn khi chúng không còn khả thi. Bộ định tuyến sử dụng thông tin trong bảng thông tin định tuyến để gửi đi các gói tin. Thuật toán định tuyến là nền tảng cho định tuyến động (DYNAMIC ROUTING). Bất cứ khi nào cấu trúc mạng có sự thay đổi do việc mạng được phát triển thêm, được cấu hình lại hoặc bị lỗi, thông tin cơ bản về mạng cần phải được thay đổi. Thông tin mới về mạng cần phải được phản hồi chính xác và phù hợp tới các bộ định tuyến. Khi tất cả các bộ định tuyến trong một liên mạng nắm được thông tin về mạng như nhau, thì liên mạng này được gọi là đã hội tụ. Sự hội tụ nhanh chóng của mạng là việc mà ta mong muốn, là điều kiện tích cực cho mạng vì nó giảm đi số lần định tuyến không chính xác của các bộ định tuyến. Mạng có thời gian hội tụ càng nhỏ thì sự định tuyến của các bộ định tuyến càng chính xác. 1.6.3.5. Phân loại các giao thức định tuyến. Phần lớn những thuật toán định tuyến có thể được phân loại dựa trên ba loại thuật toán sau:
• • •

Định tuyến Vector khoảng cách (Distance–Vector) Định tuyến trạng thái kết nối (Link–State) Định tuyến hỗn hợp cân bằng (Balanced Hybrid)

Thuật toán định tuyến giao thức dạng Distance–Vector hay còn gọi là giao thức định tuyến vector khoảng cách, xác định đường dẫn hay Vector và khoảng cách đến các liên kết trong mạng hay liên mạng. Thuật toán định tuyến giao thức dạng Link State hay còn được gọi là giao thức định tuyến đường dẫn ngắn nhất trước tiên (Shortest Path First – SPF), tái xác định một cách chính xác cấu trúc mạng của toàn bộ liên mạng. Thuật toán định tuyến giao thức dạng Balanced Hybrid hay giao thức định tuyến kết hợp, ví dụ như EIGRP, đây là một thuật toán thuộc giao thức Distance–Vector nhưng cũng bao gồm một vài đặc trưng và tính năng mà ta có thể tìm thấy trong giao thức định tuyến dạng Link–State. 1.6.3.6. Một số giao thức định tuyến. Một bộ định tuyến có thể sử dụng giao thức định tuyến IP trong việc hoàn thành định tuyến trong suốt quá trình đầy đủ của một thuật toán định tuyến cụ thể. Có một số giao thức định tuyến như : RIPv1, RIPv2, IGRP, EIGRP, OSPF, IGP, EGP,… Giao thức định tuyến RIP là giao thức định tuyến dạng Distance–Vector. RIP sử dụng Hop Count trong việc tính toán và định tuyến đường truyền, đường dẫn. Nừu lượng Hop Count lớn hơn 15, gói tin sẽ được loại bỏ khả năng có thể truyền qua đường dẫn đó. Giao thức định tuyến IGRP là giao thức định tuyến dạng Distance–Vector, và được phát triển bởi tập đoàn mạng Cisco. Giao thức IGRP gửi những bản cập nhật về thông tin định tuyến trong những khoảng thời gian 90 giây xen kẽ, liên tục, tới những mạng quảng cáo cho những hệ thống Autonomous. Giao thức định tuyến IGRP được thiết kế theo những đặc trưng và những tính năng như: 1. Tính linh hoạt, giúp bộ định tuyến có thể kịp thời cập nhật thông tin định tuyến một cách tự động khi cấu trúc mạng không rõ ràng hoặc quá phức tạp. 2. Tính linh hoạt và mềm dẻo, giúp bộ định tuyến có thể cập nhật thông tin tuyến phân chia với sự khác nhau giữa hai đặc trưng metric là Bandwidth và Delay. 3. Tính co dãn, giúp bộ định tuyến có thể thực hiện chức năng trong những mạng rất lớn. Theo mặc định, giao thức định tuyến IGRP sử dụng hai đặc trưng metric là Bandwidth và Delay. IGRP có thể được cấu hình để kết hợp và xác lập đặc trưng metric hỗn hợp. Ta sẽ nói về các đặc trưng định tuyến và thuật toán Metric trong phần tiếp theo. Cách cấu hình thông tin định tuyến khả thi bao gồm 4 đặc trưng định tuyến là: 1. 2. 3. 4. Bandwidth (Băng thông) Delay (Độ trễ) Load (Tải) Reliability (Độ tin cậy)

Giao thức định tuyến OSPF là giao thức định tuyến dạng định tuyến trạng thái kết nối. Giao thức định tuyến dạng định tuyến trạng thái kết nối giữ thông tin chi tiết về cấu trúc mạng, cái mà cho phép các giao thức sử dụng để tính toán và định tuyến đồng thời tránh các vòng lặp (Loops). Giao thức định tuyến EIGRP là giao thức định tuyến dạng Vector khoảng cách được phát triển bởi Cisco. EIGRP có những đặc trưng phổ biến của cả hai dạng giao thức định tuyến là định tuyến Vector khoảng cách và định tuyến trạng thái kết nối và đôi khi có thể được xem như là dạng giao thức định tuyến hỗn hợp cân bằng. EIGRP tính toán đường truyền, đường dẫn tốt nhất cho mỗi một mạng hoặc mạng con, mạng cấp dưới đồng thơì cung cấp những đường dẫn thay thế để có thể được sử dụng nếu đường dẫn hiện tại gặp sự cố. EIGRP cũng có thể truyền mạt nạ của mạng con (Subnetmask) cho mỗi một mục trong bảng thông tin định tuyến. Do vậy, những tính năng như : gán mặt nạ cho các mạng con theo chiều dài thay đổi tuỳ biến VLSM (Variable–Length Subnet Masking) và tổng hợp đường dẫn có thể dễ dàng được hỗ trợ. Giao thức định tuyến BGP là giao thức định tuyến bề mặt, từ bên ngoài. BGP được thiết kế để có thể hoạt động giữa các hệ thống Autonomous Systems (AS). BGP có thể được sử dụng giữa hai nhà cung cấp dịch vụ Internet (ISP) hoặc giữa một cơ quan, một công ty và một ISP. 1.6.3.7. Các đặc trưng định tuyến cơ bản. Khi một bộ định tuyến thực hiện nhiệm vụ định tuyến cho đường dẫn của một gói tin từ nguồn tới đích, bộ định tuyến này thường dựa trên các đặc trưng định tuyến cơ bản để thực hiện định tuyến sao cho việc định tuyến được chính xác và gói tin chóng đến đích cần đến một cách nhanh chóng nhất. Bộ định tuyến sử dụng một thuật toán để xác lập đường truyền được gọi là Metric, thuật toán này quan tâm đén một giá trị được tính bằng số lượng. Thông thường giá trị này càng nhỏ thì đường truyền càng tốt.Metric của một bộ định tuyến bao gồm nhiều thành phần cho phép bộ định tuyến tính toán và phân tích đường dẫn trong mạng về độ dài, mức độ khả thi của liên kết,…để bộ định tuyến có thể đưa ra quyết định nhanh chóng và chính xác nhất. Trước khi một bộ định tuyến thực hiện công việc của mình, bộ định tuyến sẽ trước tiên cập nhật thông tin định tuyến trong mạng vào bảng thông tin định tuyến của mình từ bảng thông tin của các bộ định tuyến khác bên cạnh nó và từ các mạng và liên mạng. Và câu hỏi được đặt ra là Metric của một bộ định tuyến hoạt động như thế nào? Metric của một bộ định tuyến là thành phần không thể thiếu trong việc giúp cho bộ định tuyến có thể tính toán khoảng cách trong đường dẫn mạng hay liên mạng. Việc này thực sự có ích, nó cung giúp cho bộ định tuyến có thể đưa ra quyết định đúng đắn trong việc lựa chọn đường dẫn tối ưu nhất để gửi đi gói tin đến đúng đích cần đến trong thời gian nhanh nhất. Có bốn đặc trưng Metric cơ bản tham gia trong thuật toán Metric của một bộ định tuyến là:

1. 2. 3. 4.

Độ trễ mạng, liên mạng Băng thông mạng Độ tin cậy Tải

Hình 1.12: Các đặc trưng Metric cơ bản Khi một thuật toán định tuyến cập nhật thông tin định tuyến từ bảng định tuyến, đối tượng chính của nó là việc xác lập thông tin tốt nhất trong bảng định tuyến. Mỗi một thuật toán định tuyến phiên dịch và hiểu bảng thông tin định tuyến theo những cách khác nhau, và chọn ra thông tin nào là tốt nhất theo cách riêng của nó. Thuật toán định tuyến quan tâm đến một dạng đơn vị được gọi là đơn vị Metric cho mỗi một đường dẫn trong mạng. Thông thường đơn vị đặc trưng Metric của đường dẫn nào càng nhỏ thì đường dẫn đó càng tốt. Bạn có thể tính toán những đơn vị metric cơ bản dựa trên những đặc trưng đơn lẻ như đường dẫn hoặc bạn cũng có thể tính toán thêm những đơn vị metric phức tạp hơn bằng cách kết hợp một vài đặc trưng metric. 1.7. So sánh Định Tuyến Tĩnh và Định Tuyến Động 1.7.1. Định tuyến tĩnh Định tuyến tĩnh là định tuyến mà được điều khiển bằng tay bởi nhà quản trị mạng với các dòng lệnh để cấu hình bộ định tuyến. Thuận lợi nhất của việc dùng định tuyến tĩnh là giúp tiết kiệm tài nguyên mạng. Nhược điểm lớn nhất của định tuyến tĩnh là việc nhà quản trị mạng cần phải cập nhật những tuyến tĩnh này trong bảng định tuyến bằng tay bất cứ khi nào mà cấu trúc liên kết mạng hay còn gọi là Topo mạng có sự thay đổi mà yêu cầu phải được cập nhật. Theo định nghĩa, các tuyến định hướng tĩnh không thể tự cập nhật mỗi khi có thay đổi trong Topo mạng. Do vậy, các mạng sẽ không hội tụ cho đến khi nào các bộ định tuyến được cấu hình. Tuy nhiên, cũng một số tình huống cần thiết phải sử dụng phương thức định tuyến tĩnh: 1. Các đường truyền có băng thông thấp. 2. Nhà quản trị mạng cần kiểm soát các kết nối, hay kiểm soát bảng định tuyến và cho phép các giao thức định tuyến CLASSFUL và CLASSLESS. 3. Kết nối dùng định tuyến tĩnh là phương thức dự phòng cho các kết nối dùng định tuyến động. 4. Tình huống STUB NETWORK, tình huống mà chỉ có duy nhất một tuyến kết nối ra mạng ngoài. 5. Loại hình Router có quá ít tài nguyên, không đủ năng lực để chạy định tuyến động.

6. Ta xét một ví dụ về sự truyền tải các gói tin khi hệ thống được cấu hình sử dụng giao thức Định Tuyến Tĩnh. Đây là một ví dụ về sự chuyển tiếp gói tin trên các đường truyền tĩnh. Đường truyền tĩnh ở đây được hiểu là thông tin về đường truyền này được cấu hình trong hệ thống các bộ định tuyến, thông tin này bao gồm như địa chỉ IP, địa chỉ Subnet Mask… 1.7.2 Định tuyến động Giao thức định tuyến động là giao thức mà do nhà quản trị mạng thiết lập cho bộ định tuyến, theo đó các bộ định tuyến sẽ tự động cập nhật thông tin về mạng. Định tuyến động rất cần thiết để cho phép các mạng cập nhật và thích nghi, thích ứng một cách nhanh chóng với những sự thay đổi thông tin, trạng thái của chúng. Sau khi nhà quản trị mạng nhập các thông số, các dòng lệnh để cấu hình cho phép bộ định tuyến sử dụng phương thức định tuyến động, các thông tin về mạng, Topo mạng được cập nhật một cách tự động bởi các quá trình định tuyến giữa các bộ định tuyến với nhau bất cứ khi nào có thông tin mới đến từ cấu trúc mạng liên kết. Những sự thay đổi những thông tin của mạng được trao đổi giữa các bộ định tuyến như là một phần của quá trình cập nhật. Phương thức định tuyến động được sử dụng được dựa trên nhiều yếu tố cần phải được chú ý, bao gồm:
• • • • •

Kích thước, kích cỡ của mạng. Băng thông của những liên kết sẵn có và còn hiệu lực. Quá trình, nguồn năng lượng của Router. Loại hình của bộ định tuyến. Các giao thức được sử dụng trong mạng.

Định tuyến động là một giao thức định tuyến chia sẻ thông tin, kiến thức giữa các bộ định tuyến với nhau. Một giao thức định tuyến xác định một số các qui luật mà một bộ định tuyến sử dụng khi nó mở kết nối đến một bộ định tuyến bên cạnh nó, một giao thức định tuyến mô tả như sau:
• • • •

Làm thế nào để gửi những cập nhật về mạng Những thông tin gì chứa trong những gói tin cập nhật Khi nào thì gửi những thông tin cập nhật Làm thế nào để có thể dễ dàng tiếp thu các thông tin cập nhật

Sự thành công của một kết nối sử dụng phương thức định tuyến động phụ thuộc vào 2 chức năng cơ bản:
• •

Sự duy trì bảng thông tin định tuyến Sự phân phối thông tin đúng lúc, hợp lý giữa các Router, sự cập nhật thông tin định tuyến từ Router này tới Router khác

1.7.3 Tổng quan về giao thức định tuyến kỹ thuật định tuyến Vector khoảng TLNcách 1.7.3.1 Giới thiệu cơ bản về định tuyến Vector khoảng cách Những thuật toán của các giao thức định tuyến Distance–Vector hay định tuyến Vector khoảng cách thông qua các phiên bản có tính chu kỳ của bảng thông tin định tuyến từ bộ định tuyến này tới bộ định tuyến khác. Những cập nhật thường xuyên này giữa các Router được kết nối, thực hiện khi có sự thay đổi về cấu trúc của mạng . Những thuật toán định tuyến dựa trên nền tảng Distance–Vector cũng được biết đến như một tên gọi khác là thuật toán Bellman–Ford. Định tuyến Distance Vector dựa vào các giải thuật định tuyến có cơ sở hoạt động là khoảng cách Vector, theo định kỳ, chúng chuyển các bản sao chép thông tin định tuyến từ bộ định tuyến này đến bộ định tuyến kia. Các phiên cập nhật thường xuyên này giữa các bộ định tuyến thông báo về các thay đổi cấu trúc mạng, trạng tháI mạng,…Mỗi bộ định tuyến nhận thông tin định tuyến từ các bộ định tuyến lân cận, kết nối trực tiếp với nó. Thuật toán định tuyến Vector khoảng cách nhằm tính toán đường truyền ngắn nhất giữa các cặp node trong mạng, dựa trên phương pháp tập trung như thuật toán Bellman – Ford. Các node mạng thực hiện quá trình trao đổi thông tin trên cơ sở của địa chỉ đích, node kế tiếp và đường truyền ngắn nhất tới đích. Thuật toán được thực hiện như sau,ta có giả thiết:
• •

A là node nguồn. B là node đích.

Ta có đặc trưng định tuyến Cost đã được biết đến trong các phần trên.
• • •

là Cost thấp nhất từ node A đến node B. là node tiếp theo của C trên đường tới B. CCA là Cost liên kết từ C tới D.

DVA giả thiết Cost của đường liên kết có tính cộng Cost và dương. Thuật toán Bellman-Ford: Bảng định tuyến trong mỗi node C được khởi tao như sau B:
• • • •

=0; C: C ≠ thì = ∞. (A, B, ) là tập các Cost của đường truyền từ node A đến node B qua nhiều nhất (C-2) node trung gian. Khi C = 1: (A, B, 1) = (d, 1) = cCB, ≠ A. Khi C > 1: ( B, N) = B ≠ A.

Một khi node A nhận được thông tin Vector khoảng cách ((B,c),...) từ node C, A sẽ cập nhật bảng định tuyến tất cả các Cost đích tới B trong tập chứa C.

Nếu + cBC < hoặc = s thì = + cBC và = s Thuật toán Bellman-Ford được phát biểu đơn giản như sau:

Với đỉnh xuất phát S, gọi DV là khoảng cách ngắn nhất từ S đến V, CU-V là khoảng cách từ U đến V. Nếu U không được nối trực tiếp với V thì CU-V=∞. Ban đầu thì DV=CS-V Sau đó ta tối ưu hóa DV như sau: Xét mọi cặp đỉnh u, v, nếu tồn tại 1 cặp u, v sao cho DV>DU+CU-V thì ta gán DV=DU+CU-V. Nghĩa là giả sử độ dài đường đi trực tiếp từ S đến V lớn hơn đường đi từ S đến U rồi đến V thì ta sẽ huỷ đường đi từ S đến V hiện tại và đi qua U để đến V. Thuật toán sẽ kết thúc khi không thể tối ưu 1 DV hơn nữa. Người ta đã chứng minh được rằng số bước lặp tối ưu hóa không qúa n-2 (n là số đỉnh) bước.

Ta có 1 mô hình mạng như sau:

R2 R3 R4 R5 R1 R6 Giả sử R1 là điểm xuất phát, ta có bảng trọng số C và D lúc khởi tạo DR1 DR2 0 1 C R1 R1 0 DR3 ∞ R2 1 R3 ∞ DR4 ∞ R4 ∞ DR5 ∞ R5 ∞ DR6 ∞ R6 ∞

R2 R3 R4 R5 R6

1 ∞ ∞ ∞ ∞

0 1 ∞ ∞ ∞

1 0 1 ∞ ∞

∞ 1 0 1 1

∞ ∞ 1 0 1

∞ ∞ 1 1 0

Ta thấy, tồn tại cặp đỉnh R2 và R3 sao cho: DR3>DR2+CR2-R3 nên DR3= DR2+CR2R3=2. Nghĩa là đường đi từ R1 đến R3 sẽ đi qua R2, và có giá trị là 2 Tiếp tục ta sẽ có bảng trọng số D hoàn thiện: DR1 DR2 0 1 DR3 2 DR4 3 DR5 4 DR6 4

1.7.3.2. Phương thức hoạt động của kỹ thuật định tuyến Vector khoảng cách. Qua hình bên dưới đây ta có thể thấy được phương thức hoạt động cơ bản của giao thức định tuyến kỹ thuật Vector khoảng cách. Có bốn bộ định tuyến là A, B, C, D: Hình 1.13 Distance–Vector Concepts Mỗi một bộ định tuyến tiếp nhận và cập nhật thông tin định tuyến của nó từ bảng thông tin định tuyến của bộ định tuyến bên cạnh nó. Bộ định tuyến B nhận thông tin định tuyến từ bộ định tuyến A. Bộ định tuyến A thêm vào một lượng Vector khoảng cách, lượng này có thể hiểu là các hops, các hops tăng Vector khoảng cách trước khi gửi cập nhật thông tin cho bộ định tuyến B. Có thể hiểu một cách đơn giản là gói tin cứ đi qua một bộ định tuyến thì lượng hops lại tăng lên. Và rồi bộ định tuyến B thông qua bảng thông tin định tuyến mới của bộ định tuyến A, cập nhật bảng thông tin định tuyến của mình và gửi thông tin sang cho bộ định tuyến C, bộ định tuyến C lại tăng thêm một lượng Vector khoảng cách nữa,… Quá trình cứ tiếp diễn như vậy trong tất cả các đường dẫn giữa các bộ định tuyến bên cạnh nhau. Hình 1.14 Sự truyền tải thông tin định tuyến giữa các Router được cập nhật vào bảng thông tin định tuyến. Thuật toán định tuyến tích luỹ khoảng cách mạng, nó duy trì cơ sỏ dữ liệu về thông tin cấu trúc của mạng. Tất nhiên, thuật toán Distance–Vector không cung cấp cho các Router cấu trúc mạng của liên mạng một cách hoàn toàn chính xác bởi vì mỗi một Router là kiến thức của chỉ một bộ định tuyến bên cạnh nó. Mỗi một bộ định tuyến sử dụng giao thức định tuyến dạng Distance–Vector khởi đầu bằng cách nhận dạng những người hàng xóm của nó, tức là các bộ định tuyến bên cạnh

nó. Khi quá trình khám phá mạng do giao thức định tuyến dạng Distance–Vector tiến hành, bộ định tuyến tìm đường dẫn tốt nhất tới đích cần gửi thông tin (gói tin) đến dựa trên thông tin mà nó nhận được từ mỗi một bộ định tuyến hàng xóm, ngay bên cạnh nó.Ví dụ bộ định tuyến A học thông tin về các mạng khác (nằm ngoài mạng của nó) dựa trên thông tin mà nó nhận được từ bộ định tuyến B. Mỗi một mục về các mạng khác trong bảng thông tin định tuyến của một bộ định tuyến có một Vector khoảng cách được tích luỹ để cho bộ định tuyến biết được mạng mà nó gửi thông tin tới ở cách nó bao xa. Hình 1.15 Quá trình khám phá mạng Trong quá trình tìm hiểu mạng, cấu trúc mạng cập nhật tiến hành từng bước từ bộ định tuyến này tới bộ định tuyến khác. Hình trên cho ta thấy được thuật toán Distance– Vector cho phép các bộ định tuyến gửi bảng thông tin định tuyến của nó tới các bộ định tuyến liền kề. Bảng thông tin định tuyến bao gồm thông tin về tổng độ dài các đường dẫn đã được xác định bởi metric và địa chỉ logic của bộ định tuyến đầu tiên trên đường dẫn đó tới mỗi mạng có liệt kê trong bảng thông tin định tuyến. Hình 1.16 : Cập nhật bảng định tuyến Mỗi một bộ định tuyến nhận thông tin định tuyến một cách trực tiếp từ bộ định tuyến hàng xóm và kết nối trực tiếp với nó. Trong ví dụ trên bộ định tuyến B nhận thông tin định tuyến từ bộ định tuyến A. Trước khi gửi thông tin định tuyến cho bộ định tuyến B, bộ định tuyến A đã tăng lượng đặc trưng Metric lên một đơn vị, trong kỹ thuật định tuyến Vector khoảng cách thì đặc trưng Metric này là lượng Hop Count. Quá trình lặp lại như vậy cứ xảy ra trong tất cả các đường dẫn, trong thông tin định tuyến của các bộ định tuyến liền kề nhau mà gói tin cần phải đi qua từ nguồn tới đích. Một Vector khoảng cách có thể được so sánh với tấm biển chỉ đường trên một đại lộ. Tấm biển này chỉ hướng cho các tài xế đi tới đích và còn chỉ khoảng cách từ vị trí tấm biển đó tới đích. 1.7.3.3. Ưu điểm của kỹ thuật định tuyến Vector khoảng cách Nói chung, giao thức định tuyến kỹ thuật Vector khoảng cách là các giao thức định tuyến rất đơn giản. Các giao thức định tuyến này có thể được cấu hình rất dễ dàng, dễ duy trì và dễ sử dụng. Do vậy chúng chứng minh được tính hữu dụng của mình trong các mạng cực nhỏ, những mạng mà có thể có một vài đường dẫn thừa và không đòi hỏi yêu cầu quá nghiêm ngặt trong việc thực thi. Một ví dụ điển hình của giao thức định tuyến Vector khoảng cách là giao thức định tuyến RIP (Routing Information Protocol). Giao thức định tuyến RIP sử dụng một đặc trưng metric là Hop Count để xác định đường dẫn tốt nhất cho bất kỳ một gói tin nào cần gửi đi. Giao thức định tuyến RIP đã được sử dụng từ cách đây hàng thập kỷ. Ta sẽ tìm hiểu về giao thức định tuyến RIP trong chương sau. 1.7.3.4. Hạn chế của giao thức định tuyến Vector khoảng cách.

Trong một số trường hợp cụ thể, định tuyến kỹ thuật Vector khoảng cách có thể thực sự gây ra một số vấn đề ảnh hưởng tới việc định tuyến của các giao thức định tuyến sử dụng kỹ thuật này. Đó có thể là một sự cố đường truyền hay một sự thay đổi khác trong mạng,… làm cho các bộ định tuyến cần một khoảng thời gian để hội tụ, tức là chúng nhận ra được sự thay đổi trạng thái của mạng và học được cấu trúc mới của mạng. Trong quá trình mạng hội tụ, mạng có thể gặp sự cố do gặp phải những sự định tuyến mâu thuẫn (các lần định tuyến trước và sau không thống nhất) và có thể gặp những lỗi lặp vô hạn (Infinite Loops). Sự hoạt động và sự duy trì của mạng có thể gặp rủi ro trong suốt quá trình hội tụ. Do vậy những giao thức định tuyến Vector khoảng cách kiểu cũ tỏ ra chậm chạp trong quá trình hội tụ của mạng và có thể không thích hợp với những mạng lớn, những liên mạng phức tạp như các mạng WAN (Wide Area Network). Trong các mạng nhỏ hơn, các giao thức định tuyến kỹ thuật Vector khoảng cách có thể là dạng giao thức định tuyến ít gây ra vấn đề cho hệ thống mạng nhất, và là dạng giao thức định tuyến tốt nhất. 1.7.4.TLN Tổng quan về kỹ thuật định tuyến trạng thái kết nối 1.7.4.1. Giới thiệu cơ bản về định tuyến trạng thái kết nối Phần trên ta đã nhận diện sơ lược về giao thức định tuyến cơ bản đầu tiên đó là kỹ thuật định tuyến Vector khoảng cách. Trong phần tiếp theo này ta sẽ tiếp tục nghiên cứu về dạng thuật toán định tuyến cơ bản thứ hai, đó là thuật toán định tuyến kỹ thuật định tuyến trạng thái kết nối. Thuật toán định tuyến trạng thái kết nối cũng còn được biết đến với tên gọi: thuật toán Dijkstra – thuật toán đường dẫn ngắn nhất trước tiên (SPF). Nguyên lý cơ bản của dạng thuật toán này là chúng duy trì một cơ sở dữ liệu khá phức tạp về thông tin của cấu trúc mạng. Trong khi thuật toán định tuyến Vector khoảng cách không có những thông tin cụ thể về các mạng ở xa và cũng không có kiến thức về các bộ định tuyến ở xa; thì thuật toán định tuyến kỹ thuật trạng thái kết nối duy trì những thông tin đầy đủ về các bộ định tuyến ở xa trong mạng và cách làm sao có thể kết nối với các bộ định tuyến đó. Giao thức định tuyến trạng thái kết nối thực thi dưới dạng sự trao đổi các bản tin LSA (Link-State Advertisements) giữa các bộ định tuyến trong cùng một mạng. Mỗi một bộ định tuyến gửi bản tin LSA của nó tới các bộ định tuyến khác và nó cũng nhận các bản tin LSA từ chúng và xây dựng nên một cơ sở dữ liệu về cấu trúc mạng. Sau đó một thuật toán SPF sẽ tính toán khả năng tới các mạng đích từ bộ định tuyến này… 1.7.4.2. Thuật toán định tuyến Trạng Thái Kết Nối Thuật toán định tuyến Trạng thái kết nối hay còn gọi là thuật toán Dijstra. Để tóm tắt bảng định tuyến, mỗi Router áp dụng giải thuật Dijstra với cơ sở dữ liệu trạng thái liên kết. Giải thuật Dijstra tính toán đường đI ngắn nhất giữa hai điểm trong mạng hay liên mạng sử dụng một đồ thị gồm các node và các cạnh. Giải thuật chia các node thành hai

loại: tạm thời và cố định. Nếu chọn các node, đánh dấu chúng là tạm thời, kiểm tra các node đó và nếu chúng thoả mãn tiêu chuẩn thì đánh dấu chúng là cố định. Giải thuật Dijstra được mô tả tóm tắt như sau: 1. Bắt đầu từ node cục bộ (Router): đây chính là gốc của SPF Tree (Shortest Path First Tree) 2. Gán cho node này là 0 và đánh dấu nó là node cố định đầu tiên 3. Kiểm tra mỗi node lân cận mà kết nối trực tiếp với node này là cố định cuối cùng 4. Gán Cost tích luỹ cho mỗi node và đánh dấu chúng là tạm thời 5. Trong danh sách các node tạm thời: 6. Tìm node có Cost tích luỹ nhỏ nhất và đánh dấu nó là cố định 7. Nếu có thể tới node từ nhiều hướng, chọn hướng có Cost tích luỹ nhỏ nhất 8. Lặp lại từ bước 3 đến bước 5 cho tới khi tất cả các node được đánh dấu 1.7.4.3. Phương thức hoạt động của kỹ thuật định tuyến trạng thái kết nối Thuật toán định tuyến kỹ thuật trạng thái kết nối có các đặc trưng cơ bản sau: Link–State Advertisements: Bản tin quảng cáo LSAs, đây là những gói tin nhỏ chứa thông tin định tuyến được truyền qua lại giữa các bộ định tuyến. Topological Database: Cơ sở dữ liệu về câú trúc liên kết mạng, một tập hợp các thông tin được tụ họp lại trong các bản tin LSA. SPF – Shortest Path First: Thuật toán đường dẫn ngắn nhất trước tiên, là phương thức tính toán thức hiện dựa trên kết quả cũng như thông tin về cơ sở dữ liệu có trong cây SPF. Routing Table: Bảng thông tin định tuyến, một danh sách các đường dẫn, đường truyền và các giao diện ghép nối đã được bộ định tuyến học. Tổ chức quốc tế IETF (Internet Engineering Task Force) dựa trên cơ sở thuật toán định tuyến trạng thái kết nối đã phát triển thành công giao thức định tuyến OSPF. Chúng ta sẽ đi sâu nghiên cứu chi tiết về cơ sở kỹ thuật cũng như phương thức hoạt động của thuật toán này trong chương tiếp theo. Vấn đề tiếp theo mà ta quan tâm tới là khái niệm của thuật toán định tuyến trạng thái kết nối : Bản tin LSA được trao đổi giữa các bộ định tuyến với nhau, chúng khởi động cùng các mạng một cách trực tiếp. Mỗi một bộ định tuyến kết nối song song với các bộ định tuyến khác xây dựng nên một cơ sở dữ liệu về cấu trúc mạng phù hợp với tất cả các sự chuyển giao các bản tin LSA. Thuật toán định tuyến SPF tính toán và phân tích khả năng truy cập mạng. Các bộ định tuyến xây dựng cấu trúc mạng một cách có trật tự Logic như là một cây có phân chia thành các nhánh (Tree), và bộ định tuyến tự coi mình là thành phần gốc, tổng hợp tất cả

các đường truyền khả thi đối với mỗi mạng trong liên mạng sử dụng kỹ thuật định tuyến trạng thái kết nối. Sau đó bộ định tuyến sắp xếp tất cả các đường dẫn này dựa trên thuật toán đường dẫn ngắn nhất SPF. Hình bên dưới cho ta thấy được cấu trúc cũng như phương thức hoạt động cơ bản của kỹ thuật định tuyến trạng thái kết nối: Hình 1.17 Link State Concepts Cơ cấu khám phá mạng của kỹ thuật định tuyến trạng thái kết nối được sử dụng để tạo ra hình ảnh phổ biến về các mạng. Tất cả các bộ định tuyến sử dụng giao thức định tuyến trạng thái kết nối đều chia sẻ cho nhau các kiến thức về mạng (bao gồm cấu trúc mạng, các thông tin định tuyến trong bảng thông tin định tuyến). Công việc này cũng giống như việc nhận dạng bản đồ của một thành phố. Cơ cấu khám phá mạng của kỹ thuật định tuyến trạng thái kết nối thực hiện qua những quá trình sau: 1. Các bộ định tuyến trao đổi bản tin LSA cho nhau. Mỗi một bộ định tuyến khởi đầu với các mạng kết nối trực tiếp với nó, tìm hiểu thông tin trực tiếp 2. Mỗi một bộ định tuyến kết nối song song với các bộ định tuyến khác, xây dựng cơ sở dữ liệu về cấu trúc mạng gồm có tất cả các bản tin LSA từ liên mạng 3. Thuật toán SPF tính toán và phân tích khả năng truy cập vào mạng. Bộ định tuyến xây dựng cấu trúc ghép nối mạng theo trật tự Logic như là một cây phân nhánh, trong đó bộ định tuyến là gốc, rồi các nhánh nhỏ hơn là các đường truyền trong mạng hay liên mạng có sử dụng kỹ thuật định tuyến trạng thái kết nối. Bộ định tuyến sử dụng thuật toán đường dẫn ngắn nhất trước tiên SPF để sắp xếp trật tự của các đường dẫn 4. Các bộ định tuyến liệt kê trong bảng thông tin định tuyến một danh sách các đường truyền tốt nhất cho mỗi cổng kết nối tới các mạng đích. Nó cũng duy trì các cơ sở dữ liệu chi tiết khác về các phần tử trong cấu trúc mạng cũng như trạng thái của các phần tử này 1.7.4.4. Ưu điểm của kỹ thuật định tuyến trạng thái kết nối Giao thức sử dụng kỹ thuật định tuyến trạng thái kết nối gần như là một giao thức định tuyến động và rất hữu dụng trong các mạng với kích thước bất kỳ. Điều này cũng có ý nghĩa là có thể sử dụng giao thức kỹ thuật định tuyến trạng thái kết nối cho bất kỳ một mạng nào mà không cần quan tâm tới kích thước của mạng đó. Trong một mạng được thiết kế tốt, một giao thức định tuyến trạng thái kết nối sẽ kích hoạt và cho phép mạng này hoạt đông một cách trơn tru trước những sự thay đổi không mong muốn của cấu trúc ghép nối mạng. Khi một số sự kiện trong mạng xảy ra, giả sử như sự thay đổi về cấu trúc mạng, sự hội tụ của mạng cũng bắt đầu một cách nhanh chóng hơn. Việc truyển tải và trao đổi bản tin LSA bị gây ra bởi các sự kiện trong mạng, thay vì mạng thực thi theo tính chu kỳ. Việc này có thể thúc đẩy một cách tích cực cho quá trình

hội tụ của mạng bởi vì sẽ không cần phải chờ đến một loạt những bộ đếm thời gian bất kỳ hết hiệu lực trước khi các bộ định tuyến trong mạng bắt đầu quá trình hội tụ Nếu trong mạng mà có sự quá tải thường xuyên xảy ra, thời gian cập nhật như của giao thức định tuyến Vector khoảng cách cũng sẽ bị loại bỏ. Giao thức định tuyến trạng thái kết nối cho phép băng thông được mở rộng hơn để có thể được sử dụng trong việc truyền tải dữ liệu của người dùng, sự hoạt động và duy trì của mạng sẽ tốt hơn, được cải thiện hơn, đồng thời cũng giúp ta thiết kế mạng một cách hợp lý hơn. Một lợi ích nữa về hiệu năng của băng thông mà giao thức định tuyến trạng thái kết nối mang lại nữa là chúng làm thuận tiện cho các mạng leo thang (Network Scalability) hơn là sử dụng định tuyến tĩnh hoặc định tuyến Vector khoảng cách. Khi ta đưa hai dạng giao thức định tuyến nay ra so sánh trực tiếp, có thể dễ thấy là giao thức định tuyến trạng thái kết nối tốt hơn đối với những mạng lớn, những mạng phức tạp hơn. Có thể việc cấu hình giao thức định tuyến trạng thái kết nối cho một mạng lớn ban đầu sẽ gặp trở ngại, nhưng mạng sẽ được vận hành tốt trong một thời gian dài sau đó.

CHƯƠNG 2: GIAO THỨC ĐỊNH TUYẾN OSPF 2.1. Tổng quan về giao thức định tuyến OSPF Như ở chương 1, các giao thức định tuyến trạng thái kết nối bao gồm các đặc điểm sau:
• • •

Phản ứng nhanh nhạy với sự thay đổi về Topology của hệ thống mạng. Gửi những bản cập nhật nhanh khi trong Topology của hệ thống mạng có sự thay đổi. Gửi những bản cập nhật định kỳ, được gọi là bản cập nhật làm tươi trạng thái kết nối sau những khoảng thời gian lặng, cứ 30 phút một lần.

Các giao thức định tuyến Trạng thái liên kết khởi tạo những phiên bản cập nhật định tuyến chỉ khi có sự thay đổi về Topology của mạng. Khi trạng thái liên kết của mạng có sự thay đổi, thiết bị phát hiện ra sự thay đổi này sẽ gửi bản tin quảng bá trạng thái LSA để thông báo cho các thiết bị khác về sự thay đổi này. Sự trao đổi các bản tin LSA giữa các Router liền kề nhau thông báo về trạng thái kết nối, bao gồm trạng thái của các Router và trạng thái của các đường truyền. Hình 2.1 Cấu trúc giao thức định tuyến dạng Link-State Thông tin Trạng thái kết nối cần phải được đồng bộ giữa các bộ định tuyến, điều này có nghĩa rằng: 1. Các bản tin LSA đáng tin cậy, có một giải pháp cho việc thông báo sự tiếp nhận các bản tin LSA .

2. Các bản tin LSA bị ngập đầy trên toàn bộ miền hệ thống. 3. Các bản tin LSA có một chuỗi số (Sequence Number) và được thiết lập khoảng thời gian tồn tại trên đường truyền sao cho mỗi một Router khi tiếp nhận một LSA, biết được rằng lượng thông tin định tuyến mà LSA này cung cấp là phiên bản LSA mới nhất về trạng thái liên kết. 4. Các bản tin LSA được cập nhật, được làm tươi định kỳ để có thể khẳng định rằng thông tin về cấu trúc mạng trước khi những thông tin này không còn nằm trong cơ sở dữ liệu về trạng thái kết nối. Các bản tin LSA được quảng bá rộng rãi đến tất cả các bộ định tuyến hàng xóm của Router gửi bản tin LSA bằng việc sử dụng địa chỉ Multicast dành riêng lớp D là: 224.0.0.5. Khi một Router nhận được bản tin LSA, nó sẽ cập nhật cơ sở dữ liệu về trạng thái kết nối của mình (Link-State Database – LSDB). LSDB thường được sử dụng để tính toán, chọn lựa đường dẫn tối ưu nhất. Các Router được cấu hình sử dụng giao thức định tuyến Trạng Thái Kết Nối tìm đường truyền ngắn nhất từ nguồn đến đích bằng thuật toán Dijkstra, hay thuật toán ưu tiên đường dẫn ngắn nhất (SPF), chống lại LSDB để xây dựng bảng SPF. Sau khi đường truyền tối ưu nhất được chọn lựa từ bảng SPF, nó sẽ được đặt vào bảng thông tin định tuyến. Tuỳ thuộc vào mức độ phức tạp của cấu trúc hệ thống mạng mà các bộ định tuyến quảng bá và làm ngập các bản tin LSA đến các bộ định tuyến khác nằm trong miền của nó để chắc chắn rằng tất cả các thiết bị định tuyến trên mạng cập nhật cơ sở dữ liệu của nó trước khi cập nhật bảng định tuyến để phản chiếu cấu trúc mới của mạng. Chỉ bằng việc làm ngập thông tin trạng thái kết nối mà tất cả các bộ định tuyến trong cùng một khu vực có thể đảm bảo rằng nó đang nắm giữ một cái nhìn chính xác nhất về cấu trúc mạng để có thể định tuyến chính xác và giống như các bộ định tuyến khác. Dung lượng bộ nhớ để duy trì thông tin định tuyến, cấu trúc mạng và bảng hệ thống là một trong những mặt hạn chế của các giao thức định tuyến trạng thái kết nối. 2.2. Các thuật ngữ sử dụng trong giao thức OSPF Giao thức định tuyến OSPF sử dụng một số các thuật ngữ. Sau đây, ta lấy một ví dụ với một hệ thống mạng sử dụng giao thức định tuyến OSPF: Hình 2.2 Khu vực sử dụng giao thức định tuyến OSPF Có một số thuật ngữ quan trọng như: 1. 2. 3. 4. 5. Đường truyền (Links) Trạng Thái Kết Nối (Link-State) Cơ sở dữ liệu cấu trúc mạng (Topological Database) Khu vực OSPF (OSPF Area) Metric của OSPF (OSPF Cost)

6. Bảng định tuyến OSPF (OSPF Routing Table) 7. Cơ sở dữ liệu thân mật (Adjaciencies Database) 8. Router DR và Router BDR

Các đường truyền (Links) là các kênh truyền dẫn của hệ thống mạng bao gồm các mạch điện và đường truyền vật lý. Trạng thái kết nối là trạng thái của đường truyền giữa 2 bộ định tuyến . Trạng thái này bao gồm 2 trạng thái nhỏ là Administrative là Line Protocol, tức là trạng thái giao diện của 2 Router và trạng thái đường truyền của bộ định tuyến này với bộ định tuyến bên cạnh nó. Cơ sở dữ liệu cấu trúc mạng hay còn gọi là cơ sở dữ liệu trạng thái kết nối LSDB là một tập hợp các thông tin về các bộ định tuyến khác trong cùng khu vực hoặc trong cả liên mạng. Cơ sở dữ liệu này cho ta biết cấu trúc của hệ thống mạng trong khu vực hoặc ngoài khu vực, tuỳ loại bộ định tuyến . Khi mạng hội tụ thì các bộ định tuyến trong cùng một khu vực sẽ có các cơ sở dữ liệu LSDB tương đồng nhau. Khu vực OSPF : Hình 2.3 Khu vực OSPF Là một tập hợp nhiều mạng hoặc nhiều bộ định tuyến mà có cùng một cách thức nhận diện. Mỗi một bộ định tuyến trong một khu vực có cùng thông tin về trạng thái kết nối và như ta đã biết, mỗi một bộ định tuyến trong khu vực đó được gọi là bộ định tuyến nội vùng (Internal Router). Metric của OSPF (OSPF Cost): Hình 2.4 Metric của giao thức định tuyến OSPF là Cost. Mỗi một giao thức định tuyến có cấu trúc thuật toán khác nhau, và sử dụng một phẩm chất, đặc trưng của mạng làm chuẩn mực riêng, ví dụ như RIPv1 dùng Metric là Hop Count, IGRP dùng Metric tổng hợp Hop Count, Reliability, Load,… OSPF sử dụng Metric là Cost. Cost là giá trị mà các bộ định tuyến dùng để gán cho mỗi đường truyền mà nó kết nối đến. Không như các giao thức dạng Distance Vector sử dụng Hop Count, giá trị phụ thuộc vào số lượng các bộ định tuyến , các giao thức định tuyến Link State gán giá trị Cost cho mỗi đường truyền, giá trị này dựa trên tốc độ truyền tải dữ liệu của môi trường truyền dẫn ứng với đường truyền đó. Bảng định tuyến, hay còn được biết tới là cơ sở dữ liệu chuyển phát thông tin. Bảng này được tạo ra khi thuật toán định tuyến tính toán và phân tích dựa trên LSDB. Mỗi một bộ định tuyến có riêng một bảng định tuyến.

Cơ sở dữ liệu thân mật : là bảng danh sách bao gồm các thông số về các Router lân cận, liền kề có quan hệ thân mật, kết nối song phương với bộ định tuyến sở tại. Các thông số này bao gồm địa chỉ IP, Subnet Mask,… Các bộ định tuyến DR và BDR (Designated Router – Backup Designated Router) là các bộ định tuyến được bầu chọn trong một hệ thống mạng bởi các bộ định tuyến khác, và có vai trò là đại diện cho các bộ định tuyến nội khu vực đó. Mỗi một mạng đều có các DR và BDR riêng cho mạng đó, chúng có một số chức năng đặc thù, ta sẽ tìm hiểu trong những phần tiếp theo. Hình 2.5 Bảng định tuyến, Cơ sở dữ liệu thân mật và các bộ định tuyến DR, BDR 2.3. Hoạt động của giao thức định tuyến OSPF 1. 1.Các Router OSPF gửi các gói Hello ra tất cả các giao diện chạy OSPF. Nếu hai Router chia sẻ một liên kết dữ liệu cùng chấp nhận các tham số được chỉ ra trong gói Hello, chúng sẽ trở thành các Neighbor của nhau. 2. Adjacency có thể coi như các liên kết ảo điểm - điểm, được hình thành giữa các Neighbor. Việc hình thành một Adjacency phụ thuộc vào các yếu tố như loại Router trao đổi các gói Hello và loại mạng sử dụng để các gói Hello truyền trên đó. 3. Sau khi các Adjacency được hình thành, mỗi Router gửi các LSA qua các Adjacency. Các LSA mô tả tất cả các liên kết của Router và trạng thái của các liên kết. 4. Mỗi Router nhận một LSA từ một Neighbor, ghi LSA vào cơ sở dữ liệu trạng thái liên kết của nó và gửi bản copy tới tất cả các Neighbor khác của nó. 5. Bằng cách trao đổi các LSA trong một Area, tất cả các Router sẽ xây dựng cơ sở dữ liệu trạng thái liên kết của mình giống với các Router khác. 6. Khi cơ sở dữ liệu hoàn chỉnh, mỗi Router sử dụng giải thuật SPF để tính toán đường đi ngắn nhất (đường đi có cost thấp nhất) tới tất cả các đích đã biết. Sơ đồ này gọi là cây SPF. 7. Mỗi Router xây dựng bảng định tuyến từ cây SPF của nó. 2.4. Phương thức tính toán Metric của giao thức định tuyến OSPF Edsger Dijkstra thiết kế một thuật toán cho việc tính toán đường truyền ngắn nhất từ một điểm đến một điểm khác trong một đồ thị cho trước. Các giao thức định tuyến họ định tuyến trạng thái kết nối sử dụng thuật toán SPF để tính toán đường dẫn tốt nhất qua hệ thống mạng. Các bộ định tuyến trong hệ thống mạng, khi được cấu hình sử dụng giao thức định tuyến OSPF hay các giao thức định tuyến Link-State, tìm đường truyền dữ liệu tốt nhất từ nguồn tới đích bằng việc áp dụng thuật toán Dijkstra theo các bước cụ thể sau: 1. Mỗi một bộ định tuyến trong một khu vực có một cơ sở dữ liệu về trạng thái kết nối nhất quán, tương đồng với các bộ định tuyến khác trong khu vực đó.

2. Trong bảng định tuyến mà mỗi một bộ định tuyến xây dựng, bộ định tuyến đó đặt nó làm vị trí gốc trong sơ đồ dạng cây về cấu trúc mạng. 3. Đường truyền tốt nhất tới đích được tính toán và phân tích dựa trên giá trị COST của đường truyền đó. Đường truyền nào có giá trị COST càng thấp thì đường truyền đó càng tốt. 4. Chỉ đường truyền tốt nhất mới được đưa vào bảng chuyển phát thông tin hay còn gọi là Bảng định tuyến. Bằng việc gán giá trị COST cho mỗi đường truyền trong hệ thống mạng, và đặt các node xác định vào ngọn của sơ đồ hình cây và thêm vào giá trị COST đối với mỗi đường truyền tới đích xác định, các nhánh cây có thể được tính toán để xác định đường truyền ngắn nhất. Trong giao thức định tuyến OSPF, trạng thái giao diện mặc định với giá trị COST được tính toán dựa trên băng thông mà đường truyền đó được cấu hình. Một giá trị OSPF COST có thể được cấu hình bằng tay cho mỗi giao diện kết nối của mỗi bộ định tuyến , thay thế cho giá trị mặc định của giao diện đó. Ta xét một sơ đồ cụ thể với thuật toán Dijkstra, tính toán đường truyền ngắn nhất từ nguồn tới đích. Giả sử tất cả các đường truyền là đường truyền với công nghệ Ethernet, trong mạng LAN, như vậy giá trị của các đường truyền là COST = 10. Hình 2.6 Thuật toán Dijkstra Topology bên trái, ta có cơ sở dữ liệu trạng thái kết nối và Topology bên phải, ta có topology mới sau khi áp dụng thuật toán Dijkstra. Quá trình tính toán đường dẫn ngắn nhất xảy ra như sau: 1. Bộ định tuyến H quảng bá sự tồn tại của nó cho bộ định tuyến E biết, Sau đó bộ định tuyến E chuyển phát bản tin quảng bá của bộ định tuyến H, đồng thời với bản tin quảng bá của chính nó cho các bộ định tuyến hàng xóm của nó (các bộ định tuyến có quan hệ thân mật Adjaciency), ở đây là các bộ định tuyến C và G. Và G lại chuyển phát 2 bản tin quảng bá của E và H đồng thời với bản tin quảng bá của chính nó cho các bộ định tuyến hàng xóm, cứ như vậy tiếp diễn,… 2. Các bản tin quảng bá, hay các bản tin LSAs tuân theo luận phân chia phạm vi (Split Horizon), luật này ra điều kiện cho các bộ định tuyến không được phép gửi lại bản tin quảng bá LSA của bộ định tuyến khác truyền đến nó cho chính Router khác đó. Trên Topo bên trái, bộ định tuyến E không được phép gửi bản tin quảng bá của H ngược trở lại cho chính H. 3. Bộ định tuyến X kết nối tới 4 bộ định tuyến hàng xóm là A, B, C, và D. Từ 4 bộ định tuyến này, X nhận các bản tin quảng bá LSA từ các bộ định tuyến khác trong mạng. Từ các bản tin LSA này, bộ định tuyến X có thể phân tích, suy luận và vạch ra các đường truyền giữa các Router trong mạng và vẽ lên sơ đồ miêu tả của các bộ định tuyến , hay còn gọi là bản đồ hệ thống mạng. 4. Mỗi một đường truyền Ethernet trên hệ thống mạng được gán giá trị Metric của giao thức OSPF là COST = 10. Bằng việc phân tích các giá trị COST riêng biệt và

các giá trị COST tổng cộng đối với các đường truyền đơn và một tập hợp các đường truyền đơn,bộ định tuyến có thể phân tích và tính toán ra đường truyền có giá trị COST tổng cộng thấp nhất, đường truyền tốt nhất từ nguồn đến đích. 5. Topology bên trái cho ta thấy cây SPF, hay sơ đồ đường truyền tốt nhất đến các bộ định tuyến trên mạng đối với bộ định tuyến X. Các đường truyền tốt nhất được biểu thị bằng các đường truyền liền nét. Sau đó các đường truyền tốt nhất này được ghi vào trong Bảng định tuyến. Đối với mỗi đường truyền cụ thể thì bộ định tuyến kết tiếp sẽ được lựa chọn cho phù hợp. 2.5. Quá trình đóng gói bản tin OSPF Các thành phần của một bản tin OSPF được đóng gói trong một gói tin. Bản tin OSPF bao gồm 4 trường, được đóng gói lần lượt theo thứ tự, đó là: Hình 2.7: Đóng gói bản tin OSPF 1. Trường Dữ Liệu Định Dạng Gói Tin OSPF (OSPF Packet Type – Specific Data): Là trường xác định các loại bản tin OSPF, có 5 loại là: Hello, Database Description, Link-State Request, Link-State Update, Link-State Acknowledgement. 2. Trường Mào đầu gói tin OSPF (OSPF Packet Header): Là trường xác định Router ID hoặc Area ID, tuỳ theo loại gói tin OSPF. 3. Trường Mào đầu gói tin IP (IP Header): 2 trường đầu tiên được đóng gói vào trong gói tin IP, trường IP Header có một trường con là trường Protocol Field, trường này mang giá trị là 89 đối với gói tin OSPF. Trong trường này, địa chỉ IP đích là địa chỉ dạng Multicast là 224.0.0.5 hoặc 224.0.0.6 4. Trường Mào đầu khung dữ liệu (Data Link Frame Header): Là trường mào đầu khung dữ liệu, nếu gói tin OSPF được đóng gói trong một khung Ethernet, trường địa chỉ MAC đích là 01-00-5E-00-00-05 or 01-00-5E-00-00-06. Hình 2.8: Gói tin OSPF 2.6. Các loại gói tin OSPF Có 5 loại gói tin OSPF, mỗi loại gói tin được thiết kế nhằm phục vụ một mục đích cụ thể trong quá trình Định Tuyến. Hình 2.9: Các loại gói tin OSPF 1. Bản tin Hello:

Các gói tin Hello được sử dụng để thiết lập và duy trì mối quan hệ thân mật (Adjaciency) giữa các bộ định tuyến được cấu hình chạy định tuyến OSPF trong mạng. 2. Bản tin Database Description (DBD): Các gói tin DBD chứa một danh sách tóm tắt cơ sở dữ liệu trạng thái kết nối của các bộ định tuyến khi gói tin OSPF được gửi đi. Và chúng được sử dụng bởi các bộ định tuyến nhận gói tin OSPF để kiểm tra cơ sở dữ liệu về trạng thái liên kết trong mạng nội bộ xung quanh nó. Bản tin DBD được sử dụng để kiểm tra tính đồng bộ về cơ sở dữ liệu giữa các bộ định tuyến . 3. Bản tin Link-State Request (LSR): Các bộ định tuyến sau khi nhận bản tin OSPF có thể yêu cầu bộ định tuyến gửi cung cấp thêm thông tin về bất kỳ một mục nào có trong bản tin DBD bằng việc gửi các bản tin LSR. Bản tin này thực chất là bản tin yêu cầu việc truyền tải thông tin chi tiết về trạng thái liên kết giữa các bộ định tuyến . 4. Bản tin Link-State Update (LSU): Các gói tin LSU được sử dụng để trả lời các gói tin LSR yêu cầu trước đó để cập nhật các thông tin mới về trạng thái của mạng. 5. Bản tin Link-State Acknowledgement (LSAsk): Các gói tin LSAsk được sử dụng để gửi xác nhận đã nhận gói tin LSU từ bộ định tuyến nhận đến bộ định tuyến gửi. 2.7. Giao thức Hello Gói tin OSPF kiểu thứ nhất là bản tin Hello. Bản tin Hello được sử dụng để phục vụ các chức năng sau: 1. Khám phá các bộ định tuyến lân cận được cấu hình chạy định tuyến OSPF và thiết lập mối quan hệ thân mật Adjaciency giữa các bộ định tuyến này. 2. Quảng bá các thông số mà trong đó, các bộ định tuyến cần phải đạt được một số thoả thuận để có thể thiết lập mối quan hệ Adjaciency và trở thành các Neighbor bộ định tuyến . 3. Đảm bảo thông tin 2 chiều giữa các bộ định tuyến . 4. Bầu chọn các DR và BDR trong các mạng đa truy nhập như Ethernet và FrameRelay. Hình 2.10 Giao thức Hello Hình 2.11: Định dạng bản tin OSPF

Một số trường quan trọng trong gói tin OSPF có kiểu dạng 1, hay bản tin Hello. 1. Loại gói tin OSPF (OSPF Packet Types): mang giá trị là 1 với bản tin Hello, là 2 với bản tin DD, là 3 với bản tin LSR, là 4 với bản tin LSU, là 5 với bản tin LSAck. 2. Bộ định tuyến ID: Là thông số để nhận dạng loại bộ định tuyến OSPF đối với bộ định tuyến vừa gửi bản tin Hello này. 3. Area ID: Là thông số để nhận dạng vùng của bộ định tuyến gửi bản tin Hello này. 4. Network Mask: Là Subnet Mask của mạng ứng với giao diện vừa nhận bản tin Hello này. 5. Hello Interval: Là thông số mô tả thời gian tính bằng giây giữa các lần truyền tải bản tin Hello trên giao diện. 6. Router Priority: Là thông số được sử dụng trong việc bầu chọn các DR và BDR. 7. Router Dead Interval: là khoảng thời gian tính theo giây mà bộ định tuyến sẽ chờ để nghe các gói Hello từ một Neighbor trước khi nó coi rằng Neighbor này bị Down. 8. Neighboring Routers: danh sách tất cả các Neighbor hợp lệ (có gói Hello được nhìn thấy trong thời gian Router Dead Interval) Phương thức hoạt động của giao thức Hello Thiết lập mối quan hệ thân mật lân cận (Adjaciency Neighbor) Trước khi một bộ định tuyến được cấu hình sử dụng giao thức định tuyến OSPF có thể truyền tải đi cơ sở dữ liệu Trạng thái liên kết của mình cho các bộ định tuyến OSPF khác trong mạng thông qua các bản tin Update bằng cách làm ngập bản tin này, nó cần xác định trước tiên nếu có một vài các bộ định tuyến lân cận chạy giao thức định tuyến OSPF trên các liên kết của nó. Bầu chọn DR và BDR trong mạng sử dụng giao thức định tuyến OSPF. Để giảm thiểu lưu lượng Traffic trên các mạng đa truy nhập, tiết kiệm băng thông, các bộ định tuyến được cấu hình chạy giao thức định tuyến OSPF có cơ chế bầu chọn ra DR và BDR. Hình 2.12 Bầu chọn DR và BDR DR chịu trách nhiệm cập nhật thông tin cho tất cả các bộ định tuyến OSPF khác ở trong mạng khi có sự thay đổi về cấu trúc và trạng thái của mạng trong các mạng đa truy cập. Điều này cũng có nghĩa rằng các bộ định tuyến OSPF trong một mạng chỉ nhận thông tin cập nhật về trạng thái kết nối từ DR của mạng đó. Khi ấy, các Router này được gọi là các DROthers. Router BDR sẽ thay thế vai trò của DR trong trường hợp DR gặp sự cố. Trong ví dụ trên thì 3 bộ định tuyến OSPF này kết nối với nhau qua các liên kết Point-to-Point nên không cần thiết việc bầu chọn DR và BDR. 2.8. Hoạt động của giao thức định tuyến OSPF trên môi trường mạng đa miền

Vấn đề quan trọng nhất, giúp ta hiểu được phương thức hoạt động của OSPF là cơ sở dữ liệu trạng thái liên kết về cấu trúc, hay Topology của mạng được xây dựng như thế nào. Việc kiểm tra, gỡ rối mạng, debug lỗi mạng đối với mạng sử dụng giao thức OSPF đòi hỏi việc phân tích cơ sở dữ liệu và bảng định tuyến. Và như vậy việc nắm rõ về cơ chế của các loại bản tin LSA là rất cần thiết. Cơ sở dữ liệu về Trạng thái kết nối OSPF hay OSPF LSDBs thường có dung lượng khá lớn. Vì lý do này mà một cấu trúc phân chia vùng theo cây (Area Hierachical Structure) được thiết lập để xác lập một vài dạng bộ định tuyến . Giao thức OSPF thường được sử dụng trong một đơn miền (Single-Area), và đương nhiên là sẽ có vấn đề nảy sinh khi một đơn miền được mở rộng ra hàng trăm mạng con (Subnetwork) hay mạng đa miền. Hình 2.13 Triển khai OSPF trên mạng diện rộng (Large Network) Các vấn đề mới sẽ nảy sinh là: 1. Việc tính toán thường xuyên của thuật toán SPF. Trong một mạng lớn, việc cấu trúc mạng và trạng thái các đường truyền trong mạng thay đổi là việc không thể tránh khỏi. Do vậy mà các bộ định tuyến cần phải dành nhiều tài nguyên như CPU và RAM cho việc tính toán lại và cập nhật bảng định tuyến dựa trên nền thuật toán SPF. 2. Dung lượng bảng định tuyến lớn. OSPF không cho phép tổng hợp đường truyền theo mặc định. Nếu các tuyến đường không được tổng hợp thì dung lượng của bảng định tuyến có thể sẽ rất lớn, tuỳ thuộc vào độ phức tạp của cấu trúc Topology của mạng. 3. Dung lượng cơ sở dữ liệu LSDBs lớn. Do LSDBs bao phủ toàn bộ cấu trúc của mạng, mỗi bộ định tuyến phải duy trì một mục ghi cho mỗi một mạng trong vùng, cho dù tất cả các đường truyền sẽ không được ghi vào bảng định tuyến. Và do vậy một giải pháp giải quyết vấn đề này đó là việc phân chia mạng lớn thành các mạng con, các vùng con. Định tuyến OSPF theo cấu trúc phân cây trên môi trường mạng đa miền (Multi-Area). Một giải pháp giúp tháo gỡ tình trạng trên là giải pháp phân chia nhỏ mạng diện rộng ra thành nhiều miền (Multi-Area). OSPF cho phép việc phân tách một mạng lớn thành các mạng con, thành nhiều khu vực quản lý phân cấp hơn, nhưng vẫn đảm bảo yêu cầu cơ bản là trao đổi thông tin định tuyến. Định tuyến trên nền vùng mạng có tính chất phân chia theo cấu trúc cây chia nhỏ một liên mạng diện rộng thành các đa miền con. Khi ta triển khai kỹ thuật này, vấn đề định tuyến liên miền vẫn xảy ra, tuy vậy mỗi miền sẽ có các hoạt động riêng rẽ như việc tính toán dựa trên thuật toán SPF

Xét một ví dụ sau đây: Nếu vùng 1 (Area-1) có một vấn đề với một đường truyền Up hoặc Down, các bộ định tuyến trong các vùng khác không cần thiết phải chạy thuật toán SPF để tính toán các Metric đối với vùng này bởi chúng nằm ở vùng khác bị cách ly với vùng xảy ra vấn đề. Hình 2.14 Triển khai OSPF trên mạng đa miền (Multi-Area) 1. Bao gồm nhiều khu vực (Areas) và các vùng tự trị AS (Autonomous System) 2. Tối ưu hoá, giảm thiểu lưu lượng traffic cập nhật thông tin định tuyến

Những ưu điểm của việc sử dụng kỹ thuật phân chia miền đối với giao thức OSPF trên môi trường mạng đa miền (Multi-Area). 1. Giảm thiểu tần suất việc chạy thuật toán SPF: Khi phân chia một mạng lớn thành các vùng nhỏ, thông tin chi tiết về sự thay đổi trạng thái của đường truyền trong một vùng, một khu vực không cần thiết phải được truyển tải ra các vùng bên ngoài. Do vậy, không phải tất cả các bộ định tuyến đều phải chạy thuật toán SPF, mà chỉ là những bộ định tuyến chịu ảnh hưởng từ sự thay đổi đường truyền đó cần phải chạy lại thuật toán SPF nhằm tính toán lại Metric và cập nhật bảng định tuyến. 2. Bảng Định tuyến có dung lượng nhỏ hơn: Các thông tin chi tiết về các mạng xác định trong một khu vực có thể duy trì ở trong khu vực đó. Thay cho việc quảng bá các đường truyền này ra bên ngoài, các bộ định tuyến có thể được cấu hình để tổng hợp các đường truyền thành một hoặc nhiều địa chỉ chung. Quảng bá các địa chỉ chung này giảm bớt lưu lượng và số lượng các bản tin LSA lan truyền giữa các khu vực với nhau nhưng vẫn giúp cho việc vươn tới tất cả các mạng con. 3. Giảm thiểu cấu trúc mào đầu LSU: Các LSU chứa nhiều loại bản tin LSA, bao gồm trạng thái kết nối và các thông tin tổng hợp. Thay cho việc gửi một bản tin LSU cho mỗi mạng trong một vùng, một Router có thể quảng bá một đường truyền tổng hợp hoặc một nhóm nhỏ các đường truyền giữa các vùng, giữa các khu vực. Giảm thiểu cấu trúc mào đầu LSU khi LSU được truyền tải qua các khu vực khác nhau

CHƯƠNG 3: LỰA CHỌN CÔNG CỤ MÔ PHỎNG VÀ KẾT QUẢ MÔ PHỎNG 3.1. Lựa chọn công cụ mô phỏng Trong phạm vi một đề tài rất khó có thể nghiên cứu, đánh giá các giải pháp điều khiển lưu lượng trên một mạng thực tế. Một hướng giải quyết phổ biến là sử dụng chương trình mô phỏng.

Mô phỏng là việc biểu diễn của một hệ thống thực chỉ bằng các phần mềm ngoại tuyến (off-line). Mô phỏng thích hợp với những môi trường nghiên cứu lý thuyết, cần có khả năng mở rộng và có kinh phí đầu tư nhỏ. Các công cụ để xây dựng mô phỏng có rất nhiều. Tùy thuộc vào nhu cầu cụ thể và môi trường áp dụng mà có thể sử dụng nhiều loại công cụ mô phỏng khác nhau. Việc lựa chọn công cụ thích hợp luôn giữ một vai trò quan trọng trong quá trình phát triển mô phỏng. Có hai phương thức xây dựng mô phỏng hay được chọn lựa. Phương thức thứ nhất là xây dựng chương trình mô phỏng từ đầu (hoàn toàn tự xây dựng trên mã nguồn). Còn phương thức thứ hai là xây dựng dựa trên các môi trường mô phỏng dựng sẵn (có sẵn một số chương trình phần mềm cơ bản được thiết kế dưới dạng mô-đun/lớp, khi cần có thể tự mở rộng dựa trên mã nguồn hoặc kết hợp các mô đun theo nhu cầu). Mỗi phương thức có những ưu, nhược điểm riêng và đều có thể phù hợp tùy thuộc vào độ phức tạp và phạm vi của bài toán mô phỏng. Phương thức phát triển mô phỏng từ các chương trình mã nguồn bậc cao phù hợp với việc kiến tạo những chương trình đơn giản ít mất thời gian, còn nếu muốn có được chương trình cụ thể theo yêu cầu thì sẽ mất nhiều thời gian và công sức của người lập trình. Do không định hướng theo những nhiệm vụ mô phỏng nên những chương trình kiểu này khó đạt được những mục tiêu như mô tả toàn bộ hệ thống ở độ chi tiết nhất và mô tả toàn bộ những công việc liên quan tới mô phỏng. Tuy nhiên, vì các ngôn ngữ lập trình bậc cao cho phép xây dựng chương trình đúng theo yêu cầu nghiên cứu, nên sản phẩm thu được sẽ có hiệu năng khả quan cao nhất (ví dụ dưới thuật ngữ thời gian chạy chương trình). Thông thường, lựa chọn phương pháp này có thể sẽ bị hạn chế và chậm, đặc biệt với những người chưa có nhiều kinh nghiệm lập trình. Hiện nay có rất nhiều môi trường mô phỏng đã dựng sẵn, phục vụ cho những nghiên cứu về mạng, đặc biệt là mạng gói như NS-2, Omnet++, Dynamips/Dynagen, … Các môi trường này có đặc điểm chung là chương trình hướng đối tượng, đã được cấu trúc sẵn và có nhiều mô đun xây dựng sẵn, giúp cho người sử dụng nhanh chóng tạo ra các phương án chương trình. Ngoài ra, những chương trình này vẫn có tính mở, cho phép người sử dụng có thể xây dựng mô đun hoàn toàn mới hoặc xây dựng dựa trên các mô đun sẵn có theo yêu cầu của chính mình. Phương thức này phù hợp với việc kiến tạo những chương trình mô phỏng khi có thể tận dụng các mô đun sẵn có, giảm thời gian cho người xây dựng chương trình rất nhiều. Còn nếu muốn có được chương trình cụ thể theo yêu cầu thì người sử dụng cũng có thể kế thừa các lớp/mô đun tương tự xây dựng từ trước. Phương thức này chỉ khó thực hiện khi người sử dụng muốn xây dựng phương án hoàn toàn mới, không tận dụng được các chương trình sẵn có, song điều này ít khi xảy ra với các chương trình phần mềm mã nguồn mở có số lượng người sử dụng lớn. Sau khi tìm hiểu và phân tích có thể rút ra một số đánh giá về các công cụ mô phỏng mạng viễn thông dựng sẵn hiện đang được sử dụng như sau:

Omnet++ (http://www.omnetpp.org/): là môi trường mô phỏng sự kiện rời rạc. Ứng dụng chủ yếu của Omnet++ là các mạng thông tin, song vì kiến trúc linh hoạt nên nó hay được sử dụng trong những lĩnh vực về mô phỏng các hệ thống IT phức tạp, các mạng xếp hàng hoặc các kiến trúc phần cứng. NS-2 (http://www.isi.edu/nsnam/ns/): là chương trình mô phỏng sự kiện rời rạc, nhằm vào những nghiên cứu về lĩnh vực mạng gói. NS-2 mô phỏng những hoạt động của mạng IP, chủ yếu hỗ trợ mô phỏng các giao thức TCP, định tuyến và multicast trên các mạng có dây, không dây (nội hạt và vệ tinh). Opnet (http://www.opnet.com/): là sản phẩm thương mại với giao diện người sử dụng đồ họa (GUI), được sử dụng để mô hình hóa và mô phỏng những mạng phức tạp với hiệu năng tối ưu. Số lượng người biên tập là rất lớn cho việc kiến tạo/thay đổi/biến đổi các mô hình và để chạy các mô phỏng và hiển thị/phân tích kết quả. Các ưu điểm chính của Opnet là hỗ trợ rất chuyên nghiệp, tài liệu tốt và cung cấp nhiều giao thức xây dựng sẵn. Dynamips/Dynagen (http://www.dynagen.org/) là chương trình giả lập bộ định tuyến Cisco với giao diện dòng lệnh. Nó có khả năng kết nối các bộ định tuyến lại với nhau để cấu thành 1 liên mạng rộng lớn. Do nó chỉ mô phỏng bộ định tuyến nên chúng ta cần phải thiết lập cấu hình cho các bộ định tuyến được giả lập này, dẫn đến khả năng tùy biến rất cao, phù hợp với yêu cầu của từng cá nhân và khả năng can thiệp sâu vào quá trình hoạt động của bộ định tuyến. Với số lượng người dùng rất nhiều trên toàn thế giới đã lập ra 1 cộng đồng người dùng Dynamips/Dynagen để hỗ trợ lẫn nhau

Sau khi tìm hiểu và phân tích ưu, nhược điểm của một số chương trình phần mềm mô phỏng mạng như trên, chúng em nhận thấy cả Omnet++, NS, Opnet và Dynamips/Dynagen đều là các phần mềm mô phỏng mạng được áp dụng phổ biến ở các trường đại học và viện nghiên cứu trên thế giới, song ở Học viện công nghệ Bưu chính viễn thông vẫn chưa được triển khai cho sinh viên tiếp cận rộng rãi. Trong các công cụ mô phỏng được biết đến thì Dynamips/Dynagen được chúng em chọn vì như đã nói ở trên, do chúng ta có thể cấu hình các bộ định tuyến được giả lập theo í muốn nên tính mềm dẻo là rất cao. Việc cấu hình đòi hỏi chúng em phải tìm tòi tài liệu cấu hình bộ định tuyến Cisco nên nâng cao được kiến thức. Hơn nữa, nó còn có khả năng bắt các gói tin được gửi đi, gửi đến bộ định tuyến nên rất dễ cho việc phân tích, thông kê kết quả mô phỏng sau này. Trong Dynamips/Dynagen chúng ta có thể dễ dàng cấu hình nhiều giao thức cơ bản cũng như các giao thức của mạng thế hệ sau do việc hỗ trợ từ hãng Cisco 3.2 Công cụ mô phỏng Dynamips/Dynagen và phân tích gói tin Wireshark 3.2.1 Công cụ mô phỏng Dynamips/Dynagen Để kiểm định được lý thuyết, chúng ta cần giả lập các bộ định tuyến chạy 2 giao thức RIP và OSPF. Yêu cầu đặt ra là chương trình giả lập phải đủ độ tin cậy, phải chiết xuất được dữ liệu để phân tích. Chúng em đã kiểm nghiệm 1 vài chương trình mô phỏng như Boson Netsim, NS, Dynamips/Dynagen…và đã quyết định chọn Dynamips/Dynagen.

Chúng em sẽ mô phỏng bộ định tuyến 2691 và 7200 của Cisco bằng bộ phần mềm Dynamips/Dynagen. Em chọn router của Cisco là vì Cisco là hãng sản xuất thiết bị mạng hàng đầu thế giới, ngay ở Việt Nam thị phần của Cisco đã lên đến 75%. Do được sử dụng nhiều nên Cisco có 1 cộng đồng người sử dụng rất đông đảo. Đó cũng chính là lý do phần mềm Dynamips ra đời. Dynamips là phần mềm giả lập router Cisco. Nó mô phỏng phần cứng và sử dụng hệ điều hành thật của các router Cisco, do đó độ tin cậy là rất cao. Dynagen là phần mềm hỗ trợ cho Dynamips bằng cách cung cấp giao diện người dùng theo kiểu dòng lệnh. Cộng đồng người sử dụng Dynamips/Dynagen tại http://7200emu.hacki.at/index.php đánh giá rất cao tính tin cậy, hiệu suất của bộ phần mềm này. Đã có nhiều CCIE dùng nó để giả lập các hệ thống mạng phức tạp. Ngoài ra, Dynagen còn hỗ trợ bắt các gói tin đi qua 1 cổng nào đó trên bộ định tuyến, nên rất có ích trong việc phân tích kết quả. Khả năng ứng dụng của phần mềm này là rất lớn và khả năng can thiệp rất sâu, do nó mô phỏng 1 bộ định tuyến, nên việc cấu hình có thể theo ý muốn của người sử dụng. Chúng ta có thể cấu hình tùy thích các giao thức định tuyến, sử dụng các lệnh debug để có thể biết được hoạt động của nó thông qua 1 chương trình telnet bất kỳ. Tuy nhiên, do khả năng can thiệp sâu vào cấu hình của bộ định tuyến, nên yêu cầu tiên quyết là chúng ta phải biết cách cấu hình các bộ định tuyến này. Do nó sử dụng hệ điều hành của Cisco nên chúng ta phải biết cách cấu hình bộ định tuyến Cisco. Trên thực tế, với những cấu hình đơn giản thì việc này không quá khó Dưới đây là giao diện của chương trình Hình 3.1: Dynamips Server Hình 3.2: Dynagen Dynagen cung cấp giao diện để điều khiển sự hoạt động của các router Dưới đây là các bước để cài đặt chương trình này A. Các bước cài đặt 1. Download file cài đặt dynagen tại http://sourceforge.net/project/showfiles.php?group_id=160317 2. Download file cài đặt Winpcap tại đây http://www.winpcap.org/install/default.htm 3. Sau khi đã download thành công, ta sẽ cài đặt 2 files vừa download về B. Sử dụng 1. Chúng ta cần phải có file IOS thật của Cisco 2. Copy file IOS vào 1 thư mục nào đó. Ở đây tôi dùng file c2691-i-mz.12312a.bin và để ở thư mục E:\CCNA\IOS

3. Dùng notepad tạo mới 1 file tên do tùy đặt, nhưng phải để đuôi .net. Đây là file “2 Routers 2691.net”, mô phỏng 2 router nối với nhau qua đường serial

[localhost]

[[2691]] image = e:\ccna\ios\c2691-i-mz.123-12a.bin ram = 40

[[Router R1]] model = 2691 s1/1 = R2 s1/1 autostart = False

[[Router R2]] model = 2691 autostart = False 4. File .net chúng ta tạo phải có cấu trúc tương tự như trên. Dưới đây là ý nghĩa của các dòng lệnh [localhost]: Bắt buộc phải có

[[2691]]: Tên model của Router, theo như tên IOS dưới đây image = e:\ccna\ios\c2691-i-mz.123-12a.bin: Đường dẫn và tên file IOS

ram = 40: Dung lượng RAM dành cho mỗi Router, càng cao càng tốn RAM

[[Router R1]]: Tên Router model = 2691: Model s1/1 = R2 s1/0: Nghĩa là cổng S1/1 nối với S1/0 của router R2 autostart = False: Không tự động bật Router

[[Router R2]] model = 2691 autostart = False

1 ví dụ khác, mô phỏng cho topo này

R4 R10 14 21 15 22

17 19 18 20 11 12 13 16 23 4 5 1 2 3 9 8 7 10 6 R1 R2 R6 R7

R8 R9 R5 R3 Hình 3.3: Topo mẫu ghostios = True sparsemem = True autostart = False [localhost:7200] workingdir = E:\Documents\Largo Lee\A-Nghien cuu khoa hoc 07\C3\Dynagen\file2691\ udp = 10000

[[7200]]

image = ..\IOS\c7200-is-mz.122-17.8.SPI2.bin slot1 = PA-2FE-TX slot2 = PA-2FE-TX ram = 64 idlepc = 0x6078b57c

[[Router R1]]

model = 7200 f1/0=R2 f2/1 f1/1=R5 f0/0 f2/0=R3 f2/1 f2/1=R4 f0/0

[[Router R2]] model = 7200 f1/1=R3 f2/0 f2/0=R6 f0/0 f1/0=R7 f0/0

[[Router R3]] model = 7200 f1/1=R9 f0/0 f1/0=R8 f0/0 ############################################################## [localhost:7201] workingdir = E:\Documents\Largo Lee\A-Nghien cuu khoa hoc 07\C3\Dynagen\file2691\ udp = 11000 [[2691]]

image = ..\IOS\C2691-I-old-but-good.BIN slot1=NM-4T ram = 50 idlepc = 0x605b2dec

[[Router R4]] model = 2691 s1/0=R5 s1/1

[[Router R5]] model = 2691

[[Router R6]] model = 2691

[[Router R7]] model = 2691 s1/1=R10 s1/0

############################################################## [localhost:7202]

workingdir = E:\Documents\Largo Lee\A-Nghien cuu khoa hoc 07\C3\Dynagen\file2691\ udp = 12000 [[2691]]

image = ..\IOS\C2691-I-old-but-good.BIN slot1=NM-4T ram = 50 idlepc = 0x605b2dec [[Router R8]] model = 2691 s1/1=R9 s1/0

[[Router R9]] model = 2691

[[Router R10]] model = 2691 s1/1=R6 s1/0 5. Sau khi save fie “.net”, chúng ta chạy file “Dynamips Server” được đặt ở Desktop, sau đó chạy file “.net” vừa tạo

6. Gõ list để biết chi tiết các router đang chạy ở màn hình dynagen . Chúng ta sẽ biết được trạng thái của các router trong hệ thống

Hình 3.4: Dynagen 7. Gõ start/all để khởi động tất cả các router

Hình 3.5: Dynagen Như ta thấy ở hình trên, hệ thống có 2 router đạng chạy là R1 và R2 8. Gõ telnet tên router để telnet vào nó, ví dụ telnet R1. Cửa sổ telnet sẽ hiện lên. Đến đây chúng ta sẽ cấu hình được các router theo ý muốn

Hình 3.6: Màn hình telnet Đến đây chúng ta sẽ tiến hành cấu hình router như đặt địa chỉ IP, cài đặt các giao thức định tuyến… 3.2.2 Phân tích gói tin Wireshark Để có thể đánh giá được tiêu chí sử dụng lưu lượng thì em sẽ phân tích các gói tin mà chương trình Dynagen đã bắt được bằng phần mềm Wireshark. Đây là phần mềm nguồn mở giống như phần mềm Ethereal nhưng giao diện đẹp hơn Hình 3.7 Nhờ vào phần mềm này mà ta có thể biết được nội dung 1 gói tin chứa những gì, thời gian chính xác gói tin được gửi đi, và quan trọng là nó giúp ta thống kê được tổng lưu lượng đã sử dụng trong 1 khoảng thời gian định trước 3.3 Kết quả mô phỏng Để đánh giá tính đáp ứng của mạng sử dụng giao thức OSPF, chúng ta sẽ so sánh cùng mạng chạy RIPv1 trên cùng topo sau

R4 R10 14 21 15 22 17 19 18 20 11 12 13 16 23 4 5 1 2

3 9 8 7 10 6 R1 R2 R6 R7 R8 R9 R5 R3 Hình 3.8: Topo : Fast ethernet 100Mbps

1 : Serial T1 1.544Mbps : Loopback

: Mạng 1.0.0.X, subnet mask là 255.0.0.0. R1 sẽ có X=1, R2 có X=2… Tất cả các bộ định tuyến sẽ được đồng bộ về thời gian 3.3.1 Đánh giá thời gian hội tụ Trước hết, ta có 2 khái niệm sau cần nắm vững
• •

Sự hội tụ: là khi mà bộ định tuyến biết hết tất cả các tuyến đường đến tất cả các mạng Thời gian hội tụ: là khoảng thời gian tính từ khi mạng có sự thay đổi đến khi bộ định tuyến nhận biết được sự thay đổi đó và tiến hành cập nhật bảng định tuyến

Kịch bản: Khi mạng đã hội tụ, ở R8 đường đi đến mạng 7.0.0.0 sẽ là R8àR3àR2àR7. Giả sử, mạng 16.0.0.0 down, khi đó thì đường đi sẽ phải chuyển sang R8àR3àR1àR2àR7. Chúng ta cùng xét xem thời gian của OSPF và RIP nhận biết sự thay đổi và tiến hành thay đổi, cập nhật bảng định tuyến dựa trên log của bộ định tuyến R8 Với OSPF *00:02:46.583 UTC Mon Mar 1 1993 ß Thời điểm mạng 16.0.0.0 down R8# *Mar 1 00:02:51.831: RT: metric change to 17.0.0.0 via 21.0.0.3, ospf metric [110/3] new metric [110/4] *Mar 1 00:02:51.835: RT: NET-RED 17.0.0.0/8 *Mar 1 00:02:51.835: RT: NET-RED queued, Queue size 1 *Mar 1 00:02:51.839: RT: metric change to 18.0.0.0 via 21.0.0.3, ospf metric [110/3] new metric [110/4] *Mar 1 00:02:51.839: RT: NET-RED 18.0.0.0/8 *Mar 1 00:02:51.839: RT: NET-RED queued, Queue size 2 *Mar 1 00:02:51.839: RT: metric change to 2.0.0.2 via 21.0.0.3, ospf metric [110/3] new metric [110/4] *Mar 1 00:02:51.843: RT: NET-RED 2.0.0.2/32 *Mar 1 00:02:51.843: RT: NET-RED queued, Queue size 3

*Mar 1 00:02:51.847: RT: metric change to 6.0.0.6 via 21.0.0.3, ospf metric [110/4] new metric [110/5] *Mar 1 00:02:51.851: RT: NET-RED 6.0.0.6/32 *Mar 1 00:02:51.851: RT: NET-RED queued, Queue size 4 *Mar 1 00:02:51.851: RT: metric change to 7.0.0.7 via 21.0.0.3, ospf metric [110/4] new metric [110/5] ß thời điểm R8 thay đổi tuyến đường *Mar 1 00:02:51.855: RT: NET-RED 7.0.0.7/32 *Mar 1 00:02:51.855: RT: NET-RED queued, Queue size 5 *Mar 1 00:02:51.859: RT: metric change to 10.0.0.10 via 21.0.0.3, ospf metric [110/68] new metric [110/69] *Mar 1 00:02:51.863: RT: NET-RED 10.0.0.10/32 *Mar 1 00:02:51.863: RT: NET-RED queued, Queue size 6 *Mar 1 00:02:51.863: RT: metric change to 19.0.0.0 via 21.0.0.3, ospf metric [110/67] new metric [110/68] *Mar 1 00:02:51.863: RT: NET-RED 19.0.0.0/8 *Mar 1 00:02:51.863: RT: NET-RED queued, Queue size 7 *Mar 1 00:02:51.863: RT: metric change to 20.0.0.0 via 21.0.0.3, ospf metric [110/67] new metric [110/68] *Mar 1 00:02:51.863: RT: NET-RED 20.0.0.0/8 *Mar 1 00:02:51.863: RT: NET-RED queued, Queue size 8 Kết luận: Ta thấy, sau 5.268 giây R8 đã nhận biết được sự thay đổi và tiến hành cập nhật bản định tuyến. Sau khi chạy 10 lần kịch bản này, em đã tính được giá trị trung bình là 5.198 giây Với RIP

*00:03:14.991 UTC Mon Mar 1 1993ß Thời điểm mạng 16.0.0.0 down *Mar 1 00:06:24.419: RT: del 2.0.0.0 via 21.0.0.3, rip metric [120/2] *Mar 1 00:06:24.423: RT: delete network route to 2.0.0.0 *Mar 1 00:06:24.423: RT: NET-RED 2.0.0.0/8 *Mar 1 00:06:24.427: RT: NET-RED queued, Queue size 1 *Mar 1 00:06:24.431: RT: del 6.0.0.0 via 21.0.0.3, rip metric [120/3] *Mar 1 00:06:24.431: RT: delete network route to 6.0.0.0 *Mar 1 00:06:24.431: RT: NET-RED 6.0.0.0/8 *Mar 1 00:06:24.435: RT: NET-RED queued, Queue size 2 *Mar 1 00:06:24.435: RT: del 7.0.0.0 via 21.0.0.3, rip metric [120/3] ß Thời điểm mạng 7.0.0.0 bị xóa khỏi bảng định tuyến *Mar 1 00:06:24.439: RT: delete network route to 7.0.0.0 *Mar 1 00:06:24.439: RT: NET-RED 7.0.0.0/8 *Mar 1 00:06:24.443: RT: NET-RED queued, Queue size 3 *Mar 1 00:06:24.443: RT: del 10.0.0.0 via 21.0.0.3, rip metric [120/4] *Mar 1 00:06:24.447: RT: delete network route to 10.0.0.0 *Mar 1 00:06:24.447: RT: NET-RED 10.0.0.0/8 *Mar 1 00:06:24.451: RT: NET-RED queued, Queue size 4 *Mar 1 00:06:24.455: RT: del 17.0.0.0 via 21.0.0.3, rip metric [1 *Mar 1 00:07:24.047: RT: NET-RED queued, Queue size 1 *Mar 1 00:07:24.051: RT: add 6.0.0.0/8 via 21.0.0.3, rip metric [120/4] *Mar 1 00:07:24.051: RT: NET-RED 6.0.0.0/8 *Mar 1 00:07:24.055: RT: NET-RED queued, Queue size 2

*Mar 1 00:07:24.055: RT: add 7.0.0.0/8 via 21.0.0.3, rip metric [120/4] ß Thời điểm cập nhật bảng định tuyến *Mar 1 00:07:24.059: RT: NET-RED 7.0.0.0/8 Kết luận: Ta thấy, sau 4 phút 9.936 giây R8 mới nhận biết được sự thay đổi và tiến hành cập nhật bản định tuyến. Sau khi chạy 10 lần kịch bản này, em đã tính được giá trị trung bình là 5 phút 0.105 giây. Rõ ràng là thời gian hội tụ của OSPF nhanh hơn hẳn so với RIP 3.3.2 Lưu lượng trên mạng Để đánh giá lưu lượng sử dụng bởi OSPF và RIP, chúng ra sẽ tiến hành bắt tất cả các gói tin đi qua mạng 13.0.0.0 khi mạng đang trong trạng thái rỗi. Sau đó, sẽ dùng phần mềm Wireshark để phân tích và vẽ biểu đồ Em đã tiến hành bắt các gói tin trong vòng 10 phút khi mạng đang rỗi. Tất cả các gói tin bắt được sẽ được xuất ra 1 file. Do trên đường truyền không chỉ có các gói tin của giao thức định tuyến mà còn 1 số gói tin khác như để đồng bộ đường truyền, gói tin CDP… nên em sẽ dùng bộ lọc của chương trình Wireshark để lọc ra những gói tin cần thiết cho việc phân tích. Việc phân tích này được lặp lại trên 10 lần nhằm đảm bảo tính khách quan, chính xác. Dưới đây là kết quả dưới dạng biểu đồ s b y t e Hình 3.9: OSPF trong trạng thái idle s b y t e Hình 3.10: RIP trong trạng thái idle

Nhận xét: Nhìn lên 2 biểu đồ ta thấy, tại thời điểm ban đầu thì OSPF sử dụng nhiều băng thông hơn RIP, nhưng khi mạng đã đi vào trạng thái ổn định thì OSPF chiếm ưu thể hơn về sử dụng băng thông. Sau khi dùng Wireshark phân tích các gói tin, em thấy trung bình trong 30s RIP sử dụng 436 bytes, trong khi đó OSPF chỉ sử dụng có 252 bytes/30s. Rõ ràng điều này đã chứng minh được lý thuyết: OSPF sử dụng băng thông hiệu quả hơn RIP 3.3.3 Lựa chọn tuyến đường Xét tuyến đường từ R5 đến R4. Theo lý thuyết thì với RIP R5 sẽ trực tiếp đến R4 qua mạng 13.0.0.0 (đường T1), nhưng OSPF sẽ chọn đường đi qua R1 vì đường đi này lợi hơn nhiều về băng thông (chỉ đi trên đường FastEthernet). Chúng ta cùng dùng lệnh traceroute trên R5 để kiểm nghiệm điều này. Địa chỉ IP được đánh như hình dưới

R4 R1 R5 13.0.0.4 11.0.0.4 12.0.0.1 4.0.0.4 Hình 3.11: Topo lựa chọn tuyến đường Hình 3.12: Traceroute trên OSPF Hình 3.13: Traceroute trên RIP

KẾT LUẬN Qua nội dung đề tài đã chọn và trình bày trên đây, cùng với việc đọc thêm các tài liệu tham khảo khác, chúng em đã hiểu biết thêm rất nhiều về giao thức Internet, mạng IP, phương thức hoạt động của giao thức OSPF cũng như tính đáp ứng của nó.

Hệ thống mạng Viễn thông đang phát triển rất mạnh mẽ trên thế giới với xu hướng nâng cao chất lượng, tăng các loại hình dịch vụ, giảm giá thành.Và ở Việt Nam nói riêng, mạng Viễn thông cũng đã có những thay đổi vượt xa những năm về trước. Chúng em hi vọng sẽ có nhiều cơ hội để tiếp tục nghiên cứu về các vấn đề khoa học liên quan đến Viễn thông. Nhóm nghiên cứu đề tài, lớp D2005VT1

TÀI LIỆU THAM KHẢO 1. RFC 2328 http://www.ietf.org/rfc/rfc2328.txt 2. Config Cisco router, www.cisco.com 3. Config IP Routing, http://www.cisco.com/en/US/tech/tk365/tsd_technology_support_configur e_guide.html 4. Cisco Networking Academy Program “CCNA 2&3 Companion Guide”

Sign up to vote on this title
UsefulNot useful