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

Các giao thức truyền thông đa phương tiện

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 (892.98 KB, 35 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

BÁO CÁO BÀI TẬP LỚN
TRUYỀN THÔNG ĐA PHƯƠNG TIỆN
ĐỀ TÀI :

TÌM HIỂU VỀ CÁC GIAO THỨC TRUYỀN
THÔNG ĐA PHƯƠNG TIỆN

Sinh viên thực hiện:
Phạm Đức Thành - 20112194
Đinh Phú Long - 20111803
Phạm Văn Minh - 20111867
Nguyễn Thanh Tùng -
20112140
HÀ NỘI, THÁNG 12 NĂM 2014
Lời nói đầu
Công nghệ thông tin đóng vai trò quan trọng trong sự phát triển của xã hội trong thời
đại ngày nay. Công nghệ thông tin trở thành nhân tố quan trọng, là cầu nối trao đổi giữa
các thành phần của toàn xã hội.Đi cùng với nó là sự phát triển không ngừng của các hệ
thống mạng trong đó có các giao thức truyền thông đa phương tiện. Vì vậy nhóm em đã
chọn đề tài:”Các giao thức truyền thông đa phương tiện” để tìm hiểu về sự phát triển này.
Thực tiễn cho thấy các dịch vụ thông tin ngày nay không chỉ đơn thuần là cung cấp dữ
liệu số liệu mà đòi hỏi sự trực quan tương tác cao. Do đó, các hình thức, loại hình, cũng
như yêu cầu về chất lượng dịch vụ truyền thông đa phương tiện ngày càng phong phú, đa
dạng. Truyền thông đa phương tiện là nền tảng quan trọng cho nhiều hoạt động kinh tế,
xã hội, báo chí, truyền hình, quảng cáo, và nhiều hoạt động truyền thông khác.
Nhóm chúng em xin chân thành cảm ơn PGS.TS Nguyễn Thị Hoàng Lan đã trực tiếp
hướng dẫn tận tình trong quá trình làm báo vệ cũng như làm báo cáo. Những góp ý, chỉ
bảo của cô là bài học quý báu giúp nhóm chúng em hoàn thành bài báo cáo được tốt và


hoàn thiện hơn.
Hà Nội ngày 17, tháng 12, năm 2014.
Mục lục
Chương 1: Giới thiệu tổng quan về các giao thức
truyền thông đa phương tiện
1.1 Tìm hiểu chung
Giao thức truyền thông đa phương tiện là một tập hợp các quy tắc chuẩn dành cho
việc biểu diễn dữ liệu, phát tín hiệu, chứng thực và phát hiện lỗi dữ liệu - những việc cần
thiết để gửi tín hiệu đa phương tiện qua các kênh truyền thông, nhờ đó mà các thiết bị có
thể kết nối và trao đổi dữ liệu với nhau.
Yêu cầu và nhiệm vụ của các giao thức truyền thông đa phương tiện là phải đảm bảo
tính tương tác, trực tuyến , thời gian thực khi tương tác giữa các người dùng.
Trong truyền thông đa phương tiện, để truyền tải thành công dữ liệu đa phương tiện,
cần kết hợp nhiều giao thức, mỗi giao thức có những nhiệm vụ khác nhau, tạo nên chồng
giao thức.
1.2 Phân loại các giao thức truyền thông đa phương tiện
Có nhiều cách để phân loại các giao thức truyền thông đa phương tiện:
 Phân chia theo tầng :
- Tầng ứng dụng: RTP/RTCP, SIP
- Tầng truyền tải: UDP, TCP
- Tầng mạng: IP
 Phân chia theo chức năng:
- Các giao thức truyền dữ liệu: RTP, RTSP
- Các giao thức điều khiển: RTCP, SIP
 Chồng giao thức và chuẩn:
- SIP
- H323
Khung giao thức truyền thông đa phương tiện:
1.3 Chồng giao thức H323
- H.323 là giao thức được phát triển bởi ITU-T (International telecommunication Union

Telecommunication Standardization Sector). ITU-T đưa ra các khuyến nghị kỹ thuật về
điện thoại, điện tín và các giao diện về truyền thông dữ liệu. Các khuyến nghị này thường
được công nhận như là các tiêu chuẩn quốc tế, và H323 là một trong các tiêu chuẩn
khuyến nghị đó.
- H.323 phiên bản 1 ra đời vào khoảng năm 1996 và 1998 phiên bản thế hệ 2 ra đời. H.323
ban đầu được sử dụng cho mục đích truyền các cuộc hội thoại đa phương tiện trên các
mạng LAN, nhưng sau đó H.323 đã tiến tới trở thành 1 giao thức truyền tải VoIP trên thế
giới. Giao thức này chuyển đổi các cuộc hội thoại voice, video, hay các tập tin và các ứng
dụng đa phương tiện cần tương tác với PSTN. H.323 là giao thức chuẩn, bao trùm các
giao thức trước đó như H.225,H.245, H.235,…
- H323 là bộ giao thức báo hiệu ( signaling ), có chức năng thiết lập, ngắt và thay đổi cuộc
gọi. H323 cung cấp nền tảng kỹ thuật cho việc truyền thoại, hình ảnh và số liệu đồng thời
qua mạng IP. Tuân theo chuẩn H323, các sản phẩm và các ứng dụng đa phương tiện từ
nhiều hãng khác nhau có thể hoạt động cùng với nhau, cho phép người dùng có thể thông
tin qua lại mà không phải quan tâm tới vấn đề tương thích.
1.3.1 Các thành phần trong hệ thống H323
Các dòng thông tin trong hệ thống H323 được chia ra làm các loại:
• Audio ( thoại): là tín hiệu thoại được số hóa và mã hóa. Để giảm tốc độ trung bình của tín
hiệu thoại, cơ chế phát hiện tích cực thoại có thể được sử dụng. Tín hiệu thoại được đi
kèm với tín hiệu điều khiển thoại.
• Video( hình ảnh): là tín hiệu hình ảnh động cũng được số hóa và mã hóa. Tín hiệu video
cũng đi kèm với tín hiệu điều khiển video.
• Số liệu: bao gồm tín hiệu fax, tài liệu văn bản, ảnh tĩnh, file
• Tín hiệu điều khiển truyền thông( Communication control signals): là các thông tin điều
khiển trao đổi giữa các thành phần chức năng trong hệ thống để thực hiện điều khiển
truyền thông giữa chúng như: trao đổi khả năng, đóng mở các kênh logic, các thông điệp
điều khiển luồng và các chức năng khác.
• Tín hiệu điều khiển cuộc gọi( Call control signals): được sử dụng cho các chức năng điều
khiển cuộc gọi như là thiết lập cuộc gọi, kết thúc cuộc gọi
• Tín hiệu kênh RAS: được sử dụng để thực hiến các chức năng: đăng ký tham gia vào một

vùng H323, kết nạp/tháo gỡ một điểm cuối(endpoint) khỏi vùng, thay đổi băng thông và
các chức năng khác liên quan đến chức năng quản lý hoạt động của các điểm cuối trong
một vùng H323.
Về mặt logic, hệ thống H323 gồm 4 thành phần:
• Terminal: Là 1 trạm cuối trong mạng LAN, đảm nhận việc cung cấp truyền thông 2 chiều
theo thời gian thực.
• H323 Gateway: Là cầu nối giữa mạng H.323 với các mạng khác như SIP, PSTN,…
Gateway đóng vai trò chuyển đổi các giao thức trong việc thiết lập và chấm dứt các cuộc
gọi, chuyển đổi các media format giữa các mạng khác nhau, đảm bảo tính tương thích.
• H323 Gatekeeper: Là một thành phần không bắt buộc, đóng vai trò là điểm trung tâm
trong mô hình mạng H.323, quản lý hoạt động hệ thống, quyết định việc cung cấp địa
chỉ (addressing),phân phát băng thông (bandwidth), cung cấp tài khoản, thẩm định quyền
(authentication) cho các terminal và gateway…
• MCU ( Multipoint control unit): Thực hiện chức năng tạo kết nối đa điểm, hỗ trợ các ứng
dụng truyền thông nhiều bên.
Sơ đồ cấu trúc hệ thống H323
1.3.1.1 Thành phần đầu cuối H323
Các thành phần giao tiếp với người sử dụng:
• Các bộ codec ( Audio và video )
• Phần trao đổi dữ liệu từ xa ( telematic )
• Lớp đóng gói dữ liệu multimedia chuẩn H225.0.
• Thành phần chức năng điều khiển hệ thống ( system control )
• Giao diện giao tiếp mạng ( LAN interface )
Tất cả các thiết bị đầu cuối H323 đều phải có một đơn vị điều khiển hệ thống, lớp
đóng gói dữ liệu H225.0, giao diện mạng và bộ codec thoại. Bộ codec cho tín hiệu video
và các ứng dụng dữ liệu của người sử dụng là tùy chọn ( có thể có hoặc không ).
1.3.1.2 H323 Gateway
Gateway mang các tính năng phục vụ cho hoạt động tương tác của các thiết bị
trong hệ thống H323 với các thiết bị trong mạng chuyển mạch kênh như PSTN, ISDN,
Gateway H323 được bố trí nằm giữa các thành phần trong hệ thống H323 với các thiết bị

nằm tỏng các hệ thống khác ( các mạng chuyển mạch kênh SCN). Nó phải cung cấp tính
năng chuyển đổi khuyên dạng dữ liệu truyền và chuyển đổi thủ tục một cách thích hợp
giữa mạng LAN các loại mạng mà gateway kết nối tới, cụ thể:
• Thực hiện chuyển đổi khuôn dạng dữ liệu thoại, video, số liệu nếu cần.
• Thực hiện chức năng thiết lập cuộc gọi, hủy cuộc gọi đối với cả 2 phía mạng LAN và
mạng chuyển mạch kênh SCN.
Các Gateway có thể liên kết với nhau thông qua mạng chuyển mạch kênh để cung
cấp khả năng truyền thông giữa các thiết bị đầu cuối H323 không nằm trong cùng 1 mạng
LAN.
Các thiết bị cuối H323 trong cùng 1 mạng LAN có thể thông tin trực tiếp với nhau
mà không phải thông qua Gateway. Do vậy khi hệ thống không có yêu cầu thông tin với
các terminal trong các mạng chuyển mạch kênh thì có thể bỏ qua vai trò của Gateway.
Cấu trúc của Gateway H323 bao gồm:
• Khối chức năng của thiết bị H323, khối chức năng này có thể là chức năng đầu cuối để
giao tiếp với một terminal trong hệ thống H323, hoặc chức năng MCU để giao tiếp với
nhiều terminal.
• Khối chức năng của thiết bị chuyển mạch kênh, mang chức năng giao tiếp với một hay
nhiều thiết bị đầu cuối trong mạng chuyển mạch kênh.
• Khối chức năng chuyển đổi, bao gồm chuyển đổi khuôn dạng dữ liệu và chuyển đổi thủ
tục.
• Gateway liên kết với máy điện thoại thông thường phải tạo và nhận biết được tín hiệu
DTMF( Dual Tone Multiple Frequency) tương ứng với các phím nhập từ bàn phím điện
thoại.
1.3.1.3 Gatekeeper
Khi có mặt trong hệ thống, gatekeeper phải cung cấp các chức năng sau:
• Dịch địa chỉ: dịch từ tên miền hoặc một số điện thoải ảo của một điểm cuối sang địa chỉ
IP tương ứng.
• Điều khiển két nạp ( Admission control): điều khiển việc cho phép hoạt động của các
điểm cuối.
• Điều khiển băng thông ( Bandwidth COntrol): Điều khiển cấp hoặc từ chối cấp một phần

băng thông cho các cuộc gọi của các thiết bị trong hệ thống.
• Quản lý vùng ( Zone Management) : Thực hiện các chức năng trên với các điểm cuối
H323 đã đăng ký với Gatekeeper, tạo thành một vùng H323.
Ngoài ra , Gatekeeper có thể cung cấp các chức năng tùy chọn sau:
• Báo hiệu điều khiển cuộc gọi ( Call Control Signalling)
• Điều khiển cho phép cuộc gọi ( CAall Signalling Channel)
• Quản lý băng thông ( Bandwidth Management)
• Quản lý cuộc gọi ( Call Management)
• Tính cước ( Billing)
1.3.1.4 Đơn vị điều khiển liên kết đa điểm (MCU)
MCU hỗ trợ việc thực hiện các cuộc đàm thoại hội nghị giữa nhiều thiết bị đầu
cuối. Trong chuẩn H323, MCU bắt buộc phải có một bộ điều khiển đa điểm MC
(Multipoint Controller) và có hoặc không một vài MP (Multipoint Processor).
- MC và MP là các thành phần của MCU nhưng chúng có thể không tồn tại trong một thiết
bị độc lập mà phân tán trong các thiết bị khác. Ví dụ : một Gateway có thể mang trong nó
một MC và một vài MP để thực hiện kết nối tới nhiều thiết bị đầu cuối, một thiết bị đầu
cuối có thể mang một MC để có thể thực hiện nhiều cuộc gọi cùng lúc.
- MC điều khiển việc liên kết giữa nhiều điểm cuối trong hệ thống bao gồm:
• Xử lý việc đàm phán giữa các thiết bị đầu cuối để quyết định một khả năng xử lý dòng dữ
liệu media chung giữa các thiết bị đầu cuối.
• Quyết định dòng dữ liệu nào sẽ là dòng dữ liệu multicast.
- MC không xử lý trực tiếp một dòng dữ liệu media nào. Việc xử lý các dòng dữ liệu sẽ do
các MP đảm nhiệm. MP sẽ thực hiện việc trộn, chuyển mạch, xử lý cho từng dòng dữ liệu
thời gian thực trong cuộc hội nghị.
- Việc truyền thông tin trong mạng IP tồn tại dưới 3 hình thức: Unicast, multicast và
broadcast.
- Trong hệ thoogns H323, cuộc hội nghị nhiều bên có thể có ba loại cấu hình hội nghị sau:
• Cấu hình tập trung (Centralized Multipoint Conference).
• Cấu hình phân tán (Decentralized Multipoint Conference).
• Cấu hình lai (Hybrid Multipoint Conference).

1.3.2 Các giao thức trong bộ giao thức H323
H323 cung cấp nhiều loại hình dịch vụ từ thoại đến video và dữ liệu, thông tin đa
phương tiện.H323 có đặc điểm kỹ thuật giống như một chiếc dù chứa đựng một số lượng
lớn bộ máy có tác động qua lại với nhau bằng nhiều cách thức khác nhau dựa vào bộ
dạng, sự vắng mặt, mối quan hệ mô hình của những thực thể tham gia và loại session (ví
dụ như là audio và video). Có nhiều giao thức con bên trong đặc điểm của giao thức
H323:
• Với dịch vụ audio có giao thức lớp ứng dụng là các chuẩn G (G.711, G.722, G.723.1,
G.728, G.729). Với dịch vụ video có các giao thức chuẩn H( H261, H263) . Chúng cùng
với các giao thức RTCP, RAS, RTP dựa trên nền UDP ở lớp vận chuyển.
• Với dịch vụ truyền dữ liệu/fax: có chuẩn riêng, không dựa trên nền UDP, đó là T120 cho
truyền dữ liệu và T138 cho fax.
• RAS: quản lý việc đăng kí, chấp nhận và trạng thái dùng cho truyền thông giữa một điểm
cuối H323 với một Gatekeeper.
• Q931: Quản lý việc thiết lập và điều khiển/kết thúc cuộc gọi
• H225: Điều khiển cuộc gọi.
• H245: Các giao thức điều khiển truyền thông ( Medio Control)
• H235: Giao thức bảo mật và chứng thực.
• H450.x: Các dịch vụ bổ trợ như chuyển hướng cuộc gọi, giữ cuộc gọi, dừng cuộc gọi, chỉ
dẫn tin nhắn chờ
Mô hình giao thức H323 tương quan với mô hình OSI
1.3.3 Phương thức hoạt động
- Khi 1 phiên kết nối được thực hiện, việc dịch địa chỉ (address translation) sẽ được 1
gateway đảm nhận. Khi địa chỉ IP của máy đích được xác nhận, 1 kết nối TCP sẽ được
thiết lập từ địa chỉ nguồn tới người nhận thông qua giao thức Q.931. Ở bước này, cả 2 nơi
đều tiến hành việc trao đổi các tham số bao gồm các tham số mã hoá (encoding
parameters) và các thành phần tham số liên quan khác. Các cổng kết nối và phân phát địa
chỉ cũng được cấu hình. 4 kênh RTCP và RTP được kết nối, mỗi kênh có 1 hướng duy
nhất. RTP là kênh truyền dữ liệu âm thanh (voice data) từ 1 thực thể sang 1 thực thể
khác. Khi các kênh đã được kết nối thì dữ liệu âm thanh sẽ được phát thông qua các kênh

truyền này thông qua các RTCP instructions.
- Kênh RAS dùng để truyền tải các bản tin sử dụng trogn quá trình đăng ký điểm cuối và
tìm kiếm Gatekeeper mà liên kết một địa chỉ định danh của điểm cuối với địa chỉ lớp giao
vận kênh báo hiệu cuộc gọi của nó. Kênh RAS là kênh không tin cậy, vì thế trong khuyến
nghị H225 đã khuyến nghị thời gian giới hạn định trước và số lần gửi yêu cầu cho một
vài loại bản tin:
1. Tìm kiếm Gatekeeper: Điểm cuối sẽ tìm kiếm Gatekeeper mà nó đăng ký, việc tìm kiếm
này có thể được thực hiện bằng thủ công hoặc tự động.
2. Đăng ký điểm cuối: là quá trình điểm cuối liên kết vào vùng dịch vụ và thông báo cho
Gatekeeper địa chỉ định danh cũng như địa chỉ lớp giao vận của nó. Sau khi tìm được
Gatekeeper, tất cả các điểm cuối sẽ đăng ký với Gatekeeper này. Việc đăng ký phải được
thực hiện trước khi một cuộc gọi nào đó bắt đầu. ĐIểm cuối sẽ gửi yêu cầu đăng ký RRQ
(Registration Request) tới Gatekeeper. Nếu chấp nhận sự đăng ký của điểm cuối,
Gatekeeper sẽ trả lời lại bằng xác nhận đăng ký RCF (Registration COnfirmation), ngược
lại nó sẽ trả lời bằng tín hiệu từ chối RRJ (Registration Reject).
3. Định vị điểm cuối: Điểm cuối hoặc Gatekeeper có địa chỉ đinh danh của một điểm cuối
khác và muốn liên lạc với nó, thì có thể dùng bản tin yêu cầu định vị LRQ. Bản tin này
được gửi tới bộ nhận dạng TSAP kênh RAS của Gatekeeper định trước. Gatekeeper
tương ứng sẽ gửi trả lời bản tin LCF chứa thông tin cần thiết của điểm cuối hoặc
Gatekeeper của điểm cuối. Thông tin này bao gồm địa chì kênh báo hiệu cuộc gọi và
kênh RAS.
4. Mã thông báo truy nhập: là một xâu đã được kiểm tra ở bản tin cài đặt và các bản tin
RAS.
Các thủ tục báo hiệu:
Người ta chia một cuộc gọi ra làm 5 giai đoạn gồm:
- Giai đoạn 1: thiết lập cuộc gọi
- Giai đoạn 2: thiết lập kênh điều khiển
- Giai đoạn 3: thiết lập kênh thoại ảo
- Giai đoạn 4: dịch vụ
- Giai đoạn 5: kết thúc cuộc gọi

• Thiết lập cuộc gọi: việc thiết lập cuộc gọi sử dụng các bản tin định nghĩa trong khuyến
nghị H225. Có thể xảy ra 6 trường hợp:
- Cuộc gọi cơ bản: cả 2 thiết bị đầu cuối đều không đăng ký
- Cả 2 thuê bao đều đăng ký tới một Gatekeeper.
- Chỉ thuê bao chủ gọi đăng ký với Gatekeeper.
- Chỉ thuê bao bị gọi đăng ký với Gatekeeper.
- Hai thuê bao đăng ký tới hai Gatekeeper khác nhau.
- Thiết lập cuộc gọi qua Gateway.
• Thiết lập kênh điều khiển: khi kết thúc giai đoạn 1 tức là cả bên gọi và bị gọi đã hoàn
thành việc trao đổi các bản tin thiết lập cuộc gọi, thì các đầu cuối sẽ thiết lập kênh điều
khiển h245. Bảm tin đầu tiên được trao đổi là terminalCapabilitySet để các bên thông báo
cho nhau khả năng làm việc của mình. Mỗi thiết bị đầu cuối đều có đặc tính riêng nói lên
khả năng chế độ mã hóa, truyền nhận và giải mã tín hiệu. Kênh điều khiển này có thể do
thuê bao bị gọi thiết lập sau khi nó nhận được bản tin Setup hoặc do thuê bao chủ gọi
thiết lập khi nó nhận được bản tin Connect hoặc một đầu cuối gửi Release Complete, thì
kênh điều khiển H245 được giải phóng.
• Thiết lập kênh truyền thông: Sau khi trao đổi khả năng và xác định mối quan hệ master-
slave ở giai đoạn 2, thủ tục điều khiển kênh H245 sẽ thực hiện việc mở kênh logic để
truyền số liệu. Các kênh này là kênh H225. Sau khi mở kênh logic để truyền tín hiệu là
âm thanh và hình ảnh thì mỗi đầu cuối sẽ truyền đi một bản tin H225.0
MaximumSkewIndication để xác định thông số truyền.
• Dịch vụ cuộc gọi: Có một số dịch vụ được thực hiện trên mạng H323 như: thay đổi độ
rộng băng tần, giám sát trạng thái hoạt động, hội nghị đặc biệt, các dịch vụ bổ sung
• Kết thúc cuộc gọi: một thiết bị đầy cuối kết thúc cuộc gọi theo các bước:
Dừng truyền tín hiệu video khi kết thúc truyền ảnh, sau đó giải phóng tất cả các
kênh logic phục vụ truyền video.
Dừng truyền dữ liệu và đóng tất cả các kênh logic dùng để truyền dữ liệu.
Dừng truyền audio và đóng tất cả các kênh logic dùng để truyền audio.
Truyền bản tin H245 endSessionCommand trên kênh điều khiển H245 để báo cho
thuê bao đầu kia biết nó muốn kết thúc cuộc gọi. Sau đó nó dừng truyền các bản tin H245

và đóng kênh điều khiển H245.
Nó sẽ chờ nhận bản tin endSessionCommand từ thuê bao đầu kia và sẽ đóng kênh
điều khiển H245.
Nếu kênh báo hiệu cuộc gọi đang mở, thì nó sẽ truyền đi bản tin Release Complete
sau đó đóng kênh báo hiệu.
Trong cuộc gọi có sự tham gia của Gatekeeper cần có hoạt động giải phóng băng
tần. Mỗi đầu cuối sẽ truyền đi bản tin DRQ tới Gatekeeper, sau đó Gatekeeper trả lời
bằng bản tin DCF. Sau khi gửi DRQ, đầu cuối sẽ không gửi bản tin IRR tới Gatekeeper
nữa và khi đó cuộc gọi kết thúc.
1.4 Giới thiệu về giao thức SIP:
SIP là viết tắt của Session Initiation Protocol là một giao thức được sử dụng trong
việc truyền thông đa phương tiện thông quser agent mạng IP. Đây là một chuẩn của IETF
để thiết lập các kết nối VoIP. Nó là một giao thức điều khiển lớp ứng dụng để tạo
mới,chỉnh sửa và kết thúc các phiên .Cấu trúc của SIP giống như HTTP(client-server
protocol). Các yêu cầu được tạo ra bởi các máy client và gửi tới server. Server xử lý các
yêu cầu và gửi một phản hồi lại cho client.
SIP tạo ra sự giả định nhỏ nhất về cơ bản của giao thức truyền tải. Giao thức này
cung cấp độ tin cậy và không phụ thuộc vào độ tin cậy của TCP. Session Description
Protocol (SDP) là một giao thức mô tả thông điệp của SIP để xác minh bộ mã hóa . SIP
hỗ trợ việc mô tả các phiên mà cho phép các bên tham gia có thể đồng ý thiết lập các kiểu
phương tiện tương thích.
SIP là một phần của bộ giao thức gồm có : SDP,RTP và RTCP .
SDP-Session Description Protocol (giao thức mô tả phiên ) SDP được định nghĩa
bởi RFC 2327,được phát triển bởi IETF MMUSIC . SDP mô tả thông điệp của SIP . Sau
đó SIP sẽ nhận nhiệm vụ thiết lập các phiên để phục vụ cho việc truyền thông . Các giao
thức RTP RTCP RTSP sẽ đảm nhận việc truyền thông tin qua TCP hoặc UDP
1.4.1 Một số dịch vụ của SIP :
• User Location : Xác định hệ thống cuối cùng để sử dụng cho việc truyền thông
• Call Setup : thiết lập các thông số cho cuộc gọi tại hai bên gọi và nghe.
• User Availability : Xác định tham số truyền tải dữ liệu.

• User Capabilities : Xác định phương tiện và các thông số của phương tiện được sử dụng.
• Call handling : Tạo, chuyển giao và kết thúc cuộc gọi.
• Session management : quản lý phiên
• Session close : kết thúc phiên
1.4.2 Các thành phần chính trong SIP
1.4.2.1 SIP User agent (UA):
Mục đích của SIP là làm cho các phiên có thể thiết lập giữa các User Agent.Một
User Agent là một hệ thống cuối cùng hoạt động trên nhân danh của người dùng. Một
User Agent phải có khả năng thiết lập một phiên của phương tiện này với các User Agent
khác.
Một User Agent phải duy trì trạng thái trên các cuộc gọi mà nó khởi tạo hoặc tham
gia vào. Một trạng thái nhỏ nhất của các cuộc gọi được thiết lập bao gồm:các thẻ local và
remote,Call-ID, các trường local và remote cseq, cùng với việc thiết lập hướng và các
thông tin cần thiết của các phương tiện .User Agent duy trì trạng thái của một cuộc gọi
trong thời gian tối thiểu là 32 giây.
Một User Agent chứa một ứng dụng client và một ứng dụng server.Hai thành phần
trên là một User Agent Client(UAC)và một User Agent Server (UAS).
• User Agent Client bắt đầu các yêu cầu
• User Agent Server thì tạo ra các phản hồi.
Trong một phiên, User Agent thường điều khiển cả User Agent Client và User
Agent Server. Một SIP User Agent cũng phải hỗ trợ SDP để mô tả thông tin .Một
User Agent phải hiểu rõ danh sách các trường nhu cầu mở rộng trong một yêu cầu . Nếu
không biết các trường này có thể bị lờ đi bởi một User Agent.
1.4.2.2 SIP network server
SIP servers là các ứng dụng mà nó chấp nhận các SIP yêu cầu và phản hồi đến
chúng . Không nên lẫn lộn SIP server với một User Agent Server . Một SIP server là một
kiểu khác biệt của thực thể. Bởi vì SIP server cung cấp các dịch vụ và chức năng với
User Agent, chúng sẽ hỗ trợ cả TCP,TLS và UDP để truyền tải.
Thể hiện các liên kết hoạt động của SIP server
1. Proxy Server sẽ liên lạc với Location server đưa cho Location Server một hay toàn bộ ID

của người dùng cần liên lạc ( UAS)
2. Location Server sẽ tìm ra cụ thể địa chỉ của người dùng cần liên lạc và gửi về Proxy
Server
3. Proxy Server do biết địa chỉ cụ thể của người dùng cần liên lạc nên sẽ gửi đến ( định
tuyến ) qua proxy server khác
• SIP server proxy:
Một SIP proxy server nhận một yêu cầu từ một User Agent hoặc một Proxy khác và
hành động trên nhân danh của User Agent để chuyển tiếp hoặc phản hồi lại yêu cầu.Một
Proxy cho phép chỉnh sửa các yêu cầu và chấp nhận các phản hồi để thiết lập các qui tắc
bên ngoài trong RFC 3261.Các qui tắc này thì duy trì theo khoảng cách end-to-end của
tín hiệu SIP trong khi đó vẫn còn cho phép các Proxy Server thực hiện các dịch vụ và
chức năng với User Agent.
Một Proxy Server phải có truy xuất đến cơ sở dữ liệu hoặc vị trí các dịch vụ để giúp
đỡ nó trong quá trình xử lý các yêu cầu . Giao thức SIP không xác định giao diện giữa
Proxy và vị trí dịch vụ . Proxy có thể sử dụng nhiều kiểu cơ sở dữ liệu trong quá trình xử
lý các yêu cầu.Cơ sở dữ liệu có thể có SIP registration,các thông tin hiện hữu,và nhiểu
kiểu khác của thông tin về nơi mà user được chỉ định.
Một proxy server khác biệt với một User Agent hoặc gateway ở ba điểm sau:
- Một Proxy Server không đưa ra các yêu cầu,nó chỉ đáp ứng các yêu cầu từ một User
Agent ( yêu cầu CANCEL là một ngoại lệ trong qui tắc này).
- Một proxy server không có khả năng truyền thông tin .
- Một proxy server thì không phân tích các thông điệp,mà chỉ dựa vào các header field.Các
bước cần thiết trong mô hình proxy để mang một cuộc gọi hai hướng.
Thiết lập phiên truyền thông trong SIP
- UAC gửi thông điệp INVITE đến Proxy Server
- Proxy Server sẽ xác định UAS sau đó sẽ chuyển tiếp thông điệp INVITE đến UAS
- UAS đang rung chuông phản hồi lại với thông điệp 180
- Sau khi xử lý xong thì UAS sẽ gửi thông điệp 200 với ý nghĩa là OK ( chấp nhận ) cuộc
gọi
- UAC nhận được thông điệp 200 thì sẽ gửi thông điệp ACK để xác nhận được phản hồi từ

UAS
- Phiên truyền thông bắt đầu
- Sau đó , để kết thúc phiên truyền thông thì UA sẽ gửi thông điệp BYE và nếu UA kia
nhận được thì sẽ đồng ý và kết thúc phiên truyền thông
• Redirect Servers
Một redirect server là một máy chủ chuyển hướng thông điệp SIP và không chuyển
tiếp các yêu cầu.
Các bước của redirect server để mang đi một cuộc gọi 2 chiều
1. Redirect server chấp nhận INVITE yêu cầu từ UAC ( jz ) .
2. Redirect server liên hệ với Location server để lấy địa chỉ của UAS (salmon ) .
3. Location server trả về địa chỉ của UA đích.
4. Sau khi user được chỉ định, Redirect Server trả lại địa chỉ trực tiếp tới người gọi trong
một thông điệp 3xx , với danh sách có vị trí đầu tới đích mới. Không giống như proxy
server, redirect server không chuyển tiếp INVITE.
5. UAC gửi một ACK tới redirect server báo nhận phản hồi 3xx.
6. UAC gửi một yêu cầu INVITE trực tiếp tới địa chỉ trả lại bởi redirect.
7. UAS cung cấp một chỉ báo thành công(200 OK) tới UAC.
8. UAC gửi một ACK tới UAS báo đã nhận phản hồi 200 OK.Mô hình Redirect Server của
Operation.
• Registration Server
Một registration server ( máy chủ đăng ký ) được biết như là một registrar , chấp
nhận các yêu cầu của SIP REGISTER . Tất cả các yêu cầu nhận một phản hồi : 501 Not
Implemented Trong một yêu cầu đăng ký ,trường To header chứa tên của tài nguyên bắt
đầu đăng ký,và trường Contact header chứa địa chỉ khác . Registration server tạo ra một
liên kết tạm giữa Address Of Record (AOR) URI trong To và thiết bị URI trong Contact
Courier.
Registration server thường yêu cầu các User Agent đăng ký để xác thực,vì vậy các
cuộc gọi đi vào không bị chiếm đoạt bởi các user không được xác thực . Phụ thuộc vào sự
hiện diện của các trường REGISTER , yêu cầu có thể được sử dụng bởi một User Agent
để lấy lại một danh sách của các đăng ký hiện thời, làm sạch tất cả các đăng ký ,hoặc

thêm vào một đăng ký URI.
• Location server :
Cung cấp địa chỉ của các User Agent và địa chỉ của server đích
1.4.3 Thông điệp SIP
SIP messages có thể được phân chia thành hai loại đó là SIP yêu cầu và SIP phản
hồi,hơn nữa nó được xác định trong các phiên . Thông thường một địa chỉ SIP có dạng :
user@domain . User tên hoặc số điện thoại người dùng , domain tên miền hoặc địa chỉ IP.
Ví dụ : , v.v…
• SIP request ( yêu cầu )
Yêu cầu SIP là các thông điệp được gửi từ các máy client đến các server để hoạt
động một SIP . RFC 3261 xác định các yêu cầu SIP hoặc phương thức làm cho User
Agent và proxy có thể tới vị trí của các user và khởi đầu , sửa đổi các phiên .
- INVITE : chỉ ra rằng các người nhân hoặc các dịch tham gia vào trong một phiên . Bạn
có thể sử dụng phương thức này để sửa đổi cấu thành của các phiên được thiết lập trước .
Thân của message INVITE phải bao gồm phần mô tả các phiên truyền được thiết lập
hoặc chỉnh sửa,mã hóa trên SDP . Với thông điệp INVITE ( phản hồi 200 OK) chỉ ra sự
sẵn sàng của các bên khi tham gia vào kết quả của một phiên truyền . Nó bắt đầu một
phiên .
- ACK:xác nhận User Agent Client đã nhận được phản hồi cuối cùng đến một yêu cầu
INVITE. ACK được sử dụng chỉ với các yêu cầu INVITE . ACK gửi trả lại cho một phản
hồi 200 ( OK ) . Yêu cầu ACK có thể bao gồm một thông điệp với phần mô tả các phiên
cuối cùng nếu yêu cầu INVITE không chứa phần mô tả các phiên này
- OPTION: User Agent sử dụng yêu cầu OPTION để truy vấn một User Agent Server về
khả năng của nó . Nếu User Agent Server có khả năng truyền các phiên tới các user,nó
đáp ứng khả năng thiết lập của User Agent Server.
- BYE : sử dụng BYE để yêu kết thúc các phiên được thiết lập trước .
- CANCEL: làm cho các User Agent Client và network server có thể hủy một yêu cầu tiến
trình bên trong,như INVITE . Điều này không ảnh hưởng đến việc hoàn thành các yêu
cầu mà User Agent Server đã gửi đi các phản hồi cuối cùng.
- REGISTER : client sử dụng REGISTER để đăng ký với các thông tin tương ứng AOR

của người dùng và SIP servers.
- PRACK:đảm bảo độ tin cậy tạm thời của các phản hồi lớp 1xx.
- UPDATE:cập nhật tạm thời các phiên .
- REFER:Chuyển giao cuộc gọi đến bên thứ ba sử dụng các thông tin liên quan được cung
cấp trong các yêu cầu .
- SUBSCRIBE:báo cáo một sự kiện vừa diễn ra,ví dụ như cập nhật sự hiện của các user .
- NOTIFY:sử dụng để thông báo sự kiện đã diễn ra.
- MESSAGE:một phương thức để chỉ việc mang đi một thông điệp .
• SIP Respone:
Một server gửi SIP phản hồi tới một client để chỉ ra trạng thái của một SIP yêu cầu
mà client trước đó đã gửi tới server . User Agent Server hoặc proxy thì tạo ra các SIP
phản hồi đến một SIP yêu cầu mà User Agent Client khởi đầu . SIP phản hồi là các con
số từ 100 đến 699 . SIP phản hồi là một nhóm giống như 1xx,2xx đến 6xx . SIP phản hồi
được phân loại như phản hồi tạm thời và phản hồi cuối cùng .
Một phản hồi tạm thời chỉ ra tiến trình bởi server nhưng nó không chỉ ra các kết quả
cuối cùng giống như kết quả quá trình xử lý các SIP yêu cầu .
Phản hồi cuối cùng chỉ ra phần kết thúc và trạng thái cuối cùng của SIP yêu cầu.Tất
cả các lớp 2xx,3xx,4xx,5xx và 6xx đều là phản hồi cuối cùng
- Lớp 1xx của SIP phản hồi chỉ ra trạng thái tạm thời . Lớp 1xx (Information) chỉ ra trạng
thái của các cuộc gọi trước khi hoàn thành.
- Lớp 2xx (Success) chỉ ra quá trình xử lý thành công của SIP yêu cầu.
- Lớp 3xx (Redirection) chỉ ra SIP yêu cầu cần phải gửi một lần nữa đến User Agent
Server khác để thực hiện tiến trình xử lý.
- Lớp 4xx (Client-error) yêu cầu bị hỏng bởi client . Client có thể thực hiện lại yêu cầu.
- Lớp 5xx (server failure) yêu cầu bị hỏng do server.Yêu cầu có thể thử lại tại các server
khác.
- Lớp 6xx (Global failure) yêu cầu bị hỏng và không nên thử lại yêu cầu tại server này
hoặc server khác.
• SIP Message structure. ( cấu trúc thông điệp SIP )
Một thông điệp SIP gồm có các phần sau:

- Một start-line.
- Một hoặc nhiều header field.
- Một dòng rỗng để chỉ ra kết thúc header field.
- Một tùy chọn phần thân của thông điệp.
Start-line cho một SIP yêu cầu là một Request-line . Start-line cho một SIP phản hồi là
Status-line . Request-line chỉ rõ phương thức SIP . Request-URI và phiên bản của SIP .
Status-line thì mô tả phiên bản của SIP,mã của SIP phản hồi và một tùy chọn reason
phrase . Reason phrase là một nguyên văn mô tả của mã 3 ký từ SIP phản hồi.
Bảng thể hiện các thành phần của thông điệp yêu cầu SIP
Như ta thấy đây là 1 thông điệp yêu cầu vì star-line là request line bên cạnh đó có phiên
bản SIP là 2.0
Via : Xác định nơi cần gửi đi là ph1.company.com qua cổng 5060
From : nơi bắt đầu của yêu cầu SIP là Alice
To : người nhận là Bob và bên cạnh là địa chỉ
Call-ID : dãy serie của cuộc gọi
CSeq : Giá trị một số nguyên và tên phương thức
Contact : Nhận biết một SIP nơi mà User Agent nhận được yêu cầu SIP mới
Content-Length : bắt đầu độ dài của thân thông điệp
Bảng thể hiện cấu trúc của một SIP respone message
• SIP header .
Một thông điệp SIP được soạn ra từ các header field mà nó truyền tín hiệu và thông
tin định tuyến đến các thực thể SIP network . SIP có hình thức giống như HTTP header
(RFC 2616)
Mô tả chức năng của các SIP header:
- From : chỉ ra sự giống nhau lúc bắt đầu của các SIP yêu cầu .Từ header thường là AOR
của bên gửi . Nó chứa một SIP hoặc các SIP URI và một tùy chọn hiển thị tên.
- To : Cho biết mong muốn có người nhận của một SIP yêu cầu.Đi đến header là một AOR
của người nhận . Nó cũng chứa SIP hoặc SIP URI và tùy chọn hiển thị tên.
- Call-ID : Trường này nhận ra một dãy serie của một thông điệp . Call-ID phải giống hệt
nhau để tất cả các SIP yêu cầu và SIP phản hồi gửi đi bằng các User Agent khác nhau với

cùng một dialog.
- Cseq : Được soạn ra của một giá trị số nguyên và tên method.Trường này nhận ra orders
và tiếp tục các SIP yêu cầu trong một dialog . Cseq cũng có sự khác biệt trong việc gửi
một thông điệp mới hoặc gửi lại một thông điệp
- Via : Chỉ ra cách lấy đường dẫn bởi một yêu cầu và xác định nơi mà phản hồi cần gửi đi.
- Contact : Nhận biết một SIP hoặc SIP URI nơi mà USER AGENT muốn nhận một SIP
yêu cầu mới.
- Allow : cho phép danh sách header của phương thức SIP nhận hỗ trợ của User Agent mà
tạo ra thông điệp .
- Supported : Tất cả phần mở rộng của SIP hỗ trợ bởi User Agent . Phần mở rộng của SIP
là các RFC khác và RFC 3261.Miêu tả các thẻ option giống như 100rel trong RFC 3262.
- Require : Về nghĩa nó giống như supported header,nhưng sự hỗ trợ của phần mở rộng
SIP ở các User Agent từ xa phải đến các giao tác để được xử lý.
- Content-type : Chỉ ra kiểu của thân message mà đính kèm với SIP yêu cầu hoặc phản hồi
phải được hiện ra nếu SIP message có một thân.
- Content-Length : Xác định kích thước của thân message . SIP yêu cầu và SIP phản hồi
cũng chứa các header field .
Mục đích ban đầu của SDP mô tả việc thiết lập các phiên quảng bá thông qua
MBONE . Ứng dụng đầu tiên của SDP là giao thức Session Announcement Protocol
(SAP) sử dụng các port và nhận các thông báo của các phiên MBONE .
SDP chứa các thông tin về phiên truyền thông : IP Address (IPv4 address hoặc host
name). Port Number (sử dụng UDP hoặc TCP để truyền tải) . Media type
(audio,video,tương tác whiteboard,…) . Media Encoding scheme (PCM A-Law,MPEG II
video,…) .
SDP còn chứa các thông tin : Chủ đề của các phiên . Bắt đầu và kết thúc mọi thời
điểm . Liên hệ thông tin về các phiên . Giống như SIP , SDP dử dụng mã hóa văn bản .
Một thông điệp SDP được soạn là một series của các dòng , các trường và nó yêu cầu
trình tự để dễ dàng phân tích . SDP thì không được gán để có thể mở rộng dễ dàng , và
phân tích các qui tắc một cách chính xác . Một người phân tích SDP không phải để ý tới
các trường chưa biết đến , các trường missing , hoặc một dòng out-of-sequence.Ví dụ một

SIP message chứa nhiều các fields tùy chọn được hiển thị ở đây
Các trường tùy chọn của một thông điệp SIP
Danh sách các trường trong SDP
Dòng bắt đầu với một chữ thường ký tự x. Không có khoảng trống giữa các ký tự và
dấu = chính xác là có một khoảng trắng giữa mỗii ký tự . Mỗi trường có một xác định
của các tham số .Ví dụ : V là số phiên bản của giao thức và nó bắt buộc phải có , O - là
người sở hữu hoặc tạo ra phiên cũng bắt buộc phải có . Trường I – thông tin của phiên thì
là optional ( có thể có hoặc không ) ngoài ra còn một số trường phải có như S , C , T .
Trường A – thuộc tính của media được định nghĩa bởi RFC 3551 được liệt kê trong bảng
Audio video profiles
Audio video profiles
Tùy vào thuộc tính của media mà trường A sẽ chọn thông tin phù hợp
1.5 So sánh giữa SIP và H323
SIP và H.323 đều được phát triển với mục đích và nhu cầu khác biệt.H.323 được
phát triển bởi ITU . Nó được thiết kế để thực hiện trong nền của PSTN ( giao thức truyền
tải ) , sử dụng sự mã hóa binary và sử dụng lại vai trò của ISDN.
SIP được phát triển bởi IETF với một phối cảnh Internet,được thiết kế để thay đổi tỉ
lệ thông qua Internet và làm việc bên trong domain thì rất tiện dụng vì nó tập hợp đầy đủ
các chức năng và tiện ích Internet.
Trong khi H.323 được phát triển sớm trong VoIP,các ứng dụng IP video
conferencing , SIP với hạ tầng Internet tạo đà phát triển và nổi lên như là một chuẩn trong
việc truyền tín hiệu của truyền thông IP trong tương lai,như IP telephone.
So sánh thành phần và cấu trúc SIP và H323
- Như ta thấy thành phần của SIP chỉ bao gồm User Agent và Proxy Server trong khi đó
H.323 lại có bốn thành phần đó là Terminal , Gatekeepers , Gateway và MCU .
- Để truyền tải thông tin thì cả SIP và H.323 đều sử dụng giao thức RTP/ RTCP .
- Trong khi H323 dùng giao thức báo hiệu H225 và H245 để thiết lập hay kết thúc cuộc gọi
thì SIP dùng các bản tin để điều khiển trong đó có bản tin INVITE để thiết lập và bản tin
BYE để kết thúc cuộc gọi.
- H323 dùng phần cứng để thiết lập cuộc gọi còn SIP không có.

- H323 hỗ trợ hội nghị đa phương tiện rất phức tạp. Hội nghị H323 về nguyên tắc có thể
cho phép các thành viên sử dụng những dịch vụ như trao đổi dữ liệu hoặc hội nghị video.
- Cả hai giao thức chủ yếu dùng UDP , số port UDP của SIP là 5060/5601 còn của H.323
là 1503,1720 hoặc 1731.
Nhấp để kết nối với máy nh khác
Nhấp để ngắt kết nối với máy nh khác
Nhập tên hoặc địa chỉ của máy nh khác cần kết nối
Hiển thị danh sách các máy nh kết nối với nhau
Danh bạ tên hoặc địa chỉ của máy nh muốn lưu
Dùng chung dữ liệu
Gửi dữ liệu cho máy nh khác
Vẽ hoặc trao đổi thông <n giống như bảng viết
Chat
Chương 2: Giao thức H323 với ứng dụng thực tế
Chồng giao thức H.323 là một trong những chồng giao thức có nhiều ứng dụng nhất
trong thực tế. Rất nhiều các dịch vụ, các phần mềm ứng dụng sử dụng chồng giao thức
này như một chuẩn cho các thành phần phần cứng hay dùng nó như một giao thức truyền
thông. Một số các dịch vụ hiện nay có ứng dụng H.323 có thể kể đến như Microsoft
Netmeeting, Ekiga, XMeeting, GnomeMeeting, OpenPhone…. Trong bài báo cáo này
chúng em sẽ đi vào tìm hiểu ứng dụng Microsoft Netmeeting và giao thức H323 được sử
dụng như thế nào trong ứng dụng này.
Sau khi cài đặt Microsoft NetMeeting chúng ta sẽ có giao diện với các chức năng
như sau
Để kết nối với một máy tính khác, nhập tên hoặc địa chỉ máy tính mà cần kết nối
vào ô thích hợp, sau đó nhấp vào biểu tượng điện thoại để kết nối.
Trên màn hình của máy tính cần kết nối sẽ xuất hiện hộp thoại:
Nhấp Accept để cho phép kết nối.
Ứng dụng H.323 trong Microsoft NetMeeting.
Microsoft NetMeeting sử dụng giao thức H.323 để thiết lập cuộc gọi ở cổng 1720.
Giao thức thiết lập cuộc gọi H.323 tự động thỏa thuận một cổng TCP để sử dụng giao

thức điều khiển cuộc gọi H.323. Ngoài ra, cả hai giao thức điều khiển cuộc gọi âm thanh
(qua cổng 1731) và giao thức thiết lập cuộc gọi H.323 (qua cổng 1720) sử dụng giao thức
Datagram (UDP). Các cổng tự động được chọn tùy ý từ tất cả các cổng có thể được gán
tự động.
Khi sử dụng NetMeeting để gọi những người dùng khác, một số cổng TCP và UDP
được yêu cầu để thiết lập kết nối. Bảng dưới đây cho thấy số cổng TCP/UDP được sử
dụng và chức năng của chúng:

×