Java Applet là các đối tƣợng đƣợc thực hiện trên trình duyệt Web. Khi thực hiện trên các trình duyệt Web, Java Applet cũng tạo ra các hiệu ứng nhƣ một ứng dụng bình thƣờng, tuy nhiên các thông tin cho phép Java Applet thực hiện lại đƣợc đƣa từ các trang Web. Ngƣời sử dụng dùng trình duyệt Web (browser) để xem các trang thông tin, trong đó có nhúng đối tƣợng Java Applet. Khi trình duyệt Web truy cập đến trang thông tin này, Java Applet sẽ đƣợc tải về trình duyệt Web và đƣợc thực hiện thông qua một cơ chế gọi là Java Virtual Machine (JVM) đã đƣợc cài sẵn trong trình duyệt. Việc sử dụng Applet trong quản trị mạng trên Web giúp giải quyết một số vấn đề mà quản trị mạng theo mô hình SNMP chƣa làm đƣợc. Nó làm giảm chi phí phát triển các phần mềm quản lý mạng, giải quyết vấn đề phiên bản MIB khác nhau trong cùng mạng, làm giảm thời gian quản lý, không phụ thuộc vào phần cứng và hệ điều hành (có thể chạy trên máy cài hệ điều hành Windows, Linux, Mac hay Unix,...)
Quá trình đẩy dữ liệu của Applet đƣợc mô tả trong hình 2.1. Giống nhƣ với các nền tảng quản lý mạng truyền thống, các điểm truy cập cho ngƣời sử dụng (quản trị viên hay ngƣời điều hành) là một bản đồ mạng đƣợc lấy từ một trình duyệt Web nội bộ. Bản đồ này có thể là một Applet chuyên biệt, hay đơn giản hơn là một hình ảnh GIF đƣợc sử dụng nhƣ bản đồ: khi ngƣời dùng nhấp chọn biểu tƣợng của một thiết bị mạng, các tọa độ (x, y) đƣợc ánh xạ tới các Agent bằng một CGI script, và URL tƣơng ứng đƣợc yêu cầu từ các Agent đã chọn. Các máy chủ
Số hóa bởi Trung tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
khi nhận đƣợc thông tin yêu cầu từ Agent sẽ lấy Applet mà nó quản lý và gửi trở lại trình duyệt Web. Khi Applet đƣợc tải lên bởi trình duyệt, ta có hai cách để xử lý: Sử dụng SNMP hoặc HTTP.
Nếu sử dụng SNMP, sự tƣơng tác giữa ngƣời quản lý (trình duyệt chạy trên máy) và các Agent (các thiết bị mạng) đƣợc mô tả nhƣ hình 2.1. Bƣớc 1 và bƣớc 2 diễn ra một lần để chuyển Applet, trong khi bƣớc 3 và bƣớc 4 là một quá trình lặp đi lặp lại. Mũi tên ở bƣớc 2 cho ta thấy Applet đƣợc chuyển từ Agent đến ngƣời quản lý. Trên thực tế, quá trình chuyển này diễn ra giữa ngƣời dùng HTTP của trình duyệt Web và máy chủ HTTP của Agent. Khi Applet đƣợc tải lên, ngƣời sử dụng sẽ có thể quản lý thiết bị mạng đó. Giao diện đồ họa đƣợc dịch ra lệnh SNMP của Applet (Ví dụ: click chuột vào nút reset có thể ánh xạ thành câu lệnh set của SNMP)
Hình 2.1. Mô hình Pull: HTTP và SNMP
Vấn đề đặt ra là làm thế nào để nạp SNMP vào trình duyệt, một phƣơng pháp đƣợc đƣa ra khá hiệu quả đó là đóng gói các thành phần của SNMP vào một Applet, mô hình bảo mật dữ liệu của Applet sẽ giúp bảo vệ dữ liệu. Do vậy, mỗi khi Applet quản lý lấy dữ liệu từ một thiết bị mạng, các thành phần SNMP phải đƣợc di chuyển cùng. Điều này rõ ràng là không hiệu quả, đặc biệt là nếu chuyển giao này diễn ra trong mạng WAN. Một cải tiến đƣợc đƣa ra để lấy các giá trị
Số hóa bởi Trung tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
SNMP là thông qua socket. Với mô hình bảo mật Applet, socket chỉ có thể đƣợc mở giữa một Applet và máy chủ gốc của nó, vì thế ta cần một proxy để hoạt động nhƣ máy chủ. Các Applet quản lý sẽ yêu cầu (request) thông qua proxy của trình duyệt, sau đó proxy liên lạc với các thiết bị trong mạng và lấy Applet mà không cần các giá trị SNMP. Applet đƣợc đẩy lên trình duyệt để xử lý, sau đó Applet mở socket đến proxy. Các giá trị SNMP sẽ đƣợc chuyển qua socket. Sau đó tất cả lƣu lƣợng truy cập SNMP giữa ngƣời quản lý và thiết bị chỉ đơn giản là chuyển tiếp dữ liệu qua proxy.
Cách tiếp cận này vẫn còn hạn chế vì bằng cách mã hóa dữ liệu MIB (biến MIB) hay nhúng nó vào một tài liệu có cấu trúc HTML, vấn đề bảo mật sẽ đƣợc cải thiện. Hình 2.2 minh họa cho giải pháp này. SNMP không còn đƣợc sử dụng giữa ngƣời quản lý và thiết bị, do đó không cần phải có SNMP client trong trình duyệt Web và ta không cần proxy nữa.
Hình 2.2. Mô hình Pull: HTTP thay thế SNMP
Trong hình 2.2 MIB của thiết bị đại diện cho MIB của một nhà cung cấp thiết bị mạng cụ thể. Khi một biến MIB đƣợc Applet truy vấn, yêu cầu này đƣợc thực trên HTTP của thiết bị. HTTP này sẽ đƣa ra một HTTP-to-SNMP gateway để truy cập vào MIB của thiết bị. Tùy thuộc vào mức độ tối ƣu của mã đƣợc quản lý, gateway này có thể trực tiếp truy cập vào cấu trúc dữ liệu MIB trong bộ nhớ hoặc thực hiện lệnh get, set trong SNMP.
Số hóa bởi Trung tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Hình 2.3. Mô hình Pull: Quản lý Ad hoc dựa trên HTTP
Hình 2.3 mô tả mô hình Pull đƣợc xây dựng trên cơ sở kết hợp giữa phƣơng pháp quản lý Ad hoc với Applet dựa trên HTTP. Ngƣời quản trị chỉ cần ngồi tại một máy tính có kết nối Internet, truy cập vào máy chủ Web yêu cầu truy vấn thông tin thiết bị mình quản lý. Các máy chủ web có thể đƣợc đặt ở bất kỳ đâu trên Internet hoặc mạng nội bộ. Các MIB trong thiết bị mạng đại diện cho tất cả các MIB chung đƣợc hỗ trợ bởi thiết bị, cộng với nhà cung cấp cụ thể của nó.