BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
YZWX WXYZ
ĐỖ TRỌNG TUẤN
MỘT PHƯƠNG PHÁP ĐẢM BẢO CHẤT LƯỢNG
CHO DỊCH VỤ TRUYỀN THÔNG ĐA HƯỚNG
THỜI GIAN THỰC QUA MẠNG IP
Chuyên ngành: Thông tin vô tuyến, phát thanh và
vô tuyến truyền hình
Mã số: 2.07.02
LUẬN ÁN TIẾN SĨ KỸ THUẬT
CÁN BỘ HƯỚNG DẪN KHOA HỌC
PGS.TS. PHẠM MINH HÀ
Hà Nội - 2006
LỜI CAM ĐOAN
Tôi xin cam đoan luận án này là công trình nghiên cứu của chính bản thân. Các kết
quả nghiên cứu trong lu
139 trang |
Chia sẻ: huyen82 | Lượt xem: 1624 | Lượt tải: 1
Tóm tắt tài liệu Một phương pháp đảm bảo chất lượng cho dịch vụ truyền thông đa hướng thời gian thực qua mạng IP, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ận án là trung thực và chưa được công bố trong bất kỳ công
trình nào khác.
Tác giả luận án
Đỗ Trọng Tuấn
LỜI CẢM ƠN
Tôi xin bày tỏ lòng biết ơn chân thành tới PGS.TS. Phạm Minh Hà - người đã dìu
dắt và giúp đỡ tôi trong cả lĩnh vực nghiên cứu của luận án cũng như trong công
tác chuyên môn và cuộc sống.
Tôi xin chân thành cảm ơn các Thầy Cô trong Khoa Điện tử Viễn thông đã giúp đỡ
tôi trong quá trình học tập, công tác và nghiên cứu từ khi tôi là sinh viên, rồi là
thành viên của khoa Điện tử Viễn thông – Trường Đại học Bách Khoa Hà Nội.
Tôi xin chân thành cảm ơn Trung tâm Đào tạo & Bồi dưỡng Sau Đại học, Phòng
Quản lý Khoa học & CGCN, Trung tâm Thông tin & Mạng - Trường ĐHBK Hà
Nội, Trung tâm Âm thanh, Trung tâm ứng dụng công nghệ phát thanh - Đài tiếng
nói Việt Nam đã tạo điều kiện giúp đỡ tôi trong quá trình nghiên cứu và hoàn
thành luận án.
Tôi xin cảm ơn sự giúp đỡ nhiệt tình và những góp ý quý báu của các anh chị và
các bạn đồng nghiệp tại phòng thí nghiệm kỹ thuật thông tin: TS. Nguyễn Hữu
Thanh, ThS. Đỗ Trọng Tú, TS. Nguyễn Văn Đức, ThS. Nguyễn Quốc Khương,
TS. Trần Thị Ngọc Lan, TS. Nguyễn Hữu Trung. Tôi xin chân thành cảm ơn thầy
Phạm Văn Tuân đã chỉ dẫn và giới thiệu giúp tôi liên hệ thực tế, cảm ơn anh
Nguyễn Năng Khang đã nhiệt tình giúp tôi tìm hiểu cấu hình thực tế hệ thống kỹ
thuật của Đài Tiếng Nói Việt Nam.
Tôi xin chân thành cảm ơn giáo sư Tomio Takara và các thành viên phòng thí
nghiệm xử lý tiếng nói, Bộ môn Kỹ thuật Thông tin, Đại học Ryukyus đã tạo điều
kiện giúp đỡ tôi triển khai mô hình thực nghiệm giữa ĐHBK Hà Nội và ĐH
Ryukyus, Nhật Bản. Xin cảm ơn người bạn Pin Hu đang nghiên cứu tại Đại học
Plymouth-Anh quốc, về nhiệt tình khoa học và các số liệu mà anh đã cung cấp.
Tôi đặc biệt cảm ơn Gia đình, Thầy tôi và Người bạn thân thiết đã động viên tôi
trong những lúc khó khăn.
NCS. Đỗ Trọng Tuấn
MỤC LỤC
Lời cam đoan
Lời Cảm ơn
Mục lục
Danh mục các từ khóa, các từ viết tắt
Danh sách các hình vẽ, các bảng và kí hiệu toán học
MỞ ĐẦU
1. Đặt vấn đề .....................................................................................................1
2. Đối tượng và mục tiêu của luận án ............................................................3
3. Tình hình nghiên cứu trên thế giới và trong nước ...................................3
4. Hướng tiếp cận.............................................................................................6
5. Kết cấu của luận án .....................................................................................7
CHƯƠNG 1: TỔNG QUAN VỀ TRUYỀN THÔNG ĐA HƯỚNG VÀ
MÔ HÌNH HỆ THỐNG RoIP
1.1 Các phương thức truyền thông qua Internet ........................................8
1.2 Truyền thông đa hướng qua mạng IP .................................................10
1.2.1 Khái niệm.....................................................................................11
1.2.2 Đặc điểm......................................................................................11
1.2.3 Nguyên lý truyền thông đa hướng qua mạng IP..........................12
1.2.4 IP multicast ..................................................................................15
1.3 Truy nhập vô tuyến theo chuẩn IEEE 802.11.....................................19
1.3.1 Phổ tần số vô tuyến......................................................................19
1.3.2 Cấu trúc giao thức IEEE 802.11..................................................20
1.3.3 Các cấu hình mạng truy nhập vô tuyến .......................................23
1.3.4 Các khu vực dịch vụ mở rộng......................................................24
1.3.5 Hệ thống phân tán........................................................................26
1.4 Mô hình hệ thống RoIP ............................................................ 26
1.4.1 Khái niệm ........................................................................................ 26
1.4.2 Những lợi ích và cản trở công nghệ.................................................27
1.4.3 Mô hình hệ thống RoIP hiện tại của đài tiếng nói Việt Nam. ......... 28
1.4.4 Mô hình hệ thống RoIP đề xuất....................................................... 31
1.5 Kết luận chương 1..................................................................... 39
CHƯƠNG 2: PHỎNG TẠO THAM SỐ CHẤT LƯỢNG CỦA TÍN HIỆU
PHÁT THANH KHI TRUYỀN TẢI QUA MẠNG IP
2.1 Các tham số chất lượng mạng ...............................................................40
2.1.1 Giới thiệu.........................................................................................40
2.1.2 Tổn thất gói tin ................................................................................41
2.1.3 Trễ và biến động trễ ........................................................................44
2.2 Đề xuất mô hình phỏng tạo tham số QoS qua mạng IP.....................48
2.2.1 Kiến trúc mô hình............................................................................48
2.2.2 Phỏng tạo tham số mạng IP đa hướng ............................................50
2.3 Kết quả triển khai thực nghiệm ...........................................................51
2.4 Kết luận chương 2..................................................................................58
CHƯƠNG 3: ĐẢM BẢO CHẤT LƯỢNG TÍN HIỆU TẠI ĐẦU THU
TRUYỀN TẢI QUA MẠNG IP THEO THỜI GIAN THỰC
3.1 Vấn đề tái tạo tín hiệu phát thanh tại đầu thu....................................60
3.2 Thuật toán ước đoán trễ tái tạo............................................................61
3.2.1 Thuật toán trung bình hàm mũ Exp-Avg .......................................61
3.2.2 Thuật toán trung bình hàm mũ nhanh F-Exp-Avg ........................63
3.2.3 Thuật toán trễ tối thiểu Min-D........................................................63
3.2.4 Thuật toán phát hiện đột biến Spike-Det .......................................63
3.2.5 Thuật toán cửa sổ ...........................................................................64
3.3 Đánh giá chất lượng tín hiệu tại đầu thu .............................................66
3.3.1 Phương pháp đánh giá chất lượng chủ quan...................................68
3.3.2 Phương pháp đánh giá chất lượng khách quan...............................69
3.4 Giải pháp đảm bảo chất lượng truyền tải tín hiệu phát thanh
qua mạng IP................................................................................................. 74
3.4.1 Đặt vấn đề. ......................................................................................74
3.4.2 Thiết lập thông số nguồn. ...............................................................74
3.4.1 Giải pháp đảm bảo chất lượng tín hiệu tại đầu thu.........................77
3.4.2 Cấu hình thực nghiệm và kết quả....................................................81
3.5 Kết luận chương 3...................................................................................91
Kết luận của luận án...........................................................................................92
Hướng phát triển của đề tài...............................................................................93
Danh mục công trình của tác giả.
Tài liệu tham khảo.
Các phụ lục của luận án.
Từ khóa:
Real-time service, IP multicast, RoIP, VoIP, QoS,
WLAN IEEE 802.11, Heterogeneous Networks.
DANH MỤC CÁC TỪ VIẾT TẮT
Từ viết tắt Tiếng Anh Nghĩa Tiếng Việt
ACR Absolute Category Rating Đánh giá phân loại tuyệt đối
ADPCM Adaptive Diffirential PCM Điều xung mã vi sai thích ứng
AN Access Network Mạng truy nhập
AP Access Point Điểm truy nhập vô tuyến
ATR Audio Tape Recorder Máy ghi băng âm thanh
BSA Basic Service Area Vùng dịch vụ cơ bản
BSA Basic Service Area Vùng dịch vụ cơ bản
BSS Infrastructure Basic Service Set Cấu hình mạng phụ thuộc
CODEC Coder / Decoder Bộ mã hóa / giải mã
DAT Digital Audio Tape Băng âm thanh số
DAW Digital Audio WorkStation Máy trạm xử lý âm thanh số
DCR Degradation Category Rating Đánh giá phân loại theo mức suy giảm chất lượng
DMOS Degradation MOS Điểm đánh giá suy giảm chất lượng
DSL Digital Subscriber Line Đường dây thuê bao số
DSSS Direct Sequence Spectrum Spread Trải phổ dãy trực tiếp
eRTP enhanced RTP packet Gói RTP cải tiến
ESS Extended Service Set Vùng dịch vụ mở rộng
FCC Frequency Commission Tổ chức quản lý tần số
FEC Forward Error Correction Sửa lỗi trước
FHSS Frequency Hoping Spectrum Spread Trải phổ nhảy tần
GOB Good Or Better Thông số đánh giá độ chất lượng tốt
IANA Internet Address Number Asignment
Tổ chức cấp phát địa chỉ
Internet
IBSS Indepentent Basic Service Set Cấu hình mạng độc lập
IETF Internet Enginering Task Force Nhóm đặc trách kỹ thuật Internet
IGMP Internet Group Management Protocol
Giao thức quản lý nhóm
mạng Internet
IGMP Internet Group Management Protocol
Giao thức quản nhóm
Internet
IP Internet Protocol Giao thức mạng Internet
IPv4 Internet Protocol version 4 Giao thức IP phiên bản 4
ITU International Telecommunication Union Tổ chức viễn thông quốc tế
iVoVGateway internet Voice of VietNam Gateway
Cổng chuyển đổi giao thức
truyền tải tín hiệu phát thanh
qua mạng IP
iVoVReceiver internet Voice of VietNam Receiver
Máy thu tín hiệu phát thanh
qua mạng IP
iVoVStation internet Voice of VietNam Station Máy chủ phát thanh qua mạng IP
LLC Logical Link Control Điều khiển liên kết dữ liệu logic
LPC Linear Predictive Encoding Mã hoá dự đoán tuyến tính
LPC Linear Predictive Coding Mã hóa dự đoán tuyến tính
LR Loss Rate Tỷ lệ tổn thất
MAC Media Access Control Điều khiển truy nhập phương tiện truyền thông
MBONE Multicast BackBone Mạng đường trục hỗ trợ multicast
MCR Master Control Room Phòng tổng khống chế
MOS Mean Opinion Score Điểm đánh giá chất lượng
MRouter Multicast Router Bộ định tuyến hỗ trợ multicast
OFDM Orthogonal Frequency Division Multiplexing Ghép kênh đa sóng mang
OSI Open Systems Interconnection Mô hình liên kết các hệ thống mở
PAMS Perceptual Analysis Measurement System
Hệ thống đo đạc phân tích
cảm nhận
PCM Pulse Code Modulation Điều xung mã
PESQ Perceptual Evaluation of Speech Quality
Đánh giá cảm nhận chất
lượng tiếng nói
PLC Packet Loss Concealment Bù tổn thất gói tin
POW Poor or Worse Thông số đánh giá độ chất lượng tồi
PQoS Perceived Quality of Service Chất lượng dịch vụ thu nhận
PSQM Perceptual Speech Quality Measurement
Đo đạc chất lượng tiếng nói
cảm nhận
QoS Quality of Service Chất lượng dịch vụ
RECAD
Radio source total Eneregy
Calculation and Activity
Detection
Tính toán tổng năng lượng tín
hiệu phát thanh nguồn và
phát hiện khoảng tích cực tín
hiệu
RFC Request For Comment Khuyến nghị
RoIP Radio over IP Truyền tải tín hiệu mang tin tức phát thanh qua mạng IP
RTCP RTP Control Protocol Giao thức điều khiển thời gian thực
RTP Real Time Transport Protocol Giao thức truyền tải thời gian thực
SDH Synchronous Digital Hieracy Phân cấp số đồng bộ
SIP Session Initial Protocol Giao thức khởi tạo phiên
SNR Signal - to - Noise Ratio Tỷ số tín hiệu trên tạp âm
SSNR Segmentation Signal - to - Noise Ratio
Tỷ số tín hiệu trên tạp âm
phân đoạn
STA Station Máy trạm di động
TCP Transmission Control Protocol
Giao thức điều khiển truyền
thông hướng kết nối qua
mạng IP
TESF Total Energy of Source Frame Tổng mức năng lượng khung tín hiệu nguồn
TTL Time To Live Thời gian sống của gói tin
UDP User Datagram Protocol
Giao thức điều khiển truyền
thông không hướng kết nối
qua mạng IP
UHF Untra High Frequency Tần số siêu cao
URouter Unicast Router Bộ định tuyến hỗ trợ truyền thông đơn hướng
VLAN Virtual LAN Mạng LAN ảo
VoIP Voice over IP Truyền thoại sử dụng giao thức IP
WLAN Wireless Local Area Network Mạng máy tính cục bộ không dây
DANH SÁCH HÌNH VẼ
Hình 1. 1: Mô hình mạng tích hợp phân cấp hỗn hợp trên nền IP ........................ 8
Hình 1. 2: Mô hình truyền tin đơn hướng ............................................................ 9
Hình 1. 3: Mô hình truyền tin quảng bá. ............................................................... 9
Hình 1. 4: Mô hình truyền tin đa hướng.............................................................. 10
Hình 1. 5: Tiến trình phát triển của MBONE..................................................... 11
Hình 1. 6: Cấu trúc hệ thống truyền thông đa hướng qua mạng IP..................... 13
Hình 1. 7: Cơ chế đường hầm liên kết các ốc đảo multicast ............................... 13
Hình 1. 8: Đóng gói IP multicast theo cơ chế tunneling ..................................... 14
Hình 1. 9: Cơ chế đường hầm liên kết các MRouter.......................................... 14
Hình 1. 10: Mô hình kiến trúc hệ thống IP Multicast......................................... 15
Hình 1. 11: Địa chỉ IP Multicast.......................................................................... 17
Hình 1. 12: Cấu trúc địa chỉ MAC cho IP Multicast/Unicast............................. 18
Hình 1. 13: Cơ chế ánh xạ địa chỉ IP Multicast và địa chỉ MAC....................... 19
Hình 1. 14: Họ IEEE 802 và mối liên hệ với mô hình OSI................................ 20
Hình 1. 15: Liên kết lớp MAC và lớp vật lý thông qua PLCP.......................... 22
Hình 1. 16: Các thành phần của mạng WLAN 802.11....................................... 22
Hình 1. 17: Cấu hình BSS và IBSS .................................................................... 23
Hình 1. 18: Tập dịch vụ mở rộng ESS ............................................................... 25
Hình 1. 19: Hệ thống phân tán trong AP 802.11 .............................................. 26
Hình 1. 22: Hệ thống VoIP truyền thống [19]..................................................... 31
Hình 1. 23: Các giao thức và chuẩn cho dịch vụ RoIP....................................... 32
Hình 1. 24: Tiêu đề gói RTP ............................................................................ 32
Hình 1. 25: Mô hình lý thuyết hệ thống truyền tín hiệu phát thanh qua mạng IP 36
Hình 1.26: Cấu trúc giao thức hệ thống RoIP đề xuất.........................................37
Hình 1. 27: Mô hình triển khai thực nghiệm hệ thống RoIP đề xuất..................38
Hình 2. 1: Mối quan hệ giữa các yếu tố ảnh hưởng đến QoS [36]...................... 40
Hình 2. 3: Mô hình Gilbert 2 trạng thái............................................................... 42
Hình 2. 4: Mô hình truyền tải gói tin một chiều ..................................................45
Hình 2. 5: Mô hình truyền tải gói tin hai chiều .................................................. 47
Hình 2. 6: Kiến trúc mô hình phỏng tạo tham số mạng .................................... 49
Hình 2. 8: Mô hình lý thuyết phỏng tạo tham số mạng IP đa hướng ................ 50
Hình 2. 9: Xử lý gói tin tại phía thu.................................................................... 51
Hình 2. 10: Cấu hình thực nghiệm phỏng tạo tham số mạng IP ........................ 51
Hình 2. 11: Chức năng theo dõi trễ mạng trực tuyến theo thời gian thực của chương
trình phỏng tạo tham số mạng ............................................................................. 52
Hình 2. 17: Tỷ lệ tổn thất gói tin theo thời gian - phương thức phỏng tạo trực tuyến.
............................................................................................................................. 58
Hình 2. 18: Tín hiệu thu khi xảy ra tổn thất gói tin.............................................58
Hình 3. 1: Các thông số thời gian của gói tin thứ i.............................................. 60
Hình 3. 2: Giải thuật thực hiện thuật toán Exp-Avg và F- Exp-Avg [6]............. 62
Hình 3. 3: Thuật toán Spike-Det [6] .................................................................... 64
Hình 3. 4: Thuật toán cửa sổ [6] .......................................................................... 65
Hình 3. 5: Quan hệ giữa khoảng tích cực tín hiệu và khoảng lặng ..................... 66
Hình 3. 6: Phân cấp chất lượng tín hiệu phát thanh [3]....................................... 67
Hình 3. 7: Cấu trúc thực hiện thuật toán PESQ.................................................. 70
Hình 3. 8: Mô hình thiết lập thông số nguồn...................................................... 76
Hình 3. 9: Thuật toán xác định tổng mức năng lượng tín hiệu nguồn tại phía phát
............................................................................................................................. 78
Hình 3. 10: Mô hình thực hiện thuật toán xác định tổng mức năng lượng tín hiệu
nguồn tại phía phát............................................................................................... 79
Hình 3. 11: Cấu trúc gói tin eRTP...................................................................... 79
Hình 3. 12: Thuật toán xác định tổng năng lượng tín hiệu phân đoạn tại phía thu80
Hình 3. 13: Mô hình xác định tổng mức năng lượng phân đoạn tại phía thu..... 81
Hình 3. 15: Chương trình phát (a)-thu (b) tín hiệu phát thanh qua mạng IP......... 84
Hình 3.16: Mô hình thực nghiệm 1 chiều giữa Đại học Bách Khoa Hà Nội và Đại học
Ryukyu - Okinawa, Nhật bản.......................................................................................85
Hình 3.17: Mô hình thực nghiệm 2 chiều giữa Đại học Bách Khoa Hà Nội và Đại học
Ryukyu - Okinawa, Nhật bản.......................................................................................86
Hình 3.18: Tham số trễ mạng đo thực tế phân bố theo thời gian - đột biến trễ có chu
kỳ [ thời điểm đo: 21:37:46 giờ ngày 14-12-2005 ] .................................................87
Hình 3.19: Tham số trễ mạng đo thực tế phân bố theo trị số - đột biến trễ có chu kỳ
[ thời điểm đo: 21:37:46 giờ ngày 14-12-2005 ] .........................................................88
Hình 3.20: Tham số trễ mạng đo thực tế phân bố theo thời gian - đột biến trễ không
có chu kỳ [ thời điểm đo: 20:57:29 giờ ngày 16-12-2005 ] ........................................ 89
Hình 3.21: Tham số trễ mạng đo thực tế phân bố theo trị số - đột biến trễ không có
chu kỳ [ thời điểm đo: 20:57:29 giờ ngày 16-12-2005 ] ............................................ 90
DANH SÁCH CÁC BẢNG
Bảng 1.1: Các băng tần vô tuyến ...................................................................................20
Bảng 1.2: Chỉ tiêu kỹ thuật các chuẩn IEEE 801.11 .....................................................21
Bảng 1.3: Một số thông số chuẩn mã hóa tín hiệu ........................................................34
Bảng 2.1: Tỷ lệ tổn thất gói tin thiết lập và đo đạc theo phương thức phỏng tạo
trực tuyến ................................................................................................................58
Bảng 3.1: Thang đánh giá chất lượng theo phương pháp ACR .....................................67
Bảng 3.2: Thang đánh giá chất lượng theo phương pháp DCR ....................................68
Bảng 3.3: Các thông số chuyển đổi nguồn tín hiệu phát thanh .....................................74
Bảng 3.4: Kết quả đo đạc tham số chất lượng tại đầu thu khi thay đổi hệ số phát lặp
gói tin tại đầu phát qua kết nối giữa Đại học Bách Khoa Hà Nội và ĐH
Ruykyus........................................................................................................................91
DANH SÁCH CÁC KÍ HIỆU TOÁN HỌC
X : Biến ngẫu nhiên nhận giá trị 0 hoặc 1.
iL : Trạng thái tổn thất của gói tin thứ i.
iP : Xác xuất tổn thất của gói tin thứ i.
P% : Xác xuất tổn thất gói tin ước đoán.
totL : Tổng số gói tin bị tổn thất.
N : Tổng số gói tin được truyền tải.
0P : Xác xuất gói tin không bị tổn thất.
1P : Xác xuất gói tin bị tổn thất.
p : Xác xuất gói tin bị tổn thất khi gói tin kề trước không bị tổn thất.
q : Xác xuất gói tin bị tổn thất khi gói tin kề trước bị tổn thất.
kp : Xác xuất xảy ra tổn thất gói tin theo cụm có độ dài k gói tin liên tiếp.
iO : Cụm tổn thất gói tin gồm i gói tin liên tiếp, i = 1,2 . . . n.
iD : Trễ mạng của gói tin thứ i.
iJ : Biến động trễ của gói tin thứ i.
di : Khoảng cách vật lý giữa bộ định tuyến ( i -1 ) và ( i )
c : Tốc độ truyền tín hiệu.
bi : Băng thông của tuyến kết nối i
s, sres : Kích thước gói tin theo hướng thuận và hướng ngược.
fi : Trễ chuyển tiếp gói tin theo hướng thuận
f'i-1: Trễ chuyển tiếp gói tin theo hướng ngược.
progt∆ : Thời gian truyền dẫn tín hiệu.
transt∆ : Trễ truyền tải gói tin.
OTTt∆ : Trễ hành trình một chiều gói tin
RTTt∆ : Trễ hành trình hai chiều gói tin
it : Thời điểm phát từ đầu phát của gói tin thứ i.
ir : Thời điểm đến đầu thu của gói tin thứ i.
ip : Thời điểm tái tạo gói tin thứ i.
in : Trễ của gói tin thứ i gây nên bởi mạng.
vi : Biến động trễ mạng của gói tin thứ i
bi : Thời gian trễ của gói tin thứ i lưu giữ trong bộ đệm tái tạo.
di : trễ tổng quát của gói tin thứ i (trễ từ đầu cuối đến đầu cuối).
ip
)
: Thời điểm tái tạo gói tin thứ i
id
)
: Trễ mạng trung bình của gói tin thứ i
iv
)
: Biến động trễ mạng trung bình của gói tin thứ i
α : Hệ số tái tạo thích ứng
- với thuật toán trung bình hàm mũ Exp-Avg α = 0,998002
- với thuật toán phát hiện đột biến Spike-Det α = 0.875
β = 0.750 - Hệ số tái tạo thích ứng của thuật toán F-Exp-Avg
R: Hệ số đánh giá chất lượng theo đường truyền.
Ro = 93,2 - giá trị tối ưu
Ie: Hệ số ảnh hưởng của thiết bị và mô tả cho ảnh hưởng cho tính phi tuyến của bộ
mã hóa/giải mã và độ tổn thất.
Id: Thông số ảnh hưởng của trễ.
Is: Yếu tố ảnh hưởng tổng hợp của vấn đề đồng bộ tín hiệu.
A: Hệ số kỳ vọng cho phép bù các yếu tố ảnh hưởng khi tồn tại các yếu tố thuận
lợi trong việc truy nhập của người dùng.
m: Chỉ số mẫu tín hiệu trong khung đang xét
[ ]tnx m : Giá trị mẫu tín hiệu của nguồn phát.
[ ]rnx m : Giá trị của mẫu tín hiệu nhận được phía thu.
ES(n): Năng lượng tín hiệu của khung n gồm M mẫu tín hiệu.
EN(n): Năng lượng nhiễu tổng cộng của khung n gồm M mẫu tín hiệu.
t∆ : Chu kỳ phát phát gói tin [ms]
sz: Độ dài tải tin [ Bytes ]
fs : Tần số lấy mẫu [ Hz]
w: Số bít mã hóa cho một mẫu tín hiệu
ch: Số kênh truyền tải tín hiệu phát thanh.
ts : Ngưỡng cắt mức tín hiệu phát thanh tích cực.
t
Fisum : Tổng mức năng lượng tín hiệu phát của khung iF
r
Fisum : Tổng mức năng lượng tín hiệu thu của khung iF
i
Fis : Mức tín hiệu mẫu i của khung iF
( )iFie s : Năng lượng tín hiệu mẫu i của khung iF
sN : Tổng số mẫu tín hiệu của khung iF
MỞ ĐẦU
1. Đặt vấn đề
Hiện nay, phát thanh quảng bá qua môi trường vô tuyến vẫn là một kênh thông tin
hữu ích phục vụ cuộc sống của con người. Cùng với sự phát triển của công nghệ tin
học viễn thông, đặc biệt là sự gia tăng nhanh chóng của Internet cả về hạ tầng mạng
và nhu cầu phát triển các dịch vụ mới như mua sắm trực tuyến, giải trí qua mạng . .
công nghệ phát thanh cũng có những chuyển biến theo xu hướng hình thành một
phương thức truyền tải mới, lấy Internet làm công cụ quảng bá tín hiệu phát thanh
tới bạn nghe đài.
Hình 1: Phân bố người dùng tại Hoa Kỳ sử dụng dịch vụ quảng bá
phát thanh - truyền hình qua Inetenet [58].
Hiện nay, hầu hết các đài phát thanh quốc gia đều có website riêng và thực hiện
dịch vụ phát thanh qua mạng Internet. Theo một số thống kê gần đây [58] tại thời
điểm quý I năm 2005, hàng tháng ở Mỹ có khoảng 55 triệu người dùng Internet
truy nhập dịch vụ nghe đài hoặc xem truyền hình trực tuyến như thể hiện trên hình
1. Trong đó số lượng người dùng nghe đài qua mạng Internet thống kê theo tháng ≈
37 triệu người và theo tuần ≈ 20 triệu người.
Các ràng buộc về tính đáp ứng thời gian và độ tin cậy của ứng dụng thời gian thực
kéo theo yêu cầu phát triển cấu trúc giao thức mới. Phương truyền thông đa hướng
( multicast ) đang được tập trung nghiên cứu kết hợp với giao thức truyền tải thời
gian thực RTP / RTCP nhằm hình thành các cơ chế đảm bảo chất lượng dịch vụ
cho các ứng dụng thời gian thực qua đó hạn chế nhược điểm của truyền thông đơn
hướng cũng như đặc tính không đảm bảo chất lượng dịch vụ của môi trường
Internet hiện tại. Các ứng dụng mới có yêu cầu chất lượng dịch vụ nghiêm ngặt hơn
đang được quan tâm nghiên cứu cả về phương diện xây dựng mô hình hệ thống
truyền tải cũng như cơ chế đảm bảo chất lượng thu nhận tín hiệu.
Với đối tượng nghiên cứu là mô hình hệ thống và chất lượng dịch vụ truyền tải tín
hiệu phát thanh thời gian thực qua mạng IP, luận án tập trung nghiên cứu đề xuất
và xây dựng mô hình ứng dụng RoIP ( Radio over IP ) thực hiện truyền tải tín hiệu
phát thanh thời gian thực qua mạng IP kết hợp trên hai phương diện kết hợp truyền
thông đơn hướng ( unicast ) với truyền thông đa hướng ( multicast ) và kết hợp
môi trường truyền tải hữu tuyến với truy nhập vô tuyến theo chuẩn IEEE 802.11.
Nghiên cứu các thuật toán điều khiển lịch trình bộ đệm tái tạo thích ứng và ảnh
hưởng của mạng đối với chất lượng tín hiệu phát thanh truyền tải qua mạng IP.
Trên cơ sở đó, đề xuất phương pháp đảm bảo chất lượng dịch vụ RoIP sử dụng
thuật toán điều khiển tham số nguồn thích ứng theo tình trạng hệ thống nhằm đảm
bảo chất lượng tín hiệu tại đầu thu. Thiết lập mô hình đánh giá các tham số chất
lượng dịch vụ QoS và đề xuất mô hình đo đạc thông số chất lượng tín hiệu phát
thanh tại đầu thu qua mạng IP theo thời gian thực.
2. Đối tượng và mục đích nghiên cứu của luận án
Xuất phát từ các vấn đề nêu trên, luận án xác định mô hình hệ thống và chất lượng
dịch vụ truyền tải tín hiệu phát thanh thời gian thực qua mạng IP là đối tượng
nghiên cứu của luận án với những vấn đề tập trung chủ yếu như sau:
Nghiên cứu đề xuất và xây dựng mô hình ứng dụng truyền tải tín hiệu phát
thanh thời gian thực qua mạng IP kết hợp trên hai phương diện kết hợp truyền
thông đơn hướng (unicast) với truyền thông đa hướng (multicast) và môi trường
truyền tải hữu tuyến với mạng truy nhập vô tuyến theo chuẩn IEEE 802.11.
Nghiên cứu ảnh hưởng của các tham số mạng đến chất lượng tín hiệu phát
thanh truyền tải qua mạng IP. Đề xuất và xây dựng công cụ phỏng tạo mạng phục
vụ kiểm chứng mô hình và phương pháp đảm bảo chất lượng theo thời gian thực.
Nghiên cứu các phương thức đánh giá chất lượng tín hiệu truyền tải qua
mạng IP. Đề xuất mô hình đo đạc đánh giá chất lượng tín hiệu phát thanh tại đầu
thu theo thời gian thực. Trên cơ sở đó, đề xuất phương pháp đảm bảo chất lượng
dịch vụ RoIP sử dụng thuật toán điều khiển thông số nguồn thích ứng theo tình
trạng hệ thống nhằm đảm bảo chất lượng tín hiệu thu.
3. Tình hình nghiên cứu trên thế giới và trong nước
Từ những năm 1980, vấn đề truyền tải tín hiệu tiếng nói theo phương thức chuyển
mạch gói trong phạm vi mạng cục bộ đã được đề cập nghiên cứu [8]. Tuy vậy,
trong thời gian gần đây nhiều vấn đề như cơ chế đảm bảo chất lượng dịch vụ,
phương thức thỏa hiệp giữa độ tổn thất và biến động trễ, ghép nguồn tín hiệu tiếng
nói và số liệu ... vẫn là những chủ đề nghiên cứu mang tính thời sự. Theo phương
diện mạng IP, dịch vụ truyền thông tín hiệu phát thanh qua mạng Internet được
hiểu là truyền tải tín hiệu phát thanh qua giao thức IP và viết tắt là RoIP. Tổ chức
tiêu chuẩn viễn thông thế giới ITU-T đã đưa ra các chuẩn mã hóa tín hiệu như
G.711, G.723.1 và G.729 nhằm nén tốc độ số liệu có thể áp dụng với tín hiệu tiếng
nói xuống từ 5,33 kbps đến 64 kbps. Bên cạnh đó , các chuẩn nén mới cũng được
hình thành nhằm cải thiện chất lượng dịch vụ cũng như đa dạng hóa các thuộc tính
của nguồn tín hiệu phát thanh như chuẩn mã hóa / giải mã speex chuyên dùng cho
nguồn tiếng nói và vorbis [60] chuyên dùng cho âm thanh hoặc âm nhạc. Dữ liệu
phát thanh được đóng gói theo chuẩn giao thức thời gian thực RTP ( Real-time
Transport Protocol ) hình thành luồng gói tin RoIP.
Chất lượng tín hiệu phát thanh thu được khi truyền qua mạng IP là vấn đề quan
trọng đối với ứng dụng RoIP. Các mạng IP không được thiết kế phục vụ các dịch
vụ thời gian thực (real-time applications) do đó các yếu tố mạng như tỷ lệ tổn thất
gói (Packet Loss), trễ gói ( Packet Delay) và biến động trễ (Packet Delay Variation
/ Jitter) có ảnh hưởng rất khắt khe đến chất lượng tín hiệu phát thanh. Xét về khía
cạnh tham số mạng, thông số trễ và tổn thất gói là hai đặc tính quan trọng nhất ảnh
hưởng đến chất lượng hệ thống RoIP. Nhằm duy trì chất lượng truyền thông tín
hiệu phát thanh ở mức tốt, các yêu cầu chất lượng dịch vụ được đưa ra về tỷ lệ tổn
thất, độ trễ và độ biến động trễ. Trước hết tỷ lệ tổn thất cần được đảm bảo nhằm đạt
được chất lượng tín hiệu phát thanh tại đầu thu có thể hiểu được và có độ trung
thực cao. Tuy nhiên, giá trị tỷ lệ tổn thất gói tin nhất định có thể vẫn được chấp
nhận, đặc biệt đối với các phương thức giải mã sử dụng kỹ thuật bù/sửa lỗi nhằm
thay thế gói bị tổn thất. Trong trường hợp đó, tỷ lệ tổn thất có thể lên tới 10% [38].
Bên cạnh đó, để duy trì tính thời gian thực và tương tác, độ trễ từ đầu cuối đến đầu
cuối phải được đảm bảo dưới 150 ms hoặc thấp hơn đối với các ứng dụng có tính
tương tác cao [3]. Chuẩn G.114 của ITU-T [1] khuyến nghị trễ từ đầu cuối đến đầu
cuối tối đa dưới 150 ms sẽ cho chất lượng tốt, phạm vi trễ từ 150-400 ms có thể
chấp nhận được. Một tham số khác ảnh hưởng nhiều đến chất lượng truyền thông
tín hiệu phát thanh đó là độ biến động trễ. Biến động trễ nhỏ và loại bỏ biến động là
yêu cầu để tái tạo được tín hiệu phát thanh không bị gián đoạn nhằm đảm bảo chất
lượng tín hiệu phát thanh tại đầu thu. Đối với dịch vụ thời gian thực, biến động trễ
là một yếu tố quan trọng, hiện đang được tập trung nghiên cứu trong thời gian gần
đây nhằm giải quyết bài toán đảm bảo chất lượng dịch vụ. Đột biến trễ (Delay
Spike) là yếu tố chủ yếu gây n._.ên biến động trễ và có thể ảnh hưởng rất lớn đến chất
lượng tín hiệu phát thanh tại đầu thu. Các nghiên cứu trước đây [5],[6][48] đều cho
thấy thực tế tồn tại của đột biến trễ trong trễ qua mạng Internet. Đột biến trễ được
cấu thành bởi sự tăng đột ngột của trễ mạng trong một khoảng thời gian nhất định
kéo theo một chuỗi các gói tin được thu nhận liên tiếp thành từng cụm. Các nghiên
cứu trên cũng chỉ ra đột biến trễ có thể ảnh hưởng rất nhiều đến chất lượng tín hiệu
tại đầu thu.
Hiện nay, kỹ thuật sử dụng bộ đệm tái tạo được đề cập là một trong những cơ cấu
quan trọng để đáp ứng tính thời gian thực và tương tác của dịch vụ thời gian thực
qua mạng IP [3][5][6][7][9]. Bộ đệm tái tạo lưu giữ tạm thời và tạo lịch trình cho
thời điểm tái tạo tín hiệu phát thanh thu được từ các gói RTP/UDP/IP. Cơ chế tạo
lịch trình có thể được thực hiện theo phương thức cố định và phương thức thích
ứng. Giữa hai phương thức trên thì phương thức tạo lịch trình thích ứng linh hoạt
hơn trong các trường hợp tình trạng mạng thay đổi theo thời gian. Khi đó lịch trình
tái tạo tín hiệu được điều khiển theo các thuật toán điều khiển bộ đệm tái tạo thích
ứng với tình trạng mạng IP.
Các thuật toán hiện tại cho một số kết quả tối ưu nhất định trong việc thỏa hiệp
giữa độ trễ và độ tổn thất gói tin nhằm đạt được chất lượng tín hiệu tại đầu thu tốt
nhất. Tuy nhiên, chất lượng của các thuật toán bộ đệm tái tạo hiện tại chỉ được xét
trong một số tình trạng mạng xác định mà chưa quan tâm đến việc thích ứng tham
số nguồn với tình trạng mạng và kết hợp với đánh giá chất lượng tín hiệu phát
thanh thu được theo thời gian thực.
Việc đánh giá chất lượng tín hiệu phát thanh thu được có thể thông qua hệ số điểm
đánh giá trung bình MOS (Mean Opinion Score) và được thực hiện bằng phương
pháp đánh giá khách quan (Subjective Tests) hoặc đo đạc chủ quan (Objective
Measurement Methods). Đối với phương thức đánh giá khách quan, giá trị MOS có
thể nhận được thông qua khảo sát ý kiến người nghe về chất lượng của tín hiệu phát
thanh thu được. Phương thức này liên quan trực tiếp đến quan điểm của người đánh
giá nhưng chi phí cao và đòi hỏi nhiều thời gian. Phương pháp đo đạc chủ quan sử
dụng các thuật toán nhằm đánh giá chất lượng tín hiệu phát thanh thu được qua
mạng IP để xác định thông số đánh giá chất lượng. Phương thức này có thể được
chủ động tiến hành tại thời điểm bất kỳ và có thể lặp lại nhiều lần trong các khoảng
thời gian khác nhau, không đòi hỏi chi phí tiến hành đánh giá như ở phương thức
chủ quan. Độ tin cậy của kết quả đánh giá khách quan phụ thuộc vào nhiều yếu tố
và khó kiểm soát như số lượng người đánh giá, điều kiện môi trường đánh giá, chất
lượng thiết bị tái tạo và mang tính ổn định không cao. Đồng thời đánh giá khách
quan đòi hỏi nhiều thời gian cũng như chi phí tiến hành đánh giá. Tuy nhiên,
phương pháp này lại cho kết quả đánh giá gần với cảm nhận thực tế của con người.
Do đó việc kết hợp đánh giá giữa các phương pháp chủ quan và các mô hình đánh
giá khách quan cần được nghiên cứu áp dụng để đánh giá chất lượng tín hiệu phát
thanh tại đầu thu.
Hầu hết các nghiên cứu gần đây nhằm đảm bảo chất lượng tín hiệu tiếng nói/âm
thanh truyền tải qua mạng IP theo thời gian thực đều tập trung vào giải quyết theo
hai hướng: Thứ nhất là trên cơ sở dành sẵn tài nguyên mạng [34]. Hướng này phụ
thuộc vào quy hoạch mạng của nhà cung cấp dịch vụ Internet và khó kiểm soát.
Thứ hai là hướng xử lý tối ưu lịch trình tái tạo tín hiệu tại bộ đệm tái tạo như đã đề
cập ở trên. Hướng này có ưu điểm là được thực hiện tại đầu thu nên không phụ
thuộc vào hạ tầng mạng và có thể xử lý thích ứng với các tham số mạng IP. Tuy
nhiên, chất lượng dịch vụ truyền tải tín hiệu phát thanh qua mạng IP phụ thuộc chặt
chẽ vào các thông số nguồn và các tham số mạng. Các thông số nguồn được thiết
lập cố định không có khả năng thích ứng với tình trạng mạng thay đổi ngẫu nhiên
theo thời gian. Do đó, vấn đề đảm bảo chất lượng tín hiệu tại đầu thu sử dụng
phương thức điều chỉnh thông số nguồn theo thời gian thực cần được quan tâm
nghiên cứu và kiểm nghiệm qua thực tế.
Từ tháng 8/2005, đài tiếng nói Việt Nam bắt đầu hỗ trợ khả năng nghe đài phát
thanh qua mạng Ineternet. Người dùng Internet sử dụng phần mềm real player để
nghe đài tiếng nói việt nam qua mạng Internet. Vấn đề đặt ra với phương thức phát
thanh qua mạng Internet hiện tại là chưa có cơ chế đảm bảo chất lượng dịch vụ,
thực hiện theo phương thức truyền thông đơn hướng dẫn đến các hạn chế về chất
lượng khi số lượng người dùng tăng cao, cũng như khó khăn trong trường hợp mở
rộng dịch vụ. Vấn đề làm chủ công nghệ để có thể tùy biến thành ứng dụng đặc thù
cũng cần được quan tâm nghiên cứu. Với Việt Nam, vấn đề đảm bảo chất lượng
thời gian thực qua mạng IP là hướng nghiên cứu mới, hiện nay chưa có tài liệu liên
quan cũng như chuẩn đánh giá chất lượng truyền tải tín hiệu phát thanh qua mạng
IP được công bố chính thức. Đây cũng là hướng nghiên cứu mang tính chất cơ bản
trong việc phát triển ứng dụng trong xu hướng phát triển của công nghệ thông tin
đối với lĩnh vực phát thanh - truyền hình của Việt Nam.
4. Hướng tiếp cận
Đề tài được tiếp cận theo hướng nghiên cứu các tham số mạng và kỹ thuật đảm bảo
chất lượng tín hiệu phát thanh tại đầu thu. Luận án tập trung nghiên cứu khái niệm
cơ bản, cấu trúc của hệ thống RoIP, các tham số chất lượng mạng và phương pháp
đo đạc chất lượng. Trên cơ sở đó đề xuất mô hình mới nhằm đánh giá chất lượng
tín hiệu tại đầu thu. Kết hợp việc nghiên cứu đề xuất mô hình hệ thống theo cấu
trúc giao thức và mô hình chức năng lý thuyết với việc xây dựng chương trình
truyền tải tín hiệu phát thanh thời gian thực qua mạng IP trên nền hệ điều hành mã
nguồn mở Linux và tiến hành thực nghiệm qua môi trường Internet.
Thông qua mô hình toán học, đặc tính trễ và tổn thất gói tin truyền tải qua mạng
Internet được mô hình hóa và ứng dụng trong việc xây dựng công cụ phỏng tạo
tham số mạng. Bên cạnh đó, các tham số mạng và nguồn lưu lượng thực tế được sử
dụng nhằm kiểm chứng phương pháp đảm bảo chất lượng truyền tải tín hiệu phát
thanh thời gian thực qua hệ thống RoIP đề xuất.
5 Kết cấu của luận án
Luận án gồm phần mở đầu, 03 chương và kết luận.
Chương 1: Thảo luận những vấn đề cơ bản của truyền thông đa hướng qua mạng IP
và môi trường truy nhập vô tuyến WLAN theo chuẩn IEEE 802.11. Đề xuất mô
hình hệ thống truyền tải tín hiệu phát thanh thời gian thực qua mạng IP trên phương
diện mô hình lý thuyết, cấu trúc giao thức và mô hình triển khai thực nghiệm.
Chương 2: Xem xét chất lượng dịch vụ truyền tải tín hiệu phát thanh thời gian thực
qua mạng IP theo thông số nguồn và thông số mạng ảnh hưởng đến chất lượng tín
hiệu phát thanh tại đầu thu. Luận án đề xuất mô hình và xây dựng công cụ phỏng
tạo tham số QoS của mạng IP. Mođun phỏng tạo được tích hợp trong thành phần
cổng chuyển đổi giao thức iVoVGateway của hệ thống RoIP nhằm phỏng tạo ảnh
hưởng của môi trường truyền tải tới tín hiệu tại đầu thu.
Chương 3: Nghiên cứu vấn đề đảm bảo chất lượng tín hiệu tại đầu thu theo hai
khía cạnh: thứ nhất, các cơ chế tái tạo tín hiệu thu nhận tại đầu cuối thông qua bộ
đệm tái tạo được nghiên cứu và tích hợp vào hệ thống RoIP. Thứ hai, thông qua mô
hình đánh giá chất lượng tín hiệu tại đầu thu sử dụng tỷ số năng lượng tín hiệu trên
tạp âm phân đoạn, luận án đề xuất và thực hiện phương pháp đảm bảo chất lượng
dịch vụ truyền tải tín hiệu phát thanh qua mạng IP sử dụng cơ chế thích ứng tham
số nguồn với tình trạng mạng theo thời gian thực đã đề xuất.
Cuối cùng là kết luận, hướng nghiên cứu tiếp theo và các phụ lục của luận án.
CHƯƠNG 1
TỔNG QUAN VỀ TRUYỀN THÔNG ĐA HƯỚNG
VÀ MÔ HÌNH HỆ THỐNG RoIP
1.1 Các phương thức truyền thông qua Internet
Trong một thời gian ngắn, các dịch vụ truyền tải thời gian thực qua Internet đã phát
triển nhanh chóng nhằm đáp ứng các nhu cầu trao đổi thông tin từ phạm vi hẹp như
giữa các văn phòng đến phạm vi rộng như phục vụ các cuộc hội nghị thời gian thực
đa điểm. Một đặc điểm nổi bật trong xu hướng phát triển các dịch vụ thời gian thực
là mở rộng truy nhập vô tuyến tới người dùng và hợp nhất mạng viễn thông sử
dụng các công nghệ khác nhau như thể hiện trên hình 1.1.
Hình 1. 1: Mô hình mạng tích hợp phân cấp hỗn hợp trên nền IP
Về tổng quát, truyền thông qua Internet được chia thành 3 phương thức sau [51]:
- Phương thức truyền thông đơn hướng (unicast) thể hiện trên hình 1.2: Các gói tin
được truyền tải từ một nguồn gửi đến một đích thu xác định (điểm-đến-điểm). Đây
là mô hình truyền thông đơn giản đơn nhưng khó đảm bảo chất lượng dịch vụ khi
số người dùng tăng lên. Khi số lượng người dùng lớn, số lượng kết nối đơn hướng
cũng tăng lên tương ứng gây kéo theo tải lưu lượng mạng tăng do yêu cầu băng
thông đường truyền tăng với cùng một nội dung thông tin trên cùng tuyến liên kết
dẫn đến tình trạng tắc nghẽn mạng. Bên cạnh đó, tải xử lý của máy chủ cũng tăng
lên do phải xử lý nhiều yêu cầu kết nối và có thể dẫn đến quá tải máy chủ.
Hình 1. 2: Mô hình truyền tin đơn hướng
- Phương thức truyền thông quảng bá (broadcast) thể hiện trên hình 1.3: Các gói tin
được truyền tải từ một nguồn gửi đến tất cả các máy trạm trong mạng (điểm-đến-
tất cả). Các gói tin quảng bá được xử lý bởi tất cả các máy trạm trong mạng, thậm
chí cả trong trường hợp máy trạm không quan tâm đến dữ liệu đó. Điều này dẫn
đến tải lưu lượng vô ích với một số máy trạm và khó khăn trong vấn đề bảo mật
thông tin. Phương thức này giới hạn phạm vi hoạt động trong mạng LAN.
Hình 1. 3: Mô hình truyền tin quảng bá.
- Phương thức truyền thông đa hướng (multicast) thể hiện trên hình 1.4: Các gói tin
được truyền tải từ một nguồn gửi đến một nhóm các máy trạm xác định (điểm-đến-
nhóm). Phương thức này phụ thuộc vào hạ tầng mạng chuyển tiếp gói tin. Đây là
mô hình truyền thông tận dụng được các ưu điểm và hạn chế các nhược điểm của
unicast và broadcast. Đối lập với truyền thông đơn hướng, phương thức này giúp
giảm lưu lượng mạng và tải xử lý của nguồn phát. Và khác với truyền thông quảng
bá, phương thức truyền thông đa hướng có thể được triển khải trên diện rộng và
qua mạng Internet.
Hình 1. 4: Mô hình truyền tin đa hướng
1.2 Truyền thông đa hướng qua mạng IP
Kỹ thuật truyền thông đa hướng (multicast communication) qua mạng IP lần đầu
tiên được đề cập và hoạt động trên nền một hệ điều hành mạng phân bố với mục
tiêu khi đó là thiết lập các cơ cấu giao thức cho phép truyền tải dữ liệu đa hướng
giữa các phân mạng IP và cho phép luồng dữ liệu lưu chuyển qua các bộ định tuyến
IP thuộc các thiết bị mạng lớp 3 cũng như phân bổ địa chỉ multicast và ánh xạ tới
địa chỉ MAC của các thiết bị trong mạng Ethernet [13]. Bản khuyến nghị RFC
1112 [42] quy định giao thức chuẩn Internet mới để xây dựng các ứng dụng truyền
thông đa hướng trên Internet. Về cơ bản, chuẩn này đưa ra mô hình mạng MBONE
đi kèm với giao thức ấn định địa chỉ IP đa hướng lớp D và một số giao thức khác
hỗ trợ thực hiện các ứng dụng trên nền multicast.
Hình 1. 5: Tiến trình phát triển của MBONE
Ứng dụng đầu tiên của multicast là truyền âm thanh và tiếng nói phục vụ hội thảo
từ xa giữa trụ sở của IETF và các thành viên cũng như các cộng tác viên của họ
trên toàn thế giới. Các ưu điểm của của truyền thông đa hướng đã thu hút được sự
quan tâm trong cả nghiên cứu và ứng dụng. Số lượng thành viên tham gia các cuộc
hội thảo trên mạng ngày càng lớn kéo theo sự phát triển ngày càng nhanh của
multicast. Minh chứng cho sự phát triển nhanh chóng là sự mở rộng không ngừng
của MBONE trên phạm vi toàn cầu với tiến trình phát triển thể hiện trên hình 1.2.
1.2.1 Khái niệm
Truyền thông đa hướng là phương thức truyền dữ liệu đồng thời từ một máy trạm
đến một nhóm máy trạm ( nhóm multicast ) hoặc từ một nhóm máy trạm này đến
một nhóm máy trạm khác. Bên nhận sẽ xử lý dữ liệu nhận được sau đó gửi thông
tin phản hồi đến các thành viên trong nhóm multicast. Một nhóm multicast được
tạo bởi một tập hợp các thành viên có chung một địa chỉ nhóm multicast hay địa chỉ
IP multicast.
1.2.2 Đặc điểm
- Multicast sử dụng băng thông mạng một cách hiệu quả thông qua việc gửi cùng
một gói tin đến nhiều đích thay vì chỉ đến một đích như trong truyền thông đơn
hướng unicast. Vì thế nếu một luồng tín hiệu âm thanh tốc độ 64 kbps sẽ sử dụng
cùng một băng thông mà không quan tâm đến việc số lượng máy trạm nhận yêu cầu
kết nối đến máy chủ.
- Các thành viên trong nhóm multicast có thể gia nhập hay rời khỏi nhóm tại thời
điểm bất kỳ. Do đó, xét về khía cạnh quản lý thành viên nhóm thì multicast có tính
chất động.
- Multicast giúp giảm lưu lượng trên mạng thông qua cơ chế định tuyến. Theo đó,
chỉ những bộ định tuyến có liên quan đến việc truyền gói tin multicast từ nguồn đến
đích và được một server chỉ định tham gia phục vụ nhóm mới nhận và xử lý các gói
multicast.
- Multicast đặc biệt hiệu quả trong các ứng dụng hội thảo audio và video trên mạng.
Multicast hỗ trợ một tập các giao thức cho phép xây dựng các ứng dụng thời gian
thực trên mạng Internet.
- Cấu trúc của mạng multicast có thể được xây dựng thành các ốc đảo giao tiếp với
nhau qua bộ định tuyến hỗ trợ truyền thông đa hướng - mrouter . Các ốc đảo này
liên kết với nhau bằng những liên kết ảo điểm - điểm.
1.2.3 Nguyên lý truyền thông đa hướng qua mạng IP
Cấu trúc hệ thống truyền thông đa hướng được thể hiện trên hình 1.6. Tham gia
phiên truyền thông đa hướng bao gồm các máy trạm đầu cuối và hệ thống các thiết
bị mạng trung gian bao gồm các bộ định tuyến, các nút chuyển mạch và các tuyến
liên kết.
Mạng đường trục đa hướng MBONE [12] được xây dựng nhằm đánh giá các ứng
dụng cũng như các giao thức được xây dựng phục vụ truyền thông multicast dữ
liệu, audio và video.
Hình 1. 6: Cấu trúc hệ thống truyền thông đa hướng qua mạng IP
MBONE được thiết kế hoạt động ở lớp trên của Internet và được cấu thành bởi
mạng lưới các ốc đảo multicast. Các ốc đảo giao tiếp với mạng bên ngoài thông qua
một bộ định tuyến có khả năng xử lý các gói IP multicast thông qua hỗ trợ giao
thức quản lý nhóm Internet IGMP và các giao thức định tuyến khác được xác định
là một MRouter hay IP Multicast Router. Tiếp giáp với các ốc đảo là các bộ định
tuyến IP truyền thống chỉ hỗ trợ xử lý các gói IP unicast được xác định là các
URouter (IP Unicast Router). Các MRouter của các mạng khác nhau kết nối thông
qua các liên kết ảo từ điểm tới điểm thông qua cơ chế đường hầm - tunneling. Kết
quả là MBONE được hình thành nhờ tập hợp các MRouter được nối với nhau bởi
các đường hầm bao phủ toàn mạng.
Hình 1. 7: Cơ chế đường hầm liên kết các ốc đảo multicast
Hình 1. 8: Đóng gói IP multicast theo cơ chế tunneling
Đường hầm là cơ chế cho phép chuyển gói dữ liệu multicast từ MRouter nguồn đến
MRouter đích thông qua các bộ định tuyến. MRouter nguồn thực hiện đóng gói và
chuyển tiếp dữ liệu. Việc đóng gói theo cơ chế đường hầm thực hiện bổ sung thêm
phần tiêu đề IP mới với địa chỉ đích là địa chỉ IP unicast của MRouter ở đầu bên
kia của đường hầm và địa chỉ nguồn là địa chỉ IP unicast của MRouter đang gửi gói
tin đó.
Hình 1. 9: Cơ chế đường hầm liên kết các MRouter
Các bộ định tuyến trung gian nằm trên tuyến liên kết từ MRouter nguồn đến
MRouter đích sẽ xem gói này như gói dữ liệu unicast bình thường và truyền đi theo
thông tin trong bảng định tuyến unicast. Ốc đảo multicast đích ở phía bên kia của
đường hầm sẽ nhận gói unicast này và tách phần header đã được thêm vào rồi sau
đó gửi gói dữ liệu đó đi một cách thích hợp. Với bộ định tuyến các gói dữ liệu được
xem như đến từ MRouter lân cận và trong suốt đối với các bộ định tuyến trung
gian. Đường đi trung gian đã bị ẩn đi đối với bộ định tuyến này. Khi đó các
MRouter xử lý các gói IP multicast tương tự như các bộ định tuyến xử lý các gói IP
unicast như thể hiện trên hình 1.8.
Như thể hiện trên hình 1.1, MRouter R2 muốn gửi một gói tin IP đa hướng tới
MRouter R5. Trước hết, R2 sẽ đóng vỏ gói tin (chuyển từ gói IP đa hướng thành
gói IP đơn hướng) rồi chuyển tiếp tới URouter R3. Gói đa hướng này sẽ đi theo
tuyến R3-R7-R8-R5. Như vậy, theo cơ chế đường hầm, với MRouter R5 thì gói tin
này được xử lý với địa chỉ nguồn đến từ R2.
1.2.4 IP multicast
1.2.4.1 Các thành phần trong kiến trúc IP multicast
Kiến trúc IP multicast được hình thành bởi 3 thành phần chính thể hiện trên
hình 1.10, bao gồm:
- Mô hình dịch vụ: có thành phần là các máy trạm đáp ứng các yêu cầu hỗ trợ
multicast.
- Giao thức quản lý nhóm Internet IGMP từ máy trạm đến bộ định tuyến
mrounter: phục vụ quản lý các thành viên trong nhóm multicast.
- Các giao thức định tuyến multicast: định tuyến gói tin từ nguồn đến các
đích theo cơ chế truyền thông đa hướng.
Hình 1. 10: Mô hình kiến trúc hệ thống IP Multicast
1.2.4.2 Mô hình nhóm dịch vụ đa hướng.
a. Khái niệm:
Một nhóm multicast là một tập hợp các máy trạm trên mạng cùng muốn nhận một
dòng dữ liệu riêng. Các má trạm này có thể ở vị trí bất kỳ trên mạng Internet. Để
gửi hoặc nhận được các gói multicast đến / từ một nhóm đa hướng thì trước hết
máy trạm đó phải thỏa mãn 4 yêu cầu đối với một máy trạm multicast được quy
định trong chuẩn RFC 1112. Sau đó, để trở thành thành viên của một nhóm
multicast thì máy trạm phải gia nhập nhóm thông qua việc sử dụng giao thức
IGMP.
b. Đặc điểm
- Các thành viên của nhóm có tính chất động, tức là máy trạm có thể gia nhập hay
rời nhóm tại thời điểm bất kỳ. Một nhóm multicast có tính bảo mật cao do có tính
chất của một mạng VLAN.
- Tại cùng một thời điểm thì một máy trạm có thể là thành viên của nhiều nhóm
khác nhau.
- Khi đã gia nhập nhóm multicast và là thành viên của một nhóm thì máy trạm có
thể nhận tất cả các gói tin gửi đến địa chỉ nhóm đó.
- Để gửi dữ liệu đến một nhóm thì máy trạm không nhất thiết phải là thành viên của
nhóm.
c. Các mức hoạt động của một máy trạm:
- Mức 0: là mức không hỗ trợ IP multicast. Hầu hết các host và router trên mạng ở
tình trạng này vì hầu hết trong số chúng đều sử dụng IPv4, mà hỗ trợ multicast là
không bắt buộc đối với IPv4 ( nhưng là bắt buộc đối với IPv6). Các host ở mức này
không thể truyền cũng như nhận các gói multicast và bỏ qua các gói được gửi bởi
các host có khả năng multicast.
- Mức 1: là mức hỗ trợ gửi nhưng không nhận các gói multicast. Như vậy không
nhất thiết phải gia nhập một nhóm multicast mới gửi được các gói multicast tới
nhóm đó.
- Mức 2: là mức hỗ trợ đầy đủ cho IP multicast. Các host thuộc mức này có khả
năng gửi và nhận các gói multicast. Chúng phải biết cách gia nhập và rời nhóm
multicast và truyền thông tin này đến các bộ định tuyến dựa trên giao thức IGMP (
Internet Group Management Protocol ).
d. Địa chỉ multicast
- Mỗi nhóm multicast có một địa chỉ multicast (địa chỉ lớp D) duy nhất.
- Địa chỉ IP lớp D có 4 bit đầu là 1110, còn 28 bit sau để chỉ ra nhóm multicast. Địa
chỉ multicast có phạm vi từ 224.0.0.0 đến 239.255.255.255
Hình 1. 11: Địa chỉ IP Multicast
Tuy nhiên không phải tất cả địa chỉ nằm trong dải trên đều được dùng cho các
nhóm multicast bởi một số địa chỉ đã được tổ chức cấp phát địa chỉ Internet IANA
thiết lập và ứng dụng cho một số mục đích “chuyên dụng” được xem là các địa chỉ
đặc biệt hay địa chỉ vĩnh cửu.
Tổ chức IANA ấn định vùng địa chỉ từ 224.0.0.0 tới 224.0.0.255 cho các giao thức
mạng sử dụng trong mạng cục bộ. Các gói mang địa chỉ này sẽ không được các bộ
định tuyến chuyển tiếp mà bị giới hạn trong nội bộ mạng LAN. Các gói tin đó luôn
được truyền với thời gian sống TTL ( Time To Live ) được thiết lập giá trị bằng 1.
Các giao thức mạng sử dụng các địa chỉ này để bộ định tuyến tự động phát hiện và
cập nhật các thông tin trong bảng định tuyến của nó.
Dải địa chỉ từ 224.0.1.0 tới 224.0.1.255 cho phạm vi toàn cầu, phục vụ các phiên
truyền thông multicast giữa các thành viên qua mạng Internet. Một số địa chỉ trong
dải này đã được dành cho các ứng dụng multicast đã được IANA thông qua và
chuẩn hóa.
Phạm vi địa chỉ từ 239.0.0.0 tới 239.255.255.255 được dùng cho quản trị. Các bộ
định tuyến được cấu hình có các bộ lọc để ngăn cản lưu lượng multicast trong
phạm vi địa chỉ này truyền tải ra khỏi một hệ thống tự trị AS (Autonomous System)
hay bất kỳ vùng người dùng định nghĩa nào. Trong phạm vi một hệ thống tự trị hay
domain thì phạm vi địa chỉ giới hạn có thể được chia nhỏ hơn để định nghĩa các
vùng multicast (domain) trong phạm vi cục bộ. Điều này cho phép sử dụng lại các
địa chỉ giữa các domain nhỏ này.
Phạm vi địa chỉ từ 233.0.0.0 tới 233.0.0.8 được dành cho các tổ chức đã có một số
AS. Số AS của domain được thiết lập tại octet thứ 2 và thứ 3 của địa chỉ thuộc vùng
này. Ví dụ: AS 62010 Æ Hex: F23A = F2 và 3A Ù 242 và 58. tương ứng với địa
chỉ nhóm đa hướng là 233.242.58.0
Ngoài các địa chỉ đặc biệt kể trên thì các địa chỉ còn lại được xác định là các địa chỉ
nhóm tùy biến và có thể sử dụng được cho các ứng dụng do người dùng xây dựng.
Những nhóm đa hướng sử dụng các địa chỉ đa hướng tùy biến có tính chất tạm thời
với ý nghĩa địa chỉ nhóm chỉ tồn tại khi trong nhóm còn có ít nhất 1 thành viên. Khi
số thành viên trong nhóm bằng 0 thì nhóm đa hướng tự hủy. Khi đó nhóm truyền
thông đa hướng khác có thể dùng lại địa chỉ nhóm vừa được giải phóng.
e. Ánh xạ địa chỉ IP multicast với địa chỉ MAC.
Địa chỉ Ethernet MAC bao gồm 48 bit và dùng bit trọng số thấp nhất LSB của octet
đầu tiên để xác định phương thức truyền thông qua kiểu địa chỉ là unicast (0) hay
multicast/broadcast (1). Khi đó, địa chỉ Ethernet MAC là multicast, nếu là lẻ, và
trong trường hợp đặc biệt, khi mà tất cả 48 bit đều là 1 (0xFFFF.FFFF.FFFF) thì
địa chỉ ứng với phương thức broadcast.
Hình 1. 12: Cấu trúc địa chỉ MAC cho IP Multicast/Unicast
Cơ chế ánh xạ “nhiều tới một” được thực hiện trong việc ánh xạ địa chỉ IP
multicast tới địa chỉ Ethernet MAC như thể hiện trên hình 1.13
Cơ chế ánh xạ địa chỉ được thực hiện như sau:
- 24 bit cao (từ octet 0 đến octet 2) của địa chỉ MAC luôn luôn là 0x 01-00-5E (hay
0000 0001 - 0000 0000 - 0101 1110 )
- Bit tiếp theo của địa chỉ MAC luôn là 1
- 23 bit còn lại của địa chỉ MAC là tương ứng với 23 bit địa chỉ IP multicast .
Hình 1. 13: Cơ chế ánh xạ địa chỉ IP Multicast và địa chỉ MAC
Như vậy, cùng một địa chỉ MAC multicast có thể cho phép ánh xạ bởi 32 địa chỉ IP
multicast. Địa chỉ IP có 32 bit, khi dùng địa chỉ IP multicast thì dẫn đến có 4 bit
trọng số cao nhất của nó lần lượt là: 0 1 2 3
1 1 1 0
Khi đó còn lại 28 bit dùng để gán địa chỉ IP multicast. Trong khi đó chỉ tồn tại 23
bit cho địa chỉ MAC multicast. Vì thế có 5 bit (từ 4 đến 8) không được dùng trong
địa chỉ MAC multicast. Dẫn đến tương ứng với một địa chỉ MAC multicast là 25 =
32 địa chỉ IP multicast.
1.3 Truy nhập vô tuyến theo chuẩn IEEE 802.11
1.3.1 Phổ tần số vô tuyến
Mạng vô tuyến sử dụng một dải tần xác định tương ứng với băng thông phản ánh
khả năng của kênh truyền dẫn. Trong lý thuyết thông tin và xử lý tín hiệu cho thấy
với băng thông càng lớn thì lượng thông tin có thể truyền tải càng nhiều. Việc sử
dụng các phổ tần số được kiểm soát nghiêm ngặt với các tổ chức cấp phép riêng
biệt và thường được thực hiện bởi tổ chức FCC. Để tránh trùng lặp, các tần số được
chia thành các dải tần sử dụng cho các ứng dụng cụ thể như thể hiện trên bảng 1.1
trong đó băng tần 2.4 GHz được sử dụng phổ biến cho giao diện vô tuyến trong
mạng WLAN theo chuẩn IEEE 802.11g.
Bảng 1.1: Các băng tần vô tuyến
Băng tần Phạm vi tần số
S-Band 2-4 GHz
S-Band ISM 2.4-2.5 GHz
C-Band 4-8 GHz
C-Band Satellite downlink 3.7-4.2 GHz
C-Band Radar (weather) 5.25-5.925 GHz
C-Band ISM 5.725-5.875 GHz
C-Band satellite uplink 5.925-6.425 GHz
X-Band 8-12 GHz
X-Band Radar (police/weather) 8.5-10.55 GHz
Ku-Band 12-18 GHz
1.3.2 Cấu trúc giao thức IEEE 802.11
IEEE 802.11 là cấu trúc giao thức thành viên của chuẩn giao thức IEEE 802.x. Tập
này bao gồm một chuỗi các đặc tả về các kỹ thuật cho mạng LAN. Hình 1.14 thể
hiện vị trí và mối liên hệ giữa các thành phần của họ giao thức 802 trong mô hình
OSI.
Hình 1. 14: Họ IEEE 802 và mối liên hệ với mô hình OSI
Chuẩn IEEE 802.11 là một lớp liên kết có thể sử dụng gói 802.2/LLC. Đặc tả cơ
bản của 802.11 bao gồm 802.11 MAC và lớp vật lý thực hiện trải phổ nhảy tần
FHSS và lớp trải phổ dãy trực tiếp DSSS hoặc ghép kênh phân chia theo tần số trực
giao OFDM.
Bảng 1.2: Chỉ tiêu kỹ thuật các chuẩn IEEE 801.11
Tiêu chuẩn 802.11b 802.11a 802.11g
Thời điểm ra đời 07-1999 07-1999 06-2003
Tốc độ tối đa 11 Mbps 54 Mbps 54 Mbps
Phương thức điều chế CCK OFDM OFDM & CCK
Tốc độ dữ liệu hỗ trợ 1, 2, 5.5,
11 Mbps
6,9,12,18,24,36,
48,54 Mbps
CCK: 1, 2, 5.5, 11
OFDM: 6,9,12, 18,
24,36,48,54 Mbps
Dải tần làm việc 2.4 - 2.497
GHz
5.15 - 5.35 GHz
5.425 - 5.675 GHz
5.725 - 5.875 GHz
2.4 - 2.497 GHz
Bảng 1.2 thể hịên chỉ tiêu kỹ thuật của các chuẩn 802.11. Các sản phẩm dựa trên
chuẩn 802.11 đã bắt đầu được sản xuất từ năm 1997. Các đặc tả của IEEE 802 được
tập trung vào 2 lớp thấp nhất của mô hình OSI do chúng kết hợp chặt chẽ các thành
phần vật lý và các thành phần liên kết dữ liệu. Tất cả các mạng 802.x đều bao gồm
lớp điều khiển truy nhập phương tiện MAC và lớp vật lý PHY. MAC thực hiện
thiết lập các nguyên tắc truy nhập và gửi dữ liệu. Quá trình truyền tin và nhận tin
được xử lý bởi lớp vật lý. Chuẩn IEEE 802.11 cho phép truy nhập mạng di động,
để thực hiện được mục đích này, một số các đặc điểm truyền thống được kết hợp
chặt chẽ với MAC. Việc sử dụng sóng vô tuyến như một lớp vật lý yêu cầu một sự
phức tạp tương đối của lớp vật lý. 802.11 chia lớp vật lý làm 2 thành phần chính:
Lớp hội tụ PLCP thực hiện đưa các khung MAC vào môi trường lớp vật lý phụ
thuộc và truyền đi các khung MAC. PLCP là lớp trung gian giữa MAC và các lớp
vật lý, được chỉ ra trong hình 1.15. Trong 802.11, PLCP thêm một số trường vào
khung trước khi các khung được truyền đi trong không gian.
Hình 1. 15: Liên kết lớp MAC và lớp vật lý thông qua PLCP
Mạng WLAN 802.11 bao gồm 4 thành phần vật lý chính mô tả trong hình 1.16 bao
gồm:
a. Hệ thống phân tán DS ( Distribution System )
Khi một số điểm truy nhập AP được kết nối nhằm tạo ra một miền phủ sóng rộng,
chúng cần phải trao đổi với nhau để tìm ra sự di chuyển của các trạm di động. Hệ
thống phân tán là thành phần logic của mạng 802 được sử dụng để đưa các khung
thông tin tới điểm đích. Trong các sản phẩm thương mại, hệ thống phân tán được
thực hiện bằng sự kết hợp giữa các cầu nối và môi trường hệ thống phân tán, hệ
thống này là khung của mạng sử dụng giữa các điểm truy nhập.
Hình 1. 16: Các thành phần của mạng WLAN 802.11
b. Các điểm truy nhập AP ( Access Point )
Cấu trúc khung trong mạng WLAN 802.11 cần phải được chuyển thành cấu trúc
khung phù hợp cho các thiết bị của các mạng khác. Các thiết bị được gọi là điểm
truy nhập AP thực hiện chức năng kết nối giữa không dây và có dây.
c. Môi trường vô tuyến WM ( Wireless Medium )
Việc truyền tải các khung dữ liệu giữa các máy trạm được thực hiện thông qua môi
trường vô tuyến. Một số môi trường vô tuyến ở lớp vật lý được xác định cho phép
kết hợp để phát triển và hỗ trợ lớp MAC. Hai lớp môi trường vật lý sử dụng sóng
vô tuyến và lớp vật lý hồng ngoại được tiêu chuẩn hóa. Hiện nay lớp vật lý môi
trường vô tuyến được sử dụng rộng rãi.
d. Các trạm STA ( STAtion )
Mạng được xây dựng để truyền dữ liệu giữa các trạm. Các trạm là các thiết bị đầu
cuối với giao tiếp mạng vô tuyến thực hiện phối ghép thông qua các card giao tiếp
vô tuyến theo chuẩn PCI, PCMCIA hoặc USB.
1.3.3 Các cấu hình mạng truy nhập vô tuyến
Cấu hình BSS hay cấu hình cơ bản của một mạng 802.11 bao gồm một nhóm các
trạm được kết nối với nhau. Sự kết nối diễn ra trong môi trường gọi là miền dịch vụ
cơ bản, được xác định bởi đặc tính truyền dẫn của môi trường vô tuyến. Một trạm
trong miền dịch vụ cơ bản có thể kết nối với các trạm khác trong BSS. Cấu hình
BSS được chia thành 2 loại như thể hiện trên hình 1.17.
a b
Hình 1. 17: Cấu hình BSS và IBSS
Cấu hình mạng độc lập IBSS
Một mạng BSS độc lập (IBSS) được thể hiện ở hình 1.17a. Các trạm trong IBSS
kết nối trực tiếp với nhau và do đó cần phải nằm trong phạm vi kết nối trực tiếp.
Mạng 802.11 tối thiểu là mạng IBSS chỉ bao gồm 2 trạm.
Cấu hình mạng phụ thuộc BSS
Cấu hình mạng 802.11 phụ thuộc ( Infrastructure BSS ) thể hiện ở hình 1.17b được
phân biệt bởi việc sử dụng điểm truy nhập AP (Access Point). Nếu một trạm di
động trong BSS cần giao tiếp với trạm thứ hai, việc kết nối sẽ được thực hiện theo
Cấu hình mạng
độc lập IBSS
hai bước. Trước tiên, trạm di động ban đầu sẽ gửi các khung tới điểm AP. Sau đó,
AP sẽ truyền khung đó tới trạm thứ hai. Với tất cả các kết nối được thực hiện thông
qua AP, miền dịch vụ cơ bản tương ứng với một Infrastructure BSS được xác định
bởi các điểm mà tại đó các thông tin được truyền đi từ các điểm AP có thể nhận
được. Mặc dù cơ chế truyền tin tiến hành theo 2 bước như trên sẽ chiếm nhiều dung
lượng truyền dẫn hơn việc truyền một khung từ điểm phát tới điểm thu nhưng sẽ
mang lại hai ưu điểm lớn:
- Một BSS được xác định bởi khoảng cách tới AP và máy trạm. Để có thể tiến hành
liên lạc, tất cả các trạm di động phải thỏa mãn yêu cầu nằm trong phạm vi liên lạc
tới điểm truy nhập AP, nhưng không có sự hạn chế nào về khoảng cách giữa bản
thân các trạm di động. Việc cho phép kết nối trực tiếp giữa các trạm di động sẽ tiết
kiệm được dung lượng truyền tin nhưng sẽ làm tăng giá thành của lớp vật lý do các
trạm di động cần được duy trì một quan hệ với các trạm di động khác trong vùng
dịch vụ.
- Các AP trong mạng phụ thuộc BSS sẽ giúp các máy trạm trong việc bảo vệ
nguồn. Các điểm AP có thể đưa ra các thông báo khi._.thanh thời gian thực qua mạng IP, nội san
Khoa học Kỹ thuật Truyền hình, số 2-2005, trang 37- 40, năm 2005.
[4]. Đỗ Trọng Tuấn, Nguyễn Hữu Thanh, Mạng WLAN theo chuẩn IEEE 802.11,
tạp chí Bưu chính Viễn thông & Công nghệ thông tin, số 263, trang 42- 43, năm 2005.
[5]. Phạm Minh Hà, Đỗ Trọng Tuấn, Một phương pháp đảm bảo chất lượng tín hiệu
phát thanh truyền tải qua mạng IP theo thời gian thực, tạp chí Khoa học & Công
nghệ các Trường Đại học Kỹ thuật, số 57, trang 76-79, năm 2006.
- XVII -
TÀI LIỆU THAM KHẢO
[1] ITU-T Recommendation G.114. Technical report, International
Telecommunication Union , 1993.
[2] ITU-T Recommendation G.113, Transmission impairments due to speech
processing, 2001.
[3] ITU-T Recommendation G.107. The E-model, A Computational Model for Use in
Transmission Planning, 2000.
[4] ITU-T Recommendation P.862. Perceptual Evaluation of Speech Quality (PESQ),
An Objective Method for End-to-end Speech Quality Assessment of Narrowband
Telephone Networks and Speech Codecs.
[5] Grenville Armitage, Quality of Service in IP Networks: Foundations for a Multi-
Service Internet, Lucent Technology, 2000
[6] Ramjee, R., Kurose, J., Towsley, D. & Schulzrinne, H. (1994) Adaptive Playout
Mechanism for Packetised Audio Application in Wide-area Networks. IEEE, Toronto,
Canada
[7] Moon, S. B., Kurose, J. & Towsley, D. (1998) Packet Audio Playout Delay
Adjustment: Performance Bounds and Algorithms. Acm Multimedia Systems.
[8] Markopoulou, A. P., Tobagi, F. A. & Karam, M. J. (2002) Assessment of VoIP
Quality over Internet Backbones. Proc. Of IEEE Infocom
[9] Liang, Y. J., Farber, N. & Girod, B. (2001) Adaptive Playout Scheduling Using
Time-Scale Modification in Packet Voice Communications. Stanford University,
Stanford, CA 94305
[10] Y.J. Liang, N. Farber, and B. Girod, Adaptive playout scheduling and loss
concealment for voice communication over IP networks, IEEE Transactions on
Multimedia, 2003.
[11] Jiang, W. & Schulzrinne, H. QoS Measurement of Internet Real-Time Multimedia
Services. Technical Report, CUCS-015-99, Columbia University.
[12] Macedonia, M. R., Brutzman, D. P., "MBone Provides Audio and Video Across
the Internet," IEEE Computer, ftp://taurus.cs.nps.navy.mil/pub/mbmg/mbone.html.
[13] Kevin C. Almeroth, The Evolution of Multicast: From the MBone to Inter-
DomainMulticast to Internet2 Deployment,
[14] Cole, R. G. & Rosenbluth, J. H. (2001) Voice over IP Performance Monitoring.
Journal on Computer Communications Review.
[15] Fujimoto, K., Ata, S. & Murata, M. Adaptive Playout Buffer Algorithm for
Enhancing Perceived Quality of Streaming Application. IEEE Globecom, 2002.
[16] Sun, L. F. & Ifeachor E. C. Prediction of perceived Convestional Speech Quality
and Effects of Playout Buffer Algorithms. IEEE, ICC 03, Anchorage, USA, May 2003
- XVIII -
[17] Mills, D. Internet Delay Experiments. ARPANET Working Group Requests for
Comment, RFC 889, 1983.
[18] F. Liu, J. W. Kim, and C. C. J. Kuo, Adaptive delay concealment for Internet
voice applications with packet-based time-scale modification, Proc. IEEE Int. Conf.
on Acoustics, Speech, Signal Processing (Utah, USA), 2001.
[19] Marco Roccetti, Vittorio Ghini, Designed and Experimental Evaluation of an
Adaptive Playout Delay Control Mechanism for Packetized Audio for Use over the
Internet, Multimedia Tools and Application, 14, 23-53, 2001
[20] Athina P. Markopoulou, Fouad A. Tobagi, and Mansour J. Karam, Assessing the
Quality of Voice Communications OverInternet Backbones, IEEE/ACM Transactions
on netwoiking, 2003.
[21] RFC3550: RTP: A Transport Protocol for Real-Time Applications
[22] RFC3551: RTP Profile for Audio and Video Conferences
[23] Rosenboerg, J., Qiu, L. & Schulzrinne, H. Integrating Packet FEC into Adaptive
Voice Playout Buffer Algorithms on the Internet. IEEE Infocom 2000.
[24] Jiang, W. & Schulzrinne, H. QoS Measurement of Internet Real-Time Multimedia
Services. Technical Report, CUCS-015-99, Columbia University.
[25] Jiang, W. & Schulzrinne, H. Analysis of on-off Patterns in RoIP and their Effect
on Voice Traffic Aggregation. Proc, of ICCCN 2000.
[26] Behrouz A Forouzan,Sophia Fegan, TCP/IP Protocol Suite, GrawHill 2000
[27] W.Richchard Stevent, Gary R.Wright , TCP/IP Illustrated, volume 1,2,3
[28] Perkins, C., Hodson, O. & Hardman, V. A Survey of Packet Loss Recovery
Techniques for Streaming Audio. IEEE Network, Sept./Oct. 1998.
[29] Y.J. Liang, N. F¨arber, and B. Girod, Adaptive playout scheduling using
timescale modification in packet voice communications, in Proceedings of the IEEE
International Conference on Acoustics, Speech, and Signal Processing (ICASSP-01),
Salt Lake City, UT, May 2001, vol. 3, pp. 1445–8.
[30] Douglas E.Comer, Internetworking with TCP/IP, vol 1, Prentice Hall, 2000
[31] Brian "Beej" Hall , Beej's Guide to Network Programming. Using Interet Sockets
-2001;
[32] Neill Wilkison, John Wiley & Sons, Next Generation Network Services:
Technology and Strategies, 2002.
[33] Christophe Diot. Brian Neil Levine. Bryan Lyles. Hassan Kassem, Doug
Balensiefen, Deployment Issues for the IP Multicast Service and Architecture,
- XIX -
[34] L. Zhang, RSVP: A new resource reservation protocol, IEEE Network Magazine,
Vol.7, pp. 8-18, 1993
[35] Fujimoto, K., Ata, S. & Murata, M. Adaptive Playout Buffer Algorithm for
Enhancing Perceived Quality of Streaming Application. IEEE Globecom, 2002.
[36] Sun, L. F. & Ifeachor E. C. Prediction of perceived Convestional Speech Quality
and Effects of Playout Buffer Algorithms. IEEE, ICC 03, Anchorage, USA, May 2003
[37] Markopoulou, A. P., Tobagi, F. A. & Karam, M. J. Assessment of VoIP Quality
over Internet Backbones. Proc. Of IEEE Infocom, 2002
[38] Liang, Y. J., Farber, N. & Girod, B. Adaptive Playout Scheduling Using Time-
Scale Modification in Packet Voice Communications. Stanford University, Stanford,
CA 94305 , 2001.
[39] Ram Jadageesan, Packet Loss Model, Cisco System Inc, TR-41.3.3/99
[40] Jean-Chrisostome Bolot, Characterizing The End-To-End Behavior Of The
Internet: Measurements, Analysis, And Applications,
[41] Cole, R. G. & Rosenbluth, J. H. (2001) Voice over IP Performance Monitoring.
Journal on Computer Communications Review, vol. 31, no.2.
[42] S. Deering, Host Extensions for IP Multicasting - RFC 1112,
[43] Jean-Chrisostome Bolot & Andres Vega Garcia, Control mechanisms for packet
audio in the Internet,
[44] Mills, D. Internet Delay Experiments. RFC 889, 1983.
[45 ] Bob Melander, Mats Bjorkman, Trace-Driven Network Path Emulation,
SITI/Ericson Project,
[46] Maya Yajnik, Sue Moon, Jim Kurose and Don Towsley , Measurement and
Modelling of the Temporal Dependence in Packet Loss, 0-7803-5420-6/99/ IEEE
[47] Rosenboerg, J., Qiu, L. & Schulzrinne, H. Integrating Packet FEC into Adaptive
Voice Playout Buffer Algorithms on the Internet. IEEE Infocom 2000.
[48] Bolot, J. C. (1993) End-to-end Packet Delay and Loss Behaviour in the Internet.
Proc. 1993 ACM SIGCOMM Conf. pp.289-298.
[49] Jean-Chrisostome Bolot, End-to-End Packet Delay and Loss Behavior in the
Internet ,
[50] Jiang, W. & Schulzrinne, H. Analysis of on-off Patterns in VoIP and their Effect
on Voice Traffic Aggregation. Proc, of ICCCN 2000.
[51] Cisco, Multicast Deployment Made Easy,
ftp.uth.gr/Mbone/guides/Multicast_Deployment_Made_Easy.pdf
[52] Perkins, Hodson and Hardman, A Survey of Packet Loss Recovery
Techniques for Streaming Audio. IEEE Network, 1998.
- XX -
[53] Y.J. Liang, N. Farber, and B. Girod, Adaptive playout scheduling using timescale
modification in packet voice communications, Proceedings of the IEEE International
Conference on Acoustics, Speech, and Signal Processing (ICASSP-01), Salt Lake
City, UT, May 2001, vol. 3, pp. 1445–8.
[54] Y.J. Liang, N. Farber, and B. Girod, Adaptive playout scheduling and loss
concealment for voice communication over IP networks, IEEE Transactions on
Multimedia, 2003.
[55] D.J. Goodman, G.B. Lockhart, O.J. Wasem, and W.-C. Wong, Waveform
substitution techniques for recovering missing speech segments in packet voice
communications, IEEE Transactions on Acoustics, Speech, and Signal Processing,
vol. 34, no. 6, pp. 1440–1448, Dec. 1986.
[56] P.A. Chou and Z. Miao, Rate-distortion optimized streaming of packetized
media, IEEE Transactions on Multimedia, 2001.
˜pachou.
[57] Wai C. Chu, Speech Coding Algorithms -- Foundation and Evolution of
Standardized Coders, Mobile Media Laboratory, California, 2003
[58] Internet 2005 Summary Final.pdf,
[59] Thomas Williams & Colin Kelley, gnuplot,
[60] xiph open source community,
[61] The Network Simulator,
[62] Nistnet homepage,
[63] Dummynet homepage,
[64] Christian Scherpe, Bernd E. WolfingerModel, Ingo Salzmann, Based Network
Emulation to Study the Behavior and Quality ß Real-Time Application, DS-RT’03
proceeding, IEEE.
[65] Jingping Bi, Qi Wu, Zhongcheng Li, Packet Delay and Packet Loss in the
Internet, ISCC’02, IEEE.
[66] Chu-Sing Yang, Yih-Ching Su and Chen -Wei Lee, The Analysis of Packet Loss
Prediction for Gilbert-Model with Loss Rate Uplink, ICDCSW’03, IEEE.
[67] Vincenzo Marziale, Andrea Vitaletti, University of Rome , A Framework for
Internet QoS Requirements Definition and Evaluation: an experimental approach,.
[68] Stephen J.Solari, Digital Video and Audio Compression,McGraw-Hill, 1997
[69] Arman Danesh and Michel Jang , Mastering Linux, SYBEX 2001
[70] Open Sound System,
[71] data_traces, pinhu@plymouth.ac.uk
[72] Virtual Private Network,
- i -
PHỤ LỤC
Phụ lục 1: Các phương thức kết nối các thành phần của hệ thống RoIP thực
nghiệm qua mạng diện rộng.
Phụ lục 2: Một số kết quả so sánh giữa số liệu thu thập và đo đạc qua mô
hình phỏng tạo tham số mạng
Phụ lục 3: Một số kết quả đo đạc tham số chất lượng tại đầu thu khi thay đổi
hệ số phát lặp gói tin tại đầu phát
Phụ lục 4: Một số kết quả thống kê xác xuất xảy ra tổn thất của các gói tin
liên tiếp .
Phụ lục 5: Mã nguồn thực hiện thuận toán phát hiện khoảng tín hiệu tích
cực / khoảng lặng tại bên phát.
Phụ lục 6: Mã nguồn thực hiện mã hóa tín hiệu phát thanh.
Phụ lục 7: Mã nguồn thực hiện giải mã tín hiệu phát thanh.
Phụ lục 8: Mã nguồn thực hiện thuật toán thu dữ liệu từ thiết bị âm thanh và
lưu vào bộ đệm phía phát.
Phụ lục 9: Mã nguồn module tạo lịch trình gửi dữ liệu vào mạng.
Phụ lục 10: Mã nguồn thực hiện thuật toán thu nhận dữ liệu từ mạng và lưu
vào bộ đệm phía thu.
Phụ lục 11: Mã nguồn thực hiện thuật toán ước đoán trễ mạng và biến động
trễ trung bình của gói tin phục vụ quá trình tái tạo tín hiệu thích ứng.
- ii -
Phụ lục 1: Phương thức kết nối các thành phần của hệ thống RoIP thực
nghiệm qua mạng diện rộng.
a. Sử dụng phương thức chuyển đổi địa chỉ mạng NAT ( Network Address Translation)
a. Sử dụng kết nối qua mạng riêng ảo VPN ( Virtual Private Network) [72]
- iii -
Phụ lục 2: Một số kết quả so sánh giữa số liệu thu thập và đo đạc qua mô
hình phỏng tạo tham số mạng.
a. Kết quả trễ mạng đo đạc qua kết nối giữa ĐHBK Hà Nội và ĐH Ryukyus
b. Kết quả trễ mạng phỏng tạo theo phương không trực tuyến với sử dụng file số liệu đo đạc
qua kết nối giữa ĐHBK Hà Nội và ĐH Ryukyus
- iv -
a. Kết quả trễ mạng đo đạc qua kết nối giữa ĐHBK Hà Nội và Thăng Long - Từ liêm Hà Nội
b. Kết quả trễ mạng phỏng tạo theo phương không trực tuyến với sử dụng file số liệu đo đạc
qua kết nối giữa ĐHBK Hà Nội và Thăng Long - Từ liêm Hà Nội
- v -
a. Kết quả trễ mạng đo đạc qua kết nối giữa Đại học Viễn thông Bắc Kinh Trung Quốc và
Đại học Plymouth - Anh Quốc [71]
b. Kết quả trễ mạng phỏng tạo theo phương không trực tuyến với sử dụng file số liệu đo đạc
qua kết nối giữa ĐH Viễn thông Bắc Kinh Trung Quốc và Đại học Plymouth - Anh Quốc
- vi -
a. Kết quả trễ mạng đo đạc qua kết nối giữa Đại học Plymouth - Anh Quốc và Đại học
Viễn thông Bắc Kinh Trung Quốc [71]
b. Kết quả trễ mạng phỏng tạo theo phương không trực tuyến với sử dụng file số liệu đo đạc
qua kết nối giữa Đại học Plymouth - Anh Quốc và Đại học Viễn thông Bắc Kinh Trung
Quốc
- vii -
Phụ lục 3: Một số kết quả đo đạc tham số chất lượng tại đầu thu khi thay đổi hệ
số phát lặp gói tin tại đầu phát.
a. Kết nối giữa ĐHBK Hà Nội và Thăng Long - Từ liêm Hà Nội.
Hệ số
phát lặp
gói tin
Số gói
tin phát
ra
Số gói
tin thu
được
Số gói
tổn thất
Tỷ lệ
tổn thất
gói tin
Trễ
mạng
nhỏ nhất
Trễ
mạng
lớn nhất
Trễ
mạng
trung
bình
1 346 334 12 3,47 % 69 76 71,09
2 346 335 11 3,18 % 68 80 71,32
3 346 339 7 2,02 % 68 79 71,30
b. Kết nối qua chương trình phỏng tạo mạng sử dụng số lieụe đo đạc giữa Đại học
Plymouth - Anh Quốc và Đại học Viễn thông Bắc Kinh Trung Quốc [71]
Hệ số
phát lặp
gói tin
Số gói
tin phát
ra
Số gói
tin thu
được
Số gói
tổn thất
Tỷ lệ
tổn thất
gói tin
Trễ
mạng
nhỏ nhất
[ms]
Trễ
mạng
lớn nhất
[ms]
Trễ
mạng
trung
bình
1 1000 878 122 12,00 % 122,54 832,19 271.58
2 926 871 55 5,94 % 122,00 832,00 253,77
3 443 419 24 5,42 % 122,00 799,00 262,70
- viii -
Phụ lục 4: Một số kết quả thống kê xác xuất xảy ra tổn thất của các gói tin
liên tiếp .
a. Kết nối giữa ĐH Viễn thông Bắc Kinh Trung Quốc và ĐH Plymouth - Anh Quốc [71]
Tổng số gói tin tổn thất :: 5 / 1000 [packets] ~ 0.5 [%]
Số gói tin tổn thất đơn = 3 ~ 60.00 [%]
Số gói tin tổn thất 2 lần liên tiếp = 1 ~ 40.00 [%]
b. Kết nối giữa ĐH Plymouth - Anh Quốc và ĐH Viễn thông Bắc Kinh Trung Quốc [71]
Tổng số gói tin tổn thất :: 122 / 1000 [packets] ~ 12.2 [%]
Số gói tin tổn thất đơn = 31 ~ 25.41 [%]
Số gói tin tổn thất 2 lần liên tiếp = 12 ~ 19.67 [%]
Số gói tin tổn thất 3 lần liên tiếp = 8 ~ 19.67 [%]
Số gói tin tổn thất 4 lần liên tiếp = 3 ~ 9.84 [%]
Số gói tin tổn thất 5 lần liên tiếp = 1 ~ 4.10 [%]
Số gói tin tổn thất 6 lần liên tiếp = 2 ~ 9.84 [%]
Số gói tin tổn thất 7 lần liên tiếp = 2 ~ 11.48 [%]
c. Kết nối giữa ĐHBK Hà Nội và ĐH Okinawa - Nhật Bản
Tổng số gói tin tổn thất :: 16 / 601 [packets] ~ 2.66223 [%]
Số gói tin tổn thất đơn = 16 ~ 100.00 [%]
d. Kết nối giữa ĐHBK Hà Nội và ĐH Okinawa - Nhật Bản
Tổng số gói tin tổn thất :: 159 / 1008 [packets] ~ 15.7738 [%]
Số gói tin tổn thất đơn = 116 ~ 72.96 [%]
Số gói tin tổn thất 2 lần liên tiếp = 17 ~ 21.38 [%]
Số gói tin tổn thất 3 lần liên tiếp = 3 ~ 5.66 [%]
e. Kết nối giữa ĐHBK Hà Nội và Thăng Long, Từ Liêm - Hà Nội
Tổng số gói tin tổn thất :: 12 / 346 [packets] ~ 3.46821 [%]
Số gói tin tổn thất đơn = 12 ~ 100.00 [%]
- ix -
Phụ lục 5: Mã nguồn thực hiện thuận toán phát hiện khoảng tín hiệu tích cực /
khoảng lặng tại bên phát.
Thuật toán thực hiện xác định gói tin cần truyền mang tín hiệu tích cực hay khoảng
lặng của tín hiệu phát thanh dự trên việc tính toán năng lượng và so sánh ngưỡng.
Quá trình phát hiện mức tín hiệu tích cực được thực hiện bằng cách gọi hàm:
double SoundDevice:: silenceDetect ( char *inputData, int inputSize )
Trong đó :
inputData: khối dữ liệu vào mang tín hiệu phát thanh nguồn,
inputSize : kích thước khối dữ liệu dữ liệu đầu vào bộ mã hóa.
Trước hết, chương trình xác định số mẫu tính hiệu trong một gói tin từ khối dữ liệu
đầu vào input Data. Tính toán năng lượng từng mẫu tín hiệu và lưu vào biến
totalEnergy. Cuối cùng, mức năng lượng tín hiệu trung bình everageEnergy của các
mẫu trong gói tin được xác định. Giá trị biến everageEnergy được so sánh với
ngưỡng năng lượng tín hiệu phát thanh tích cực activeSignalTheshold. Hàm trả về kết
quả 0 nếu là khoảng lặng của tín hiệu và giá trị mức năng lượng trung bình của mẫu
tín hiệu trong gói tin nếu là khoảng tín hiệu tích cực.
Mã nguồn chương trình:
#define energy (x) pow (x ,2 )
double SoundDevice::silenceDetect ( char *inputData, int inputSize )
{
double averageEnergy = 0;
int numberSample = size *8 / bitPerSample;
for ( int i = 0 ; i < numberSample ; i++ )
{
if (bitPerSample ==8)
{
averageEnergy += energy (* ( data + i ) );
}
else if ( bitPerSample ==16 )
{
averageEnergy += energy ( * (short * ) ( data + i*2 ) );
}
}
printf ("%d :: %0.3f\n", seq, averageEnergy/numberSample); // seq: thứ tự gói tin
- x -
return (averageEnergy / numberSample );
}
a. Giao diện chương trình xử lý số liệu khoảng tích cực / khoảng lặng của tín hiệu
b. Minh họa khoảng tích cực / khoảng lặng của tín hiệu phát thanh
Phụ lục 6: Mã nguồn thực hiện mã hóa tín hiệu phát thanh.
Quá trình mã hóa tín hiệu được thực hiện bằng cách gọi hàm:
int encodeData ( char * inputData, int inputSize, char * outputData );
Trong đó :
inputData: khối dữ liệu vào mang tín hiệu phát thanh nguồn,
inputSize : kích thước khối dữ liệu dữ liệu đầu vào bộ mã hóa.
outputData : khối dữ liệu đã được mã hóa.
- xi -
Hàm mã hóa tín hiệu encodeData trả về dung lượng của khối dữ liệu đã được
mã hóa.
Khối dữ liệu vào được chia thành các khung dữ liệu có dung lượng 160 Bytes. Mỗi
khung dữ liệu được mã hóa dựa trên thuật toán nén tín hiệu sử dụng thư viện
. Tùy thuộc vào mức chất lượng mà độ dài khung dữ liệu đã mã hóa có
kích thước khác nhau. Các khung dữ liệu sau khi mã hóa được ghép lại thành khối dữ
liệu đã được mã hóa outputData và dung lượng của khối dữ liệu này sẽ được trả về.
Mã nguồn chương trình:
# define FRAME_SIZE 160
int SpeexCodec::encodeData ( char* inputData , int inputSize, char *outputData )
{
int outputSize = 0;
int nbBytes = 0;
int numberFrame = inputsize / ( FRAME_SIZE * sizeof ( short ) );
char *cbits = ( char * ) malloc ( 200 );
float *input = ( float * ) malloc ( FRAME_SIZE * sizeof ( float ) );
short * buffer16 = ( short * ) inputData;
for ( int i = 0 ; i < numberFrame ; i++ )
{
// thực hiện mã hóa tín hiệu
speex_bits_reset ( &bits );
for ( int j = 0 ; j < FRAME_SIZE ; j ++ )
*( input + j ) = * ( buffer16 + j + i * FRAME_SIZE );
speex_encode ( state, input, &bits);
nbBytes = speex_bits_write ( &bits, cbits, 200 );
memcpy ( outputdata + i * nbBytes , cbits , nbBytes );
outputSize += nbBytes;
}
- xii -
return outputSize;
}
Phụ lục 7: Mã nguồn thực hiện giải mã tín hiệu phát thanh.
Quá trình giải mã tín hiệu được thực hiện bằng cách gọi hàm:
int decodeData ( char * inputData, int inputSize ,
int nbBytes , char * outputData );
Trong đó :
inputData: khối dữ liệu vào mang tín hiệu phát thanh đã được mã hóa,
inputSize : kích thước khối dữ liệu dữ liệu đầu vào bộ giải mã.
nbBytes : số Byte tương ứng với mức chất lượng nén là tham số cung cấp cho bộ giải
nén phục vụ giải mã dữ liệu tương ứng với mức chất lượng đã mã hóa.
outputData : khối dữ liệu đã được giải mã.
Hàm mã hóa tín hiệu decodeData trả về dung lượng của khối dữ liệu đã được
giải mã.
Khối dữ liệu đầu vào được chia nhỏ thành các khung dữ liệu đã mã hóa có kích thước
nbBytes. Các khung này được giải nén thành các khung ban đầu dữ liệu mang tín
hiệu phát thanh nguồn có kích thước FRAM_SIZE (160 bytes) dựa trên thuật toán
giải nén sử dụng thư viện trong . Các khung dữ liệu sau khi giải mã được
ghép lại thành khối dữ liệu outputData phục vụ tái tạo tín hiệu phát thanh và dung
lượng của khối dữ liệu này sẽ được trả về.
Mã nguồn chương trình:
int SpeexCodec::decodeData ( char* inputData,int inputSize,
int nbBytes, char* outputData )
{
int numberFrame = inputSize / nbBytes;
int outputSize = 0;
float *output = ( float * ) malloc ( FRAME_SIZE * sizeof ( float ) );
- xiii -
short *data = ( short * ) malloc (FRAME_SIZE * sizeof ( short ) );
for ( int i = 0 ; i < numberFrame ; i ++ )
{
// thực hiện giải mã tín hiệu
speex_bits_read_from ( &bits , inputData + i * nbBytes , nbBytes );
speex_decode ( state, &bits, output );
for ( int j = 0 ; j < FRAME_SIZE ; j ++ )
* ( data + j ) = * ( output + j );
memcpy ( outputData + i * FRAME_SIZE * sizeof ( short ) ,
( char * ) data , FRAME_SIZE * sizeof ( short ) );
outputsize += FRAME_SIZE * sizeof ( short ) ;
}
return outputSize;
}
Phụ lục 8: Mã nguồn thực hiện thuật toán thu dữ liệu từ thiết bị âm thanh và lưu
vào bộ đệm phía phát.
Dữ liệu nguồn mang tín hiệu phát thanh đã được số hóa đọc từ bộ đệm của thiết bị âm
thanh được lưu vào bộ nhớ trung gian soundBuffer theo độ dài gói tin packetLength
được thiết lập trước. Kế tiếp, thuật toán xác định mức năng lượng tín hiệu phát thanh
tích cực được thực hiện. Kết quả trả về sẽ quyết định gói tin có được lưu vào bộ đệm
phát trong trường hợp mang tín hiệu tích cực hay bị loại bỏ trong trường hợp mang tín
hiệu khoảng lặng. Dữ liệu trước khi lưu vào bộ đệm phát sẽ được mã hóa theo loại tải
tin xác lập trước. Các phần tử mang dữ liệu lưu trong bộ đệm phát sẽ được gửi vào
mạng theo điều khiển của bộ điều khiển lịch trình phát.
Mã nguồn chương trình:
void SoundDevice::capture( )
- xiv -
{
// cấp phát bộ đệm lưu dữ liệu nguồn
char* soundBuffer = ( char * ) malloc ( packetLength);
int seqNumber = 0;
int totalSilencePacket = 0 ;
int nbBytes = speexEncode->getEncodedByte ( qualityLevel );
int outputSize = len * nbBytes / FRAME_SIZE * sizeof ( short ) ;
char * speexData = ( char * ) malloc ( outputSize );
stopTxProccess = FALSE;
openSoundDevice( O_RDONLY);
txBuffer->clear();
while ( ! stopTxProccess )
{
if ( totalSilencePacket == SILENCE_PACKET_NUMBER)
{
for ( int i = SILENCE_PACKET_NUMBER - 1 ; i > 0 ; i--)
{
if ( txBuffer->count() >= i )
{
txBuffer->remove ( txBuffer->count() - i );
totalSilencePacket = 1;
}
else
{
totalSilencePacket = txBuffer->count();
}
}
- xv -
}
// Đọc dữ liệu từ bộ đệm của thiết bị âm thanh và lưu vào bộ đệm trung gian
int size = read ( sound_fd, soundBuffer, packetLength);
sound_item_t * item = new sound_item_t;
item->seqNumber = seqNumber;
item->mark = silenceDetect (soundBuffer, size);
if ( item->mark == 0)
// tăng số biến đếm các gói tin liên tiếp mang tín hiệu không tích cực
totalSilencePacket ++ ;
else
// Gói tin bắt đầu chu kỳ tín hiệu phát thanh tích cực, thiết lập lại biến đếm số
gói tin mang tín hiệu khoảng lặng
totalSilencePacket = 0 ;
switch ( codecType )
{
case PCM:
item->length = size;
item->data = ( char * ) malloc ( item->length );
memcpy ( item->data, soundBuffer, size );
break;
case SPEEX :
item->length = speexEncode->encodeData ( soundBuffer,
size, speexData);
item->data = ( char * ) malloc ( item->length );
memcpy ( item->data , speexData, item->length);
break;
}
- xvi -
// Đưa gói dữ liệu vào bộ đệm phát
txBuffer->append ( item );
seqNumber ++ ;
}
closeSoundDevice ( );
}
Phụ lục 9: Mã nguồn module tạo lịch trình gửi dữ liệu vào mạng.
void VoVBuffer::txTimerExpired()
{
if ( ( txBuffer->count( ) txFlag )
{
txBufferProgressBar->setProgress( txBuffer->count( ) );
return;
} else
capturer->txFlag = TRUE;
if ( txBuffer->isEmpty( ) && !capturer->txFlag )
{
txTimer->stop();
stateInfor->info();
return;
}
if ( txBuffer->isEmpty( ) && capturer->txFlag )
{
return;
} else
{
rtp_header_t * rtpHeader = new rtp_header_t;
rtpHeader ->seqNumber = txBuffer->at(0)->seqNumber;
rtpHeader ->length = txBuffer->at(0)->length;
rtpHeader ->timeStamp = QTime::currentTime ( Qt::UTC );
- xvii -
int headerSize = sizeof (rtp_header_t );
int packetSize = headerSize + txBuffer->at(0)->length;
if ( ( txBuffer->at(0)->mark != 0)
{
switch ( codecType )
{
case PCM :
rtpHeader->payloadType = PCM;
break;
case SPEEX:
rtpHeader->payloadType = SPEEX;
}
}
else
rtpHeader->payloadType = SILENCE;
char * rtpPacket = (char * ) malloc ( packetSize);
memcpy (rtpPacket , rtpHeader , headerSize );
memcpy (rtpPacket+headerSize, txBuffer->at(0)->data, txBuffer->at(0)->length);
sendDataToNetwork ( rtpPacket, packetSize);
delete rtpHeader;
free ( rtpPacket );
txBuffer->removeFirst();
}
Phụ lục 10: Mã nguồn thực hiện thuật toán thu nhận dữ liệu từ mạng và lưu vào
bộ đệm phía thu.
Module chương trình thực hiện thao tác đọc dữ liệu từ socket, tách dữ liệu mang tín
hiệu phát thanh lưu vào bộ đệm tại tạo, xử lý thông tin điều khiển, giải mã tín hiệu và
tính toán thời điểm tái tạo tín hiệu phát thanh của mỗi gói tin.
Mã nguồn chương trình:
# define alpha 0.998002
- xviii -
void PlayoutBuffer::receiveData ( char * data, int size)
{
rtp_header_t * rtpHeader = new rtp_header_t;
rtpHeader = (rtp_header_t * ) data;
int inputSize;
inputSize = rtpHeader ->length;
char * inputData = ( char * ) malloc ( inputSize );
int nbBytes = speexDecode->getEncodedByte ( qualityLevel );
int outputSize = inputSize * FRAME_SIZE * sizeof ( short ) / nbBytes;
char* outputData = ( char * ) malloc ( outputSize);
QTime rxTime = QTime::currentTime ( Qt::UTC );
long rxTime = timeConversion ( rxTime );
long txTime = timeConversion (rtpHeader->txTime);
int currentNetworkDelay = rxTime - txTime;
memcpy ( inputData , data + sizeof ( rtpHeader ), inputSize);
if ( rtpHeader->payloadType == SILENCE )
{
startTalkSpurt = FALSE;
return;
}
else
{
sound_item_t *item = new sound_item_t;
item->seqNumber = rtpHeader->seqNumber;
switch ( rtpHeader->payloadType )
{
case PCM :
- xix -
item->length = inputSize;
item->data = ( char * ) malloc ( item->length );
memcpy ( item->data , inputData , inputSize );
break;
case SPEEX :
item->length = speexDecode->decodeData ( inputData , inputSize,
nbBytes , outputData);
item->data = ( char * ) malloc ( item->length);
memcpy ( item->data , outputData, item->length );
break;
}
if ( startTalkSpurt )
{
// bắt đầu một chu kỳ tín hiệu phát thanh tích cực mới.
if ( !startFlag )
{
// bắt đầu nhận dữ liệu, khởi tạo đồng hồ tạo lịch trình tái tạo tín hiệu.
previousPlayoutTime = rxTime;
playoutTime = ( int ) ( txTime
+ currentAvarageDelay + 4 * currentDelayVariation );
item->interval = playoutTime - previousPlayoutTime;
previousPlayoutTime = playoutTime;
pushDataToPlayoutBuffer ( item );
if ( algorithmType == SPIKE_DET )
{
beforePreviousNetworkDelay = currentNetworkDelay;
previousNetworkDelay = currentNetworkDelay;
- xx -
delayMode = NORMAL;
}
playoutTimer->start ( item->interval, TRUE );
startFlag = TRUE ;
} else {
// Thiết lập thời điểm tái tạo tín hiệu của gói đầu tiên của chu kỳ tín
hiệu phát thanh tích cực mới .
playoutTime = ( int ) ( txTime +
curentAverageDelay + 4 * currentDelayVariation );
item->interval = playoutTime - previousPlayoutTime;
previousPlayoutTime = playoutTime;
// Đưa dữ liệu vào bộ đệm tái tạo
pushDataToPlayoutBuffer ( item );
// Ước đoán trễ mạng.
networkDelayEstimation ( currentNetworkDelay );
}
startTalkspurt = TRUE;
} else
{
// Tái tạo tín hiệu từ các gói tin trong cùng chu kỳ tín hiệu tích cực.
playoutTime = previousPlayoutTime + packetTimeLength;
// Thiết lập thời điểm tái tạo tín hiệu.
item->interval = playoutTime - previousPlayoutTime;
previousPlayoutTime = playoutTime;
// Đưa dữ liệu vào bộ đệm tái tạo
pushDataToPlayoutBuffer ( item );
// Ước đoán trễ mạng.
- xxi -
networkDelayEstimation ( currentNetworkDelay );
}
}
}
Phụ lục 11: Mã nguồn thực hiện thuật toán ước đoán trễ mạng và biến động trễ
trung bình của gói tin phục vụ quá trình tái tạo tín hiệu thích ứng
Trễ mạng ước đoán được xác định thông qua hàm:
void PlayoutBuffer::networkDelayEstimation ( int currentNetworkDelay);
Căn cứ vào trễ mạng của gói tin hiện tại currentNetworkDelay [ms]. Thuật toán hàm
trung bình mũ EXP_AVG và thuật toán SPIKE_DETECT được sử dụng để tính toán
trễ mạng trung bình currentAverageDelay và biến động trễ mạng trung bình
currentDelayVariation. Các thông số trên được sử dụng phục vụ việc tạo lịch trình
tái tạo tín hiệu phát thanh thích ứng theo tình trạng trễ mạng.
Mã nguồn chương trình:
# define spike_factor 0.875
void PlayoutBuffer::networkDelayEstimation ( int currentNetworkDelay)
{
swicth ( algorithmType )
{
case EXP_AVG:
currentAverageDelay = alpha * previousAverageDelay
+ ( 1 - alpha ) * currentNetworkDelay ;
currentDelayVariation = alpha * previousDelayVariation
+ ( 1 - alpha ) * abs ( currentAverageDelay - currentNetworkDelay );
break;
case SPIKE_DET:
if (delayMode == NORMAL )
{
- xxii -
if ( abs ( currentNetworkDelay - previousNetworkDelay ) >
abs ( 2 * currentDelayVariation ) + 800 )
{
// đột biến trễ bắt đầu xuất hiện
var = 0;
delayMode = SPIKE;
}
}
else
{
// mode:: SPIKE
var = var / 2 + abs ( 2 * currentNetworkDelay -
previousNetworkDelay - beforePreviousNetworkDelay ) / 8;
if ( var <= 63 )
{
delayMode = NORMAL;
beforePreviousNetworkDelay = previousNetworkDelay;
previousNetworkDelay = networkDelay;
return;
}
}
if ( delayMode == NORMAL )
{
currentAverageDelay = (1 - spike_factor) * currentNetworkDelay
+ spike_factor * previousAverageDelay;
}
else
- xxiii -
{
// delayMode:: SPIKE
currentAverageDelay = previousAverageDelay
+ ( currentNetworkDelay -
previousNetworkDelay);
}
currentDelayVariation = spike_factor * previousDelayVariation
+ (1 - spike_factor) * abs (curentNetworkDelay - current AverageDelay);
beforePreviousNetworkDelay = previousNetworkDelay;
previousNetworkDelay = currentNetworkDelay;
break;
}
}
._.
Các file đính kèm theo tài liệu này:
- LA3002.pdf