Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

56 371 0
Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Đ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

ĐẠI HỌC XÂY DỰNG HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN Nguyễn Duy Thành PHÁT TRIỂN ỨNG DỤNG VIDEO CONFERENCE PHÍA CLIENT DỰA TRÊN CÔNG NGHỆ REALTIME COMMUNICATION ĐỒ ÁN TỐT NGHIỆP Hà Nội, tháng 6 năm 2006 Phát triển ứng dụng Video Conference phía Client dựa trên công nghệ Realtime Communication Nguyễn Duy Thành % 46PM2 – 1445.46 1  Mục lục Danh mục ký hiệu các chữ viết tắt và thuật ngữ . 3 Danh mục bảng . 4 Danh mục hình vẽ 5 1 Mở đầu. 7 2 Các chuẩn và công nghệ cho ứng dụng Video Conference. 9 2.1 Tổng quan về Video Conference. . 9 2.2 Giao thức thiết lập phiên SIP. . 10 2.2.1 Sơ lược về SIP . 10 2.2.2 Kiến trúc của SIP. . 12 2.2.3 Cấu trúc thông điệp SIP. . 13 2.2.4 Quy trình khởi tạo phiên SIP. . 17 2.2.5 Các quy trình khác. . 20 2.3 Giao thức mô tả phiên SDP. . 20 2.3.1 Sơ lược về SDP. 20 2.3.2 Đặc tả SDP. . 20 2.3.3 Mô hình Offer/Answer sử dụng SDP. . 22 2.4 Giao thức truyền dữ liệu thời gian thực RTP. 25 2.4.1 Sơ lược về RTP. 25 2.4.2 Một số quy ước chính. 25 2.4.3 Giao thức truyền dữ liệu RTP. 25 2.4.4 Giao thức điều khiển RTP (RTCP). 27 2.4.5 Cấu trúc dữ liệu cho luồng video H.261 . 28 2.5 Mối quan hệ giữa các giao thức và chuẩn hóa. 29 2.6 Công nghệ RTC (Realtime Communication). 30 2.6.1 Sơ lược về RTC Client. . 30 2.6.2 Kiến trúc của RTC Client. 30 2.6.3 Cơ chế hoạt động của RTC Client. . 32 2.6.4 Các chức năng khác 36 2.6.5 Ưu thế của công nghệ RTC. 36 Phát triển ứng dụng Video Conference phía Client dựa trên công nghệ Realtime Communication Nguyễn Duy Thành % 46PM2 – 1445.46 2  3 Xây dựng ứng dụng Video Conference. 38 3.1 Mô tả chung về ứng dụng. 38 3.1.1 Mô tả các yêu cầu và tiêu chí của ứng dụng. 38 3.1.2 Phân tích yêu cầu và đưa ra giải pháp kỹ thuật. 39 3.2 Phát triển ứng dụng trên máy tính PC. . 40 3.2.1 Thiết kế chương trình. . 40 3.2.2 Các chức năng chủ yếu. 43 3.3 Phát triển ứng dụng trên thiết bị cầm tay (Pocket PC). 52 3.3.1 Kiến trúc chương trình. . 52 3.3.2 Các luồng chức năng chính. 52 4 Kết luận và hướng phát triển. 54 Tài liệu tham khảo . 55 Phát triển ứng dụng Video Conference phía Client dựa trên công nghệ Realtime Communication Nguyễn Duy Thành % 46PM2 – 1445.46 3  Danh mục ký hiệu các chữ viết tắt và thuật ngữ Viết tắt Giải nghĩa RTC Realtime Communication – Truyền thông thời gian thực. RTCP Realtime Transport Control Protocol – Giao thức điều khiển truyền dữ liệu thời gian thực. RTP Realtime Transport Protocol – Giao thức truyền dữ liệu thời gian thực. SDP Session Description Protocol – Giao thức mô tả phiên. SIP Session Initiation Protocol – Giao thức thiết lập phiên. VC Video Conference – Hội thảo truyền hình. Phát triển ứng dụng Video Conference phía Client dựa trên công nghệ Realtime Communication Nguyễn Duy Thành % 46PM2 – 1445.46 4  Danh mục bảng Bảng 1 : Cấu trúc phân tầng của SIP. . 12 Bảng 2 : SIP Server. 12 Bảng 3 : SIP User Agents. 13 Bảng 4 : Cấu trúc chung của thông điệp SIP. . 14 Bảng 5 : Cấu trúc Request – Line. 14 Bảng 6 : Các phương thức yêu cầu. 14 Bảng 7 : Cấu trúc URI – yêu cầu. . 15 Bảng 8 : Cấu trúc Request – Line. 15 Bảng 9 : Mã trạng thái. 15 Bảng 10 : Phân loại SIP Message Header. 16 Bảng 11 : Các kiểu mô tả trong SDP. . 21 Bảng 12 : Cấu trúc khối Header RTP. 26 Bảng 13 : Cấu trúc khối Header RTP mở rộng. 27 Bảng 14 : Cấu trúc gói SR. . 28 Bảng 15 : Mô tả cấu trúc H.261. . 28 Bảng 16 : Cấu trúc H.261 Header. 28 Bảng 17 : So sánh SIP và H.323. 29 Phát triển ứng dụng Video Conference phía Client dựa trên công nghệ Realtime Communication Nguyễn Duy Thành % 46PM2 – 1445.46 5  Danh mục hình vẽ Hình 1 : Truyền thông ngang hàng. . 17 Hình 2 : Truyền thông qua Proxy Server. 17 Hình 3 : Truyền thông qua Redirect Server. 18 Hình 4 : Đăng ký với Registrar Server . 20 Hình 5 : Gửi tin nhắn. 20 Hình 6 : Kiến trúc RTC Client. 31 Hình 7 : Cấu hình cho RTC Client . 33 Hình 8 : Khởi động phiên . 33 Hình 9 : Xử lý sự kiện. . 34 Hình 10 : Xử lý sự kiện (tiếp). . 35 Hình 11 : Ánh xạ địa chỉ. . 36 Hình 12 : Trao đổi qua Server. . 38 Hình 13 : Trao đổi trực tiếp. 39 Hình 14 : Kiến trúc chương trình. 40 Hình 15 :Luồng đăng nhập. 41 Hình 16 : Luồng nhắn tin. 41 Hình 17 : Luồng đối thoại. . 42 Hình 18 : Luồng điều chỉnh thiết bị. 42 Hình 19 : Luồng danh sách bạn bè. 43 Hình 20 : Luồng tìm kiếm. . 43 Hình 21 : Giao diện chính. . 43 Hình 22 : Giao diện chính (tiếp). . 44 Hình 23 : Thông số trạng thái. . 44 Hình 24 : Đăng nhập hệ thống ngang hàng. . 45 Hình 25 : Nhập địa chỉ thành viên. 45 Hình 26 : Nhắn tin. . 46 Hình 27 : Màn hình trao đổi phía người gọi. . 47 Hình 28 : Lựa chọn ứng dụng chia sẻ. . 47 Hình 29 : Màn hình trao đổi phía người được gọi. 48 Phát triển ứng dụng Video Conference phía Client dựa trên công nghệ Realtime Communication Nguyễn Duy Thành % 46PM2 – 1445.46 6  Hình 30 : Các hộp thoại thông báo. . 48 Hình 31 : Bảng trắng. . 49 Hình 32 : Đăng nhập hệ thống Client – Server. . 50 Hình 33 :Danh sách bạn bè. . 50 Hình 34 : Tìm kiếm thông tin . 51 Hình 35 : Luồng đăng nhập trên Pocket PC . 52 Hình 36 : Luồng nhắn tin trên Pocket PC. . 52 Hình 37 : Luồng trao đổi trên Pocket PC. 53 Phát triển ứng dụng Video Conference phía Client dựa trên công nghệ Realtime Communication Nguyễn Duy Thành % 46PM2 – 1445.46 7  1 Mở đầu. Video Conference (hay Hội nghị truyền hình – VC) là một lĩnh vực tuy không mới nhưng những công nghệ được ứng dụng trong lĩnh vực này thì luôn được đổi mới theo sự phát triển của thế giới. Các hệ thống Hội nghị truyền hình đã xuất hiện từ những năm 50 của thế kỷ trước, tuy chất lượng là vấn đề cần phải bàn tới nhưng nó cũng đánh dấu một bước phát triển xã hội. Nhu cầu trao đổi thông tin không bị giới hạn về mặt địa lý ngày càng lớn, ban đầu là văn bản, rồi đến tiếng nói và sau nữa là hình ảnh. Việc truyền thông hình ảnh đã thực hiện được về mặt cơ sở hạ tầng và thiết bị (nhưng mới chỉ là tương tác một chiều – với các hệ thống truyền hình và các hệ thống lớn) còn với hệ thống Hội nghị truyền hình thì tương tác phải là hai chiều và thực hiện trong môi trường thời gian thực. Việc triển khai hệ thống VC nếu muốn được phổ biến thì đối tượng sử dụng phải là những cá nhân, hộ gia đình và mục đích sử dụng cũng phải được mở rộng và không hạn chế. Trong thời điểm hiện nay thì các điều kiện về cơ sở hạ tầng và thiết bị đã được đáp ứng khá đầy đủ (mạng viễn thông, mạng Internet, các thiết bị ghi hình, ghi âm … đều có mức giá hợp lý và được thị trường chấp nhận). Song hành với nó là các tiêu chuẩn công nghệ được đưa ra để chuẩn hóa các hệ thống VC. Tương ứng với từng thời kỳ đều có một chuẩn phù hợp với khả năng đáp ứng của công nghệ. Các chuẩn công nghệ được quốc tế chấp nhận với mục đích giúp các hệ thống VC có thể giao tiếp được với nhau, không bị ngăn cản bởi sự khác biệt về thiết bị…. Một số hệ thống VC hiện nay như : MSN Messenger, Yahoo, AOL … đều đã phát triển rất mạnh, tạo nên một môi trường rộng để các thành phần thiết bị đầu cuối có thể liên lạc được với nhau. Trong các chuẩn công nghệ đã được chấp nhận và ứng dụng thì chuẩn SIP – giao thức thiết lập phiên – là một trong những chuẩn mới đang được sử dụng rộng rãi. Chuẩn này cho phép các thành phần máy khách trong hệ thống có thể liên lạc với nhau một cách dễ dàng. Nó cũng cho phép thành phần của các hãng khác nhau có thể bắt tay với nhau. Không những thế, SIP còn cung cấp sự đơn giản hóa cho hệ thống Video Conference. Trong các hệ thống ứng dụng các chuẩn khác nhau đều tồn tại một thành phần đầu cuối được sử dụng bởi người dùng, thành phần này giúp người dùng tương tác trực tiếp với nhau hoặc thông qua server. Đa phần các thành phần đầu cuối hiện nay chỉ tương tác được với nhau thông qua các server trong cùng một hệ thống, điều này làm hạn chế các hệ thống hiện thời trong khi SIP cung cấp đầy đủ khả năng tương tác giữa các hệ thống khác nhau. Vì vậy, một yêu cầu đặt ra là cần xây dựng một ứng dụng có khả năng kết nối được với các hệ thống khác nhau để tận dụng tối đa các tài nguyên hiện có. Với ứng dụng này, người dùng sẽ không phải chuyển đổi mỗi khi làm việc với một hệ thống khác. Phát triển ứng dụng Video Conference phía Client dựa trên công nghệ Realtime Communication Nguyễn Duy Thành % 46PM2 – 1445.46 8  Quyển đồ án được cấu trúc thành 4 phần như sau :  Phần 1 : Mở đầu : Giới thiệu sơ lược về lý do lựa chọn đề tài.  Phần 2 : Giới thiệu về hệ thống Video Conference và các chuẩn liên quan sẽ được sử dụng.  Phần 3 : Thiết kế, xây dựng ứng dụng Video Conference trên máy tính để bàn (PC) và thiết bị cầm tay (Pocket PC).  Phần 4 : Tổng kết và hướng phát triển. Phát triển ứng dụng Video Conference phía Client dựa trên công nghệ Realtime Communication Nguyễn Duy Thành % 46PM2 – 1445.46 9  2 Các chuẩn và công nghệ cho ứng dụng Video Conference. 2.1 Tổng quan về Video Conference. Bất kỳ một phát minh hay một công nghệ mới đều phải chứng minh được sự có ích, tính hữu dụng, khả năng thương mại hóa và có thể giải quyết một vấn đề nào đó thì mới có thể đảm bảo sự tồn tại của nó. Video Conference sau một thời gian dài nghiên cứu với nhiều biến cố, có bắt đầu, có kết thúc, có những lúc tưởng chừng như bị lãng quên, nhưng cuối cùng nó cũng đã trở thành một hệ thống truyền thông thời gian thực đáng được ghi nhận. Nó đã được sử dụng ở hầu hết các nơi, từ các ngành công nghiệp, các chính phủ, các tổ chức quân đội và tại các trường học trên thế giới…. Video Conference trong một thời gian dài được thống trị bởi các thiết bị analog đơn giản. Nó chỉ đơn thuần là 2 thiết bị đầu cuối được nối với nhau bằng cáp truyền hình hoặc liên lạc bằng sóng vô tuyến (NASA đã sử dụng cách này). Khi Video Conference thực sự được giới thiệu, năm 1964 ở NewYork, với chất lượng mà không một ai vào thời điểm đó có thể cho rằng nó sẽ thay thế chuẩn điện thoại đương thời. Tuy vậy, hãng AT&T đã giới thiệu PicturePhone vài năm sau đó (1970), nhưng nó vẫn không thực tế vì quá đắt đỏ. Chỉ đến khi Ericsson giới thiệu hệ thống điện thoại truyền hình thì các công ty khác mới nhìn nhận khả năng thực tế cũng như lợi nhuận có được và bắt tay vào việc cải tổ công nghệ Video Conference của mình. Một số giao thức đã ra đời như : Network Video Protocol (NVP) năm 1976, Packet Video Protocol (PVP) năm 1981. Chúng đã góp phần thúc đẩy sự phát triển Video Conference. IBM Japan cũng đã phát triển một hệ thống Video Conference nội bộ bằng một đường truyền 48kps để kết nối với IBM U.S. nhằm phục vụ các cuộc họp thương mại hàng tuần. Có thể nói, vào những năm 80, Video Conference đã với được tới thị trường thương mại, nhưng giá cả vẫn là một trở ngại lớn. Vì vậy, người tiêu dùng cũng như các doanh nghiệp đều không có cơ hội để sử dụng, mà chủ yếu là quân đội và các tổ chức lớn. Đầu những năm 90, sự tiến bộ và phát triển của hệ thống Video Conference được cấu thành từ nhiều yếu tố, trong đó điển hình là sự xuất hiện của giao thức IP và các công nghệ nén hình ảnh hiệu quả hơn đã được phát triển. Điều này cho phép hệ thống Video Conference dựa trên PC phát triển mạnh mẽ. Năm 1991, IBM đã giới thiệu một hệ thống Video Conference dựa tên PC có tên là PicTel, mặc dù chỉ là hệ thống đen trắng nhưng giá cả đã giảm được vài chục lần so với những năm thập niên 80. Không lâu sau đó thì Video Conference đã trở nên phổ biến hơn nhờ một số phần mềm và server miễn phí như : NetMeeting, MSN Messenger, và Yahoo Messenger,

Ngày đăng: 25/12/2013, 10:51

Hình ảnh liên quan

VC Video Conference – Hội thảo truyền hình. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

ideo.

Conference – Hội thảo truyền hình Xem tại trang 4 của tài liệu.
Bảng 1: Cấu trúc phân tầng của SIP. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Bảng 1.

Cấu trúc phân tầng của SIP Xem tại trang 13 của tài liệu.
Hình 1: Truyền thông ngang hàng. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 1.

Truyền thông ngang hàng Xem tại trang 18 của tài liệu.
Hình 2: Truyền thông qua Proxy Server. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 2.

Truyền thông qua Proxy Server Xem tại trang 18 của tài liệu.
Hình 3: Truyền thông qua Redirect Server. Ví dụ về thông điệp yêu cầu SIP :  - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 3.

Truyền thông qua Redirect Server. Ví dụ về thông điệp yêu cầu SIP : Xem tại trang 19 của tài liệu.
Bảng 1 1: Các kiểu mô tả trong SDP. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Bảng 1.

1: Các kiểu mô tả trong SDP Xem tại trang 22 của tài liệu.
Bảng 14 : Cấu trúc gói SR. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Bảng 14.

Cấu trúc gói SR Xem tại trang 29 của tài liệu.
Bảng 17 : So sánh SIP và H.323. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Bảng 17.

So sánh SIP và H.323 Xem tại trang 30 của tài liệu.
Hình 6: Kiến trúc RTC Client. Ý nghĩa chính của các đối tượng :  - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 6.

Kiến trúc RTC Client. Ý nghĩa chính của các đối tượng : Xem tại trang 32 của tài liệu.
Ứng dụng thực hiện các thao tác cơ bản gồm có : cấu hình cho RTC Client, khởi động phiên, Xử lý sự kiện - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

ng.

dụng thực hiện các thao tác cơ bản gồm có : cấu hình cho RTC Client, khởi động phiên, Xử lý sự kiện Xem tại trang 34 của tài liệu.
Hình 9: Xử lý sự kiện. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 9.

Xử lý sự kiện Xem tại trang 35 của tài liệu.
Hình 1 0: Xử lý sự kiện (tiếp). Ý nghĩa của các sự kiện cần xử lý:  - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 1.

0: Xử lý sự kiện (tiếp). Ý nghĩa của các sự kiện cần xử lý: Xem tại trang 36 của tài liệu.
Hình 1 1: Ánh xạ địa chỉ. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 1.

1: Ánh xạ địa chỉ Xem tại trang 37 của tài liệu.
Hình 12 : Trao đổi qua Server. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 12.

Trao đổi qua Server Xem tại trang 39 của tài liệu.
Hình 13 : Trao đổi trực tiếp. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 13.

Trao đổi trực tiếp Xem tại trang 40 của tài liệu.
Hình 14 : Kiến trúc chương trình. Ý nghĩa của các thành phần :  - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 14.

Kiến trúc chương trình. Ý nghĩa của các thành phần : Xem tại trang 41 của tài liệu.
Hình 15 :Luồng đăng nhập. b. Nhắn tin.  - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 15.

Luồng đăng nhập. b. Nhắn tin. Xem tại trang 42 của tài liệu.
Hình 17 :Luồng đối thoại. d. Điều chỉnh thiết bị.  - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 17.

Luồng đối thoại. d. Điều chỉnh thiết bị. Xem tại trang 43 của tài liệu.
Hình 19 :Luồng danh sách bạn bè. f. Tìm kiếm.  - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 19.

Luồng danh sách bạn bè. f. Tìm kiếm. Xem tại trang 44 của tài liệu.
Hình 20 :Luồng tìm kiếm. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 20.

Luồng tìm kiếm Xem tại trang 44 của tài liệu.
Hình 22 : Giao diện chính (tiếp). - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 22.

Giao diện chính (tiếp) Xem tại trang 45 của tài liệu.
Hình 23 : Thông số trạng thái. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 23.

Thông số trạng thái Xem tại trang 45 của tài liệu.
Hình 24 : Đăng nhập hệ thống ngang hàng. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 24.

Đăng nhập hệ thống ngang hàng Xem tại trang 46 của tài liệu.
Để thực hiện nhắn tin (Hình 26) hay trao đổi (Hình 27,29), ta cần cung cấp tên (hiển thị) và địa chỉ của thành viên đó (Hình 25) - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

th.

ực hiện nhắn tin (Hình 26) hay trao đổi (Hình 27,29), ta cần cung cấp tên (hiển thị) và địa chỉ của thành viên đó (Hình 25) Xem tại trang 47 của tài liệu.
Hình 2 8: Lựa chọn ứng dụng chia sẻ. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 2.

8: Lựa chọn ứng dụng chia sẻ Xem tại trang 48 của tài liệu.
Hình 29 : Màn hình trao đổi phía người được gọi. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 29.

Màn hình trao đổi phía người được gọi Xem tại trang 49 của tài liệu.
Hình 3 1: Bảng trắng. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 3.

1: Bảng trắng Xem tại trang 50 của tài liệu.
Hình 34 : Tìm kiếm thông tin. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 34.

Tìm kiếm thông tin Xem tại trang 52 của tài liệu.
Hình 35: Luồng đăng nhập trên Pocket PC. b. Nhắn tin.  - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 35.

Luồng đăng nhập trên Pocket PC. b. Nhắn tin. Xem tại trang 53 của tài liệu.
Hình 37 :Luồng trao đổi trên Pocket PC. - Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication

Hình 37.

Luồng trao đổi trên Pocket PC Xem tại trang 54 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan