1.3.10.1 Tràn lụt tin cậy sử dụng xác nhận
Mỗi LSA được truyền đi phải được xác nhận. Có hai kiểu xác nhận là: Xác nhận tuyệt đối và xác nhận rõ ràng.
Xác nhận tuyệt đối: Xác nhận tuyệt đối việc đã nhận một LSA bằng cách gửi một
gói cập nhật chứa một LSA giống hệt trở lại router nguồn. Xác nhận tuyệt đối sử dụng hiệu quả trong trường hợp neighbor đang có ý định gửi cập nhật về router gốc.
Xác nhận rõ ràng: Bằng cách gửi gói xác nhận trạng thái liên kết có chứa các
header của LSA đủ để nhận dạng các LSA.
Khi LSA được gửi, một phiên bản của LSA được lưu trong danh sách truyền lại trạng thái liên kết. LSA được truyền lại theo chu kì cho đến khi nhận được xác nhận hoặc khi Adjacency bị huỷ bỏ. Các gói cập nhật trạng thái liên kết chứa các LSA truyền lại luôn phát theo kiểu unicast đối với mọi kiểu mạng.
1.3.10.2 Tràn lụt tin cậy sử dụng số trình tự, tổng kiểm tra và tuổi
Số trình tự: Khi router tạo ra một LSA, nó lập số trình tự của LSA đó bằng số trình tự đầu tiên. Mỗi lần router tạo ra một phiên bản của LSA, số trình tự lại tăng lên một đơn vị. Nếu số trình tự hiện tại là số trình tự lớn nhất và phải có một phiên bản mới của LSA được tạo ra thì trước tiên router đặt tuổi của LSA cũ đang tồn tại trong cơ sở dữ liệu của các neighbor bằng tuổi lớn nhất (MaxAge) và tràn lụt nó trên tất cả các Adjacency. Khi tất cả các neighbor kế cận biết được tuổi của LSA này là MaxAge thì
phiên bản mới của LSA này với số trình tự là số trình tự đầu tiên đã có thể được tràn lụt.
Tổng kiểm tra: Tổng kiểm tra được tính tốn dựa trên tồn bộ LSA ngoại trừ trường tuổi (Trường này thay đổi khi LSA chuyển từ router tới router do đó phải u cầu tính lại tổng kiểm tra tại mỗi router). Tổng kiểm tra của mỗi LSA cũng được tính lại khi chúng cư trú trong cơ sở dữ liệu để đảm bảo LSA không bị thay đổi khi ở trong cơ sở dữ liệu.
Tuổi: Phạm vi của tuổi là từ 0 đến 3600 s (gọi là tuổi cực đại MaxAge). Khi router tạo ra một LSA, nó lập tuổi của LSA bằng 0. Mỗi khi LSA được chuyển tiếp qua một router, tuổi của nó sẽ tăng lên một số giây nhất định. Tuổi cũng được tăng lên khi LSA cư trú trong cơ sở dữ liệu. Khi LSA đạt đến tuổi MaxAge, LSA sẽ được tràn lụt lại sau đó bị xố khỏi cơ sở dữ liệu. Do vậy khi router cần xoá bỏ một LSA khỏi tất cả cơ sở dữ liệu, nó sẽ đặt tuổi của LSA bằng MaxAge và tràn lụt lại LSA này. Chỉ có router tạo ra LSA mới có thể làm được điều này.
Khi nhận được nhiều phiên bản LSA giống nhau, router sẽ xác định LSA mới nhất dựa trên giải thuật sau:
• So sánh số trình tự: LSA có số trình tự cao hơn là LSA mới hơn.
• Nếu số trình tự bằng nhau, thì so sánh các tổng kiểm tra. LSA có tổng kiểm tra cao nhất là LSA mới nhất.
CHƯƠNG II: GIỚI THIỆU VỀ IPv6
2.1 Khái quát về IPv6
2.1.1 Những giới hạn của IPv4
Kể từ khi chính thức được đưa vào sử dụng và định nghĩa trong RFC 791 năm 1981 đến nay, IPv4 đã chứng minh được khả năng dễ triển khai, dễ phối hợp hoạt động và tạo ra sự phát triển bùng nổ của các mạng máy tính. Tuy nhiên, đến thời điểm hiện tại, chính việc phát triển ồ ạt các ứng dụng và công nghệ cũng như các thiết bị di động khác đã làm bộc lộ những hạn chế của IPv4:
• Thiếu hụt khơng gian địa chỉ IPv4: Sự tăng nhanh của các host trên mạng đã dẫn đến tình trạng thiếu địa chỉ IP trầm trọng. Mặc dù đã có nhiều cơng cụ ra đời để khắc phục tình trạng trên như: kỹ thuật subnetting (1985), kỹ thuật VLSM (1987) và CIDR (1993). Tuy nhiên, các kỹ thuật nêu trên cũng khơng thể khắc phục tình trạng thiếu địa chỉ IP cho nhu cầu tương lai. Chỉ có khoảng 4 tỷ địa chỉ IPv4, nhưng khoảng địa chỉ này là không đủ trong tương lai với những thiết bị kết nối vào Internet và các thiết bị gia đình có thể u cầu địa chỉ IP.
• Có nhiều bảng định tuyến lớn trên các router backbone: Điều này làm chậm quá trình xử lý của router và làm giảm tốc độ của mạng.
• An ninh mạng: Đã có nhiều giải pháp để khắc phục vấn đề bảo mật trong IPv4 như IPsec, DES, 3DES… nhưng những giải pháp này đều phải cài đặt thêm vào và có nhiều phương thức khác nhau đối với mỗi loại chứ không được hỗ trợ trong bản thân giao thức.
• Yêu cầu cấu hình đơn giản: Đa số những vận hành của IPv4 hiện nay đều phải cấu hình bằng tay hay sử dụng một giao thức cấu hình địa chỉ tự động như DHCP (Dynamic Host Configuration Protocol).Tuy nhiên, với sự bùng nổ của Internet hiện nay, nhiều máy tình và thiết bị sử dụng IP. Điều đó dẫn đến cần có sự cấu hình địa chỉ tự động và đơn giản hơn, và những cài đặt cấu hình khơng phụ thuộc vào sự quản lý của một cấu trúc DHCP.
• Nhu cầu về các ứng dụng thời gian thực hay vấn đề đảm bảo chất lượng dịch vụ QoS: Các thách thức mới từ việc nảy sinh các dịch vụ viễn thông, các yêu cầu truyền thời gian thực cho các dịch vụ multimedia, video, âm thanh qua mạng… đã đặt ra việc đảm bảo QoS cho các ứng dụng này. QoS trong IPv4 được xác định trong trường ToS và phần nhận dạng của tải tin. Tuy nhiên, trường ToS này có ít tính năng.
2.1.2 Những đặc trưng của IPv6
Từ những hạn chế trên của IPv4, một phiên bản mới của giao thức IP đã được giới thiệu. Xuất phát điểm của IPv6 có tên gọi là IPng (Internet Protocol Next Generation). Sau đó, IPng được gán với phiên bản 6 và lấy tên chính thức là IPv6. Quan điểm chính khi thiết kế IPv6 là từng bước thay thế IPv4 và không tạo ra sự biến đổi quá lớn với các tầng trên, dưới. Những đặc trưng của IPv6 bao gồm:
• Khn dạng tiêu đề (header) mới: Header của IPv6 được giảm tới mức tối thiểu bằng việc chuyển tất cả các trường tùy thuộc (Options) và các trường không cần thiết xuống phần header mở rộng nằm ngay sau header IPv6. Việc tổ chức hợp lý header IPv6 làm tăng hiệu quả xử lý tại các router trung gian. Các header của IPv6 và IPv4 là khơng tương thích. Một host hay một router phải sử dụng cả IPv6 và IPv4 mới có thể nhận dạng và xử lý các khuôn dạng header khác nhau này. Header IPv6 mới có kích cỡ chỉ gấp 2 lần header của IPv4, mặc dù số bit trong địa chỉ IPv6 gấp 4 lần số bit trong địa chỉ IPv4.
• Khơng gian địa chỉ rộng lớn: IPv6 có 128 bit địa chỉ nguồn và đích. Với phạm vi của địa chỉ IPv6, việc cung cấp địa chỉ trở nên thoải mái hơn. Về mặt lý thuyết, 128 bit có thể biểu diễn được 2128 ≈ 3,4.1038 địa chỉ, nhiều hơn địa chỉ IPv4 vào khoảng 8 tỷ tỷ tỷ lần. Số lượng địa chỉ này sẽ đáp ứng được sự bùng nổ của các thiết bị IP trong tương lai.
• Kết cấu địa chỉ và định tuyến được phân cấp, hiệu quả: Địa chỉ IPv6 được thiết kế để tạo ra một kết cấu định tuyến tổng hợp, phân cấp và hiệu quả dựa trên sự phân cấp thành nhiều mức của các nhà cung cấp dịch vụ (ISPs). Nhờ đó, các router backbone có các bảng định tuyến nhỏ hơn nhiều, tương ứng với kết cấu định tuyến của các nhà cung cấp dịch vụ tồn cầu.
• Tự động cấu hình địa chỉ: Để đơn giản hóa cho việc cấu hình các host, IPv6 khơng chỉ cung cấp khả năng cấu hình địa chỉ tự động bởi DHCP, mà IPv6 cịn đưa thêm khả năng tự động cấu hình địa chỉ khi khơng có DHCP server. Trong một mạng, các host trên một liên kết (link) có thể tự động cấu hình địa chỉ của nó bằng cách sử dụng các địa chỉ IPv6 cho link (được gọi là địa chỉ link-local). Ngay cả khi khơng có router, các host cũng có thể cấu hình tự động địa chỉ link- local. Các địa chỉ link-local được cấu hình và liên lạc với các node hàng xóm trên liên kết ngay lập tức. Trong khi các host IPv4 sử dụng DHCP phải đợi một thời gian trước khi khơng cần đến sự cấu hình DHCP.
• Tích hợp bảo mật: IPsec được hỗ trợ ngay trong bản thân IPv6. Yêu cầu bắt buộc này là một giải pháp tiêu chuẩn cho an ninh mạng. IPsec bao gồm 2 loại
tiêu đề mở rộng: Authentication header (AH), Encapsulating Security Payload (ESP) và một giao thức cho truyền thông unicast: giao thức IKE (Internet Key Exchange).
• Hỗ trợ QoS tốt hơn: Những trường mới trong IPv6 header xác định cách thức xử lý và nhận dạng lưu lượng. Trường nhãn luồng (Flow Label) trong IPv6 header cho phép các router nhận dạng và xử lý riêng biệt với các gói thuộc dịng lưu lượng. Vì lưu lượng được nhận dạng trong IPv6 header, nên QoS vẫn được đảm bảo ngay cả khi những gói tải tin được mã hóa bởi IPsec và ESP.
• Khả năng mở rộng: IPv6 có thể mở rộng một cách dễ dàng cho các chức năng mới bằng cách thêm vào các header mở rộng sau IPv6 header. Không giống như trong IPv4, phần tùy chọn (options) chỉ có 40 byte. Trong IPv6, kích thước của các header mở rộng chỉ bị hạn chế bởi kích thước của gói tin IPv6.
2.2 Địa chỉ IPv6
2.2.1 Không gian địa chỉ IPv6
Đặc điểm dễ nhận ra nhất của IPv6 đó là nó sử dụng một khơng gian địa chỉ rộng lớn. Kích thước của địa chỉ IPv6 là 128 bit, gấp 4 lần kích thước của địa chỉ IPv4. Với kích thước địa chỉ là 128 bit, không gian địa chỉ của IPv6 sẽ là 2128, hay 340,282,366,920,938,463,463,374,607,431,768,211,456 ( hay 3.4 x 1038) địa chỉ. Theo tính tốn lý thuyết, ước tính có khoảng 665,570,793,348,866,943,898,599 địa chỉ trên 1m2 bề mặt trái đất (với giả thiết diện tích bề mặt trái đất là 511,263,971,197,990 m2). Đây là một không gian địa chỉ vơ cùng lớn với mục đích khơng chỉ cho Internet mà cịn cho tất cả các mạng máy tính, hệ thống viễn thông, hệ thống điều khiển và thậm chí cho từng vật dụng trong gia đình. Nhu cầu hiện tại theo ước tính chỉ cần 15% khơng gian địa chỉ IPv6, còn 85% dự phòng cho tương lai. Như vậy, khả năng hết địa chỉ IPv6 là một điều không tưởng.
Tương tự như cách mà không gian địa chỉ IPv4 được chia thành các địa chỉ unicast và các địa chỉ multicast, không gian địa chỉ IPv6 được phân chia dựa trên giá trị các bit bậc cao. Các bit bậc cao với giá trị cố định này được gọi là tiền tố định dạng (Format Prefix - FP). Sự cấp phát không gian địa chỉ IPv6 dựa trên FP được chỉ ra dưới hình sau:
Phân bố Tiền tố định dạng (FP)
Tỷ trọng trong không gian địa chỉ
Dự trữ 0000 0000 1/256
Chưa định danh 0000 0001 1/256
NSAP
Chưa gán 0000 010 1/128
Chưa gán 0000 011 1/128
Chưa gán 0000 1 1/32
Chưa gán 0001 1/16
Địa chỉ unicast aggregabable global 001 1/8 Chưa gán 010 1/8 Chưa gán 011 1/8 Chưa gán 100 1/8 Chưa gán 101 1/8 Chưa gán 110 1/8 Chưa gán 1110 1/16 Chưa gán 1111 0 1/32 Chưa gán 1111 10 1/64 Chưa gán 1111 110 1/128 Chưa gán 1111 1110 0 1/512
Địa chỉ unicast Link-local 1111 1110 10 1/1024 Địa chỉ unicast site-local 1111 111011 1/1024
Địa chỉ multicast 1111 1111 1/256
Hình 2.1 Cấp phát khơng gian địa chỉ IPv6
2.2.2 Cú pháp địa chỉ IPv6
Như chúng ta đã biết, địa chỉ IPv4 được biểu diễn bởi 4 nhóm số hệ cơ số mười được ngăn cách nhau bởi dấu chấm (.).Tuy nhiên, với địa chỉ IPv6, chúng ta không thể dùng cách viết này. Địa chỉ IPv6 được chia thành 8 nhóm ở dạng thập lục phân (hexa) ngăn cách nhau bởi dấu hai chấm (:). Ví dụ về dạng chuẩn của một địa chỉ IPv6: FEDL:BA98:7654:FEDC:BA98:7654:3210:ABCD.
IPv6 có 2 nguyên tắc để rút gọn việc ghi địa chỉ: thứ nhất là nó cho phép bỏ các số 0 đứng đầu mỗi nhóm số,ví dụ như viết 0 thay vì viết 0000, viết 6 thay vì viết 0006. Thứ hai là nó cho phép thay thế nhiều nhóm số 0 liên tiếp bằng 2 dấu hai chấm (::).
Ví dụ: một địa chỉ IPv6 khi chưa được rút gọn có dạng sau: ADBF:0000:0000:0000:0000:000A:00AB:0ACD
Sau khi rút gọn theo nguyên tắc thứ nhất, ta được: ADBF:0:0:0:0:A:AB:ACD
Sau khi rút gọn theo nguyên tắc thứ hai ta được: ADBF::A:AB:ACD
Tuy nhiên, nguyên tắc dấu hai chấm kép chỉ có thể được sử dụng một lần trong địa chỉ. Ví dụ 0:0:0:BA98:7654:0:0:0 có thể được viết thành ::BA98L7654:0:0:0 hoặc
0:0:0:BA98:7654:: nhưng khơng thể viết là ::BA98:7654:: vì như vậy sẽ gây nhầm lẫn khi dịch ra địa chỉ đầy đủ.
Có một số địa chỉ IPv6 được hình thành bằng cách gắn 96 bit 0 vào trước địa chỉ IPv4. Như vậy, 6 nhóm số đầu của địa chỉ IPv6 sẽ được gán bằng 0, cịn 2 nhóm số cịn lại dài 32 bit được ghi theo kiểu địa chỉ IPv4.
Ví dụ: địa chỉ ::10.0.0.1
Ngồi ra, chúng ta cịn có thể viết địa chỉ IPv6 theo các tiền tố. Điều này có lợi trong việc định tuyến. Cụ thể, một địa chỉ IPv6 được theo sau bởi một dấu chéo và một số thập phân mô tả chiều dài các bit tiền tố.
Ví dụ: FEDC:BA98:7600::/40.
2.2.3 Phân loại địa chỉ IPv6
Địa chỉ IPv4 được chia thành 5 lớp: A, B, C, D, E.Còn địa chỉ IPv6 lại chia thành 3 loại chính sau:
• Địa chỉ Unicast: Một địa chỉ Unicast nhận dạng một giao diện đơn. Một gói tin có địa chỉ Unicast sẽ được chuyển đến một giao diện cụ thể.
• Địa chỉ Multicast: Một địa chỉ multicast dùng để nhận dạng một nhóm các giáo diện (thường là những node khác nhau). Một gói tin có địa chỉ multicast sẽ được chuyển đến tất cả các giao diện có gán địa chỉ multicast.
• Địa chỉ Anycast: Cũng là địa chỉ dùng để nhận dạng một nhóm các giao diện. Những gói tin có địa chỉ Anycast sẽ được chuyển đến giao diện đơn gần nhất trong nhóm các giao diện mang địa chỉ Anycast này. Khái niệm gần nhất ở đây dựa trên khoảng cách gần nhất được xác định thông qua giao thức định tuyến. Địa chỉ anycast được sử dụng để thực hiện 1 chức năng nhất định.
Sự khác nhau giữa địa chỉ Multicast và địa chỉ Anycast ở đây là q trình chuyển gói dữ liệu. Các gói mang địa chỉ Multicast sẽ được chuyển đến tất cả các thành viên trong nhóm giao diện thay vì chỉ gửi đến một giao diện gần nhất như trong Anycast. Trong IPv6, khơng có loại địa chỉ broadcast như trong IPv4, vì chức năng của loại địa chỉ này được bao gồm trong nhóm địa chỉ multicast.
Tất cả các loại địa chỉ IPv6 được gán cho các giao diện, không gán cho các node.Một node được nhận dạng bởi bất kỳ địa chỉ unicast nào được gán cho giao diện của node đó.
2.2.3.1 Địa chỉ Unicast
Unicast được dùng để định dạng cho các giao diện trên mạng. Nó giống như kiểu địa chỉ point-to-point trong IPv4. Một gói có địa chỉ đích là địa chỉ unicast sẽ được
chuyển tới giao diện được định dạng bởi địa chỉ đó. Địa chỉ unicast có thể được phân loại như sau:
• Địa chỉ Aggregatable global
• Địa chỉ link-local
• Địa chỉ site-local
• Địa chỉ đặc biệt
• Địa chỉ tương thích
• Địa chỉ NSAP
- Địa chỉ Aggregatable global unicast (phạm vi toàn cầu): Dạng địa chỉ này được sử dụng để hỗ trợ các nhà cung cấp dịch vụ (ISP) có nhu cầu kết nối Internet tồn cầu. Loại địa chỉ này được xây dựng theo kiến trúc phân cấp rõ ràng, cụ thể như sau:
3 bit 13 bits 8 bits 24 bits 16 bits 64 bits
FP TLA ID RES NLA ID SLA ID Interface ID
Hình 2.2 Cấu trúc địa chỉ aggreatable global unicast
• FP = 001 (Format Prefix): tiền tố định dạng đối với địa chỉ lọai này
• TLA ID (Top Level Aggregation Identification): Trường này có kích thước là 13 bit. TLA ID định danh mức cao nhất trong phân cấp địa chỉ, tức là nó