 Nén tải nhằm tăng dung lượng băng thông liên kết. Tuy nhiên, việc nén tải

sẽ làm tăng độ trễ trong việc truyền dẫn do phải cần khoảng thời gian dài để

thực hiện những thuật toán nhằm giải quyết việc nén dữ liệu.

 Một cơ chế nén hiệu quả hơn đó là nén phần header. Cơ chế nén này đặc

biệt hiệu quả đối với những mạng có gói chứa dữ liệu nhỏ ( tỉ số tải trên

header là nhỏ).

1.3.4.2 Giảm trễ

Để giảm trễ trong mạng, dưới đây là một số giải pháp:

 Tăng dung lượng liên kết, với một dung lượng băng thông vừa đủ trên liên

kết sẽ giúp rút ngắn chiều dài hàng đợi và như vậy gói sẽ không phải đợi

lâu để được truyền đi. Mặt khác, thời gian phát định kỳ sẽ được giảm

xuống. Tuy nhiên giải pháp sẽ không được khả thi do cùng việc tăng dung

lượng thì giá thành cũng sẽ tăng theo.

 Một giải pháp có tính hiệu quả hơn đó là tạo ra một cơ cấu hàng đợi có hỗ

trợ quyền ưu tiên đối với những gói có yêu cầu độ trễ nhỏ bằng cách đưa

các gói tin này lên hàng đầu.

 Nén tải sẽ giảm được kích thước của gói và từ đó sẽ tăng được băng thông

liên kết. Thêm vào đó, kích thước gói sẽ nhỏ hơn sau khi nén tải và gói sẽ

yêu cầu thời gian truyền ngắn hơn. Tuy nhiên, để thực hiện nén tải cần

được thực hiện thông qua các thuật toán phức tạp. Giải pháp này thường

không được sử dụng đối với những gói truyền trong môi trường có độ trễ

nhỏ.

 Việc nén header không là công việc tập trung xử lý chính mà nó sẽ được

kết hợp với các kỹ thuật khác để giảm độ trễ. Phương thức này đặc biệt phù

hợp với gói là voice.

Bằng cách giảm độ trễ truyền dẫn thì độ trượt cũng được giảm đáng kể.

1.3.4.3 Ngăn mất gói

Mất gói thông thường xảy ra khi router không còn thời gian bộ đệm phục vụ

cho việc xếp hàng đợi. Router sẽ thực hiện loại bỏ gói trong những trường hợp

sau:

 CPU bị nghẽn và không thể xử lý gói.

 Router không còn không gian bộ đệm

 CPU bị nghẽn và không thể ấn định một không gian bộ đệm nào cho các

gói mới

 Lỗi khung (ví dụ CRC).

Sau đây là một số giải pháp giúp tăng ngăn chặn mất gói đối với các ứng dụng:

 Tăng dung lượng liên kết để tránh nghẽn.

 Đảm bảo đủ lượng băng thông và tăng không gian bộ đệm nhằm đáp ứng

được khi xảy ra bùng nổ thông tin.

 Tránh nghẽn bằng cách loại bỏ gói trước khi nghẽn xảy ra. WRED sẽ được

sử dụng để thực hiện loại bỏ gói trước khi xảy ra nghẽn.

Weighted Random Early Detection (WRED)

IP Data

FIFO queuing

Custom Queuing (CQ) Modified Deficit Round Robin (MDRR)

{{{

Hình 1.3 Tránh nghẽn ngăn mất gói

1.4 Các kiểu dịch vụ QoS trong mạng

Định nghĩa kiến trúc QoS ra đời vào giữa năm 1990, và cho đến nay nhóm

nghiên cứu IETF (Internet Engineering Task Force) đã định nghĩa hai dạng kiến

trúc QoS cho mạng IP đó là các dịch vụ tích hợp (IntServ) và các dịch vụ phân

biệt (DiffServ).

1.4.1 Dịch vụ tích hợp Intserv

Các dịch vụ tích hợp (Intserv) được nhóm nghiên cứu IETF đưa ra nhằm

cung cấp các dịch vụ end-to-end giữa các máy chủ cho các ứng dụng point-to-

point và point-to multipoint . Nó định nghĩa quá trình xử lý báo hiệu cho các luồng

riêng biệt và yêu cầu phải dự trữ một lượng băng thông và độ trễ nhất định. Để

đảm bảo cho mỗi dòng, IntServ mô tả hai thành phần: dự trữ tài nguyên và điều

khiển lưu lượng. Dự trữ tài nguyên cho phép luồng dữ liệu riêng biệt yêu cầu một

lượng băng thông và độ trễ thích hợp. Nếu việc báo hiệu thành công, thì các thành

phần mạng sẽ phải dự trữ lượng băng thông cần thiết. Còn điều khiển lưu lượng

Intserv sẽ quyết định yêu cầu dự trữ nào sẽ bị từ chối. Nếu tất cả các yêu cầu được

chấp nhận thì sẽ có quá nhiều luồng lưu lượng đi trong mạng và kết quả sẽ không

có luồng nào được nhận dịch vụ yêu cầu cả.

Hình 1.4 Kiến trúc dịch vụ Intserv

1.4.1.1 Giao thức dự trữ tài nguyên RSVP (Resource Reservation Protocol)

RSVP là một giao thức cho việc thiết lập các dự trữ tài nguyên. Giao thức

RSVP được các máy chủ sử dụng để yêu cầu các chất lượng dịch vụ đặc biệt từ

mạng cho các ứng dụng riêng biệt như các dòng dữ liệu hay các luồng thông tin.

Các router cũng có thể sử dụng giao thức này để thiết lập, duy trì và phân phối các

yêu cầu QoS cho các node hoạt động dọc theo đường dẫn. Kết quả là các tài

nguyên sẽ được dự trữ cho mỗi node theo đường dữ liệu.

RSVP phải mang các thông tin sau:

 Thông tin phân loại, nhờ nó mà các luồng lưu lượng với các yêu cầu QoS

cụ thể có thể được nhận biết trong mạng. Thông tin này bao gồm địa chỉ IP

phía gửi và phía nhận, số cổng UPD.

 Chỉ tiêu kỹ thuật của luồng lưu lượng và các yêu cầu QoS

Rõ ràng là RSVP phải mang những thông tin này từ các máy chủ tới tất cả

các tổng đài chuyển mạch và các router dọc theo đường truyền từ bộ gửi đến bộ

nhận, vì vậy tất cả các thành phần mạng này phải tham gia vào việc đảm bảo các

yêu cầu QoS của ứng dụng.

1.4.1.2 Cách thức hoạt động của RSVP

Cách thức hoạt động của RSVP dựa trên việc giành dự trữ tài nguyên trước

khi truyền dữ liệu. Có hai loại bản tin RSVP chính được sử dụng để báo hiệu. Bên

gởi sẽ gởi bản tin đường dẫn PATH và các thông tin phân loại đến bên nhận để

xác định các thuộc tính của lưu lượng sẽ gởi. Mỗi node trung gian sẽ chuyển tiếp

bộ bản tin PATH tới các node kế tiếp. Khi nhận được bản tin PATH, bên nhận

được sẽ đáp ứng lại bằng một bản tin RESV. Bản tin RESV xác nhận phiên có

chứa thông tin về số cổng dành riêng và mức QoS mà bên nhận yêu cầu. Các node

trung gian trên đường đi có thể chấp nhận hay từ chối các yêu cầu trong bản tin

RESV. Nếu yêu cầu bị từ chối, router sẽ gởi bản tin Error cho bên nhận và quá

trình báo hiệu sẽ kết thúc. Nếu yêu cầu được chấp nhận tài nguyên sẽ được dự trữ

cho luồng và các thông tin trạng thái liên quan của luồng sẽ được cài đặt vào

router.

Một đặc điểm quan trọng của RSVP là việc dự trữ 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ự trữ tài nguyên có liên quan

tới một bộ định thời, và khi bộ định thời hết hạn, việc dự trữ trước tài nguyên được

loại bỏ. Nếu bên nhận muốn lưu lại trạng thái dự trữ tài nguyên nào, nó phải đều

đặn gửi các bản tin dự trữ tài nguyên. Bên gởi cũng phải thường xuyên gửi các bản

tin này. RSVP được thiết kế dành cho kiến trúc Intserv nhưng vai trò của nó cũng

được mở rộng cho giao thức báo hiệu trong MPLS.

Hình 1.5 Giao thức RSVP

1.4.2 Dịch vụ phân biệt Diffserv

Việc thực hiện kiến trúc IntServ gặp nhiều khó khăn, nó gây ra mức giá yêu

cầu cao cho nguồn xử lý (processing power) và báo hiệu. Đối với mạng đường

trục lớn, nhiều phiên kết nối, RSVP truyền thống yêu cầu các bộ định thời cho mỗi

phiên và sự phân loại trong mỗi router làm cho bộ xử lý và bộ nhớ trở nên khó

đáp ứng. Do đó chỉ áp dụng được cho những mạng có số các luồng dữ liệu là nhỏ.

Mục đích của việc đưa ra dịch vụ Diffserv để nhằm đạt được tính linh

động. Diffserv trái ngược với Intserv là dựa trên từng luồng dữ liệu, nó phân loại

các gói thành một số lượng không lớn các tập (gọi là các lớp) và do đó đạt được

hiệu quả cho các mạng lớn. Các chức năng đơn giản được thực hiện tại router lõi,

trong khi các chức năng phức tạp được triển khai tại các router biên. Tính linh

động rất là cần thiết vì dịch vụ mới có thể xuất hiện và một số dịch vụ trở lên lỗi

thời. Do đó Diffserv không cần thiết phải xác định dịch vụ như là Inserv, thay vào

đó nó cung cấp các thành phần chức năng mà trên đó dịch vụ có thể được xây

dựng. Việc thông tin giữa người dùng và dịch vụ sẽ nằm trong Bản Thỏa Thuận

mức dịch vụ SLA (Service Level Agreement), việc đối xử luồng lưu lượng tương

ứng với bản SLA. Việc xác định SLA sẽ được cung cấp bao nhiêu tài nguyên sẽ

được cấu hình tay. Kiến trúc Diffserv bao gồm hai tập các thành phần chức năng:

 Tại biên của mạng, việc phân loại và điều khiển lưu lượng được thực hiện

và các gói được phân vào các lớp.

 Tại lõi, một cơ chế phân loại đơn giản được thực hiện. Cơ chế hàng đợi dựa

trên lớp được áp dụng.

-nhìn vào trường DSCP -cung cấp các đối xử dựa trên giá trị của DSCP

-phân loại (classification) -chính sách ( policing ) -định hướng ( shaping) -đánh dấu DSCP (marker)

DiffSert Domain

ER1

ER3

` R2

`

CR5

S1

CR6

`

`

CR7

ER2

ER4

`

` R1

S2

Hình 1.6 Kiến trúc dịch vụ Diffserv

1.4.2.1 Các thuật ngữ sử dụng trong Diffserv

Kiến trúc dịch vụ phân biệt DiffServ định nghĩa một số thuật ngữ thường sử

dụng sau đây:

 Miền (Domain): là mạng có chung các thực thi ( thường thì chung sự điều

khiển của quản trị)

 Vùng (Region): là nhóm các miền DiffServ kế cận

 Node vào (Ingress node): là node đầu tiên mà gói tin đi vào miền Diffserv

 Node ra (Egress node): là node cuối cùng mà gói tin đi ra khỏi miền

Diffserv

 Trường DS (DiffServ field): octet TOS của mào đầu IPv4 hoặc octet lớp

lưu lượng của mào đầu IPv6 và được đổi tên là DS bởi DiffServ. Nó là

trường nơi các lớp dịch vụ được gửi kèm.

 Điểm mã dịch vụ phân biệt (Differantiated Service Code Point_DSCP): là

các giá trị đặc biệt được chỉ định cho trường DiffServ.

 Tập hợp đối xử (Behavior Aggretate-BA): Là tập hợp các gói tin của node

dịch vụ phân biệt có cùng mã DSCP.

 Phân lớp BA (BA classifier): Phân lớp các gói dựa trên mã DSCP

(Differential Service Code Point).

 Bộ phân lớp (Classifier) : Quá trình sắp xếp các gói dựa trên nội dung của

header của gói theo quy luật xác định.

 Thỏa thuận mức dịch vụ (Service level Agreement_SLA): là dịch vụ liên hệ

giữa khách hàng và nhà cung cấp dịch vụ chỉ rõ xu hướng yêu cầu của

khách hàng. Khách hàng có thể là một tổ chức người dùng hoặc phạm vi

nhà cung cấp ( phạm vi đi ngược dòng).

 Sự phân lớp đa môi trường (Multifield Classifier) là sự phân lớp của gói

dựa trên nội dung của các trường như địa chỉ nguồn, địa chỉ đích, byte ToS,

giao thức ID, số cổng nguồn và số cổng đích.

 Đối xử từng chặn (Per-Hop Behavior_PHB): là tại mỗi node các gói BA sẽ

được chuyển tiếp hay được phục vụ.

 Đánh dấu (Marking) là quá trình thiết lập các trường DS của các gói.

 Chính sách (policing) là quá trình xử lý các dạng lưu lượng, ví dụ như loại

bỏ (drop) các gói vượt quá.

 Định dạng (Shaping): là quá trình đệm các gói tin trong luồng lưu lượng tạo

cho nó tương thích với hiện trạng lưu lượng đã định nghĩa.

 Hàng đợi (Queuing): điều khiển chiều dài của gói hàng đợi bằng cách loại

bỏ các gói khi cần thiết hoặc cho phù hợp.

1.4.2.2 Điểm mã dịch vụ phân biệt DSCP (DiffServ code point)

Các đặc tính kỹ thuật trước đây, IP đã dự trữ một số bit trong header cho

việc hỗ trợ các chất lượng dịch vụ QoS. Đối với IPv4 octet thứ hai của header là

octet ToS (Type of Service) còn đối với IPv6 thì đó là octet lớp lưu lượng (Traffic

Class). Các giá trị của trường DS đó chính là điểm mã dịch vụ phân biệt DSCP.

0-2

3-5

6-7

unused

IP Precedence

ToS Field

ToS byte

Mào đầu IP trước khi DiffServ

Sau khi DiffServ

DS Field

DSCP

ECN

0-5

6-7

Các node dịch vụ DiffServ sẽ phục vụ các gói tin tương ứng với điểm mã này.

Hình 1.7 Byte ToS trước và sau DiffServ

Trường ToS chứa 8 bit, 6 trong số chúng được sử dụng để biểu thị cho

DSCP. Với 6 bit trường DS sẽ có 64 giá trị nhị phân tương ứng với 64 trạng thái

chất lượng dịch vụ chứa trong 3 “bộ trữ” (pool). Trong đó sẽ có 2 bộ trữ với 32 giá

trị được dự trữ cho thực nghiệm hay sử dụng cục bộ. Các đặc tính DiffServ hiện

nay khuyến cáo sử dụng 21 giá trị trong bộ trữ thứ 3 (21 giá trị này sẽ được mô tả

trong Bảng 1.2).

Chưa sử dụng

Trường DSCP : 6 bits

Hình 1.8 Khung DSCP

1.4.2.3 Xử lý từng chặn PHB (Per-hop Behavior)

Kiến trúc DiffServ định nghĩa đối xử từng chặn PHB cho việc xử lý chuyển

tiếp gói tin tại mỗi node mạng áp dụng một tập hợp đối xử BA. Nó mô tả các đặc

tính về chất lượng dịch vụ như độ trễ, độ trượt hay mất gói của gói tin khi đi qua

node dịch vụ DiffServ.