I. Tổng Quan Về Công Nghệ Mới Tại Đại Học Giao Thông
Ngày nay, máy tính và Internet ngày càng phổ biến, trở thành một phần không thể thiếu của cuộc sống hiện đại. Nhu cầu chia sẻ tài nguyên của người dùng mạng không chỉ dừng lại ở việc gửi và nhận những dòng văn bản, những file dữ liệu có sẵn với kích thước nhỏ thì mô hình mạng truyền thống máy phục vụ/máy khách (Client/Server) ngày càng bộc lộ những điểm yếu của mình. Chi phí duy trì hoạt động của các máy phục vụ ngày càng tốn kém theo độ phức tạp và sự mở rộng của mạng. Không chỉ có vậy, hoạt động công nghệ của mạng còn bị phụ thuộc chặt chẽ vào trạng thái của phục vụ: nếu máy phục vụ gặp sự cố thì toàn bộ hệ thống sẽ bị ảnh hưởng. Chính bởi vậy mà mô hình mạng ngang hàng (Peer to Peer hay P2P) với kỳ vọng khắc phục được các điểm yếu của mạng Client/Server đã được bổ sung và ngày càng thu hút sự quan tâm của đông đảo người dùng, các nhà nghiên cứu mạng và ngay cả của các công ty thương mại lớn. Mạng ngang hàng, với các ưu điểm nổi bật như tốn ít chi phí xây dựng cơ sở hạ tầng, cho phép tận dụng được tài nguyên của các máy tham gia vào mạng, giải quyết được vấn đề điểm chết trung tâm của mô hình máy phục vụ/máy khách, đã mở đường cho rất nhiều nghiên cứu và ứng dụng phát triển trên hạ tầng mạng trên mọi lĩnh vực.
1.1. Khái Niệm Cơ Bản Về Mạng Ngang Hàng P2P
Mạng ngang hàng (Peer-to-Peer network), còn gọi là mạng đồng đẳng, là kiến trúc mạng máy tính trong đó hoạt động của mạng chủ yếu dựa vào khả năng tính toán và băng thông của các máy tham gia chứ không tập trung vào một số nhỏ các máy phục vụ trung tâm như các mạng thông thường. Mạng ngang hàng thường được sử dụng để kết nối các máy thông qua một lượng kết nối dạng adhoc. Mạng ngang hàng hiện có rất nhiều ứng dụng. Ứng dụng thường xuyên gặp nhất là chia sẻ tệp tin, tất cả các dạng dữ liệu như văn bản, âm thanh, hình ảnh. Hoặc để truyền dữ liệu thời gian thực như điện thoại VoIP. Một mạng ngang hàng đúng nghĩa không có khái niệm máy chủ và máy khách, nói cách khác, tất cả các máy tham gia đều bình đẳng và được gọi là peer, là một nút mạng đóng vai trò đồng thời là máy khách và máy chủ đối với các máy khác trong mạng.
1.2. Phân Loại Các Mô Hình Mạng Ngang Hàng Phổ Biến
Ta có thể phân loại các mạng ngang hàng hiện nay theo tiêu chí về mức độ tập trung của chúng như sau: Mạng ngang hàng lai ghép: Gọi là mạng ngang hàng lai ghép vì trong mạng vẫn có một máy chủ trung tâm dùng để lưu trữ thông tin của các máy trạm thành viên và trả lời các truy vấn. Tuy nhiên, tài nguyên phân phối của mạng không nằm trên máy chủ đó mà nằm trên chính các máy trạm thành viên. Máy chủ trung tâm chỉ có vai trò lưu trữ thông tin về các máy trạm thành viên và các thông tin tài nguyên được chia sẻ để có thể sẵn sàng cung cấp các thông tin liên quan mỗi khi có một máy trạm gửi yêu cầu tìm kiếm tới. Các mạng ngang hàng lai ghép này có thể sử dụng các trạm định tuyến để xác định địa chỉ IP của các máy trạm. Các đại diện cho mạng ngang hàng lai ghép được biết đến nhiều nhất là Napster và BitTorrent.
1.3. Ứng Dụng Tiêu Biểu Của Mạng Ngang Hàng Trong Thực Tế
Cùng với sự phát triển của kiến trúc mạng ngang hàng, các ứng dụng trên mạng ngang hàng cũng ngày một phát triển và trở lên phổ biến. Các ứng dụng thường xuyên gặp nhất là các ứng dụng chia sẻ file như Napster, Kazaa và Gnutella. Các dịch vụ âm nhạc của Napster cho thấy công nghệ P2P khá tin cậy, cho phép cung cấp và thiết lập một mạng ngang hàng cỡ lớn với năng lực rất mạnh từ các máy tính cá nhân bình thường. Trong khi đó, Freenet lại nhắm tới mục đích xây dựng một nơi lưu trữ không tập trung, nơi mà người dùng có thể đưa lên các thông tin và dữ liệu của bản thân mình lên đó một cách tự do, không giới hạn. Freenet không có các máy chủ trung tâm và thuật toán tìm kiếm được xây dựng sử dụng các bảng băm phân tán.
II. Nghiên Cứu Mô Hình Truyền Thông Đa Phương Tiện P2P
Hầu hết các ứng dụng truyền thông đa phương tiện đều hoạt động dựa trên nguyên lý phân chia khối dữ liệu cần phân bổ thành các mảnh dữ liệu nhỏ hơn, gọi là các chunk (hay piece). Khi đó, thay vì phải chuyển cả khối dữ liệu khổng lồ, các máy tính trong mạng sẽ làm nhiệm vụ chuyển tiếp các mảnh dữ liệu nhỏ hơn tới các máy tính hàng xóm. Giao thức được sử dụng trong các ứng dụng truyền thông đa phương tiện ngang hàng cũng rất phong phú. Một trong số các đề xuất đầu tiên là các giao thức phân bổ luồng truyền thông đa phương tiện dựa trên cấu trúc cây đa phát (multicast distribution tree) của NAGADA, NICE, ZIGZAG. Tuy nhiên các giao thức này chỉ hiệu quả với các mạng máy tính có cấu trúc ổn định; các máy tính trong mạng luôn sẵn có và ít di chuyển trong khi thực tế các mạng ngang hàng đòi hỏi rất ít ràng buộc giữa các máy tính thành viên. Để khắc phục những hạn chế đó, một loạt các giao thức mới đã được đề xuất dựa trên cơ chế kéo đẩy ngang hàng và đã được áp dụng trong các hệ thống như CoolStreaming/DONet, GridMedia và PRIME.
2.1. Giao Thức Kéo Đẩy Ngang Hàng Trong Truyền Thông Đa Phương Tiện
Trong đó CoolStreaming/DONet đi theo hướng tiếp cận kéo thuần túy. Dữ liệu được phân mảnh thành các segment. Các segment được phân phối giữa các máy tính tham gia mạng sử dụng một Buffer Map (BM) để lưu trữ khả năng đáp ứng dữ liệu của các máy tính trong mạng với bit 1 cho biết có khả năng đáp ứng và bit 0 trong trường hợp ngược lại. Thông tin trạng thái này được duy trì bởi việc định kỳ trao đổi các BM giữa các máy tính trong mạng và là cơ sở để máy tính gửi yêu cầu kéo dữ liệu tới các hàng xóm.
2.2. Phối Hợp Kéo Và Đẩy Trong Hệ Thống Truyền Thông Đa Phương Tiện
Khác với hệ thống CoolStreaming/DONet chỉ sử dụng phương pháp kéo thuần túy, các hệ thống GridMedia và PRIME là sự phối hợp giữa hai thao tác kéo và đẩy với nhau. Còn trong PRIME, mỗi máy tính sẽ tiếp nhận nội dung từ tất cả các máy cha của nó và cung cấp lại toàn bộ nội dung nhận được cho các máy con. Các dữ liệu luôn được đẩy tới từ các máy tính cha và chuyển tiếp tới các máy tính con. Các máy tính con luôn đóng vai trò kéo dữ liệu trong mô hình của PRIME. Như vậy trong cả GridMedia và PRIME, các thao tác kéo đẩy thực chất luôn được thực hiện bởi các máy tính khác nhau. Việc này sẽ dẫn tới sự lãng phí băng thông của các máy tính kéo trong trường hợp các mảnh dữ liệu yêu cầu chưa được chuyển tới kịp.
III. Giải Pháp Cải Tiến Giao Thức Kéo Đẩy Xen Kẽ Tại UTT
Trong đó, các máy tính tham gia sẽ đồng thời thực hiện cả hai thao tác kéo và đẩy trong các chu kỳ xen kẽ nhau. Máy tính sẽ kéo về mảnh dữ liệu có số thứ tự nhỏ nhất trong số các mảnh dữ liệu nó còn thiếu và đẩy đi mảnh dữ liệu có số thứ tự lớn nhất trong số các mảnh dữ liệu mà nó đang xử lý. Thực tế, lúc đầu, giao thức kéo đẩy xen kẽ được xây dựng với mục đích sử dụng phương thức kéo đẩy để phân phối dữ liệu tĩnh trong mạng ngang hàng. Sau đó, cùng với sự đóng góp của cộng đồng nghiên cứu mạng, hiện nay giao thức này đã được cải tiến, có thể đáp ứng việc phân bổ luồng truyền thông đa phương tiện thời gian thực. Tuy nhiên các thuật toán kéo đẩy xen kẽ hiện đang được cài đặt vẫn còn phụ thuộc khá nhiều vào hạ tầng mạng và chỉ hoạt động hiệu quả trên các mạng có kích thước lớn, quan hệ giữa các máy tính trong mạng chặt chẽ và có băng thông rộng.
3.1. Thuật Toán Cải Tiến Thứ Nhất Cho Giao Thức Kéo Đẩy
Như đã nói ở trên, do tính cần thiết của nhu cầu trao đổi dữ liệu thời gian thực trên mạng ngang hàng nên số lượng các giao thức được đề xuất và sử dụng trong các ứng dụng truyền thông đa phương tiện ngang hàng rất đa dạng và luôn là một đề tài thời sự cho các nhà nghiên cứu giao thức mạng tìm tòi và cải tiến. Bên cạnh các giao thức dựa trên phương thức kéo đẩy, cây đa phát đã trình bày ở trên; còn có các giao thức được cài đặt theo phương pháp lai như GoalBit – dựa trên cơ chế cài đặt tương tự như BitTorrent… hay các giao thức dựa trên hạ tầng mạng, IP Multicast… Tuy nhiên, trong phạm vi giới hạn của luận văn này, chúng tôi chỉ mới dừng lại ở việc nghiên cứu các cách thức phân bổ luồng truyền thông đa phương tiện ngang hàng dùng phương thức kéo đẩy, và cụ thể là giao thức kéo đẩy xen kẽ.
3.2. Minh Họa Cải Tiến Giao Thức Kéo Đẩy Xen Kẽ
Dựa trên việc nghiên cứu kỹ càng các cách thức cài đặt thuật toán của giao thức kéo đẩy xen kẽ, chúng tôi đã bổ sung một số cải tiến trên thuật toán kéo đẩy xen kẽ gốc. Chúng tôi cũng đã sử dụng công cụ là bộ mô phỏng mạng ngang hàng PeerSim để kiểm chứng tính đúng đắn của các giải thuật đưa ra qua việc thực hiện mô phỏng và đo lường các đại lượng đánh giá hiệu suất mạng như độ trễ truyền thông, thời gian hoàn thành và tỉ lệ chuyển phát dữ liệu thành công. Quá trình nghiên cứu, thực hiện và kết quả của nghiên cứu đã được trình bày đầy đủ trong 5 chương của luận văn với các nội dung cụ thể như sau:
IV. Ứng Dụng Thực Tiễn Và Kết Quả Nghiên Cứu UTT Tech
Chương 1: Giới thiệu tổng quan về mạng ngang hàng với các khái niệm cơ bản nhất, các cách thức phân loại và các ứng dụng trên mạng ngang hàng. Chương 1 cũng đồng thời đưa ra các giới thiệu khái quát về PeerSim, một trong những bộ mô phỏng mạng ngang hàng được tín nhiệm và sử dụng rộng rãi trong cộng đồng nghiên cứu mạng ngang hàng. Chương 2: Chúng tôi chú trọng đi vào các trình bày sâu hơn về các mô hình truyền thông đa phương tiện và phương thức kéo đẩy xen kẽ. Chương 3: Mô tả chi tiết các sửa đổi, cải tiến trên giao thức kéo đẩy xen kẽ mà chúng tôi đề xuất sau một quá trình nghiên cứu kỹ càng cách thức cài đặt và thuật toán của giao thức kéo đẩy xen kẽ đi từ ý tưởng chung tới các cài đặt chi tiết và minh họa thuật toán.
4.1. Kịch Bản Mô Phỏng Và Các Tham Số Đầu Vào
Chương 4: Trình bày lại cách thức thực hiện mô phỏng và sử dụng các kết quả thu được để so sánh, đánh giá tính hiệu quả của các thuật toán sửa đổi so với thuật toán gốc cũng như ảnh hưởng của các tham số mạng đối với hiệu suất của các thuật toán. Chương 5: Cuối cùng là kết luận và hướng nghiên cứu trong tương lai.
4.2. Đánh Giá Biến Thiên Hiệu Năng Theo Kích Thước Mạng
Trong quá trình phát triển của mạng máy tính chúng ta đã được chứng kiến sự phát triển vượt bậc của các mô hình mạng. Ban đầu chỉ là 2 máy tính kết nối với nhau một cách thuần túy, sau đó là mạng LAN với kết nối vài chục máy tính trong một phạm vi nhỏ. Không chỉ dừng lại ở đó mô hình mạng ngày càng được mở rộng cả về tính chất và quy mô thành mạng WAN, PAN với hàng nghìn máy tính kết nối với nhau trong một phạm vi lớn hơn. Và cuối cùng là sự ra đời của mạng Internet - vốn được xem như một sự phát triển vĩ đại của ngành công nghệ thông tin nói riêng và của toàn thế giới nói chung.
V. Kết Luận Và Hướng Phát Triển Công Nghệ Giao Thông UTT
Internet là kho tài nguyên khổng lồ của loài người với rất nhiều ứng dụng chia sẻ thông tin, mang con người trên toàn thế giới xích lại gần nhau hơn. Hiện nay hầu hết các ứng dụng trên mạng Internet đều được xây dựng theo mô hình Client/Server với các tính năng ưu việt của nó như: các máy Client không cần cấu hình mạnh, tiết kiệm được địa chỉ IP do có thể cấp phát được địa chỉ IP động, việc bảo trì các phần mềm phục vụ trên Server là tập trung nên rất dễ dàng. Tuy nhiên đổi lại trong các mô hình mạng Client/Server, chi phí đầu tư cho các server đó rất đắt đỏ. Hệ thống ngày càng lớn thì việc mở rộng đòi hỏi chi phí ngày càng cao cho việc nâng cấp server hoặc thậm chí là phải bổ sung thêm server mới. Mặt khác, nếu các máy server gặp sự cố thì toàn bộ hệ thống sẽ bị ảnh hưởng thậm chí ngừng hoạt động ngay lập tức. Ngoài ra mô hình Client/Server cũng không tận dụng được sức mạnh của các máy Client. Chính bởi vậy, để khắc phục các nhược điểm của mô hình Client/Server, kiến trúc mạng ngang hàng (Peer-To-Peer) ra đời, đang ngày càng được quan tâm và phát triển rộng rãi hơn trong thời gian gần đây.
5.1. Tương Lai Của Công Nghệ Mới Tại Đại Học Giao Thông
Mạng ngang hàng (Peer-To-Peer network), còn gọi là mạng đồng đẳng, là kiến trúc mạng máy tính trong đó hoạt động của mạng chủ yếu dựa vào khả năng tính toán và băng thông của các máy tham gia chứ không tập trung vào một số nhỏ các máy phục vụ trung tâm như các mạng thông thường. Mạng ngang hàng thường được sử dụng để kết nối các máy thông qua một lượng kết nối dạng adhoc. Mạng ngang hàng hiện có rất nhiều ứng dụng. Ứng dụng thường xuyên gặp nhất là chia sẻ tệp tin, tất cả các dạng dữ liệu như văn bản, âm thanh, hình ảnh. Hoặc để truyền dữ liệu thời gian thực như điện thoại VoIP. Một mạng ngang hàng đúng nghĩa không có khái niệm máy chủ và máy khách, nói cách khác, tất cả các máy tham gia đều bình đẳng và được gọi là peer, là một nút mạng đóng vai trò đồng thời là máy khách và máy chủ đối với các máy khác trong mạng.
5.2. Đề Xuất Nghiên Cứu Khoa Học Tại Đại Học Giao Thông
Ta có thể phân loại các mạng ngang hàng hiện nay theo tiêu chí về mức độ tập trung của chúng như sau: Mạng ngang hàng lai ghép: Gọi là mạng ngang hàng lai ghép vì trong mạng vẫn có một máy chủ trung tâm dùng để lưu trữ thông tin của các máy trạm thành viên và trả lời các truy vấn. Tuy nhiên, tài nguyên phân phối của mạng không nằm trên máy chủ đó mà nằm trên chính các máy trạm thành viên. Máy chủ trung tâm chỉ có vai trò lưu trữ thông tin về các máy trạm thành viên và các thông tin tài nguyên được chia sẻ để có thể sẵn sàng cung cấp các thông tin liên quan mỗi khi có một máy trạm gửi yêu cầu tìm kiếm tới. Các mạng ngang hàng lai ghép này có thể sử dụng các trạm định tuyến để xác định địa chỉ IP của các máy trạm. Các đại diện cho mạng ngang hàng lai ghép được biết đến nhiều nhất là Napster và BitTorrent.