1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tài liệu Báo cáo tốt nghiệp: “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat" pptx

80 912 1
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Nghiên Cứu Giao Thức Sip Và Xây Dựng Ứng Dụng Voice Chat
Tác giả Trần Minh Ánh, Huỳnh Thanh Quang
Người hướng dẫn TS. Nguyễn Thanh Bình
Trường học Đại Học Bách Khoa Đà Nẵng
Chuyên ngành Công Nghệ Thông Tin
Thể loại Luận Văn Tốt Nghiệp
Năm xuất bản 2007
Thành phố Đà Nẵng
Định dạng
Số trang 80
Dung lượng 1,63 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Chính vì vậy, chúng em chọn đề tài “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat” nhằm tìm hiểu, nghiên cứu giao thức SIP từ đó xây dựng một hệ thống trao đổi thông tin giữa

Trang 1

KHOA CÔNG NGHỆ THÔNG TIN

Tel (84-511) 736 949, Fax (84-511) 842 771

Website: itf.ud.edu.vn, E-mail: cntt@edu.ud.vn

LUẬN VĂN TỐT NGHIỆP KỸ SƯ NGÀNH CÔNG NGHỆ THÔNG TIN

MÃ NGÀNH : 05115

ĐỀ TÀI : NGHIÊN CỨU GIAO THỨC SIP

VÀ XÂY DỰNG ỨNG DỤNG VOICE CHAT

Mã số : 02T2-24 Ngày bảo vệ : 13/06/2007

SINH VIÊN : TRẦN MINH ÁNH

HUỲNH THANH QUANG

ĐÀ NẴNG, 06/2007

Trang 2

Chúng em xin chân thành cảm ơn Khoa Công Nghệ Thông Tin, trường Đại Học Bách Khoa Đà Nẵng đã tạo điều kiện tốt cho chúng em thực hiện

đề tài tốt nghiệp này.

Chúng em xin chân thành cảm ơn thầy Nguyễn Thanh Bình đã tận tình hướng dẫn, chỉ bảo chúng em trong suốt thời gian thực hiện đề tài.

Chúng em 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 em những kiến thức quý báu trong những năm học vừa qua.

Mặc dù chúng em đã cố gắng hoàn thành luận văn trong phạm vi và khả năng cho phép, nhưng chắc chắc sẽ không tránh khỏi những thiếu sót, kính mong sự thông cảm và tận tình chỉ bảo của quý thầy cô.

Trang 3

Tôi xin cam đoan :

1 Những nội dung trong luận văn này là do tôi thực hiện dưới sự hướng dẫn trực tiếp của thầy Nguyễn Thanh Bình

2 Mọi tham khảo dùng trong luận văn đều được trích dẫn rõ ràng tên tác giả, tên công trình, thời gian, địa điểm công bố.

3 Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, tôi xin chịu hoàn toàn trách nhiệm.

Sinh viên, Trần Minh Ánh Huỳnh Thanh Quang

Trang 6

MỞ ĐẦU 1

I Đặt vấn đề 1

II Tóm tắt phương pháp triển khai, nội dung tóm tắt các chương tiếp theo 1

CƠ SỞ LÝ THUYẾT 3

I Tổng quan về kỹ thuật VoIP và các yếu tố quan trọng đối với VoIP 3

I.1 VoIP là gì? 3

I.1.1 Các lợi ích của VoIP 3

I.1.2 Các ứng dụng của VoIP 4

I.2 Các yếu tố quan trọng đối với VoIP 5

I.2.1 Thời gian trễ (Time Delay) 5

I.2.2 Sự thay đổi thời điểm gói đến (Jitter) 6

I.2.3 Điều chế xung theo mã PCM (Pulse Code Modulation) 6

I.2.4 Nén âm thanh 7

I.2.5 Khoảng lặng 9

I.2.6 Tiếng vọng (Echo) 9

I.2.7 Mất gói 10

I.2.8 Các giao thức vận chuyển 10

II Tìm hiểu giao thức SIP 11

II.1 Giới thiệu 11

II.1.1 Lược sử SIP 11

II.1.2 Vai trò và vị trí của SIP trong VoIP 12

II.1.3 Các ưu điểm của SIP 13

II.2 Các đặc điểm của giao thức SIP 14

II.2.1 Thông điệp SIP (SIP messages) 14

II.2.2 Các thành phần của giao thức SIP (SIP Elements) 16

II.3 Cấu trúc của giao thức SIP 17

II.4 Các giao thức liên quan 17

II.4.1 Giao thức SDP (Session Description Protocol) 17

II.4.2 Giao thức RTP (Real-time Transport Protocol) 20

II.4.3 Giao thức RTCP (Real-time Transport Control Protocol) 22

II.5 Thiết lập cuộc gọi thông qua SIP 23

III Đánh giá giao thức SIP và các bộ giao thức khác 24

III.1 H323 24

III.2 So sánh SIP và H323 25

PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 28

I Mô hình Use – Case 29

I.1 Mô hình UseCase hệ thống 29

I.2 Danh sách Actors 29

Trang 7

I.4.2 Đặc tả UseCase “DangNhap” 31

I.4.3 Đặc tả UseCase “ThayDoiThongTin” 32

I.4.4 Đặc tả UseCase “TextChat” 33

I.4.5 Đặc tả UseCase “VoiceChat” 34

I.4.6 Đặc tả UseCase “GoiFile” 35

I.4.7 Đặc tả UseCase “QuanLyHeThong” 35

I.4.8 Đặc tả UseCase “QuanLyThanhVien” 36

II Biểu đồ lớp 37

II.1 Phân tích Use-case “QuanLyHeThong” 37

II.1.1 Sơ đồ lớp đối tượng 37

II.1.2 Danh sách các lớp đối tượng 37

II.2 Phân tích Use-case “QuanLyThanhVien” 37

II.2.1 Sơ đồ lớp đối tượng 37

II.2.2 Danh sách các lớp đối tượng 38

II.3 Phân tích Use-case “DangKy” 38

II.3.1 Sơ đồ lớp đối tượng 38

II.3.2 Danh sách các lớp đối tượng 38

II.4 Phân tích Use-case “DangNhap” 39

II.4.1 Sơ đồ lớp đối tượng 39

II.4.2 Danh sách các lớp đối tượng 39

II.5 Phân tích Use-case “VoiceChat” 39

II.5.1 Sơ đồ lớp đối tượng 39

II.5.2 Danh sách các lớp đối tượng 40

II.6 Phân tích Use-case “TextChat” 40

II.6.1 Sơ đồ lớp đối tượng 40

II.6.2 Danh sách các lớp đối tượng 40

II.7 Phân tích Use-case “GoiFile” 41

II.7.1 Sơ đồ lớp đối tượng 41

II.7.2 Danh sách các lớp đối tượng 41

II.8 Phân tích Use-case “ThayDoiThongTin” 41

II.8.1 Sơ đồ lớp đối tượng 41

II.8.2 Danh sách các lớp đối tượng 42

III Biểu đồ tuần tự 43

III.1 Xử lý “DangKy” 44

III.1.1 Biểu đồ tuần tự 44

III.1.2 Biểu đồ cộng tác 44

III.1.3 Danh sách hành động 45

III.2 Xử lý “DangNhap” 45

III.2.1 Biểu đồ tuần tự 45

III.2.2 Biểu đồ cộng tác 46

III.2.3 Danh sách hành động 46

III.3 Xử lý “KhoiDongHeThong” 47

Trang 8

III.3.1 Biểu đồ tuần tự 47

III.3.2 Biểu đồ cộng tác 47

III.3.3 Danh sách các hành động 47

III.4 Xử lý “XemDanhSach” 48

III.4.1 Biểu đồ tuần tự 48

III.4.2 Biểu đồ cộng tác 48

III.4.3 Danh sách các hành động 49

III.5 Xử lý “GoiDien” 49

III.5.1 Biểu đồ tuần tự 49

III.5.2 Biểu đồ cộng tác 50

III.5.3 Danh sách các hành động 50

III.6 Xử lý “NhanCuocGoi” 51

III.6.1 Biểu đồ tuần tự 51

III.6.2 Biểu đồ cộng tác 52

III.6.3 Danh sách các hành động 52

III.7 Xử lý “TextChat” 53

III.7.1 Biểu đồ tuần tự 53

III.7.2 Biểu đồ cộng tác 54

III.7.3 Danh sách các hành động 54

III.8 Xử lý “LuuCuocGoi” 55

III.8.1 Biểu đồ tuần tự 55

III.8.2 Biểu đồ cộng tác 55

III.8.3 Danh sách các hành động 55

III.9 Xử lý “GoiFile” 56

III.9.1 Biểu đồ tuần tự 56

III.9.2 Biểu đồ cộng tác 56

III.9.3 Danh sách các hành động 57

XÂY DỰNG ỨNG DỤNG 58

I Sơ đồ triển khai hệ thống 58

II Thiết kế cơ sở dữ liệu 60

III Thiết kế giao diện 60

III.1 Màn hình login Sip Client 60

III.2 Màn hình chính Sip Client 61

III.3 Màn hình chat text 62

III.4 Màn hình đăng ký thành viên 63

III.5 Màn hình chính Sip Server 64

IV Công cụ và môi trường phát triển 64

KẾT LUẬN 65

I Kết quả đạt được 65

II Hướng phát triển 65

Trang 10

DANH MỤC BẢNG

Bảng 1 – Điểm đánh giá MOS một số codec của ITU 9

Bảng 2 – Một số điểm khác biệt giữa H323 và SIP 26

Bảng 3 – Danh sách các UseCase của Actor User 30

Bảng 4 – Danh sách các UseCase của Actor Admin 30

Bảng 5 – Danh sách các lớp đối tượng trong Use-case “QuanLyHeThong” 37

Bảng 6 – Danh sách các lớp đối tượng trong Use-case “QuanLyThanhVien” 38

Bảng 7 – Danh sách các lớp đối tượng trong Use-case “DangKy” 38

Bảng 8 – Danh sách các lớp đối tượng trong Use-case “DangNhap” 39

Bảng 9 – Danh sách các lớp đối tượng trong Use-case “VoiceChat” 40

Bảng 10 – Danh sách các lớp đối tượng trong Use-case “TextChat” 40

Bảng 11 – Danh sách các lớp đối tượng trong Use-case “GoiFile” 41

Bảng 12 – Danh sách lớp đối tượng trong Use-case “ThayDoiThongTin” 42

Bảng 13 – Danh sách các xử lý chính của hệ thống 43

Bảng 14 – Danh sách các hành động của xử lý “DangKy” 45

Bảng 15 – Danh sách các hành động của xử lý “DangNhap” 46

Bảng 16 – Danh sách các hành động của xử lý “KhoiDongHeThong” 47

Bảng 17 – Danh sách các hành động của xử lý “XemDanhSach” 49

Bảng 18 – Danh sách các hành động của xử lý “GoiDien” 50

Bảng 19 – Danh sách các hành động của xử lý “NhanCuocGoi” 52

Bảng 20 – Danh sách các hành động của xử lý “TextChat” 54

Bảng 21 – Danh sách các hành động của xử lý “LuuCuocGoi” 55

Bảng 22 – Danh sách các hành động xử lý “GoiFile” 57

Bảng 23 – Danh sách các trường của bảng User 60

Bảng 24 – Mô tả các thành phần trên màn hình login Sip Client 61

Bảng 25 – Mô tả các thành phần trên màn hình chính Sip Client 61

Bảng 26 – Mô tả các thành phần trên màn hình chat text 62

Bảng 27 – Mô tả các thành phần trên màn hình đăng ký thành viên 63

Bảng 28 – Mô tả các thành phần trên màn hình chính Sip Server 64

Trang 11

DANH MỤC HÌNH ẢNH

Hình 1 – Thời gian trễ của một số truyền dẫn 5

Hình 2 – Sự thay đổi thời điểm gói đến 6

Hình 3 – Sơ đồ điều chế xung theo mã 7

Hình 4 – VoIP stack 12

Hình 5 – Cấu trúc một thông điệp SIP 14

Hình 6 – Mã hoá gói tin RTP/UDP/IP 21

Hình 7 – Mô hình thực hiện cuộc gọi giữa hai UAC thông qua Proxy Server 23

Hình 8 – Mô hình Use-case của Actor User 29

Hình 9 – Mô hình Use-case của Actor Admin 29

Hình 10 – Sơ đồ các lớp của Use-case “QuanLyHeThong” 37

Hình 11 – Sơ đồ các lớp của Use-case “QuanLyThanhVien” 37

Hình 12 – Sơ đồ các lớp của Use-case “DangKy” 38

Hình 13 – Sơ đồ các lớp của Use-case “DangNhap” 39

Hình 14 – Sơ đồ các lớp của Use-case “VoiceChat” 39

Hình 15 – Sơ đồ các lớp của Use-case “TextChat” 40

Hình 16 – Sơ đồ các lớp của Use-case “GoiFile” 41

Hình 17 – Sơ đồ các lớp của Use-case “ThayDoiThongTin” 41

Hình 18 – Biểu đồ tuần tự xử lý “DangKy” 44

Hình 19 – Biểu đồ cộng tác xử lý “DangKy” 44

Hình 20 – Biểu đồ tuần tự xử lý “DangNhap” 45

Hình 21 – Biểu đồ cộng tác xử lý “DangNhap” 46

Hình 22 – Biểu đồ tuần tự xử lý “KhoiDongHeThong” 47

Hình 23 – Biểu đồ cộng tác xử lý “KhoiDongHeThong” 47

Hình 24 – Biểu đồ tuần tự xử lý “XemDanhSach” 48

Hình 25 – Biểu đồ cộng tác xử lý “XemDanhSach” 48

Hình 26 – Biểu đồ tuần tự xử lý “GoiDien” 49

Hình 27 – Biểu đồ cộng tác xử lý “GoiDien” 50

Hình 28 – Biểu đồ tuần tự xử lý “NhanCuocGoi” 51

Hình 29 – Biểu đồ cộng tác xử lý “NhanCuocGoi” 52

Hình 30 – Biểu đồ tuần tự xử lý “TextChat” 53

Hình 31 – Biểu đồ cộng tác xử lý “TextChat” 54

Hình 32 – Biểu đồ tuần tự xử lý “LuuCuocGoi” 55

Hình 33 – Biểu đồ cộng tác xử lý “LuuCuocGoi” 55

Hình 34 – Biểu đồ tuần tự xử lý “GoiFile” 56

Hình 35 – Biểu đồ cộng tác xử lý “GoiFile” 56

Hình 36 – Sơ đồ triển khai hệ thống 58

Hình 37 – Sơ đồ quá trình gởi và nhận âm thanh giữa hai Sip_Client 59

Hình 38 – Màn hình Login của Sip Client 60

Hình 39 – Màn hình chính Sip Client 61

Hình 40 – Màn hình chat text 62

Hình 41 – Màn hình đăng ký thành viên hệ thống 63

Hình 42 – Màn hình chính Sip Server 64

Trang 13

IETF Internet Engineering Task Force

Trang 14

MỞ ĐẦU

I Đặt vấn đề

Công nghệ thông tin đóng vai trò ngày càng quan trọng trong tất cả các lĩnhvực của đời sống, đặc biệt là trong việc truyền thông tin Ngày nay, cùng với sự triểncủa công nghệ thông tin nói chung, Internet đã làm biến đổi một phần thế giới Sựphát triển của Internet tạo ra sự gần gũi giữa các miền vùng, các nước khác nhau vềmặt khoa học công nghệ cũng như nhu cầu thông tin xã hội

Nhu cầu trao đổi thông tin của con người đang bùng nổ Các mạng Internet tốc

độ cao làm cho việc trao đổi các đa phương tiện ngày càng dễ dàng hơn đã tác động

và làm thay đổi nhiều đến các cách truyền thông tin truyền thống của con người Cácứng dụng truyền thông dựa trên Internet đang được phát triển rất mạnh

Để đáp ứng được sự phát triển này thì các giao thức mới, các tiêu chuẩn mới vềInternet cũng được đưa ra với mục đích tạo ra chất lượng phục vụ tốt hơn Và sự rađời của giao thức SIP cũng không nằm ngoài mục đích đó

Từ khi tổ chức IETF (Internet Enginnering Task Force) công bố phiên bản SIP

đầu tiên vào năm 1999 đến nay SIP đã trải qua nhiều biến đổi và cải tiến Và phiênbản gần đây nhất là năm 2002 Hiện nay đã có hàng trăm nhà sản xuất bắt đầu kinhdoanh máy chủ và điện thoại có tính năng SIP SIP đóng vai trò then chốt trong nhiềuứng dụng đa phương tiện như tin nhắn nhanh, video, game online…Đặc biệt hơn, thờigian gần đây cộng đồng VoIP đánh giá SIP là giao thức hàng đầu để điều khiển truyềntín hiệu qua Internet Bên cạnh ứng dụng điện thoại Internet, hiện nay SIP cũng đượctriển khai trong thương mại điện tử

Chính vì vậy, chúng em chọn đề tài “Nghiên cứu giao thức SIP và xây dựng

ứng dụng Voice Chat” nhằm tìm hiểu, nghiên cứu giao thức SIP từ đó xây dựng một

hệ thống trao đổi thông tin giữa các người sử dụng với nhau thông qua việc trao đổi

âm thanh, hình ảnh và gởi file dữ liệu dựa trên giao thức này

II Tóm tắt phương pháp triển khai, nội dung tóm tắt các

chương tiếp theo

Nội dung đề tài bao gồm hai phần chính

Phần thứ nhất nghiên cứu lý thuyết về VoIP và giao thức SIP

Phần thứ hai sử dụng công cụ UML 2.0 phân tích hệ thống và thiết kế các xử lýcho bài toán bài toán

Trang 15

quản trị MySQL có nhiệm vụ quản lý cơ sở dữ liệu về người sử dụng đã đăng kýthành viên hệ thống.

Nội dung báo cáo bao gồm 5 chương:

Chương 1: Mở đầu

Giới thiệu đề tàiTóm tắt phương pháp triển khai

Chương 2: Cơ sở lý thuyết

Tổng quan về kỹ thuật VoIP và các yếu tố quan trọng đối với VoIPTìm hiểu giao thức SIP

Chương 3: Phân tích thiết kế hệ thống

Xây dựng mô hình Use-case của hệ thốngXây dựng biểu đồ lớp cho các Use-caseXây dựng biểu đồ tuần tự và biểu đồ cộng tác các xử lý chính

Chương 4: Xây dựng ứng dụng

Sơ đồ triển khai hệ thốngThiết kế cơ sở dữ liệuThiết kế giao diệnCông cụ và môi trường phát triển

Chương 5: Kết luận

Trang 16

CƠ SỞ LÝ THUYẾT

I Tổng quan về kỹ thuật VoIP và các yếu tố quan trọng

đối với VoIP

VoIP là từ viết tắt của Voice Over Internet Protocol Đúng như tên gọi của

chúng, phương thức truyền âm thanh này sử dụng phương pháp truyền tín hiệu âmthanh thông qua truyền các gói tin thông qua mạng IP Bằng cách này, VoIP có thể sửdụng tốc độ của phần cứng để hoàn thành mục đích và có thể hữu dụng trên môitrường PC

I.1.1 Các lợi ích của VoIP

Giảm chi phí: Một giá cước chung sẽ thực hiện được với mạng Internet và do

đó tiết kiệm đáng kể các dịch vụ thoại và fax Người ta ước tính có khoảng 70% cáccuộc gọi đến Châu Á là để gửi fax, phần lớn trong số đó có thể được thay thế bởi FoIP

(Fax over IP) Sự chia sẻ chi phí thiết bị và thao tác giữa những người sử dụng thoại

và dữ liệu cũng tăng cường hiệu quả sử dụng mạng bởi lẽ dư thừa băng tần trên mạngcủa người này có thể được sử dụng cho một người khác

Đơn giản hoá: Một cơ sở hạ tầng tích hợp hỗ trợ tất cả các hình thức thông tin

cho phép chuẩn hoá tốt hơn và giảm tổng số thiết bị Cơ sở hạ tầng kết hợp này có thể

hỗ trợ việc tối ưu hoá băng tần động

Thống nhất: Vì con người là nhân tố quan trọng nhưng cũng dễ sai lầm nhất

trong một mạng viễn thông, mọi cơ hội để hợp nhất các thao tác, loại bỏ các điểm saisót và thống nhất các điểm thanh toán sẽ rất có ích

Trong các tổ chức kinh doanh, sự quản lý trên cơ sở giao thức quản lý mạng

đơn giản SNMP (Simple Network Management Protocol) có thể được cung cấp cho cả

dịch vụ thoại và dữ liệu sử dụng VoIP Việc sử dụng thống nhất giao thức IP cho tất

cả các ứng dụng hứa hẹn giảm bớt phức tạp và tăng cường tính mềm dẻo Các ứngdụng liên quan như dịch vụ danh bạ và dịch vụ an ninh mạng có thể được chia sẻ dễdàng hơn

Nâng cao ứng dụng: Thoại và fax chỉ là các ứng dụng khởi đầu cho VoIP, 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 và đadịch vụ Chẳng hạn các giải pháp thương mại Internet có thể kết hợp truy cập Web vớiviệc truy nhập trực tiếp đến một nhân viên hỗ trợ khách hàng

Trang 17

I.1.2 Các ứng dụng của VoIP

Giao tiếp thoại sẽ vẫn là dạng giao tiếp cơ bản của con người Mạng điện thoạicông cộng không thể bị đơn giản thay thế, thậm chí thay đổi trong thời gian tới Mụcđích tức thời của các nhà cung cấp dịch vụ điện thoại IP là tái tạo lại khả năng củađiện thoại với một chi phí vận hành thấp hơn nhiều và đưa ra các giải pháp kỹ thuật bổ

sung cho mạng điện thoại chuyển mạch công cộng PSTN (Public Switched Telephone

Network).

Đ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ăngmới

Đ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ôngminh, đầ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ấtbạ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áytí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ăngkiể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 trongcá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ệnthoại Truy nhập đến các trung tâm phục vụ khách hành qua mạng Internet sẽ thúc đẩymạ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ựctuyế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ướcngoà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 nayInternet 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

Trang 18

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ầnmề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ềnthống

Kết nối một gateway thoại qua Internet với hệ thống điện thoại hiện hành Cấuhình này cung cấp dịch vụ thoại qua Internet giống như việc mở rộng hệ thống điệnthoại hiện hành của chúng ta

I.2.1 Thời gian trễ (Time Delay)

Thời gian trễ là khoảng thời gian cần thiết để tiếng nói thoát ra khỏi miệngngười nói và đến được tai người nghe Có 3 dạng trễ vốn có trong hệ thống điện thoạingày nay: trễ do lan truyền, trễ do nối tiếp hóa, trễ do xử lý

Trễ lan truyền do tốc độ tín hiệu trong mạng các mạng truyền thông Ánh sángchạy qua chân không với tốc độ 300.000 km/s, và các điện tử di chuyển trong cápđồng xấp xỉ 200.000 km/s Một mạng cáp kéo dài liên tục qua nửa vòng trái đất mộtchiều có trễ lan truyền khoảng 70ms Lượng trễ này không đáng kể nhưng nếu cộngthêm trễ xử lý có thể làm chất lượng thoại không đảm bảo đến mức không chấp nhậnđược

Trễ xử lý liên quan đến nhiều yếu tố, có thể do việc xử lý, việc truy cập đườngtruyền, hoặc do định tuyến trên mạng như là: quá trình đóng gói, nén gói tin, chuyểnmạch…gây ra bởi các thiết bị chuyển tiếp qua mạng Các trễ xử lý có thể ít tác độngđến các mạng điện thoại truyền thống nhưng nó trở nên là vấn đề lớn trong các mạngchuyển mạch gói Khi các gói được giữ trong một hàng đợi vì nghẽn trên giao tiếp ngõ

ra, từ đó dẫn đến trễ xếp hàng Có một số hệ điều hành giải quyết rất tốt việc dichuyển và xác định đích của gói Chúng ta nên giữ giá trị trễ này nhỏ hơn 10ms bất cứkhi nào có thể bằng các giải thuật xếp hàng tối ưu

Hình 1 – Thời gian trễ của một số truyền dẫn.

Một vài loại trễ là dài nhưng có thể chấp nhận được bởi không có sự lựa chọnnào khác Trong truyền dẫn vệ tinh, phải mất đến gần 250 ms để hoạt động truyền đếnđược vệ tinh, và cần 250 ms để quay về mặt đất Điều này làm tổng trễ lên đến trên

Trang 19

500 ms Mặc dù như vậy là vượt quá cho phép nhưng vẫn có nhiều cuộc đàm thoạidiễn ra hằng ngày qua vệ tinh Trong một mạng không quản lý được nghẽn, trễ hàngđợi có thể lên đến 2s, kết quả là mất gói Khoảng thời gian này là không thể chấp nhậnđược trong bất kỳ mạng điện thoại nào Một yếu tố khác cũng ảnh hưởng đến tổngthời gian trễ là jitter.

I.2.2 Sự thay đổi thời điểm gói đến (Jitter)

Phát biểu đơn giản của jitter là sự thay đổi khoảng thời gian giữa các gói Jitter

là vấn đề chỉ tồn tại trong mạng chuyển mạch gói Người gởi mong đợi truyền các góithoại một cách tin cậy vào một khoảng thời gian không đổi, ví dụ một khung tin saumỗi 20 ms Các gói thoại này có thể trì hoãn và không đến đích vào các thời điểmcách đều nhau như đã gởi đi Độ lệch giữa thời điểm mong đợi và thời điểm nhậnđược gói thực sự là jitter

Hình 2 – Sự thay đổi thời điểm gói đến

Hình vẽ cho thấy rằng thời gian cần để gởi gói A và B là bằng nhau (D1=D2).Gói C nhận được vào thời điểm trễ hơn so với dự định Đây là lý do tồn tại bộ đệmjitter, bộ đệm này che đi sự thay đổi thời gian trễ giữa các gói

Cần lưu ý là jitter và trễ không phải là một, cho dù có nhiều jitter sẽ làm tăngtổng thời gian trễ trong mạng Bởi vì càng có nhiều jitter thì cần có nhiều bộ đệm jitter

để bù vào các khoảng thay đổi thời gian giữa các gói

Nếu mạng được quản lý tốt thì jitter trong mạng không phải là trở ngại lớn và

bộ đệm jitter sẽ không làm tăng đáng kể tổng trễ Bộ đệm jitter đôi khi còn được gọi làhàng đợi động (dynamic queue) Hàng đợi có thể tăng lên hay giảm xuống theo hàm

mũ tùy vào thời gian giữa các gói Mặc dù bộ đệm tĩnh vẫn được dùng, nhưng bộ đệmjitter động là tốt nhất Các bộ đệm jitter tĩnh thì sẽ quá lớn và quá nhỏ, từ đó khiến chochất lượng thoại giảm sút bởi nhiều gói bị mất hay thời gian trễ quá mức Bộ đệmđộng sẽ tăng hay giảm dựa vào sự thay đổi của vài gói sau cùng

I.2.3 Điều chế xung theo mã PCM (Pulse Code Modulation)

Mặc dù truyền thông tín hiệu analog là lý tưởng cho thông tin con người,nhưng truyền dẫn analog không bền vững và khó khôi phục lại thông tin từ đường dây

bị nhiễu Trong mạng điện thoại thế hệ đầu, khi truyền dẫn analog được chuyển qua

Trang 20

các bộ khuếch đại để bơm tín hiệu lên, không chỉ có tiếng nói được phóng to lên màcác tín hiệu nhiễu cũng được khuếch đại lên và làm ảnh hưởng đến cuộc gọi.

Đối với các mẫu digital, với các bit 0 và 1, việc kiểm soát lỗi và khôi phục tínhiệu rất dễ dàng Do đó, các tín hiệu analog được tái tạo từ các mẫu digital vẫn giữnguyên chất lượng trung thực Điều này dẫn đến sự ra đời các kỹ thuật số hóa Như đãbiết tiếng nói có tần số nằm trong dải âm tần nhỏ hơn 4kHz Để chuyển đổi các tínhiệu này sang dạng số, theo lý thuyết lấy mẫu của Nyquist thì biên độ của tín hiệuphải được lấy mẫu là 8000 lần trong một giây

Hình 3 – Sơ đồ điều chế xung theo mã

Tín hiệu lấy mẫu trước hết được chuyển sang một dòng xung, biên độ mỗixung bằng với biên độ của tín hiệu analog tại thời điểm lấy mẫu Các tín hiệu này

được gọi là tín hiệu được điều chế biên độ xung PAM (Pulse Amplitude Modulation).

Tín hiệu PAM vẫn còn là analog, chúng sẽ được chuyển sang dạng số hoàn toàn bằngcách lượng tử hóa các tín hiệu PAM, trong đó có một bit chỉ dấu của tín hiệu (âm vàdương) Điều này có nghĩa là có 256 mức khác nhau được dùng Tín hiệu sau cùngđược gọi là tín hiệu điều chế theo xung mã PCM và có tốc độ 64kbps (8000 mẫu/giây,

mỗi mẫu 8 bit), đây là tốc độ có sẵn của các kênh số (digital channel).

I.2.4 Nén âm thanh

Hai dạng cơ bản của nén 64kbps PCM được dùng phổ biến là a-law và µ-law.Các phương pháp giống nhau trong đó cả hai đều dùng nén logarit để đạt được 12 đến

13 bit chất lượng PCM tuyến tính theo 8 bit, nhưng chúng khác nhau ở một số chi tiếtnhỏ Hiện tại các nước vùng Bắc Mỹ dùng µ-law, các nước Châu Âu dùng a-law

Một số tiêu chuẩn do Hiệp hội viễn thông quốc tế ITU (International Telecom

munication Union) cung cấp phổ biến nhất cho điện thoại và điện thoại số bao gồm

các chuẩn bắt đầu với ký tự G

Chuẩn nén âm thanh G711

Chuẩn G.711 là một chuẩn nén âm thanh được sử dụng rộng rãi cho các hộinghị âm thanh Chuẩn này mô tả phương pháp mã hoá và giải mã âm thanh với tốc độ64kbps Mỗi mẫu âm thanh là một số nhị phân có tám bit được sử dụng cho phạm vitoàn cầu ITU đưa ra hai quy luật mã hóa là mã hóa theo quy luật a và mã hóa theoquy luật µ Khi sử dụng luật mã hóa µ trong mạng truyền thông thì việc chặn tất cả

và nén/giải nén

Tín hiệu

thoại analog

Xunglấy mẫu

Tín hiệu được điều chế biên

độ xung PAM

Tín hiệu điều chế xung theo

mã PCM

Tín hiệu thoại được số hóa

Trang 21

các tín hiệu ký tự 0 là yêu cầu nhất thiết Giá trị lượng tử hóa là kết quả của luật mãhóa Bất cứ sự chuyển đổi cần thiết giữa các quốc gia đều sử dụng quy luật µ.

Khi tín hiệu ký tự được truyền tuần tự trong một tầng vật lý, bit số 1 (bit dấu)được truyền trước tiên và bit số 8 (bit ít có ý nghĩa nhất) được truyền cuối cùng

Chuẩn nén âm thanh G723

Chuẩn G.723 giới thiệu một bộ nén có thể dùng để nén tín hiệu thoại hoặcnhững tín hiệu âm thanh khác của các dịch vụ đa phương tiện ở tốc độ bit rất thấp.Trong thiết kế của chuẩn này, nguyên lý ứng dụng làm việc ở tốc độ truyền bit rấtnhỏ Bộ mã hóa này được tích hợp hai tốc độ khác nhau: 5.3 và 6.3kbps Cả hai tốc độđều hỗ trợ bởi bộ mã hóa và giải mã Chúng có thể chuyển đổi qua lại tại bất kì khungtruyền (30 ms) nào Với tốc độ 6.3 kbps chất lượng âm thanh tốt hơn Bộ mã hóa nàynén thoại với chất lượng cao ở cả hai tốc độ nhưng ít sử dụng kỹ thuật phức tạp Cáctín hiệu âm thanh khác sau khi được nén cho âm thanh có chất lượng không thực lắm

Về độ trễ, bộ mã hóa này mã hóa tín hiệu thoại và những tín hiệu âm thanh khác bằngnhững khung 30 ms, thêm độ trễ của phần chuyển đổi giữa các khung 7.5 ms, thờigian trễ tổng cộng là 37.5 ms

Chuẩn nén âm thanh G729

Chuẩn nén âm thanh G729 là chuẩn nén mới nhất được ITU đưa ra Những đặcđiểm của chuẩn : chuẩn này sử dụng thuật toán mã hoá 8 kbps Một trong nhữngchuẩn dùng cho mọi ứng dụng bao gồm cả không dây Các chuẩn cùng được phát triểnvới chuẩn này là G729A, G729D, G729E Các ưu điểm của chuẩn G729:

o Chất lượng của dịch vụ : bởi vì độ trễ của chuẩn này là 10 ms, nên nó được dùng trong truyền âm thanh Chất lượng của âm thanh không phụ thuộc vào khoảng cách giữa các máy điện thoại

o Tính tương thích : Bởi vì nâng cấp mạng để tăng khả năng băng thông là rất tốn kém Do vậy các nhà cung cấp sẽ sử dụng những chuẩn chung để tương thích với những nhà phát triển khác

o Tính kinh tế : các công ty muốn tăng khả năng truyền âm thanh,

dữ liệu, nâng cao chất lượng và giảm giá thành nên áp dụng chuẩn này.Ngoài ra còn các chuẩn khác như G.726, G.728…

Điểm đánh giá bình quân

Có thể kiểm thử chất lượng tiếng nói theo hai cách: chủ quan do con ngườithực hiện hoặc khách quan do máy tính thực hiện

Các loại mã được phát triển và hiệu chỉnh dựa vào các đo lường chất lượngtiếng nói một cách chủ quan Các đo lường khách quan chuẩn, như tổng méo của sóng

hài và tỉ số tín hiệu trên nhiễu SNR (signal to noise ratio) không phù hợp với cảm

nhận của con người Cảm nhận của con người mới chính là mục tiêu của hầu hết các

Trang 22

kỹ thuật nén tiếng nói Một thông số chủ quan được dùng để xác định chất lượng là

điểm đánh giá bình quân MOS (mean opinion score) MOS test cung cấp cho một

nhóm người nghe Người nghe cho mỗi mẫu một điểm theo thang điểm từ 1 (xấu) đến

5 (rất tốt) Điểm đánh giá MOS cho một số chuẩn của ITU được liệt kê trong bảng sau

Bảng 1 – Điểm đánh giá MOS một số codec của ITU

cho các mục đích khác khi dùng sự phát hiện hoạt động thoại VAD (Voice Activity

Detection) VAD làm việc trên cơ sở phát hiện độ lớn tiếng nói theo decibel (dB) và

quyết định khi nào thì cắt bỏ tiếng nói ra khỏi hoạt động đóng khung tin

Thông thường khi VAD phát hiện một sự suy giảm biên độ của tiếng nó, nó đợimột khoảng thời gian cố định trước khi dừng việc cài đặt khung tin âm thanh vào các

gói Khoảng thời gian cố định này được gọi là hangover thường là 200ms Tuy nhiên

VAD cũng gặp khó khăn trong việc xác định khi tiếng nói bắt đầu và kết thúc, trongviệc phân biệt tiếng nói với nhiễu nền Nếu chúng ta ở trong một căn phòng ồn ào thìVAD không thể phân biệt đâu là tiếng nói đâu là tạp âm Điều này còn được gọi làSNR Trong trường hợp này, VAD tự cấm ngay từ khi bắt đầu cuộc gọi VAD cũngkhông phát hiện được khi nào bắt đầu của tiếng nói Bắt đầu của câu nói đầu tiênthường bị xén gọi là front-end speech clipping Bình thường người nghe không chú ýđến khoảng bị xén này

I.2.6 Tiếng vọng (Echo)

Echo trong cuộc đàm thoại là một hiện tượng có thể gây phiền phức không thểchịu được Trong mạng điện thoại truyền thống, echo thông thường bị gây ra bởi sựkhông phù hợp trở kháng từ sự chuyển mạng bốn dây sang vòng cục bộ hai dây Echotrong mạng PSTN được kiểm soát bởi các bộ triệt echo và kiểm soát chặt chẽ sựkhông phù hợp trở kháng tại các điểm phản hồi

Trang 23

Echo có hai điều gây trở ngại: lớn và kéo dài Echo càng lớn và càng kéo dàithì làm cho người tham gia đàm thoại càng khó chịu Các mạng điện thoại dùng tínhiệu analog, người ta sử dụng các bộ triệt echo, các thiết bị này loại bỏ echo bằng cáchtăng trở kháng trên một mạch Đây không phải là cách để loại bỏ echo tốt nhất và thực

tế đã gây ra trở ngại khác Ví dụ chúng ta không thể dùng mạng số liên kết đa dịch vụ

ISDN (Integrated Services Digital Network) trên một đường dây có bộ triệt echo vì nó

sẽ cắt bỏ dải tần mà ISDN dùng

I.2.7 Mất gói

Sự mất gói trong mạng số liệu là phổ biến

Nguyên nhân mất gói tin:

o Do lỗi truyền dẫn, khuôn dạng gói không được định nghĩa/checksum kiểm tra hỏng gói sẽ bị loại bỏ

o Do tắc nghẽn (mạng quá tải) Tắc nghẽn ngõ vào khi router không xử lý các gói đủ nhanh, tắc nghẽn ngõ ra khi kết nối ngõ ra quá bận rộn

o Do gói trải qua một thời gian trễ quá lớn trên mạng và đến quá trễ

Các phương pháp hiệu chỉnh mất gói:

o Khôi phục các gói bị mất dựa vào bên phát

o Khôi phục gói bị mất dựa vào bên nhận

Sự mất gói trong mạng số liệu còn được lợi dụng, nhiều giao thức sử dụng sốliệu sự mất gói để nhận biết được điều kiện mạng và có thể giảm số gói đang gởi đi

I.2.8 Các giao thức vận chuyển

Có hai loại giao thức vận chuyển quan trọng nhất trong hệ thống mạng IP là:

TCP (Transmission Control Protocol) và UDP (User Datagram Protocol).

Giao thức TCP: Về chức năng TCP tương đương với lớp giao thức đầy đủ nhất

của giao thức chuẩn Transport trong mô hình OSI (Open Systems Interconnection) TCP sử dụng phương thức trao đổi các dòng dữ liệu (data stream) giữa người sử

dụng Giao thức TCP đảm bảo độ tin cậy giữa nơi gởi và nơi nhận Dòng dữ liệu cóchiều dài tùy ý được phân thành những đoạn không vượt quá 64 KB

Giao thức UDP: cho phép người sử dụng gởi bản tin mà không cần thiết lậpliên kết, do đó không đảm bảo việc giao nhận chính xác hoặc thứ tự bản tin Giao thứcnày dùng cho dịch vụ không tin cậy Thực tế trong các mạng 99% bản tin UDP đượcgiao nhận đúng đích Do chức năng đơn giản nên UDP hoạt động nhanh hơn TCP

Các ứng dụng VoIP trong thực tế thường lựa chọn giao thức UDP Vì các ứngdụng đòi hỏi thời gian thực, hỏi đáp mong muốn trả lời trong thời gian nhanh nhất,việc truyền thông âm thanh và hình ảnh có thể chấp nhận một vài gói dữ liệu bị hỏng

Trang 24

hoặc thất lạc VoIP chạy bên trên giao thức thời gian thực RTP (Realtime Transport

Protocol), RTP hoạt động trên UDP trong mạng IP nên thường được gọi chung RTP/

UDP/IP

II Tìm hiểu giao thức SIP

II.1 Giới thiệu

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ệnnhư là VoIP SIP còn có thể “mời” nhiều thành phần tham gia vào phiên đã có như là

các hội thảo multicast 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ợ dịch vụ ánh xạ tên và định hướng ngược lại một cách trong suốt màngười sử dụng có thể bảo quản một định danh hiển thị bên ngoài mà không cần quantâm đến là họ có hiểu biết về mạng hay không

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

o 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

o 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 thamgia vào truyền thông

o 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

o 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

o 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.1.1 Lược sử SIP

SIP là một giao thức chuẩn của IETF

o Tác giả: M.Handley, H.Schulzrinne, E.Schooler vàJ.Rosenberg

o Trở thành giao thức chuẩn định nghĩa trong RFC 2543 tháng Ba, năm 1999

o Thiết lập WorkGroup riêng vào tháng Chín, năm 1999

o Được định nghĩa đầy đủ trong RFC 3261 tháng Bảy, năm 2002

Trang 25

II.1.2 Vai trò và vị trí của SIP trong VoIP

Hai thành phần quan trọng trong ứng dụng điện thoại Internet đó là quá trìnhđiều khiển cuộc gọi và truyền âm thanh ở dạng gói Ngày nay, nhiều giao thức mởđược phát triển để giải quyết cả hai vấn đề này tập hợp lại thành VoIP stack

Hình 4 – VoIP stack

Các giao thức điều khiển cuộc gọi phổ biến được chia thành hai nhóm:

o Nhóm điều khiển cổng truyền thông: bao gồm SGCP, IDCP, MGCP

(Media Gateway Control Protocol), MEGACO (Media Gateway Control)

o Nhóm báo hiệu điểm-điểm: H 323 và SIP

H.323 được triển khai bởi ITU, và được kết hợp với nhiều giao thức khác nhautương ứng với mỗi giai đoạn của quá trình báo hiệu Vì thế, các tiêu chuẩn của giaothức này trở nên cồng kềnh, phức tạp và khó để phát triển và mở rộng trong tương lai

SIP được IETF phát triển sau và chưa được chuẩn hóa tuy nhiên nó vẫn được

chú ý Hiện tại SIP đã được 3GPP (Third Generation Partnership Project) và nhiều

nhà cung cấp chấp nhận Yếu tố chính của sự thuận lợi là từ đặc điểm cơ bản: Ngay từban đầu SIP được định hình để có thể mở rộng nhưng vẫn giữ lại tính đơn giản Giaothức này hỗ trợ dạng text UTF-8, được kế thừa từ hai giao thức Internet khác là HTTP

H323

SDPSIP

MGCP/Megaco

RTP

Media encapsH261, MPEG…

signaling

measurementreservation

quality of service

media transport

IPv4, IPv6

appli catio

n daem on

ke rn el

Trang 26

(Hypertext Transfer Protocol) và SMTP (Simple Mail Transfer Protocol), đem lại

nhiều thuận lợi và nâng cấp các khả năng tuyệt vời mà Internet mang lại

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 đaphươ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 đếnmạ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àocá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ựchiệ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ởimộ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ụngthì 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ảnthườ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ọphoặ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ộtkhi 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ácnhau, 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ả uservớ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 tacũ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à giaothứ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.1.3 Các ưu điểm của SIP

Đơn giản: giao thức SIP nhỏ và đơn giản nhất trong VoIP stack SIP được xem

như là một công cụ đơn giản cho phép các đầu cuối thông minh, các gateway, các xử

lý và các client xây dựng nên và thực hiện

Khả năng mở rộng: kiến trúc điểm – điểm (peer-to-peer) cho phép sự mở rộng

với chi phí không cao So sánh với các giao thức khác, yêu cầu phần cứng và phầnmềm khi thêm một thành viên vào hệ thống giảm một cách đáng kể

Trang 27

Sự phân tán chức năng: SIP cho phép nhiều chức năng trong mỗi thành phần.Thay đổi trên một thành phần riêng biệt ít ảnh hưởng đến phần còn lại của hệ thống.

II.2 Các đặc điểm của giao thức SIP

II.2.1 Thông điệp SIP (SIP messages)

Các thành phần tham gia vào một hệ thống dựa trên SIP sẽ báo hiệu cho nhaubằng trao đổi các thông điệp SIP Đây là tư tưởng cơ bản và dễ thấy nhất của giaothức SIP Bằng cách phân tích cấu trúc các thông điệp, chúng ta có thể quản lý cáccuộc gọi dễ dàng Các thông điệp SIP là các thông điệp dựa trên text có cấu trúcchung gồm 3 phần: request line, header, body Mô tả ở hình 5

Phần request line gồm các thành phần: phương thức yêu cầu, địa chỉ nguồn

URI (universal resource identifier) yêu cầu thiết lập phiên, phiên bản SIP.

Phần header gồm một hoặc nhiều header của các giao thức chỉ định như TCPhoặc UDP, địa chỉ của nơi gởi, chiều dài của phần body

Một dòng trống theo sau là phần body có thể tùy chọn chứa nội dung gởi Phần

thân của message chứa gói tin SDP mô tả chi tiết phiên truyền thông

Hình 5 – Cấu trúc một thông điệp SIP

SIP có 6 phương thức chính cho việc quản lý một phiên cơ bản:

INVITE: Đây là phương thức được gởi đi để khởi động báo hiệu cuộc gọi Yêucầu được sử dụng để mời 1một user kết nối cuộc gọi Thông điệp này chứa thông tin

cơ bản như định danh người gọi và định danh 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 được lời gọi INVITE, sẽ có một thông điệp trả lời vớiphương thức ACK Thông điệp này chứa đặc tả SDP về các thông số để thiết lập phiêntruyền thông

Trang 28

OPTIONS: Thông điệp được gởi để truy vấn các khả năng của hai bên.

BYE: Kết thúc cuộc gọi giữa hai người sử dụng Thông điệp này không cầnphải có trả lời từ đối tác

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

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ôngtin 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 chobiế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

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

Trang 29

603 Decline

604 Does not exist

Phần đầu header mang các thông tin cần thiết cho chuyển tiếp thông điệp cũng như để xử lý thông điệp Phần header chỉ hoặc xuất hiện ở thông điệp yêu cầu hoặc

Thông thường, trong quá trình xử lý thiết lập phiên, các thành phần có liênquan sẽ trao đổi thông tin của phiên trong phần thân của thông điệp SIP Các thông tinnày thường được mô tả bằng thông điệp SDP

II.2.2 Các thành phần của giao thức SIP (SIP Elements)

Các thành phần chính tham gia vào hệ thống dựa trên SIP bao gồm hai loại:Thành phần truy xuất mạng hay các thiết bị điểm cuối: đó là những thành phầntương tác trực tiếp với người sử dụng để thiết lập các cuộc gọi, hay tương tác với

server cung cấp nội dung Thành phần này thường được gọi là UA (User Agents)

Thành phần nhân của mạng SIP: đó là những thành phần trung gian tham giavào quá trình chuyển tiếp các thông điệp Có ba loại là: proxy server, registrationserver (registrar) và redirect server

UA có thể là một ứng dụng PC (softphone) hoặc các thiết bị nhúng (SIPphone) Các UA đóng 2 vai trò logic: khi nhận yêu cầu và gởi trả đáp ứng chúng cóvai trò như UAS, còn khi tạo các yêu cầu để gởi đi và khi xử lý các đáp ứng nhậnđược thì như là UAC

Proxy server là các thành phần chuyển các thông điệp SIP trực tiếp Proxyserver thực hiện công việc này dựa trên một cơ sở dữ liệu được gọi là dịch vụ xác định

vị trí Cơ sở dữ liệu này kết hợp với các địa chỉ host cụ thể mà người sử dụng đangđăng nhập Cơ sở dữ liệu này được xây dựng bởi registrar nhờ quá trình đăng ký

Quá trình đăng ký được thực hiện bởi yêu cầu REGISTER Khi UA muốn đăng

ký địa chỉ SIP của nó với registrar, nó tạo ra một yêu cầu REGISTER và gởi đếnregistrar Registrar nhận và xử lý yêu cầu, lưu các thông tin vào cơ sở dữ liệu gồm địachỉ SIP và địa chỉ host Một người sử dụng có thể đăng nhập trên nhiều host Các UA

sẽ cập nhật thông tin một cách định kỳ bằng cách gởi lại yêu cầu REGISTER Nếu saucác khoảng thời gian cụ thể, registrar không nhận được bất kỳ yêu cầu REGISTERnào, nó sẽ xóa các mục tương ứng từ dịch vụ xác định vị trí

Trang 30

Khi một hệ thống dựa trên SIP được mở rộng, nó sẽ cần sử dụng các redirectserver Các chức năng của redirect server có thể được mô tả chung là redirect serverchỉ nhận các yêu cầu, tìm kiếm dịch vụ vị trí để tạo ra đáp ứng 3xx và gởi đáp ứng nàytrở về nơi yêu cầu ban đầu Nơi có yêu cầu sẽ gởi lại yêu cầu theo địa chỉ mới có chứatrong thông điệp đáp ứng 3xx.

II.3 Cấu trúc của giao thức SIP

Cấu trúc chung của giao thức SIP bao gồm ba lớp

o Lớp trên là lớp giao dịch người sử dụng TU (Transaction User layer)

Đây là phần xử lý cơ bản trong các thành phần của SIP như UA core, proxy core

o Tiếp theo là lớp giao dịch Transaction layer Lớp này làm nhiệm vụ gởi

và nhận các thông điệp SIP một cách tin cậy Khi SIP chạy trên một giao thức chuyển vận không tin cậy như UDP, lớp này sẽ phát lại các thông điệptùy thuộc vào các trạng thái hạn chế

o Bên dưới là lớp giao vận Transport layer Giao thức SIP có thể chạy

trên nhiều giao thức chuyển vận không tin cây (như UDP) hoặc tin cậy (TCP, SCTP), cũng như các giao thức bảo mật (TLS trên TCP)

Một giao dịch bao gồm một yêu cầu được UAC gởi đi và tất cả các đáp ứngnhận được cho đáp ứng đó Tiêu biểu là trường hợp yêu cầu INVITE được gởi

Một hội thoại biểu diễn một quan hệ giữa hai UA suốt một khoảng thời gian.Các hội thoại bao gồm trong một phiên gọi Các phiên nhiều thành phần, có thể cónhiều hơn một hội thoại, một hội thoại cho hai thành phần

II.4 Các giao thức liên quan

II.4.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 đatruyề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ệcmiêu tả hội nghị trong môi trường mạng khác

SDP bao gồm:

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

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

o 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 …)

Trang 31

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ênlạ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:

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

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

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

Với 1 phiên multicast IP, các thông tin sau cũng được vận chuyển:

o Địa chỉ multicast cho truyền thông

o Cổng vận chuyển cho truyền thông

Địa chỉ và cổng ở đây là địa chỉ đích và cổng đích của luồng truyền thông.Với 1 phiên unicast IP, các thông tin sau được mang theo:

o Địa chỉ từ xa cho truyền thông

o Cổng truyền với địa chỉ liên hệ

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)

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

o 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

Trang 32

<session id> là một chuỗi số mà ứng với các hình thể <username>,<sessionid>, <network type>, <address type> và <address> là một định danh độc nhất chophiê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 proxythô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 địnhnghĩ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 choIP4 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

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

o 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:

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

o 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>

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

m = <media><port><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.

o 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:<payload type><encoding name>/<clock rate>[/<encodingparameters>]

<payload type>: kiểu payload

Trang 33

<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

II.4.2 Giao thức RTP (Real-time 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 RTPcung cấp các dịch vụ về dữ liệu mang tính thời gian thực như video và audio Thôngthườ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ềntả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à âmthanh 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áthiệ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 đổiqua 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ácthô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

Hoạt động của giao thức.

RTP không có sẵn các cơ chế để đảm bảo việc truyền theo thời gian hay các kỹthuật về QoS mà dựa vào các dịch vụ ở lớp dưới để thực hiện những khả năng này.RTP không đảm bảo an toàn hay thứ tự các packet khi truyền, số thứ tự trong RTPpacket cho phép bên nhận sắp xếp lại các packet theo thứ tự khi truyền của bên gửi.Ngoài ra số thứ tự cũng có thể được tận dụng để xác định vị trí thích hợp của một

Trang 34

packet, ví dụ trong việc giải mã video, mà không cần phải giải mã các packet theo thứtự.

Các gói tin truyền trên mạng Internet có trễ và jitter không dự đoán được.Nhưng các ứng dụng đa phương tiện yêu cầu một thời gian thích hợp khi truyền các

dữ liệu và phát lại RTP cung cấp các cơ chế bảo đảm thời gian, số thứ tự và các cơchế khác liên quan đến thời gian Bằng các cơ chế này RTP cung cấp sự truyền tải dữliệu thời gian thực giữa các đầu cuối qua mạng

Tem thời gian (time-stamping) là thành phần thông tin quan trọng nhất trong

các ứng dụng thời gian thực Người gửi thiết lập các “tem thời gian” ngay thời điểmoctet đầu tiên của gói được lấy mẫu

“Tem thời gian” tăng dần theo thời gian đối với mọi gói Sau khi nhận được gói

dữ liệu, bên thu sử dụng các “tem thời gian” này nhằm khôi phục thời gian gốc đểchạy các dữ liệu này với tốc độ thích hợp

Ngoài ra, nó còn được sử dụng để đồng bộ các dòng dữ liệu khác nhau (chẳnghạn như giữa hình và tiếng) Tuy nhiên RTP không thực hiện đồng bộ mà các mứcứng dụng phía trên sẽ thực hiện sự đồng bộ này

Bộ phận nhận dạng tải xác định kiểu định dạng của tải tin cũng như các phươngcách mã hoá và nén Từ các bộ phận định dạng này, các ứng dụng phía thu biết cáchphân tích và chạy các dòng dữ liệu tải tin Tại một thời điểm bất kỳ trong quá trìnhtruyền tin, các bộ phát RTP chỉ có thể gửi một dạng của tải tin cho dù dạng của tải tin

có thể thay đổi trong thời gian truyền (thay đổi để thích ứng với sự tắc nghẽn củamạng) Một chức năng khác mà RTP có là xác định nguồn Nó cho phép các ứng dụngthu biết được dữ liệu đến từ đâu.Ví dụ thoại hội nghị, từ thông tin nhận dạng nguồnmột người sử dụng có thể biết được ai đang nói

Hình 6 – Mã hoá gói tin RTP/UDP/IP

Các cơ chế trên được thực hiện thông qua phần mở đầu của RTP Cách mã hoágói tin RTP trong gói tin IP được mô tả trên hình vẽ

RTP nằm ở phía trên UDP, sử dụng các chức năng ghép kênh và kiểm tra củaUDP UDP và TCP là hai giao thức được sử dụng chủ yếu trên Internet TCP cung cấpcác kết nối định hướng và các dòng thông tin với độ tin cậy cao trong khi UDP cungcấp các dịch vụ không liên kết và có độ tin cậy thấp giữa hai trạm chủ Sở dĩ UDPđược sử dụng làm thủ tục truyền tải cho RTP là bởi vì 2 lí do:

o Thứ nhất, RTP được thiết kế chủ yếu cho việc truyền tin đa đối tượng, các kết nối có định hướng, có báo nhận không đáp ứng tốt điều này

Trang 35

o Thứ hai, đối với dữ liệu thời gian thực, độ tin cậy không quan trọng bằng truyền đúng theo thời gian Hơn nữa, sự tin cậy trong TCP là do cơ chế báo phát lại, không thích hợp cho RTP Ví dụ khi mạng bị tắc nghẽn một số gói có thể mất, chất lượng dịch vụ dù thấp nhưng vẫn có thể chấp nhận được Nếu thực hiện việc phát lại thì sẽ gây nên độ trễ rất lớn cho chấtlượng thấp và gây ra sự tắc nghẽn của mạng.

Thực tế RTP được thực hiện chủ yếu trong các ứng dụng mà tại các mức ứngdụng này có các cơ chế khôi phục lại gói bị mất, điều khiển tắc nghẽn

II.4.3 Giao thức RTCP (Real-time Transport Control Protocol)

Giao thức điều khiển truyền thời gian thực RTCP (Real-time Transport

Control Protocol) là giao thức hỗ trợ cho RTP cung cấp các thông tin phản hồi về chất

lượng truyền dữ liệu Các dịch vụ mà RTCP cung cấp là:

o Giám sát chất lượng và điều khiển tắc nghẽn: Đây là chức năng cơ bản của RTCP Nó cung cấp thông tin phản hồi tới một ứng dụng về chất lượng phân phối dữ liệu Thông tin điều khiển này rất hữu ích cho các bộ phát, bộ thu và giám sát Bộ phát có thể điều chỉnh cách thức truyền dữ liệu dựa trêncác thông báo phản hồi của bộ thu Bộ thu có thể xác định được tắc nghẽn

là cục bộ, từng phần hay toàn bộ Người quản lý mạng có thể đánh giá đượchiệu suất mạng

o Xác định nguồn: Trong các gói RTP, các nguồn được xác định bởi các số ngẫu nhiên có độ dài 32 bít Các số này không thuận tiện đối với người sử dụng RTCP cung cấp thông tin nhận dạng nguồn cụ thể hơn ở dạng văn bản Nó có thể bao gồm tên người sử dụng, số điện thoại, địa chỉ e-mail và các thông tin khác

o Đồng bộ môi trường: Các thông báo của bộ phát RTCP chứa thông tin

để xác định thời gian và nhãn thời gian RTP tương ứng

Chúng có thể được sử dụng để đồng bộ giữa âm thanh với hình ảnh

o Điều chỉnh thông tin điều khiển: Các gói RTCP được gửi theo chu kỳ giữa những người tham dự Khi số lượng người tham dự tăng lên, cần phải cân bằng giữa việc nhận thông tin điều khiển mới nhất và hạn chế lưu lượng điều khiển Để hỗ trợ một nhóm người sử dụng lớn, RTCP phải cấm lưu lượng điều khiển rất lớn đến từ các tài nguyên khác của mạng RTP chỉ cho phép tối đa 5% lưu lượng cho điều khiển toàn bộ lưu lượng của phiên làm việc Điều này được thực hiện bằng cách điều chỉnh tốc độ phát của RTCP theo số lượng người tham dự

Trang 36

II.5 Thiết lập cuộc gọi thông qua SIP

Mô hình thực hiện việc gọi điện giữa 2 máy sử dụng một proxy server

Hình 7 – Mô hình thực hiện cuộc gọi giữa hai UAC thông qua Proxy Server

Bước 1 – User ở UAC1 muốn kết nối đến đối tượng gọi Tại thời điểm này,ứng dụng chạy trên UAC1 tạo ra một thông điệp INVITE và gởi đến proxy Địa chỉproxy được cấu hình trước trong chương trình

Bước 2 – Proxy nhận yêu cầu bằng cách lắng nghe trên cổng 20050/UDP Nótrả lời ngay lập tức một đáp ứng 100 (TRYING) yêu cầu client đợi kết nối Sau đóchuyển qua bước 3

1.INVITE

3.INVITE2.TRYING

4.TRYING5.RINGING6.RINGING

8.200(OK)9.200(OK)

Trang 37

Bước 3 – Proxy kiểm tra yêu cầu INVITE, xác định máy nơi mà đối tượng gọiđăng nhập vào và chuyển INVITE đến máy đó.

Bước 4 – UAC2 trả lời lại proxy với một đáp ứng 100 (TRYING)

Bước 5 – UAC2 gởi 1 đáp ứng 180 (RINGING) đến proxy cho biết tình trạngđang đổ chuông

Bước 6 – Proxy chuyển 180 (RINGING) đến UAC1

Bước 7 – UAC1 nhận 180 (RINGING), lập tức phát ra tín hiệu chuông chờ Bước 8 – Đối tượng gọi ở UAC2 bắt máy UAC2 báo proxy tín hiệu bắt máyvới 200 (OK)

Bước 9 – Proxy chuyển 200 (OK) đến UAC1

Bước 10 – UAC1 gởi yêu cầu ACK đến proxy xác nhận rằng đã nhận 200 (OK)Bước 11 – Proxy chuyển ACK đến UAC2

Bước 12 – UAC1 phát ra luồng RTP với UAC2 và bắt đầu truyền âm thanh.Bước 13, 14 – Đối tượng gọi tại UAC1 cúp máy trước UAC1 phát ra yêu cầuBYE và gởi đến UAC2 thông qua proxy

Bước 15, 16 – UAC2 nhân được yêu cầu BYE của UAC1, nó phản hồi bằng

200 (OK), kết thúc cuộc gọi

III Đánh giá giao thức SIP và các bộ giao thức khác

III.1 H323

H323 là một chuẩn quốc tế về hội thoại trên mạng được đưa ra bởi hiệp hộiviễn thông quốc tế ITU Chuẩn H323 của ITU xác định các thành phần, các giao thức,các thủ tục cho phép cung cấp dịch vụ truyền dữ liệu đa phương tiện audio, video,data thời gian thực qua mạng chuyển mạch gói (bao gồm cả mạng IP) mà không quantâm đến chất lượng dịch vụ H323 nằm trong bộ các khuyến nghị H32x cung cấp cácdịch vụ truyền dữ liệu đa phương tiện qua các loại mạng khác nhau Một trong cácứng dụng của H323 chính là dịch vụ điện thoại IP và hội nghị đa truyền thông Đếnnay, H323 đã phát triển thông qua hai phiên bản Phiên bản thứ nhất được thông quavào năm 1996 và phiên bản thứ hai được thông qua vào năm 1998 Ứng dụng vàochuẩn này rất rộng bao gồm cả các thiết bị hoạt động độc lập cũng như ứng dụngtruyền thông nhúng trong môi trường máy tính cá nhân, có thể áp dụng cho đàm thoạiđiểm - điểm cũng như cho truyền thông hội nghị H323 còn bao gồm cả chức năngđiều khiển cuộc gọi, quản lý thông tin đa phương tiện và quản lý băng thông và đồngthời còn cung cấp giao diện giữa mạng LAN và các mạng khác

Các ưu điểm của chuẩn H323

Trang 38

Cung cấp các bộ mã hoá đã được chuẩn hoá H.323 thiết lập các chuẩn nén

và giải nén cho các luồng dữ liệu audio và video, bảo đảm cho các thiết bị từ các nhàcung cấp khác nhau có sự hỗ trợ chung

Tính tương thích cao Người sử dụng có thể trao đổi dữ liệu mà không phải lo

lắng về tính tương thích ở bên nhận Bên cạnh việc đảm bảo bên nhận có thể giải nénthông tin nhận được, H.323 còn thiết lập những khả năng cho phép bên nhận có thểtrao đổi khả năng đối với bên gởi

Độc lập hệ thống mạng H.323 được thiết kế để chạy ở tầng trên của kiến trúc

mạng Những giải pháp cơ bản của H.323 cho phép tận dụng được những cải tiến về

kỹ thuật mạng và sự phát triển băng thông

Độc lập với ứng dụng và hệ điều hành H.322 không bị ràng buộc với phần

cứng hay hệ điều hành

Hỗ trợ đa điểm Tuy H.323 có thể quản lý được những cuộc hội nghị có nhiều

kết nối mà không cần sử dụng thêm một trình điều khiển đa điểm chuyên dụng nào,

nhưng việc sử dụng trình điều khiển đa điểm MCU (Multipoint Control Unit) sẽ cung

cấp một kiến trúc mạnh và linh hoạt hơn cho hội nghị kiểu nhiều kết nối

Quản lý băng thông Việc truyền các dữ liệu truyền thông đa phương tiện đòi

hỏi băng thông rất lớn và có thể làm nghẽn mạch Để giải quyết vấn đề này, H.323đưa ra trình quản lý băng thông Nhân viên quản trị mạng có thể giới hạn số kết nốiH.323 hay giới hạn băng thông cho các ứng dụng sử dụng H.323 Điều này đảm bảocho sự lưu thông trên mạng không bị tắc nghẽn

Hỗ trợ khả năng quảng bá thông tin Giúp cho việc sử dụng băng thông hiệu

quả hơn

Linh hoạt Một hội nghị sử dụng chuẩn H.323 có khả năng tiếp nhận các thiết

bị đầu cuối khác nhau Ví dụ: một đầu cuối chỉ hỗ trợ khả năng truyền và nhận âmthanh có thể tham gia hội nghị với các máy hỗ trợ khả năng truyền dữ liệu và hìnhảnh Máy sử dụng chuẩn H.323 có thể chia sẽ dữ liệu, âm thanh, hình ảnh với các máykhác

Khả năng hội nghị liên mạng Nhiều người dùng muốn kết nối từ mạng LAN

đến một đầu xa chẳng hạn như kết nối giữa hệ thống LAN với hệ thống ISDN H.323cũng hỗ trợ khả năng này và sử dụng kỹ thuật mã hoá chung từ các chuẩn hội nghịkhác nhau để giảm thiểu thời gian chuyển đổi mã và tạo một hiệu suất tối ưu cho hộinghị

III.2 So sánh SIP và H323

Khi so sánh các giao thức ảnh hưởng đến VoIP, ta thấy rằng H323 hoàn thiệnhơn SIP, nhưng các vấn đề có thể nảy sinh từ sự thiếu mềm dẻo của H323 SIP hiện

Trang 39

tại vẫn chưa được định nghĩa đầy đủ nhưng sự mở rộng của nó là rất lớn để có thể dễdàng sử dụng trong các ứng dụng Internet trong tương lai.

Bảng 2 – Một số điểm khác biệt giữa H323 và SIP

Kiến trúc

H323 bao gồm hầu như mọi dịch vụ, như là các dịch vụ khả năng trao đổi, điều khiển hội nghị, báo hiệu cơ bản, QoS, đăng ký v.v…

SIP là từng thành phần vì nó chứa các báo hiệu gọi cơ bản,

vị trí người sử dụng, và đăng

ký Các tính năng khác nằm trong các giao thức khác

bằng PGP (Pretty Good

Privacy) hoặc S/MIME

(Multipurpose Internet Mail

SIP hỗ trợ các mã hoá đã đăng

ký với IANA (Internet Assign

ed Numbers Authority)

Phân nhánh cuộc gọi H323 gatekeeper điều

khiển báo hiệu và có thể phân nhánh cuộc gọi đồng

SIP proxy điều khiển báo hiệu

và có thể phân nhánh cuộc gọiđồng thời đến các thiết bị

Trang 40

thời đến các thiết bị.

Giao thức chuyển vận

Cả tin cậy và không tin cậy Các thực thể H323 dùng giao thức tin cậy cho báo hiệu

Cả tin cậy và không tin cậy Các thực thể SIP dùng giao thức không tin cậy cho báo hiệu

Mã hóa thông điệp

H323 mã hóa thông điệp ở dạng nhị phân nén phù hợp cho cả băng thông hẹp và rộng

Thông điệp SIP được mã hóa

SIP giới hạn hỗ trợ video conference và không hỗ trợ các giao thức data conference như T.120 SIP không có giao thức điều khiển hội nghị cũng không có sự đồng bộ hóa sau

Ngày đăng: 12/12/2013, 18:15

HÌNH ẢNH LIÊN QUAN

Hình 1 – Thời gian trễ của một số truyền dẫn. - Tài liệu Báo cáo tốt nghiệp: “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat" pptx
Hình 1 – Thời gian trễ của một số truyền dẫn (Trang 19)
Hình 2 – Sự thay đổi thời điểm gói đến - Tài liệu Báo cáo tốt nghiệp: “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat" pptx
Hình 2 – Sự thay đổi thời điểm gói đến (Trang 20)
Bảng 1 – Điểm đánh giá MOS một số codec của ITU - Tài liệu Báo cáo tốt nghiệp: “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat" pptx
Bảng 1 – Điểm đánh giá MOS một số codec của ITU (Trang 23)
Hình 4 – VoIP stack - Tài liệu Báo cáo tốt nghiệp: “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat" pptx
Hình 4 – VoIP stack (Trang 26)
Hình 5 – Cấu trúc một thông điệp SIP - Tài liệu Báo cáo tốt nghiệp: “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat" pptx
Hình 5 – Cấu trúc một thông điệp SIP (Trang 28)
Hình 7 – Mô hình thực hiện cuộc gọi giữa hai UAC thông qua Proxy Server - Tài liệu Báo cáo tốt nghiệp: “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat" pptx
Hình 7 – Mô hình thực hiện cuộc gọi giữa hai UAC thông qua Proxy Server (Trang 37)
Hình 11 – Sơ đồ các lớp của Use-case “QuanLyThanhVien” - Tài liệu Báo cáo tốt nghiệp: “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat" pptx
Hình 11 – Sơ đồ các lớp của Use-case “QuanLyThanhVien” (Trang 52)
Bảng 7 – Danh sách các lớp đối tượng trong Use-case “DangKy” - Tài liệu Báo cáo tốt nghiệp: “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat" pptx
Bảng 7 – Danh sách các lớp đối tượng trong Use-case “DangKy” (Trang 53)
.II.5.1. Sơ đồ lớp đối tượng - Tài liệu Báo cáo tốt nghiệp: “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat" pptx
5.1. Sơ đồ lớp đối tượng (Trang 54)
.II.7.1. Sơ đồ lớp đối tượng - Tài liệu Báo cáo tốt nghiệp: “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat" pptx
7.1. Sơ đồ lớp đối tượng (Trang 55)
Hình 18 – Biểu đồ tuần tự xử lý “DangKy” - Tài liệu Báo cáo tốt nghiệp: “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat" pptx
Hình 18 – Biểu đồ tuần tự xử lý “DangKy” (Trang 58)
Hình 19 – Biểu đồ cộng tác xử lý “DangKy” - Tài liệu Báo cáo tốt nghiệp: “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat" pptx
Hình 19 – Biểu đồ cộng tác xử lý “DangKy” (Trang 58)
Hình 20 – Biểu đồ tuần tự xử lý “DangNhap” - Tài liệu Báo cáo tốt nghiệp: “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat" pptx
Hình 20 – Biểu đồ tuần tự xử lý “DangNhap” (Trang 59)
Hình 21 – Biểu đồ cộng tác xử lý “DangNhap” - Tài liệu Báo cáo tốt nghiệp: “Nghiên cứu giao thức SIP và xây dựng ứng dụng Voice Chat" pptx
Hình 21 – Biểu đồ cộng tác xử lý “DangNhap” (Trang 60)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w