Tổng quan về giao thức mạng UPnP - VietBF
 
 
 

HOME

NEWS 24h

DEM

GOP

Phim Bộ

Phim Lẻ

Ca Nhạc

Breaking
News Library Technology Giải Trí Portals Tin Sốt Home

Go Back   VietBF > Others (Closed Forums) > Archive - Old News 2013 (closed)

 
 
Thread Tools
Old 02-21-2013   #1
Romano
R11 Độc Cô Cầu Bại
 
Romano's Avatar
 
Join Date: May 2007
Posts: 127,750
Thanks: 9
Thanked 6,415 Times in 5,377 Posts
Mentioned: 3 Post(s)
Tagged: 0 Thread(s)
Quoted: 36 Post(s)
Rep Power: 162
Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10
Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10Romano Reputation Uy Tín Level 10
Default Tổng quan về giao thức mạng UPnP

UPnP (Universal Plug and Play) là một giao thức mạng giúp các thiết bị với khả năng kết nối mạng trong gia đ́nh có khả năng nhận ra nhau và truy cập một số dịch vụ (services) nhất định của nhau, bất kể thiết bị đó thuộc chủng loại nào hoặc chạy hệ điều hành ǵ. Được xây dựng dựa trên các nền tảng thông dụng nhất của Internet như TCP/IP, HTTP, XML, các thiết bị có UPnP sẽ tự động t́m thấy nhau trong mạng khi chức năng UPnP đang hoạt động mà không đ̣i hỏi nhiều thao tác cấu h́nh, tiết kiệm nhiều công sức cho người sử dụng. Ứng dụng thường gặp nhất của UPnP là stream dữ liệu media (nhạc, phim) giữa các thiết bị trong mạng và gửi tín hiệu điều khiển giữa các thiết bị này.

Tổng quan kĩ thuật

Giao thức mạng UPnP hoạt động theo cơ chế mạng ngang hàng (peer-to-peer), các thiết bị UPnP đều có quyền gửi và nhận tín hiệu điều khiển ngang nhau. Cũng đồng nghĩa với việc bạn có thể ngồi ở tầng 3, đặt media server (ví dụ như PC & HDD Box) của ḿnh ở tầng 2 và dùng tablet điều khiển để phim lưu trên media server đó phát ra trên TV tại pḥng khách tầng 1, miễn sao cả 3 thiết bị đều đă kết nối với hệ thống mạng gia đ́nh bạn và đă cài ứng dụng hỗ trợ UPnP. Việc di chuyển file dữ liệu sử dụng UPnP cũng đôi lúc tỏ ra tiện lợi hơn file sharing mặc định của Windows. Tuy vậy do dung lượng của các dữ liệu multimedia thường rất lớn nên giải pháp lưu trữ toàn bộ các file này ở một nơi và sử dụng khả năng stream media của UPnP để phát lại trên các thiết bị khác vẫn được ưa chuộng hơn cả.
  • UPnP hoạt động trên mọi nền tảng mạng từ Wi-fi, dial-up, các phương pháp truyền dẫn sử dụng đường dây điện (communication over powerline), mạng dây Ethernet truyền thống.v.v. Miễn sao có kết nối để truyền dẫn dữ liệu giữa các thiết bị.
  • Ứng dụng UPnP có thể được xây dựng trên bất cứ nền tảng HĐH nào bằng bất cứ ngôn ngữ nào. Và với sức mạnh phần cứng mạnh mẽ hơn theo từng ngày, yêu cầu về cấu h́nh phần cứng từ lâu đă không c̣n là chuyện cần bàn đến. Trên thực tế chỉ cần một HĐH đạt được một lượng người dùng nhất định, chắc chắn sẽ có người viết ứng dụng UPnP trên đó. Các thiết bị giải trí gia đ́nh như máy console hay TV đời mới phần lớn đều đă được hăng sản xuất tích hợp khả năng hỗ trợ UPnP ngay từ khi xuất xưởng.
  • Được xây dựng dựa trên những nền tảng phổ biến và đáng tin cậy nhất tạo nên Internet ngày nay như IP, TCP, UDP, HTTP, XML. Độ ổn định và hiệu năng của UPnP là không cần phải bàn, tuy rằng c̣n gặp nhiều vấn đề về bảo mật.
  • Được phát triển hướng tới việc phục vụ các ứng dụng giải trí như xem phim, nghe nhạc, hiển nhiên cơ chế t́m kiếm và điều khiển của UPnP không thể dựa trên những ḍng lệnh khô khan. Giao diện điều khiển của các ứng dụng UPnP thường được tối ưu để đem lại cảm giác thoải mái và thuận tiện nhất cho người dùng.
  • Tính đồng nhất: cũng tương tự đối với các giao thức mạng Wi-fi, Bluetooth…Các hăng sản xuất khi muốn tự tích hợp chức năng hỗ trợ UPnP lên thiết bị của ḿnh (TV, máy nghe nhạc.v.v.) sẽ phải tuân theo các chuẩn chung. (Chúng ta sẽ t́m hiểu kĩ hơn về hệ thống chuẩn do DLNA xây dựng ở phía dưới).
  • Khả năng mở rộng: số lượng thiết bị UPnP trong cùng mạng chỉ bị giới hạn bởi khả năng tải của các thiết bị mạng. Đồng thời ngoài các chức năng cơ bản như điều khiển, stream media…. các lập tŕnh viên và hăng sản xuất có thể phát triển bổ sung nhiều chức năng khác (ví dụ thay đổi, sao chép metadata trong thư viện multimedia)
Lưu ư:
Như đă đề cập trong bài viết về 5 sơ suất về bảo mật người dùng thường gặp phải, chức năng UPnP trên các thiết bị đầu cuối (TV, PC, Laptop….) trong mạng nhà bạn không liên quan ǵ đến chức năng UPnP của các thiết bị mạng như modem. Để giao tiếp và truyền dữ liệu trong mạng LAN - nơi mà các thiết bị đă vốn có thể giao tiếp trực tiếp với nhau không phải qua bước trung gian NAT nào – chúng ta chỉ cần bảo đảm rằng ứng dụng UPnP đang được bật trên các thiết bị đó. C̣n tùy chọn UPnP trên các thiết bị mạng là chức năng giúp người dùng kết nối từ xa (ví dụ khi đi công tác) về thư viện multimedia tại nhà sử dụng giao thức UPnP. Và đáng tiếc là suốt những năm qua, chức năng này liên tục xuất hiện những lỗi nghiêm trọng về bảo mật, khiến cho các chính quyền cũng như các hăng công nghệ lớn luôn khuyến cáo người dùng nên tắt tùy chọn này.



Bây giờ chúng ta sẽ t́m hiểu qua về những thành phần cần thiết để thiết lập một hệ thống UPnP đơn giản trong nhà:

UPnP - MediaServer


Cũng tương tự khi download torrent, ta cần ít nhất 1 seed ban đầu làm nguồn phát tán dữ liệu. Muốn stream phim/nhạc trong mạng th́ nơi lưu trữ các dữ liệu multimedia đó phải có khả năng phát tán dữ liệu, nói cách khác là đóng vai UPnP server. Trên các thiết bị như PC, laptop sử dụng Windows, Mac hay các distro Linux phổ biến dạng Ubuntu, điều này chỉ phụ vào việc ứng dụng UPnP mà bạn chọn cài đặt có chức năng này hay không. May mắn là phần lớn các phần mềm Mediaserver có thể được dùng làm UPnP Server tốt nhất hiện nay như XBMC, Plex, Mediatomb, Serviio, PS3…. hiện nay đều được phát triển theo dạng cross-plattform. Nghĩa là bạn sẽ không phải lo lắng về việc ḿnh dùng HĐH nào. Đ̣i hỏi cấu h́nh để đóng vai tṛ UPnP server cũng không hề cao, v́ vậy nếu muốn người dùng hoàn toàn có thể phân tán dữ liệu multimedia giữa các máy bàn/laptop trong nhà rồi cho tất cả các máy đóng vai tṛ server để phát dữ liệu qua lại cho nhau. Nhưng đây không phải cách tối ưu do việc nhớ và quản lư các dữ liệu bị phân tán không phải dễ dàng. Trong hộ gia đ́nh phương pháp phổ biến nhất vẫn là tập trung các bộ sưu tập phim, đĩa nhạc vào một máy có thể chạy bền bỉ 24/24 dạng NAS Server, các thiết bị khác sẽ stream dữ liệu từ đó ra. Chức năng UPnP Server trên các máy khác lúc này dĩ nhiên vẫn có thể được bật pḥng khi cần thiết, chỉ là chúng ta sẽ không cần mất công nhớ xem phim nào để trên máy nào nữa, vậy thôi.


Mô h́nh phổ biến, tập trung thư viện multimedia trên 1 máy dạng NAS server.

Các thiết bị di dộng sử dụng iOS, Android hay các hệ điều hành di động khác, do thường không có dung lượng lưu trữ cao, khả năng xử lí mạnh mẽ và pin bền bỉ (và cũng không mấy ai dùng thiết bị di động làm nơi lưu thư viện phim/ảnh/nhạc cả) nên việc sử dụng các thiết bị này làm UPnP Server là không phổ biến. Dĩ nhiên các ứng dụng cung cấp chức năng này vẫn tồn tại trên Android hay iOS (ví dụ BubbleUPnP hay Pixel Media Server), tuy nhiên trên tablet hay smartphone chức năng Server có lẽ chỉ hữu dụng khi ta đang…. ở nhà người khác và muốn phát thử nhạc/phim lên TV/Loa của họ. Các phần mềm cross platform kể trên khi chạy trên hệ điều hành di động lại thường đ̣i hỏi sức mạnh phần cứng kha khá, ví dụ XBMC hiện vẫn nói không với Tegra 2.

Trên các dạng thiết bị khác như TV, loa đài, Camera, đầu DVD hay máy chơi game console, các phần mềm và chức năng hầu hết đă được khóa cứng từ khi ta mua về. Thiết bị đó có thể hỗ trợ UPnP hoặc không, và nếu có th́ có thể chỉ nhận được tín hiệu, chứ không thể đóng vai tṛ UPnP Server để phát dữ liệu. Tùy theo nhu cầu sử dụng, ta cần t́m hiểu kĩ khi mua hàng, đặc biệt tham khảo kĩ chứng chỉ DLNA được cấp cho sản phẩm đó.

Lưu ư:


Nếu bạn là người quen làm việc với file và ít khi tiếp cận các mediaServer, nơi dữ liệu được tổ chức dưới dạng thư viện, có thể bạn sẽ mất đôi chút thời gian để làm quen. Khi cài đặt lần đầu, các mediaserver dạng như XBMC, Plex sẽ yêu cầu người dùng chỉ định nơi quét dữ liệu. Sau khi quá t́nh quét hoàn tất các bản nhạc, bộ phim trong đó sẽ được mediaserver hiển thị dưới dạng một bộ phim/ bài hát thực sự, với đầy đủ metadata về tác giả, thời lượng, định dạng, chất lượng, rating.v.v. để người dùng có thể dễ dàng t́m kiếm khi điều khiển từ TV, tablet chứ không chỉ là những file mp3, avi khô khan với một cái tên file cũng khô khan không kém nữa. Nếu bạn là người cẩn thận chỉ tải về các bản nhạc/phim với codec thông dụng, đă được cập nhật đầy đủ sẵn metadata th́ không vấn đề ǵ. Nhưng nếu trong máy lưu toàn những file với codec, tên file lạ, bên trong không có thông tin bổ sung ǵ th́ đôi lúc chúng sẽ không được hiển thị trong thư viện, hoặc các thông tin bổ sung do mediaserver tự lấy về từ Internet sẽ có thể sai lệch.


UPnP Client: ControlPoint/Renderer/ RenderingControl

Sau khi đă có nguồn phát tín hiệu, việc điều khiển từ xa và nhận tín hiệu được chia ra làm khá nhiều khâu, dù rằng phần lớn trường hợp các chức năng này đều được tích hợp chung vào một gói phần mềm. Một thiết bị đóng vai tṛ UPnP ControlPoint khi nó có khả năng truy cập, t́m kiếm, sử dụng và thay đổi dữ liệu của MediaServer. Renderer là thiết bị nhận dữ liệu, xuất ra h́nh ảnh/âm thanh phục vụ người sử dụng. Cuối cùng RenderingControl là thiết bị chỉ đảm nhiệm việc điều khiển Renderer, đơn cử như chiếc điều khiển TV.


Nhiều người sẽ thắc mắc: việc quái ǵ tôi phải nhớ lắm thứ thế? Hăy nh́n vào ví dụ ở đầu bài viết: Bạn đang đọc sách trên tầng 3, một PC cũ chuyên dùng để cắm torrent và lưu phim đặt ở tầng 2, ở pḥng khách đang có một cô/cậu nhóc mè nheo đ̣i xem hoạt h́nh. Hiển nhiên PC cũ lúc này sẽ được cài XBMC, Plex, Mediatomb… ǵ đó để đóng vai tṛ Server. Khi bạn từ tablet sử dụng các phần mềm như BubbleUPnP, PlugPlayer để truy cập, chọn phim từ thư viện (library) của Server rồi điều khiển cho phim đó được phát lên TV, bạn đang sử dụng chức năng ControlPoint. Để làm được điều này, ta sẽ cần chọn đúng thứ tự : PC là library và TV là renderer từ giao diện điều khiển của ControlPoint. Nếu trong nhà có vài Server như vậy cộng với vài TV có hỗ trợ UPnP, việc nhớ đúng vai tṛ của từng loại thiết bị là rất quan trọng.

Dĩ nhiên, một thiết bị nếu đủ khả năng có thể chịu trách nhiệm nhiều khâu cùng lúc, vừa là Server vừa là Renderer, đồng thời kiêm luôn ContrlPoint và RendererControl. Ví dụ đơn giản nhất là khi sử dụng các Mediaserver kể trên để tạo thư viện trên 1 PC, t́m kiếm phim/nhạc và xem trực tiếp trên cùng 1 máy đó.

DLNA và hệ thống chứng chỉ



DLNA là một tổ chức được nhiều hăng chung tay thành lập để thống nhất các chuẩn chung giúp các thiết bị giải trí gia đ́nh giao tiếp được với nhau. Hệ thống chuẩn do DLNA xây dựng dựa trên UPnP và một số giao thức mạng phổ biến khác, giúp đảm bảo khả năng tương thích giữa các thiết bị khác chủng loại, nền tảng và hăng sản xuất. Đồng thời DLNA chịu trách nhiệm kiểm tra tính tương thích của một ḍng thiết bị gia đ́nh để từ đó cấp chứng chỉ tương ứng, giúp người dùng biết sản phẩm ḿnh định mua có thể làm được ǵ. Bởi v́ ngoài việc nhận ra và giao tiếp được với các thiết bị khác nhờ sự hỗ trợ của UPnP(với vai tṛ là một giao thức mạng), c̣n có các vấn đề về khả năng xử lư, giải mă (codec)..v..v. cần quan tâm khi ta muốn làm việc với dữ liệu multimedia trên một thiết bị giải trí gia đ́nh. Người dùng chủ yếu cần chú ư các chứng chỉ này trên các thiết bị thuộc “nhóm thứ 3” như TV, HD Box, Camera - v́ như đă nói trên PC, laptop chạy các hệ điều hành với khả năng mở rộng mạnh mẽ như Windows, Linux, vấn đề chỉ là ta có t́m được phần mềm phù hợp, đầy đủ chức năng hay không.


Việc phân loại thiết bị cơ bản được dựa theo vai tṛ mà thiết bị có thể đảm nhiệm (khá tương tự những ǵ đă nói ở trên). Những thiết bị như PC, laptop hiển nhiên có thể đảm nhiệm cùng lúc nhiều vai tṛ.
  • Digital Media Server (DMS)
  • Digital Media Player (DMP)
  • Digital Media Renderer (DMR)
  • Digital Media Controller (DMC).
Pḥng khi bạn đọc thắc mắc “Player” và “Renderer” là ǵ: Renderer có thể được điều khiển bằng Controller như ví dụ ở trên, c̣n Player th́ không. Nếu bạn đă hiểu khác biệt về cách t́m kiếm theo file truyền thống và theo thư viện như đă nói trong lưu ư 1, một điểm nhấn nữa là ta có thể sử dụng Controller để đổi sang chế độ duyệt theo file và phát ra Renderer – pḥng trường hợp thư viện lỗi. C̣n Player – ví dụ các máy nghe nhạc, sẽ chỉ và chỉ thấy/phát được những ǵ hiển thị trong thư viện mà thôi. Ngoài ra trong 1 số trường hợp, ta có thể bắt gặp các máy Scanner/Printer cũng mang chứng chỉ DLNA do chúng có khả năng giao tiếp để nhận/xuất h́nh ảnh trực tiếp từ Server hay Renderer thông qua UPnP, tránh cho người dùng những thao tác rắc rối khi sử dụng công cụ có sẵn của Windows hay Mac.


Nhưng đào sâu hơn nữa, không phải cứ có Server, Controlller và Renderer là xong, nếu thế DLNA đă chẳng phải lập ra nguyên một trang chuyên cung cấp thông tin chứng chỉ đă cấp làm ǵ. Chủng loại chứng chỉ DLNA cấp cho các thiết bị đa dạng hơn thế nhiều. Tùy theo dạng cấu h́nh thiết bị, sẽ có lúc bạn bắt gặp các HD Box không giải mă được một số định dạng video từ thư viện nhà ḿnh, hoặc một số camera không thể phát lại h́nh ảnh từ scanner - bởi như đă nói ở trên, việc các thiết bị nhờ UPnP mà nhận ra và giao tiếp được với nhau là một chuyện, các thiết bị đó có xử lí được tín hiệu nhận được hay không lại là một chuyện khác. Các chi tiết kĩ thuật cụ thể này đều được ghi rơ, ít nhất là trên website của DLNA cho chúng ta t́m hiểu khi cần http://www.dlna.org/consumer-home/lo...product-search.

Sau khi đă phát ngấy với lư thuyết, chúng ta sẽ điểm qua vài bước đơn giản để thiết lập hệ thống UPnP cơ bản trong LAN

Bước Một: Cài đặt thư viện trên Mediaserver

Do là các ứng dụng phục vụ nhu cầu giải trí, trừ Mediatomb ra th́ dù bạn chọn Mediaserver nào để cài đặt – bạn cũng sẽ không gặp mấy khó khăn để làm quen với giao diện thân thiện của các phần mềm này. Trong ví dụ này chúng ta sẽ sử dụng XBMC. Tham khảo thêm wikipedia để biết danh sách đầy đủ các ứng dụng UPnP trên tất cả các HĐH.

Để tiện cho việc t́m kiếm nội dung, trước hết ta nên vào Music hoặc Movies, Chọn AddSource để thêm nguồn quét dữ liệu. T́m đến phân vùng ổ cứng hoặc thư mục lưu phim/ảnh/nhạc của bạn và đặt một cái tên dễ nhớ.



Nguồn quét vừa tạo sẽ xuất hiện trong menu chính, chuột phải chọn Scan Item to Library, chờ đôi chút cho việc quét hoàn tất là bạn đă có một thư viện multimedia.


Bước hai: cài đặt UPnP trên XBMC



Truy cập Setting > Services > UPnP. Chúng ta sẽ thấy cái tùy chọn để chia sẻ dữ liệu từ thư viện của XBMC qua UPnP, cũng như cho phép điều khiển XBMC qua kết nối UPnP. Bật tùy chọn chia sẻ dữ liệu (và cả tùy chọn điều khiển nếu muốn). Chú ư tùy chọn Allow control via HTTP sẽ cho phép bạn quản lư thư viện của XBMC qua giao diện web bằng cách vào địa chỉ dạng "IP máy server cài XBMC":"Port", port mặc định như trên là 8080.

Bước ba: t́m đến thư viện XBMC vừa tạo trên các thiết bị khác

Nếu bạn muốn thử nghiệm stream giữa các máy bàn, laptop với nhau, tiếp tục cài XBMC lên các máy c̣n lại – chúng sẽ đóng vai tṛ Client (hoặc thậm chí cài thử Plex, Mediatomb nếu muốn thử nghiệm khả năng chia sẻ của UPnP nói chung, không chỉ riêng XBMC). Trên các máy này khi chọn AddSource, ta sẽ không t́m đến một thư mục trên máy nữa mà vào UPnP Devices > máy chủ vừa được cấu h́nh tại bước hai sẽ được hiển thị tại đây. Sau khi bổ sung nguồn quét này thành công, toàn bộ nội dung của thư viện XBMC từ máy chủ sẽ được thêm vào thư viện của máy đang dùng (tiếp tục chuột phải & scan to library nếu chưa thấy). Bạn sẽ thấy các máy Client không tốn thêm chút dung lượng nào, nhưng video/nhạc vẫn có thể được phát b́nh thường.



Các thiết bị di động th́ thường không đ̣i hỏi thao tác AddSource dài ḍng như vậy. Bật thử BubbleUPnP, PlugPlayer hoặc 8Player lên, chúng sẽ tự động nhận biết thư viện multimedia của Android/ iOS và hiển thị chúng dưới cái tên dạng “Local Library” hay “Local Server”, đồng thời hiển thị thư viện trên các máy PC mà bạn vừa cài XBMC. Do như đă nói BubbleUPnP hay PlugPlayer có chức năng ControlPoint, việc của bạn lúc này chỉ là chọn Server/Renderer tương ứng từ danh sách các thiết bị hiện ra, sau đó là thoải mái tận hưởng thành quả của ḿnh.


cnet
Romano_is_offline  
Attached Thumbnails
Click image for larger version

Name:	130220upnpnet.gif
Views:	8
Size:	83.1 KB
ID:	445640
 
User Tag List


Phim Bộ Videos PC5

 
iPad Tablet Menu

HOME

Breaking News

Society News

VietOversea

World News

Business News

Other News

History

Car News

Computer News

Game News

USA News

Mobile News

Music News

Movies News

Sport News

DEM

GOP

Phim Bộ

Phim Lẻ

Ca Nhạc

Thơ Ca

Help Me

Sport Live

Stranger Stories

Comedy Stories

Cooking Chat

Nice Pictures

Fashion

School

Travelling

Funny Videos

NEWS 24h

HOT 3 Days

NEWS 3 Days

HOT 7 Days

NEWS 7 Days

HOT 30 Days

NEWS 30 Days

Member News

Tin Sôi Nổi Nhất 24h Qua

Tin Sôi Nổi Nhất 3 Ngày Qua

Tin Sôi Nổi Nhất 7 Ngày Qua

Tin Sôi Nổi Nhất 14 Ngày Qua

Tin Sôi Nổi Nhất 30 Ngày Qua
Diễn Đàn Người Việt Hải Ngoại. Tự do ngôn luận, an toàn và uy tín. V́ một tương lai tươi đẹp cho các thế hệ Việt Nam hăy ghé thăm chúng tôi, hăy tâm sự với chúng tôi mỗi ngày, mỗi giờ và mỗi giây phút có thể. VietBF.Com Xin cám ơn các bạn, chúc tất cả các bạn vui vẻ và gặp nhiều may mắn.
Welcome to Vietnamese American Community, Vietnamese European, Canadian, Australian Forum, Vietnamese Overseas Forum. Freedom of speech, safety and prestige. For a beautiful future for Vietnamese generations, please visit us, talk to us every day, every hour and every moment possible. VietBF.Com Thank you all and good luck.


All times are GMT. The time now is 03:40.
VietBF - Vietnamese Best Forum Copyright ©2006 - 2025
User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Log Out Unregistered

Page generated in 0.07615 seconds with 14 queries