Trước những nhu cầu ngày càng tăng trong việc cung cấp các dịch vụ thời gian thực (thoại, video) và yêu cầu băng thông cao (các dịch vụ đa phương tiện), tổ chức IETF (Internet Engineering Task Force) đã đưa ra mô hình IntServ từ những năm đầu của thập kỷ 90 như một giải pháp hữu hiệu đảm bảo QoS IP [7].
Ý tưởng ban đầu của dịch vụ tích hợp IntServ là hỗ trợ việc dành trước tài nguyên cho các luồng lưu lượng, được thực hiện bởi việc thiết lập một tuyến dành trước tài nguyên trước khi gửi dữ liệu. Thực chất của mô hình intServ là các bộ định tuyến và thiết bị mạng phải dành trước nguồn tài nguyên của nó để cung cấp các mức chất lượng dịch vụ cụ thể cho các gói mang lưu lượng người dùng.
IntServ đã định nghĩa những yêu cầu cho các quá trình QoS để thỏa mãn hai mục đích: Phục vụ các ứng dụng thời gian thực và điều khiển việc chia sẻ băng thông giữa các cấp độ lưu lượng khác nhau.
Trong mô hình dịch vụ tích hợp, người ta đã đề xuất hai lớp dịch vụ bổ sung cho các dịch vụ IP truyền thống đó là:
Dịch vụ có đảm bảo - GS (Guaranteed Service): Được định nghĩa trong RFC2212 [14], cung cấp các giới hạn cứng về các độ trễ xếp hàng mà gói tin sẽ phải trải qua trong một router. Về bản chất, một phiên yêu cầu GS là yêu cầu các bit trong gói tin của nó được đảm bảo truyền đi với tốc độ không dưới một giá trị nhất định. GS đảm bảo rằng dữ liệu tới đích sau một khoảng thời gian nhất định và sẽ không bị mất do tràn bộ nhớ. Dịch vụ GS có đặc tính sử dụng băng tần dành riêng, trễ có giới hạn và không bị thất thoát gói tin. Các ứng dụng dịch vụ này có thể kể đến là: Video Conference chất lượng cao, thanh toán tài chính thời gian thực,…
Dịch vụ tải được điều khiển - CL (Control Load Service): Được định nghĩa trong RFC2211 [10], Một phiên nhận CL sẽ nhận một QoS xấp xỉ với
QoS mà cùng luồng đó sẽ nhận từ một phần mạng không có tải. Nói cách khác, phiên có thể thừa nhận rằng “một tỉ lệ phần trăm rất cao” của các gói tin sẽ đi qua router thành công mà không bị loại bỏ và sẽ chịu một độ trễ xếp hàng trong router gần như bằng 0. Dịch vụ CL không đảm bảo về băng tần hay trễ, nó phù hợp với các ứng dụng không nhạy cảm lắm với độ trễ như truyền multicast audio/video chất lượng trung bình, nó hướng tới các ứng dụng đa phương tiện được phát triển cho Internet ngày nay. Những ứng dụng này hoạt động khá tốt khi mạng có tải nhẹ, nhưng hiệu suất lại giảm mạnh khi mạng ở trong trạng thái tải nặng hơn nhiều.
Trong IntServ, một luồng IP cụ thể được nhận dạng bởi 5 thông số sau: - Địa chỉ IP nguồn
- Địa chỉ IP đích - Địa chỉ cổng nguồn - Địa chỉ cổng đích
- Giao thức chuyển vận được sử dụng (TCP hay UDP) cho luồng IP đang xét.
IntServ sử dụng giao thức RSVP (Resource Reservation Protocol) cho việc đặt trước tài nguyên cho một luồng, bao gồm một mô tả đặc trưng lưu lượng và các yêu cầu dịch vụ. Mô tả lưu lượng bao gồm: Tốc độ lớn nhất, tốc độ trung bình, kích cỡ lưu lượng và các yêu cầu dịch vụ bao gồm: Băng thông nhỏ nhất được yêu cầu và các yêu cầu khác như: độ trễ, jitter và tỷ lệ mất gói tin. Nếu có yêu cầu dự phòng, luồng đó được đưa vào bảng dự phòng tài nguyên. Khi gói tin đến, khối nhận dạng luồng sẽ nhận dạng gói tin thuộc về luồng đặt trước và đặt chúng vào trong hàng đợi phù hợp để nhận được dịch vụ yêu cầu.
Trong quá trình truyền từ nguồn tới đích gói tin phải đi qua nhiều chặng. Việc lựa chọn đường dẫn phù hợp cho chặng kế tiếp tại một nút là nhiệm vụ khó khăn do các hạn chế trong định tuyến IP truyền thống. Đường dẫn cần được lựa chọn có thể đã đáp ứng được yêu cầu định ra. Tuy nhiên, định tuyến IP thường sử dụng các số đo như trễ chặng hay một số thông số khác để tính toán đường đi ngắn nhất. Do vậy đường dẫn ngắn nhất có thể không có khả năng chấp nhận việc đặt trước tài nguyên trong khi đó đường dẫn dài hơn lại có khả năng đó. Vấn đề định tuyến có thể trở nên phức tạp bởi một số ứng dụng yêu cầu nhiều tham số QoS (ví dụ về băng thông và các yêu cầu về tỉ lệ mất gói tin). Tìm kiếm đường đi phù hợp trong nhiều điều kiện ràng buộc rất phức tạp. Chính vì lý do đó mô hình đảm bảo QoS cho gói tin IP đầu tiên này không yêu cầu gắn các cơ chế định tuyến đảm bảo QoS trong kiến trúc IntServ. Kiến trúc này giả sử rằng
khối chức năng định tuyến của bộ định tuyến sẽ thực hiện định tuyến từng chặng.