Tải bản đầy đủ (.docx) (25 trang)

Tìm hiểu hệ thống VoIP trên Asteriskx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.92 MB, 25 trang )

Chuyên đề Kỹ thuật chuyển mạch Hệ thống VoIP Asterisk
Mục lục
DANH MỤC HÌNH VẼ VÀ BẢNG BIỂU
Hình 13: Cấu trúc khung của gói tin RTP 1
Hình 14: Bắt gói bản tin RTP 2
Hình 15: Bắt gói tin SIP kết thúc cuộc gọi VoIP 3
Lời mở đầu
Trong những năm gần đây, chúng ta đã nghe nói nhiều đến điện thoại giá rẻ VoIP
như là một công nghệ mang tính cách mạng trong việc truyền tín hiệu thoại qua môi
trường Internet. Cùng với sự bùng nổ Internet, VoIP cũng đã có những bước phát triển
dài, ngày càng hoàn thiện về công nghệ, chất lượng ổn định, tích hợp được truyền thông
đa phương tiện và rất cạnh tranh về giá cước. Nhiều hệ thống VoIP đã ra đời và được
triển khai rộng khắp.Vì vậy việc nghiên cứu và nắm bắt các công nghệ về VoIP đang rất
được quan tâm. Trong quá trình tìm hiểu về VoIP, Nhóm 2-Đ07VTC1 đã quyết định
chọn đề tài “Tìm hiểu hệ thống VoIP trên Asterisk”, nội dung được trình bày trong 5
chương:
Nhóm 2 - Lớp Đ07VTC1 Trang1
Chuyên đề Kỹ thuật chuyển mạch Hệ thống VoIP Asterisk
Chương I: Đề xuất 3 giải pháp VoIP, so sánh và quyết định giải pháp triển khai
Chương II : Triển khai VoIP trên hệ thống Asterisk
Chương III: Thực hiện cuộc gọi
Chương IV: Bắt và phân tích các gói tin
Chương IV: Kết luận
Trong quá trình làm đề tại, dù đã cố gắng song do kiến thức hạn chế nên không
thể tránh khỏi những thiếu sót. Nhóm chúng em rất mong nhận được sự góp ý, hướng
dẫn giúp đỡ của Thầy và các bạn.
Chúng em xin chân thành cảm ơn!
Tp. Hồ Chí Minh, tháng 9 năm 2011
Nhóm thực hiện
Nhóm 2 –Đ07VTC1
CHƯƠNG I: GIỚI THIỆU BA PHẦN MỀM ỨNG DỤNG VOIP


1.1 Asterisk
1.1.1. Giới thiệu về phần mềm Asterisk
Asterisk là phần mềm mã nguồn mở miễn phí thực hiện cuộc gọi thoại qua VoIP,
cho phép các doanh nghiệp có thể lắp đặt hệ thống tổng đài PBX mà không cần phải
mua một hệ thống tổng đài hay phần mềm sở hữu độc quyền cho một hệ thống tổng đài
nội bộ. Asterisk là công cụ phần mềm mở cho thoại phổ biến nhất trên thế giới. Nó cho
phép các máy tính của một tổ chức có thể liên lạc thông tin bằng thoại với nhau thông
qua giao thức VoIP, tích hợp chuyển mạch TDM, và nó đáp ứng được nhu cầu giao tiếp
với mạng điện thoại chuyển mạch công cộng (PSTN).
Asterisk hoạt động trên nhiều hệ điều hành bao gồm FreeBSD, Linux, OS X,
Windows, và Solaris. Asterisk độc đáo ở chỗ nó cho phép các doanh nghiệp thiết lập
Nhóm 2 - Lớp Đ07VTC1 Trang2
Chuyên đề Kỹ thuật chuyển mạch Hệ thống VoIP Asterisk
một hệ thống tổng đài nội bộ PBX chuyên nghiệp với đầy đủ các tính năng cần thiết,
truy nhập sử dụng dịch vụ thoại không tính cước (free), và nó còn cung cấp một mức độ
lớn các tuỳ biến và tính linh hoạt cho các nhu cầu sử dụng cụ thể của từng đối
tượng. Đối với các cá nhân, tổ chức biết cách sử dụng Asterisk thì sẽ có nhiều lợi ích và
tính năng mà nó có thể cung cấp.
Một số nhà cung cấp mã nguồn mở PBX đã sử dụng Asterisk như một kỹ thuật
nền tảng cho các giải pháp về tổng đài riêng PBX hoặc phần mềm VoIP của họ. Các nhà
cung cấp, chẳng hạn như Free PBX, Elastix, Trixbox và Call Weaver, tất cả đều sử dụng
Asterisk như là kỹ thuật lõi cho các giải pháp phần mềm của họ.
1.1.2 Tính năng – ưu và nhược điểm của Asterisk
Asterisk có một số lợi ích và một số nhược điểm. Những lợi ích của việc sử dụng
Asterisk đã làm cho nó trở thành một giải pháp ngày càng phổ biến cho nhiều tổ
chức. Một số lợi ích của việc sử dụng Asterisk :
- Các cá nhân và công ty có thể chỉnh sửa phần mềm cho phù hợp với nhu cầu cụ thể của
họ.
- Ưu điểm chính chính là tiết kiệm chi phí lắp đặt cũng như chi phí cho thoại.
- Asterisk linh hoạt và có khả năng chỉnh sửa để làm việc với một loạt các thiết bị phần

cứng.
- Truy cập vào hàng ngàn hướng dẫn trên internet để tạo các giải pháp PBX khác nhau.
- Hỗ trợ kỹ thuật và truy cập vào các diễn đàn với chi phí hỗ trợ kỹ thuật hàng tháng
thấp.
- Các chức năng cho một giải pháp tổng đài PBX chuyên nghiệp, thường được cập nhật.
- Asterisk có các GUI và giao diện người dùng cho phép truy cập trực quan và dễ quản
lý.
• Một số nhược điểm mà các giải pháp phần mềm mã nguồn mở PBX còn là :
- Hỗ trợ là một chi phí thêm trong hầu hết các giải pháp
- Khó khăn trong việc triển khai thực hiện hoặc hiểu rõ làm thế nào để sử dụng phần
mềm.
- Đối với doanh nghiệp: cần có thời gian và nguồn lực cần thiết để chi trả cho việc đào
tạo nhân viên biết cách cài đặt, cấu hình, và sử dụng phần mềm.
2.1 OpenSIP
2.1.1 Khái niệm OpenSIPS
OpenSIPS (Open SIP Server) là một hệ thống mã nguồn mở của một SIP
server.Nó không chỉ là một SIP proxy/router vì OpenSIPS bao gồm những chức năng ở
cấp độ ứng dụng, OpenSIPS như là một máy chủ SIP,là thành phần cốt lõi của bất kỳ
giải pháp VoIP trên SIP server đa chức năng,đa mụcđích:Router,switch,application-
server,redirect-server,gateway,load-balancer...Với một cơ cấu định tuyến linh hoạt và
tùy biến OpenSIPS hợp nhất tiếng nói,video,IM (Instant Message) và các dịch
vụ Presence một cách có hiệu quả cao nhờ thiết kế dạng Module có thể mở rộng.Vì
vậy,OpenSIPS có hiệu quả cao,đáng tin cậy.OpenSIPS là một trong những máy chủ SIP
Nhóm 2 - Lớp Đ07VTC1 Trang3
Chuyên đề Kỹ thuật chuyển mạch Hệ thống VoIP Asterisk
nhanh nhất,với một thông lượng được xác định nó như là một giải pháp tối ưu cho
doanh nghiệp,các ngành công nghiệp.
2.1.1.2Tính năng và lợi ích của OpenSIPS
2.1.1.1 OpenSIPS trong VoIP
Hình 1: OpenSIPS trong VoIP

.1.2.2 Kiến trúc OpenSIPS
OpenSIPS là một SIP proxy,nó đơn giản hơn B2BUA trong Asterisk bởi vì một
SIP proxy chỉ liên quan đến báo hiệu.OpenSIPS bao gồm hơn 70 module, mỗi module
có một chức năng riêng, với giao diện module PLUG and PLAY thì OpenSIPS dễ dàng
mở rộng và nâng cấp các tính năng của mà không ảnh hưởng tới phần lõi và càng làm
tăng sự ổn định của hệ thống lõi.
.1.2.3 Khả năng kết nối đến PSTN
OpenSIPS cần một SIP gateway để kết nối tới PSTN.Nó không có khả năng cài
đặt thẻ điện thoại trong server.Thông thường,người ta sẽ thực hiện Asterisk như là một
cổng PSTN cho OpenSIPS.
.1.2.4 Giao tiếp với NAT
OpenSIPS có liên quan nhiều đến NAT,cho phép thoại hoặc luồng dữ liệu từ điện
thoại IP hoặc phần mềm VoIP của khách hàng trực tiếp đến một nhà cung cấp dịch vụ
trong nhiều trường hợp (không đối xứng NAT).OpenSIPS cũng cho phép bạn thao
tác trực tiếp SIP truyền thông để xử lý các trường hợp đặc biệt, chẳng hạn như
khi bạncó hai máyđiệnthoại VoIP phíasaucùngmộtNATroutervàmuốngửicácphươngtiện
truyền thông trực tiếp giữa chúng.
.1.2.5 Cân bằng tải
Nhóm 2 - Lớp Đ07VTC1 Trang4
Chuyên đề Kỹ thuật chuyển mạch Hệ thống VoIP Asterisk
Một sức mạnh độc đáo của OpenSIPS là khả năng cân bằng tải cho các cuộc gọi
VoIP.Thuật toán “chuyên ngành băm” trongOpenSIPS có thể được cấu hình để cân bằng
tải bởi các"tên người dùng", "ruri", "callid",và các đặc tính khác.OpenSIPS là
"failover aware" và có thể làm một phần bổ sung rất hữu ích của giải pháp Asterisk.
.1.2.6 Giao diện quản lí và cơ sở dữ liệu
Giao diện quản lí (cho tích hợp ngoài) thông qua FIFO file, XMLRPC hoặc
Datagram (UDP hoặc Unixsockets).
OpenSIPS đa cơ sở dữ liệu backends - MySQL, PostgreSQL, Oracle, Berkeley,
flat files và các loại database khác có thể xử lý unixodbc.
.1.2.8 Dịch vụ truyền thông

OpenSIPS là một Proxy SIP và không có khả năng của bất kỳ mạng lưới dịch vụ
truyền thông tin liên quan (phần tiếng nói của một cuộc điện thoại).OpenSIPS không
phải là một nền tản mà ta sử dụng để tạo ra hệ thống như IVR,thư thoại,TTS và nhận
biết tiếng nói…Điều này là do thiết kế.
.1.2.8 Khả năng nâng cấp OpenSIPS
OpenSIPS có thể chạy trên hệ thống nhúng, hiệu suất thiết lập cuộc gọi có thể lên
đến hàng trăm cuộc gọi/giây.
Với hệ thống có bộ nhớ 4GB, OpenSIP có thể phục vụ hơn 300.000 thuê bao trực
tuyến.
Hệ thống có thể dễ dàng mở rộng bằng cách thêm máy chủ OpenSIPS.
OpenSIPS hỗ trợ IPv4 và IPv6 và có thể phục vụ được Multiple domain.
.1.3 Kết luận
OpenSIPS là Carrier Class SIP proxy server được sử dụng chủ yếu bởi các nhà
cung cấp VoIP. Nó được thiết kế để xử lý khối lượng lớn các cuộc gọi, cân bằng truyền
tải SIP,giải quyết các kịch bản nâng cao cho NAT và liên quan đến báohiệu trong
SIP.Nổi bật về tính năng linh hoạt và sự ổn định, OpenSIPS đang liên tục phát triển các
tính năng đó trong Viễn thông. Rất phổ biến trong các dịch vụ cung cấp VoIP/Internet
Telephony, OpenSIPS cung cấp nền tảng truyền thông hoàn chỉnh: Vocie,Video, Instant
Messaging và Presence.Hơn thế nữa cấu hình OpenSIPS server không phải là dễ
dàng,nhưng đó là chìa khóa thành công và bảo mật cho dự án IP.Với đặc tính linh hoạt
của OpenSIPS cho phép triển khai dich vụ tiên tiến và tiết kiệm được thời gian và chi
phí.
.1 Kamailio
Cũng giống như OpenSIP, Kamailio được phát triển lên từ OpenSER, nhưng
OpenSIP thì lại đi theo hướng khác, hai nhánh này do sự xung đột về nhóm core nên
được tách ra làm hai. Đến Kamailio phiên bản 3.0 thì hai nhóm lại kết hợp và cùng chia
sẻ nhiều chức năng chungđể tương thích với nhau, có thể sẽ hợp nhất lạitrong tương lai.
Kamailio là SIP Server, gồm các vai trò:
- SIP Registrar
- SIP Proxy

Nhóm 2 - Lớp Đ07VTC1 Trang5
Chuyên đề Kỹ thuật chuyển mạch Hệ thống VoIP Asterisk
- SIP Redirector.
Asterisk là BUA(Back-to-back User Agent). Ngoài xử lý, SIP còn có một số giao
thức khác như:
- IAX
- H.323
Xử lý cảMedia lẫn control.Asterisk giống như một media gateway trong mô hình
làm việc của SIP, ngoài ra còn làm được:
- SIP Registrar
- SIP Client (UA).
Asterisk là IP PBX, hỗ trợ rất đầy đủ tính năng của một tổng đài nội bộ, còn
Kamailio thì được gọi là SIP Server, một phần của hệ thống SIP (chỉ quan tâm tới
control), chứ không gọi là IP PBX (một bộ hoàn chỉnh cả control lẫn media). Cũng vì
lý do chỉ quan tâm tới control, nên khả năng xử lý của Kamailio là rất khủng khiếp. Một
server bình thường (2 core, vài GB RAM) có khả năng quản lý hàng chục ngàn
subsciber, định tuyến hàng ngàn hướng khác nhau, và hàng trăm cuộc gọi/giây. Asterisk
để đạt được khả năng đó thì phải sử dụng rất nhiều server mạnh.Nhìn chung cả Asterisk
và Kamailio đều hỗ trợ SIP. Điểm khác nhau là ở chỗ, trong khi Asterisk là một hệ
thống khá hoàn chỉnh, hỗ trợ cả điều khiển và các dịch vụ đa phương tiện thì Kamailio
đơn thuần chỉ là SIP server trong mô hình VoIP, chính vì tính chuyên biệt như vậy nên
hiệu suất của nó là rất cao. Tuy nhiên, một mình Kamailio thì chưa đủ để tạo nên một
hệ thống VoIP kiểu như PBX mà Asterisk vẫn làm, phải có thêm hàng loạt các thiết bị
liên quan đến medianữa mới gần đủ chức năng như Asterisk:
Media gateway (ví dụ FXO gate kết nối đi PSTN, cái này Asterisk có thể tự làm
hoặc là sử dụng ngoài)
- MCU (conference server)
- IVR gateway
- ACD Gateway
- Recording Server

- Voice Mail server
Trong khi các chức năng này Asterisk có sẵn. Nhìn chung, Kamailio là một sản
phẩm của hướng phát triển VoIP, đó là chia nhỏ và chuyên biệt hóa các thành phần của
hệ thống.
Với việc bước đầu làm quen với VoIP, kiến thức còn hạn chế nhiều mặt, nên trong
chuyên đề này chúng em sẽ tìm hiểu về Asterisk, do hiện nay Asterisk khá phổ biên và
được sử dụng nhiều, các tài liệu hỗ trợ tìm hiểu cũng đa dạng. Việc xây dựng mô hình
mạng cũng tương đối đơn giản, nằm trong khả năng của nhóm.
Nhóm 2 - Lớp Đ07VTC1 Trang6
Chuyên đề Kỹ thuật chuyển mạch Hệ thống VoIP Asterisk
CHƯƠNG II: TRIỂN KHAI HỆ THỐNG ASTERISK
Asterisk là một phần mềm mang tính cách mạng, tin cậy, mã nguồn mở và miễn
phí mà biến một PC rẻ tiền thông thường chạy Linux thành một hệ thống điện thoại
doanh nghiệp mạnh mẽ. Asterisk là một bộ công cụ mã nguồn mở cho các ứng dụng
thoại và là một server xử lý cuộc gọi đầy đủ chức năng. Asterisk là một nền tảng tích
hợp điện thoại vi tính hoá kiến trúc mở. Nhiều hệ thống Asterisk đã được cài đặt thành
công trên khắp thế giới. Công nghệ Asterisk đang phục vụ cho nhiều doanh nghiệp.
Asterisk đem đến cho người sử dụng tất cả các tính năng và ứng dụng của hệ thống
tổng đài PBX và cung cấp nhiều tính năng mà tổng đài PBX thông thường không có
được.
2.1 Giới thiệu chung
- Mục đích:
• Thực hiện thử nghiệm các hình thức truyền thoại qua môi trường IP
• Nghiên cứu các tính năng tối ưu mà hệ thống Asterisk đem lại.
- Quy mô hệ thống:
Do hạn chế về cơ sở hạ tầng, thiết bị nên thí nghiệm ở đây được xây dựng với quy
mô nhỏ, chủ yếu nhằm mục đích nghiên cứu các tính năng một hệ thống VoIP.
2.2 Kết nối phần cứng
Các thiết bị dùng cho triển khai hệ thống Asterisk được kết nối theo mô hình sau:
Nhóm 2 - Lớp Đ07VTC1 Trang7

Chuyên đề Kỹ thuật chuyển mạch Hệ thống VoIP Asterisk
Hình 2: Các thiết bị trong hệ thống Asterisk
PBX là một máy chủ sử dụng OS là Windows, cài đặt Asterisk 1.6. Cấu hình máy
chủ:
- RAM: 1GB
- CPU: 2GHz
- HDD: 250GB
2 Laptop sử dụng có cài đặt softphone X-Lite
Switch có đủ cổng để kết nối tới các máy tính khác.
Kết quả mong muốn đạt được là thực hiện được cuộc gọi VoIP trong mạng LAN,
dùng phần mềm Wireshark bắt và phân tích các gói tin SIP.
2.3 Cài đặt phần mềm
.3.1 Máy chủ PBX
Cài đặt OS là Windows7giao diện của hệ điều hành:
Nhóm 2 - Lớp Đ07VTC1 Trang8
Chuyên đề Kỹ thuật chuyển mạch Hệ thống VoIP Asterisk
Hình 3: Giao diện hệ điều hành
.3.2 Cài đặt phần mềm Asterisk trên máy chủ
Nhóm 2 - Lớp Đ07VTC1 Trang9
Chuyên đề Kỹ thuật chuyển mạch Hệ thống VoIP Asterisk
Hình 4 – Cài đặt .Net Framework 4.0 để hỗ trợ cài đặt Asterisk
Nhóm 2 - Lớp Đ07VTC1 Trang10

×