Kỹ thuật chuyển đổi tunnel trong IPv6

Một phần của tài liệu Nghiên cứu và mô phỏng kỹ thuật định tuyến trong mạng IPV6 (Trang 37 - 65)

2.3.1.1. Tổng quan về cơ chế chuyển đổi.

Hiện nay số lƣợng mạng IPv4 là rất lớn, hầu hết các dịch vụ, các giao dịch trên mạng đều dựa vào IPv4. Do đó có các cơ chế cho phép chuyển đổi qua lại giữa các host IPv4 và IPv6. Việc xây dựng lại giao thức lớp Internet trong chồng giao thức ICP/TP dẫn đến nhiều thay đổi. Trong đó vấn đề thay đổi lớn nhất là việc thay đổi cấu trúc địa chỉ. Sự thay đổi đó ảnh hƣởng đến các vấn đề sau:

- Ảnh hƣởng đến hoạt động của các lớp trên (lớp giao thức vận và lớp ứng dụng trong mô hình OSI).

- Ảnh hƣởng đến các giao thức định tuyến. Mặc khác, một yêu cầu quan trọng trong việc triển khai IPv6 là phải thực hiện đƣợc mục tiêu ban đầu đề ra khi thiết kế giao thức IPv6. Đó là IPv6 phải làm việc đƣợc trong môi trƣờng IPv4. Trong một số tình huống sẽ có hiện tƣợng một số host sử dụng giao thức IPv6 và cũng có những host chỉ sử dụng giao thức IPv4. Vấn đề ở đây là phải đảm bảo những host “thuần IPv6” phải giao tiếp đƣợc với các host “thuần IPv4” mà vẫn đảm bảo địa chỉ IPv4 đó thống nhất trên toàn cầu. Do vậy nhằm tạo khả năng tƣơng thích giữa IPv4 và IPv6, các nhà nghiên cứu đã phát triển một số cơ chế chuyển đổi khác nhau.

Đặc điểm chung của các cơ chế chuyển đổi này là:

- Đảm bảo các Host/Router cài đặt IPv6 có thể làm việc đƣợc với nhau trên nền IPv4.

- Hỗ trợ khả năng triển khai các Host và Router hoạt động trên nền IPv6 với mục tiêu thay thế dần các host đang hoạt động trên nền IPv4.

Học viên : Lê Tuấn Hưng Lớp CK09B

-Có một phƣơng thức chuyển đổi dễ dàng, thực hiện ở các cấp độ khác nhau từ phía ngƣời dùng cuối tới ngƣời quản trị hệ thống, các nhà quản trị mạng và cung cấp dịch vụ.

- Các cơ chế này là một tập hợp các giao thức thực hiện đối với Host và Router, kèm theo các phƣơng thức nhƣ gán địa chỉ và triển khai, thiết kế để làm quá trình chuyển đổi Internet sang IPv6 làm việc với độ rủi ro thấp nhất. Hiện nay các nhà nghiên cứu IPv6 đã đƣa ra những cơ chế chuyển đổi cho phép kết nối IPv6 trên nền IPv4. Sau đây là một số cơ chế tiêu biểu:

- Dual IP Layer: Cơ chế này đảm bảo một Host/Router đƣợc cài cả hai giao thức (trong trƣờng hợp này gọi là Dual stack) IPv4 và IPv6 ở Internet layer trong mô hình phân lớp TCP/IP.

Hình 2.7. Mô hình Dual stack

-IPv6 Tunneling over IPV4: Cơ chế này thực hiện đóng gói tin IPv6 vào một gói theo chuẩn giao thức IPV4 để có thể chuyển gói tin qua mạng IPv4 thuần túy. Trong trƣờng hợp này mạng xem nhƣ đó là một gói tin IPv4 bình thƣờng. Theo nhƣ hƣớng dẫn trong khuyến nghị RFC 1933, IETF đã giới thiệu hai phƣơng pháp để tạo

Học viên : Lê Tuấn Hưng Lớp CK09B

đƣờng hầm cho các site IPv6 kết nối với nhau qua hạ tầng IPv4: Automatic Tunneling và Configured Tunneling.

-Ngoài ra ngƣời ta còn sử dụng NAT-PT cho phép các Host/Router dùng IPv4 thuần túy và các Host/Router dùng IPv6 thuần túy có thể kết nối làm việc với nhau trong quá trình chuyển đổi lên IPv6. Dùng NAT-PT ta có thể ánh xạ qua lại giữa địa chỉ IPv6 và IPv4.

H ình 2.8. Công nghệ NAT-PT

Chìa khóa thành công của IPv6 không chỉ nằm trong chức năng của nó mà còn nằm trong khả năng chuyển đổi các hệ thống mạng hiện tại sang một giao thức mới .Điều này đòi hỏi nhiều thứ, bao gồm địa chỉ mới, cài đặt giao thức mới, các ứng dụng có thể giao tiếp với giao thức mới [9, 15]

2.3.1.2. Kỹ thuật Tunneling.

* Đặc điểm chung.

Cơ sở hạ tầng Web hoạt động trên nền IPv4, hoạt động khá ổn định và quy mô hết sức rộng lớn. Tận dụng khả năng này các nhà thiết kế IPv6 đã đƣa ra giải pháp thực hiện cơ chế Tunneling nhƣ sau: Automatic Tunneling và Configured Tunneling. Sau đây là một số đặc điểm của các loại Tunneling và một số khái niệm liên quan đến các kỹ thuật Tunneling.

Học viên : Lê Tuấn Hưng Lớp CK09B

+ IPv4-only Node: Là một Host hay Router hoạt động trên nền IPv4, những Host hoặc Router này không hiểu IPv6, các Host này chiểm phần lớn các thiết bị trên mạng Internet hiện nay. Các Node này còn đƣợc gọi là các Node thuần IPv4.

+ IPv6/IPv4 Node: Là các Node có khả năng thực hiện trên nền IPv4 hoặc IPv6. Đây chính là các Dual-Stack Node.

+ IPv6-only Node: Là những Node chỉ có khả năng hoạt động trên nền IPv6 mà không có khả năng hoạt động trên nền IPv4. Các Node này đƣợc gọi là Node thuần IPv6.

+ IPv6 Node: Bao gồm những Node sau: Node thuần IPv6, Dual-Stack Node IPV6/IPv4.

+ IPV4 Node: Bao gồm những Node sau: Node thuần IPv4, Dual-Stack Node IPv6/IPv4.

+ IPv4-compatible IPv6 address: Là một địa chỉ IPv6, đƣợc gán cho các Node đôi IPv6/IPv4 (định dạng địa chỉ này đã mô tả ở phần trên). Dạng địa chỉ này đƣợc sử dụng trong cơ chế Tunnel IPv6 trên nền IPv4 sẽ đƣợc mô tả ở dƣới đây.

+ IPv6-only address: Là những địa chỉ IPv6 còn lại.

+ IPv6-over-IPv4 Tunneling: Kỹ thuật này thực hiện đóng gói các Datagram theo cấu trúc IPv6 vào dữ liệu của Datagram IPv4 để có thể mang gói tin IPv6 qua mạng IPv4. Ta gọi cơ chế này là Tunnel IPv6 trên nền IPv4.

Có hai phƣơng thức Tunnel nhƣ đã nói đến ở trên: Automatic Tunneling và Configured Tunneling đƣợc định nghĩa nhƣ sau: (adsbygoogle = window.adsbygoogle || []).push({});

+ Automatic Tunneling: Theo phƣơng thức này, địa chỉ cuối cùng trong Tunnel là địa chỉ IPv4-compatible IPv6.

+ Configured Tunneling: Theo phƣơng thức này, địa chỉ cuối cùng trong Tunnel đƣợc xác định nhờ thông tin cấu hình tại các nút thực hiện đóng, mở gói IPv6 thành gói IPv4 và ngƣợc lại.

Cơ chế Tunneling đƣợc mô tả nhƣ sau: Các Node IPv6/IPv4 sẽ thực hiện đóng gói các Datagram IPv6 vào thành phần dữ liệu trong Datagram IPv4 (phần tải

Học viên : Lê Tuấn Hưng Lớp CK09B

của gói tin IPv4 truyền trên hạ tầng mạng là gói tin IPv6) và do đó , gói tin này có thể truyền qua trên nền IPv4 [5].

Cơ chế đóng gói khi thực hiện Tunneling IPv6-over-IPv4.

Hình 2.9. Cơ chế đóng gói khi thực hiện Tunneling

Cấu trúc phần Header packet IPv4 khi thực hiện Tunneling đóng gói IPv6 packet trong một Datagram IPv4 nhƣ sau:

Bảng 2.1 Cấu trúc vùng header của IPv4 khi thực hiện Tunneling Cơ chế mở gói khi thực hiện Tunneling IPv6-over-IPv4

Tham số Giá trị (Bít) Ý nghĩa

Version 4 Giao thức sử dụng là IPv4

IP header length 5 (chiều dài tối đa của trƣờng này là 24 bits). Đối với các gói tin IPv4 đóng gói không đặt giá trị cho phần mở rộng trong header.

Type of Service 0

Total Length 60 bytes Xác định độ lớn gồm chiều dài phần header IPv6 + chiều dài IPv4 header

Identification Giá trị đƣợc xác định thống nhất

cho bất kỳ gói tin IPv4 đƣợc chuyển tới hệ thống

Flags DF hoặc MF

Time to live

Học viên : Lê Tuấn Hưng Lớp CK09B

trong gói tin IPv6 đóng gói

Header Checksum Giá trị tổng các bytes của phần

header IPv4 để kiểm tra tính toàn vẹn dữ liệu khi nhận ở địa chỉ đích

Source Address IPv4 address Địa chỉ IPv4 của trạm nguồn Destination Address IPv4 address Địa chỉ IPv4 của trạm đích

.

Hình 2.10. Cơ chế mở gói khi kết thúc Tunneling

Khi một Host hay Router cuối đƣờng hầm nhận đƣợc một Datagram IPv4 có kiểu giao thức là 41, nó sẽ tách bỏ phần Header IPv4 trong gói tin và giữ lại phần Data (chính là một gói IPv6 hoàn chỉnh).

* Lựa chọn giá trị MTU và phân đoạn.

Giá trị giới hạn kích thƣớc gói tin trong tầng Datalink của giao thức TCP/IP gọi là MTU (Maximum Transfer Unit). Đối với mỗi giao thức trên tang Datalink khác nhau có một giá trị MTU khác nhau (Ví dụ MTU của Ethernet là 1518 octet). Do có nhiều phƣơng thức khác nhau đối với luồng Traffic trong mạng Internet nên sẽ xảy ra hiện tƣợng các giá trị MTU tại điểm Gateway nhỏ nhơn giá trị MTU của các mạng bên trong. Do đó sẽ xảy ra hiện tƣợng phân đoạn tại các điểm gateway này. Sau đó quá trình tái hợp sẽ đƣợc thực hiện ở các điểm đích.

Học viên : Lê Tuấn Hưng Lớp CK09B

Đƣờng hầm IPv6-over-IPv4 đƣợc xác định nhƣ là một chặng đƣờng đơn (singlehop). Do đó, Hop Limit của IPv6 sẽ giảm đi 1 khi gói tin IPv6 di chuyển qua đƣờng hầm. Mô hình single-hop ẩn đi sự tồn tại của đƣờng hầm đối với ngƣời dùng và không bị phát hiện bởi các công cụ chuẩn đoán mạng, ví dụ nhƣ tracerouter. Nói cách khác, đƣờng hầm là trong suốt (transparent) đối với Network Layer. Mô hình single-hop đƣợc thực hiện bằng cách các Node đóng gói và mở gói xử lý trƣờng “Hop Limit” của IPv6 nhƣ chúng đã từng làm bình thƣờng. (adsbygoogle = window.adsbygoogle || []).push({});

* Nắm bắt lỗi có nguồn gốc từ IPv4 ICMP.

Node thực hiện đóng gói các bản tin IPv4 (Các Node đầu Tunnel hay còn gọi là Encapsulation Node) có thể nhận các bản tin IPv4 ICMP báo lỗi từ các router trung gian trong hạ tầng IPv4, các router mà Tunnel đi qua. Các Node này nhận đƣợc IPv4 ICMP vì nó đƣợc xem nhƣ nguồn của các gói tin IPv4. IPv4 Path MTU Discovery xử lý các bản tin ICMP “Packet Too Big” và ghi nhận kết quả về Path MTU ở IP layer. Ngoài ra còn xử lý những lỗi khác. Cách mà Encapsulation Node xử lý các bản tin tùy thuộc vào lƣợng thông tin trong “Packet Error” field của các bản tin. Nhiều router IPv4 cũ chỉ trả về 8 byte dữ liệu theo sau IPv4 Header của gói tin bị lỗi. Thông tin này không đủ để chứa trƣờng địa chỉ trong IPv6 Header. Nhiều router IPv4 hiện đại hơn trả về nhiều dữ liệu lỗi hơn, bao gồm toàn bộ IPv6 Header, thậm chí cả dữ liệu của gói tin IPv6. Nếu gói tin lỗi chƣa đủ dữ liệu, Node đóng gói có thể lấy lại gói tin IPv6 đã đóng gói và sử dụng nó để phát sinh ra một bản tin ICMv6 trở về Node IPv6 ban đầu.

* Cơ chế tự động cấu hình Tunneling.

Cũng nhƣ Manual Tunneling, Automatic Tunneling cũng đƣợc dùng thiết lập kết nối giữa các site IPv6. Tuy nhiên, điểm khác biệt của loại này là: Các kết nối tạo bởi Automatic Tunneling không phải là Point-to-point mà là Point-to-multipoint. Đối với loại hình Tunneling này, các Router biên không phải cấu hinh từng đôi một. Automatic Tunneling xem hạ tầng mạng IPv4 nhƣ một môi trƣờng ảo gồm các kết nối Non-Broadcast-Muti-Access (NBMA).

Học viên : Lê Tuấn Hưng Lớp CK09B

Khi các site IPv6 có nhu cầu truyền thông với nhau qua Automatic Tunneling, các gói IPv6 đƣợc đóng gói trong các gói IPv4 có thể dùng địa chỉ IPv4- embeded-IPv6, hoặc địa chỉ IPv4-compatible để xác định đầu ra của Tunnel, dạng địa chỉ này đã đƣợc trình bày ở phần trên.

Khi dùng địa chỉ IPv4-embeded-IPv6 hoặc địa chỉ IPv4-compatible, vị trí đầu kia của Tunnel đƣợc xác định dựa vào địa chỉ IPv4 tách ra đƣợc từ các loại địa chỉ IPv4-embeded-IPv6 (hoặc IPv4-compatible) mang trong IPv6 Header.

* Cơ chế cấu hình Manualy Tunneling.

Mamualy Tunneling thƣờng đƣợc dùng để thiết lập các kết nối thƣờng trực giữa các site IPv6 thông qua IPv4 Backbone. Các kết nối loại này thông dụng khi có yêu cầu thiết lập các kết nối an toàn (Secure connection) giữa các router biên, hoặc giữa End System với Router biên, qua đó các site IPv6 truyền thông với nhau. Các kết nối này đƣợc xem nhƣ Point-to-point. Địa chỉ IPv6 đƣợc gán cố định cho các Tunnel interface, địa chỉ IPv4 đƣợc gán cho hai đầu Tunnel. Trong mô hình ứng dụng loại Tunnel này: hạ tầng mạng IPv4 có thể sử dụng các Router IPv4 thuần, các biên mạng bắt buộc phải dùng Dual-Stack Router.

Địa chỉ IPv4 và IPv6 gán cho Tunnel là độc lập với nhau. Do đó, về nguyên tắc, có thể sử dụng bất kỳ địa chỉ IPv4 và địa chỉ IPv6 nào hợp lệ [14, 20].

2.4. Kết luận.

Thông qua Chƣơng II ta đã biết đƣợc thêm về cấu trúc, đặc điểm gói tin IPv6, các dạng giao thức định tuyến điển hình và một số cơ chế cũng nhƣ kỹ thuật chuyển đổi tunnel trong IPv6 và để khái quát hơn chúng ta sẽ tiến hành mô phỏng và chuyển đổi giữa hai mạng Ipv4 và IPv6 bằng phần mềm mô phỏng mạng GNS3 ở Chƣơng III sau đây.

Học viên : Lê Tuấn Hưng Lớp CK09B

CHƢƠNG III . MÔ PHỎNG CÁC KỸ THUẬT CHUYỂN ĐỔI TUNNEL TRONG IPv6.

3.1. Lựa chọn công cụ (GNS3).

Phần mềm thực hiện mô phỏng mạng GNS3 (Graphical Network Simulator).

3.1.1 Một số phần mềm mô phỏng mạng phổ biến.

Là kỹ thuật có ích cho việc nghiên cứu hoạt động mạng: mô hình hoá chính xác các ứng dụng, các công nghệ mạng, dự đoán hiệu năng mạng, kiểm tra kiến trúc phần cứng, mô phỏng lƣu lƣợng mạng.

Sau đây là một số phần mềm mô phỏng mạng phổ biến : OPNET (Optimized Network Engineering Tools), GloMoSim/QuaNet, OMNeT++, NS – 2, Packet Tracer, GNS3.

Bảng 3.1 So sánh định tính của OPNET, QuaINet, OMNeT++ và NS- 2,GNS3

Đặc điểm của các chƣơng trình mô phỏng mạng

OPNET QuaINet OMNeT++ NS-2 GNS3

Các kiểu mô phỏng đƣợc hỗ trợ Sự kiện rời rạc Sự kiện rời rạc Sự kiện rời rạc Sự kiện rời rạc Sự kiện rời rạc Nền tảng tính toán Song song/phân tán Song song/phân tán

Song song Phân tán Phân tán

Các topo Cấu trúc phân cấp Cấu trúc phân cấp Cấu trúc phân cấp Cấu trúc thống nhất Cấu trúc thống nhất Công cụ định nghĩa các topo

Đồ họa Đồ họa Đồ họa Kịch bản cấu hình

Kịch bản cấu hình Bộ sinh dữ liệu lƣu

lƣợng

Có Có Có Có Có

Qúa trình tạo lƣu lƣợng (adsbygoogle = window.adsbygoogle || []).push({});

Có Có Có Có Có

Hỗ trợ giám sát Đồ họa Đồ họa Đồ họa Đồ họa Đồ họa Các modul dành cho

các tầng trong mô hình OSI

Học viên : Lê Tuấn Hưng Lớp CK09B

Tính linh hoạt của các mô hình Có Có Có Có Có Mô hình dành cho sự truyền sóng Có Có Có Không Không Tính có thể sửa đổi và mở rộng Có Có Có Khó thay đổi Khó thay đổi Độ co giãn Có Hỗ trợ thay đổi tỉ lệ lớn Có Khó thay đổi Khó thay đổi Tính dễ sử dụng Khó với những ngƣời mới bắt đầu Bình thƣờng Bình thƣờng Khó với những ngƣời mới bắt đầu Dễ sự dụng

Thừa nhận của khoa học Đƣợc thừa nhận Đƣợc thừa nhận Đƣợc thừa nhận Đƣợc thừa nhận Đƣợc thừa nhận Loại giấy phép của

phần mềm

Thu phí Thu phí Miễn phí Miễn phí Miễn phí Sự dụng trên hệ điều hành Windows và Linux Windows và Linux Windows Windows và Linux Windows và Linux

Với những đặc điểm về sự miễn phí và dễ dàng sự dụng trong hệ điều hành Window, tôi đã lựa chọn GNS3 để tiến hành mô phỏng một số ví dụ về giao thức định tuyến trong mạng IP, cụ thể ở đây Tunneling sử dụng giao thức RIP

3.1.1. Giới thiệu việc mô phỏng mạng trên GNS3

GNS3 là một giả trình lập mạng có giao diện đồ họa (graphical network simulator) cho phép chúng ta dễ dàng thiết kế các mô hình mạng và sau đó chạy giả lập trên chúng.Tại thời điểm hiện tại GNS3 hỗ trợ các IOS của Router, ATM/Frame Relay/Ethernet switch và Hub.Và thậm chí chúng ta có thể mở rộng mạng của mình bằng cách kết nối vào mạng ảo này.

Để làm đƣợc điều này GNS3 đã dựa trên Dinamips và một phần của Dinagen, nó đƣợc phát triển bằng Phyton và thông qua PyQt và phần giao diện đồ

Học viên : Lê Tuấn Hưng Lớp CK09B

họa thì sử dụng thƣ viện Qt, GNS3 cũng sử dụng kỹ thuật SVG (Scalable Vector Graphics) để cung cấp các biểu tƣợng chất lƣợng cao cho việc thiết kế mô hình mạng.

Phần mềm mô phỏng mạng hiểu một cách đơn giản là phần mềm giúp ta có thể minh họa hoạt động của những hệ thống mạng thực tế thông qua những mô hình thu nhỏ.

Phần mềm mô phỏng mạng khá quan trọng đối với việc giảng dạy và học tập

Một phần của tài liệu Nghiên cứu và mô phỏng kỹ thuật định tuyến trong mạng IPV6 (Trang 37 - 65)