Khái quát về công nghệ
Kiến trúc tính toán độc lập (ICA-Independent Computing Architecture) là một giao thức trình diễn phân tán được phát triển bởi Microsoft. Nó được thiết kế để cung cấp các hiển thị với một tầm quan trọng trên mạng có băng thông không lớn. ICA là một giao thức đường truyền sử dụng để giao tiếp giữa client và server và có thể mở rộng những chức năng sau:
Trình diễn ở chế độ full-screen
Trình diễn hình ảnh ứng dụng Graphical Windows
Đầu vào từ chuột và bàn phím
Điều khiển phiên kết nối
Các kết nói đồng bộ hóa trên mỗi frame
Phát hiện và khôi phục lỗi
Mã hóa và các compression hooks
Liên kết file hệ thống, in ấn, cổng COM
Các kết nối ảo theo kiểu Multiple
Giao thức này thường được sử dụng để hiển thị các ứng dụng được gọi là Thinwire.
Thinwire là một dòng dữ liệu lôgic đóng gói trong một gói tin ICA.
Hình 3.5: Thông tin giữa ICA client và server
ICA không độc lập với optional protocol drivers. Những thông điệp và đàm phán trong quá trình bắt tay của ICA xảy ra khi bắt đầu một phiên kết nối. Protocol drivers có thể được xóa bỏ hay thay thế và bổ sung thêm các driver. ICA hoạt động cùng với các công nghệ kết nối như TCP/IP, NetBIOS or IPX.
Hình 3.6: Giao thức ICA và tầng giao vận
Đánh giá công nghệ
Client
Tài nguyên ICA client (UI engine’s footprint) chiếm rất ít chỉ khoảng 150KB. Đủ nhỏ để được nạp các yêu cầu từ server. Bởi vì ICA được dựa trên trình diễn phân tán, client không bao gồm các giao diện người dùng đồ họa lớn mà nó chỉ đơn thuần là hiển thị đồ họa từ các giao diện người dùng đồ họa.
Protocol
Giao thức Windows widgets cho phép tối ưu hóa cập nhật linh họat từ giao diện người dùng đồ họa. Giao thức sử dụng kiểu nén để làm giảm việc nạp từ mạng vào trong hàng đợi cho phép tối ưu đường truyền. Hơn nữa dữ liệu thì được mã hóa trên từng mức gói tin ICA. Dữ liệu bao gồm keystrokes, client drive và dữ liệu in.
Mã hóa của ICA được chứng minh là không an toàn. Họ dùng mã SecureICA, được đưa bởi Citrix sử dụng khóa trao chuyển Diffie-Hellman và sử dụng 128-bit RC5 để mã hóa tầng giao vận. Tuy nhiên, chúng chỉ hỗ trợ cho Windows và các trình duyệt Web.
Server
ICA thì không cung cấp cơ chế điều khiển phiên. Hệ điều hành chạy server ICA không quan tâm tới vấn đề đó. Hầu hết các server ICA cung cấp chế độ cân bằng tải hoặc gửi chúng theo những thành phần mở rộng. Trong khi đó khả năng sẵn sàng, tính chịu lỗi chỉ trên mức phần cứng.