1. Trang chủ
  2. » Luận Văn - Báo Cáo

Mô hình middleware và ứng dụng của middleware

83 171 0

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Mơ hình Middleware ứng dụng vào Virtual Network Computing MỤC LỤC MỤC LỤC HÌNH VẼ MỤC LỤC TỪ VIẾT TẮT LỜI NÓI ĐẦU CHƯƠNG I: ĐẶT VẤN ĐỀ 1.1 Các vấn đề chung thiết kế phần mềm môi trường phân tán .9 1.1.1 Mơ hình peer-to-peer 1.1.2 Mơ hình client/server 10 1.2 Một số vấn đề liên quan đến ứng dụng phân tán theo mô hình client/server 11 1.2.1 Tiến trình giao tiếp 11 1.2.2 Truyền thông mạng 12 1.3 Mô hình phần mềm trung gian middleware .13 1.4 Hệ thống tính tốn mạng ảo (Virtual Network Computing) 14 CHƯƠNG II: MƠ HÌNH PHẦN MỀM TRUNG GIAN MIDDLEWARE 17 2.1 Mơ hình Middleware 17 2.1.1 Các khái niệm Middleware 17 2.1.1.1 Khái niệm theo internet2 .17 2.1.1.2 Khái niệm theo JISC Core Middleware Programme .17 2.1.1.3 Khái niệm theo Searchbites.com 17 2.1.1.4 Khái niệm theo Wikipedia Entry 18 2.2 Kiến trúc, dịch vụ thành phần middleware 18 2.2.1 Giao diện middleware 18 2.2.1.1 Giao diện lập trình ứng dụng (Application Programming Interface) 18 2.2.1.2 Giao diện lập trình hệ thống (System programming interface) .19 2.2.1.3 Giao diện truyền thông (Communication Interface) .19 2.2.1.4 Giao diện người dùng (User Interface) 19 2.2.1.5 Giao diện liệu (Data Interface) 20 2.2.2 Các tính chất middleware .21 2.2.2.1 Tính tiện dụng (Usability) .22 2.2.2.2 Tính phân tán (Distributability) .22 2.2.2.3 Tính tích hợp (Integration) 22 2.2.2.4 Tính mở rộng (Extensibility) 23 2.2.2.5 Sự quốc tế hóa (Internationalization) 23 2.2.2.6 Tính dễ quản lý (Manageability) 23 2.2.2.7 Tính hiệu (Performance) .24 2.2.2.8 Tính di động (Portability) 24 2.2.2.9 Tính tin cậy (Reliability) .25 2.2.2.10 Tính co dãn (Scalability) .25 2.2.2.11 Tính bảo mật (Security) .25 2.2.3 Các nhóm dịch vụ middleware .25 2.2.3.1 Dịch vụ trình diễn (Presentation services) 25 2.2.3.2 Dịch vụ truyền thông (Communications services) 29 2.2.3.3 Dịch vụ điều khiển (Control services) 34 Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT -1- Mơ hình Middleware ứng dụng vào Virtual Network Computing 2.2.3.4 Dịch vụ thông tin (Information services) 36 2.2.3.5 Dịch vụ thư mục (Directory) 39 2.2.3.6 Dịch vụ tính tốn (Computation services) .39 2.2.3.6 Dịch vụ quản lý (Management services) .39 2.2.3.7 Dịch vụ bảo mật (Security Service) .43 2.2.4 Truy cập đối tượng từ dịch vụ Middleware 44 2.2.4.1 Lập trình hướng đối tượng EOS .44 2.2.4.2 Yếu tố cho đối tượng phân tán 45 CHƯƠNG III: VIRTUAL NEWORK COMPUTING 48 3.1 Giới thiệu chung 48 3.1.1 Virtual Network Computing 48 3.1.2 Kiến trúc chức hệ thống 49 3.2 Thin – Client 50 3.2.1 Giới thiệu chung 50 3.2.2 Kiến trúc Thin-Client .51 3.3 Giao thức RFB (Remote Frame Buffer) 52 3.3.1 Thông điệp bắt tay-Handshaking Message 52 3.3.2 Thông điệp Client gửi Server .54 3.3.3 Thông điệp Server gửi Client .58 3.3.4 Các mã hóa giao thức RFB-Encodings 60 3.3.4 Mã hóa giả (pseudo-encodings) 64 CHƯƠNG IV: MIDDLEWARE VÀ VIRTUAL NETWORK COMPUTING 66 4.1 Hệ thống VNC .66 4.1.1 VNC Server 68 4.1.2 VNC Viewer 70 4.2 Middleware hệ thống tính tốn mạng ảo 72 4.3 Ứng dụng chương trình BKEC 73 4.3.1 Vấn đề giải pháp phần mềm hỗ trợ giảng dạy mạng LAN (BKECECLASS) 73 CHƯƠNG V: KẾT LUẬN 82 5.1 Kết đạt 82 5.2 Hướng phát triển tương lai .82 TÀI LIỆU THAM KHẢO 83 Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT -2- Mơ hình Middleware ứng dụng vào Virtual Network Computing MỤC LỤC HÌNH VẼ Hình 1.1: Mơ hình Peer-to-Peer Hình 1.2: Mơ hình Client/Server .10 Hình 1.3: Tiến trình giao tiếp ứng dụng 12 Hình 1.4: Mơ hình tham chiếu OSI 13 Hình 1.5 Mơ hình middleware 14 Hình 1.6: Mơ hình giao tiếp VNC Server VNC Client 15 Hình 2.1: Giao diện middleware 21 Hình 2.2: Sơ đồ chung dịch vụ trình diễn 27 Hình 2.3: Kiến trúc dịch vụ giao tiếp 30 Hình 2.4: Kiến trúc chung dịch vụ hàng đợi thông điệp 33 Hình 2.6: Kiến trúc dịch vụ điều khiển .35 Hình 2.7: Kiến trúc dịch vụ thông tin .37 Hình 2.8: Kiến trúc chung dịch vụ quản lý .40 Hình 2.9: Kiến trúc chung dịch vụ bảo mật 43 Hình 3.1: VNC Viewer máy khác .48 Hình 3.2: Kiến trúc thin client 52 Hình 3.3: Giao thức RFB 52 Hình 4.1: Mơ hình chung ứng dụng VNC 66 Hình 4.2: Biểu đồ diễn tiến phiên làm việc 67 Hình 4.3: Biểu đồ chức VNC Server 68 Hình 4.4: Mơ hình giao tiếp hệ VNC 69 Hình 4.5: Mơ hình giao tiếp người dùng hệ VNC 70 Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT -3- Mơ hình Middleware ứng dụng vào Virtual Network Computing Hình 4.6: Biểu đồ chức VNC Viewer 70 Hình 4.7: Các giao diện sử dụng hệ thống .71 Hình 4.8: Giao tiếp hệ thống VNC khơng có middleware 72 Hình 4.9: Mơ hình middleware VNC 73 Hình 4.10: Mơ hình phần mềm BKEC phân cấp theo chức 75 Hình 4.11: Mơ hình middleware sử dụng Direct Play 9.0 76 Hình 4.12: Biểu đồ lớp quan hệ lớp System Server 77 Hình 4.13: Lớp System Server 78 Hình 4.14: Biểu đồ quan hệ lớp SystemClient 79 Hình 4.15: Mơ hình trao đổi thơng tin BKEC Server BKEC Client 80 Hình 4.16: Mơ hình middleware sử dụng VNC .81 Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT -4- Mơ hình Middleware ứng dụng vào Virtual Network Computing MỤC LỤC TỪ VIẾT TẮT 10 11 12 13 14 15 API CI COM DCE DI EOS GUI MI ORB OSF RFB RPC SPI UI VNC Application Programming Interface Communication Interface Component Object Model Distributed Computing Environment Data Interface Enterprise Object Software Graphical User Interface Manager Interface Object Request Broker Open Software Foundation Remote Frame Buffer Remote Procedure Call System Programming Interface User Interface Virtual Network Computing Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT -5- Mơ hình Middleware ứng dụng vào Virtual Network Computing LỜI NĨI ĐẦU Ngày cơng nghệ thơng tin phát triển lớn mạnh trở thành ngành mũi nhọn quốc gia giới Công nghệ thông tin ứng dụng vào ngành kinh tế, lĩnh vực đời sống, với phát triển sở hạ tầng, internet đặc biệt phát triển không ngừng khoa học kỹ thuật giúp cho người làm việc hiệu hơn, hoạt động mua bán, giải trí trở nên đơn giản ranh giới quốc gia, khu vực dần biến Hiện làm việc, mua sắm nói chuyện với tất người giới mà không cần thiết phải gặp mặt đơn giản thông qua nhấp chuột nhờ sử dụng phần mềm hệ thống internet toàn cầu Xây dựng triển khai phần mềm sử dụng mạng ưu tiên hàng đầu nhà phát triển phần mềm Nhưng có vấn đề đặt khơng tương thích hệ điều hành, thiết bị giao thức mạng khác Đây thực vấn đề nan giải khó khăn nhóm hay cơng ty nhỏ muốn xây dựng phần mềm kiểu chi phí tiền bạc, nhân lực thời gian Nhưng thật may mắn, vấn đề nhà phát triển thường giải có phần mềm trung gian (middleware) đảm nhiệm Middleware có vai trò quan trọng phần mềm hoạt động mạng, cho hệ làm việc cộng tác (collaboration) nhằm giải vấn đề liên quan đến nhiều lĩnh vực khác cần nhiều chuyên gia ngành khác tham gia xây dựng,… Các phần mềm thường tổ chức công ty lớn đưa nhằm giúp đỡ xóa bỏ chướng ngại gặp phải môi trường phân tán không đồng mạng khác đưa đến thường bán Nội dung đồ án em xin trình bày ba vấn đề chính: • Middleware: phần quan trọng trình bày tồn nghiên cứu middleware, kiến trúc chung, mô dịch vụ cung cấp middleware Qua để thấy rõ tầm quan trọng tính ứng dụng rộng lớn middleware có nhiều sản phẩm nhiều cơng ty khác chúng có tầm ứng dụng hạn chế ứng dụng phạm vi cụ thể Hiểu rõ Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT -6- Mơ hình Middleware ứng dụng vào Virtual Network Computing middleware đưa giải pháp cách tối ưu để xây dựng ứng dụng cách tốt nhất, hiệu • VNC (Virtual Network computing): phần thứ hai giới thiệu mơ hình tính tốn mạng ảo sử dụng rộng rãi để xây dựng ứng dụng quản lý mạng Trong phần em đưa tìm hiểu mơ hình tính tốn mạng ảo, cơng nghệ thin-client giao thức remote frame buffer-những công nghệ làm nên sức mạnh VNC-qua đưa ứng dụng middleware vào VNC • Ứng dụng middleware vào hệ thống tính tốn mạng ảo: phần nghiên cứu nên áp dụng vào VNC để cải thiện hiệu hệ thống Trong phần ứng dụng em xin trình bày ứng dụng middleware VNC chương trình hỗ trợ giảng dạy mạng LAN (BKEC-Eclass) - nhóm chúng em xây dựng điểm chưa làm hướng phát triển để sử dụng hiệu middleware nhằm xây dựng phần mềm cách tốt nhất, hiệu Đồ án chia thành chương sau: Chương I: Đặt vấn đề Trong chương em giới thiệu chung mơ hình phát triển phần mềm môi trường phân tán, mô hình phần mềm trung gian (Middleware) hệ thống tính tốn mạng ảo (Virtual Network Computing) Chương II: Mơ hình phần mềm trung gian middleware Chương thứ hai chương đồ án em giới thiệu toàn dịch vụ, giao diện ứng dụng middleware ứng dụng phân tán Chương III: Virtual Network Computing Trong chương ba em tập trung giới thiệu hệ thống tính tốn mạng ảo, ứng dụng công nghệ thin-client, giao thức remote frame buffer sử dụng hệ thống VNC Chương IV: Middleware Virtual Network Computing Chương tập trung vào phân tích chức hệ VNC Server VNC Viewer, dịch vụ, đặc điểm tính chất middleware hệ thống Cuối chương phần phân tích ứng dụng sử dụng VNC Direct X Play 9.0 để xây dựng hệ thống hỗ trợ giảng dạy BKEC (Có tài liệu kỹ thuật kèm theo) Chương V: Kết luận Chương cuối phần tổng kết kinh nghiệm thu sau hoàn thành đồ án, có đưa điểm làm được, điểm thiếu sót đưa số hướng phát triển đề tài Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT -7- Mơ hình Middleware ứng dụng vào Virtual Network Computing Đây đề tài không thật đề tài bổ ích khó hạn chế tài liệu, thời gian kinh nghiệm nên chắn nhiều thiết sót Em mong q thầy xem xét cho nhận xét hướng dẫn để em tiếp tục nghiên cứu xây dựng hoàn thiện thời gian tới Em xin chân thành cảm ơn thầy cô môn công nghệ phần mềm giúp đỡ chúng em nhiều thời gian xây dựng triển khai phần mềm BKEC hoàn thành đồ án Em xin bày tỏ lòng biết ơn sâu sắc đến Ths Đinh Hùng, giám đốc Trung tâm máy tính trường Đại học Bách Khoa Hà Nội Người tạo điều kiện sở vật chất tinh thần, cung cấp tài liệu tham khảo cho em lời khun q báu để hồn thành đồ án Hà Nội, Ngày 20 tháng năm 2005 Sinh viên: Vũ Đức Chính Lớp: Tin Pháp K45 Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT -8- Mơ hình Middleware ứng dụng vào Virtual Network Computing CHƯƠNG I: ĐẶT VẤN ĐỀ 1.1 Các vấn đề chung thiết kế phần mềm môi trường phân tán Để xây dựng ứng dụng phân tán thường hay sử dụng hai mơ hình thơng dụng peer-to-peer client/server Mỗi mơ hình có ưu nhược điểm riêng ứng dụng môi trường cụ thể Trong phần đồ án em xin giới thiệu sơ qua hai mơ hình nhằm giúp cho người dễ dàng tiếp cận mơ hình phần mềm trung gian (middleware) hệ thống tính tốn mạng ảo xây dựng môi trường phân tán sử dụng mơ hình 1.1.1 Mơ hình peer-to-peer Một ứng dụng peer-to-peer bao gồm máy tính người sử dụng kết nối với thông qua liên kết mạng Dưới mơ hình topology ứng dụng gồm bốn người dùng mơ hình peer-to-peer Hình 1.1: Mơ hình Peer-to-Peer Một đặc điểm quan trọng mơ hình peer-to-peer thơng tin từ máy gửi cần phải đến tất máy khác nên băng thông đường truyền, thời gian xử tất máy tương đối lớn (do vai trò máy bình đẳng mơi trường mạng) Vì phát triển mạng Internet nên sử dụng mơ hình Client-Server mơ hình peer-to-peer lại thích hợp ứng dụng phát triển mạng LAN Trong mơ hình người dùng trao đổi thơng tin trực tiếp với thơng qua liên kết mạng Ví dụ, ứng dụng phía user (người dùng) bị thay đổi ứng dụng phải gửi message (thơng điệp) để cập nhật lại thông tin cho máy khác Bởi mơ hình khơng tồn server nên cần máy đứng làm máy chủ (host) Sau client truy vấn để tìm session (phiên) host Khi tìm máy chủ, client gia nhập session nên từ địa máy (client host) có quyền thực môi trường mạng Nếu máy Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT -9- Mơ hình Middleware ứng dụng vào Virtual Network Computing host gặp cố hệ thống chọn máy trạm (client) làm host khơng ảnh hưởng đến client lại Ưu điểm mơ hình peer-to-peer có ưu điểm đơn giản Nhưng nhược điểm mơ hình số lượng user tăng lên thì số lượng message tăng lên Vì số lượng client ứng dụng nên hạn chế mức cho phép 1.1.2 Mơ hình client/server Thuật ngữ client/server sử dụng lần vào năm 1980 mà phát triển máy tính hệ thống mạng tăng lên khơng ngừng Kiến trúc phần mềm client/server đưa sử dụng cuối năm 1980 tỏ linh hoạt Trên Internet, trình duyệt Web chương trình client mà yêu cầu dịch vụ gửi đến Web server thông qua giao thức HTTP từ máy tính nơi giới có kết nối Internet Kiến trúc client/server dạng chung hệ thống tính tốn phân tán Một hệ thống phân tán tập hợp nhiều máy tính, phân tán suốt hay không quan trọng người sử dụng Hệ thống xuất máy trạm hay máy cục bộ, chuyên gia, người có hiểu biết định hệ thống máy tính họ, việc lưu giữ liệu, cân tải chức hệ thống có tầm quan trọng lớn Một ứng dụng client/server bao gồm máy tính người sử dụng kết nối với thông qua máy server trung tâm Mơ hình client/server mơ tả đơn giản đây: Client Terminal PC Mạn g server Data Hình 1.2: Mơ hình Client/Server Các client (có thể PC, terminal, laptop…) khơng phép trao đổi thông tin trực tiếp lẫn mà phải gián tiếp qua Server Như thấy băng thông đường truyền thời gian xử lý máy chủ lớn máy khác lại nhỏ Việc tăng số lượng máy client đòi hỏi chủ yếu phải nâng cấp phía server Điều khuyến khích phát triển mạng Internet Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT - 10 - Mơ hình Middleware ứng dụng vào Virtual Network Computing VNC Server Communication Interface VNC Viewer VNC Viewer Hình 4.4: Mơ hình giao tiếp hệ VNC VNC Server chạy máy Window, Linux Solaris cho phép Client chạy máy khác mạng kết nối với cách dễ dàng Trên mơ hình giao diện truyền thông cung cấp dịch vụ kết nối loại mạng khác nhau, không phụ thuộc vào phần cứng hệ điều hành chạy máy VNC client Gói Network đảm nhận cơng việc Gói gồm lớp sau: • Connection Filter: kiểm tra socket kết nối • Socket: quản lý tồn q trình kết nối qua socket • SocketListener: Tạo socket đợi • TcpFilter • TcpListener • TcpSocket: ba lớp cài đặt việc kết nối sử dụng TCP/IP b Khối chức điều khiển + Hỗ trợ đa luồng + Xử lý thông điệp + Xử lý phiên + Quản lý tài nguyên Khối chức điều khiển cài đặt pakage Winvnc Pakage thừa kế từ gói winvnc/VNCServerWin32 rfb_win32/Service bao gồm lớp sau: • AddNewClientDialog: điều khiển kết nối tới VNCServer • JavaViewerServer: cài đặt trình duyệt Server • ManagerListening: Quản trị SOCKET đợi • QueryConnectDialog: Truy vấn kết nối tới VNCServer • StrayIconThread: tạo Thread cho Server • VNCServerService: thiết lập dịch vụ cho VNC Server • VNCServerWin32: Cài đặt mặc định cho VNC Server mơi trường Win32 Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT - 69 - Communication Interface Mơ hình Middleware ứng dụng vào Virtual Network Computing User Inteface VNC Server VNC Viewer Hình 4.5: Mơ hình giao tiếp người dùng hệ VNC Nhìn hình 4.5 thông qua giao diện người dùng, người sử dụng thiết lập chế độ làm việc Client Server Ở thiết lập bao gồm thiết lập kết nối, giao tiếp, kiện chuột bàn phím Nó cài đặt chủ yếu gói rdr, rfb_Win32, rfb Các gói gồm nhiều lớp em xin liệt kê số lớp để thấy rõ chức chính: - Rfb class: • CConnection: Tồn giao tiếp giao thức cài đặt lớp này, thừa kế lớp gói Connection • HTTPServer: thừa kế lớp Network cho phép giao tiếp mạng thơng qua HTTP • VNCServer: Cài đặt mặc định cho VNCServer c Khối chức chia sẻ tài nguyên + Chia sẻ hình + Chia sẻ chuột, bàn phím, clibboard -Rfb_Win32: gói tương tự gói rfb cung cấp giao tiếp Win32 4.1.2 VNC Viewer VNC VNCVIEWER VIEWER Kết Kếtnối nối Hiển Hiểnthị thị Điều Điềukhiển khiển Hình 4.6: Biểu đồ chức VNC Viewer Chúng ta nhận thấy rõ khối chức sau: Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT - 70 - Mơ hình Middleware ứng dụng vào Virtual Network Computing • Kết nối: Tạo phiên làm việc với VNC server thông qua TCP/IP, SOCKET,… • Hiển thị: Cập nhật thay đổi từ phía VNC Server, thiết lập chế độ hiển thị màu sắc, kích thước, thức nén,…của ảnh hiển thị • Điều khiển: sử dụng kiện thơng điệp chuột bàn phím, clipboard Thực cách phân tích tương đối khó để phân tích cách thật phù hợp cho hai hệ Ở em muốn đưa khối chức để vào phân tích tính chất, dịch vụ middleware xây dựng hướng giải để sử dụng VNC thật hiểu ứng dụng phân tán quản lý Chúng ta thấy hệ thống VNC sử dụng giao diện sau: • Giao diện người dùng, giao diện truyền thông: thực sử dụng hệ thống VNC người dụng dễ dàng sử dụng hệ thống thơng qua giao diện trực quan, sử dùng hệ điều hành, loại máy khác Chúng ta thấy rõ qua hình 4.7 Người sử dụng Giao diện người dùng VNC VIEWER Giao diện truyền thông VNC SERVER Hình 4.7: Các giao diện sử dụng hệ thống • Giao diện lập trình hệ thống: ta coi VNC middleware, thơng qua ta xây dựng ứng dụng sử dụng VNC để tạo ứng dụng quản lý phân tán (sẽ nói rõ phần ứng dụng vào BKEC tiếp theo) Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT - 71 - Mơ hình Middleware ứng dụng vào Virtual Network Computing 4.2 Middleware hệ thống tính tốn mạng ảo Phần thấy rõ tương tác hệ thống VNC, giao tiếp VNC Server VNC Viewer Nếu khơng có middleware ta hình dung giao tiếp hình Các VNC client kết nối trực tiếp đến VNC Server sau để thực giao tiếp Như VNC Client phải tự cài đặt tất kết nối tới VNC Server, có n Client phải tao n kết nối Điều khó khăn VNC Client chạy platform khác nhau, kết nối từ mạng khác chúng phải tự cài đặt kết nối cần thiết để giao tiếp với VNC Server VNC Client VNC Server VNC Client Hình 4.8: Giao tiếp hệ thống VNC khơng có middleware Qua phân tích trên, thay kết nối trực tiếp đến VNC Server, client kết nối thơng qua middleware, middleware có vai trò tạo kết nối giao tiếp client server Nó giúp cho VNC Client lo lắng vấn đề phần cứng platform khác VNC Client việc tạo kết nối tới middleware, điều dễ dàng middleware cung cấp điều thơng qua giao diện lập trình ứng dụng Nhìn vào hình thấy hệ thống VNC việc mở rộng kiến trúc client/server truyền thống cách đặt vào hai thành phần proxy server (chính middleware) nắm vai trò quan trọng việc sử lý thông điệp kết nối Như VNC server, Proxy Client Module (PCM) đóng vai trò VNC client ngăn chặn thông điệp frame buffer updat Và VNC client, lại Proxy Server Module (PSM) đóng vai trò VNC server ngăn chặn thông điệp user event Những thông điệp định hướng tới central Cooperation Manager (CM) để xử lý CM gửi multicast thông điệp từ VNC server tới collaborative VNC client theo PCM tương ứng trộn thông điệp từ VNC client tới VNC server theo PCM tương ứng Tại thời gian, lưu trữ thông điệp vào log files Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT - 72 - Mơ hình Middleware ứng dụng vào Virtual Network Computing Middleware Middleware Log PCM PSM VNC Client CM VNC Server PSM VNC Client Hình 4.9: Mơ hình middleware VNC Như toàn khối bao gồm CM, PCM Log middleware có nhiệm vụ giải tồn thơng điệp từ server đến client, hay kiện người dùng từ client đến server Tồn giao tiếp thơng qua middleware, nhìn nhận lại dịch vụ hệ thống đễ xem xét tính chất middleware thỏa mãn Các dịch vụ middleware bao gồm: • Register,remove record: dịch vụ cho phép kiểm soát kết nối bảng CM nắm giữ, ghi lại thông điệp gửi Nó thuộc dịch vụ thơng tin • Route, request, release reconnect: quản lý xử lý thông điệp thuộc dịch vụ điều khiển Qua dịch vụ nêu trên, thấy rõ middleware giúp cho client server kết nối với chạy từ Web, Unix, Windows,… mạng LAN hay Internet Middleware giúp cho client loại bỏ hẳn phụ thuộc vào phần cứng máy sử dụng 4.3 Ứng dụng chương trình BKEC 4.3.1 Vấn đề giải pháp phần mềm hỗ trợ giảng dạy mạng LAN (BKEC-ECLASS) Đi vào phần ứng dụng trước hết em xin trình bày ý tưởng giải pháp đưa phần mềm hỗ trợ giảng dạy mạng LAN (BKEC – Bách Khoa E - Class) Như biết mơ hình dạy học truyền thống Việt Nam dùng bảng chữ viết, thầy giáo đóng vai trò quan trọng tồn q trình giảng dạy Nhưng với phát triển khoa học công nghệ mơ hình dần Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT - 73 - Mơ hình Middleware ứng dụng vào Virtual Network Computing bộc lộ nhiều yếu điểm phòng học ngoại ngữ, tin học… Việc thầy nhiều trò lớp rộng làm giảng đáng kể chất lượng người dạy người học Xuất phát từ ý tưởng hướng dẫn thầy Ts Huỳnh Quyết Thắng, Ths Đinh Hùng nhóm chúng em gồm thành viên xây dựng phần mềm hỗ trợ tối đa giảng viên học viên lớp học giảng dạy, học tập quản lý thông qua giao tiếp âm hình ảnh đối thoại trực tiếp Việc giáo viên từ máy chủ tồn quyền quản lý giám sát máy học viên, hướng dẫn hiển thị trực quan đòi hỏi khơng thể thiếu phần mềm hỗ trợ giảng dạy Phần mềm gồm chức sau: + Chức chia sẻ hình (Desktop Sharing): Chức cho phép giáo viên giám sát tình hình học tập học viên, hiển thị hình giáo viên tất máy học viên nhằm thực việc giảng dạy trực tiếp mạng LAN + Chức truyền multimedia (hình ảnh, âm thanh) tới thành viên nhóm, tồn lớp học theo thời gian thực Nguồn multimedia từ file, đầu video số, card Tivi WebCam + Chức giao tiếp (voice chat, chat, Send message file transfer) giáo viên học viên + Chức điều khiển từ xa (Remote Control) Cho phép giáo viên khóa máy học viên (khóa hình, khóa bàn phím, khóa chuột) Cho phép giáo viên toàn quyền điều khiển máy học viên trực tiếp máy giáo viên Kiểm soát tiến trình chạy máy học viên + Chức quản trị phòng Lab: Thực phân chia nhóm học viên lớp giúp giáo viên dễ dàng quản lý q trình giảng dạy.Các thành viên nhóm thảo luận thơng qua voice hay text thời gian thực Giúp giáo viên quản lý tình hình học tập học viên từ đánh giá chất lượn giảng dạy học tập Dưới biểu đồ phân cấp chức hệ thống: Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT - 74 - Mơ hình Middleware ứng dụng vào Virtual Network Computing Hình 4.10: Mơ hình phần mềm BKEC phân cấp theo chức Thông qua biểu đồ thấy rõ phần mềm bao gồm số lớn chức có hầu hết ứng dụng client/server thông dụng nhiều tổ chức xây dựng Việc xây dựng hoàn toàn từ ban đầu điều khó khăn khơng muốn nói khơng thể nhóm chúng em Vì giải pháp chọn sản phẩm có sẵn hỗ trợ phần mềm giải pháp khả quan giúp tiết kiệm thời gian tiền mang đến hiệu công việc cao Trong phần mềm chúng em sử dụng hai sản phẩm Direct Play 9.0 Microsoft VNC viện Olivetti & Oracle Research Laboratory Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT - 75 - Mơ hình Middleware ứng dụng vào Virtual Network Computing Direct Direct Play Play 9.0 9.0 Dịch Dịch vụ vụ truyền truyền thông thông (kết (kết nối, quản lý kết nối, chat nối, quản lý kết nối, chat voice, voice, chat chat text) text) Dịch Dịch vụ vụ điều điều khiển khiển (sử (sử dụng thành phần khác dụng thành phần khác trong ứng ứng dụng, ) dụng, ) … … BKEC Client BKEC Server MIDDLEWARE MIDDLEWARE BKEC Client Hình 4.11: Mơ hình middleware sử dụng Direct Play 9.0 Phần mềm sử dụng Direct Play 9.0 thơng qua giao diện lập trình, giao diện lập trình hệ thống để xây dựng chức giao tiếp cho client server Thực Direct Play X cung cấp nhiều dịch vụ khác, phần mềm BKEC giai đoạn đầu xây dựng để sử dụng mạng LAN nên chưa sử dụng hết dịch vụ cung cấp Thông qua Direct Play 9.0, BKEC Server dễ dàng tạo kết nối tới client thông qua giao tiếp TCP/IP UDP, quản lý kết nối, giao tiếp thông điệp, text tiếng nói Cung cấp dịch vụ đa luồng, dịch vụ thông tin để nhận xử lý thông điệp, kết nối từ nhiều client, cho phép client dễ dàng giao tiếp với cách trực tiếp gian tiếp qua server Phần mềm bao gồm hai phần: phần ứng dụng chạy máy giáo viên (BKEC – Server) phần ứng dụng chạy máy học viên (BKEC – Client) Trong hệ thống lớp quan trọng SystemServer SystemClient, hai lớp kiểm sốt tồn hoạt động hệ thống, chịu trách nhiệm trao đổi thông tin, liệu Server/Client, quản trị sở liệu học viên, nhóm lớp học điều khiển chức tồn hệ thống Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT - 76 - Mơ hình Middleware ứng dụng vào Virtual Network Computing a Lớp SystemServer Hình 4.12: Biểu đồ lớp quan hệ lớp System Server Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT - 77 - Mơ hình Middleware ứng dụng vào Virtual Network Computing Hình 4.13: Lớp System Server Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT - 78 - Mơ hình Middleware ứng dụng vào Virtual Network Computing b Lớp SystemClient Input + Mouse + Keyboard Desktop Bitmap image Window API Hooking Desktop + Input + Desktop Display Desktop Data Encoding Desktop Data Decoding + Raw + Raw + ZRLE + ZRLE + Hextile + Hextile Hình 4.14: Biểu đồ quan hệ lớp SystemClient + RRED + RRED Tiếp theo hệ thống VNC sử dụng để xây dựng chức chia sẻ hình Chức cho phép giáo viên giám sát tình hình học tập học viên, hiển thị hình giáo viên tất máy học viên nhằm thực Decompression Compression việc giảng dạy trực tiếp mạng LAN Như thông qua VNC dễ dàng thực điều cách sử dụng dịch vụ VNC cung cấp (ở chủ yếu dịch vụ truyền thông, thông tin sử dụng giao diện lập trình ứng dụng, lập trình hệ thống…) Stream Stream Mơ hình+ giao tiếp VNC phần mềm BKEC hình In Stream + In Stream Trong hệ thống+ BKEC, quan tâm tới +việc Outtruyền Streamdữ liệu ảnh OutStream hình Chỉ hình có thay đổi vùng hình chức Windows API Hooking thu nhận thay đổi (theo tọa độ, kích thước hình ảnh) Sau hình ảnh chuyển thành kiệu pixel Dữ liệu sau chụp dạng thơ cho nênNetwork mã hóa nhờ chức Desktop Data Encoding Network Chức Compression tiếp tục nén liệu chuyển vào luồng Chức + Socket + Socket Stream Network có nhiệm vụ truyền thông tin+tới máy client dạng TCPSocket + TCPSocket khung liệu framebuffer FrameBuffer Current Token User (1) Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT Server Current Token User (n) - 79 - Client Mơ hình Middleware ứng dụng vào Virtual Network Computing Hình 4.15: Mơ hình trao đổi thông tin BKEC Server BKEC Client Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT - 80 - Mơ hình Middleware ứng dụng vào Virtual Network Computing VNC VNC Dịch Dịch vụ vụ truyền truyền thông thông (kết (kết nối) nối) Dịch Dịch vụ vụ điều điều khiển khiển Dịch Dịch vụ vụ thông thông tin tin (truyền (truyền liệu, lưu, kiểm liệu, lưu, kiểm tra) tra) BKEC Client BKEC Server MIDDLEWARE MIDDLEWARE BKEC Client Hình 4.16: Mơ hình middleware sử dụng VNC Trong BKEC chúng em sử dụng VNC vào hai chức trình diễn giảng kiểm sốt hình học viên Chúng em sử dụng VNC để lấy hình học viên quan sát xem hành động diễn ra, chia sẻ hình giáo viên giảng dạy giúp học viên chủ động việc học tập Phần mềm lấy hình để chia sẻ cho nhóm lớp quan sát Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT - 81 - Mơ hình Middleware ứng dụng vào Virtual Network Computing CHƯƠNG V: KẾT LUẬN 5.1 Kết đạt Đề tài với mục đích nghiên cứu cách tổng quan mơ hình middleware, tìm hiểu ứng dụng thực tế đưa xu hướng phát triển thời gian tới Trong đồ án này, em đưa kiến thức kiến trúc, ứng dụng khả phát triển middleware phần mềm phân tán Qua kiến thức chung em đưa sơ hệ thống tính tốn mạng ảo (giao thức ứng dụng to lớn việc xây dựng phần mềm quản lý desktop mơi trường phân tán) đóng góp middleware Đề tài xây dựng để đánh giá khả chúng vào ứng dụng thực tế Việt Nam mà xu hướng phát triển sử dụng mã nguồn mở, xây dựng phần mềm hướng thành phần ngày trở nên phổ biến Giúp cho nhà phát triển phần mềm kiến thức chung để tiếp cận sản phẩm trung gian nhằm lựa chọn thành phần cách hợp lý cho sản phẩm mình, rút ngắn thời gian xây dựng nâng cao chất lượng sản phẩm Đồ án số hạn chế việc ứng dụng middleware vào VNC chưa thật hiệu quả, việc cài đặt chương trình hạn chế mạng LAN Chưa xây dựng middleware mang tính ứng dụng cao 5.2 Hướng phát triển tương lai Tiếp tục nghiên cứu phát triển ứng dụng theo hai hướng: • Xây dựng hoàn thiện phần mềm BKEC ứng dụng có hiệu phần mềm trung gian có sẵn (đặc biệt hệ thống tính tốn mạng ảo) • Tìm hiểu đưa phần mềm trung gian với giá chức hợp lý công nghiệp phần mềm nước ta Trên kiến thức tổng quan chúng phần mềm trung gian, hy vọng thời gian tới em đưa nghiên cứu sâu nữa, tự xây dựng phần mềm trung gian giúp xây dựng ứng dụng phân tán môi trường mạng LAN nhằm quản lý desktop họp giao ban trực tuyến, phiên họp trực tuyến, mơ hình giảng dạy đa chức năng… Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT - 82 - Mơ hình Middleware ứng dụng vào Virtual Network Computing TÀI LIỆU THAM KHẢO [1] The Middleware Source Book – John Colonna-Romano Patricia Srite 1998 [2] High-Performance Client/Server - Chris Loosley and Frank Douglas [3] A Middleware Architecture for Scalable, QoS - Aware and Self-Organizing Global Services-Franz J Hauck, Erich Meier, Ulrich Becker, Martin Geier, Uwe Rastofer, Martin Steckermeier 2004 [4] Middleware Architecture Report: “A Middleware Framework for Delivering Business Solutions” 2004 [5] IRTL (Information Resource Transaction Layer) Middleware Design for P2P and Open GRID Services - Junseok Hwang, Praveen Aravamudham, Elizabeth Liddy, Jeffrey Stanton, and Ian MacInnes School of Information Studies,Syracuse University 2003 [6] An Open Middleware Architecture for Network-Integrated Multimedia-Marco Lohse, Michael Repplinger, and Philipp Slusallek 2004 [7] Mike Stock of Zurich, Switzerland - Technologies for Thin Client Architectures - Master Thesis in Computer Science – 2001 [8] Brian Madden - Thin Client Server Computing – 1999 [9] A Middleware Architecture for Transactional, Object-Oriented Applications Christoph Hartwich - 14 November 2003 [10] The Gridbus Middleware 2004 - http://www.gridbus.org [11] IRTL (Information Resource Transaction Layer) Middleware Design for P2P and Open GRID Services, Junseok Hwang, Praveen Aravamudham, Liz Liddy, Jeff Stanton,Ian MacInnes, May 30, 2004 [12] Các tài liệu CORBA [13] Các tài liệu hệ tính tốn lưới [14] Các trang Web tổ chức, công ty phát triển middleware [15] http://www.realvnc.com [16] http://www.ieee.com Vũ Đức Chính - Tin Pháp K45 – Khoa CNTT - 83 -

Ngày đăng: 07/10/2019, 09:45

Xem thêm:

Mục lục

    MỤC LỤC HÌNH VẼ

    MỤC LỤC TỪ VIẾT TẮT

    CHƯƠNG I: ĐẶT VẤN ĐỀ

    1.1. Các vấn đề chung về thiết kế phần mềm trong môi trường phân tán

    1.1.2. Mô hình client/server

    1.2. Một số vấn đề liên quan đến các ứng dụng phân tán theo mô hình client/server

    1.2.1 Tiến trình giao tiếp

    1.3. Mô hình phần mềm trung gian middleware

    1.4. Hệ thống tính toán mạng ảo (Virtual Network Computing)

    CHƯƠNG II: MÔ HÌNH PHẦN MỀM TRUNG GIAN MIDDLEWARE

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w