MỤC LỤC LỜI NÓI ĐẦU 1 Chương 1 TỔNG QUAN VỀ MULTICAST 2 1 1 Giới thiệu chung về IP Multicast 2 1 2 Các công nghệ Multicast 2 1 3 Cây phân phối Multicast 3 1 4 Địa chỉ Multicast 3 1 5 Giao thức quản lí.
MỤC LỤC LỜI NÓI ĐẦU………………………………………………………………….1 LỜI NÓI ĐẦU Với bùng nổ công nghệ thông tin, mạng internet ứng dụng mạng ngày trở nên thông dụng, nhu cầu chuyển lượng lớn thông tin đến nhiều nơi thời gian cần thiết Đối với ứng dụng yêu cầu phải thường xuyên gửi liệu từ điểm đến tập hợp điểm phương pháp truyền liệu unicast - thơng tin gửi từ điểm đến điểm khác, khơng cịn hiệu Trong trường hợp này, ứng dụng sử dụng unicast phải đóng gói liệu nhiều lần gửi chúng tới điểm đích Để đáp ứng yêu cầu trên, sử dụng phương pháp truyền liệu broadcast, nhiên thông tin gửi từ điểm đến tất điểm mạng Chúng ta thấy rằng, hai phương pháp gây nên lãng phí tài nguyên mạng Để khắc phục nhược điểm trên, ta nên sử dụng phương pháp multicast tiết kiệm băng thông mạng cách đáng kể cải thiện tốc độ truyền liệu liệu chuyển tới đích nhanh chóng xác Trong thời gian gần multicast ngày ý nhiều hơn, chuẩn multicast hỗ trợ hàng nghìn người nhận thơng tin đồng thời mà không ảnh hưởng đến băng thông chung Multicast sử dụng nhiều lĩnh vực ứng dụng mạng, bao gồm dịch vụ truyền hình, hội thảo, trình diễn báo cáo, truyền phát thơng tin Multicast phương pháp truyền liệu từ điểm tới nhiều điểm, nguồn gửi gửi lưu lượng tới nhóm nguồn nhận thơng qua địa nhóm multicast Trong phương pháp multicast có giao thức cho phép máy tính gia nhập vào nhóm để nhận liệu hay rời bỏ nhóm cách dễ dàng, giao thức định tuyến xây dựng cho phép ứng dụng gửi liệu cách hiệu mạng Chương TỔNG QUAN VỀ MULTICAST 1.1 Giới thiệu chung IP Multicast Multicast thuật ngữ sử dụng để mô tả cách thức truyền tin gửi từ nhiều điểm đến tập hợp điểm khác, khác với truyền tin Unicast từ điểm đến điểm truyền tin Broadcast từ điểm tới tất host mạng Một địa Multicast cho phép phân phối liệu tới tập hợp host cấu thành viên nhóm Multicast mạng phân tán khác Đây phương pháp truyền dẫn đa điểm, host có nhu cầu nhận liệu tham gia vào nhóm Điều hạn chế tối đa lãng phí băng thơng mạng, cịn nhờ chế gửi gói liệu Multicast mà băng thơng tiết kiệm triệt để (trình bày phần sau) - IP Multicast: IP Multicast chuẩn mở IETF dùng để truyền dẫn gói liệu IP từ nguồn đến nhiều đích mạng LAN hay WAN Các host tham gia vào nhóm Multicast ứng dụng gửi thơng tin cho địa nhóm Kĩ thuật Multicast đánh địa gói địa nhóm thay địa người nhận Thơng tin gửi đến điểm muốn nhận lưu lượng - Multicast lớp: Multicast cài đặt hai lớp datalink network Tại lớp data-link giao thức Ethernet, FDDI, token ring hỗ trợ địa Multicast trường mở rộng Multicast lớp data-link giới hạn ứng ụng mạng LAN Tuy nhiên, multicast sử dụng lớp network ứng dụng multicast mở rộng khỏi mạng LAN phát triển Internet bao gồm môi trường truyền khác cấu trúc mạng khác Multicast thực lớp lí sau: + Q trình chuyển đổi địa ISO/OSI Layer 3-to-Layer + Quá trình chuyển đổi địa ISO/OSI Layer 3-to-Layer - Multicast cịn hỗ trợ q trình định tuyến thơng qua liên lạc router với Có số chuẩn cho việc truyền multicast sau: + RFC 1075 định nghĩa Distance Vector Multicast Routing Protocol (DVMRP) + RFC 1584 định nghĩa giao thức Multicast Open Shortest Path First (MOSPF), mở rộng OSPF hỗ trợ IP Multicast + RFC 2117 định nghĩa giao thức Protocol Independent MulticastSparse Mode (PIM-SM) + Protocol Independent Multicast-Dense Mode (PIM-DM) xây dựng cho Internet 1.2 Các công nghệ Multicast - Công nghệ peer to peer: Giao thức Peer-to-peer (P2P) xếp để máy tính máy chủ, streaming luồng liệu Hoạt động giao thức chủ yếu dựa vào khả tính tốn băng thơng máy tham gia không tập trung vào số nhỏ máy chủ trung tâm mạng thông thường, tất máy tham gia đóng vai trị đồng thời máy khách máy chủ máy khác mạng Các máy tham gia đóng góp tài ngun, bao gồm băng thơng, lưu trữ, khả tính tốn Tuy nhiên, Một nhược điểm khác hệ thống khơng có định hướng, yêu cầu tìm kiếm thường chuyển cho số lượng lớn máy mạng làm tiêu tốn lượng lớn băng thơng mạng, làm tăng vấn đề kỹ thuật, hiệu suất, chất lượng - Central sever: Hệ thống dùng thiết bị mạng để điều khiển tồn hoạt động nhóm multicast, gọi central Server Một client muốn kết nối vào nhóm phải xin quyền từ central server Nếu central server từ chối cho client truy cập nhóm khơng gói tin chuyển tiếp tới + Lưu ý: hệ thống nhóm multicast theo cơng nghệ central server khơng hỗ trợ IP Hiện có mạng ATM có hỗ trợ nhóm multicast 1.3 Cây phân phối Multicast Các router hỗ trợ Multicast tạo phân phối để quản lý đường lưu lượng IP Multicast đến tất máy nhận.hai loại phân phối nguồn (source tree) chia sẻ (shared tree) - Source tree + Là dạng phân phối đơn giản với gốc nguồn liệu multicast nhánh đường dẫn tới máy nhận liệu Do loại sử dụng dường ngắn nên cịn có tên SPT ( shortest path tree) + Giải pháp sử dụng source tree có ưu điểm tạo đường dẫn tối ưu nguồn liệu giảm thiểu trễ truyền liệu Multicast Tuy nhiên router phải trì thơng tin đường dẫn cho nguồn Do khơng gian để lưu trữ bảng định tuyến lớn - Shared tree + Khơng có gốc nguồn nguồn sử dụng gốc chung điểm mạng Gốc Shared tree gọi điểm hẹn (RP,Rendezvous point) + Giải pháp sử dụng shared không gặp phải vấn đề nhớ cần thiết cho bảng định tuyến số trường hợp cụ thể đường dẫn nguồn đích khơng tối ưu gây trễ trình phân phát liệu 1.4 Địa Multicast Các ứng dụng multicast luôn dùng địa multicast Địa multicast tượng trưng cho ứng dụng multicast gọi nhóm Khơng giống địa unicast (một địa tượng trưng cho host), địa multicast dùng địa đích gói tin IP gói tin mang traffic cho ứng dụng multicast Ví dụ, gói multicast mang địa đích 225.5.5.5, điều có ý nghĩa “Tơi mang traffic cho ứng dụng multicast có địa nhóm 225.5.5.5, bạn có muốn dùng khơng?” Một địa multicast khơng gán đến thiết bị mạng, khơng dùng địa nguồn Một địa nguồn gói multicast giống gói tin unicast, ln dùng địa unicast Các router switch phải có phương thức để phân biệt traffic dạng multicast với dạng unicast hay broadcast Điều thực thông qua việc gán địa IP, cách dùng địa lớp D từ 224.0.0.0 đến 239.255.255.255 cho multicast Các thiết bị mạng nhanh chóng lọc địa multicast cách đọc bit bên trái địa Bốn bit địa multicast luôn 1110 Không giống dãy địa lớp A,B C, địa lớp D khơng có q trình subnetting Vì có đến lũy thừa 28 địa nhóm multicast trích dẫn từ lớp D Các địa multicast tượng trưng nhóm, khơng tượng trưng cho host - Ánh xạ địa IP multicast sang địa MAC: Làm mà router switch kết hợp địa multicast IP với địa MAC Việc gán địa multicast vào nhóm L3 sang nhóm multicast thường tự động tạo địa multicast lớp Do khơng có chế tương đương với chế ARP, dạng giá trị đặc biệt dành riêng cho địa MAC multicast dùng Các địa bắt đầu 0100.5e Phần 28 bit sau địa multicast IP ánh xạ vào 23bit thấp địa MAC giải thuật đơn giản Địa MAC hình thành cách dùng dạng OUI 01005E, sau giá trị sau 23 bits địa L3 multicast Chỉ có 23 bit cuối địa chép từ địa IP sang địa MAC Tuy nhiên ý có bit địa IP khơng chuyển sang địa MAC Khả làm cho nảy sinh vấn đề có 32 địa multicast khác ánh xạ vào địa MAC Do nhập nhằng này, host multicast có vấn đề nhỏ nhận Ethernet frame địa multicast Một MAC tương ứng với 32 địa multicast khác Vì vậy, host phải nhận kiểm tra tất frame có MAC mà quan tâm Sau host phải kiểm tra phần địa IP bên frame để nhận phần địa nhóm multicast - Tiến trình chuyển đổi địa Multicast Để hiểu tiến trình chuyển đổi dùng bước sau: + Bước 1: Chuyển đổi địa IP sang dạng nhị phân Lưu ý 4bit luôn địa 1110 cho địa multicast + Bước 2: Thay bốn bit 1110 địa IP với ký tự (24bits) 01-00-5E địa bắt đầu tổng số 12 ký tự dạng thập lục phân (48bits) địa multicast MAC + Bước 3: Thay 5bit dạng địa IP vớI bit không gian địa MAC + Bước 4: Chép 23 bit cuối địa IP dạng nhị phân vào 23 bit cuối địa multicast + Bước 5: Chuyển đổi 24bit cuối địa multicast từ dạng nhị phân sang dạng số thập lục phân + Bước 6: Kết hợp sáu chữ số hexa 01-00-5E với sáu chữ số hexa vừa tính bước để hình thành địa multicast đầy đủ Theo cách thức nêu trên, địa 238.10.24.5 sinh địa MAC 0x01-00-5E-0A-18-05 giống kết địa 228.10.24.5 IETF khả hai ứng dụng multicast LAN tạo địa MAC thấp Nếu tình cờ điều xảy ra, gói tin từ ứng dụng multicasat khác phân biệt địa lớp Người quản trị nên cẩn thận chọn lựa địa multicast, tránh việc tạo địa MAC tương tự 1.5 Giao thức quản lí nhóm internet (IGMP) Internet Group Management Protocol chế truyền thông trạm router gắn trực tiếp với mạng Router sử dụng IGMP để xác định có hay khơng có thành viên nhóm multicast mạng Nếu có thành viên nhóm, router tham gia vào nhóm multicast chuyển tiếp liệu multicast đến trạm nhóm Hai mục đích quan trọng IGMP là: - Thơng báo cho router multicast có máy muốn nhận multicast traffic nhóm cụ thể - Thơng báo cho router có máy muốn rời nhóm multicast (nói cách khác, có 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 để trì thơng tin cho cổng router nhóm multicast router cần phải chuyển host muốn nhận Trước host nhận multicast traffic nào, ứng dụng multicast phải cài đặt chạy host Sau host tham gia vào nhóm, phần mềm tính tốn địa multicast sau card mạng bắt đầu lắng nghe địa multicast MAC Trước host người dùng muốn tham gia vào nhóm, người dùng cần phải biết nhóm tồn làm để tham gia vào nhóm Đối với ứng dụng mức doanh nghiệp, người dùng cần đơn giản nhấp vào link trang web địa multicast cấu hình trước client Ví dụ, người dùng u cầu để log vào máy chủ xác thực tên người dùng Nếu tên người dùng xác thực, ứng dụng multicast tự động cài PC người dùng, nghĩa 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 cần đóng ứng dụng multicast để rời khỏi nhóm Đối với chế multicast, người dùng cần phải tìm ứng dụng họ muốn chạy, địa multicast dùng ứng dụng Làm router biết máy cần nghe multicast traffic? Để nhận multicast traffic từ nguồn, nguồn máy nhận phải gia nhập (join) vào nhóm multicast Nhóm xác định thông qua địa multicast Một host tham gia vào nhóm multicast cách gửi yêu cầu đến router gần Tác vụ thực thông qua giao thức IGMP - IGMPv1 IGMPv1 định nghĩa RFC1112 Cứ 60 giây, router phân đoạn mạng gửi truy vấn đến tất host để kiểm tra xem host có cịn quan tâm nhận multicast traffic không? Router gọi router truy vấn IGMPv1 Querier chức mời host tham gia vào nhóm Nếu host muốn tham gia vào nhóm, muốn tiếp tục nhận traffic từ nhóm mà tham gia, phải trả lời lại thơng điệp membership-report Các host tham gia vào nhóm multicast thời điểm Tuy nhiên IGMPv1 chế phép host rời khỏi nhóm host khơng cịn quan tâm đến nội dung nhóm multicast Thay vào đó, router kết luận cổng giao tiếp bó khơng cịn thuộc nhóm multicast router không nhận thông điệp membershipreport ba chu kỳ truy vấn liên tiếp Điều có nghĩa là, chế độ mặc định, lưu lượng multicast gửi vào phân đoạn mạng ba chu kỳ truy vấn liên tiếp sau tất thành viên nhóm khơng cịn lắng nghe multicast traffic Ngồi ra, router khơng có giữ danh sách đầy đủ máy thành viên cho nhóm multicast Thay vào đó, cần phải lưu nhóm multicast tồn cổng Để tham gia vào nhóm multicast, host gửi thơng điệp đăng ký tham gia vào nhóm đến router cục Thơng điệp có tên Membership Report IGMP Thông điệp thông báo cho router địa nhóm multicast mà host muốn tham gia vào Địa multicast tượng trưng cho tất máy 224.0.0.1 dùng địa đích Trong thơng điệp có chứa địa nhóm multicast - IGMPv2 Phiên IGMPv2 giới thiệu vài khác biệt so với phiên Các gói tin truy vấn gọi General Queries Các gói gửi tới địa all-hosts tới nhóm cụ thể Một cải tiến khác host phép rời khỏi nhóm Khi host định rời khỏi nhóm tham gia, gửi thơng điệp LeaveGroup đến địa all-router 224.0.0.2 Tất router phân đoạn mạng nội lưu ý thông điệp router truy vấn tiếp tục trình Router trả lời thông điệp thông điệp truy cập gửi theo nhóm Thơng điệp hỏi có cịn host muốn nhận traffic cho nhóm không? Bất host phải trả lời lại thông điệp membership report Nếu khác đi, router kết luận cách an tồn khơng cần thiết chuyển traffic cho nhóm phân đoạn mạng Khoảng thời gian mặc định phút Một nguyên nhân IGMPv2 phát triển cung cấp chế rời khỏi nhóm tốt IGMPv2 có thêm số tính mới: + Group-specific Query: cho phép router gửi truy vấn cho nhóm cụ thể thay cho tất nhóm + Maximum response Time: Một trường mớI gói tin truy vấn, cho phép hiệu chỉnh khoảng thời gian cho thông điệp Host membership report Đặc điểm hữu ích số lớn nhóm tồn subnet bạn muốn giảm số thông điệp trả lời cách kéo dài thông điệp trả lời khoảng thời gian dài + Leave group message: cho phép host thông báo cho router host muốn rời khỏi nhóm + Bầu chọn router truy vấn: cung cấp chế cho phép bầu chọn router gửi thơng điệp truy vấn có nhiều router kết nối vào subnet Thông điệp Membership report gửi host muốn tham gia nhóm Thỉnh thoảng, thơng điệp loại dùng để trả lời cho loại thông điệp truy vấn query từ router Khi host muốn tham gia nhóm, khơng chờ gói tin query từ router Thay vào đó, gửi membership report Địa đích membership report địa đích nhóm Để đảm bảo router nhận thông điệp này, host gửi vài thông điệp, cách 10 giây - IGMPv3 Tháng 10 năm 2002, RFC3376 định nghĩa đặc tả cho IGMPv3 IGMPv3 phiên cải tiến giao thức IGMP giao thức phức tạp Để dùng đặc điểm IGMP, router trạm cuối phải cập nhật, hệ điều hành máy trạm phải thay đổi ứng dụng multicast phải thiết kế viết lại.Ở thời điểm tại, có ứng dụng IGMPv3 có sẵn Phần tóm tắt đặc điểm chủ yếu IGMPv3 Trong IGMPv1 IGMPv2, host tham gia vào nhóm, router truyền traffic cho nhóm vào phân đoạn mạng bất chấp địa nguồn gói tin Ví dụ, giả sử có buổi hội thảo đa phương tiện diễn Một thành viên nhóm định phá hỏng phiên hội thảo cách gửi số liệu nhiễu cách nói chuyện hay gửi nhạc cho thành viên nhóm Mặc dù ứng dụng multimedia cho phép người dùng làm im lặng thành viên khác, ứng dụng không làm dừng traffic không mong muốn phân phối đến host Nếu nhóm hacker định phát tán mạng công ty liệu băng thông cao dùng địa nhóm multicast mà cơng ty dùng, tạo kiểu cơng từ chối dịch vụ Cả IGMPv1 IGMPv2 khơng có chế để ngăn ngừa kiểu công IGMPv3 cho phép host lọc traffic vào dựa địa IP nguồn thông qua tính gọi multicast theo nguồn (Source Specific Multicast –SSM) IGMPv3 cho phép host định traffic xuất phát từ nguồn cụ thể nhận từ tất ngoại trừ từ nguồn Chương CÁC GIẢI THUẬT VÀ GIAO THỨC ĐỊNH TUYẾN 2.1 Giải thuật Flooding - Đặc điểm: + Mỗi nút gửi gói tin nhận tất nút trừ nút mà từ nhận gói tin Nút vừa nút nhận vừa nút gửi + Giải thuật có thêm chế chống lặp, chống vận chuyển vòng tròn, chế hết hạn… - Khi router nhận gói multicast, kiểm tra xem gói tin nhận trước chưa + Nếu lần đầu tiên, router gửi gói tin đến tất cổng nó, ngoại trừ cổng mà gửi gói tin đến + Nếu gói tin nhận trước đó, router loại bỏ gói tin Bằng cách này, chắn tất router nhận gói tin Hình 2.1 Giải thuật Flooding * Chú thích: : Soure; : Router; : Nhánh có tham gia vào nhóm; : Nhánh khơng tham gia vào nhóm; : Đường chuyển gói nhận; : Đường gói bị loại bỏ 2.2 Reverse Path Forwarding – RDF Các router thường phải thực phép kiểm tra tất gói multicast mà nhận RPF (kiểm tra đường dẫn ngược) công cụ để đảm bảo gói tin khơng bị đưa ngược trở multicast vị trí Hầu hết phương pháp định tuyến multicast sử dụng chuyển đường dẫn ngược chế kiểm tra để định chuyển tiếp hay loại bỏ gói tin Đối với router sử dụng giao thức PIM (Protocol Independent Multicast) phải tìm địa nguồn bảng định tuyến unicast Router khơng thể nhận gói multicast sau chuyển sau tất cổng mà khơng gây vịng lặp Để ngăn ngừa lặp, router khơng chuyển gói multicast cổng mà nhận Các multicast router dùng phép kiểm tra gọi RPF để ngăn ngừa lặp Phép kiểm tra thêm vào số bước hoạt động router Xem địa nguồn IP gói multicast Nếu có tuyến đường với địa nguồn trên, kiểm tra cổng định tuyến xem có cổng mà router nhận gói tin Nếu đúng, gói tin vượt qua phép kiểm tra RPD Nếu cổng nhận gói tin khác với cổng bảng định tuyến, gói tin khơng nhân khơng truyền Quá trình kiểm tra thể biện theo bước: - Khi gói tin nhận cổng router, địa nguồn gói kiểm tra (ví dụ cổng S1 router, lúc địa nguồn Source 151.10.3.21 kiểm tra) - Sau đó, router so sánh địa nguồn với entry bảng định tuyến unicast - Nếu cột out-going interface (danh sách cổng gửi đi) bảng định tuyến có interface cổng nhận multicast, gói multicast xử lý chuyển nhánh Hình 2.2 Mơ hình kiểm tra RDF thành công - Nếu cổng không so trùng, điều có nghĩa có đưa gói tin vào vị trí khơng mong đợi, chuyển gói tin ngược root Gói tin lúc bị loại bỏ Hình 2.3 Mơ hình kiểm tra RDF thất bại 2.3 Giải thuật Reverse Path Multicast Giải thât RPM cải tiến giải thuật RPB TRPB RPB xây dựng phân phối gồm: - Nhánh mạng chứa thành viên nhóm multicast (Artive Branch) - Những router đường ngăn đến nhánh mạng chứa thành viên nhóm multilcast Gói multicast gửi theo giải thuật TRPB Những router khơng có liên kết với router TRPB gọi router Nếu router nhận gói tin khơng có nhóm thành viên nhánh mạng, gửi thơng điệp “Prune” ngược router mà nhận gói tin Thơng điệp “Prune” thơng báo cho router trước (upstream) khơng nên gởi gói tin đường này, router upstream phải lưu lại thông điệp “Prune” Nếu routerupstream nhân thông điệp từ tất router TRPB, lại gửi thơng điệp prune router cha TRPB cho biết gói tin khơng cần gửi tới Những thơng điệp “Prune” xén bớt TRPB ban đầu kết gói multicast truyền đến đường đến nút đích (nhóm thành viên) Hình 2.4 Giải thuật Reverse Path Multicast Nhóm thành viên mơ hình mạng thay đổi theo lần xén bớt phân phối Do đó, giải thuật RPM thơng tin prune router bỏ theo chu kỳ gói multicast gởi đến tất router Đây mặt hạn chế giải thuật RPM Cần không gian nhớ tương đối để lưu thông tin gói tin điểu trở ngạy khác làm cho giải thuật không mở rộng (và khơng phù hợp với mơ hình mạng lớn) 2.4 Giải thuật Multicast Backbone Multicast internet diễn Multicast Backbone(Mbone) Mbone tập hợp router có khả chuyển tiếp lưu lượng multicast (mrouter) host kết nối với Mbone thuộc phần internet đóng vai trị mạng ảo Trong Mbone nhánh mạng có hỗ trợ multicast kết nối với liên kết ảo “tunnels” Nhờ tunnels mà thông điệp multicast chuyển tiếp đến phần internet không hỗ trợ chuyển tiếp multicast 10 ... 1.4 Địa Multicast Các ứng dụng multicast luôn dùng địa multicast Địa multicast tượng trưng cho ứng dụng multicast cịn gọi nhóm Khơng giống địa unicast (một địa tượng trưng cho host), địa multicast. .. Ethernet, FDDI, token ring hỗ trợ địa Multicast trường mở rộng Multicast lớp data-link giới hạn ứng ụng mạng LAN Tuy nhiên, multicast sử dụng lớp network ứng dụng multicast mở rộng khỏi mạng LAN phát... gia vào nhóm Multicast ứng dụng gửi thông tin cho địa nhóm Kĩ thuật Multicast đánh địa gói địa nhóm thay địa người nhận Thông tin gửi đến điểm muốn nhận lưu lượng - Multicast lớp: Multicast cài