Cấu trúc Header chung

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 30 - 65)

Học viên : Lê Tuấn Hưng Lớp CK09B + Header length; + Indentification; + Flag; + Fragment offset; + Header checksum.

- Header length: đƣợc gỡ bỏ vì Header của IPv6 có chiều dài cố định là 40 bytes. Với IPv4, chiều dài tối thiểu của Header là 20 bytes nhƣng khi các option đƣợc thêm vào thì chiều dài của Header có thể tăng tới 60 bytes nên thông tin chiều dài của Header là rất quan trọng.

- Indentification, flag, fragment offset: các trƣờng này điều khiển việc phân đoạn các packet trong Header của IPv4. Việc phân đoạn xảy ra khi muốn giửi đi các gói có kích thƣớc lớn qua mạng mà chỉ hỗ trợ các gói có kích thƣớc nhỏ hơn. Trong trƣờng hợp này các router IPv4 sẽ chia packet thành các slice nhỏ hơn và chuyển tiếp nhiều gói. Host đích sẽ tập hợp và sắp sếp chúng lại. Nếu một gói bị lỗi hoặc mất toàn bộ quá trình truyền dẫn sẽ thực hiện lại, đây chính là điểm không hiệu quả. IPv6, các host sẽ học kích thƣớc của path MTU (maximum transmission unit) thông qua thủ tục gọi là Path MTU Discovery. Nếu các host giửi muốn phân đoạn packet thì nó sẽ sử dụng mào đâu mở rộng để thực hiện việc đó chứ không phải là các router IPv6. Do đó các trƣờng này đƣợc gỡ bỏ khỏi Header IPv6 mà chèn vào Header mở rộng nếu cần.

- Header checksum: đƣợc gỡ bỏ để cải thiện tốc độ xử lý.

Trƣờng type of service đƣợc thay thế bằng trƣờng TrafficClass. Các trƣờng time to live (TTL), protocol type đƣợc đổi tên. Còn trƣờng Flow label đƣợc thêm vào [18, 19]

2.2.3 Các trường trong IPv6 header

Header của IPv6 có 40 octet ( hay độ lớn 40 byte) trái ngƣợc với 20 octet trong IPv4. Tuy nhiên IPv6 có một số lƣợng các trƣờng ít hơn, nên giảm đƣợc thời gian xử lý Header, tăng độ linh hoạt. Trƣờng địa chỉ lớn hơn 4 lần so với IPv4.

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

Hình 2.4. IPv4 herder và IPv6 herder

Không có Header checksum : Trƣờng checksum của IPv4 đƣợc bỏ đi vì các liên kết ngày nay nhanh hơn và có độ tin cậy cao hơn, vì vậy chỉ cần các Host tính chechsum còn Router thì khỏi cần. Ngoài ra Header checksum là một tham số sử dụng để kiểm tra lỗi trong thông tin header, đƣợc tính toán ra dựa trên những con số của header. Tuy nhiên, có một vấn đề nảy sinh là header chứa trƣờng TTL (Time to Live), giá trị thƣờng này thay đổi mỗi khi gói tin đƣợc truyền qua 1 router. Do vậy, header checksum cần phải đƣợc tính toán lại mỗi khi gói tin đi qua 1 router. Nếu giải phóng router khỏi công việc này, chúng ta có thể giảm đƣợc trể.

Không có sự phân đoạn theo từng hop. Trong IPv4, khi các packet quá lớn thì router có thể phân đoạn nó. Tuy nhiên, việc này sẽ làm tăng thêm Overhead cho packet. Trong IPv6 chỉ có Host nguồn mới có thể phân đoạn một packet theo các giá trị thích hợp dựa vào một MTU path mà nó tìm đƣợc. Do đó, để hỗ trợ Host thì IPv6 chứa một hàm giúp tìm ra MTU từ nguồn đến đích.

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

Hinh 2.5. Chi tiết IPv6 Header .

Các trƣờng có trong IPv6 Header :

● Version : trƣờng chứa 4 bít 0110 ứng với số 6 chỉ phiên bản của IP.

● Tafic Class : Trƣờng 8 bit tƣơng ứng với trƣờng Type of Service (ToS) trong IPv4 .Trƣờng này đƣợc sử dụng để biểu diễn mức ƣu tiên của gói tin.

● Flow Label : Trƣờng hoàn toàn mới trong IPv6, có 20 bit chiều dài. Trƣờng này biểu diễn luồng cho gói tin và đƣợc sử dụng trong các kỷ thuật chuyền mạch đa lớp (multilayer switching) nhờ đó các gói tin đƣợc chuyển mạch nhanh hơn trƣớc. Bằng các sử dụng trƣờng này, nơi gửi gói tin hoặc thiết bị hiện thời có thể xác định một chuỗi các gói tin, ví dụ VoIP, Thành một dòng và yêu cầu dịch vụ cụ thể cho dòng đó. Ngay cả trong IPv4, một số các thiết bị giao tiếp cũng đƣợc trang bị khả năng nhận dạng dọng lƣu lƣợng và gắn mức ƣu tiên nhất định cho mỗi dòng. Tuy nhiên, những thiết bị này không những kiểm tra thông tin tầng IP ví dụ địa chỉ nơi gửi và nơi nhận, mà còn phải kiểm tra cả số port là thông tin thuộc về tầng cao hơn. Trƣờng Flow Label trong IPv6 cố gắng đặt tất cả những thông tin cần thiết vào cùng nhau và cung cấp chúng tại tầng IP.

● Payload Length : Trƣờng 16 bit, tƣơng tự trƣờng Toal Length trong IPv4, xác định tổng kích thƣớc của gói tin IPv6 (không chứa header) .

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

● Next Header : Trƣờng 8 bit. Trƣờng này sẽ xác định xem extension header có tồn tại hay không, nếu không đƣợc sử dụng, Header cơ bản chứa mọi thông tin tầng IP. Nó sẽ đƣợc theo sau bởi header của tầng cao hơn, tức là header của TCP hay UDP và trƣờng Next Header chỉ ra loại header nào sẽ theo sau.

● Hop Limit : Trƣờng 8 bit, trƣờng này tƣơng tự trƣờng Time to live của IPv4. Nó có tác dụng chỉ ra số hop tối đa mà gói tin IP đƣợc đi qua. Qua mỗi hop hay router, giá trị của trƣờng sẽ giảm đi 1.

● Source Address : Trƣờng này gồm 16 octet (hay 128 bit), định danh địa chỉ nguồn gói tin.

● Destination Address : Trƣờng này gồm 16 octet (hay 128 bit), định danh địa chỉ đích của gói tin.

Ngoài ra IPv6 Header còn có thêm Extension Headers, là phần Header mở rộng. IPv6 ứng dụng một hệ thống tách biệt các dịch vụ gia tăng khỏi các dịch vụ cơ bản và đặt chúng trong header mở rộng (Extension Headers).

2.3 Vấn đề định tuyến và kỷ thuật chuyển đổi Tunel trong IPv6.

Định tuyến là quá trình chuyển tiếp các gói tin từ một mạng này sang mạng khác.Router lấy địa chỉ IP từ giao diện (interface) yêu cầu giửi gói tin.

Sau khi nhận gói tin từ một interface nó sẽ quyết định đẩy gói tin ra interface tƣơng ứng để chuyển tiếp.

Để xác định chính xác hƣớng đi Router phải thực hiên 3 bƣớc:

Router xác định xem lƣu lƣợng nhận hoặc giửi chạy giao thức lớp mạng nào: IP, IPX, hay AppleTalk.

Tiếp đến sẽ kiểm tra xem địa chỉ mạng đích có trong bảng định tuyến hay không. Nếu không tìm thấy đƣờng đến mạng đích đó trong bảng định tuyến và Router không đƣợc cấu hình default route, Router sẽ hủy packet đó và giửi một gói ICMP network unreachable về host nguồn đã giửi gói tin đi. Nếu tìm thấy trong bảng định tuyến tuyến đƣờng tới mạng đích Router sẽ đƣa gói tin ra interface tƣơng ứng. Router sẽ đẩy gói tin đó ra bộ đệm của interface đó.

Học viên : Lê Tuấn Hưng Lớp CK09B (adsbygoogle = window.adsbygoogle || []).push({});

Tiếp theo kiểu đóng gói ở khung lớp 2 của giao diện đó. Nếu là Ethernet thì chạy ARP để lấy địa chỉ lớp 2 là MAC. Sau đó khung sẽ đƣợc đƣa xuống lớp vật lý và chuyển tiếp thông tin đến chặng tiếp theo.

Gói tin sẽ tiếp tục đƣợc xử lý cho đến chặng cuối cùng.

Các giao thức định tuyến phải đạt đƣợc các yêu cầu đồng thời sau: - Khám phá động một topo mạng;

- Xây dựng các đƣờng ngắn nhất;

- Kiểm soát tóm tắt thông tin về các mạng bên ngoài, có thể sử dụng metric khác nhau trong mạng cục bộ;

- Phản ứng nhanh với sự thay đổi topo mạng và cập nhật các cây đƣờng đi ngắn nhất;

- Làm tất cả các điều kiện trên theo định kỳ thời gian [1,2,20-23].

* Bảng định tuyến.

Bảng định tuyến trong IPv6 lƣu trữ toàn bộ các thông tin về các node đang chạy các giao thức IPv6, các thông tin về tiền tố mạng (Network Prefix) và phƣơng thức để các gói tin đến đƣợc đích. Trƣớc khi bảng định tuyến IPv6 đƣợc kiểm tra thì bộ nhớ đệm đích sẽ đƣợc kiểm tra trƣớc để tìm ra một mục mà khớp với địa chỉ đích trong gói tin IPv6 đang đƣợc chuyển đi. Nếu không tìm thấy một mục nào thỏa mãn thì lúc này bảng định tuyến mới đƣợc sử dụng để xác định.

Giao diện mạng nào đƣợc sử dụng để chuyển gói tin đi (Next-Hop Interface) : Là một địa chỉ vật lý hoặc lô-gic dùng để chuyển gói tin tới đích hoặc Next-Hop Router. Địa chỉ của Next-Hop sẽ chuyển gói tin đi: Với những đích nằm trên cùng một liên kết cục bộ thì địa chỉ Next-Hop chính là địa chỉ đích của gói tin. Với những đích không nằm cùng mạng thì địa chỉ Next-Hop chính là địa chỉ của một Router.

Sauk hi Interface và địa chỉ của next hop đƣợc xác định thì node sẽ cập nhật bộ nhớ đệm đích. Các gói tin tiếp theo sẽ đƣợc truyền tới đích đó sẽ đƣợc sử dụng bộ nhớ đệm này mà không cần kiểm tra bảng định tuyến.

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

Bảng định tuyến của mỗi giao thức định tuyến là khác nhau, nhƣng có thể bao gồm những thông tin sau:

Địa chỉ đích của mạng, mạng con hoặc hệ thống. Địa chỉ IP của Router chặng kế tiếp phải đến.

Giao tiếp vật lý phải sử dụng để đi đến Router kế tiếp. Mặt nạ mạng của địa chỉ đích.

AD và Metric: là các con số chỉ mức độ ƣu tiên tuyến đƣờng đến đích. Khoảng cách đến đích (VD: Số lƣợng chặng để đến đích).

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

VD: bảng định tuyến trên một máy PC chạy Windows để xem bảng định tuyến IPv6 của máy cài Win 7,ta sử dụng lệnh “Netsh interface ipv6 show routeHình 2.6. Bảng định tuyến * Xây dựng bảng định tuyến. Các tuyến đƣờng có thể đƣợc học theo 2 cách: Định tuyến tĩnh. Định tuyến động.

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

* Các giao thức định tuyến.

Có hai giao thức định tuyến cơ bản. Giao thức định tuyến RIPng. Giao thức định tuyến OSPFv3.

2.3.1. Kỹ thuật chuyển đổi tunnel trong IPv6. 2.3.1.1. Tổng quan về cơ chế chuyển đổi. 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ụ. (adsbygoogle = window.adsbygoogle || []).push({});

- 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:

+ 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.

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 30 - 65)