Đồ án: Tìm hiểu kỹ thuật truyền file Multicast - Nguyễn Thị Hằng

Đồ án kỹ thuật truyền file multicast: Tìm hiểu sâu về giao thức, ứng dụng và cách thức hoạt động. Tối ưu hóa hiệu quả truyền tải dữ liệu nhóm.

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

Đồ án tốt nghiệp

2012

60
1
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI MỞ ĐẦU

1. CHƢƠNG 1: TỔNG QUAN VỀ MULTICAST VÀ FTP

1.1. Tổng quan về Multicast

1.2. Cơ chế truyền Multicast

1.3. Điều kiện cần có để truyền Multicast

1.4. Địa chỉ Multicast

1.5. Định tuyến Multicast

1.6. Ứng dụng của Multicast

1.7. Giao thức truyền file FTP

1.7.1. Tổng quan FTP

1.7.2. Các phƣơng thức truyền dữ liệu trong FTP

1.7.3. Ứng dụng của FTP

1.7.4. Ƣu điểm và nhƣợc điểm của FTP

2. CHƢƠNG 2 : UFTP - GIẢI PHÁP TRUYỀN FILE MULTICAST

2.1. Tổng quan UFTP

2.2. Mô tả giao thức UFTP

2.3. Cơ chế làm việc

3. CHƢƠNG 3: XÂY DỰNG CHƢƠNG TRÌNH THỰC NGHIỆM

3.1. Mô tả chƣơng trình

3.2. Thiết kế chƣơng trình

3.3. Kết quả đạt đƣợc

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về Truyền File Multicast Khái niệm và Ưu điểm

Thế kỷ 21 chứng kiến sự bùng nổ của công nghệ thông tin, với nhu cầu trao đổi dữ liệu ngày càng lớn. Trong bối cảnh đó, việc truyền file hiệu quả, đặc biệt là cho nhiều người nhận đồng thời, trở thành một bài toán quan trọng. Multicast, một kỹ thuật truyền dữ liệu "một-tới-nhiều", nổi lên như một giải pháp tiềm năng, giúp tiết kiệm băng thông và giảm tải cho hệ thống mạng. Multicast cho phép gửi một gói tin duy nhất đến một nhóm người nhận thay vì gửi nhiều gói tin riêng lẻ như trong Unicast. Điều này đặc biệt hữu ích trong các ứng dụng như truyền hình trực tuyến, hội nghị truyền hình, phân phối phần mềm, và chia sẻ dữ liệu lớn cho nhiều người dùng. Truyền file multicast khác biệt so với Unicast và Broadcast. Unicast gửi dữ liệu từ một nguồn đến một đích, Broadcast gửi dữ liệu đến tất cả các máy trong mạng, còn Multicast gửi dữ liệu đến một nhóm các máy đã đăng ký tham gia nhóm. Do đó, Multicast nằm giữa hai thái cực này, tối ưu hóa việc sử dụng băng thông và tài nguyên mạng. Các máy nhận lưu lượng Multicast có thể ở bất cứ đâu, không chỉ trên mạng cục bộ. Traffic Multicast thường là một chiều, và các host muốn nhận dữ liệu có thể tham gia hoặc rời khỏi nhóm Multicast bất kỳ lúc nào. Multicast sử dụng giao thức UDP (User Datagram Protocol), một giao thức phi kết nối, thay vì TCP (Transmission Control Protocol). Điều này giúp giảm độ trễ và tăng hiệu suất truyền dữ liệu, mặc dù đòi hỏi các cơ chế đảm bảo độ tin cậy khác. Để triển khai Multicast, cần có một tập hợp các địa chỉ dành cho các nhóm Multicast, một cơ chế để các host có thể tham gia và rời khỏi nhóm, và một giao thức định tuyến cho phép các router phân phối lưu lượng Multicast tới các thành viên của nhóm mà không làm quá tải mạng. Địa chỉ Multicast được gán bằng cách sử dụng địa chỉ lớp D từ 224.0.0.0 đến 239.255.255.255.

1.1. So sánh Multicast với Unicast và Broadcast trong truyền file

Unicast: Gói tin gửi từ một địa chỉ nguồn đến một địa chỉ đích. Router/L3 switch chuyển gói tin bằng cách tìm địa chỉ đích trong bảng định tuyến. L2 switch dựa vào địa chỉ MAC. Broadcast: Gói tin gửi từ một máy nguồn đến một địa chỉ đích broadcast (255.255.255.255 hoặc một phần của địa chỉ subnet). Router/L3 switch không cho phép chuyển dữ liệu Broadcast này. L2 switch phát tán lưu lượng Broadcast ra tất cả các cổng. Multicast: Gói tin gửi từ một địa chỉ nguồn đến một nhóm máy tính. Địa chỉ đích tượng trưng bằng các host muốn nhận traffic này. Router/L3 switch không chuyển gói tin trừ khi cấu hình Multicast routing. L2 switch không nhận biết địa chỉ Multicast đích, phát tán gói tin ra tất cả các cổng ở chế độ mặc định. Như vậy, Multicast dung hòa ưu điểm của cả hai phương pháp, chỉ gửi dữ liệu tới những host cần thiết, giảm tải cho mạng.

1.2. Các giao thức và địa chỉ sử dụng trong truyền Multicast

Để phân biệt traffic Multicast với Unicast/Broadcast, địa chỉ IP lớp D (224.0.0.0 - 239.255.255.255) được sử dụng. Thiết bị mạng lọc nhanh địa chỉ Multicast bằng cách đọc 4 bit bên trái (luôn bằng 1110). Không có subnetting trong địa chỉ lớp D, tạo ra 2^28 địa chỉ nhóm Multicast. Router và Switch kết hợp địa chỉ IP Multicast với địa chỉ MAC bằng một giá trị đặc biệt dành riêng cho địa chỉ MAC của Multicast (bắt đầu bằng 0100.5e). 28 bit sau của địa chỉ IP Multicast được ánh xạ vào 23 bit thấp của địa chỉ MAC bằng giải thuật đơn giản. Tuy nhiên, 5 bit không được chuyển đổi có thể gây ra nhập nhằng, với 32 địa chỉ Multicast khác nhau có thể ánh xạ vào cùng một địa chỉ MAC. Host Multicast cần kiểm tra địa chỉ IP bên trong frame để nhận diện nhóm Multicast.

1.3. Điều kiện cần thiết để triển khai kỹ thuật Multicast thành công

Theo tài liệu gốc, có ba yêu cầu cơ bản để triển khai Multicast trên một mạng: 1. Phải có một tập hợp các địa chỉ dành cho các nhóm Multicast. 2. Phải có một cơ chế trong đó các host có thể tham gia và rời khỏi nhóm. 3. Phải có một giao thức định tuyến cho phép các Router phân phối các lƣu lƣợng Multicast tới các thành viên của nhóm mà không làm quá tải tài nguyên mạng. Điều này đòi hỏi sự phối hợp giữa các thiết bị mạng và các giao thức hoạt động trên chúng.

II. Thách thức và Vấn đề trong Truyền File Multicast Hiện nay

Mặc dù Multicast mang lại nhiều lợi ích, việc triển khai nó không phải lúc nào cũng dễ dàng. Một trong những thách thức lớn nhất là đảm bảo độ tin cậy của việc truyền dữ liệu. Do sử dụng giao thức UDP, truyền file Multicast không có cơ chế đảm bảo gói tin đến đúng thứ tự hoặc không bị mất. Điều này đòi hỏi các giải pháp bổ sung để phát hiện và khắc phục lỗi, chẳng hạn như sử dụng các giao thức ARQ (Automatic Repeat Request) hoặc FEC (Forward Error Correction). Một vấn đề khác là kiểm soát truy cập và bảo mật. Trong môi trường mở, việc ngăn chặn người dùng trái phép tham gia vào các nhóm Multicast và truy cập dữ liệu là rất quan trọng. Các giải pháp bảo mật như mã hóa và xác thực có thể được sử dụng để giải quyết vấn đề này. Khả năng mở rộng cũng là một yếu tố cần xem xét. Khi số lượng người dùng và nhóm Multicast tăng lên, hiệu suất của hệ thống có thể bị ảnh hưởng. Cần có các cơ chế quản lý tài nguyên và định tuyến hiệu quả để đảm bảo hệ thống có thể xử lý lưu lượng lớn mà không bị quá tải. Ngoài ra, việc hỗ trợ Multicast trên các thiết bị mạng không phải lúc nào cũng được đảm bảo. Một số thiết bị cũ có thể không hỗ trợ giao thức này, hoặc yêu cầu cấu hình phức tạp. Điều này có thể gây khó khăn cho việc triển khai Multicast trong các mạng hiện có. Cuối cùng, việc giám sát và quản lý truyền file Multicast cũng là một thách thức. Cần có các công cụ để theo dõi lưu lượng Multicast, phát hiện và khắc phục sự cố, và đảm bảo chất lượng dịch vụ (QoS) cho người dùng.

2.1. Đảm bảo độ tin cậy trong truyền file Multicast UDP

Do sử dụng UDP, truyền file Multicast thiếu các cơ chế đảm bảo độ tin cậy vốn có của TCP. Gói tin có thể bị mất hoặc đến không đúng thứ tự. Để khắc phục điều này, các giao thức ARQ (Automatic Repeat Request) như NAK (Negative Acknowledgment) có thể được sử dụng. Client gửi thông báo NAK cho Server nếu phát hiện gói tin bị thiếu. Server sau đó sẽ gửi lại các gói tin bị mất. Cơ chế này giúp đảm bảo dữ liệu đến đầy đủ và chính xác, nhưng có thể làm tăng độ trễ. FEC (Forward Error Correction) cũng là một giải pháp, trong đó dữ liệu được mã hóa sao cho có thể phục hồi nếu một số gói tin bị mất.

2.2. Kiểm soát truy cập và bảo mật dữ liệu trong Multicast

Để ngăn chặn truy cập trái phép, cần có các cơ chế kiểm soát truy cập và bảo mật. Mã hóa là một giải pháp quan trọng, đảm bảo chỉ những người dùng được phép mới có thể giải mã và đọc dữ liệu. Các giao thức mã hóa như TLS (Transport Layer Security) có thể được sử dụng để mã hóa lưu lượng Multicast. Xác thực cũng quan trọng, đảm bảo chỉ những người dùng đã được xác thực mới có thể tham gia vào nhóm Multicast. Ngoài ra, cần có các chính sách và quy trình quản lý để đảm bảo an ninh và bảo mật cho hệ thống Multicast.

2.3. Khả năng mở rộng và quản lý tài nguyên khi truyền Multicast

Khi số lượng người dùng và nhóm Multicast tăng lên, hệ thống có thể bị quá tải. Cần có các cơ chế quản lý tài nguyên hiệu quả, chẳng hạn như giới hạn băng thông cho mỗi nhóm Multicast, hoặc sử dụng các kỹ thuật nén dữ liệu để giảm lưu lượng. Định tuyến Multicast cũng đóng vai trò quan trọng trong việc đảm bảo khả năng mở rộng. Các giao thức định tuyến như PIM (Protocol Independent Multicast) cần được cấu hình đúng cách để phân phối lưu lượng Multicast một cách hiệu quả.

III. UFTP Giải pháp Truyền File Multicast An toàn và Tin cậy

UFTP (Encrypted UDP based FTP with Multicast) là một giải pháp truyền file multicast được thiết kế để khắc phục những hạn chế của các phương pháp truyền file truyền thống. UFTP cung cấp các tính năng bảo mật, độ tin cậy và hiệu quả, làm cho nó trở thành một lựa chọn hấp dẫn cho các ứng dụng yêu cầu truyền dữ liệu lớn cho nhiều người nhận đồng thời. Theo tài liệu gốc, UFTP là chương trình truyền tập tin được mã hóa theo cơ chế Multicast, được thiết kế an toàn, đáng tin cậy, và rất hiệu quả trong truyền dữ liệu đến nhiều người nhận cùng một lúc. Chương trình mã hóa Multicast dựa trên TLS với phần mở rộng để cho phép nhiều người nhận có thể chia sẻ một khóa chung Ý tưởng chủ đạo là đưa các cơ chế kiểm soát dữ liệu của TCP vào UDP. UFTP sử dụng giao thức UDP để truyền dữ liệu, nhưng bổ sung các cơ chế kiểm soát lỗi và đảm bảo độ tin cậy. Nó cũng cung cấp khả năng mã hóa dữ liệu, bảo vệ chống lại truy cập trái phép. UFTP hỗ trợ nhiều người nhận đồng thời, giúp tiết kiệm băng thông và giảm tải cho hệ thống mạng. Một phiên truyền UFTP bao gồm ba giai đoạn: thông báo/đăng ký, truyền file và hoàn thành/xác nhận. Trong giai đoạn thông báo/đăng ký, server gửi thông báo trên địa chỉ Multicast, client đăng ký và server gửi xác nhận, bao gồm các khóa mã hóa nếu được kích hoạt. Trong giai đoạn truyền file, server chia file thành các khối và phần, gửi dữ liệu và yêu cầu trạng thái từ client để đảm bảo độ tin cậy. Trong giai đoạn hoàn thành/xác nhận, server và client trao đổi thông điệp để kết thúc phiên truyền. UFTP có thể hoạt động trong môi trường không có proxy, hoặc có proxy server/client.

3.1. Tổng quan về giao thức UFTP và các giai đoạn truyền file

UFTP gồm 3 giai đoạn: 1. Thông báo/Đăng ký: Thiết lập phiên truyền file Multicast và thương lượng thông số mã hóa. Server gửi thông báo trên địa chỉ Multicast, client đăng ký, server gửi xác nhận (bao gồm khóa mã hóa nếu kích hoạt). 2. Truyền file: Server gửi tin nhắn mô tả file, chia file thành khối và phần. Gói dữ liệu được gửi theo tỷ lệ do người dùng quy định. Client gửi lại thông báo trạng thái chứa danh sách NAKs (Negative Acknowledgments) cho các khối bị lỗi. Server gửi lại dữ liệu cho đến khi tất cả client gửi thông báo hoàn thành hoặc hết thời gian chờ. 3. Hoàn thành/Xác nhận: Kết thúc phiên làm việc. Bắt đầu với thông điệp từ thông báo kết thúc phiên. Client trả lời với thông điệp hoàn thành. Server gửi thông điệp xác nhận với mỗi thông điệp hoàn thành.

3.2. Cơ chế mã hóa và bảo mật dữ liệu trong UFTP

UFTP sử dụng mã hóa dựa trên TLS (Transport Layer Security) với phần mở rộng cho phép nhiều người nhận chia sẻ một khóa chung. Điều này giúp bảo vệ dữ liệu khỏi truy cập trái phép trong quá trình truyền. Các khóa mã hóa được trao đổi trong giai đoạn thông báo/đăng ký. Server gửi khóa mã hóa cho client, và client xác nhận việc nhận khóa. UFTP cũng hỗ trợ chữ ký số, giúp xác thực nguồn gốc của dữ liệu và đảm bảo tính toàn vẹn của dữ liệu.

3.3. Cách UFTP xử lý lỗi và đảm bảo độ tin cậy của truyền file

UFTP sử dụng cơ chế NAK (Negative Acknowledgment) để phát hiện và khắc phục lỗi. Khi client phát hiện gói tin bị thiếu hoặc lỗi, nó sẽ gửi thông báo NAK cho server. Server sau đó sẽ gửi lại các gói tin bị thiếu hoặc lỗi. Cơ chế này giúp đảm bảo dữ liệu đến đầy đủ và chính xác. UFTP cũng hỗ trợ cơ chế thời gian chờ (timeout), trong đó server sẽ ngừng truyền dữ liệu nếu không nhận được phản hồi từ client trong một khoảng thời gian nhất định. Điều này giúp ngăn chặn tình trạng server tiếp tục truyền dữ liệu cho các client đã ngừng hoạt động.

IV. Ứng dụng Thực tiễn và Triển vọng của Kỹ thuật Multicast

Truyền file Multicast và các giải pháp như UFTP có nhiều ứng dụng tiềm năng trong thực tế. Một trong những ứng dụng quan trọng nhất là phân phối nội dung đa phương tiện, chẳng hạn như truyền hình trực tuyến, video theo yêu cầu và phát thanh trực tiếp. Multicast cho phép truyền nội dung đến hàng ngàn hoặc hàng triệu người dùng đồng thời mà không làm quá tải hệ thống mạng. Một ứng dụng khác là phân phối phần mềm và bản cập nhật. Các tổ chức có thể sử dụng Multicast để triển khai phần mềm và bản cập nhật cho nhiều máy tính đồng thời, giảm thời gian và chi phí triển khai. Hội nghị truyền hình và cộng tác trực tuyến cũng là những lĩnh vực hưởng lợi từ Multicast. Multicast cho phép truyền âm thanh và video từ nhiều nguồn đến nhiều đích đồng thời, tạo điều kiện cho các cuộc họp và hội thảo trực tuyến hiệu quả. Ngoài ra, Multicast có thể được sử dụng trong các ứng dụng giám sát và an ninh, chẳng hạn như truyền video từ camera an ninh đến trung tâm điều khiển. Multicast cũng có thể được sử dụng trong các ứng dụng khoa học và nghiên cứu, chẳng hạn như phân phối dữ liệu từ các cảm biến và thiết bị đo lường đến các nhà khoa học và nhà nghiên cứu. Với sự phát triển của Internet of Things (IoT) và các ứng dụng yêu cầu truyền dữ liệu lớn cho nhiều thiết bị, Multicast dự kiến sẽ đóng vai trò ngày càng quan trọng trong tương lai.

4.1. Phân phối nội dung đa phương tiện video âm thanh bằng Multicast

Multicast là lựa chọn lý tưởng cho phân phối nội dung đa phương tiện vì nó cho phép truyền dữ liệu đến nhiều người dùng đồng thời mà không làm tăng đáng kể lưu lượng mạng. Các ứng dụng như truyền hình trực tuyến, video theo yêu cầu và phát thanh trực tiếp có thể tận dụng Multicast để cung cấp dịch vụ cho một lượng lớn người dùng với chi phí thấp.

4.2. Cập nhật phần mềm và hệ điều hành cho nhiều máy tính đồng thời

Việc cập nhật phần mềm và hệ điều hành cho nhiều máy tính trong một tổ chức có thể tốn thời gian và tài nguyên. Multicast cho phép triển khai các bản cập nhật đồng thời đến nhiều máy tính, giảm thời gian và chi phí triển khai. Điều này đặc biệt hữu ích cho các tổ chức lớn với hàng ngàn máy tính.

4.3. Hội nghị truyền hình và cộng tác trực tuyến hiệu quả hơn với Multicast

Multicast cho phép truyền âm thanh và video từ nhiều nguồn đến nhiều đích đồng thời, tạo điều kiện cho các cuộc họp và hội thảo trực tuyến hiệu quả. Với Multicast, người dùng có thể tham gia vào các cuộc họp trực tuyến mà không lo lắng về chất lượng kết nối hoặc băng thông.

V. FTP và Multicast So sánh và khi nào sử dụng kỹ thuật nào

FTP (File Transfer Protocol) là một giao thức truyền file truyền thống, sử dụng giao thức TCP. Multicast, ngược lại, sử dụng UDP để truyền dữ liệu đến một nhóm người nhận. Mỗi giao thức có những ưu điểm và nhược điểm riêng, và lựa chọn giao thức nào phụ thuộc vào yêu cầu cụ thể của ứng dụng. FTP phù hợp cho truyền file giữa hai máy tính, trong khi Multicast phù hợp cho truyền file đến nhiều người nhận đồng thời. FTP đảm bảo độ tin cậy cao, nhưng có thể tốn băng thông khi truyền file đến nhiều người nhận. Multicast tiết kiệm băng thông, nhưng đòi hỏi các cơ chế bổ sung để đảm bảo độ tin cậy. Theo tài liệu gốc, FTP là cách nhanh và hiệu quả của việc vận chuyển số lượng lớn dữ liệu qua Internet, có thể sao lưu tự động và cho phép kiểm soát chuyển giao. Tuy nhiên, FTP sử dụng TCP nên chỉ có thể truyền theo cơ chế Unicast, dẫn đến tốn tài nguyên và thời gian truyền lâu khi cần truyền 1- nhiều hoặc nhiều - nhiều. Vì vậy, khi cần truyền file theo kiểu 1- nhiều hoặc nhiều – nhiều cần có một giải pháp khác, đó là Multicast.

5.1. Ưu và nhược điểm của FTP so với Multicast

FTP: Ưu điểm: Độ tin cậy cao (sử dụng TCP), có thể sao lưu tự động, kiểm soát chuyển giao. Nhược điểm: Tốn băng thông khi truyền đến nhiều người nhận (Unicast). Multicast: Ưu điểm: Tiết kiệm băng thông khi truyền đến nhiều người nhận. Nhược điểm: Cần cơ chế bổ sung để đảm bảo độ tin cậy (sử dụng UDP).

5.2. Các trường hợp sử dụng phù hợp cho FTP

Truyền file giữa hai máy tính, yêu cầu độ tin cậy cao, không yêu cầu truyền đến nhiều người nhận đồng thời.

5.3. Các trường hợp sử dụng phù hợp cho Multicast

Truyền file đến nhiều người nhận đồng thời, yêu cầu tiết kiệm băng thông, có thể chấp nhận các cơ chế bổ sung để đảm bảo độ tin cậy.

VI. Kết luận và Tương lai của Kỹ thuật Truyền File Multicast

Truyền file Multicast là một kỹ thuật hứa hẹn mang lại nhiều lợi ích cho các ứng dụng yêu cầu truyền dữ liệu lớn cho nhiều người nhận đồng thời. Các giải pháp như UFTP cung cấp các tính năng bảo mật, độ tin cậy và hiệu quả, làm cho Multicast trở thành một lựa chọn hấp dẫn cho nhiều tổ chức và ứng dụng. Với sự phát triển của Internet of Things (IoT) và các ứng dụng yêu cầu truyền dữ liệu đến hàng tỷ thiết bị, Multicast dự kiến sẽ đóng vai trò ngày càng quan trọng trong tương lai. Tuy nhiên, vẫn còn nhiều thách thức cần vượt qua để Multicast có thể được triển khai rộng rãi. Các thách thức này bao gồm đảm bảo độ tin cậy, kiểm soát truy cập và bảo mật, và khả năng mở rộng. Các nghiên cứu và phát triển trong lĩnh vực Multicast đang tập trung vào việc giải quyết các thách thức này và cải thiện hiệu suất và tính linh hoạt của Multicast. Trong tương lai, chúng ta có thể kỳ vọng sẽ thấy Multicast được sử dụng rộng rãi hơn trong nhiều lĩnh vực khác nhau, từ phân phối nội dung đa phương tiện đến IoT và các ứng dụng khoa học và nghiên cứu.

6.1. Tóm tắt các ưu điểm và thách thức của Multicast

Ưu điểm: Tiết kiệm băng thông, giảm tải cho hệ thống mạng, hỗ trợ nhiều người nhận đồng thời. Thách thức: Đảm bảo độ tin cậy, kiểm soát truy cập và bảo mật, khả năng mở rộng.

6.2. Hướng nghiên cứu và phát triển trong lĩnh vực Multicast

Các nghiên cứu và phát triển trong lĩnh vực Multicast đang tập trung vào việc giải quyết các thách thức và cải thiện hiệu suất và tính linh hoạt của Multicast. Một số hướng nghiên cứu bao gồm phát triển các giao thức ARQ và FEC hiệu quả hơn, cải thiện các cơ chế kiểm soát truy cập và bảo mật, và phát triển các giải pháp định tuyến Multicast có khả năng mở rộng.

6.3. Tiềm năng ứng dụng của Multicast trong tương lai

Multicast có tiềm năng ứng dụng rộng rãi trong nhiều lĩnh vực khác nhau, từ phân phối nội dung đa phương tiện đến IoT và các ứng dụng khoa học và nghiên cứu. Với sự phát triển của công nghệ, chúng ta có thể kỳ vọng sẽ thấy Multicast được sử dụng rộng rãi hơn và mang lại nhiều lợi ích cho xã hội.

22/09/2025
Đồ án tìm hiểu kỹ thuật truyền file multicast

Trích đoạn nội dung tài liệu

LỜI MỞ ĐẦU Thế kỷ 21 đƣợc mệnh danh là thế kỷ của công nghệ thông tin, với sự bùng nổ mạnh mẽ về khoa học công nghệ. Đây là kỷ nguyên của nền văn minh dựa trên cơ sở công nghiệp trí tuệ. Ngày nay, tin học đã trở thành một môn khoa học quan trọng trên thế giới. Sự phát triển mạnh mẽ nhƣ vậy thì công việc lập trình các ứng dụng nhằm phục vụ nhu cầu, lợi ích của con ngƣời trở nên cấp thiết.

Máy tính đã trở thành công cụ đắc lực và không thể thiếu của con ngƣời. Các tổ chức, công ty hay các cơ quan cần phải xây dựng luận văn – báo cáo – tiểu luận chuyên ngành xây dựng hệ thống mạng máy tính cho riêng mình để trao đổi dữ liệu giữa các bộ phận. Dữ liệu đƣợc truyền đi trên mạng phải đảm bảo : dữ liệu đƣợc chuyển tới đích nhanh chóng và chính xác. Hầu hết dữ liệu đƣợc truyền qua mạng là truyền dƣới dạng file.

Trong thời gian gần đây Multicast ngày càng đƣợc chú ý nhiều hơn, chuẩn Multicast hỗ trợ hàng ngàn ngƣời có thể nhận thông tin đồng thời mà không ảnh hƣởng đến băng thông chung. Nếu các thiết bị mạng hỗ trợ Multicast, chỉ cần gửi một gói tin duy nhất vào mạng cho nhiều ngƣời nhận. Nhằm tìm hiểu thấu đáo một trong số các phƣơng pháp truyền file em chọn đề tài “Tìm hiểu kỹ thuật truyền file Multicast. Giải pháp truyền file Multicast –UFTP là giao thức truyền file dựa trên UDP đƣợc mã hóa theo cơ chế Multicast, đƣợc thiết kế an toàn, đáng tin cậy trong việc truyền file đến nhiều ngƣời nhận trong cùng một lúc.

Với lập trình mã hóa Multicast dựa trên TLS với phần mở rộng cho phép nhiều ngƣời nhận có thể chia sẻ một khóa chung Mục tiêu của đồ án là tìm hiểu về Multicast và giao thức UFTP, trên cơ sở đó xây dựng ứng dụng truyền file sử dụng mã nguồn mở UFTP với ngôn ngữ lập trình C#. Đồ án trình bày gồm các chƣơng : Chƣơng 1: Tổng quan về Multicast và FTP. Chƣơng 2: Giải pháp truyền file Multicast. Chƣơng 3 : Xây dựng chƣơng trình thực nghiệm.

Sinh viên :Nguyễn Thị Hằng – Lớp : CT1201 4. Tìm hiểu kỹ thuật truyền File Multicast Đồ án tốt nghiệp DANH SÁCH CÁC TỪ VIẾT TẮT FTP File Transfer Protocol Phƣơng thức truyền file MAC Medium Access Control Address Địa chỉ thiết bị mạng UDP User Datagram Protocol Giao thức truyền vận TCP Transmission Control Protocol Giao thức truyền vận PIM Protocol Independent Multicast Giao thức định tuyến CGMP Cisco Group Membership Protocol Giao thức chuẩn của Cisco ARP Address Resolution Protocol Giao thức tìm địa chỉ OSPF Open Shortest Path First Giao thức định tuyến chuẩn Internet. Giao thức định tuyến dạng link-state NTP Network Time Protocol Giao thức đồng bộ thời gian IGMP Internet Group Management Protocol Giao thức quản lý nhóm Internet IGMP Internet Group Membership Protocol Giao thức hoạt động trên switch để snooping Snooping biết (học) về các cuộc truyền Multicast động. TTL Time To Live Thời gian sống RSA Thuật toán mật mã hóa khóa công khai Sinh viên :Nguyễn Thị Hằng – Lớp : CT1201 5.

Tìm hiểu kỹ thuật truyền File Multicast Đồ án tốt nghiệp CHƢƠNG 1: TỔNG QUAN VỀ MULTICAST VÀ FTP 1. Tổng quan về Multicast 1. Cơ chế truyền Multicast Unicast: Các gói tin đƣợc gửi từ một địa chỉ nguồn đến một địa chỉ đích. Một Router hoặc một thiết bị lớp 3 sẽ chuyển các gói tin bằng cách tìm địa chỉ đích trong bảng định tuyến.

Nếu một thiết bị là L2, nó chỉ cần dựa và địa chỉ MAC. Broadcast: Các gói tin đƣợc gửi từ một máy nguồn đến một địa chỉ đích broadcast. Địa chỉ đích có thể là địa chỉ tất cả các host (255.255) hoặc là một phần của địa chỉ subnet. Một Router hoặc một L3 switch sẽ không cho phép chuyển các dữ liệu Broadcast này.

Một thiết bị L2 sẽ cho phép phát tán lƣu lƣợng Broadcast ra tất cả các cổng của nó. Multicast: Các gói đƣợc gửi từ một địa chỉ nguồn đến một nhóm các máy tính. Địa chỉ đích tƣợng trƣng bằng các host muốn nhận traffic này. Mặc định, một Router hoặc một L3 switch sẽ không chuyển các gói tin này trừ khi phải cấu hình Multicast routing.

Một thiết bị L2 switch không thể nhận biết đƣợc vị trí của địa chỉ Multicast đích. Tất cả các gói sẽ đƣợc phát tán ra tất cả các cổng ở chế độ mặc định. Có hai thái cực đƣợc mô tả ở đây. Cơ chế dùng Unicast thì dữ liệu sẽ đi từ host đến host, broadcast thì traffic sẽ đi đến tất cả các host trên phân đoạn mạng đó.

Cơ chế Multicast sẽ nằm giữa hai thái cực này, trong đó máy nguồn chỉ gửi những gói tin từ một host đến các ngƣời dùng muốn nhận loại lƣu lƣợng đó. Nhóm này gọi là nhóm Multicast. Các máy nhận lƣu lƣợng Multicast có thể nằm ở bất cứ nơi nào chứ không chỉ trên phân đoạn mạng cục bộ. Các traffic dạng Multicast thƣờng là một chiều.

Do có nhiều host nhận cùng một dữ liệu, nên thông thƣờng các gói tin không đƣợc phép gửi ngƣợc về máy nguồn trên cơ chế Multicast. Một host đích sẽ trả traffic ngƣợc về nguồn theo cơ chế Unicast. Cơ chế Multicast cũng sẽ đƣợc truyền theo kiểu phi kết nối. Multicast dùng UDP chứ không dùng TCP.

Các host muốn nhận dữ liệu từ một nguồn Multicast có thể tham gia hoặc rời khỏi một nhóm Multicast ở bất kỳ thời điểm nào. Hơn nữa, một host sẽ quyết định có trở thành Sinh viên :Nguyễn Thị Hằng – Lớp : CT1201 6. Tìm hiểu kỹ thuật truyền File Multicast Đồ án tốt nghiệp thành viên của một hay nhiều nhóm Multicast hay không. Nguyên tắc cần quan tâm là sẽ hoạch định làm thế nào để phân phối các lƣu lƣợng Multicast đến các thành viên của nhóm mà không ảnh hƣởng đến các thành viên ngoài nhóm.

Hình 1: Multicast Transmission Sends a Single Multicast Packet Addressed to All Intended Recipients 1. Điều kiện cần có để truyền Multicast Có ba yêu cầu cơ bản để có thể triển khai Multicast trên một mạng: - Phải có một tập hợp các địa chỉ dành cho các nhóm Multicast. - Phải có một cơ chế trong đó các host có thể tham gia và rời khởi nhóm. - Phải có một giao thức định tuyến cho phép các Router phân phối các lƣu lƣợng Multicast tới các thành viên của nhóm mà không làm quá tải tài nguyên mạng.

Địa chỉ Multicast Các Router và 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 này thực hiện thông qua việc gán địa chỉ IP, bằng cách dùng địa chỉ lớp D từ 224.255 chỉ cho Multicast. Các thiết bị mạng có thể nhanh chóng lọc ra các địa chỉ Multicast bằng cách đọc 4 bit bên trái của một địa chỉ. Bốn bit này của một địa chỉ Multicast luôn luôn bằng 1110.

Không giống nhƣ dãy địa chỉ lớp A, B, và C, địa chỉ lớp D này không có quá trình Subnetting. Vì vậy có đến 228 địa chỉ nhóm Multicast đƣợc trích dẫn ra từ lớp D này. Sinh viên :Nguyễn Thị Hằng – Lớp : CT1201 7. Tìm hiểu kỹ thuật truyền File Multicast Đồ án tốt nghiệp Làm thế nào mà một Router và Switch kết hợp một địa chỉ Multicast của IP với một địa chỉ MAC.

Do không có cơ chế tƣơng đƣơng với cơ chế ARP, một dạng giá trị đặc biệt dành riêng cho địa chỉ MAC của Multicast sẽ đƣợc dùng. Các địa chỉ này bắt đầu bằng 0100. Phần 28 bit sau của địa chỉ IP Multicast sẽ đƣợc ánh xạ vào 23 bit thấp của địa chỉ MAC bằng một giải thuật đơn giản. Hình 2: Chuyển đổi IP sang MAC Hình trên cho thấy cơ chế ánh xạ địa chỉ.

Chỉ có 23 bit cuối của địa chỉ là đƣợc chép từ địa chỉ IP sang địa chỉ MAC. Tuy nhiên chú ý rằng có 5 bit của địa chỉ IP không đƣợc chuyển sang địa chỉ MAC. Khả năng này làm cho nảy sinh một vấn đề là có thể có 32 địa chỉ Multicast khác nhau có thể ánh xạ vào cùng một địa chỉ MAC. Do sự nhập nhằng này, một host Multicast có một vấn đề nhỏ khi nó nhận một Ethernet frame của một địa chỉ Multicast.

Một MAC có thể tƣơng ứng với 32 địa chỉ Multicast khác nhau. Vì vậy, khi một host phải nhận và kiểm tra tất cả các frame có MAC mà nó quan tâm. Sau đó host này phải kiểm tra phần địa chỉ IP bên trong mỗi frame để nhận ra phần địa chỉ của từng nhóm Multicast. Một vài không gian địa chỉ đƣợc dành riêng: Toàn bộ không gian địa chỉ Multicast:224.255 - Địa chỉ link-local: 224.255 đƣợc dùng bởi các giao thức định tuyến.

Router sẽ không chuyển các gói tin có địa chỉ này. Sinh viên :Nguyễn Thị Hằng – Lớp : CT1201 8. Tìm hiểu kỹ thuật truyền File Multicast Đồ án tốt nghiệp - Các địa chỉ bao gồm địa chỉ tất cả các host all-hosts 224.1 - Tất cả các Router 224. - Tất cả các OSPF Routers 224.1 dùng cho giao thức NTP.

Đây là địa chỉ các nhóm cố định vì các địa chỉ này đƣợc định nghĩa trƣớc. - Địa chỉ GLOP trong tầm 233. - Tầm địa chỉ dành cho quản trị (239.255) đƣợc dùng trong các vùng Multicast riêng, giống nhƣ dãy địa chỉ dành riêng trong RFC1918. Địa chỉ này không đƣợc Router giữa các domain nên nó có thể đƣợc dùng lại nhiều lần.

- Địa chỉ toàn cục (224.255) đƣợc dùng bởi bất cứ đối tƣợng nào. Các địa chỉ này có thể đƣợc định tuyến trên Internet, vì vậy địa chỉ này phải duy nhất. IGMP Làm thế nào một Router biết đƣợc các máy cần nghe lƣu lƣợng Multicast? Để nhận lƣu lƣợng Multicast từ một nguồn, cả nguồn và các máy nhận đầu tiên phải gia nhập 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 forward gói tin, trƣờng TTL của IGMP luôn có giá trị bằng 1. IGMPv1 Để tham gia vào một nhóm Multicast, một host sẽ gửi một thông điệp đăng ký tham gia vào nhóm đến Router cục bộ của nó.

Thông điệp này có tên là Membership Sinh viên :Nguyễn Thị Hằng – Lớp : CT1201 9 .

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ