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

Thiết kế và xây dựng bản tính cước cho hệ thống voip dựa trên protocol sip sử dụng asterisk implementation

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 (1.75 MB, 52 trang )

Đồ án tốt nghiệp Đại Học

Lời cảm ơn

LỜI CẢM ƠN
Trước hết, tôi xin chân thành cảm ơn Khoa Công Nghệ Thông Tin, Học Viện
Công Nghệ Bưu Chính Viễn Thông cơ sở tại Thành Phố Hồ Chí Minh đã tạo điều
kiện tốt cho tôi thực hiện đề tài tốt nghiệp này.
Tôi xin chân thành cảm ơn thầy Trần Phước Nguyên đã tận tình hướng dẫn tôi
trong suốt thời gian thực hiện đề tài.
Cuối cùng, tôi xin chân thành cảm ơn quý thầy cô trong khoa đã tận tình giảng
dạy, trang bị cho chúng tôi những kiến thức quý báu trong những năm học vừa
qua.
Mặc dù tôi đã cố gắng hoàn thành bài báo cáo trong phạm vi và khả năng cho
phép, nhưng chắc chắn sẽ không tránh khỏi những thiết sót, kính mong sự thông
cảm và chỉ bảo tận tình của quý thầy cô.

TP.Hồ Chí Minh, tháng 12 năm 2012
Sinh viên

1


Đồ án tốt nghiệp Đại Học

Mục lục

MỤC LỤC

2



Đồ án tốt nghiệp Đại Học

Các từ, cụm từ viết tắt

CÁC TỪ, CỤM TỪ VIẾT TẮT
VoIP

Voice over Internet Protocol
Giao thức truyền thoại trên IP

SIP

Session Initiation Protocol
Giao thức khởi tạo phiên

MGCP

Media Gateway Control Protocol
Giao thức điều khiển cổng đa phương tiện

PSTN

Public Switch Telephone Network
Mạng chuyển mạch điện thoại công cộng

RTP

Realtime Transport Protocol
Giao thức vận chuyển thời gian thực


RTCP

Real-time Transport Control Protocol
Giao thức điều khiển vận chuyển thời gian thực

SDP

Session Description Protocol
Giao thức mô tả phiên làm việc

QoS

Quality of Services
Chất lượng dịch vụ

UDP

Unit Datagram Protocol
Giao thức đơn vị dữ liệu

URL

Uniform Resource Locator
Tham chiếu tài nguyên trên Internet

PBX

Private Branch eXchange
Tổng đài nhánh riêng


3


Đồ án tốt nghiệp Đại Học

Danh mục các bảng, sơ đồ, hình

DANH MỤC CÁC BẢNG, SƠ ĐỒ, HÌNH

4


Đồ án tốt nghiệp Đại Học

Lời nói đầu

LỜI NÓI ĐẦU

Trong nhiều thập kỷ qua, công nghệ VoIP đã và đang được sử dụng rộng rãi ở
nhiều nơi trên thế giới với nhiều tính năng ưu việt so với mạng điện thoại truyền thống
đó là mạng điện thoại truyền thống đươc triển khai trên cơ sở hạ tầng riêng biệt so với
cơ sở hạ tầng của mạng internet, mạng điện thoại truyền thống có giá cước cao và tính
linh động thấp, trong khi đó mạng VoIP được triển khai trên nền tảng cơ sở hạ tầng
sẵn có của internet hoạt động hoàn toàn thông qua internet do vậy cước phí cuộc gọi
giảm hơn nhiều so với mạng điện thoại truyền thống và hơn nữa là dễ dàng triển khai,
trong bối cảnh mạng internet ngày càng phổ biến trên toàn thế giới và theo đó thì các
dịch vụ cũng như các công nghệ dựa trên Internet cũng phát triển không ngừng công
nghệ VoIP được coi là một bước đột phá trong thông tin liên lạc toàn cầu , nó có vai
trò rất quan trọng trong sự phát triển của đời sống xã hội nói chung và sự phát triển

của công nghệ thông tin nước nhà nói riêng. Một công nghệ được mong đợi với giá
cước rẻ hơn nhiều so với các mạng điện thoại khác mang lại lợi ích không hề nhỏ đối
với người sử dụng, và điều quan tâm của nhà quản lý là có một bảng tính cước cho hệ
thống VoIP sao cho tối ưu quản lý, giám sát dễ dàng và chính xác, đảm bảo công bằng
cho người sử dụng dịch vụ.
Phần lớn các công nghệ hiện nay đều có khả năng chạy trên nhiều giao thức
khác nhau, đối với công nghệ VoIP nói riêng thì chạy trên một số giao thức cơ bản
như: H.323, MGCP, SIP…mỗi giao thức khác nhau có hoạt động, vận hành đối với hệ
thống VoIP khác nhau. Trong đó giao thức SIP được xem là có nhiều ưu điểm hơn cả,
với quá trình thiết lập một cuộc gọi khá đơn giản qua đó làm tăng khả năng kiểm soát
và hiệu suất của hệ thống, SIP hỗ trợ tích hợp dễ dàng tiếng nói với các dịch vụ Web
khác để thực hiện truyền thông đa phương tiện như hội nghị truyền hình, giao lưu trực
tuyến.... Hiện nay, SIP được sử dụng rộng rãi trong các hệ thống, Cisco và nhiều hãng
sản xuất thiết bị tổng đài IP đang đưa SIP vào phần cứng, còn Skype, Yahoo,
Microsoft và America Online cũng tích hợp SIP trong hệ thống tin nhắn nhanh của họ.
Tập đoàn viễn thông nổi tiếng WorldCom cũng đã mở hẳn một ngành kinh doanh
công nghệ SIP và phối hợp với Microsoft để hỗ trợ giao thức trong bản thử nghiệm
Windows XP Server.
Bất kỳ công nghệ điện thoại nào ra đời đều phải đi kèm theo đó là một bảng
tính cước điện thoại để đảm bảo doanh thu cho doanh nghiệp triển khai hệ thống cung
cấp cho người sử dụng. Trong đề tài này, tôi quan tâm tới việc thiết kế bảng tính cước
cho hệ thống VoIP dùng giao thức SIP không chỉ vì tính hiệu quả và ưu việt của công
nghệ mà còn phương pháp khai thác tính đơn giản của giao thức SIP để tính cước phí.
Bằng việc nghiên cứu về SIP và thực hiện khảo sát protocol SIP trên Asterisk, kết quả
cho thấy sự khả thi khi thực hiện bảng tính cước dựa vào giao thức SIP.
5


Đồ án tốt nghiệp Đại Học


Lời nói đầu

Bảng tính cước cho phép lấy thông tin cuộc gọi bằng cách ghi lại những thông
số của các bản tin INVITE, 200OK, BYE, qua đó ghi lại những thông số cần thiết và
chi tiết để đảm bảo tính chính xác cao.
Bảng tính cước cho hệ thống VoIP dùng giao thức SIP căn bản có các chức
năng chính:

• Ghi lại thời gian cuộc gọi (Timer): Chức năng ghi lại thời gian cuộc gọi bao
gồm ngày phát sinh cuộc gọi, thời gian bắt đầu kết thúc cuộc gọi, thời gian đàm
thoại thực của cuộc gọi.
• Thông số thuê bao: Chức năng ghi lại thông số thuê bao bao gồm thuê bao gọi
đến, thuê bao gọi đi.
• Cước phí cuộc gọi: Chức năng tính ra cước phí của cuộc gọi căn cứ vào thời
gian đàm thoại thực từ khi bắt đầu đàm thoại đến khi kết thúc cuộc gọi.
• Giao diện web để quản trị người dùng user: Người quản trị có thể dễ dàng quản
trị người dùng thông quan giao diện này, giao diện này thể hiện tất cả những
thông số cần thiết để người quản trị có thể tối ưu hóa trong việc quản trị hệ
thống.
Trong những yêu cầu trên, tôi sẽ tập trung vào việc thu thập thông tin từ các
bản tin thiết lập cuộc gọi INVITE, 200OK, ACK, BYE để phục vụ cho các chức năng
trên đây.
Trong khuôn khổ thời gian cho phép, đề tài này chỉ cho phép dừng lại ở việc
thiết kế và xây dựng bảng tính và đưa ra cơ chế thu thập thông tin từ các bản tin trong
giao thức SIP mà chưa đề xuất được hệ thống này một cách tối ưu nhất. Trong tương
lai, công việc có thể được tiếp tục với việc thực hiện xây dựng hệ thống hoàn chỉnh
với chức năng thu thập thông tin một cách nhanh nhất. Từ đó có thể đưa ra ứng dụng
nếu có thể…

6



Đồ án tốt nghiệp Đại Học

Chương I: Giới thiệu

CHƯƠNG I: GIỚI THIỆU
I.1. Bối cảnh
Ngày nay, trước sự phát triển mạnh mẽ của cơ sở hạ tầng internet đã đưa đến
cho thế giới nhiều giải pháp mới trong trao đổi thông tin và dữ liệu. Dữ liệu ngày nay
không còn là thông tin mà còn là hình ảnh, âm thanh…. Một trong những ứng dụng
rất quan trọng và hiệu quả đó là truyền tải tiếng nói trên nền tản cơ sở hạ tầng sẵn có
của mạng Internet. Thoại là một hình thức không thể thiếu trong giao tiếp thường
ngày. Qua thời gian hệ thống truyền thoại qua mạng chuyển mạch kênh cũ đã bộc lộ
nhiều hạn chế như: tốc độ đường truyền thấp, giới hạn số lượng trong hội thảo hội
nghị, khả năng phục vụ đồng thời ít, khả năng lưu trữ thấp, …Sự ra đời của công nghệ
VoIP(Voice over Internet Protocol) đã khắc phục được các nhược điểm đó. Về bản
chất công nghệ VoIP là công nghệ sử dụng giao thức IP để truyền tín hiệu thoại
(voice) dưới dạng các gói tin (packets) trong mạng IP. Việc sử dụng chuyển mạch gói
thay cho chuyển mạch kênh đã tạo ra được sự tối ưu hơn: không phải giữ riêng kênh
truyền trong suốt cuộc gọi, do vậy có thể cùng lúc truyền được nhiều cuộc hội thoại
trên một kênh truyền. Công nghệ này cho phép sử dụng một số giao thức như H.323,
SIP, MGCP…qua đó ứng dụng vào các lĩnh vực như điện thoại quốc tế, 171, skype…
Một trong những ưu điểm chính khi công nghệ VoIP sử dụng giao thức SIP ra
đời đó là quá trình thiết lập một cuộc gọi khá đơn giản mà cước phí cực thấp so với
các hệ thống trước đây. Đề tài này sẽ dựa vào hai ưu điểm nổi bật đó để thiết kế cho
một chức năng rất quan trọng trong hoạt động của hệ thống VoIP đó là thiết kế bảng
tính cước phí cho hệ thống VoIP dùng giao thức SIP
I.2. Động cơ
Trong phần này tôi trình bày một tình huống làm động cơ cho việc đưa ra một

thiết kế dành cho việc tính cước phí cho một cuộc gọi VoIP dùng giao thức SIP, nó cho
thấy lợi ích trong việc sử dụng công nghệ VoIP cùng với giao thức SIP để đưa ra một
bảng tính cước phí cuộc gọi phục vụ cho việc giám sát hệ thống. Sau đây tôi xin đưa
ra một ví dụ về ứng dụng của thiết kế này: Hệ thống tổng đài sẽ tính cước cho 1 cuộc
gọi từ A đến B, thiết kế này sẽ ghi lại những thông số cần thiết rõ ràng qua đó thuận
tiện cho việc tính giá thành cuộc gọi bằng cách nhận biết lúc nào A gửi bản tin
INVITE cho B, lúc B bắt máy và gửi bản tin 200OK thì bắt đầu tính cước và cuối
cùng là bản tin BYE lúc nào được gửi và qua đó tính ra giá cước cho A .
Việc phát triển tối ưu và ngày càng hoàn thiện cho bản tính cước này sẽ giúp
đáp ứng sự hài lòng của khách hàng cũng như dễ dàng trong việc kiểm soát khâu này
trong hệ thống VoIP dùng giao thức SIP.
7


Đồ án tốt nghiệp Đại Học

Chương I: Giới thiệu

I.3. Đóng góp của đề tài
Đề tài giúp hiểu rõ về cấu trúc cũng như phương pháp thiết kế bảng tính cước
cho hệ thống VoIP dùng giao thức SIP.
Đề tài giúp cho một cái nhìn rõ ràng về giao thức SIP trong VoIP thông qua
việc nghiên cứu tổng quan cũng như đi vào từng chức năng, tính năng cụ thể của SIP,
thực hiện cài đặt tổng đài Asterisk trên Linux và qua đó thực hiện thao tác một cuộc
gọi thực tế và nắm bắt rõ ràng cơ chế của giao thức SIP trong hệ thống này.
Việc cài đặt hệ thống với giao thức SIP giúp hiểu về hoạt động của nó, nhận
thấy được SIP là một giao thức thiết lập cuộc gọi đơn giản, vì vậy việc ghi lại các
thông số trong các bản tin INVITE, 200OK, BYE cũng khá dễ dàng ứng với các yêu
cầu trong bảng thiết kế.
Báo cáo đưa ra ý tưởng thiết kế bảng tính cước dựa trên giao thức SIP. Trong

tương lai có thể phát triển lên hoàn chỉnh và ứng dụng trong thực tế.
I.4. Tổ chức
Nội dung của đề tài được chia làm 4 chương:
Chương 1: Giới thiệu.
Nêu lên bối cảnh, động cơ, đóng góp và tổ chức đề tài.
Chương 2: Giới thiệu hệ thống SIP.
Giới thiệu về công nghệ VoIP chạy trên nhiều giao thức khác nhau. Giới thiệu
cụ thể về giao thức SIP. SIP có những ưu điểm nào so với các giao thức khác, từ đó
nêu lên lợi thế khi dựa vào giao thức SIP để thiết kế bảng tính cước cho hệ thống
VoIP.
Chương 3:Kiểm tra hoạt động của hệ thống VoIP dùng Asterisk
Chương này sẽ trình bày quá trình cài đặt một hệ thống VoIP trong mạng LAN,
bao gồm một tổng đài Asterisk, 2 máy cài 2 soft phone nằm trong cùng một mạng
LAN. Sau khi cài đặt sẽ thực hiện 1 cuộc gọi giữa 2 soft phone, dùng công cụ
wireshark bắt các gói tin INVITE, 200OK, BYE để biết các thông số cần ghi lại và
qua đó làm nền tảng cho việc thiết kế bảng tính cước.
Chương 4: Thiết kế và xây dựng mô hình tính cước dùng giao thức SIP dựa trên
Asterisk Implementation
Thiết kế và xây dựng cơ chế cập nhật các thông số đã ghi lại được từ các bản
tin vào cơ sở dữ liệu.
Chương 5: Kết luận
Báo cáo đã trình bày những gì, kết quả đạt được từ báo cáo và dự định mở rộng
những gì trong tương lai.

8


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP


CHƯƠNG II: GIỚI THIỆU VỀ HỆ THỐNG SIP
Đầu năm 1995, công ty VocalTec đưa ra sản phẩm phần mềm qua Internet
(Voice over Internet Protocol - VoIP) đầu tiên trên thế giới. Sau đó, nhiều công ty đã
đầu tư nghiên cứu và đưa ra các sản phẩm thương mại. Truyền dẫn tiếng nói qua
Internet theo thời gian thực được biết như Internet Telephony hay gọi là thuật ngữ
chung là VoIP. Trong chương này tôi sẽ đưa ra một cái nhìn tổng quan về công nghệ
VoIP, giới thiệu các giao thức dùng trong VoIP, giới thiệu cụ thể về giao thức SIP. SIP
có những ưu điểm nào so với các giao thức khác.
II.1. Tổng quan về VoIP
II.1.1. Khái niệm
VoIP viết tắt bởi Voice over Internet Protocol, hay còn được gọi dưới các tên
khác như: Internet telephony, IP Telephony, Broadband telephony, Broadband Phone
và Voice over Broadband là một công nghệ cho phép truyền thoại sử dụng giao thức
mạng IP, trên cơ sở hạ tầng sẵn có của mạng Internet.

Hình 1.1: Tổng quan về hệ thống VoIP cùng với PSTN truyền thống
VoIP có thể vừa thực hiện cuộc gọi thoại như trên mạng điện thoại kênh truyền
thống (PSTN) đồng thời truyền dữ liệu trên cơ sở mạng truyền dữ liệu.

9


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP

II.1.2. Đặc điểm của mạng VoIP:
II.1.2.1. Ưu điểm
Giảm cước phí: Đây là ưu điểm nổi bật của VoIP so với điện thoại đường dài

thông thường. Chi phí cuộc gọi đường dài chỉ bằng chi phí cho truy nhập Internet. Do
sử dụng các tiêu chuẩn nén thoại từ tốc độ 64Kbps của chuyển mạch kênh thành luồng
từ 6-8Kbps, tức là một kênh 64Kbps lúc này có thể phục vụ đồng thời 8 kênh thoại
độc lập. Như vậy, lý do lớn nhất giúp cho chi phí thực hiện cuộc gọi VoIP thấp chính
là việc sử dụng tối ưu băng thông.
Quản lí băng thông hiệu quả hơn: Trong PSTN, băng thông cung cấp cho
một cuộc gọi là cố định, kỹ thuật chuyển mạch truyền thống của PSTN yêu cầu một
mạch giữa chuyển mạch của công ty điện thoại và thiết bị khách hàng được mở và nói
chiếm trong suốt thời gian cuộc gọi, bất chấp lượng thông tin có được truyền đi hay
không dẫn đến sự hao phí. Trong VoIP, không có sự bắt buộc nào về mặt thông lượng
giữa các thiết bị dầu cuối mà chỉ có các chuẩn tuỳ vào băng thông có thể của mình,
bản thân các đầu cuối có thể tự điều chỉnh hệ số nén và do đó diều chỉnh được chất
lượng cuộc gọi.
Hỗ trợ tốt các ứng dụng và khả năng mở rộng: Trong khi PSTN với các
tổng đài gần như là một hệ thống kín rất khó để tích hợp các ứng dụng cũng như mở
rộng. VoIP được hứa hẹn sẽ mang đến các lợi ích trong thời gian dài hơn được mong
đợi từ các ứng dụng đa phương tiện (multimedia) và đa dịch vụ. Tính linh hoạt của
mạng IP cho phép tạo ra nhiều tinh năng mới trong dịch vụ thoại. Ðồng thời tính mềm
dẻo còn tạo khả năng mở rộng mạng và các dịch vụ.
Sự phát triển của mạng IP: Với sự phát triển chóng mặt của Internet, web,
ngày nay, các máy tính cá nhân và máy chủ trong Internet, web đều sử dụng giao thức
IP. Chính vì xu thế này của IP mà IP trở thành một nền tảng thuận lợi để phát triển
VoIP.
II.1.2.2. Nhược điểm
Chất lượng dịch vụ: Các mạng số liệu vốn dĩ không phải xây dựng với
mục đích truyền thoại thời gian thực, vì vậy khi truyền thoại qua mạng số liệu cho
chất lượng cuộc gọi không được đảm bảo trong trường hợp mạng xảy ra tắc nghẽn
hoặc có độ trễ lớn. Tính thời gian thực của tín hiệu thoại đòi hỏi chất lượng truyền dữ
liệu cao và ổn dịnh. Một yếu tố làm giảm chất lượng thoại nữa là kỹ thuật nén dể tiết
kiệm đường truyền. Nếu nén xuống dung lượng càng thấp thì kỹ thuật nén càng phức

tạp, cho chất lượng không cao và dặc biệt là thời gian xử lý sẽ lâu, gây trễ.
Một nhược điểm khác của VoIP là vấn đề về tiếng vọng: Nếu như trong
mạng thoại, độ trễ thấp nên tiếng vọng không ảnh huởng nhiều thì trong mạng IP, độ
trễ lớn nên tiếng vọng ảnh hưởng nhiều đến chất lượng thoại.

10


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP

II.1.3. Kiến trúc và thành phần mạng VoIP
II.1.3.1. Kiến trúc tổng quan

Hình 2.1: Kiến trúc theo mô hình cuộc gọi VoIP
Có 3 thành phần chính đó là:
IP Phone: là thiết bị giao diện đầu cuối phía người dùng với mạng VoIP. Cấu
tạo chính của một IP Phone gồm hai thành phần chính:Thành phần báo hiệu mạng
VoIP: báo hiệu có thể là H.323 sử dụng giao thức TCP hay SIP sử dụng UDP hoặc
TCP làm giao thức truyền tải của mình. Thành phần truyền tải media: sử dụng RTP để
truyền luồng media với chất lượng thời gian thực và được điều khiển theo giao thức
RTCP.
VoIP Server: chức năng chính của Server trong mạng VoIP tùy thuộc vào giao
thức báo hiệu được sử dụng. Nhưng về mô hình chung thì VoIP Server thực hiện các
chức năng sau:
- Ðịnh tuyến bản tin báo hiệu trong mạng VoIP
- Ðăng kí, xác thực người sử dụng
- Dịch địa chỉ trong mạng
Nói chung, VoIP Server trong mạng nhu là đầu não chỉ huy mọi hoạt động của

mạng.

11


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP

II.1.3.2. Thành phần mạng VoIP

Gatekeeper

DNS Server

IP Network

M¹ng chuyÓn
m¹ch kªnh

PC

Gateway

Gateway

PC

Telephone
M¹ng chuyÓn

m¹ch kªnh

Telephone

Hình 2.2: Thành phần mạng VoIP
Thiết bị đầu cuối: Thiết bị đầu cuối là một nút cuối trong cấu hình của mạng
điện thoại IP. Nó có thể được kết nối với mạng IP sử dụng một trong các giao diện
truy nhập. Một thiết bị đầu cuối có thể cho phép một thuê bao trong mạng IP thực hiện
cuộc gọi tới một thuê bao khác trong mạng chuyển mạch kênh. Các cuộc gọi đó sẽ
được Gatekeeper mà thiết bị đầu cuối hoặc thuê bao đã đăng ký giám sát.
Một thiết bị đầu cuối có thể gồm các khối chức năng sau:
- Chức năng đầu cuối: Thu và nhận các bản tin;
- Chức năng bảo mật kênh truyền tải: đảm bảo tính bảo mật của kênh truyền tải
thông tin kết nối với thiết bị đầu cuối.
- Chức năng bảo mật kênh báo hiệu: đảm bảo tính bảo mật của kênh báo hiệu
kết nối với thiết bị đầu cuối.
- Chức năng xác nhận: thiết lập đặc điểm nhận dạng khách hàng, thiết bị hoặc
phần tử mạng, thu nhập các thông tin dùng để xác định bản tin báo hiệu hay bản tin
chứa thông tin đã được truyền hoặc nhận chưa.
12


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP

- Chức năng quản lý: giao tiếp với hệ thống quản lý mạng.
- Chức năng ghi các bản tin sử dụng: xác định hoặc ghi lại các thông tin về sự
kiện ( truy nhập, cảnh báo ) và tài nguyên.
- Chức năng báo cáo các bản tin sử dụng: báo cáo các bản tin đã được sử dụng

ra thiết bị ngoại vi.
Mạng truy nhập IP: Mạng truy nhập IP cho phép thiết bị đầu cuối, Gateway,
Gatekeeper truy nhập vào mạng IP thông qua cơ sở hạ tầng sẵn có.
Gatekeeper: Gatekeeper là phần tử của mạng chịu trách nhiệm quản lý việc
đăng ký, chấp nhận và trạng thái của các thiết bị đầu cuối và Gateway. Gatekeeper có
thể tham gia vào việc quản lý vùng, xử lý cuộc gọi và báo hiệu cuộc gọi. Nó xác định
đường dẫn để truyền báo hiệu cuộc gọi và nội dung đối với mỗi cuộc gọi.
Gateway: Là thiết bị có chức năng kết nối hai mạng không giống nhau, hầu hết
các truờng hợp đó là mạng IP và mạng PSTN. Có 3 loại gateway là: Gateway truyền
tải kênh thoại, Gateway điều khiển truyền tải kênh thoại và Gateway báo hiệu.
II.1.3.3. Các mô hình kết nối trong mạng VoIP
Về cơ bản có thể chia cấu trúc kết nối trong các ứng dụng dịch vụ thoại Internet
thành ba loại:
- Kết nối PC-PC
- Kết nối PC-Máy thoại
- Kết nối Máy thoại-Máy thoại
Kết nối PC-PC: Khi thực hiện kết nối PC với PC về mặt hình thức có thể chia
làm hai loại:

- Kết nối thông qua mạng LAN hoặc một mạng IP.
- Kết nối giữa một PC trong mạng IP này với một PC trong mạng IP khác
thông qua mạng PSTN .

13


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP


Hình 2.3: Kết nối PC-PC
Kết nối PC-Phone: Mô hình PC to Phone là một mô hình được cải tiến hơn so
với mô hình PC to PC. Mô hình này cho phép người sử dụng máy tính có thể thực
hiện cuộc gọi đến mạng PSTN thông thường và ngược lại. Trong mô hình này mạng
Internet và mạng PSTN có thể giao tiếp với nhau nhờ một thiết bị đặc biệt đó là
Gateway. Ðây là mô hình cơ sở để dẫn tới việc kết hợp giữa mạng Internet và mạng
PSTN cũng như các mạng GSM hay đa dịch vụ
khác.

Hình 2.4: Kết nối PC-Phone
Kết nối Phone-Phone: Trong đó kết nối giữa hai máy điện thoại được thực
hiện thông qua mạng IP thay vì được kết nối trong mạng PSTN.

Hình 2.5: Kết nối Phone-Phone
II.1.4. Ứng dụng VoIP
Điện thoại có thể được áp dụng cho gần như mọi yêu cầu của giao tiếp thoại, từ
một cuộc đàm thoại đơn giản cho đến một cuộc gọi hội nghị nhiều người phức tạp.
Chất lượng âm thanh được truyền cũng có thể biến đổi tuỳ theo ứng dụng. Ngoài ra,
với khả năng của Internet, dịch vụ điện thoại IP sẽ cung cấp thêm nhiều tính năng
mới.

14


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP

Điện thoại thông minh: Hệ thống điện thoại ngày càng trở nên hữu hiệu: rẻ,
phổ biến, dễ sử dụng, cơ động. Nhưng nó hoàn toàn “ngớ ngẩn”, chỉ có một số phím

để điều khiển. Trong những năm gần đây, người ta đã cố gắng để tạo ra thoại thông
minh, đầu tiên là các thoại để bàn, sau là đến các server. Nhưng mọi cố gắng đều thất
bại do sự tồn tại của các hệ thống có sẵn.
Internet sẽ thay đổi điều này. Kể từ khi Internet được triển khai, nó đã được sử
dụng để tăng thêm tính thông minh cho mạng điện thoại toàn cầu. Giữa mạng máy
tính và mạng điện thoại tồn tại một mối liên hệ. Internet cung cấp cách giám sát và
điều khiển các cuộc thoại một cách tiện lợi hơn. Chúng ta có thể thấy được khả năng
kiểm soát và điều khiển các cuộc thoại thông qua mạng Internet.
Dịch vụ điện thoại web: "World Wide Web" đã làm cuộc cách mạng trong
cách giao dịch với khách hàng của các doanh nghiệp. Điện thoại Web hay "bấm số"
(click to dial) cho phép các nhà doanh nghiệp có thể đưa thêm các phím bấm lên trang
web để kết nối tới hệ thống điện thoại của họ.
Dịch vụ bấm số là cách dễ nhất và an toàn nhất để đưa thêm các kênh trực tiếp
từ trang Web của chúng ta vào hệ thống điện thoại. Truy cập các trung tâm trả lời điện
thoại. Truy nhập đến các trung tâm phục vụ khách hành qua mạng Internet sẽ thúc đẩy
mạnh mẽ thương mại điện tử. Dịch vụ này sẽ cho phép một khách hàng có câu hỏi về
một sản phẩm được chào hàng qua Internet được các nhân viên của công ty trả lời trực
tuyến.
Dịch vụ fax qua IP: Nếu chúng ta gửi nhiều fax từ PC, đặc biệt là gửi ra nước
ngoài thì việc sử dụng dịch vụ Internet faxing sẽ giúp chúng ta tiết kiệm được tiền và
cả kênh thoại. Dịch vụ này sẽ chuyển trực tiếp từ PC của chúng ta qua kết nối Internet.
Hàng năm, thế giới tốn hơn 30 tỷ USD cho việc gửi fax đường dài. Nhưng ngày nay
Internet fax đã làm thay đổi điều này. Việc sử dụng Internet không những được mở
rộng cho thoại mà còn cho cả dịch vụ fax.
Khi sử dụng dịch vụ thoại và fax qua Internet, có hai vấn đề cơ bản :
Những người sử dụng dịch vụ thoại qua Internet cần có chương trình phần
mềm được cung cấp bởi các công ty dịch vụ. Cấu hình này cung cấp cho người sử
dụng khả năng sử dụng thoại qua Internet thay cho sử dụng điện thoại để bàn truyền
thống.
Sự phát triển nhảy vọt của mạng chuyển mạch gói IP hiện nay không chỉ đem

lại cho chúng ta những dịch vụ mới đa dạng mà còn là cơ hội cải thiện các dịch vụ
viễn thông truớc kia với chất luợng tốt hơn và giá thành rẻ hơn. Trên cơ sở đó, mạng
VoIP ra đời và ngày càng đáp ứng tốt hơn các yêu cầu đặt ra như chất lượng dịch vụ,
giá thành, số lượng tích hợp các dịch vụ thoại lẫn phi thoại. Trong phần tiếp theo tôi
sẽ giới thiệu chi tiết về giao thức SIP, một giao thức khởi tạo phiên trong VoIP và so
sánh với các giao thức khác trong hệ thống VoIP.

15


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP

II.2. Giao thức SIP
Công nghệ VoIP là công nghệ truyền tín hiệu thoại trên nền IP, chính vì thế mà
hệ thống VoIP phải được hỗ trợ các giao thức được sử dụng trên mạng Internet và phải
có kiến trúc thích ứng với kiến trúc mạng IP. Một số giao thức đó như: H.323, MGCP,
SIP… được sử dụng. Trong phần này tôi xin giới thiệu một giao thức đó là SIP.
II.2.1. Khái niệm
Giao thức SIP (Session Initiation Protocol) là một giao thức điều khiển ở tầng
ứng dụng có thể khởi tạo, thay đổi và kết thúc một phiên truyền thông đa phương tiện
như là VoIP. SIP còn có thể dùng bản tin mời (INVITE) để thiết lập các phiên và mang
thông tin mô tả phiên truyền dẫn. SIP hỗ trợ nhiều thành phần tham gia vào phiên đã
có như là các hội thảo multicast (cuộc gọi đa điểm) hay là cuộc gọi điểm -điểm . Các
phương tiện có thể thêm vào hoặc loại bỏ khỏi phiên đang tồn tại.
SIP hỗ trợ năm vấn đề thiết lập và kết thúc truyền thông đa phương tiện
-

Vị trí người sử dụng: xác định hệ thống cuối sử dụng cho truyền thông, các

user có thể di chuyển đến các vị trí khác nhau và truy cập vào hệ thống từ
xa. Điều này tương tự các dịch vụ được cung cấp bởi RAS trong H.323.

-

Sự sẵn sàng của người sử dụng: xác định sự sẵn sàng của bên nhận tham gia
vào truyền thông.

-

Năng lực người sử dụng: xác định phương tiện và các thông số để sử dụng
SIP dùng giao thức SDP để thống nhất tham số truyền thông.

-

Thiết lập phiên: “gọi”, thiết lập các thông số phiên gọi ở cả bên gọi và bên
nhận theo báo hiệu trực tiếp hay thông qua proxy server.

-

Quản lý phiên gọi: bao gồm chuyển và kết thúc phiên, thay đổi các thông số
phiên và gọi các dịch vụ.
II.2.2. Sự ra đời của SIP
Ngày 22/02/1996 Mark Handley và Even Schooler trình lên IETF
(International Engineering Task Force) phiên bản SIP V1 (Session Initiation
Protocol Version 1)
Cùng ngày Henning Schulzrinne đệ trình lên IETF phiên bản SCIP
(Simple Conference Invitation Protocol)
SIP V2 ra đời tại kỳ họp thứ 37 của IETF là sự kết hợp hai giao thức SIP
V1 và SCIP lại với nhau. SIP được chuẩn hóa lần đầu tiên vào tháng 3 năm

1999 trong bộ tiêu chuẩn RFC 2543. SIP được sửa đổi vào tháng 5 năm
2002 trong tiêu chuẩn RFC 3261.
II.2.3. Vai trò của SIP trong VoIP
16


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP

SIP không phải là hệ thống truyền thông hợp nhất. SIP chỉ là một thành phần có
thể được sử dụng với các giao thức khác của IETF để tạo nên một kiến trúc đa phương
tiện hoàn chỉnh, như là giao thức RTP truyền các dữ liệu thời gian thực và cung cấp
các phản hồi QoS (Quality of Services), giao thức RTSP điều khiển việc phân phát các
dòng truyền thông, giao thức MEGACO điều khiển các gateway đến mạng PSTN, và
giao thức SDP mô tả các phiên truyền đa phương tiện. Vì thế, SIP được kết hợp với
các giao thức khác để cung cấp các dịch vụ hoàn thiện đến người sử dụng. Tuy nhiên,
các chức năng và hoạt động chính của SIP không bị phụ thuộc vào các giao thức khác.
SIP không cung cấp dịch vụ. Đúng hơn, SIP cung cấp các cơ sở để có thể thực
hiện nhiều dịch vụ khác nhau. Ví dụ, SIP có thể xác định vị trí người sử dụng và gởi
một đối tượng dễ nhận biết đến vị trí hiện tại của anh ta. Nếu điều này được sử dụng
thì các điếm cuối có thể thỏa thuận về các thông số của phiên. Còn nếu nó được sử
dụng để gởi một hình ảnh của người gọi cũng như là các mô tả của phiên, dịch vụ
“caller ID” có thể dễ dàng được thực hiện. Như ví dụ này cho thấy, một điều cơ bản
thường được sử dụng cho nhiều dịch vụ khác nhau.
SIP không cung cấp các dịch vụ điền khiển hội nghị như điều khiển cuộc họp
hoặc biểu quyết và không quy định hội nghị được điều khiển như thế nào. SIP có thể
được dùng để khởi tạo một phiên sử dụng các giao thức điều khiển hội nghị khác. Một
khi SIP truyền thông điệp và phiên mà chúng tạo ra có thể xuyên qua các mạng khác
nhau, SIP không thể cung cấp bất kỳ khả năng dành riêng tài nguyên mạng.

SIP cung cấp một bộ các dịch vụ bảo mật, bao gồm bảo vệ, xác thực (cả user
với proxy và ngược lại), các dịch vụ bảo vệ toàn diện và mã hóa.
SIP làm việc với cả IPv4 và IPv6.
Vì thế giao thức SIP có thể ứng dụng cho nhiều hệ thống từ lớn đến nhỏ. Mặc
dù việc so sánh giữa SIP và H.323 phải xét đến từng trường hợp cụ thể và chúng ta
cũng không thể rút ra kết luận ngay được nhưng có thể dự đoán rằng SIP sẽ là giao
thức dành cho sự phát triển của thế hệ mạng trong tương lai. Chúng ta sẽ so sánh SIP
và H323 cụ thể trong phần sau.
II.2.4. Thành phần của SIP

17


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP

Hình 2.6: Thành phần của SIP
User Agent: Là 1 ứng dụng để khởi tạo, nhận và kết thúc cuộc gọi.
- User Agent Clients (UAC) – Khởi tạo cuộc gọi.
- User Agent Server (UAS) – Nhận cuộc gọi.
Cả UAC và UAS đều có thể kết thúc cuộc gọi.
Proxy Server: Là 1 chương trình tức thời hoạt động vừa là client vừa là server.
Chương trình này được sử dụng để tạo ra các yêu cầu (requests) thay cho các client.
Mộtproxy server đảm bảo chức năng định tuyến và thực hiện các quy tắc (policy) (ví
dụ như đảm bảo nguời dùng có được phép gọi hay không). Proxy Server có thể biên
dịch khi cần thiết, sửa đổi 1 phần của bản tin yêu cầu trước khi chuyển đi.
Location Server: Ðược sử dụng bởi SIP redirect hoặc proxy server để lấy
thông tin về địa điểm của người được gọi.
Redirect Server: Là server nhận các yêu cầu SIP, sắp xếp các địa chỉ và trả địa

chỉ về phía client. Khác với Proxy Server, Redirect server không tự khởi tạo ra các
yêu cầu SIP của riêng nó. Ðồng thời nó cũng không chấp nhận hay huỷ cuộc gọi giống
như User Agent Server.
Registrar Server: Là server chấp nhận các yêu cầu REGISTER, server này có
thể hỗ trợ thêm tính năng xác thực, đồng thời hoạt động với proxy hoặc redirect server
để đưa ra các dịch vụ khác.
Trong hình trên, User Agent là thiết bị đầu cuối trong mạng SIP, có thể là một
máy điện thoại SIP, có thể là máy điện thoại SIP, có thể là máy tính chạy phần mềm
đầu cuối SIP.
II.2.5. Các bản tin của SIP
INVITE : bắt đầu thiết lập cuộc gọi bằng cách gửi bản tin mời đầu cuối khác
tham gia. Thông điệp này chứa các thông tin cơ bản như định danh người gọi và người
được gọi…
ACK: Một phiên SIP đơn giản bắt đầu từ phương thức INVITE. Khi người
được gọi xác nhận rằng đã nhận lời gọi INVITE, sẽ có một thông điệp trả lời với
phương thức ACK. Thông điệp này chứa các đặc tả SDP về các thông số thiết lập
phiên truyền thông.
OPTION: thông điệp được gửi để truy vấn khả năng của hai bên
BYE : bắt đầu kết thúc cuộc gọi
REGISTER: Cung cấp sự ánh xạ phân giải địa chỉ. Ví dụ để server biết vị trí
của người sử dụng khác.
18


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP

CANCEL: Kết thúc một yêu cầu sắp xãy ra nhưng không kết thúc cuộc gọi.
INFO: Được sử dụng để mang thông tin giữa cuộc gọi. INFO không được dùng

để thay đổi trạng thái của một cuộc gọi đã ổn định.
Có hai loại thông điệp SIP: yêu cầu và đáp ứng, tương ứng với thông điệp UAC
(User Agent Client) gởi đến UAS (User Agent Server) và thông điệp UAS trả lời
UAC. Hai thông điệp này hoàn toàn khác nhau. Thông điệp yêu cầu được gởi để thông
tin cho thành phần nhận thực hiện các tác vụ cụ thể, thông điệp đáp ứng được gởi trả
để báo cáo về kết quả thực hiện các tác vụ đó.
Về cấu trúc hai thông điệp khác nhau ở dòng bắt đầu. Thông điệp yêu cầu cho
biết phương thức và URI mà yêu cầu được gởi đến. Thông điệp đáp ứng có dòng bắt
đầu chứa mã trả lời mà không có URI vì nó chỉ cần trả lại đúng địa chỉ của yêu cầu.
Các mã trả lời thông dụng nhất:
100 Trying. Yêu cầu đã được nhận tại một server ở chặng kế tiếp. Mã này được
trả về từ một proxy server hoặc server trung gian khác trên đường báo hiệu cuộc gọi.
180 Ringing.
181 Call Forwarding. Nếu một proxy server trả về mã này, cũng có thể nhận
diện nơi mà nó đang chuyển cuộc gọi trong phần thân của thông điệp này.
182 Queued for Service. Các ứng dụng có thể trì hoãn trả lời cuộc gọi cho đến
khi nó đã phục vụ các cuộc gọi đang xếp hàng.
183 Session Progress.
200 OK. Yêu cầu được thực thi thành công.
400 Bad request. Lỗi cú pháp thông điệp.
401 User yêu cầu xác thực trước khi thực hiện yêu cầu này.
403 Forbidden. Nhận được khi cố gắng gọi một số không được chấp nhận từ
thuê bao của chúng ta.
404 Không tìm thấy user.
408 Request time-out
500 Lỗi server.
600 Busy
603 Decline
604 Does not exist


19


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP

-------------------------------------------------------------SIP Header
-------------------------------------------------------------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

Dưới đây là ví dụ về một bản
tin SIP invite:

Hình 2.7: Ví dụ về bản tin SIP
Một số trường mào đầu đơn giản:

20


Đồ án tốt nghiệp Đại Học


Chương II: Giới thiệu về hệ thống SIP

Hình 2.8: Một số trường mào đầu đơn giản

II.2.6. Một số giao thức liên quan
II.2.6.1 Giao thức SDP (Session Description Protocol)
SDP là một giao thức miêu tả phiên dùng cho phiên đa truyền thông.
Mục đích của SDP là chuyển thông tin về luồng truyền thông trong phiên đa
truyền thông để cho phép người nhận biết được các thành phần tham gia vào phiên.
SDP được dùng chủ yếu trong mạng tương tác, tuy vậy nó cũng thích hợp cho việc
miêu tả hội nghị trong môi trường mạng khác.
SDP bao gồm:
-

Tên phiên và mục đích.

-

Thời gian phiên được kích hoạt.

-

Thông tin nhận được của quá trình truyền thông đó (địa chỉ, cổng, giao tiếp,
định dạng …)

Tuy vậy một tài nguyên tham gia vào phiên có thể được hạn chế hoặc có thể
thêm một số thông tin như là: Thông tin về băng thông được sử dụng, thông tin liên
lạc với người khác.
Nói chung, SDP phải mang đầy đủ thông tin để có thể kết nối đến một phiên.

Thông tin truyền thông bao gồm:
21


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP

-

Kiểu truyền thông (video, audio, control).

-

Giao thức truyền tải (RTP/UDP/IP, H.320…).

-

Định dạng truyền thông (H.261 video, MPEG video…).

Các thành phần trong SDP được miêu tả thông qua các trường sau:
v = (Phiên bản giao thức).
o = (Mô tả người thiết lập phiên).
s = (Tên phiên).
c = * (Thông tin kết nối).
t = (Thời gian phiên bắt đầu kích hoạt).
m = (Tên truyền thông và địa chỉ truyền).
a = * (không có gì hoặc nhiều thuộc tính truyền thông).
-


Trường v cho phiên bản của SDP.

-

Trường o cho biết thông tin khởi đầu của phiên (đây là username và địa chỉ
của máy chủ) cộng với định dạng của phiên và số phiên bản phiên.

Gồm các thành phần sau:
o=<username><session id><version><network type><address type><address>
<username> là tên người đăng nhập vào máy chủ, hoặc là “-“ nếu máy chủ
không hỗ trợ nội dụng định danh người sử dụng. Trường username phải có giá trị,
không được là khoảng trống.
<session id> là một chuỗi số mà ứng với các hình thể <username>,id>, <network type>, <address type> và <address> là một định danh độc nhất cho
phiên. <session id> tuỳ vào công cụ tạo ra nhưng nó xuất phát từ giao thức NTP
(Network Time Protocol)
<version> và 1 chữ số phiên bản cho thông báo này. Nó là cần thiết với proxy
thông báo để dò tìm các dịch vụ thông báo cho phiên giống nhau đã tồn tại.
<network type> là một số đại diện cho kiểu mạng. Khởi tạo là 1 được định
nghĩa cho mạng Internet.
<addresss type> là một số đại diên cho kiểu địa chỉ cho phép. Khởi tạo là 1 cho
IP4 và 0 cho IP6.
<address> là địa chỉ duy nhất của máy nơi phiên được tạo ra.
Nói chung trường o dùng như 1 định danh tổng thể duy nhất cho phiên bản của
miêu tả phiên.
-

Trường s là tên phiên. Tên này là duy nhất cho việc miêu tả phiên.

-


Trường c chứa thông tin về dữ liệu kết nối. Gồm các thành phần sau:
22


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP

c = <network type><address type><connection address>
Trường đầu tiên là kiểu mạng được định nghĩa như trên.
Trường thứ hai là kiểu địa chỉ cũng được định nghĩa như trên.
Trường thứ ba là địa chỉ kết nối đến.
-

Trường t chỉ định thời gian bắt đầu và kết thúc của một phiên.

t = <start time><stop time>
-

Trường m miêu tả truyền thông. Gồm các thành phần sau:

m = <media><transport><fmt list>
Mỗi phiên truyền thông có thể chứa 1 số miêu tả.
Trường đầu tiên là kiểu truyền thông.Ví dụ như "audio", "video", "application",
"data" và "control".
Trường thứ hai là cổng vận chuyển.
Trường thứ ba là giao thứ vận chuyển. Giá trị phụ thuộc vào trường địa chỉ c.
-


Trường a miêu tả cấu trúc của hình thể rtpmap. Gồm các thành phần:

a = rtpmap:<encoding name>/<clock rate>[/parameters>]
: kiểu payload.
<encoding name> tên phương pháp mã hoá.
Với luồng audio, <encoding parameters> có thể số kênh audio.
Đây là thông số có thể bỏ qua nếu số kênh là một nhà cung cấp.
Ví dụ:
v=0
o = mhandley 2890844526 2890842807 IN IP4 126.16.64.4
s = SDP Seminar
c = IN IP4 224.2.17.12/127
t = 2873397496 2873404696
m = audio 49230 RTP/AVP 96 97 98
a = rtpmap:96 L8/8000
II.2.6.2. Giao thức RTP (Realtime Transport Protocol)
Giao thức truyền thời gian thực Realtime Transport Protocol là một chuẩn
Internet để truyền các luồng thông tin giữa các thành phần tương tác trên mạng. RTP
23


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP

cung cấp các dịch vụ về dữ liệu mang tính thời gian thực như video và audio. Thông
thường các ứng dụng chạy RTP dựa trên UDP để tận dụng khả năng ghép kênh và
kiểm lỗi. RTP hỗ trợ việc truyền dữ liệu đến nhiều địa chỉ đích bằng cách dùng cơ chế
multicast nếu được hỗ trợ bởi hệ thống mạng.

Giao thức RTP là một thủ tục dựa trên kỹ thuật IP tạo ra các hỗ trợ để truyền tải
các dữ liệu yêu cầu thời gian thực, ví dụ như các dòng dữ liệu hình ảnh và âm thanh.
Các dịch vụ cung cấp bởi RTP bao gồm các cơ chế khôi phục thời gian, phát hiện các
lỗi, bảo mật và xác định nội dung. RTP được thiết kế chủ yếu cho việc truyền đa đối
tượng nhưng nó vẫn có thể được sử dụng để truyền cho một đối tượng. RTP có thể
truyền tải một chiều như dịch vụ video theo yêu cầu cũng như các dịch vụ trao đổi qua
lại như điện thoại Internet.
Hoạt động của RTP được hỗ trợ bởi một thủ tục khác là RCTP để nhận các
thông tin phản hồi về chất lượng truyền dẫn và các thông tin về thành phần tham dự
các phiên hiện thời.
II.2.6. Quá trình thiết lập cuộc gọi
II.2.6.1. Địa chỉ SIP
Địa chỉ SIP tồn tại dưới dạng user@host.
User: tên người dùng hoặc số điện thoại
Host: tên miền hoặc địa chỉ mạng.
Mỗi địa chỉ SIP là duy nhất.
Ví dụ:



II.2.6.2. Quá trình thiết lập cuộc gọi

24


Đồ án tốt nghiệp Đại Học

Chương II: Giới thiệu về hệ thống SIP

Hình 2.9: Quá trình thiết lập cuộc gọi

Trước tiên ta tìm hiểu hoạt động của máy chủ ủy quyền và máy chủ chuyển đổi
Hoạt động của máy chủ ủy quyền (Proxy Server)

25


×