Luồng UIO là một phương ỏn thuộc giải phỏp bộ đệm (hỡnh 3 ) .Dữ liệu thoại nhận được từ mạng thoại (ghi ) được ghi vào bộ đệm firmware của board thoại .Driver thoại sau đú điều khiển việc chuyển dữ liệu từ bộ đệm firmware đến một bộ đệm của driver .Cỏc bộ đệm Driver được tạo ra trong bộ nhớ của người dựng sử dụng hàm
dx_setparm() , và cú thể được gỏn bất kỳ giỏ trị nào trong khoảng 256 byte đến 1 KB.Trong quỏ trỡnh ghi ,khi bộ đệm driver đó đầy ,driver thoại gọi hàm write() của người dựng (được chỉ ra trong hàm dx_setuio()).Thụng thường , hàm write() được sử dụng để lưu dữ liệu trong bộ đệm ứng dụngđể xử lý.
Dữ liệu thoại nhận được từ Internet (đọc ) được lưu vào trong bộ đệm ứng dụng .Trong khi đọc , khi driver thoại cần dữ liệu, một hàm read() của người dựng (được chỉ ra trong hàm dx_setuio() ) được sử di\ụng để lưu dữ liệu đến bộ đệm của driver (Nếu khụng cú dữ liệu ,driver thoại chốn khoảng lặng vào bộ đệm firmware ). Driver thoại sau đú chuyển dữ liệu đến bộ đệm firmware nơi nú được xử lý và gửi đi khỏi board thoại đến mạng telephone.
Trễ tổng thể qua Internet GateWay cú thể được giảm bớt nhờ điều chỉnh cỡ bộ đệm của cả firmware và driver .Để hoạt động tối ưu ,cỡ của bộ đệm driver phải được đặt ở giỏ trị ớt nhất gấp đụi cỡ bộ đệm firmware. Vớ dụ khi sử dụng cỡ bộ đệm firmware là 512 byte và cỡ bộ đệm driver là 1.5kb thỡ trễ xấp xỉ 225 ms.
Phạm Việt Dũng lớp DTTH1 K40 Trường Đại học Bỏch khoa Hà Nội 103
internet Application Buffer User Memory Internet Gateway Appication Firmware Buffer User Memory Dialogic Voice Board Driver Buffer User Memory Application Buffer User Memory Internet Gateway Appication Firmware Buffer User Memory Dialogic Voice Board internet
Hỡnh 8-21Hai phương phỏp truyền dữ liệu
Tốc độ vi xử lý của mỏy chủ cũng như cỏc chương trỡnh cựng chạy đồng thời sẽ cú ảnh hưởng đến khả năng giỏ trị cỏc bộ đệm cú thể đặt thấp đến đõu .Cỏc thử nghiệm ban đầu chỉ ra cỡ tối thiểu cho bộ đệm driver là 512 và cỡ tối thiểu của bộ đệm firmware là 256 với vi xử lý pentium (90Mhz hoặc cao hơn ).