BranchCache – P.1: Khái quát về BranchCache

Quản trị mạng - Trong loạt bài viết này chúng ta sẽ đi tìm hiểu một tính năng mới được tích hợp trong hệ điều hành Windows Server 2008 R2 và Windows 7 có tên BranchCache. Trong phần một này chúng ta sẽ khái quát đôi nét về tính năng mới này.

Nhân viên tại các văn phòn chi nhánh luôn phải truy cập vào nguồn dữ liệu được lưu trữ trên Web File Servers đặt tại văn phòng chính. Để cho phép người dùng tại văn phòng chi nhánh truy cập vào nguồn dữ liệu này tại văn phòng chính, thì cần phải có một kết nối mạng. Trước đây những liên kết WAN chuyên dụng thường được sử dụng cho kiểu kết nối này. Tuy nhiên, do những liên kết WAN này có chi phí khá cao nên nhiều công ty đã chuyển sang sử dụng công cụ kết nối mạng riêng ảo (VPN) với chi phí kết nối Internet thấp để tạo ra các VPN site to site. Các VPN site to site cung cấp cùng loại kết nối được kích hoạt bởi các liên kết WAN chuyên dụng nhưng với chi phí thấp hơn nhiều.

Tuy nhiên, việc kết nối các văn phòng chi nhánh tới văn phòng chính mới là vấn đề chính. Không xét đến phương pháp áp dụng để kết nối văn phòng chi nhánh tới văn phòng chính, thông thường tốc độ kết nối thường bị giới hạn gây khó khăn trong công việc. Nhân viên luôn phải truy cập vào nguồn dữ liệu tại văn phòng chính để xử lý công việc, nhưng tất cả những nhân viên ở các văn phòng chi nhánh lại phải chia sẻ cùng một băng thông rộng giới hạn mà văn phòng chi nhánh đang sử dụng. Và nếu các truy cập tới văn phòng chính cùng thực hiện tại một thời điểm thì chắc chắn sẽ gây ra vấn đề với băng thông này. Cho dù không phải tất cả người dùng cần truy cập tới văn phòng chính tại cùng một thời điểm, thì có thể một người dùng cần phải truy cập vào những file có kích thước lớn, và có thể mất hàng giờ để có thể hoàn thành tải. Và nếu một người dùng khác cũng cần truy cập vào file này thì họ sẽ phải đợi một khoảng thời gian tương tự, hậu quả là đường truyền Internet sẽ bị tắc nghẽn.

Wide Area File Services

Có khá nhiều công cụ đã được áp dụng giúp cho công việc của nhân viên tại các văn phòng chi nhánh được thực hiện dễ dàng hơn. WAFS (Wide Area File Services – Dịch vụ truy cập file phạm vi rộng) gồm nhiều công cụ. Mục đích của nhóm công cụ này là tăng tốc truy cập vào dữ liệu qua các liên kết WAN tương đối chậm.

Vấn đề lớn nhất với hầu hết các công cụ WAFS đó là chúng có chi phí cao, thường rất khó cài đặt và cấu hình dù những hiệu quả mà các công cụ này mang lại là không thể phủ nhận. Tuy nhiên những gì chùng ta cần là một công cụ có chi phí phù hợp và dễ dàng quản lý. Và còn tiện dụng hơn nhiều nếu công cụ đó được tích hợp trên hệ điều hành dành cho máy trạm và máy chủ được sử dụng trong mạng.

BranchCache

Hệ điều hành Windows Server 2008 R2 và Windows 7 chính là công cụ mà chúng ta đang mong đợi. Khi kết hợp máy trạm Windows 7 với máy chủ Web/file của Windows Server 2008 R2 chúng ta có thể sử dụng công cụ mới có tên BranchCache. Đây là một công cụ mới của Microsoft cho phép các văn phòng chi nhánh lưu trữ dữ liệu được lấy về từ văn phòng chính.
Dữ liệu có thể được lưu trữ khi sử dụng ba giao thức sau:
  • SMB 2.0
  • HTTP
  • BITS (Background Intelligent Transfer Service)
BranchCache làm việc với nhiều lược đồ mã hóa mạng khác nhau. Do đó nếu người dùng tại văn phòng chi nhánh truy cập dữ liệu trên một trang SSL được lưu trữ tại văn phòng chính thì BranchCache sẽ làm việc với những kết nối mà không cần cấu hình bổ sung hay bất kì thao tác nào. Tương tự, nếu sử dụng IPSec trên mạng, ví dụ trong một máy chủ hay môi trường tách biệt miền, thì BranchCache sẽ làm việc với các kết nối được được IPSec bảo vệ.

Chúng ta có thể sử dụng BranchCache trên mạng IPv4 hoặc IPv6. Nếu không thể triển khai DirectAccess vì chưa tăng tốc cho IPv6 hay môi trường IPv6 không hỗ trợ DirectAccess thì chúng ta vẫn có thể vận hành BranchCache vì nó không phụ thuộc vào IPv6.


Hình 1: Mô hình truyền tải dữ liệu giữa văn phòng chính và văn phòng chi nhánh
khi sử dụng BranchCache

BranchCache cần được kích hoạt trên cả máy trạm và máy chủ. Khi một người dùng truy cập vào dữ liệu trên một máy chủ Web và file đã được kích hoạt BranchCache thì người udngf này vẫn được xác thực dù BranchCache chưa được triển khai. Sau khi người dùng được xác thực thì họ sẽ được phân quyền như khi BranchCache chưa được kích hoạt.






Hosted Mode và Distributed Mode của BranchCache

BranchCache có thể được cấu hình để làm việc trong hai chế độ Hosted Mode (chế độ tập trung) và Distributed Mode (chế độ phân tán).


Hình 2: Distributed Mode và Hosted Mode của BranchCache.

Hosted Mode

Hosted Mode được sử dụng khi có trên 50 hệ thống máy trạm tại các văn phòng chi nhánh. Với Hosted Mode những máy trạm tại văn phòng chi nhánh được cấu hình với FQDN của một máy tính tại văn phòng chi nhánh được cấu hình là một máy chủ BranchCache.
Khi máy trạm lấy dữ liệu từ máy chủ file/Web đã kích hoạt BranchCache tại văn phòng chính thì nó sẽ giới thiệu dữ liệu này tới máy chủ BranchCache tại văn phòng chi nhánh và máy chủ BranchCache sẽ tải dữ liệu đó từ máy trạm này và cho phép các máy trạm khác truy cập vào dữ liệu này khi dữ liệu này được yêu cầu.

Như vậy các máy trạm tại văn phòng chi nhánh có thể lấy được cùng loại dữ liệu với người dùng truy cập trước tiên, nhưng các máy trạm này lấy dữ liệu từ máy chủ BranchCache qua kết nối LAN tốc độ nhanh thay vì sử dụng liên kết WAN tốc độ chậm.

Distributed Mode

Distributed Mode có thể được sử dụng khi có ít hơn 50 hệ thống máy trạm tại văn phòng chi nhánh. Trong trường hợp này sẽ không có máy chủ BranchCache nào được sử dụng. Thay vào đó các máy trạm sẽ được kích hoạt BranchCache để lưu trữ dữ liệu ngay trên ổ cứng cục bộ.

Khi máy trạm đầu tiên tại văn phòng chi nhánh lấy dữ liệu từ máy chủ file/Web được kích hoạt BranchCache thì máy trạm này sẽ lưu trữ dữ liệu đó trên ổ cứng cục bộ. Mặc định, 5% dung lượng ổ cứng của máy trạm đã được kích hoạt BranchCache sẽ được bảo tồn để thực hiện lưu trữ. Khi một máy trạm khác muốn lấy cùng loại dữ liệu thì dữ liệu này được trả về từ máy trạm đầu tiên đã truy cập vào thay vì máy chủ Web/file tại văn phòng chính.
Distributed Mode sử dụng một giao thức đa điểm để thông báo dữ liệu được lưu trữ trên các máy trạm. Do đó mọi máy trạm trên mạng của văn phòng chi nhánh phải có có cùng ID mạng, hay chính xác hơn là cùng một vùng đa điểm. Ngoài ra các máy trạm đang ngủ đông hay ngắt kết nối khỏi mạng sẽ không thể cung cấp dữ liệu được lưu trữ tới các người dùng khác.

Một máy trạm không thể sử dụng cả hai chế độ Hosted và Distributed. Nếu máy trạm được cấu hình sử dụng Hosted Mode thì nó sẽ không giữ lại những dữ liệu được lưu trữ cục bộ. Nếu máy trạm này sử dụng Distributed Mode thì nó sẽ không kết nối tới máy chủ BranchCache cục bộ của Hosted Mode.

Những ứng dụng sử dụng tính năng trong ngăn xếp mạng của Windows 7 sẽ khai thác hết được BranchCache khi truy cập vào dữ liệu trên các máy chủ BranchCache sử dụng giao thức SMB 2.0 hay HTTP 1.1. Điều này có nghĩa là người dùng sẽ được lợi khi sử dụng Internet Explorer, Windows Explorer, Windows Media Player, … để truy cập dữ liệu. Tuy nhiên, nếu có những ứng dụng chủ sử dụng dịch vụ SMB hay HTTP 1.1 riêng thì chúng sẽ không tận dụng được BranchCache. Tuy nhiên những ứng dụng khác trên cùng một hệ thống sẽ tận dụng được khả năng của BranchCache nếu chúng sử dụng ngăn xếp gốc của hệ điều hành.

Metadata của BranhCache

Để đảm bảo rằng dữ liệu chính xác được chuyển đến những máy trạm đã yêu cầu, máy chủ BranchCache sử dụng một lược đồ Hash để xác định nội dung. Khi một người dùng truy cập vào dữ liệu trên máy chủ file/Web đã kích hoạt BranchCache thì máy chủ này sẽ phản hồi tới người dùng một giá trị Hash SHA256 của dữ kiệu đó thay vì trả về dữ liệu. Điều này làm giảm đáng kể lượng dữ liệu được truyền qua liên kết WAN vì Metadata (siêu dữ liệu) nhỏ hơn 2000 lần so với dữ liệu thực.

Lưu ý: Người dùng phải được xác thực và phân quyền để truy cập vào dữ liệu đó trước khi Metadata được gửi tới người dùng.

BranchCache thực hiện tính toán hai giá trị Hash sau:
  • Dữ liệu được chia nhỏ thành khối và một giá trị Hash sẽ được gán cho mỗi khối.
  • Những tập hợp khối được xác định và gán nhãn segments – phân đoạn, và một giá trị Hash sẽ được gán cho mỗi phân đoạn.
Những giá trị Hash của phân đoạn được sử dụng để xác định dữ liệu, và giá trị Hash của khối được sử dụng để tải dữ liệu. Nếu giá trị Hash trên các phân đoạn thay đổi thì nó sẽ cho biết dữ liệu đó cũng đã thay đổi và người dùng sẽ phải lấy file này từ vùng lưu trữ khác đã cập nhật dữ liệu hay từ máy chủ file/Web ban đầu.

Dữ liệu sẽ được mã hóa khi di chuyển giữa các máy trạm (trong Distributed Mode), hay giữa máy trạm và máy chủ (trong Hosted Mode). Sau đó dữ liệu này được giải mã bằng một Identifier của máy chủ chứa dữ liệu đó. Identifier chỉ có thể sử dụng khi người dùng đã xác thực thành công với máy chủ file/Web đã kích hoạt BranchCache, và sau khi họ đã được xác nhận đủ thẩm quyền truy cập dữ liệu đó. Do đó những người dùng chưa được phân quyền với dữ liệu đó sẽ không thể lấy từ nguồn lưu trữ.






Phương pháp vận hành của BranchCache trong Distributed Mode


Một máy trạm tại văn phòng chi nhánh yêu cầu một file trên máy chủ file/Web đã kích hoạt BranchCache tại văn phòng chính. Yêu cầu này có thể thực hiện qua SMB 2.0, HTTP 1.1, hay BITS. Máy trạm sẽ thông báo cho máy chủ đã kích hoạt BranchCache biết rằng BranchCache có thể sử dụng nhiều field, message hay header là thành phần của giao thức đã kích hoạt BranchCache được ngăn xếp mạng của máy trạm Windows 7 sử dụng.


Hình 4: Phương pháp vận hành của BranchCache trong Distributed Mode.

Máy chủ BranchCache sẽ phản hồi và cung cấp cho máy trạm một nhóm Identifier xác định dữ liệu mà máy trạm yêu cầu. Dữ liệu này được truyền qua kết nối thiết lập giữa máy trạm và máy chủ sử dụng giao thức thiết lập kết nối ban đầu (SMB, HTTP 1.1 hay BITS).

Máy trạm sẽ tìm kiếm một máy tính cục bộ đã có dữ liệu này căn cứ vào những Identifier do máy chủ BranchCache cung cấp. Máy trạm Windows 7 sử dụng một giao thức mới, BranchCache Discovery Protocol (sử dụng WS-Discovery), để chuyển yêu cầu này tới mọi máy trạm trên cùng một ID mạng khi một máy trạm yêu cầu dữ liệu này. Trong ví dụ này, máy trạm này là máy trạm đầu tiên trong văn phòng chi nhánh yêu cầu dữ liệu này nên sẽ không có bản copy nào của dữ liệu được lưu trữ tại văn phòng chi nhánh.

Vì máy trạm không thể tìm thấy bản copy dữ liệu yêu cầu tại văn phòng chi nhánh, nên nó sẽ gửi một yêu cầu khác tới máy chủ BranchCache. Lần này, máy trạm thông báo cho máy chủ BranchCache rằng nó không thể tìm thấy dữ liệu trong một BranchCache tại văn phòng chi nhánh. Sau đó máy chủ sẽ phản hồi bằng cách gửi dữ liệu thực tới máy trạm, sau đó máy trạm này sẽ lưu trữ dữ liệu trên ổ cứng cục bộ.

Sau đó, một máy trạm thứ hai tại văn phòng chi nhánh cần truy cập vào dữ liệu trên. Nó sẽ kết nối tới máy chủ BranchCache tại văn phòng chính rồi tải Identifier cho dữ liệu được yêu cầu sau khi được xác thực và phân quyền với dữ liệu đó.

Khi đó máy trạm thứ hai này sẽ sử dụng BranchCache Discovery Protocol để phát tán yêu cầu cho dữ liệu này tới những máy trạm tại văn phòng chi nhánh. Khi máy trạm đầu tiên nhận được yêu cầu từ máy trạm thứ hai nó sẽ phát hiện ra dữ liệu mà máy trạm thứ hai đang yêu cầu được lưu trữ trên ổ cứng cục bộ của nó và sẽ gửi một phản hồi tới máy trạm thứ hai.

Sau đó máy trạm thứ hai sẽ phản hồi trởi lại kèm yêu cầu dữ liệu từ máy trạm thứ nhất. Kết nối này sử dụng giao thức BranchCache Retrieval Protocol (sử dụng HTTP). Máy trạm thứ nhất sẽ gửi dữ liệu tới máy trạm thứ hai qua HTTP. Lưu ý rằng dữ liệu này được mã hóa bởi các Identifier của máy chủ dữ liệu, do đó dữ liệu này không thể bị ngăn cản khi đang gửi đi. Máy trạm thứ hai sẽ xác nhận dữ liệu này ngược trở lại Identifier của nó (được máy chủ dữ liệu cung cấp). Nếu quá trình xác nhận thành công, dữ liệu sẽ được mở bởi ứng dụng yêu cầu.

Phương pháp vận hành của BranchCache trong Hosted Mode

BranchCache trong Hosted Mode vận hành hoàn toàn khác với một nhóm giao thức mạng khác nhau để hỗ trợ cho công cụ này.

Hình 3: Phương pháp vận hành của BranchCache trong Hosted Mode.

Một máy trạm tại văn phòng chi nhánh yêu cầu một file trên một máy chủ file/Web đã kích hoạt BranchCache tại văn phòng chính. Tiến trình này có thể thực hiện qua SMB 2.0, HTTP 1.1 hay BITS. Máy trạm này thông báo cho máy chủ BranchCache rằng BranchCache có thể đang sử dụng một chuỗi field, message hay header là thành phần của giao thức đã kích hoạt BranchCache được ngăn xếp mạng của máy trạm Windows 7 sử dụng.

Sau đó máy trạm này sẽ gửi yêu cầu dữ liệu từ máy chủ Hosted Mode BranchCache trên hệ thống mạng của văn phòng chi nhánh sử dụng giao thức BranchCache Retrieval Protocol hoặc MS-PCCRD (sử dụng HTTP với một cổng nguồn tạm trên máy trạm và TCP 80 trên máy chủ BranchCache Hosted Mode. Máy chủ Hosted Mode sẽ thông báo cho máy trạm biết nó không có dữ liệu này.

Máy trạm này sẽ gửi yêu cầu khác tới máy chủ BranchCache tại văn phòng chính, lần này máy chủ thông báo cho máy trạm rằng nó không thể sử dụng BranchCache. Trong trường hợp này máy chủ sẽ gửi dữ liệu tới máy trạm.

Khi đó máy trạm sẽ thông báo cho máy chủ BranchCache Hosted Mode trong văn phòng chi nhánh biết cần lưu trữ dữ liệu mới sử dụng giao thức BranchCache Hosted Cache Protocol hay MS-PCHC. Tiến trình này được thực hiện qua HTTPS với một cổng nguồn tạm trên máy trạm và một cổng đích TCP 443 trên máy chủ.

Máy chủ Hosted Mode BranchCache sẽ kết nối tới máy trạm qua một kết nối HTTP sử dụng giao thức BranchCache Retrieval Protocol hoặc MS-PCCRD (sử dụng một cổng nguồn tạm trên máy chủ và một cổng đích tới cổng TCP 80 của máy trạm).

Máy trạm này sẽ gửi dữ liệu tới máy chủ Hosted Mode BranchCache tại văn phòng chi nhánh.

Một máy trạm thứ hai sẽ gửi yêu cầu cùng loại dữ liệu tới máy chủ file/Web đã kích hoạt BranchCache tại văn phòng chính. Máy trạm này nhận những Identifier từ máy chủ tại văn phòng chính, sau đó tạo một yêu cầu lấy dữ liệu này từ máy chủ Hosted Mode BranchCache tại văn phòng chi nhánh qua giao thức BranchCache Retrieval Protocol. Máy chủ Hosted Mode BranchCache sẽ gửi dữ liệu đã được mã hóa.

Máy trạm sẽ xác thực dữ liệu, và khi hoàn thành xác thực có thể mở nó trong ứng dụng phù hợp.






Kết luận

Nhu cầu kết nối mạng từ xa giữa các văn phòng ngày càng tăng. Nhân viên tại các văn phòng chi nhánh luôn phải truy cập vào dữ liệu được lưu trữ trong máy chủ file/Web tại văn phòng chính. Vấn đề là các liên kết WAN khá chậm so với tôc độ của LAN. Để cải thiện hiệu suất làm việc, chúng ta có thể sử dụng WAFS để tăng tốc truy cập dữ liệu từ xa. Windows Server 2008 R2 và Windows 7 giới thiệu một tính năng mới – BranchCache cho phép máy trạm Windows 7 láy dữ liệu của văn phòng chính đã được lưu trữ trên hệ thống mạng của văn phòng chi nhánh. BranchCache làm việc theo hai chế độ Hosted Mode và Distributed Mode. BranchCache yêu cầu xác thực và phân quyền trên các máy chủ file/Web, do đó truy cập không có gì khác biệt như khi không sử dụng BranchCache. BranchCache truyền dữ liệu khi đã được mã hóa nên dữ liệu sẽ được truyền thông suốt.
Thứ Sáu, 30/10/2009 20:10
51 👨 3.451
0 Bình luận
Sắp xếp theo
    ❖ Tổng hợp