A,Giao thức IGMP
Giao thức IGMP phát triển từ giao thức Host Membership Protocol, được mô tả trong tài liệu của Deering. Giao thức IGMP có ba phiên bản verion 1, verion 2,và verion 3. IGMP phát triển từ IGMPv1 (RFC1112) đến IGMPv2 (RFC2236) và đến phiên bản cuối cùng IGMPv3 (RFC3376). Các thông điệp IGMP được gửi bên trong gói tin IP với trường protocol number bằng 2, trong đó trường TTL có giá trị bằng 1. Các gói IGMP chỉ được truyền trong LAN và không được tiếp tục chuyển sang LAN khác do giá trị TTL của nó.
Hai mục đích quan trọng nhất của IGMP là:
Thông báo cho router multicast rằng có một máy muốn nhận multicast traffic của một nhóm cụ thể.
Thông báo cho router rằng một có một máy muốn rời một nhóm multicast (nói cách khác, có một máy không còn quan tâm đến việc nhận multicast traffic nữa). Các router thường dùng IGMP để duy trì thông tin cho từng cổng của router là những nhóm multicast nào router cần phải chuyển và những host nào muốn nhận. Trước khi một host có thể nhận bất kỳ một multicast traffic nào, một ứng dụng multicast phải được cài đặt và chạy trên host đó. Sau khi một host tham gia vào một nhóm, phần mềm sẽ tính toán địa chỉ multicast và sau đó card mạng sẽ bắt đầu lắng nghe địa chỉ multicast MAC. Trước khi một host hoặc một người dùng muốn tham gia vào một nhóm, người dùng cần phải biết nhóm nào đang tồn tại và làm thế nào để tham gia vào nhóm đó. Đối với các ứng dụng mức doanh nghiệp, người dùng chỉ cần đơn giản nhấp vào một link trên một trang web hoặc địa chỉ multicast có thể cấu hình trước trên client. Ví dụ, một người dùng có thể được yêu cầu để log vào một máy chủ và xác thực bằng tên và người dùng. Nếu tên người dùng được xác thực, ứng dụng multicast sẽ tự động cài trên PC của người dùng, nghĩa là người dùng đã tham gia vào nhóm multicast. Khi người dùng không còn muốn dùng ứng dụng multicast nữa, người dùng phải rời khỏi nhóm. Ví dụ, người dùng đơn giản chỉ cần đóng ứng dụng multicast để rời
khỏi nhóm. Đối với cơ chế multicast, một người dùng cần phải tìm ra ứng dụng nào họ muốn chạy, địa chỉ multicast được dùng bởi ứng dụng.
Làm thế nào một router biết được các máy cần nghe multicast traffic? Để nhận multicast traffic từ một nguồn, cả nguồn và các máy nhận đầu tiên phải gia nhập (join) vào một nhóm multicast. Nhóm này được xác định thông qua địa chỉ multicast. Một host có thể tham gia vào một nhóm multicast bằng cách gửi các yêu cầu đến router gần nhất. Tác vụ này được thực hiện thông qua giao thức IGMP. IGMPv1 được định nghĩa trong RFC1112 và bản cải tiến của nó, IGMPv2 được định nghĩa trong RFC2236. Khi có vài host muốn tham gia vào nhóm, giao thức PIM sẽ thông báo cho nhau giữa các router và hình thành nên cây multicast giữa các routers. IGMP và ICMP có nhiều điểm tương đồng, cùng chia sẽ một vài chức năng tương tự. IGMP cũng đóng gói trong gói tin IP (protocol number 2), nhưng IGMP giới hạn chỉ trong một kết nối lớp 2. Để đảm bảo router không bao giờ tiếp tục chuyển gói tin đi, trường TTL của IGMP luôn có giá trị bằng 1.
B,Giao thức PIM
Giao thức PIM là giao thức sử lý gói tin multicast độc lập nhau. Hiện nay có ba loại PIM đang được sử dụng là : PIM-SM , PIM-DM , PIM-SSM
C,Giao thức PIM-SM( Protocol independent multicast – sparse mode)
Giao thức định tuyến chế độ sparse được sử dụng khi có ít số lượng các ứng dụng multicast. Các giao thức PIM chế độ sparse không truyền lưu lượng của nhóm tới bất kỳ router nào trừ phi nó nhận được một thông điệp yêu cầu các bản sao của các gói tin được gửi tới một nhóm multicast đặc biệt.
Một router láng giềng yêu cầu các gói chỉ nhằm một trong hai mục đích :
Router đã nhận được một yêu cầu nhận gói tin từ một vài router láng giềng
Một host trên một phân đoạn mạng đã gửi thông điệp IGMP join cho nhóm đó. PIM-SM hoạt động với một chiến lược khác hẳn với PIM-DM mặc dù cơ chế của giao thức không hoàn toàn đối lập. PIM-SM giả sử rằng không có máy nào muốn nhận lưu lượng multicast cho đến khi nào các máy chủ động hỏi. Kết quả là, cho đến khi nào trong một subnet có một máy yêu cầu nhận multicast thì multicast mới được phân phối vào subnet đó. Với PIM-SM, các router downstream phải yêu cầu nhận multicast dùng thông điệp PIM Join. Khi các router nhận được các thông điệp này, các router bên dưới phải định kỳ gửi thông điệp Join lên router upstream. Nếu khác đi, router upstream sẽ không đưa lưu lượng xuống, đặt kết nối vào trong trạng thái prune. Tiến trình này thì ngược lại với tiến trình được dùng trong PIM-DM, trong đó mặc định là phát tán lưu
lượng multicast với các router downstream cần phải liên tục gửi thông điệp Prune hay thông điệp làm mới trạng thái State refresh để giữ cho một kết nối là trong trạng thái prune. PIM-SM phù hợp khi chỉ có những tỉ lệ nhỏ các phân đoạn mạng nhận lưu lượng multicast.
D,Giao thức PIM-DM ( dense mode)
Giao thức PIM-DM thường được sử dụng khi mà lưu lượng luồng multicast là rất lớn. PIM-DM luôn có một cổng trong trạng thái prune trong khoảng ba phút. Các thông điệp prune liệt kê một nguồn và nhóm. Đối với giao thức PIM-DM này thì bất cứ khi nào một router nhận được thông điệp prune nó sẽ tìm một hang (S, G) SPT trong bảng định tuyến multicast và đánh dấu các cổng trong đó thông điệp prune là nhận được. Tuy nhiên , các router cũng thiết lập giá trị prune timer, và thường thì mặc định là khoảng 3 phút, để sao cho trong khoảng 3 phút cổng này được đặt trong trạng thái forwarding . Để có thể khắc phục được những tình trạng như là các kết nối bị loại bỏ, liên kết bị loại bỏ và sau 3 phút thì các link tiếp tục hoạt động thì ở PIM-DM có cơ chế làm mới trạng thái stase refresh. Các thông điệp làm mới trạng thái đã khắc phục được sự yếu kém của PIM-DM trong tiến trình pruning.
Trong giao thức PIM-DM các router còn gửi thông điệp Graft để router nhận được đưa một cổng vào trạng thái forwarding cho một nhóm multicast nào đó.
Giao thức PIM-DM nhận biết các thiết bị láng giềng bằng cách trao đổi các gói “hello”. Thông tin láng giềng này được dùng trước để xây dựng cây đến tất cả các láng giềng. Sau đó, các nhánh của cây sẽ lần lượt được loại bỏ. Nếu một dòng multicast bắt đầu, cây sẽ được xây dựng, cây sẽ chỉ tồn tại khi các thành viên tích cực còn tồn tại. Nếu một host mới đăng ký tham gia nhóm, nhánh của phân đoạn mạng đó sẽ được đính thêm vào cây.
E,Giao thức PIM-SSM
Giao thức PIM-SSM là giao thức mở rộng của PIM. Khi sử dụng SSM thì một client có thể nhận luồng multicast trực tiếp từ địa chỉ nguồn. PIM-SSM sử dụng chức năng của PIM-SM để tạo ra một cây SPT giữa nguồn và đích nhận, tuy nhiên nó xây dựng SPT mà không cần sự giúp đỡ của router RP.
Mặc định là nhóm địa chỉ multicast được giới hạn trong dải địa chỉ 232.0.0.0 tới 232.255.255.255. Tuy nhiên, chúng ta có thể mở rộng tầm hoạt động của SSM sang lớp dải lớp D bao gồm địa chỉ ở mức cao.
Việc cấu hình PIM-SSM có sự khác biệt so với cấu hình PIM-SM truyền thống. Ở đây ta không cần phải chia sẻ tree hay là RP mapping, hoặc là RP –to –RP nguồn lấy lại thông qua Multicast source discovery Protocol ( MSDP).
Triển khai SSM là rất dễ dàng. Chúng ta chỉ cần cấu hình PIM-SM trên tất cả interface của router và chỉ định cái nào cần SSM, bao gồm một cách rõ ràng IGMPv3 trên Lan. Nếu PIM-SM không được cấu hình rõ ràng trên cả nguồn và nhóm thành viên interface thì gói tin multicast sẽ không được forwarded. Trên danh sách hỗ trợ IGMPv3 có sử dụng PIM-SSM. Như tại ở nguồn, trước khi active và bắt đầu gửi gói tin multicast thì quan tâm đến nơi nhân gói tin multicast đó là SSM . Trong việc cấu hình mạng theo PIM-SSM , một thuê bao tới một kênh SSM ( sử dụng IGMPv3) sẽ thông báo với các thuê bao để join vào nhóm G và nguồn S. Kết nối trực tiếp với router PIM-SM , router được phân công nhận làm DR, nhận bản tin từ RPF láng giềng.
Hình 1.6 Quá trình nhận và thông báo tới các thuê bao để join vào group G và sourse S
Giao thức PIM là giải pháp hỗ trợ truyền tín hiệu multicast. Khi mà số lượng các nhóm multicast cần phải truyền tăng lên thì PIM là một giải pháp quan trọng để quản lý và giám sát lưu lượng multicast.
1.5.2.Giao thức cho dịch vụ unicast
Giao thức RTSP được phát triển bởi IETF và thành lập vào năm 1998 với chuẩn RFC 2326. Đây là giao thức được ứng dụng để điều khiển dữ liệu với thời gian thực. RTSP cung cấp một khung làm việc cho phép điều khiển theo yêu cầu về thời gian thực, giống như audio và video. Nguồn dữ liệu có thể bao gồm cả dữ liệu sống và clip lưu trữ. Đây là giao thức dành cho phát triển dữ liệu đa phương tiện , cung cấp cách phân phát các kênh như UDP, TCP và việc đó đảm bảo theo thời gian thực. Điều khiển luồng bởi RTSP có thể sử dụng RTP , nhưng sự hoạt động của RTSP là không phụ thuộc vào kỹ thuật vận chuyển để truyền data. Giao thức được cố tình giả lập trong cú pháp và hoạt
động tới HTTP/1.1, vì mở rộng kỹ thuật tới HTTP có thể là hầu hết các trường hợp địa chỉ tới RTSP. Tuy nhiên ở RTSP có sự khác biệt quan trọng về lý thuyết so với HTTP:
RTSP giới thiệu một số phương pháp mới và có sự khác giao thức xác nhận.
Một RTSP server cần xác định trạng thái bằng cách mặc định hầu hết tất cả các trường hợp, tương phản với trạng thái tự nhiên của HTTP.
Cả RSTP server và client có thể đưa ra yêu cầu.
Dữ liệu mang đi out-of-band bằng giao thức khác.
Đặc điểm của giao thức
Giao thức RTSP có một số những đặc điểm sau đây:
Khả năng mở rộng. Phương pháp mới và các thông số có thể dễ dàng thêm vào RTSP.
Dễ dàng phân tích. Giao thức RTSP có thể dễ dàng phần tích bằng tiêu chuẩn HTTP hoặc MIME.
Bảo mật. RTSP sử dụng kỹ thuật bảo mật web. Tất cả kỹ thuật nhận thực đều cơ bản và chứng thực đều trực tiếp được áp dụng. Một số có thể dừng lại hoặc bảo mật ở lớp mạng.
Vận chuyển độc lập. RTSP có thể sử dụng một trong hai phương pháp truyền gói tin không tin cậy UDP và đáng tin cậy RDP, hoặc là giao thức luồng tin cậy TCP được thực hiện ở lớp ứng dụng đáng tin cậy.
Khả năng chạy nhiều server. Mỗi một luồng media giữa các phần trình diễn có thể đặt tại các server khác nhau. Các client sẽ tự động thiết lập một vài phiên điều khiển hiện tại với các server media khác nhau. Giữa chúng được đồng bộ với nhau ở lớp giao vận.
Điều khiển thiết bị ghi. Giao thức này có thể điều khiển cả 2 quá trình ghi và chạy lại thiết bị, hoặc cũng có thể nằm xen kẽ giữa hai mode.
Điều khiển luồng và hội nghị ban đầu. Điều khiển luồng đã đưa ra từ lời mời của server tới hội nghị. Chỉ có những yêu cầu hội nghị là một trong hai cung cấp hoặc là có thể sử dụng tạo ra hội nghị riêng. Trong thực tế SIP và h323 có thể sử dụng mời một server tới hội nghị.
Phù hợp với những ứng dụng cá nhân. RTSP hỗ trợ frame level thông qua SMPTE cho phép chỉnh sửa từ xa.
Proxy và firewall tiện lợi. Giao thức nên sẵn sàng sử lý bởi cả hai ứng dụng và lớp giao vận. Một firewall có thể không hiểu cách setup và mở tiện ích cho UDP media.
Mở rộng giao thức RTSP
Không phải tất cả các server đều có một chức năng giống nhau, các server media cần thiết sẽ được hỗ trợ các yêu cầu khác nhau. Ví dụ:
Một server có thể chỉ có khả năng Playback theo cách đó thì không cần hỗ trợ yêu cầu record.
Một server có thể không có khả năng tìm kiếm nếu nó chỉ hỗ trợ các sự kiện sống.
Một số server có thể không hỗ trợ các thông số luồng và theo cách đó nó không hỗ trợ get-parameter và set-parameter.
Giao thức RTSP có thể mở rộng ra theo ba cách, danh sách ở đây đưa ra hợp lệ theo việc thay đổi độ lớn được hỗ trợ:
Hiện nay phương pháp có thể mở rộng với các thông số mới, các thông số dài có thể an toàn khi bỏ qua bằng cách nhận về. Nếu máy client cần phủ định thừa lại ACK khi mà phương pháp mở rộng không được hỗ trợ, một tag tương ứng với phần mở rộng có thể thêm vào theo yêu cầu.
Một phương pháp mới có thể đưa vào .Nếu nhận một bản tin mà không hiểu bản tin yêu cầu gì, nó sẽ trả lời với lỗi 501 (không thể thực hiện) và bên gửi không nên cố thử lại. Một client có thể sử dụng lựa chọn phương pháp để đòi hỏi về cách hỗ trợ bởi server. Các server nên đưa ra một danh sách các phương pháp mà nó hỗ trợ sử dụng.
Một phiên bản mới của giao thức có thể được định nghĩa để cho phép hầu hết tất cả giao diện thay đổi.
Bản tin RTSP
Giao thức RTSP là giao thức cơ bản sử dụng ISO 10646 kí tự đặt trong UTE – 8 encoding. Đường giới hạn bởi CRLF nhưng mà người nhận sẽ nên chuẩn bị để hiểu được CR và LF bằng chính bản thân giới hạn.
Với 10646 kí tự được sắp xếp để tránh sự chồng chéo, nhưng mà nó không xuất hiện các ứng dụng như là US-ASCII đã được sử dụng. Nó được mã hóa có thể sử dụng cho giao thức RTCP. ISO 8859-1 biên dịch trực tiếp vào Unicode với octer cao nhất là không. Bản tin RTSP có thể truyền qua các giao thức thấp hơn lớp giao vận.
Ứng dụng của giao thức RTSP
Công nghệ IPTV là công nghệ đòi hỏi tín hiệu được truyền đi theo thời gian thực. Chính vì vậy mà giao thức RTSP có ý nghĩa rất quan trọng. Giao thức RTSP hộ trợ trong việc truyền tín hiệu multicast để có thể truyền các kênh truyền hình. Để có thể xem được các kênh truyền hình thì tín hiệu nhận được phải theo thời gian thực.
1.6 Kết luận chương I
Chương I đã đưa ra khái niệm IPTV, IPTV là một loại công nghệ truyền hình mới, sử dụng mạng IP hiện thời để phân phối nội dung đến khách hàng. IPTV có nhiều ưu điểm thể hiện ở sự tích hợp đa dịch vụ, tính tương tác cao. Mạng tổng thể IPTV gồm có mạng nội dung, mạng Headend, mạng quản lý, mạng truyền tải, mạng truy nhập và mạng đầu cuối. Các dịch vụ chính mà IPTV cung cấp là truyền hình theo yêu cầu, dịch vụ thông tin, ứng dụng tương tác… IPTV hứa hẹn mang đến cho khách hàng những dịch vụ mang tính giải trí cũng như một kho tài nguyên thông tin mà khách hàng dễ dàng tìm kiếm. Ngoài ra, chương I còn chỉ ra các chức năng của dịch vụ IPTV,các giao thức mạng...
Để tìm hiểu sâu hơn về IPTV ta sẽ đi tìm hiểu cụ thể cách thức phân phối trong mạng và tình hình phát triển cũng như một số giải pháp IPTV phổ biến trên mạng viễn thông hiện nay ở các chương sau.
CHƯƠNG II. PHÂN PHỐI TRONG MẠNG IPTV
Hiện nay IPTV được nhìn nhận như là con đường tốt nhất để phân phối các dịch vụ truyền hình kỹ thuật số cho khách hàng. Bản chất của IPTV là một mạng phân phối tốc độ cao được làm nền móng để phân phối nội dung. Mục đích của mạng này là truyền tải dữ liệu giữa thiết bị khách hàng IPTVCD và trung tâm dữ liệu của các nhà cung cấp