Trêng ®¹i häc vinh
Khoa C«ng NghÖ Th«ng tin
®å ¸n
tèt nghiÖp ®¹i häc
§Ò tµi:
Tổng quan về IPv6, cơ chế chuyển đổi IPv4 lên
IPv6 và triển khai một số dịch vụ mạng trên
nền của IPv6
Gi¸o viªn híng dÉn : ThS. Phan Anh Phong
Sinh viªn thùc hiÖn
: Vâ B¸ Thµnh
Líp
: 47K - CNTT
vinh - 05/ 2011
1
2
MỤC LỤC
Mục lục
..................................................................................................................1
Danh mục hình vẽ
..................................................................................................4
Lời cảm ơn.............................................................................................................7
Lời mở đầu
.............................................................................................................8
PHẦN I: TỔNG QUAN VỀ IPV6, CƠ CHẾ CHUYỂN ĐỔI
.........................9
Chương I: Tổng quan về IPv6
...........................................................................9
1.1 Giới thiệu chung về IPv6
.................................................................................9
1.2 Cấu trúc của địa chỉ IPv6
...............................................................................11
1.2.1 Unicast Address
...........................................................................................
11
1.2.2 Anycast Address
..........................................................................................13
1.2.3 Multicast Address
........................................................................................
13
1.3 Cấu trúc gói tin trong IPv6
.............................................................................14
1.3.1 Vùng nền tảng (Base Header)
.....................................................................15
1.3.2 So sánh giữa vùng Header của IPv4 và IPv6
..............................................19
1.3.3 Vùng Header mở rộng
.................................................................................20
1.3.3.1 Tùy chọn nhảy từng bước
.......................................................................21
1.3.3.2 Lộ trình nguồn
..........................................................................................23
1.3.3.3 Sự phân miếng
.........................................................................................25
1.3.3.4 Sự chứng thực
..........................................................................................25
1.3.3.5 Payload bảo mật mã hóa
..........................................................................27
1.3.3.6 Tùy chọn đích...........................................................................................
28
Chương II: Cơ chế chuyển đổi IPv4 lên IPv6
...............................................29
2.1 Các vấn đề chung
..........................................................................................29
3
2.2 Các phương thức chuyển đổi
.......................................................................30
2.2.1 Chồng hai giao thức (Dual Stack
................................................................
30
2.2.2 Đường hầm IPv6 qua IPv4 (Tunel)
............................................................31
2.2.2.1 Đ
ường hầm có cấu hình .
........................................................................
32
2.2.2.2 Đường hầm tự động
................................................................................33
2.2.3 6over4
...........................................................................................................34
2.2.4 6to4
...............................................................................................................35
2.2.5 Môi giới đường hầm (Tunnel Broker)
........................................................37
2.2.6 Dịch địa chỉ Dịch giao thức (SIIT và NAT PT)
......................................39
2.2.7 Một số cơ chế khác
.....................................................................................40
2.2.7.1 BIS
............................................................................................................40
2.2.7.2 BIA
............................................................................................................41
2.2.7.3 Cơ chế chuyển đổi hai giao thức (DSTM)
..............................................44
2.3 Mục đích của cơ chế chuyển đổi IPv4 lên IPv6
...........................................45
PHẦN II: TRIỂN KHAI MỘT SỐ DỊCH VỤ MẠNG
..................................47
Chương III: Triển khai DNS Server
...............................................................47
3.1 Giới thiệu về DNS Server
..............................................................................47
3.2 Chức năng và nguyên tắc hoạt động của DNS Server
.................................47
3.2.1 Chức năng
....................................................................................................47
3.2.2 Nguyên tắc hoạt động
.................................................................................48
3.3 Triển khai DNS Server trên nền IPv6............................................................
48
Chương IV: Triển khai DHCP Server
............................................................52
4.1 Giới thiệu DHCP Server
................................................................................52
4.2 Ưu điểm của DHCP
.......................................................................................52
4
4.3 Triển khai DHCP Server
................................................................................53
Chương V: Triển khai FTP Server
..................................................................55
5.1 Giới thiệu về FTP
..........................................................................................55
5.2 Mô hình hoạt động của FTP..........................................................................55
5.3 Triển khai FTP Server
....................................................................................56
5.3.1 Cấu hình và cài đặt FTP..............................................................................56
5.3.2 Kiểm tra hoạt động của FTP Server
..........................................................57
Chương VI: Triển khai WEB SERVER
.........................................................59
6.1 Giới thiệu về Web Server
..............................................................................59
6.2 Triển khai Web Server
...................................................................................59
PHẦN III: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
....................................61
TÀI LIỆU THAM KHẢO
..................................................................................62
5
DANH SÁCH HÌNH VẼ
Hình 1: C
ấu trúc địa chỉ của Link Local
...........................................................
11
Hình 2: C
ấu trúc địa chỉ của Site Local
...............................................................
11
Hình 3: C
ấu trúc địa chỉ IPX
................................................................................
12
Hình 4: C
ấu trúc địa chỉ IPv4 tương thích với IPv6
............................................
12
Hình 5: C
ấu trúc của địa chỉ IPv4 giả làm IPv6
..................................................
12
Hình 6: trúc đ
ịa chỉ đơn hướng trên mạng toàn cầu
...........................................
13
Hình 7: C
ấu trúc địa chỉ Anycast
.........................................................................
13
Hình 8: C
ấu trúc địa chỉ đa hướng
.......................................................................
14
Hình 9: C
ấu trúc địa chỉ MAC của mạng LAN
..................................................
14
Hình 10: Đ
ịnh dạng gói tin IPv6 (IPv6 Data Packet Format)
..............................
15
Hình 11: Đ
ịnh dạng của 1 đơn vị dữ liệu IPv6
...................................................
15
Hình 12: Nh
ững giá trị của vùng Header kế tiếp
................................................
16
Hình 13: D
ữ liệu điều khiển tắc nghẽn
.............................................................
17
Hình 14: Các quy
ền ưu tiên
.................................................................................
18
Hình 15: Đ
ịnh dạng vùng header mở rộng
..........................................................
20
Hình 16: Nh
ững loại vùng header mở rộng
........................................................
21
Hinh17: Đ
ịnh dạng vùng header tuỳ chnj nhảy từng bước
................................
21
Hình 18: Đ
ịnh dạng của những tuỳ chọn của vùng header
................................
22
Hình 19: Pad1
........................................................................................................
23
6
Hình 20: Jumbo Payload
.......................................................................................
23
Hình 21: L
ộ trình nguồn
.......................................................................................
24
Hình 22: Ví d
ụ lộ trình nguồn
.............................................................................
24
Hình 23: S
ự phân miếng
......................................................................................
25
Hình 24 : Sự chứng thực
......................................................................................
26
Hình 25 : Sự tính toán của sự chứng thực dữ liệu
.............................................
26
Hình 26 : Payload bảo mật mã hoá
......................................................................
27
Hình 27 : Sự mã hoá mode vận chuyển
...............................................................
28
Hình 28: Chồng hai giao thức
..............................................................................
30
Hình 29: Đường hầm IPv6 qua IPv4
...................................................................
31
Hình 30: Đường hầm có cấu hình
.......................................................................
33
Hình 31: Địa chỉ IPv6 tương thích địa chỉ IPv4
...................................................
33
Hình 32: 6over4
....................................................................................................
34
Hình 33: 6to4
.......................................................................................................
36
Hình 34: Cấu trúc địa chỉ 6to4
.............................................................................
36
Hình 35: Cơ chế hoạt động của 6to4
..................................................................
36
Hình 36: Môi trường đường hầm
........................................................................
38
Hình 37: NAT PT
................................................................................................
39
Hình 38: BIA
.........................................................................................................
41
Hình 39: Kiến trúc của dual stack host sử dụng BIA
........................................
42
Hình 40: Các cấu trúc và hàm API cơ bản
..........................................................
43
Hình 41: Cơ chế chuyển đổi hai giao thức (DSTM)
..........................................
44
Hình 42: Các danh mục trong DNS Server
..........................................................
49
Hình 43: Đặt tên cho Zone name
..........................................................................
49
Hình 44: File lưu trữ trong zone
...........................................................................
50
Hình 45: Đặt địa chỉ mạng NetID
........................................................................
50
7
Hình 46: Tạo file lưu trữ cho zone ngược
...........................................................
51
Hình 47: Thiết lập DNS server
............................................................................
51
Hình 48: Các danh mục quản lý trong DHCP
.....................................................
53
Hình 49: Đặt tên cho scope
..................................................................................
53
Hình 50: Scope Pefix
............................................................................................
54
Hình 51: Truyền tải dữ liệu và truyền lệnh của FTP........................................55
Hình 52: Mô hình hoạt động của FTP Server
.....................................................
56
Hình 53: Tạo mới Folder trong FTP....................................................................57
Hinh 54: Thiết lập thông số kết nối
....................................................................
57
Hình 55: Kiểm tra FTP tại máy server
.................................................................
58
Hình 56: Kiểm tra FTP tai máy client
..................................................................
58
Hình 57: Các danh mục trong Web server
...........................................................
60
Hình 58: Đặt tên mô tả cho site
...........................................................................
60
Hình 59: Đường dẫn đến nơi tạo site
.................................................................
61
Hình 60: Site được tạo từ Webserver
..................................................................
61
Hình 61: Kiểm tra hoạt động webserver tại máy client
......................................
62
8
LỜI CẢM ƠN
…….…….
Em xin chân thành cảm ơn ban chủ nhiệm khoa Công nghệ thông tin,
các thầy cô giáo, bạn bè đã động viên giúp đỡ em rất nhiều trong quá trình
hoàn thành đồ án này. Đặc biệt em xin bày tỏ lòng cảm ơn sâu sắc tới thầy
giáo hướng dẫn Th.s Phan Anh Phong về sự tận tình và tạo điều kiện thuận
lợi giúp đỡ hướng dẫn em rất nhiều từ những ý tưởng ban đầu cho đến lúc
hoàn thành đồ án tốt nghiệp này.
Do thời gian và sự hiểu biết còn hạn chế nên đồ án này không tránh
khỏi những thiếu sót, kính mong sự góp ý, chỉ dẫn của quý thầy cô và bạn bè
trong khoa Công nghệ thông tin để đồ án được hoàn thiện hơn và có những
kinh nghiệm thực tế để triển khai những đề tài trong tương lai.
Em xin chân thành cảm ơn!
9
Vinh,tháng 5/2011
Sinh viên
Võ Bá Thành
Lớp: 47k CNTT
LỜI MỞ ĐẦU
Sự phát triển của khoa học kĩ thuật trên thế giới đã đạt được những
thành tựu to lớn trên nhiều lĩnh vực khác nhau. Trong đó phải kể đến là sự
phát triển nhanh chóng của công nghệ chế tạo điện tử và vi điện tử đã tạo ra
được những thiết bị mạng, máy tính với khả năng xử lý ngày càng cao. Đi liền
với nó là sự phát triển rất nhanh của mạng Internet toàn cầu. Mạng Internet đã
tạo ra một môi trường hoạt động toàn cầu cho tất cả mọi người tham gia, gần
như xóa đi biên giới giữa các quốc gia, thu ngắn lại khoảng cách địa lý.
Một trong những vấn đề quan trọng mà kĩ thuật mạng trên thế giới
đang phải nghiên cứu giải quyết là đối mặt với sự phát triển với tốc độ quá
nhanh của mạng lưới Internet toàn cầu. Sự phát triển này cùng với sự tích hợp
dịch vụ, triển khai những dịch vụ mới, kết nối nhiều mạng với nhau, như
10
mạng di động với mạng Internet đã đặt ra vấn đề thiếu tài nguyên dùng chung.
Việc sử dụng hệ thống địa chỉ hiện tại cho mạng Internet là IPv4 sẽ không
thể đáp ứng nổi sự phát triển của mạng lưới Internet toàn cầu trong thời gian
sắp tới. Do đó nghiên cứu, triển khai ứng dụng một phương thức đánh địa chỉ
mới nhằm khắc phục hạn chế này là một yêu cầu cấp thiết.
Qua việc nghiên cứu , tìm tòi và được sự hướng dẫn tận tình của Thầy
ThS Phan Anh Phong đã giúp em xây dựng một đề tài “Tổng quan về IPv6,
cơ chế chuyển đổi IPv4 lên IPv6 và triển khai một số dịch vụ mạng trên
nền của IPv6” làm đồ án tốt nghiệp.
PHẦN I
TỔNG QUAN VỀ IPV6, CƠ CHẾ CHUYỂN ĐỔI IPV4 LÊN IPV6
….….
CHƯƠNG I
TỔNG QUAN VỀ IPV6
1.1 Giới thiệu chung về IPv6
IPv6 tên viết tắt của Internet Protocol version 6 là tập những đặc tả về
nâng cấp IP phiên bản 4( IPv4 ), nó còn được coi là giao thức Internet thế hệ
mới và được thiết kế để những gói thông tin được định dạng cho IPv4 hay
IPv6 đều có thể làm việc được. Những giới hạn về dung lượng địa chỉ và tốc
độ tìm đường thấp của IPv4 đã thúc đẩy việc phát triển IPv6, với dung lượng
128 bit và cách định địa chỉ đơn giản hơn, giao thức mới sẽ giải quyết phần
11
nào những vấn đề hạn chế trên. Các tính năng được tăng cường khác là mã
hóa 64 bit và tự động cấu hình được thiết kế sẵn của địa chỉ IP.
IPv4 đang được sử dụng hiện tại có 32 bít, không gian địa chỉ là 232 địa
chỉ, chia thành 4 Octet, mỗi Octet có 8 bit, tương đương 1 byte, các Octet tách
biệt nhau bằng dấu chấm (.) bao gồm có 5 lớp A, B, C, D, E và có 3 thành
phần chính là:
Class bits
Net ID
Host ID
Class bits: bít nhận dạng lớp
Net ID: địa chỉ của mạng
Host ID: địa chỉ của máy chủ.
Ví dụ về:
IPv4: có dạng địa chỉ là 192.168.10.1
IPv6: có dạng địa chỉ là 2001: f67: : 1984: 68af
Sự khác nhau đáng kể nhất giữa IPv4 và IPv6 là chiều dài của địa chỉ nguồn
và địa chỉ của chúng. Việc chuyển sang sử dụng IPv6 là do ngày càng thiếu về
số địa chỉ IP. Giao thức IPv6 này có một không gian địa chỉ lớn hơn so với giao
thức IPv4.
IPv6 có những đặc điểm sau:
Không gian địa chỉ lớn:
IPv6 có địa chỉ nguồn và đích dài 128 bít. Mặc dù 128 bít có thể tạo hơn
3,4*10 38 tổ hợp, không gian địa chỉ của IPv6 được thiết kế dự phòng đủ lớn
cho phép phân bổ địa chỉ và mạng con từ trục xương sống internet đến từng
mạng con trong một tổ chức. Các địa chỉ hiện đang phân bổ để sử dụng chỉ
chiếm một lượng nhỏ và vẫn còn thừa rất nhiều địa chỉ sẵn sàng cho sử dụng
trong tương lai. Với không gian địa chỉ lớn này, các kỹ thuật bảo tồn địa chỉ
như NAT sẽ không còn cần thiết nữa.
Địa chỉ phân cấp, hạ tầng định tuyến hiệu quả:
Các địa chỉ toàn cục của Ipv6 được thiết kế để tạo ra một hạ tầng định
tuyến hiệu qủa, phân cấp và có thể tổng quát hoá dựa trên sự phân cấp
thường thấy của các nhà cung cấp dịch vụ Internet (ISP) trên thực tế. Trên
mạng Internet dựa trên IPv6, các router mạng xương sống (backbone) có số
mục trong bảng định tuyến nhỏ hơn rất nhiều.
Khuôn dạng header đơn giản hoá:
12
Header của IPv6 được thiết kế để giảm chi phí đến mức tối thiểu. Điều
này đạt được bằng cách chuyển các trường không quan trọng và các trường
lựa chọn sang các header mở rộng được đặt phía sau của IPv6 header. Khuôn
dạng header mới của IPv6 tạo ra sự xử lý hiệu quả hơn tại các router.
Tự cấu hình địa chỉ:
Để đơn giản cho việc cấu hình các trạm, IPv6 hỗ trợ cả việc tự cấu
hình địa chỉ stateful như khả năng cấu hình server DHCP và tự cấu hình địa chỉ
stateless (không có server DHCP). Với tự cấu hình địa chỉ dạng stateless, các
trạm trong liên kết tự động cấu hình chúng với địa chỉ IPv6 của liên kết (địa
chỉ cục bộ liên kết) và với địa chỉ rút ra từ tiền tổ được quảng bá bởi router
cục bộ. Thậm trí nếu không có router, các trạm trên cùng một liên kết có thể
tự cấu hình chúng với các địa chỉ cục bộ liên kết và giao tiếp với nhau mà
không phải thiết lập cấu hình thủ công.
Khả năng xác thực và bảo mật an ninh:
Tích hợp sẵn trong thiết kế IPv6 giúp triển khai dễ dàng đảm bảo sự
tương tác lẫn nhau giữa các nút mạng.
Hỗ trợ tốt hơn về chất lượng dịch vụ QoS:
Lưu thông trên mạng được phân thành các luồng cho phép sử lý mức ưu
tiên khác nhau tại các router.
Hỗ trợ tôt hơn tính năng di động:
Khả năng di động MobileIP tận dụng được các ưu điểm của IPv6 so với
IPv4.
Khả năng mở rộng:
Thiết kế của IPv6 có dự phòng cho sự phát triển trong tương lai đồng thời
dễ dàng mở rộng khi có nhu cầu.
1.2 Cấu trúc của IPv6
Về cấu trúc của IPv6 thì gồm 3 loại chính sau đây:
1.2.1 Unicast Address:
Là địa chỉ đơn hướng, dùng để nhận dạng từng Node một ( Node – điểm
nút là tập hợp các thiết bị chuyển mạch nằm ở trung tâm như router ), cụ thể
là một gói số liệu được gửi tới một địa chỉ đơn hướng sẽ được chuyển tới
13
Node mang địa chỉ đơn hướng Unicast đó. Trong loại địa chỉ này có các kiểu
địa chỉ sau:
Local – use unicast address: Là địa chỉ đơn hướng dùng nội bộ, được
sử dụng cho một tổ chức có mạng máy tính riêng chưa nối với mạng Internet
toàn cầu hiện tại nhưng sẵn sàng nối được khi cần.
Địa chỉ này phân chia thành hai kiểu là: Link Local – nhận dạng đường kết
nối nội bộ và Site Local – nhận dạng trong phạm vi nội bộ (có thể có nhiều
nhóm Node – Subnet).
128 bít
10 bit 54 bit 64 bit
1111 1110 10
0000 0…0000
Interface ID
Hình 1: Cấu trúc địa chỉ của Link Local
10 bit 38 bit 16 bit 64 bit
1111 1101 1 0000 0…0 Subnet ID
Interface ID
Hình 2: Cấu trúc địa chỉ của Site Local
Các bit đầu tiên ( trong trường hợp này là 10 bit ) tương tự như các bit nhận
dạng lớp địa chỉ Class bit của IPv4 nhưng ở IPv6 Prefix dùng để phân biệt các
loại, các kiểu địa chỉ khác nhau trong IPv6. Cả hai trường hợp nêu trên thì
trường Interface ID dùng để nhận dạng thiết bị như Router và đều sử dụng
cùng tên miền.
IPX Address: Trao đổi các gói số liệu giữa các mạng, IPX được
chuyển qua IPv6 theo dạng sau:
7 bit 121 bit
0000 010
To be define
Hình 3: Cấu trúc địa chỉ IPX
14
IPv6 Address with embedded IPv4: Là địa chỉ IPv6 gắn kèm địa chỉ
IPv4, đây là một cấu trúc quan trọng trong bước chuyển đổi từ địa chỉ IPv4
sang địa chỉ IPv6 và có hai loại sau:
Kiểu địa chỉ “ IPv4 tương thích với IPv6 ”: những Node mang địa chỉ
IPv6 sử dụng kiểu địa chỉ này để tải địa chỉ IPv4 ở 32 bit sau như vậy mới kết
nối được với các Node mang địa chỉ IPv4.
80 bit 16 bit 32 bit
000…000
0000
IPv4 address
Hình 4: Cấu trúc địa chỉ IPv4 tương thích với IPv6
Kiểu địa chỉ “ IPv4 giả làm IPv6 ” còn gọi là cơ chế 6to4: Những
Node mang địa chỉ IPv4 sử dụng kiểu địa chỉ này để tương thích với IPv6 có
vậy mới kết nối được với các Node mang địa chỉ IPv6.
80 bit 16 bit 32 bit
000…000
FFFF
IPv4 address
Hình 5: Cấu trúc của địa chỉ IPv4 giả làm IPv6
Sự khác nhau của hai kiểu địa chỉ này là 16 bit của kiểu thứ nhất giá trị tất cả
các bit đều = 0, còn kiểu thứ hai giá trị tất cả các bit đều = 1( mã Hexal là
FFFF ).
Aggregate Global Unicast Address: Là địa chỉ đơn hướng trên mạng
toàn cầu. Kiểu địa chỉ này được thiết kế để cho cả ISP hiện tại và tương lai,
ISP trong tương lai có quy mô lớn hơn như là các Internet Carrier. Trường hợp
này được gọi là các trung tâm chuyển đổi ( Exchanges ) trên Internet, cung cấp
khả năng truy nhập và dịch vụ Internet cho cả khách hàng ( End use ) lẫn ISP.
Hiện tại một số công ty lớn ở Mỹ đã sử dụng quy mô này.
3 bit 13 bit 32 bit 16 bit 64 bit
FP
TLA ID
NLA ID
SLA ID
Interface ID
Hình 6: Cấu trúc địa chỉ đơn hướng trên mạng toàn cầu
Trong đó:
FT Format Prefix: nhận dạng kiểu địa chỉ
TLA ID Top Level Aggregate: Nhận dạng cấp cao nhất
NLA ID Next Level Aggregate: Nhận dạng cấp tiếp theo
15
SLA ID Site Level Aggregate: Nhận dạng cấp vùng
Interface ID: Nhận dạng Node.
1.2.2 Anycast Address
Là địa chỉ bất kỳ hướng nào, dùng để nhận dạng một “Tập hợp Node”
bao gồm nhiều Node khác nhau hợp thành, cụ thể là một gói số liệu được gửi
tới một địa chỉ bất kỳ hướng nào sẽ được chuyển tới một Node gần nhất
trong tập hợp Node mang địa chỉ Anycast đó.
Kiểu địa chỉ này cũng tương tự như Unicast nếu địa chỉ phân cho Node
thì đó là Unicast, cùng một địa chỉ đó phân cho một nhóm Node thì đó gọi là
Anycast. Vì địa chỉ Anycast dể phân cho một nhóm Node bao gồm nhiều Node
hợp thành một Subnet. Một gói số liệu gửi tới một địa chỉ Anycast sẽ được
chuyển tới một Node ( Router ) gần nhất trong Subnet mang địa chỉ đó.
N bit ( 128 n ) bit
Subnet Prefix
0000 00…000
Hình 7: Cấu trúc địa chỉ Anycast
1.2.3 Multicast Address:
Là địa chỉ đa hướng dùng để nhận dạng một tập hợp Node bao gồm
nhiều Node khác nhau hợp thành, cụ thể là một gói số liệu được gửi một địa
chỉ đa hướng sẽ được chuyển tới tất cả các Node trong tập Node mang địa chỉ
Multicast đó.
Địa chỉ đa hướng của IPv6 để nhận dạng một tập hợp Node hay một
nhóm Node. Từng Node một trong nhóm đều có cùng địa chỉ như nhau.
8 bit 4 bit 4 bit 112 bit
1111 1111
Flgs
Scop
Group ID
Hình 8: Cấu trúc địa chỉ đa hướng
8 bit Prefix đầu tiên để nhận dạng kiểu địa chỉ đa hướng, còn 4 bit tiếp (Flgs)
cho 4 cờ với giá trị là:
0 0 0 T
3 bit đầu tiên còn chưa dùng đến nên = 0, còn bit thứ 4 có giá trị = T.
Nếu T = 0 có nghĩa địa chỉ này đã được NIC phân cố định.
16
Nếu T = 1 có nghĩa đây chỉ là địa chỉ tạm thời.
Bốn bit tiếp theo Scop có giá trị thập phân từ 0 đến 15, tính theo dãy Hexal là
từ 0 đến F
Nếu giá trị của Scop = 1: cho Node Local
Nếu giá trị của Scop = 2: cho Link Local
Nếu giá trị của Scop = 5: cho Site Local
Nếu giá trị của Scop = 8: Organizition Local
Nếu giá trị của Scop = E: Global Scop Địa chỉ Internet toàn cầu.
Các giá trị bit còn lại đều đang dự phòng.
Chẳng hạn như: Các mạng LAN đang dùng theo chuẩn IEEE 802 MAC
( Media Access Control ) khi dùng IPv6 kiểu đa hướng sẽ sử dụng 32 bit cuối
trong tổng số 112 bit dành cho nhận dạng nhóm Node ( Group ID ) để tạo ra
địa chỉ MAC, 80 bit còn lại chưa dùng tới phải đặt bằng 0.
8 bit 4 bit 4 bit 80 bit 32 bit
1111 1111
Flgs
Scop
00000…00
MAC Address
Hình 9: Cấu trúc địa chỉ MAC của mạng LAN
1.3 Cấu trúc của gói tin trong IPv6
Gói tin trong IPv6 được thấy như trong hình dưới đây. Mỗi gói tin bao
gồm một vùng header nền tảng bắt buộc theo sau bởi payload. Payload gồm
có 2 phần: những vùng Header mở rộng tuỳ ý chọn và dữ liệu từ tầng cao
hơn. Vùng Header nền tảng chiếm giữ 40 byte, trong khi đó những vùng
Header mở rộng và dữ liệu từ tầng cao hơn chứa đến 65535 byte thông tin.
40 byte Có thể lên đến 65535 byte
Đầu mục nền
tảng
Đầu mục mở rộng
(tuỳ ý lựa chọn)
Payload
Gói dữ liệu từ tầng cao
hơn
17
Hình 10 : Định dạng gói tin IPv6 (IPv6 Data Packet Format)
1.3.1 Vùng nền tảng (Base Header)
Vùng header nền tảng trong hình 11 cho ta thấy nó có 8 trường, những
trường này mô tả như sau:
VER
PRI
Flow lable
Vùng Header
Giới hạn nhảy
kế tiếp
Độ dài Payload
Những địa chỉ nguồn
Những địa chỉ đích
Những đầu mục mở rộng Payload
+
Gói dữ liệu từ tầng cao hơn
Hình 11 : Định dạng của 1 đơn vị dữ liệu IPv6 ( Format of an IPv6 datagram)
+ Phiên bản (VER version): Trường 4 bít này định nghĩa số phiên bản của
IP. Với IPv6 giá trị là 6.
+ Quyền ưu tiên (PRI prority): Trường 4 bít này định nghĩa sự ưu tiên của
những gói tin đối với sự tắc nghẽn giao thông.
18
+ Nhãn lưu lượng (Flow lable): Nhãn lưu lượng là một trường 3 byte – 24 bit
được thiết kế để cung cấp sự điều khiển đặc biệt đối với những lưu lượng
đặc biệt của dữ liệu.
+ Độ dài Payload (Payload Length): Trường độ dài Payload 2 byte này được
định nghĩa độ dài tổng cộng của đơn vị dữ liệu IP trừ vùng Header nền tảng.
+ Vùng Header kế tiếp (Next Header): Vùng Header kế tiếp là 1 trường 8
bít định nghĩa 1 đầu mục mà theo sau vùng Header nền tảng trong đơn vị dữ
liệu. Vùng header kế tiếp là 1 trong những vùng mở rộng tuỳ ý lựa chọn được
sử dụng bởi IP hoặc vùng Header cho 1 giao thức tầng cao hơn như UDP hay
TCP. Mỗi vùng Header mở rộng lại có chứa trường này. Bảng sau cho chúng
ta thấy những giá trị của vùng Header kế tiếp.
Mã số
0
2
6
17
43
44
50
51
59
60
Vùng Header kế tiếp
Tuỳ chọn nhảy từng bước một
ICMP
TCP
UDP
Routing nguồn
Sự phân miếng
Payload bảo mật mã hoá
Sự chứng thực
Trống ( Không vùng Header kế tiếp)
Tuỳ chọn đích
Hình 12: Những giá trị của vùng Header kế tiếp
Giới hạn nhảy ( Hot Limit): Trường giới hạn nhảy 8 bít này phục vụ cho
mục đích tương tự trường TTL trong IPv4.
Địa chỉ nguồn( Source Address): Trường địa chỉ nguồn là 1điạ chỉ Internet
16 byte (128 bit) mà xác minh nguồn bản gốc của đơn vị dữ liệu. Địa chỉ đích
( Destination Address): Trường địa chỉ đích là 1 địa chỉ Internet 16 byte ( 128
bit) mà thường xác minh đích cuối cùng của đơn vị dữ liệu. Tuy nhiên nếu
router nguồn được sử dụng thì trường này sẽ chứa địa chỉ của router kế tiếp.
+ Quyền ưu tiên (Priority): Trường quyền ưu tiên của gói tin IPv6 định
nghĩa quyền ưu tiên của từng gói tin có quan hệ với những gói tin khác trong
cùng 1 nguồn. Ví dụ khi 1 trong 2 đơn vị dữ liệu liên tiếp phải bị loại bỏ đi vì
chật chội, đơn vị dữ liệu có quyền ưu tiên nhỏ hơn sẽ bị loại bỏ. IPv6 chia
19
giao thông (traffic) làm 2 loại: điều khiển tắc nghẽn (congestion controlled)
và điều khiển không tắc nghẽn (nocongestion controlled).
Giao thông điều khiển tắc nghẽn ( congestion controlled traffic): Nếu 1
nguồn tự điều chỉnh giao thông chậm lại khi có tắc nghẽn, giao thông sẽ gán
cho giao thông điều khiển tắc nghẽn. Ví dụ như giao thức TCP sử dụng giao
thức cửa sổ trượt (Sliding window protocol), có thể dễ dàng đáp ứng giao
thông. Trong giao thông điều khiển tắc nghẽn nó được hiểu là những gói tin
có thể đến chậm hoặc thậm chí mất hoặc được nhận ngoài yêu cầu. Dữ liệu
điều khiển tắc nghẽn được cấp phát quyền ưu tiên từ 0 đến 7 được thể hiện
ở bảng sau:
Quyền ưu tiên
0
1
2
3
4
5
6
7
Mô tả
Không có giao thông cụ thể
Dữ liệu nền
Giao thông dữ liệu không được quan tâm
Dự trữ
Giao thông dữ liệu tham dự khối lới
Dự trữ
Giao thông tương giao
Giao thông điều khiển
Hình 13: Dữ liệu điều khiển tắc nghẽn
Có thể mô tả quyền ưu tiên như sau:
+ Không có giao thông cụ thể ( No specific traffic): quyền ưu tiên 0 được
cấp phát cho gói tin khi tiến trình không định nghĩa 1 ưu tiên nào. Dữ liệu nền
(Background data): nhóm này (quyền ưu tiên 1) định nghĩa dữl iệu thường
xuyên được nhận ở nền. Sự nhận tin tức là 1 ví dụ.
+ Giao thông dữ liệu không được quan tâm (unattended data tranffic): Nếu
người sử dụng đang không đợi dữ liệu sẽ được nhận, gói tin sẽ được quyền
ưu tiên 2. Email thuộc nhóm này. Một người sử dụng gửi email cho người sử
dụng khác, nhưng người nhận không biết email đó sẽ đến sớm. Thêm vào
email thường được lưu trữ trước khi được gửi đi.
+ Giao thông dữ liệu tham dự khối lớn ( Attended bulk data tranffi): Giao
thức mà chuyển phần lớn dữ liệu khi người sử dụng đang đợi nhận dữ liệu
(có thể trì hoãn) được quyền ưu tiên 4. FTP và HTTP thuộc nhóm này.
20
+ Giao thông tương dao (Interactive tranffic): Giao thức dạng như TELNET
cần sự tương giao với người sử dụng cấp sự tương giao với người sử d ụng
được cấp ưu tiên cao thứ 2 (6) trong nhóm.
+ Giao thông điều khiển (Control traffic): Giao thông diều khiển được
quyền ưu tiên cao nhất (7) trong loại này. Giao thức routing như OSPF và RIP
và giao thức quản trị SNMP sử dụng quyền ưu tiên này.
Giao thông điều khiển không tắc nghẽn( Noncongestion controlled
tranffic): Kiểu này gán cho kiểu giao thông mà chờ đợi một sự hãon lại nhỏ
nhất. Loại bỏ gói tin không phải là tốt. Sự chuyển giao lại trong hầu hết tình
huống là có thể hti hành được. Nói 1 cách khác nguồn không sửa lại nó thích
nghi với sự tắc nghẽn. Audio và video thời gian thực là những ví dụ điển hình
cho dạng giao thông này.
Quyền ưu tiên từ 8 đến 15 được cấp phát cho giao thông điều khiển
không tắc nghẽn. Mặc dù ở đây không có bát kỳ một sự cấp phát chuẩn đặc
biệt nào cho loại dữ liệu này, quyền ưu tiên thường được cấp phát dự vào số
lượng cảu dữ liệu nhận có thể bị tác động bởi việc loại bỏ gói tin. Dữ liệu
chứa ít sự rườm rà (như audio và video chất lượng thấp) có thể được đưa 1
quyền ưu tiên cao hơn (15). Dữ liệu chứa nhiều sự rườm rà (như video và
audio chất lượng cao) có thể bị đưa 1 quyền ưu tiên thấp hơn (8).
Quyền ưu tiên
8
.
.
.
15
Mô tả
Dữ liệu với nhiều sự rườm rà nhất
Dữ liệu với ít sự rườm rà nhất
Hình 14: Các quyền ưu tiên
Nhãn lưu lượng ( Flow Lable):
Một dãy các gói tin được gửi từ 1 nguồn riêng đến đích riêng, cần sự
điều khiển đặc biệt từ router gọi là lưu lượng của những gói tin. Sự kết hợp
của địa chỉ nguồn và giá trị của nhãn lưu lượng định nghĩa 1 cách duy nhất 1
lưu lượng của những gói tin.
Đối vơ router 1 lưu lượng là 1 dãy các gói tin chia sẻ cùng đặc tính như
là việc di chuyển cùng 1 đường, sử dụng cùng một nguồn, có cùng kiểu an
toàn vv… Một router mà hỗ trợ sự điều khiển của nhãn lưu lượng có 1 bảng
nhãn lưu lượng. Bảng này có 1 mục vào cho mỗi nhãn lưu lượng hoạt động,
21
mỗi mục định nghĩa 1 dịch vụ được yêu cầu bởi nhãn lưu lượng tương ứng.
Khi router nhận được 1 gói tin nó tra cứu bảng nhãn lưu lượng của nó để tìm
mục vào tương ứng cho giá trị nhãn lưu lượng được định nghĩa trong gói tin.
Sau đó nó cung cấp cho gói tin những dịch vụ đã đề cập trong mục vào. Tuy
nhiên chú ý là nhãn lưu lượng tự nó không cung cấp thông tin cho những mục
vào của bảng nhãn lưu lượng, thông tin được cung cấp bởi những thứ khác
như là tuỳ chọn nhảy từng bước một hay những giao thức khác.
Trong hình thức đơn giản nhất của nó, 1 nhãn lưu lượng có thể được
sử dụng để tăng tốc 1 tiến trình của 1 gói tin bởi 1 router. Khi router nhận
được gói tin thay vì xem bảng tìm đường và đi đến thuật toán tìm đường để
định nghĩa địa chỉ cảu bước nhảy kế tiếp, nó có thể dễ dàng được nhìn thấy
trong 1 bảng nhãn lưu lượng cho bước nhảy kế tiếp.
Trong hình thức rắc rối hơn của nó 1 nhãn lưu lượng có thể được sử
dụng để hỗ trợ quá trình chuyển giao audio và video thời gian thực. Audio và
video thời gian thực một cách đặc biệt trong hình thức kĩ thuật số đòi hỏi
những nguồn như băng thông rộng, buffer lớn, thời gian tiến trình dài vv…
Một tiến trình có thể đặt trước chỗ cho những nguồn này trước để đảm bảo
là dữ liệu thời gian thực sẽ không bị tạm hoãn do thiếu nguồn. Sự sử dụng dữ
liệu thời gian thực và chỗ đặt trước của những nguồn đòi hỏi những giao thức
khác như là giao thức thời gian thực ( Real Time Protocol RTP) hay giao th ức
đặt trước nguồn (Resource Reservation Protocol RRP) trong bổ sung c ủa
IPv6.
Để cho phép những hiệu quả sử dụng của nhãn lưu lượng 3 điều luật
được đưa ra :
Nhãn lưu lượng được cấp phát cho 1 gói tin bởi 1 host gốc. Nhãn là
một số bất kì từ 1 đến 2 24 1. Nó sẽ không sử dụng lại một nhãn lưu lượng
cho 1lưu lượng mới khi lượng dang tồn tại vẫn hoạt động.
Nếu như 1 host không hỗ trợ nhãn lưu lượng, nó sẽ đặt trường này là
0. Nếu như 1 router không hỗ trợ nhãn lưu lượng, nó đơn giản sẽ phớt lờ đi .
Tất cả những gói tin thuộc cùng 1 lưu lượng có thể có cùng nguồn,
cùng đích, cùng sự ưu tiên và cùng những tuỳ chọn.
1.3.2 So sánh giữa vùng header của IPv4 và IPv6 :
Trường độ dài vùng header đã bị loại đi trong IPv6 vì độ dài vùng header đã
được xử lý trong phiên bản này.
Trường kiểu dịch vụ đã bị loại đi trong IPv6. Trường quyền ưu tiên và nhãn
lưu lượng cùng kiểm soát chức năng của trường kiểu dịch vụ.
22
Trường độ dài tổng cộng đã bị loại đi trong IPv6 và được thay thế bằng
trường độ dài payload.
Những trường chứng thực( identification ), Trường cờ( flag ), và những
Trường offset đã bị loại bỏ từ vùng header nền tảng trong IPv6. Chúng được
đi kèm trong vùnh header mở rộng từng miếng.
Trường TTL được gọi là Giới hạn nhày trong IPv6.
Trường giao thức dược thay thế bởi Trường vùng header kế tiếp.
Vùng header checksum bị loại đi vì checksum được cung cấp bởi giao thức
của tầng cao hơn nó vì thế không cần thiết ở đây.
Những trường tuỳ chọn trong IPv4 được trang bị như những vùng header mở
rộng trong IPv6.
1.3.3 Vùng header mở rộng
Độ dài của vùng header được bố trí 40 byte. Tuy nhiên, để đem đến nhiều
chức năng hơn cho đơn vị dữ liệu IP vùng header nền tảng có thể cho theo sau
đến 6 vùng header mở rộng. Nhiều vùng header này là những tuỳ chọn trong
IPv4.
VER
PRI
Độ dài Payload
Flow label
Vùng Header kế tiếp
Địa chỉ nguồn
Địa chỉ đích
Vùng Header kế tiếp
Độ dài vùng Header
Vùng Header kế tiếp
Độ dài vùng Header
Vùng Header kế tiếp
Độ dài vùng Header
23
Giới hạn nhảy
Hình 15 : Định dạng vùng header mở rộng ( Extenion header format )
Sáu loại vùng header đã được định nghĩa. Chúng là tuỳ chọn nhảy từng
bước, lộ trình nguồn, sự phân mảnh, sự chứng thực, Payload bảo mật mã hoá
và tuỳ chọn đích (Xem hinh 16).
Tuỳ chọn nhảy từng bước
Nguồn tìm đường
Sự phân miếng
Sự chứng thực
Những vùng
Header mở rộng
Bảo mật Payload mã hoá
Tuỳ chọn đích
Hình 16 : Những loại vùng header mở rộng (Extension header types)
1.3.3.1 Tuỳ chọn nhảy từng bước (Hop–by–hop option)
Tuỳ chọn nhảy từng bước được sử dụng khi nguồn cần chuyển thông
tin qua tất cả các router được thăm bởi đơn vị dữ liệu. Ví dụ, không chừng
những router sẽ phải bị gây ra bởi sự quản trị, sự gỡ rối hay những chức năng
điều khiển nào đó.Hay,nếu như độ dài của đơn vị dữ liệu rộng hơn thông
thường là 65,535 byte, nhưng router phải có thông tin này. Hình 17 cho thấy
định dạng của vùng header kế tiếp trong một chuỗi vùng header. Độ dài vùng
header định nghĩa số byte trong vùng headerbao gồm cả trường vùng header kế
tiếp). Phần còn lại của vùng header chứa những tuỳ chọn khác nhau.
Vùng header nền tảng
24
Vùng header kế
tiếp
Độ dài vùng header
Những tuỳ chọn
Phẫn còn lại của Payload
Hình 17 : Định dạng vùng header tuỳ chnj nhảy từng bước (Hop by hop
option header format)
Xa hơn, chỉ có 3 tuỳ chọn được định nghĩa: Pad1, PadN và jumbo
payload (Xem hình 18).
Mã số (8 bít)
Hành
C
Độ dài (8 bít)
Dữ liệu (Độ dài có thể
thay đổi)
Kiểu
2 bít 1 bít 5 bít
Hành động : sẽ thực hiện nếu tuỳ chọn không được xác nhận
00 Bỏ qua tuỳ chọn Kiểu
01 Loại bỏ đơn vị dữ liệu không có hành động nào nữa 00000 Pal1
10 Loại bỏ đơn vị dữ liệu và gửi 1 thông điệp lỗi 00001 PadN
11 Như mã 10, nhưng nếu đích không phải địa chỉ munlticast
C: (change) giá trị thay đổi tuỳ chọn 00010 jumbo payload
0 : không bị thay đổi trong vận chuyển
1 : Có thể bị thay đổi trong vận chuyển
Hình 18 : Định dạng của những tuỳ chọn của vùng header tuỳ chọn nhảy từng
bước(Format of options in a hop–by–hop option header)
Pad1: Tuỳ chọn này dài 1 byte và nó được thiết kế cho những mục đích
sắp nhóm. Một số tuỳ chọn cần phải băt đầu ở 1 bit riêng biệt trong 32 bit
(xem mô tả jumbo payload). Nếu một tuỳ chọn của sự yêu cầu này rớt chính
xác là 1 byte, Pad1 sẽ được thêm vào để làm nên sự khác biệt. Pad1 không
chứa trường độ dài tuỳ chọn mà còn không cả chứa trường dữ liệu tuỳ chọn.
Nó gồm có duy nhất trường mã tuỳ chọn với tất cả các bít được đặt là 0
25