Nghiên cứu về hoạt động và cách triển khai tổng đài IP PBX Asterisk

Download miễn phí Nghiên cứu về hoạt động và cách triển khai tổng đài IP PBX Asterisk


Đề tài: Nghiên cứu về hoạt động và cách triển khai tổng đài IP PBX Asterisk

MỤC LỤC

CHƯƠNG I: TỔNG QUAN VỀ TỔNG ĐÀI IP PBX ASTERISK 1

1.1 Giới thiệu Asterisk - Asterisk là gì? 1
1.1.1 Vai trò của Digium đối với Asterisk 1
1.1.2 Dự án Zapata và các mối quan hệ của nó với Asterisk 2
1.2 Vì sao chọn Asterisk? 2
1.2.1 Giảm chi phí một cách mạnh mẽ 2
1.2.2 Môi trường phát triển nhanh chóng và dễ dàng 2
1.2.3 Giàu chức năng 3
1.2.4 Nội dung động trên điện thoại 3
1.2.5 Kiểu quay số linh hoạt và mạnh 3
1.2.6 Mã nguồn mở chạy trên nền Linux 3
1.2.7 Các giới hạn trong kiến trúc của Asterisk 3
1.3 Kiến trúc của Asterisk 4
1.3.1 Các kênh 4
1.3.2 Codec và chuyển dịch codec 5
1.3.3 Các giao thức 5
1.3.4 Các ứng dụng 5
1.4 Mô tả tổng quan tổng đài IP PBX Asterisk 6
1.5 So sánh giữa các loại tổng đài 7
1.5.1 Điện thoại sử dụng mô hình PBX/Softswitch cũ 7
1.5.2 Điện thoại dùng hệ thống Asterisk 7
1.6 Xây dựng một hệ thống kiểm tra 8
1.6.1 Một FXO, một FXS 8
1.6.2 Nhà cung cấp dịch vụ VoIP, ATA 8
1.6.3 Board FXO không đắt tiền, ATA 8
1.7 Một số ứng dụng của Asterisk 9
1.7.1 IP PBX 9
1.7.2 Sử dụng IP trong các tổng đài PBX cũ 10
1.7.3 Bỏ qua chi phí gọi điện thoại đường dài 11
1.7.4 Server ứng dụng (IVR, điện thoại hội nghị, Voicemail) 11
1.7.5 Media Gateway 12
1.7.6 Trung tâm giao tiếp chăm sóc khách hàng - Contact Center Platform (Call Center) 13
1.8 VoIP với Asterisk 13
1.8.1 Các ưu điểm của VoIP 13
1.8.1.a Tính hội tụ 13
1.8.1.b Chi phí cơ sở hạ tầng 14
1.8.1.c Tiêu chuẩn mở 14
1.8.1.d Sự tích hợp giữa máy tính và điện thoại 14
1.8.2 Kiến trúc VoIP của Asterisk 14
1.8.3 Các giao thức VoIP và mô hình OSI 15
1.8.4 Làm sao để chọn một giao thức? 16
1.8.4.a SIP - giao thức thiết lập phiên 16
1.8.4.b IAX - Inter Asterisk eXchange 16
1.8.4.c Giao thức điều khiển cổng phương tiện MGCP 17
1.8.4.d H.323 17
1.8.4.e Bảng so sách các giao thức 17
1.8.5 User, Peer và Friend 17
1.8.6 Các codec và chuyển đổi codec 18
1.8.7 Làm sao để chọn một codec phù hợp 18
1.8.8 Phần mào đầu do phần Header của giao thức 18
1.8.9 Kỹ thuật lưu lượng 19
1.8.9.a Sự đơn giản hoá 19
1.8.9.b Phương pháp Erlang B 19
1.8.10 Giảm băng thông yêu cầu cho VoIP 20
1.8.10.a Nén RTP Header 20
1.8.10.b IAX2 trunk mode 21
1.8.10.c Giảm VoIP tải 21

CHƯƠNG 2: CÀI ĐẶT TỔNG ĐÀI IP PBX ASTERISK 22

2.1 Cái đặt từng phần 22
2.1.1 Cài đặt hệ điều hành CentOS 22
2.1.2 Cài đặt các gói trong tổng đài Asterisk 27
2.1.2.a Chuẩn bị các tập tin trước khi cài đặt 27
2.1.2.b Compiling và cài đặt các gói 28
2.1.2.c Cài đặt Asterisk-GUI 31
2.2 Giới thiệu Trixbox các thành phần 32
2.2.1 Cài đặt Trixbox 32
2.3 Các hỗ trợ trong vận hành và cấu hình Asterisk 35
2.3.1 Một số lệnh chính trong CLI của Asterisk 35
2.3.1.a Các lệnh chung 35
2.3.1.b Các lệnh cho SIP 35
2.3.1.c Quản trị Server 35
2.3.2 Các công cụ hỗ trợ vận hành và cấu hình Asterisk 36
2.3.2.a Phần mềm Putty 36
2.3.2.b Phần mềm WINSCP 37

CHƯƠNG 3: TÌM HIỂU CÁCH CẤU HÌNH ASTERISK 38

3.1 Tìm hiểu các tập tin cấu hình trong Asterisk 38
3.2 Ngữ pháp của Asterisk 38
3.2.1 Nhóm đơn 39
3.2.2 Các tùy chọn đối tượng kiểu ngữ pháp thừa kế 39
3.2.3 Dạng thực thể phức hợp 40
3.3 Tìm hiểu cấu hình một giao tiếp PSTN 40
3.3.1 Cài đặt X100P 41
3.3.2 Cài và cấu hình driver card X100P 41
3.4 Tìm hiểu cấu hình điện thoại IP SIP 41
3.4.1 Phần chung [general] 41
3.4.2 Phần Client 42
3.5 Tim hiều sơ đồ quay số 43
3.5.1 Số nội bộ (Extensions) 43
3.5.1.a Một số mẫu số (pattern) 43
3.5.1.b Các ví dụ về số nội bộ (extensions) 44
3.5.2 Số ưu tiên (Priorities) 44
3.5.3 Ứng dụng (Applications) 44
3.5.4 Ngữ cảnh (Contexts) 45
3.6 Tìm hiểu cách tạo một sơ đồ quay số 46
3.6.1 Ví dụ cơ bản 46
3.6.2 Một ví dụ khác 46
3.6.3 Các kênh cầu nối sử dụng ứng dụng dial() 47
3.7 Tìm hiểu cách tạo một hệ thống IVR 48
3.7.1 Ứng dụng background() 48
3.7.2 Ứng dụng record() 48
3.7.3 Ứng dụng playback() 49
3.7.4 Ứng dụng read() 49
3.7.5 Ứng dụng gotoif() 49
3.8 Xây dụng một hệ thống IVR 49
3.8.1 Thu âm lời chào 50
3.8.2 Tạo ra hệ thống IVR 50

CHƯƠNG 4: XÂY DỰNG MỘT TỔNG ĐÀI THỰC TẾ 51

4.1 Mô tả các bước thực hiện 51
4.2 Mô tả chức năng và hoạt động của tổng đài 51
4.3 Cấu hình phần cứng 51
4.4 Cài đặt tổng đài Asterisk 51
4.5 Chuẩn bị và cài đặt các thiết bị FXS, FXO 51
4.6 Cấu hình các thông số trong tổng đài 55
4.7 Thiết lập các Client và kiểm tra cuộc gọi 56

CHƯƠNG 5: ĐÁNH GIÁ CHUNG VÀ HƯỚNG MỞ CỦA ĐỀ TÀI 57

5.1 Đánh giá chung 57
5.1.1 Ưu điểm 57
5.1.2 Những điểm hạn chế 57
5.1 Hướng mở của đề tài 58

TÀI LIỆU THAM KHẢO 59


Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

cho thương mại sử dụng tổng số đường line = 33 và xấp xỉ 2xT1 lines
1.b Băng thông yêu cầu
Chúng ta chọn G.729 codec vì băng thông yêu cầu, chất lượng thoại và môi trường tiêu tốn CPU.
Với một đường trung kế cho mỗi 5 extension:
Băng thông yêu cầu cho chi nhánh số 1 (Frame-relay): 26.8*6=160.8 Kbps
Băng thông yêu cầu cho chi nhánh số 2 (Frame-relay): 26.8*3= 80.4 Kbps
1.8.9.b Phương pháp Erlang B
1.a Số cuộc gọi đồng thời trong VoIP
Đôi khi, tính đơn giản không phải là phưong pháp tốt nhất. Khi bạn có dữ liệu phía trước, bạn có thể yêu cầu lên nhiều đặc tính khác. Agner Karup Erlang (công ty điện thoại Copenhagen, 1909) đã phát triển một công thức để tính toán số đường line trong một nhóm trung kế giữa hai thành phố. Chúng ta sẽ sử dụng công thức này. Erlang là một đơn vị đo đạc lưu lượng thường được sử dụng trong viễn thông, nó được sử dụng để miêu tả độ lớn của lưu lượng trong một giờ.
Ví dụ: 20 cuộc gọi trong một giờ với 5 phút trung bình cho mỗi cuộc gọi.
Bạn tính số erlang như sau:
Lưu lượng tính theo phút trong một giờ là: 20x5=100 phút
Giờ lưu lượng trong một giờ: 100/60=1,66 Erlangs
Bạn có thể tính được con số này từ một cuộc gọi đã được ghi nhật ký vào hệ thống và sử dụng nó để thiết kế ra mạng của bạn để tính toán số đường line yêu cầu. Mỗi đường line được biết đến có thể tính cho băng thông yêu cầu.
Erlang B là phương pháp được sử dụng nhiều nhất để tính số đường line trong một nhóm trung kế. Nó giả sử các cuộc gọi đến một cách ngẫu nhiên (dạng phân bố Poisson) và các cuộc gọi bị khoá ngay lập tức được giải toả. Phương pháp này yêu cầu bạn phải biết về lưu lượng giờ cao điểm Busy Hour Traffic (BHT). Bạn có thể có được BHT này từ nhật ký cuộc gọi hay một cách đơn giản là BHT =17% số cuộc gọi phút trong một ngày.
Một biến số quan trọng khác là cấp độ dịch vụ GoS (Grade of Service). GoS định nghĩa số cuộc gọi có thể bị khoá trong nhóm đường line. Bạn có thể điều chỉnh thông số này. Nó thường nằm ở 0.05 (5% các cuộc gọi bị mất) hay 0.01 (1% cuộc gọi bị mất).
Ví dụ: Sử dụng cùng ví dụ trên chúng ta cho một vài dữ liệu trong thành phần lưu lượng. Từ nhật ký cuộc gọi hệ thống chúng ta khám phá ra dữ liệu này.
Dữ liệu từ cuộc gọi ghi nhật ký (phút cuộc gọi và BHT)
Chi nhánh chính đến chi nhánh con 1 = 2000 phút, BHT= 300 phút
Chi nhánh chính đến chi nhánh con 2 = 1000 phút, BHT = 170 phút
Chi nhánh 1 đến chi nhánh 2 = 0, BHT = 0, GoS=0.01
Chi nhánh chính đến chi nhánh con 1 - BHT = 300phút/60 = 5 Erlangs
Chi nhánh chính đến chi nhánh con 2 - BHT = 170phút/60 = 2.83 Erlangs
Sử dụng bảng tính Erlang tại www.erlang.com
1.b Băng thông yêu cầu
Chúng ta sử dụng một mạng WAN nơi mà gói mất hiếm khi xảy ra. Chúng ta sẽ chọn G.729 codec vì chất lượng thoại tốt của nó và dữ liệu được nén (8Kbps).
Chọn codec: G.729
Lớp Datalink: Frame-relay
Ước lượng băng thông cho chi nhánh 1: 28.8x11 = 294.8 Kbps
Ước lượng băng thông cho chi nhánh 2: 26.8x8 = 214.40 Kbps
1.8.10 Giảm băng thông yêu cầu cho VoIP
Có 3 phương pháp để làm giảm băng thông được yêu cầu cho các cuộc gọi VoIP:
+ Nén RTP header
+ IAX trunked
+ VoIP tải (payload)
1.8.10.a Nén RTP Header
Trong mạng Frame-relay và PPP, ta có thể sử dụng nén RTP header, nén RTP header được định nghĩa trong RFC 2508. Nó là một chuẩn IETF cho nhiều router. Tuy nhiên chú ý rằng một vài loại router yêu cầu một tập đặc tính khác cho tài nguyên này được sẵn sàng.
Sự ảnh hưởng của việc sử dụng nén RTP header này là không có cơ sở. Nó giảm băng thông được yêu cầu trong ví dụ của chúng ta từ 26.8 Kbps cho mỗi cuộc đàm thoại xuống 11.2 Kbps, giảm được 58.2%.
1.8.10.b IAX2 trunk mode
Nếu đang kết nối 2 server Asterisk, ta có thể sử dụng giao thức IAX2 trong dạng trunk mode. Công nghệ tiên phong này không yêu cầu bất kỳ một router cụ thể nào và nó có thể áp dụng cho bất kỳ loại datalink nào. IAX2 trunk mode sử dụng lại cùng phần header từ các cuộc gọi thứ 2 và các cuộc gọi sau đó. Sử dụng G.729 và một đường PPP link, cuộc gọi đầu tiên tốn 30 Kbps băng thông, nhưng cuộc gọi thứ hai sử dụng cùng phần header như cuộc gọi thứ nhất nên đã giảm mức băng thông cần thiết cho cuộc gọi này xuống 9.6 Kbps.
1.8.10.c Giảm VoIP tải
Thật không may phương pháp này không có trong Asterisk. Nó thường sử dụng lược đồ trong các gateway trên Internet. Việc sử dụng phần tải (payload) lớn làm tăng độ trễ của hệ thống.
CHƯƠNG 2: CÀI ĐẶT TỔNG ĐÀI IP PBX ASTERISK
2.1 Cái đặt từng phần
Để cài đặt thành công một tổng đài IP PBX Asterisk ta tiến hành cài đặt các phần sau:
Cài đặt 1 hệ điều hành Linux. Ở đây ta chọn hệ điều hành CentOS 5.2
Cài đặt các gói trong tổng đài Asterisk.
Cài đặt Asterisk-GUI để hỗ trợ việc thiết lập và quản lý tổng đài bằng WEB một cách nhanh, dễ sử dụng.
2.1.1 Cài đặt hệ điều hành CentOS
Download CentOS DVD tại địa chỉ:
Các bước cài đặt chính:
Hình 14: Cài đặt CentOS - Khởi động việc cài đặt
Hình 15: Cài đặt CentOS - Giao diện bắt đầu cài đặt CentOS
Hình 16: Cài đặt CentOS - Chọn ngôn ngữ
Hình 17: Cài đặt CentOS - Chọn kiểu bàn phím
Hình 18: Cài đặt CentOS - Cấu hình thiết lập ổ cứng và phân vùng ổ cứng
Hình 19: Cài đặt CentOS - Phân vùng ổ cứng cho CentOS
Trong kỹ thuật phân vùng trong Linux hay CentOS thì người ta thường chia ra làm 4 phần chính:
Phân vùng /boot: khoảng 100MB dùng để lưu dữ liệu khởi động hệ thống.
Phân vùng swap: tốt nhất là dung lượng gấp 2 lần RAM, đối với hệ thống >4GB RAM thì ta chọn bằng với dung lượng RAM. Phần vùng swap sẽ là một phân vùng giúp cho hệ điều hành hoạt động nhanh hơn, tương tự như vùng nhớ Virtual Memory trong Windows.
Phân vùng /home: dung lượng khoảng một nửa dung lượng còn lại chứa dữ liệu cho user.
Phân vùng / : đây là phân vùng root chiếm phần dung lượng còn lại.
Hình 20: Cài đặt CentOS - Thiết lập địa chỉ IP
Phần thiết lập địa chỉ IP: ta có thể sử dụng Dynamic cấp địa chỉ IP tự động hay tự thiết lập địa chỉ IP bằng tay. Phần thiết lập địa chỉ IPv6 có thể bỏ qua vì không sử dụng.
Hình 21: Cài đặt CentOS - Chọn múi giờ
Hình 22: Cài đặt CentOS - Nhập password Console cho hệ thống
Hình 23: Cài đặt CentOS - Chọn cách cài đặt
Phần thiết lập cách cài đặt: để đơn giản ta chỉ cần cài theo kiểu server. Không cần cài những kiểu có giao diện như Gnome hay KDE vì sau này ta sẽ cấu hình trực tiếp qua Console hay bằng phần mềm Putty.
Chọn Customize now để cài đặt thêm các gói hỗ trợ cho Asterisk.
Hình 24: Cài đặt CentOS - Chọn các gói hỗ trợ cho Asterisk
Phần chọn các gói hỗ trợ cho Asterisk: ta cần chọn Development Tools, chi tiết các gói trong này ta có thể bấm nút Optional packages để tìm hiểu chi tiết hơn. Các gói này sẽ hỗ trợ các chương trình và thư viện đủ để ta cài đặt và vận hành thành công Asterisk sau này.
Hình 25: Cài đặt CentOS - Chọn kiểu loader khởi động
Hình 26: Cài đặt CentOS - Chuẩn bị cài đặt
Hình 27: Cài đặt CentOS - Quá trình cài đặt
Quá trình cài đặt CentOS diễn ra khoảng 20 phút sau đó ta khởi động lại hệ thống và tiến trình cài đặt CentOS thành công, tiếp theo là cài đặt các gói thực hiện chức năng tổng đài IP PBX Asterisk.
2.1.2 Cài đặt các g
Music ♫

Copyright: Tài liệu đại học ©