Tìm hiểu hệ thống và phân tích ứng dụng hội thảo đa phương tiện dựa trên SIP – asterisk Mục lục2Lời nói đầu3Phân công công việc4Phần 1: Tìm hiểu về mô hình hội nghị đa phương tiện được triển khai trong môi trường hệ thống Asterisk – SIP51Mô hình hội nghị đa phương tiện51.1Sự ra đời và phát triển51.2Chức năng chính của hội nghị đa phương tiện72Cấu trúc hệ thống của hội nghị đa phương tiện92.1Cấu trúc hệ thống9 Trung tâm hệ thống9 Các thiết bị đầucuối(Terminal)10 Khối điều khiển đa điểm MCU(Multipoint Control Unit)102.2Mô hình hội nghị tương tác thực tế11Phần 2: Tìm hiểu về cấu trúc hoạt động của giải pháp MCU mềm trong ứng dụng hội nghị đa phương tiện của hệ thống AsteriskSIP133Cấu trúc khối điều khiển MCU134Cấu trúc và hoạt động của các giải pháp MCU mềm trong ứng dụng hội nghị đa phương tiện AsteriskSIP164.1Cấu trúc hoạt động của MCU mềm trong AsteriskSIP174.2Giải pháp19Phần 3: Phân tích thử nghiệm ứng dụng và giải thích về chất lượng dịch vụ hội nghị theo công nghệ hệ thống AsteriskSIP so với công nghệ MCU mềm khác và nhận xét205Phân tích thử nghiệm ứng dụng hội nghị theo hệ thống AsteriskSIP205.1Tìm hiểu chung các vấn đề hội nghị ĐPT215.2Môi trường công nghệ Asterisk hỗ trợ thực hiện ứng dụng hội nghị thoại235.3Các bước thử nghiệm hội thảo Audio trên nền Asterisk266Giải thích về chất lượng dịch vụ hội nghị theo công nghệ hệ thống AsterickSIP so với công nghệ MCU mềm khác.30Lời nói đầuNgày nay khi Internet đang phát triển cực kỳ mạnh mẽ, nhu cầu của con người về các dịch vụ trực tuyến đang tăng cao, vì vậy hàng loạt các dịch vụ đã ra đời, trong đó có các dịch vụ về hội nghị trực tuyến, đã giúp cho công việc của con người được thực hiện một cách dễ dàng hơn và ở bất kỳ nơi đâu.Tuy nhiên, đối với các công ty, tổ chức loại nhỏ ở Việt Nam thì các dịch vụ liên quan đến hội nghị trực tuyến tuy có nhiều nhưng lại chưa đáp ứng được nhu cầu của họ, đó là một dịch vụ có chi phí thấp tuy nhiên vẫn đáp ứng đầy đủ được các yêu cầu của một dịch vụ họp trực tuyến cơ bản nhất.Chính vì lý do như vậy, chúng em đã lựa chọn đề tài: “Tìm hiểu hệ thống và phân tích ứng dụng hội thảo đa phương tiện dựa trên SIP – Asterisk.”Nội dung cơ bản của đề tài gồm 3 phần như sau: Chương 1: Tìm hiểu về mô hình hội nghị đa phương tiện được triển khai trong môi trường hệ thống Asterisk – SIP. Chương 2: Tìm hiểu về cấu trúc và hoạt động của giải pháp MCU mềm trong ứng dụng Hội nghị đa phương tiện của hệ thống Asterisk – SIP. Chương 3: Phân tích thử nghiệm ứng dụng và giải thích về chất lượng dịch vụ hội nghị theo công nghệ hệ thống Asterisk – SIP so với công nghệ MCU mềm khác và nhận xét.
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI Viện Công nghệ Thông tin và Truyền thông
BÁO CÁO BÀI TẬP LỚN TRUYỀN THÔNG ĐA PHƯƠNG TIỆN
Đề tài 18:
Tìm hiểu hệ thống và phân tích ứng dụng hội thảo đa phương tiện
dựa trên SIP – Asterisk
Sinh viên thực hiện:
1 Lê Tuấn Anh 20104389
2 Tạ Kiều Cường 20106087
3 Trần Anh Dũng 20104835
Giáo viên hướng dẫn: PGS.TS Nguyễn Thị Hoàng Lan
HÀ NỘI – 2014
Trang 2Mục lục
Mục lục 2
Lời nói đầu 3
Phân công công việc 4
Phần 1: Tìm hiểu về mô hình hội nghị đa phương tiện được triển khai trong môi trường hệ thống Asterisk – SIP 5
1 Mô hình hội nghị đa phương tiện 5
1.1 Sự ra đời và phát triển 5
1.2 Chức năng chính của hội nghị đa phương tiện 7
2 Cấu trúc hệ thống của hội nghị đa phương tiện 9
2.1 Cấu trúc hệ thống 9
- Trung tâm hệ thống 9
- Các thiết bị đầu-cuối(Terminal) 10
- Khối điều khiển đa điểm MCU(Multipoint Control Unit) 10
2.2 Mô hình hội nghị tương tác thực tế 11
Phần 2: Tìm hiểu về cấu trúc hoạt động của giải pháp MCU mềm trong ứng dụng hội nghị đa phương tiện của hệ thống Asterisk-SIP 13
3 Cấu trúc khối điều khiển MCU 13
4 Cấu trúc và hoạt động của các giải pháp MCU mềm trong ứng dụng hội nghị đa phương tiện Asterisk-SIP 16
4.1 Cấu trúc hoạt động của MCU mềm trong Asterisk-SIP 17
4.2 Giải pháp 19
Phần 3: Phân tích thử nghiệm ứng dụng và giải thích về chất lượng dịch vụ hội nghị theo công nghệ hệ thống Asterisk-SIP so với công nghệ MCU mềm khác và nhận xét 20
5 Phân tích thử nghiệm ứng dụng hội nghị theo hệ thống Asterisk-SIP 20
5.1 Tìm hiểu chung các vấn đề hội nghị ĐPT 21
5.2 Môi trường công nghệ Asterisk hỗ trợ thực hiện ứng dụng hội nghị thoại 23
5.3 Các bước thử nghiệm hội thảo Audio trên nền Asterisk 26
6 Giải thích về chất lượng dịch vụ hội nghị theo công nghệ hệ thống Asterick-SIP so với công nghệ MCU mềm khác 30
Trang 3Lời nói đầu
Ngày nay khi Internet đang phát triển cực kỳ mạnh mẽ, nhu cầu của con người
về các dịch vụ trực tuyến đang tăng cao, vì vậy hàng loạt các dịch vụ đã ra đời, trong đó có các dịch vụ về hội nghị trực tuyến, đã giúp cho công việc của con người được thực hiện một cách dễ dàng hơn và ở bất kỳ nơi đâu
Tuy nhiên, đối với các công ty, tổ chức loại nhỏ ở Việt Nam thì các dịch vụ liên quan đến hội nghị trực tuyến tuy có nhiều nhưng lại chưa đáp ứng được nhu cầucủa họ, đó là một dịch vụ có chi phí thấp tuy nhiên vẫn đáp ứng đầy đủ được các yêu cầu của một dịch vụ họp trực tuyến cơ bản nhất
Chính vì lý do như vậy, chúng em đã lựa chọn đề tài: “Tìm hiểu hệ thống và
phân tích ứng dụng hội thảo đa phương tiện dựa trên SIP – Asterisk.”
Nội dung cơ bản của đề tài gồm 3 phần như sau:
- Chương 1: Tìm hiểu về mô hình hội nghị đa phương tiện được triển khai trong môi trường hệ thống Asterisk – SIP
- Chương 2: Tìm hiểu về cấu trúc và hoạt động của giải pháp MCU mềm trong ứng dụng Hội nghị đa phương tiện của hệ thống Asterisk – SIP
- Chương 3: Phân tích thử nghiệm ứng dụng và giải thích về chất lượng dịch vụhội nghị theo công nghệ hệ thống Asterisk – SIP so với công nghệ MCU mềm khác và nhận xét
Trang 4Phân công công việc
Lê Tuấn Anh 20104389: Tìm hiểu về mô hình hội nghị đa phương tiện được triển khai trong môi trường hệ thống Asterisk – SIP (khảo sát hệ thống tại PTN các bài thực hành).
Trần Anh Dũng 20104835: Tìm hiểu về cấu trúc và hoạt động của giải pháp MCU mềm trong ứng dụng Hội nghị đa phương tiện của hệ thống Asterisk – SIP.
Tạ Kiều Cường 20106087: Phân tích thử nghiệm ứng dụng và giải thích về chất lượng dịch vụ hội nghị theo công nghệ hệ thống Asterisk – SIP so với công nghệ MCU mềm khác và nhận xét.
Trang 5Phần 1: Tìm hiểu về mô hình hội nghị đa phương tiện được triển khai trong môi trường hệ thống Asterisk – SIP
1 Mô hình hội nghị đa phương tiện
1.1 Sự ra đời và phát triển
- Trong các nhóm làm việc, tương tác như trong các hội nghị, cuộchọp…luôn đòi hỏi có quá trình truyền thông giữa các thành viên đểphối hợp hoạt động, phối hợp giải quyết vấn đề, lập kế hoạch chunghoặc trao đổi thông tin trạng thái…
- Trong hầu hết các trường hợp thì việc cộng tác giữa các thành viêntốt nhất là thông qua tương tác trực tiếp (face to face interaction) Tuynhiên, rõ ràng để tổ chức một hội nghị thực sự(physical conference) làrất tốn kém về mặt thời gian, tiền bạc và cả sự di chuyển vật lý nàođó… để có thể tham dự hội nghị
=> Từ đó, việc phát triển các hội nghị: Multimedia conferencing,
Videoconferencing từ xa đã giải quyết được vấn đề trên và ngày càng hoàn thiện về mặt đáp ứng được QoS(chất lượng dịch vụ).Thay vì các cách trao đổi thông thường, hội nghị đa phương tiện sẽ thông qua các kênh truyền thông để cung cấp cho các thành viên nhiều công cụ, phương tiện để các thành viên tương tác với nhau bằng âm thanh, cử chỉ…
Trang 61.2 Chức năng chính của hội nghị đa phương tiện
Hệ thống hội nghị đa phương tiện có các chức năng chính sau đây:
Thiết lập kết nối đa điểm cho phép thực hiện phiên họp qua mạngdưới dạng đồng thời truyền tín hiệu tiếng nói và hình ảnh giữa cácđiểm
Điều khiển phiên họp động, tương tác trực tuyến tiếng nói hoặchình ảnh theo thời gian thực
Điều độ hội nghị tự động
Cung cấp dịch vụ thư mục hội nghị
Kết thúc hội nghị
Trang 72 Cấu trúc hệ thống của hội nghị đa phương tiện
có một số chức năng chính như: ghi lại tín hiệu hình ảnh, âm thanh, mã hóa/giải
mã tín hiệu thu được.
Trang 8- Trung tâm hệ thống
Có nhiệm vụ thực hiện phân bố tài nguyên, quản lý và định tuyến
Cho phép tạo ra các hội nghị trực tuyến hoặc thêm/loại bỏ người tham gia vào hội nghị
- Các thiết bị đầu-cuối(Terminal)
Đây là các thiết bị tiếp xúc người dùng cuối, cung cấp cho người dùng giao tiếp theo thời gian thực với những người dùng khác, có một số chức năng chính như:ghi lại tín hiệu hình ảnh, âm thanh, mã hóa/giải mã tín hiệu thu được
Thiết bị cuối thường là máy tính, điện thoại có đầy đủ các thành phần:
Video input: camera, webcam
Video output: màn hình, ti vi, máy chiếu
Audio input: microphones
Audio output: loa
Điện thoại SIP: Softphone, IP Phone, Mobile Phone…vv
- Khối điều khiển đa điểm MCU(Multipoint Control Unit)
Đây là thành phần có vai trò quan trọng để hình thành hội nghị tương tác đa điểm, với nhiệm vụ điều khiển hội nghị, thiết lập giao thức.MCU bao gồm 2 thành phần chính:
Multipoint Controller(MC): Đây là thành phần bắt buộc trongMCU có vai trò điều khiển việc liên kết giữa nhiều thiết bị đầucuối trong hệ thống như là quyết định dòng dữ liệu nào sẽ là dòngmulticast…
Multipoint Processor(MP): là thành phần tùy chọn, có nhiệm vụthực hiện việc trộn, chuyển mạch, xử lý cho từng dòng dữ liệu theothời gian thực trong hội nghị
Trang 92.2 Mô hình hội nghị tương tác thực tế
- Admin: Kick tất cả các thuê bao ra khỏi phòng, kick từng thuê bao ra khỏi phòng, Khóa/mở phòng họp, tắt/mở tiếng thành viên, tắt/mở tiếng cả phòng họp, tăng/giảm âm lượng, giới hạn thời gian, thoát khỏi phòng họp
- Member: Trao đổi thông tin , tham gia vào các hoạt động họp qua mạng trongthời gian thực theo quy định và theo sự điều khiển của admin
- Observer: Quan sát viên - Chỉ được quyền tham dự và nghe
Trang 10Phần 2: Tìm hiểu về cấu trúc hoạt động của giải pháp MCU mềm trong ứng dụng hội nghị đa phương tiện của hệ thống Asterisk-SIP
3 Cấu trúc khối điều khiển MCU
MCU (Multipoint Control Unit) là thiết bị (có thể là phần mềm-thiết bịmềm) cho phép tổ chức hội nghị đa phương tiện giữa các thiết bị đầu cuối(có thể hoạt động với các giao thức khác nhau)
MCU bao gồm 2 thành phần chính
Multipoint Controller(MC) :Đây là thành phần bắt buộc trong MCU cóvai trò điều khiển việc liên kết giữa nhiều thiết bị đầu cuối trong hệ thốngnhư là quyết định dòng dữ liệu nào sẽ là dòng multicast
Multipoint Processror(MP): là thành phần tuỳ chọn,có nhiệm vụ thựchiện việc trộn, chuyển mạch,xử lý cho từng dòng dữ liệu theo thời gian thựctrong hội nghị
Sau khi phân tích kịch bản một phiên hội nghị trực tuyến, ta sẽ phântích các chức năng của Asterisk phục vụ cho hội nghị trực tuyến để hiểuđược các công chức năng cần cải thiện hay xây dựng mới cho hệ thống
Khối MCU cần đáp ứng được các yêu cầu sau đây:
Tính tin cậy: để đảm bảo trải nghiệm cuộc gọi và tính tin cậy của cuộcgọi, MCU cần có công nghệ chuyển mã(transcoding) và so khớp tốc độ(ratematching) Ngoài ra với mạng không ổn định, MCU còn có thể có thêm khảnăng tránh lỗi để đảm bảo tính tin cậy
Khả năng mở rộng: Khối MCU cần được thiết kế để phù hợp với yêucầu hiện tại và cả sự phát triển trong tương lai một cách dễ dàng nhất với chiphí thấp nhất
Thiết kế mở: giúp người dung luôn có thể dễ dàng tạo và thực hiện cácphiên họp
Tính báo mật: bao gồm:
Bảo mật nội dung: với các chức năng như mã hóa giọng nói âmthanh, dữ liệu trao đảo trong phiên họp
Trang 11 Bảo mật truy cập: hỗ trợ cơ chế bảo mật việc quản lý thiết bịnhư phương thức bảo mật, quyền truy cập Cần có tính mềm dẻo
để người điều hành có thể điều khiển theo ý mình
Dựa trên công nghệ tiêu chuẩn: việc này giúp cho khối MCU có đượckhả năng kết nối với nhiều loại thiết bị khác nhau, với nhiều phương thứckhác nhau Không chỉ có vậy, nó còn giúp giảm ảnh hưởng khi một côngnghệ không còn được sử dụng hoặc giảm chi phí khi cho các thành phầnmới
Quality of Experience: giúp cho việc quản lý, cấu hình, thay đổi vàbảo trì hệ thống một cách dễ dàng Khối MCU thường được thiết kế theomodule để có được khả năng mềm dẻo và dễ dàng cho việc điều khiển, thêmvào các thành phần mới
Để tổ chức và điều hành phiên họp khối MCU cần có các chức năngchính sau đây:
Thiết lập kết nối đa điểm: thiết lập kết nối giữa MCU và các thiết bịcủa thành viên
Hỗ trợ nhiều định dạng codec khác nhau như H263, H264, G711…Chuyển mã(Transcoding): cho phép chuyển đổi tín hiệu dữ liệu giữacác loại mã(codec) khác nhau
So khớp tốc độ(Rate matching): cho phép các thiết bị có tốc độ dữ liệukhác nhau có thể cùng kết nối tới khối MCU, đảm bảo hoạt động được vớinhiều cấu hình mạng khác nhau
Quản lý kênh truyền(line/channel): quản lý các kênh truyền giữa thiết
bị của các thành viên phiên họp và khối MCU Bao gồm các chức năng như:
Tạo/giải phóng kệnh truyền
Quản lý trạng thái trạng thái kênh truyền
Điều phối trao đổi dữ liệu giữa các kênh truyền
Quản lý dữ liệu vào ra như:
Mã hóa/giải mã tín hiệu âm thanh/hình ảnh theo các codec
Gửi thông báo bằng âm thanh, hình ảnh
Trang 12Quản lý thành viên: cho phép chủ tọa có thể các quản lý thành viênnhư kick, mute/unmute, …
Mã hóa: mã hóa cả dữ liệu đa phương tiện và tín hiệu điều khiển
Điểu khiển thời gian thực: thiết lập và quản lý một số sư kiện theo thờigian thực
Trên đây là các chức năng cơ bản cần có đối với khối điều khiển đađiểm MCU Ta có thể thấy MCU là thành phần đặc biệt quan trọng trong môhình hội nghị đa phương tiện
Trang 134 Cấu trúc và hoạt động của các giải pháp MCU mềm trong ứng dụng hội nghị đa phương tiện Asterisk-SIP
4.1 Cấu trúc hoạt động của MCU mềm trong
Asterisk-SIP
Thực chất trong Asterisk không có bộ phận phục vụ hội nghị đaphương tiện riêng mà chỉ có 1 ứng dụng(hàm) Meetme được gọi là “cầu hộinghị”(conference bridge) với một số chức năng phục vụ cho việc tổ chứcmột phiên họp trực tuyến như:
Tạo phiên hội nghị
Thêm và loại bỏ thành viên
Phân phối tài nguyên ở mức cơ bản đó là phân phối cho tất cảcác thành viên theo thứ tự tham gia cuộc họp mà không có độ ưutiên nào khác
Ngoài ra còn có thêm một hàm MeetmeAdmin nhằm bổ sung khả năngđiều khiển hội nghị với một số chức năng như:
Kick một hoặc toàn bộ thành viên ra khỏi phiên họp
Khóa phiên họp không cho thành viên khác tham gia thêm vào
Cho phép hoặc không cho phép 1 thành viên được phát biểu
Tăng giảm âm lượng của các thành viên
Từ đó có thể thấy được bên trong nền tảng Asterisk chưa thực sự có khối MCU
sự bất tiện không nhỏ cho chủ tọa do không thể theo dõi được theo thời gian
Trang 14thực số lượng cũng như thông tin của các thành viên đang tham gia phiên họp.
Như vậy hệ thống cần có một giao diện quản lý đồng nhất và thân thiện cho chủ tọa cũng như các thành viên tham gia phiên họp
Trang 15Phần 3: Phân tích thử nghiệm ứng dụng và giải thích về chất lượng dịch vụ hội nghị theo công nghệ hệ thống Asterisk-SIP so với công nghệ MCU mềm khác và nhận xét
5 Phân tích thử nghiệm ứng dụng hội nghị theo hệ thống Asterisk-SIP
5.1 Tìm hiểu chung các vấn
đề hội nghị ĐPT
•Các chức năng của hệ thống hội nghị
- Thiết lập kết nối đa điểm (multipoint connection set up),
- Điều khiển phiên họp động, tương tác trực tuyến tiếng nói/ hình ảnh thời gian thực (dynamic session control)
- Điều độ hội nghị tự động (automatic conference scheduling)
- Kết thúc hội nghị (conference close)
- Cung cấp dịch vụ thư mục hội nghị
• Cấu trúc các thành phần hệ thống: Trung tâm hệ thống, MCU, các thiết bị cuối
• Các mô hình điều khiển và tổ chức hội nghị
- Các vai tham gia Hội nghị: chủ tọa, thành viên chính thức, thành viên quan sát
-Các mô hình điều khiển tập trung/ điều khiển phân tán, phân cấp
•Các vấn đề kỹ thuật chủ yếu: Xử lý dữ liệu đa phương tiện, MCU điều tương tác đa điểm gian thực, tốc độ truyền,, giao thức truyền thông, phương thức truyền Unicast/ Multicast, băng thông, công nghệ mạng
• Các giải pháp công nghệ:
-Hội nghị theo chuẩn công nghệ H323
-Hội nghị dựa trên SIP- Asterisk
-Hội nghị dựa trên công nghệ Web
• Các yêu cầu về tổ chức hội nghị trực tuyến thời gian thực:
- Truyền và tương tác đa phương tiện, trực tuyến, thời gian thực có tổ chức
- Đồng bộ audio/video thời gian thực
- Điều khiển tương tác đa điểm trong các mô hình hội nghị (họp)
• Vấn đề chất lượng dịch vụ (QoS)
Trang 165.2 Môi trường công nghệ Asterisk hỗ trợ thực hiện ứng dụng hội nghị thoại
Asterisk đã có sẵn một số hàm hỗ trợ thực hiện hội nghị, trong đó quan trọng nhất là ba hàm: meetme(), meetmeAdmin(), và meetmeCount() Trong đó:
- meetmeCount() là hàm cho biết số người tối đa có thể tham dự hội nghị.
- meetme() là hàm cho phép users tham gia vào hội nghị hoặc khởi tạo các
phòng họp tự động Các options của hàm meetme() có thể tham khảo tại
http://www.voipinfo.org/wiki/view/Asterisk+cmd+MeetMe
- meetmeAdmin() là hàm điều khiển hội nghị với các options: để kick, mute,
khóa phòng họp… Các options của hàm meetmeAdmin() có thể tham khảo tạihttp://www.voip-info.org/wiki/view/Asterisk+cmd+MeetmeAdmin
Hàm meetme(): Đế tạo ra một phòng họp, ta cần cấu hình file
/etc/asterisk/meetme.conf
Cú pháp chung để khai báo một phòng họp là: MeetMe([confno][,[options][,pin]]) Trong đó gồm:
- confno: số hiệu của phòng họp
- pin: mật khẩu để đăng nhập vào phòng họp
- adminpin: mật khẩu của người quản trị phòng họp Theo mặc định của
Asterisk, mật khẩu này chỉ có ý nghĩa trong trường hợp thiết lập tùy chọn "Đợi đến khi người quản trị đăng nhập vào phòng họp" Tuy nhiên, trong ứng dụng này, mật khẩu này sẽ dung để xác định quyền quản trị phòng họp khi người dùng đăng nhập (bao gồm quyền đóng phòng họp, loại một người ra khỏi phònghọp, tắt hoặc bật tiếng của một người tham gia cuộc họp)
5.3 Các bước thử nghiệm hội thảo Audio trên nền Asterisk
1 Cài đặt, cấu hình hệ thống hội nghị
Một số lệnh thử nghiệm qua ví dụ cấu hình sau
Cấu hình thuê bao
Trang 17;thanh vien quan sat
exten=> 202,1,Answer()
exten=> 202,n,MeetMe(1000,lpi)
*p: thoát khỏi phòng họp khi ấn phím #
*i: thông báo khi có thành viên vào/ra phòng họp
*l: đặt chế độ chỉ cho phép nghe (không được nói) cho thành viên
${UNIQUEID)
exten=> 200,n,MeetMe(1000,asprc)
*a: chế độ admin cho chủ tọa
*s: chế độ menu của chủ tọa khi ấn phím *
*r: ghi âm lại cuộc họp
*c: thông báo số lượng thành viên trong phòng họp
Các chức năng chủ tọa có thể làm trong buổi họp
+ kick tất cả thuê bao ra khỏi phòng
+ kick từng thuê bao ra khỏi phòng
Ví dụ về các chức năng của chủ tọa trong buổi họp
;kick tat ca thue bao ra khoi phong