2.2.4.1. Giới thiệu chung về RSVP
Giao thức dành trước tài nguyên RSVP là một giao thức thiết lập tài nguyên dự phòng QoS IP, RSVP hỗ trợ cả IPv4 và IPv6 cũng như ứng dụng cả hai phương thức chuyển phát tin đơn phát và đa phát (Unicast, multicast).
RSVP không phải là giao thức định tuyến mà là giao thức báo hiệu, các bản tin RSVP được chuyển đi trên cùng đường định tuyến với các gói tin sẽ được chuyển và được xác định bởi bảng định tuyến trong bộ định tuyến IP.
RSVP được phát triển để chống lại tắc nghẽn mạng bằng cách cho phép các bộ định tuyến quyết định ở mức cao. Tại mức này, các bộ định tuyến có thể đáp ứng các yêu cầu của một luồng ứng dụng và dự trữ tài nguyên mong muốn (ngay cả khi mặt bằng chuyển tiếp gói không xử lý được). Giao thức RSVP dựa trên xử lý đặc biệt, mang bản tin báo hiệu tới các nút dọc tuyến đường qua mạng theo luồng thực tế, quản lý trạng thái mềm, trao đổi bản tin, dự phòng tài nguyên và tách báo hiệu QoS khỏi chức năng định tuyến.
Một số đặc tính cơ bản của RSVP là:
RSVP là giao thức báo hiệu để dành trước tài nguyên trong đường định tuyến từ
nguồn tới đích.
RSVP báo hiệu tới tất cả các thiết bị mạng về yêu cầu QoS của ứng dụng.
RSVP yêu cầu các ứng dụng khởi tạo yêu cầu.
RSVP hoạt động liên điều hành với các kỹ thuật QoS khác để cải thiện độ đảm
bảo cho các tài nguyên dành trước.
Giao thức dành trước tài nguyên RSVP thường được sử dụng cho các ứng dụng yêu cầu đảm bảo các tham số băng thông và độ trễ. Một đặc điểm quan trọng của RSVP là việc giành tài nguyên được thực hiện bởi “trạng thái mềm”, có nghĩa là trạng thái dành tài nguyên có liên quan tới một bộ định thời (timer), và khi bộ định thời hết
17
hạn, việc dành trước tài nguyên được loại bỏ. Nếu nơi nhận muốn lưu lại trạng thái dành tài nguyên nào, nó phải đều đặn gửi các thông điệp dành tài nguyên. Nơi gửi cũng phải thường xuyên gửi thông điệp này. Các ứng dụng mạng hiện nay sử dụng RSVP như là giao thức báo hiệu gồm các ứng dụng cho VoIP (Voice over IP) và kỹ thuật lưu lượng MPLS (Multi Protocol Label Switching).
2.2.4.2. Nguyên lý hoạt động của RSVP
Một phiên làm việc của giao thức dành trước tài nguyên RSVP thường sử dụng 3 tham số sau:
Địa chỉ đích
Cổng đích
Giao thức chuyển vận
Hình 2-3 Cấu trúc mạng Intserv
Giao thức báo hiệu RSVP sẽ đưa ra quyết định luồng IP từ nút H1 đến nút H2 (Hình 2.3) có thể được mạng IntServ phục vụ hay không. Trước tiên, RSVP xác định và xây dựng đường định tuyến cho luồng IP bằng tin PATH. Đường định tuyến này đi qua các bộ định tuyến R1, R2, R3. Tiếp đó dung lượng sẽ được chiếm giữ cho đường định tuyến theo chiều từ nút nhận ngược trở lại nút gửi. Sự chiếm giữ được thực hiện bằng tin RESV của giao thức RSVP. Nếu sự chiếm giữ thành công tại tại tất cả các nút R3, R2, R1, luồng IP bắt đầu được phục vụ. Nếu tại bất cứ bộ định tuyến nào, sự chiếm giữ không thực hiện được do thiếu dung lượng cần thiết, giao thức RSVP sẽ dựa vào kết quả này để chặn luồng IP.
2.2.4.3. Các kiểu dành trước tài nguyên RSVP
18
Bảng 2.1 Các kiểu dành trước tài nguyên
Lựa chọn máy gửi
Dành trước tài nguyên Phân biệt Chia sẻ
Tường minh FF SE
Wildcard Không định nghĩa WF
Bảng 2.1 có 4 khả năng được tổ hợp từ các cách thức điều khiển chia sẻ tài nguyên và lựa chọn máy gửi gồm 1 kiểu không được định nghĩa; 1 kiểu bộ lọc cố định FF (Fixed Filter) 1 kiểu chia sẻ tường minh SE (Shared Explicit) và kiểu bộ lọc Wildcard WF (Wildcard – Filter).
Hai kiểu điều khiển máy gửi được định nghĩa:
Kiểu lựa chọn tường minh: liệt kê toàn bộ các máy gửi
Kiểu lựa chọn wildcard: chỉ liệt kê toàn bộ máy chủ trong phiên
Điều khiển chia sẻ lưu lượng thực hiện điều khiển các ứng xử dành trước tài nguyên cho các máy gửi khác nhau trong cùng một phiên. Có 2 kiểu điều khiển chia sẻ lưu lượng được định nghĩa:
Kiểu dành trước tài nguyên riêng biệt dành trước tài nguyên được tạo ra cho
từng máy gửi.
Kiểu dành trước tài nguyên chia sẻ dành trước tài nguyên chung cho các máy
gửi trong phiên.
2.2.4.4. Định dạng bản tin RSVP
Khuôn dạng bản tin RSVP có cấu trúc gồm một tiêu đề chung và các trường chức năng thể hiện các đối tượng như chỉ ra trên Hình 2.4(a). Mỗi một đối tượng được cấu trúc bởi tiêu đề đối tượng và nội dung đối tượng.
Khuôn dạng tiêu đề chung được chỉ ra trên Hình 2.4 (b) có tổng độ dài là 8 bytes. Nó gồm 4 bit cho số hiệu phiên bản RSVP, 4 bit cờ, 8 bit sử dụng cho kiểu bản tin RSVP; 16 bit tổng kiểm tra, 8 bit sử dụng cho thời gian sống TTL của gói tin IP, 8 bit dự phòng và trường hiển thị độ dài bản tin gồm 16 bit.
19
Hình 2-4 Khuôn dạng bản tin và tiêu đề chung RSVP
Nếu trường tổng kiểm tra độ dài chứa toàn bộ giá trị 0, điều đó thể hiện không cần kiểm tra các dữ liệu truyền đi. Độ dài bản tin RSVP bao gồm cả tiêu đề và các đối tượng trong bản tin. RSVP định nghĩa các kiểu bản tin sắp xếp theo thứ tự kiểu bản tin:
1. Path - Sử dụng để yêu cầu tài nguyên dành trước.
2. Resv - Gửi đáp ứng bản tin đường để thiết lập và duy trì dự trữ tài nguyên.
3. PathTear - Sử dụng để xóa dự trữ tài nguyên khỏi mạng theo hướng đi.
4. ResvTear - Sử dụng để xóa bỏ tài nguyên khỏi mạng theo hướng về.
5. PathErr - Thông báo lỗi bản tin PATH.
6. ResvErr - Thông báo lỗi bản tin RESV.
7. ResvConf - Là một bản tin tùy chọn, gửi ngược lại tới phía gửi của
bản tin Resv để xác nhận rằng tài nguyên dự trữ xác định thực sự đã được cài đặt.
8. ResvTearConf - Sử dụng để xác nhận dự trữ tài nguyên xác định đã bị xóa
khỏi mạng.
Khuôn dạng đối tượng RSVP được chỉ ra trên hình 2.5 dưới đây gồm 32 bit tiêu đề đối tượng và các nội dung đối tượng có độ dài thay đổi. Một đối tượng độ dài có 32 bit định nghĩa độ dài tối đa cho phép của đối tượng RSVP là 65,528 byte. Các đối tượng RSVP được tổ chức thành lớp đối tượng và kiểu đối tượng.
20
Hình 2-5 Khuôn dạng bản tin đối tượng RSVP.
Trường chức năng “Class Num” định nghĩa lớp đối tượng và trường chức năng “C-Type” định nghĩa đối tượng trong lớp. Các trường chức năng này tổ chức thành một cặp để mô tả các đối tượng trong RSVP. Các lớp đối tượng sau được định nghĩa trong RFC 2205:
NULL - Mô tả trạng thái của phiên.
SESSION - Mô tả phiên.
RSVP_HOP - Thể hiện các bước nhảy của bản tin RSVP.
TIME_VALUE - Mô tả giá trị thời gian chuyển tin.
STYLE - Mô tả kiểu bản tin.
FLOWSPEC - Mô tả đặc tính luồng.
FILTER_SPEC - Mô tả đặc tính bộ lọc.
SENDER_TEMPLATE - Mô tả khuôn dạng gói của đối tượng gửi.
Đối tượng FLOWSPEC chứa các tham số điều khiển lưu lượng gồm: tốc độ token
bucket; kích thước token bucket, tốc độ đỉnh.
Đối tượng kiểu bản tin (STYLE) được đặt trong “Class num=8”, lớp này chỉ có một đối tượng với C type -1. Đối tượng kiểu định nghĩa các kiểu dành trước tài nguyên.
21
Hình 2-6 Khuôn dạng đối tượng kiểu.
Hình 2.6 chỉ ra khuôn dạng của đối tượng kiểu, kiểu dành trước tài nguyên được định nghĩa bởi 5 bit cuối cùng. Trong đó, 2 bit đầu định nghĩa kiểu điều khiển chia
sẻ tài nguyên và 3 bit điều khiển lựa chọn máy gửi.Ý nghĩa của các bit được thể hiện
trong bảng 2.2 và bảng 2.3.
Bảng 2.2 Các bit sử dụng cho điều khiển chia sẻ
XX bit Điều khiển chia sẻ
00 Dự phòng
01 Tài nguyên phân biệt
10 Tài nguyên chia sẻ
11 Dự phòng
Bảng 2.3: Các bit sử dụng cho điều khiển lựa chọn máy gửi
YYY bit Điều khiển lựa chọn máy gửi
000 Dự phòng
001 Lựa chọn Wildcard
010 Lựa chọn tường minh
011-111 Dự phòng
2.2.4.5. Bản tin PATH
Bản tin PATH mô tả thông tin phiên truyền thông qua địa chỉ IP nguồn và địa chỉ IP đích, cùng với một số đặc tính của đường đi được phản ánh trong các đối tượng RSVP_HOP và TIME_VALUE. Khuôn dạng của gói tin sẽ được chuyển đi tương thích với các kiểu lọc được mô tả trong đối tượng SENDER_TEMPLATE, các đặc tính luồng của các ứng dụng từ máy gửi được mô tả trong đối tượng SENDER_TSPEC.
22
Hình 2-7 Cấu trúc bản tin PATH
2.2.4.6. Bản tin RESV
Thông điệp RESV mang yêu cầu dành trước tài nguyên theo từng bước từ máy gửi đến máy nhận dọc theo đường đi ngược lại với đường đi của thông điệp PATH của luồng dữ liệu trong cùng một phiên. Các đối tượng trong thông điệp RESV nhằm xác nhận và sửa đổi một số yêu cầu của thông điệp PATH cho phù hợp với hiện trạng của mạng. Hình 2-10 mô tả cấu trúc của thông điệp RESV.
Hình 2-8 Cấu trúc thông điệp RESV
2.2.4.7. Ưu điểm và nhược điểm của mô hình dịch vụ tích hợp
Mặc dù RSVP được sử dụng để yêu cầu tài nguyên từ mạng, tích hợp dịch vụ định nghĩa các kiểu dịch vụ cần thiết, xác định số lượng tài nguyên yêu cầu và quyết định tài nguyên yêu cầu có hiệu lực.
Dưới đây là một điểm hạn chế của mô hình tích hợp dịch vụ trên Internet
Mô hình này hoạt động không hiệu quả trong trường hợp một Router nào đó trên
đường đi không đủ tài nguyên để nhận và đăng ký để dự trữ cho một luồng nào đó. Trong trường hợp này, Router này được xem là nút thắt trong mạng.
Mô hình tích hợp dịch vụ hoạt động dựa trên trạng thái luồng và xử lý từng luồng.
Nếu số lượng luồng tăng lên đột ngột, nó phải dành số lượng tài nguyên tương ứng để đáp ứng với sự tăng lên của các luồng đó. Tài nguyên này sẽ bị chiếm
23
dụng và không được tận dụng cho bất ký một luồng nào khác. Nếu tài nguyên bị chiếm dụng này mà không dùng thì hiện tượng lãng phí tài nguyên sẽ xảy ra.
Mô hình tích hợp dịch vụ sử dụng giao thức dành trước tài nguyên RSVP để báo
hiệu. Khi một luồng được thiết lập thì tương ứng với một phiên RSVP được thiết lập, điều này dẫn đến một hạn chế là: Đối với mạng có lưu lượng cao như mạng ISP hay các tổ chức doanh nghiệp lớn thì số lượng luồng lưu lượng có thể lên tới hàng trăm, hàng ngàn luồng trong một thời điểm và dẫn đến hiện tượng lãng phí tài nguyên do băng thông được sử dụng để thiết lập kênh RSVP lên rất nhiều. Do đó, nó không được lựa chọn để thực hiện QoS trong mạng có quy mô lơn. Nó chỉ thích hợp cho những mạng nhỏ với luồng lưu lượng ít hoặc mạng cần ưu tiên tài nguyên cho luồng lưu lượng riêng.
Ưu điểm của mô hình tích hợp dịch vụ
Mô hình này bảo đảm chất lượng dịch vụ theo từng luồng dữ liệu từ đầu cuối đến
đầu cuối cần bảo đảm QoS, như Thoại IP, hệ thống video qua mạng, v…v.
Mô hình tích hợp dịch hỗ trợ việc điều khiển đầu vào, điều này cho phép một
mạng có thể từ chối một phiên RSVP mới nếu một Interface trong đường đi khi đã bị hạn chế về tài nguyên.
Thông điệp RSVP yêu cầu QoS theo từng luồng. Trong yêu cầu này, việc chứng
thực người dùng (chứng thực đối tượng) và chính sách lưu lượng cần thiết (chính sách của các đối tượng) được gửi đi. Từ đó mạng có thể cung cấp các cơ chế bảo đản cho các luồng đó.
Cho phép các Host yêu cầu từng luồng và xác định số lượng tài nguyên cần thiết
trên đường đi từ đầu cuối đến đầu cuối, bao gồm việc phản hồi về thông tin tài nguyên đầu vào.
Thông điệp RSVP báo cho các thiết bị mạng biết về các tham số của luồng (Địa
chỉ IP và số hiệu cổng). Một số ứng dụng sử dụng sổ hiệu cổng động, ví dụ như các ứng dụng hoạt động dựa trên giao thức H.323, các ứng dụng này có thể gây khó khăn cho các thiết bị mạng nhận diện. Để hỗ trợ điều này, kỹ thuật NBAR của Cisco đưa ra để bổ sung giao thức dành trước tài nguyên RSVP cho các ứng dụng sử dụng số hiệu cổng động nhưng không sử dụng giao thức RSVP.
24 2.3. Mô hình dịch vụ phân biệt- Differentiated Services Model
(Diffserv)
2.3.1. Tổng quan về mô hình DiffServ
Trong phiên họp tháng 8 năm 1997, nhóm IETF đã đề xuất mô hình DiffServ như một giải pháp QoS có tính khả thi cao hơn và xác định rõ yêu cầu cho dịch vụ phân biệt (DiffServ) với việc phát triển các chuẩn cho phương pháp này.
Mô hình dịch vụ phân biệt DiffServ thừa nhận một khía cạnh trái ngược với IntServ. Vấn đề tồn tại của IntServ là các nguồn tài nguyên cần phải được duy trì trạng thái thông tin theo từng luồng, điều này trở nên khó khả thi đối với mạng có số lượng dịch vụ và số lượng thiết bị mạng lớn vì bộ định tuyến cần phải xử lý lưu lượng rất lớn trong mạng. Cách tiếp cận của DiffServ không xử lý theo từng luồng lưu lượng riêng biệt mà ghép chúng vào một số lượng hạn chế các lớp lưu lượng. DiffServ hướng tới xử lý trong từng dịch vụ phân biệt thay vì xử lý từ đầu cuối tới đầu cuối như mô hình IntServ.
DiffServ định nghĩa một số tham số mà người sử dụng hiểu rõ cho ứng dụng của họ trong SLA như thỏa thuận về điều kiện lưu lượng TCA (Traffic Conditioning Agreement), hồ sơ lưu lượng (tham số của token bucket), các tham số hiệu năng (thông lượng, độ trễ, mất gói), cách thức xử lý các gói tin không phù hợp với thỏa thuận, luật đánh dấu và chia cắt lưu lượng.
Trong mô hình DiffServ, các bộ định tuyến được chia làm hai loại: các bộ định tuyến biên nằm ở đường vành của tổ chức mạng có chức năng DiffServ; các bộ định tuyến lõi nằm bên trong tổ chức mạng có chức năng DiffServ. Đối với mô hình DiffServ các bộ định tuyến biên làm nhiệm vụ xử lý từng luồng IP vi mô. Các bộ định tuyến lõi thay vì phải xử lý số lượng rất lớn các luồng IP như trong cấu trúc IntServ, chỉ phải xử lý một vài luồng IP tổng. Luồng IP tổng chứa tất cả các gói của các luồng IP vi mô thuộc về cùng một chủng loại.
25
Hình 2-9 Tổng quan mô hình DiffServ. BR (Boundary Router): Bộ định tuyến ở biên. IR (Interior Router): Bộ định tuyến phía trong.
2.3.2. Nguyên lý hoạt động và kiến trúc của mô hình dịch vụ phân biệt
2.3.2.1. Nguyên lý hoạt động
Khi bắt đầu đi vào mạng DiffServ tại bộ định tuyến biên, gói tin IP sẽ được phân loại. Bộ định tuyến biên thực hiện việc phân loại bằng cách kiểm tra mã DSCP (DiffServ Code Point) chứa chủng loại dịch vụ nằm trong phần đầu gói cùng với một số dữ liệu khác liên quan tới luồng vi mô của gói IP (địa chỉ đầu gửi, địa chỉ đầu nhận).
Các gói tin đến bộ định tuyến có thể đã được đánh dấu hoặc chưa đánh dấu, bộ định tuyến xác định điểm mã điều khiển dịch vụ DSCP của gói tin và phân loại các gói tin theo phương pháp phân loại kết hợp hành vi BA. Các gói tin phân loại thành các lớp BA được chuyển tiếp theo hành vi từng bước PHB (Per Hop Behavior) được định nghĩa trước cho các BA. Mỗi PHB được thể hiện bởi giá trị DSCP và xử lý giống nhau đối với các gói tin trong cùng lớp BA.
26
Hình 2-10 Mô hình các bước dịch vụ phân biệt
Sau khi chủng loại của gói IP được xác định, bộ định tuyến biên sẽ áp dụng một