Hệ thống VoIP và tổng đài Asterisk
Phần I
Tổng quan về công nghệ VoIP
Ứng dụng VoIP đầu tiên được phát triển năm 1995 bởi một công ty của Israeli
tên là VocalTel . Ứng dụng này là phần mềm điện thoại internet chạy trên máy tính cá
nhân giống như điện thoại PC ngày nay sử dụng card âm thanh, microm loa. Ý tưởng của
nó là sử dụng các phương pháp nén tín hiệu thoại rồi chuyển chúng vào các gói IP và
truyền qua mạng Internet. Ứng dụng VoIP đầu tiên này nói chung còn gặp phải nhiều vấn
đề như : trễ , chất lượng còn thấp và không tương thích với các mạng ngoài. Mặc dù vậy,
sự ra đời của nó cũng là một bước đột phá quan trọng. Kể từ đó đến nay, công nghệ VoIP
phát triển ngày càng nhanh.
I. Khái niệm
VoIP ( Voice Over IP ) là công nghệ cho phép truyền thông tin thoại từ nơi này
sang nơi khác thông qua các mạng sử dụng giao thức IP ( Internet Protocol ) để truyền tải
thông tin. VoIP cũng thường được biết đến dưới một số tên khác như : điện thoại Internet,
điện thoại IP, điện thoại dải rộng ( Broadband Telephony ) vv…
Ở điện thoại thông thường, tín hiệu thoại được lấy mẫu với tần số 8 KHz sau đó
lượng tử hóa 8 bit/mẫu và được truyền với tốc độ 64 KHz đến mạng chuyển mạch rồi
truyền tới đích. Ở phía thu, tín hiệu này sẽ được giải mã thành tín hiệu ban đầu.
Công nghệ VoIP cũng không hoàn toàn khác với điện thoại thông thường. Đầu
tiên , tín hiệu thoại cũng được số hóa , nhưng sau đó thay vì truyền trên mạng PSTN qua
các trường chuyển mạch , tín hiệu thoại được nén xuống tốc độ thấp rồi đóng gói , truyền
qua mạng IP . Tại bên thu, các luồng thoại sẽ được giải nén thành các luồng PCM 64 rồi
truyền tới thuê bao bị gọi.
II. Ưu nhược điểm
1. Ưu điểm .
- Gọi điện thoại giá rẻ : Đây là ưu điểm nổi bật nhất của VoIP. Sử dụng công nghệ
VoIP có thể gọi điện thoại đường dài hoặc điện thoại ra nước ngoài với giá rẻ
tương đương với giá gọi nội hạt.
- 1 -
Hệ thống VoIP và tổng đài Asterisk
hay tính cước...Mỗi gatekeeper sẽ quản lý một vùng bao gồm các đầu cuối đã đăng
ký, nhưng cũng có thể nhiều gatekeeper cùng quản lý một vùng trong trường hợp
một vùng có nhiều gatekeeper.
IV. Các giao thức trong mạng VoIP
1. Giao thức H323
Khi đề cập đến thoại IP, tiêu chuẩn quốc tế thường được đề cập đến là H.323. Giao
thức H.323 là chuẩn do ITU-T SG16 phát triển cho phép truyền thông đa phương tiện qua
các hệ thống dựa trên mạng chuyển mạch gói, ví dụ như Internet. Nó được ITU-T ban hành
lần đầu tiên vào năm 1996 và gần đây nhất là năm 1998. H.323 là chuẩn riêng cho các
thành phần mạng, các giao thức và các thủ tục cung cấp dịch vụ thông tin multimedia như :
audio thời gian thực, video và thông tin dữ liệu qua các mạng chuyển mạch gói , bao gồm
các mạng dựa trên giao thức IP. Tập giao thức H.323 được thiết kế để hoạt động trên tầng
vận chuyển của các mạng cơ sở. Tuy nhiên, khuyến nghị H.323 rất chung chung nên ít
- 3 -
Hệ thống VoIP và tổng đài Asterisk
được coi là tiêu chuẩn cụ thể. Trong thực tế, hoàn toàn có thể thiết kế một hệ thống thoại
tuân thủ H.323 mà không cần đến IP. Khuyến nghị này chỉ đưa ra yêu cầu về “giao diện
mạng gói” tại thiết bị đầu cuối. Ban đầu, H.323 dự định dành cho X.25, FrameRelay sau đó
là ATM, nhưng giờ đây lại là TCP/IP, trong khi đó có rất ít H.323 được vận hành trên
mạng X.25 và ATM.
1.1.Cấu trúc của H.323.
1.1.1. Thiết bị đầu cuối.
- Thực hiện các chức năng đầu cuối : thực hiện gọi hoặc nhận cuộc gọi.
1.1.2. Gatekeeper
Một miền H.323 trên cơ sở mạng IP là tập hợp tất cả các đầu cuối được gán
với một bí danh. Mỗi miền được quản trị bởi một Gatekeeper duy nhất, là trung
tâm đầu não, đóng vai trò giám sát mọi hoạt động trong miền đó. Đây là thành phần
tuỳ chọn trong hệ thống VoIP theo chuẩn H.323. Tuy nhiên nếu có mặt Gatekeeper
trong mạng thì các đầu cuối H.323 và các Gateway phải hoạt động theo các dịch vụ
của Gatekeeper đó. Gatekeeper hoạt động ở hai chế độ :
trên kênh H.225.
• Cho phép cuộc gọi : Thông qua việc sử dụng báo hiệu H.225, Gatekeeper
có thể loại bỏ các cuộc gọi không được phép. Những nguyên nhân từ chối
- 5 -
Hệ thống VoIP và tổng đài Asterisk
bao gồm hạn chế tới hoặc từ một đầu cuối cụ thể, hay các Gateway, và hạn
chế truy nhập trong các khoảng thời gian nhất định.
• Quản lý băng thông : Gatekeeper có thể hạn chế một số các đầu cuối
H.323 cùng một lúc sử dụng mạng.Thông qua việc sử dụng kênh báo hiệu
H.225, Gatekeeper có thể loại bỏ các các cuộc gọi từ một đầu cuối do sự
hạn chế băng thông. Điều đó có thể xảy ra nếu Gatekeeper thấy rằng không
đủ băng thông sẵn có trên mạng để trợ giúp cho cuộc gọi. Việc từ chối cũng
có thể xảy ra khi một đầu đang tham gia một cuộc gọi yêu cầu thêm băng
thông. Nó có thể là một chức năng rỗng nghĩa là mọi yêu cầu truy nhập đều
được đồng ý.
• Quản lý cuộc gọi : Một ví dụ cụ thể về chức năng này là Gatekeeper có
thể lập một danh sách tất cả các cuộc gọi H.323 hướng đi đang thực hiện để
chỉ thị rằng một đầu cuối bị gọi đang bận và cung cấp thông tin cho chức
năng quản lý băng thông.
1.1.3. Khối điều khiển đa điểm MCU .
Khối điều khiển đa điểm (MCU) đwợc sử dụng khi một cuộc gọi hay hội
nghị cần giữ nhiều kết nối hoạt động. Do có một số hữu hạn các kết nối đồng thời,
nên các MCU giám sát sự thoả thuận giữa các đầu cuối và sự kiểm tra mọi đầu cuối
về các khả năng mà chúng có thể cung cấp cho hội nghị hoặc cuộc gọi. Các MCU
gồm hai phần: Bộ điều khiển đa điểm (MC) và Bộ xử lý đa điểm (MP).
Bộ điều khiển đa điểm (MC) có trách nhiệm trong việc thoả thuận và quyết
định khả năng của các đầu cuối. Trong khi đó bộ xử lý đa điểm được sử dụng để
xử lý đa phương tiện (multimedia), các luồng trong suốt quá trình của một hội nghị
hoặc một cuộc gọi đa điểm.
Bộ xử lý đa điểm ( MP ) có thể không có hoặc có rất nhiều vì chúng có trách
• Release Complete: chỉ thị rằng cuộc gọi đang bị giải phóng.
• Facility: Đây là một bản tin Q.932 dùng để yêu cầu hoặc phúc đáp các dịch vụ
bổ sung. Nó cũng được dùng để cảnh báo rằng một cuộc gọi sẽ được định tuyến
trực tiếp hay thông qua GK.
1.2.3 Giao thức H.245
H245 xử lý các bản tin điều khiển từ đầu cuối đến đầu cuối giữa các thực thể
H.323. Các thủ tục H.245 thiết lập các kênh logic cho việc truyền tín hiệu âm thanh, hình
ảnh, dữ liệu và thông tin kênh điều khiển. Báo hiệu H.245 được thiết lập giữa 2 đầu cuối,
một đầu cuối với một MC hoặc một đầu cuối với GK. Đầu cuối chỉ thiết lập duy nhất một
kênh điều khiển H.245 cho mỗi cuộc gọi mà nó tham gia. Một đầu cuối, MCU, GK có thể
hỗ trợ nhiều cuộc gọi cùng một lúc do vậy có nhiều kênh điều H.245 tương ứng. Khuyến
nghị H.245 định nghĩa một số thực thể giao thức độc lập trợ giúp cho báo hiệu từ đầu cuối
đến đầu cuối như sau:
• Trao đổi khả năng : Bao gồm những bản tin cho phép xác định khả năng trao đổi
dữ liệu và âm thanh của từng đầu cuối tham gia cuộc gọi. Nó đảm bảo cho bên thu đủ khả
năng nhận và xử lý thông tin đầu vào mà không bị xung đột gì. Khi biết được khả năng thu
của đầu cuối nhận, thì đầu cuối phát sẽ giới hạn nội dung thông tin mà nó truyền đi trong
khuôn khổ khả năng thu trên. Ngược lại, khả năng truyền cho phép đầu cuối nhận lựa chọn
chế độ thu thích hợp. Với tín hiệu âm thanh, khả năng trao đổi bao gồm các bộ giải mã tín
hiệu thoại như họ tiêu chuẩn G: G.729 8kbps, G.711 64kbps, G.723 5,3 hoặc 6,3 kbps,
G.722 48kbps...
• Quyết định chủ - tớ: Là các thủ tục quyết định đầu cuối nào là chủ đầu cuối nào
là tớ trong một cuộc gọi xác định. Mối quan hệ này được duy trì trong suốt thời gian cuộc
gọi.
- 8 -
Hệ thống VoIP và tổng đài Asterisk
• Trễ vòng (Round Trip delay) : Là các thủ tục dùng để xác định trễ giữa đầu cuối
nguồn và đầu cuối đích. Bản tin RounđTripDelayRequest đo trễ và kiểm tra thực thể giao
thức H.245 ở đầu cuối bên kia có còn hoạt động hay không.
• Báo hiệu kênh logic (Logical channel signaling) : Báo hiệu kênh logic sử dụng
SIP sử dụng các bản tin mời (INVITE) để thiết lập các phiên và để mang các thông
tin mô tả phiên truyền dẫn. SIP hỗ trợ các phiên đơn bá (unicast) và quảng bá (multicast)
tương ứng các cuộc gọi điểm tới điểm và cuộc gọi đa điểm. Có thể sử dụng năm chức năng
- 10 -
Hệ thống VoIP và tổng đài Asterisk
của SIP để thiết lập và kết thúc truyền dẫn là : định vị thuê bao, khả năng thuê bao, độ sẵn
sàng của thuê bao, thiết lập cuộc gọi và xử lý cuộc gọi.
SIP được IETF đ−a ra trong RFC 2543. Nó là một giao thức dựa trên ý tưởng và
cấu trúc của HTTP(HyperText Transfer Protocol)-giao thức trao đổi thông tin của World
Wide Web- vμ lμ một phần trong kiến trúc multimedia của IETF. Các giao thức có liên
quan đến SIP bao gồm giao thức RSVP (Resource Reservation Protocol), giao thức truyền
vận thời gian thực (Real-time Transport Protocol), giao thức cảnh báo phiên SAP (Session
Announcement Protocol), giao thức miêu tả phiên SDP (Session Description Protocol). Các
chức năng của SIP độc lập, nên chúng không phụ thuộc vào bất kỳ giao thức nào thuộc các
giao thức trên. Mặt khác, SIP có thể hoạt động kết hợp với các giao thức báo hiệu khác như
H.323.
SIP là một giao thức theo thiết kế mở do đó nó có thể được mở rộng để phát triển
thêm các chức năng mới. Sự linh hoạt của các bản tin SIP cũng cho phép đáp ứng các dịch
vụ thoại tiên tiến bao gồm cả các dịch vụ di động.
2.1 Các thành phần trong hệ thống SIP
- 11 -Redirect
Server
Location
Server
Registrar
Server
User Agent
--------------------------------------------------------------
INVITE sip: SIP/2.0
Via: SIP/2.0/UDP 192.168.6.21:5060
From: sip:
To: <sip:>
Call-ID:
CSeq: 100 INVITE
Expires: 180
User-Agent: Cisco IP Phone/ Rev. 1/ SIP enabled
Accept: application/sdp
Contact: sip::5060
Content-Type: application/sdp
Hệ thống VoIP và tổng đài Asterisk
Một số trường mào đầu đơn giản :
- INVITE : Để chỉ thị rằng thuê bao hoặc dịch vụ được mời tham gia vào một
phiên. Nó bao gồm một mô tả phiên và đối với các cuộc gọi song công thì bên chủ gọi chỉ
thị phương thức truyền thông (media) trong bản tin này. Theo phương pháp đơn giản này
các bên có thể xác định được các khả năng của bên kia và bắt đầu một phiên hội thoại .
- ACK : Những yêu cầu này tương ứng với một yêu cầu INVITE. Chúng là sự xác
nhận cuối cùng từ một hệ thống cuối và chấm dứt một giao dịch được khởi tạo bởi
INVITE.
- OPTIONS : Bản tin này cho phép truy vấn và tập hợp các khả năng của user agent
và network server. Tuy nhiên yêu cầu này không được dùng để thiết lập phiên.
- BYE: Bên chủ gọi và bị gọi sử dụng yêu cầu này để giải phóng cuộc gọi. Trước
khi thực sự giải phóng cuộc gọi, user agent gửi yêu cầu này tới server để cảnh báo rằng nó
muốn giải phóng phiên làm việc.
- CANCEL: Yêu cầu này cho phép user agent và network server xoá bỏ bất kỳ một
yêu cầu nào đang thi hành.
- REGISTER: yêu cầu này được client dùng để đăng ký thông tin với SIP server.
BYE
BYE
BYE
OK
OK OK
UAS
- Theo kiểu Proxy :
- 14 -
Location
Server
Client
Proxy
Server
UAS
1. INVITE 4. INVITE
7. ACK 8. ACK
6. OK 5. OK
2 3