TÍNH TOÁN LƯỚI VÀ ỨNG DỤNG

8 1K 11
TÍNH TOÁN LƯỚI VÀ ỨNG DỤNG

Đang tải... (xem toàn văn)

Thông tin tài liệu

TÍNH TOÁN LƯỚI VÀ ỨNG DỤNG

TÍNH TOÁN LƯỚI ỨNG DỤNG NGUYỄN ĐỨC DƯ Bộ môn Công nghệ phần mềm Khoa Công nghệ thông tin Trường Đại học Giao thông Vận tải Tóm tắt: Tính toán lưới đang nổi lên như một công nghệ tính toán đầy hứa hẹn trong tương lai. Nó là mô hình tính toán đánh dấu một bước phát triển mới trong lĩnh vực tính toán hiệu năng cao. Bài báo này giới thiệu về tính toán lưới một số ứng dụng của nó đã đang được nghiên cứu triển khai. Summary: Grid computing is standing out as a promising computing technology in the future. It is a computing form which marks a new developing step in high efficency computing. This paper introduces grid computing and some of its applications which have been studying anh deploying. CNTT _ CB I. KHÁI NIỆM TÍNH TOÁN LƯỚI Cũng như các công nghệ tính toán khác, tính toán lưới (grid computing) ra đời xuất phát từ nhu cầu tính toán của con người. Thực tế, ngày càng có nhiều bài toán phức tạp hơn được đặt ra do đó các tổ chức cũng cần phải có những năng lực tính toán mạnh mẽ hơn. Có thể giải quyết vấn đề này bằng hai cách: Thứ nhất: Đầu tư thêm trang thiết bị, cơ sở hạ tầng tính toán (mua thêm máy chủ, máy trạm, siêu máy tính, cluster ). Rõ ràng là cách làm này hết sức tốn kém. Thứ hai: Một cách thực hiện hiệu quả hơn là phân bố lại hợp lý các nguồn tài nguyên trong tổ chức hoặc thuê thêm các nguồn tài nguyên từ bên ngoài (dĩ nhiên là với chi phí rẻ hơn nhiều so với việc đầu tư cho cơ sở hạ tầng tính toán). Thực tế cho thấy có một phần lớn các nguồn tài nguyên của chúng ta đang bị sử dụng lãng phí: các máy để bàn công sở thường chỉ hoạt động khoảng 5% công suất, ngay cả các máy chủ cũng có thể chỉ phải hoạt động với 20% công suất. Việc tận dụng hiệu quả các nguồn tài nguyên này có thể mang lại một sức mạnh tính toán khổng lồ. Cách giải quyết thứ hai này chính là mục tiêu của tính toán lưới. Tính toán lưới hướng đến việc chia sẻ sử dụng hiệu quả các nguồn tài nguyên thuộc về nhiều tổ chức trên một quy mô rộng lớn (thậm chí là quy mô toàn cầu). Chính các công nghệ mạng truyền thông phát triển mạnh mẽ trong những năm qua đã biến những khả năng này dần trở thành hiện thực. Các nghiên cứu về tính toán lưới đã đang được tiến hành nhằm tạo ra một cơ sở hạ tầng lưới cho phép dễ dàng chia sẻ quản lý các tài nguyên đa dạng phân tán trong môi trường lưới. Các thách thức mà công nghệ tính toán lưới đang phải giải quyết bao gồm: - Các tài nguyên hết sức đa dạng, không đồng nhất. Tài nguyên ở đây được hiểu theo nghĩa hết sức tổng quát. Đó có thể là các tài nguyên phần cứng: tài nguyên tính toán, tài nguyên lưu trữ, các thiết bị đặc biệt khác ; các tài nguyên phần mềm: các CSDL, các phần mềm đặc biệt đắt giá ; các đường truyền mạng Các tài nguyên này có thể rất khác nhau về mặt kiến trúc, giao diện, khả năng xử lý Việc tạo ra một giao diện thống nhất cho phép khai thác sử dụng hiệu quả các nguồn tài nguyên này hoàn toàn không dễ dàng. Ban đầu tính toán lưới được đặt ra chủ yếu là để tận dụng các nguồn tài nguyên tính toán nhưng hiện nay mục tiêu của nó đã được mở rộng sang rất nhiều nguồn tài nguyên khác như đã kể trên. - Các tài nguyên không chỉ thuộc về một tổ chức mà thuộc về rất nhiều tổ chức tham gia lưới. Các tổ chức phải tuân thủ một số quy định chung khi tham gia vào lưới còn nhìn chung là hoạt động độc lập tức là các tài nguyên này đều có quyền tự trị. Các tổ chức khác nhau thường có chính sách sử dụng hay cho thuê tài nguyên của họ khác nhau do vậy cũng gây khó khăn cho việc quản lý. - Các tài nguyên phân tán rộng khắp về mặt địa lý do vậy phải có các cơ chế quản lý phân tán. - Đảm bảo an toàn thông tin cho một môi trường phức tạp như môi trường lưới là rất khó khăn trong khi đây là một trong những điểm ưu tiên hàng đầu. CNTT-CB Các định nghĩa tính toán lưới: Khái niệm Tính toán lưới đã bắt đầu xuất hiện vào đầu thập niên 90 với nghĩa ẩn dụ là làm cho việc sử dụng sức mạnh của máy tính dễ dàng như là việc sử dụng điện năng. Ngày nay có rất nhiều định nghĩa về tính toán lưới. Một định nghĩa về Grid khá hoàn chỉnh được đưa ra bởi tiến sỹ Ian Foster như sau : “Grid là một loại hệ thống song song, phân tán cho phép chia sẻ, lựa chọn, kết hợp các tài nguyên phân tán theo địa lý, thuộc nhiều tổ chức khác nhau dựa trên tính sẵn sàng, khả năng, chi phí của chúng yêu cầu về chất lượng dịch vụ (QoS) của người dùng để giải quyết các bài toán, ứng dụng có quy mô lớn trong khoa học, kỹ thuật thương mại. Từ đó hình thành nên các “tổ chức ảo” (Virtual Organization (VO)), các liên minh tạm thời giữa các tổ chức tập đoàn, liên kết với nhau để chia sẻ tài nguyên và/hoặc kỹ năng nhằm đáp ứng tốt hơn các cơ hội kinh doanh hoặc các dự án có nhu cầu lớn về tính toán dữ liệu, toàn bộ việc liên minh này dựa trên các mạng máy tính”. Một hệ thống Grid có 3 đặc điểm chính: - Có sự kết hợp, chia sẻ các tài nguyên không được quản lý tập trung. - Sử dụng các giao diện giao thức chuẩn, mang tính mở, đa dụng. - Đáp ứng yêu cầu cao về chất lượng dịch vụ. Mô hình Grid Computing CNTT Các định nghĩa khác: _ CB * Plaszczak/Weller định nghĩa kỹ thuật lưới là “kỹ thuật cho phép ảo hoá tài nguyên dự trữ theo yêu cầu, chia sẻ dịch vụ, tài nguyên giữa các tổ chức”. * IBM thì định nghĩa, “Lưới là khả năng sử dụng một tập các nguồn mở giao thức để có thể truy nhập tới các ứng dụng dữ liệu, năng lực xử lý, khả năng lưu trữ một loạt các tài nguyên tính toán khác trên Internet. Một lưới là một loại hệ thống song song phân tán cho phép chia sẻ giữa nhiều khu vực dựa trên sự sẵn có, dung lượng, hiệu năng, giá cả các yêu cầu về chất lượng dịch vụ của người sử dụng”. * Buyya định nghĩa Lưới là “ một kiểu hệ thống song song phân tán cho phép chia sẻ, lựa chọn kết hợp động các tài nguyên phân tán theo địa lý tại thời điểm thực thi dựa trên sự sẵn sàng, dung lượng, hiệu năng, giá những yêu cầu về chất lượng dịch vụ. * CERN, một trong những tổ chức lớn nhất sử dụng công nghệ Lưới, nói về Lưới như sau: ”một dịch vụ để chia sẻ năng lực của máy tính dung lượng lưu trữ dữ liệu qua Internet”. Bản chất của tính toán lưới giống một nền tảng dạng khái niệm hơn là một tài nguyên vật lý. Lưới được tận dụng để cung cấp tài nguyên cho một nhiệm vụ tính toán. Mục tiêu của công nghệ lưới liên quan tới những yêu cầu của việc cung cấp tài nguyên linh hoạt vượt ra khỏi các khu vực cục bộ. II. SO SÁNH TÍNH TOÁN LƯỚI VỚI MỘT SỐ MÔ HÌNH TÍNH TOÁN KHÁC 1. World Wide Web (Web computing): WWW hiện nay đang phát triển mạnh mẽ được sử dụng rộng khắp. Sử dụng các chuẩn mở các giao thức mở (TCP, HTTP, XML, SOAP), WWW có thể được sử dụng để xây dựng các tổ chức ảo tuy nhiên nó thiếu một số đặc tính quan trọng như các cơ chế chứng thực một lần, ủy nhiệm, các cơ chế phối hợp sự kiện 2. Các hệ thống tính toán phân tán (Distributed computing systems): Các công nghệ tính toán phân tán hiện tại bao gồm CORBA, J2EE DCOM rất thích hợp cho các ứng dụng phân tán tuy nhiên chúng không cung cấp một nền tảng phù hợp cho việc chia sẻ tài nguyên giữa các thành viên của tổ chức ảo. Một số khó khăn có thể kể ra trong việc khai phá tài nguyên, đảm bảo an ninh xây dựng động các tổ chức ảo. Thêm nữa việc tương tác giữa các công nghệ này cũng gặp phải khó khăn. Tuy nhiên cũng đã có một số nghiên cứu nhằm mở rộng những công nghệ này cho môi trường lưới, ví dụ như Java JINI. 3. Các hệ thống tính toán ngang hàng (Peer - to - peer Computing Systems): Tính toán ngang hàng cũng là một lĩnh vực của tính toán phân tán. Những điểm khác biệt chính giữa tính toán ngang hàng tính toán lưới là: - Tính toán lưới có cộng đồng người sử dụng có thể nhỏ hơn tuy nhiên tập trung nhiều vào các ứng dụng có yêu cầu cao hơn về an ninh cũng như tính toàn vẹn của ứng dụng. Trong khi đó các hệ thống mạng ngang hàng có thể có số người sử dụng rất lớn bao gồm cả các người dùng đơn lẻ các tổ chức tuy nhiên không đòi hỏi cao về an ninh mô hình chia sẻ tài nguyên cũng đơn giản hơn. CNTT-CB - Môi trường lưới liên kết các nguồn tài nguyên mạnh hơn, đa dạng hơn chặt chẽ hơn. 4. Tính toán phân cụm: Tính toán lưới thường bị nhầm lẫn với tính toán phân cụm. Tuy nhiên sự khác biệt chính giữa hai kiểu tính toán này là: một cụm tính toán là một tập đơn các nút tính toán tập trung trên một khu vực địa lý nhất định, trong khi một lưới bao gồm nhiều cụm tính toán những loại tài nguyên khác (như mạng, các thiết bị lưu trữ). III. MỘT SỐ ÍCH LỢI KHI SỬ DỤNG CÔNG NGHỆ GRID COMPUTING 1. Khai thác, tận dụng các tài nguyên nhàn rỗi Hầu hết các tổ chức đều có một lượng lớn các tài nguyên tính toán nhàn rỗi, các máy tính cá nhân thường chỉ sử dụng hết 5% thời gian xử lý CPU, ngay cả các server cũng thường “rảnh rỗi”. Grid có thể tối ưu sử dụng các tài nguyên nhàn rỗi này theo nhiều cách khác nhau, ví dụ, gửi một công việc trên một máy tính đang bận rộn đến một máy khác rảnh rỗi hơn để xử lý, hoặc phân nhỏ một công việc rồi gửi các công việc con đến các máy tính nhàn rỗi khác cho xử lý song song,… Một chức năng của Grid nữa là cân bằng sử dụng tài nguyên tốt hơn. Một tổ chức thường gặp các vấn đề khó khăn khi các hoạt động đòi hỏi thêm nhiều tài nguyên hơn. Với Grid, có thể chuyển hoạt động đến các tài nguyên nhàn rỗi khác, hoặc có thể thêm các tài nguyên mới một cách dễ dàng, từ đó làm tăng khả năng chịu đựng của hệ thống. 2. Sử dụng CPU song song Khả năng sử dụng các CPU song song là một đặc tính tuyệt vời của Grid, ngoài việc hỗ trợ các nhu cầu tính toán của các nhà khoa học, sức mạnh tính toán do Grid cung cấp có thể giúp giải quyết các bài toán đòi hỏi năng lực xử lý lớn trong các ngành khác như y dược, tính toán tài chính, kinh tế, khai thác dầu hoả, dự báo thời tiết, công nghiệp vũ trụ, thiết kế sản phẩm, … rất nhiều lĩnh vực khác. 3. Cho phép hợp tác trên toàn thế giới Một trong những đóng góp quan trọng của công nghệ Grid Computing là cho phép đơn giản hoá hợp tác chia sẻ, làm việc giữa một cộng đồng rộng lớn trên toàn thế giới. Các công nghệ tính toán phân tán trước đây cũng cho phép hợp tác nhưng chỉ trong một phạm vi nhỏ, còn Grid cho phép mở rộng trên phạm vi toàn cầu khi đưa ra những chuẩn quan trọng cho phép các hệ thống không đồng dạng làm việc chung với nhau để tạo nên một hệ thống tính toán ảo cung cấp rất nhiều dạng tài nguyên khác nhau. CNTT _ CB 4. Cho phép chia sẻ, sử dụng tất cả các loại tài nguyên Không chỉ cho phép chia sẻ các chu kỳ tính toán, dữ liệu, Grid có thể cho phép chia sẻ tất cả các loại tài nguyên mà trước đây chưa được chia sẻ, như băng thông mạng, các thiết bị đặc biệt, phần mềm, bản quyền, các dịch vụ,… Ví dụ, nếu một người dùng muốn tăng băng thông kết nối Internet của mình lên để thực hiện một ứng dụng khai thác dữ liệu, ứng dụng đó có thể được gửi đến nhiều máy tính trong Grid có các kết nối Internet riêng, từ đó băng thông truy cập Internet của anh ta tăng lên rất nhiều lần,… 5. Tăng tính tin cậy cho các hệ thống máy tính. Hiện nay, các hệ thống tính toán sử dụng các phần cứng chuyên dụng, đắt đỏ để tăng độ tin cậy. Ví dụ, một máy tính có thể sử dụng các bộ vi xử lý đôi, cho phép “cắm nóng”, để khi có một vi xử lý bị hỏng, có thể thay thế cái khác mà không làm ngưng hoạt động của hệ thống. Các giải pháp này làm tăng độ tin cậy của hệ thống, tuy nhiên với chi quá đắt khi phụ kiện đi kèm cũng phải nhân lên. Trong tương lai, các hướng tiếp cận mới để giải quyết vấn đề độ tin cậy dựa nhiều hơn vào các công nghệ phần mềm hơn là các phần cứng đắt tiền. Grid là sự khởi đầu cho các công nghệ đó. Các hệ thống trong Grid thường rẻ phân tán theo địa lý, do đó, nếu có sự cố về nguồn điện hay các lỗi hệ thống khác tại một vị trí, toàn bộ phần còn lại không bị ảnh hưởng. Các phần mềm quản trị Grid có khả năng thực thi lại công việc trên một node khác khi phát hiện có lỗi hệ thống. Nếu quan trọng hơn nữa, trong các hệ thống theo thời gian thực, nhiều bản dự phòng của các các công việc quan trọng có thể được chạy trên nhiều máy tính khác nhau trong Grid để đảm bảo độ tin cậy tối đa. 6. Tăng khả năng quản trị các hệ thống Mục tiêu ảo hoá tất cả các tài nguyên cung cấp giao diện quản lý đơn nhất các hệ thống hỗn tạp đem lại những cơ hội mới để quản trị tốt hơn trong các cơ sở hạ tầng công nghệ thông tin lớn, phân tán. CNTT-CB Trên đây giới thiệu một số ích lợi khi sử dụng công nghệ Grid Computing, Grid còn mang lại rất nhiều lợi ích khác mà không thể kể hết ở đây, tuỳ vào tình huống cụ thể mà đem lại các lợi ích khác nhau. Vấn đề là phải hiểu rõ bản chất Grid, sử dụng tốt các công cụ nhằm khai khác tốt nhất trong các tình huống cụ thể. IV. MỘT SỐ ỨNG DỤNG ĐÃ ĐƯỢC TRIỂN KHAI Lưới cung cấp một giải pháp cho những bài toán về tính toán hiệu năng cao như tạo nếp protein, mô hình hoá tài chính, mô phỏng động đất dự đoán khí hậu thời tiết. Ngoài ra lưới còn có thể giúp các tổ chức, doanh nghiệp sử dụng một cách tối ưu hoá tài nguyên công nghệ thông tin tạo ra các dịch vụ tính toán theo nhu cầu cho các khách hàng thương mại miễn phí trong đó khách hàng chỉ phải trả những gì họ đã sử dụng giống như điện nước. Sau đây là một số ứng dụng đã được triển khai: 1. IBM: Tính toán lưới giúp nghiên cứu ung thư: “Help defeat Cancer” - dự án “Giúp chiến thắng ung thư” là dự án do các nhà nghiên cứu tại Đại học Nha khoa Y khoa tại New Jersey Viện Nghiên cứu Ung thư của New Jersey đang cộng tác với tập đoàn IBM thực hiện. Dự án “Help Defeat Cancer” có mục đích giúp các nhà nghiên cứu hiểu rõ hơn về nguyên nhân cơ bản của căn bệnh ung thư để có thể tăng cường hiệu quả điều trị lập kế hoạch điều trị cho bệnh nhân ung thư. Với sự hỗ trợ của World Community Grid của IBM, dự án này là cơ hội cho các nhà nghiên cứu phân tích số lượng lớn mô ung thư cùng một lúc cho phép thực hiện nhiều thí nghiệm trong một khoảng thời gian ngắn hơn. Thông qua máy tính mạng lưới cộng đồng toàn cầu, tất cả mọi người có thể đóng góp thời gian nhàn rỗi của máy tính họ sau khi việc tải về máy tính phần mềm miễn phí World Community Grid đăng ký tại http://www.worldcommunitygrid.org/. 2. Dự đoán cấu trúc protein: Từ các dãy amino-acid là một ứng dụng quan trọng nhất của tin sinh học. Bài toán dự đoán cấu trúc protein có thể được mô hình hóa như bài toán tối ưu hóa. Nó đòi hỏi số lượng tính toán rất lớn. Do đó cần có các kỹ thuật metaheuristic, tính toán hiệu năng cao, tính toán lưới. 3. Tính toán lưới bài toán quản trị mạng: Ngày nay bộ phận quản trị mạng phải phân tích, xử lý một khối lượng thông tin khổng lồ nhằm đưa ra các giải pháp, phản ứng theo thời gian thực để đảm bảo cho các hệ thống mạng hoạt động thông suốt, tin cậy, an toàn. Để có thể thực hiện tốt công việc của mình, bộ phận quản trị mạng cần phải có những công cụ phân tích, cung cấp thông tin hoạt động của hệ thống mạng mạnh mẽ. Công nghệ Grid Computing được chọn ứng dụng vào bài toán phân tích, cung cấp thông tin hỗ trợ quản trị mạng với hy vọng tận dụng được năng lực xử lý nhàn rỗi hiện có trong các hệ thống mạng để giải quyết bài toán hiệu quả hơn, trong giới hạn chi phí có thể chấp nhận được. Mục tiêu lâu dài là xây dựng một hệ thống nhằm hỗ trợ bộ phận quản trị mạng trong các lĩnh vực: quản lý hiệu năng, quản lý lỗi bảo mật. Đưa các công nghệ khai thác dữ liệu (data mining) trí tuệ nhân tạo vào hệ thống để phân tích các dữ liệu thu được, tìm ra các quy luật sử dụng của người dùng, các quy luật tấn công, … nhằm huấn luyện hệ thống có thể tự động nhận dạng các mối nguy hiểm đưa ra các phản ứng thích hợp, hiệu quả. CNTT _ CB 4. Mô hình lập lịch trong hệ thống tính toán lưới do Buyya đề xuất Bài toán lập lịch hay lập kế hoạch là một bài toán ta rất hay gặp trong thực tế. Có thể kể ra như lập thời khóa biểu, lập kế hoạch quản lý dự án đều là các bài toán lập lịch tiêu biểu rất kinh điển. Nội dung của bài toán là tìm ra một bản kế hoạch thực hiện các công việc một cách tối ưu nhất dựa vào tất cả các thông tin đầu vào có được từ tình trạng hiện tại của hệ thống, tuy nhiên tùy theo bài toán cụ thể mà yêu cầu phương pháp giải quyết của các bài toán này rất khác nhau. Buyya đề nghị một phương pháp lập lịch cho các ứng dụng nghiên cứu tham số (bao gồm một tập lớn các công việc độc lập trên tập các dữ liệu độc lập). Mô hình này cũng giống như mô hình lập trình đơn chương trình đa dữ liệu (Single Program Multiple Data). Việc lập lịch điều phối hoạt động của các ứng dụng dạng này trên môi trường tính toán phân tán trên diện rộng tưởng chừng khá đơn giản tuy nhiên các vấn đề phức tạp sẽ nảy sinh khi người dùng đặt ra một số các tham số về chất lượng dịch vụ như thời hạn kết thúc ứng dụng giới hạn về kinh phí. Những đảm bảo như thế về chất lượng dịch vụ là rất khó thực hiện trong một môi trường như môi trường lưới khi mà các tài nguyên lưới phân tán, không đồng nhất, được sở hữu bởi nhiều tổ chức khác nhau với những chính sách cơ chế tính giá khác nhau. Thêm vào đó các thuật toán lập lịch phải được thiết kế để thích ứng được với sự thay đổi tải sự sẵn dùng của tài nguyên cùng lúc với việc phải đảm bảo được thời hạn kinh phí. Tư tưởng chủ đạo của việc thiết kế các thuật toán lập lịch cho lưới là: không sử dụng các thuật toán tối ưu truyền thống vẫn hay thường được sử dụng trong các bài toán lập lịch mà chủ yếu sử dụng các heuristic. V. CÁC TỔ CHỨC HỖ TRỢ PHÁT TRIỂN TÍNH TOÁN LƯỚI Diễn đàn điện toán lưới toàn cầu GGF: Diễn đàn Grid toàn cầu có mục đích định nghĩa các đặc tả cho tính toán lưới. GGF được phát triển với hợp tác giữa khu vực công nghiệp và khoa học với những hỗ trợ quan trọng từ cả hai khu vực này. Tổ chức Globus Alliance: Globus Alliance triển khai một số chuẩn được phát triển tại diễn đàn GGF thông qua bộ phần mềm lưới trung gian Globus Toolkit. Với chức năng là một thành phần trung gian trong kiến trúc lưới, bộ phần mềm này cung cấp nền tảng chuẩn để thiết lập các dịch vụ trên lưới tính toán, nhưng tính toán lưới còn cần có nhiều thành phần khác rất nhiều công cụ để thiết lập duy trì môi trường lưới. VI. KẾT LUẬN Công nghệ tính toán lưới ra đời đánh dấu một bước phát triển mới trong lĩnh vực tính toán hiệu năng cao. Bài báo này đã trình bày khá chi tiết đầy đủ về tính toán lưới từ khái niệm, các lợi ích đến các hướng ứng dụng cũng như các ứng dụng cụ thể. CNTT-CB Cuối cùng cũng cần phải nói rằng tính toán lưới không phải là chìa khóa vạn năng dùng để giải quyết mọi vấn đề. Nó được dùng để bổ trợ chứ không phải là thay thế hoàn toàn các công nghệ tính toán hiện tại. Các công nghệ tính toán đã có tồn tại cũng đã giải quyết từng phần các yêu cầu của tính toán lưới đặt ra (các yêu cầu về chia sẻ tài nguyên phân tán) tuy nhiên tính toán lưới hiện nay chính thức giải quyết các vấn đề đó một cách tập trung bài bản hơn với một ngữ cảnh rộng hơn rất nhiều. Tài liệu tham khảo [1]. Viktors Berstis, Fundamentals of Grid Computing, , Redbooks, IBM [2]. Bart Jacob – Michael Brown – Kenaro Fukui – Nihar Trivedi, Introduction to grid computing, , Red books, IBM, 2002 [3]. http://www.ibm.com/redbooks [4]. IBM, Introduction to Grid Computing with Globus, 2003 [5]. “IBM: Tính toán lưới (grid computing) giúp nghiên cứu ung thư”, PC World.VN [6]. technet.aivietnam.net [7]. Ks. Nguyễn Long - Nguyễn Huy Văn – Ks. Lê Công Trung, Mô hình lập lịch trong hệ thống tính toán lưới do Buyya đề xuất, Tạp chí Công nghệ thông tin & Truyền thông ♦

Ngày đăng: 07/01/2014, 01:07

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan