Công nghệ cân bằng tải (Server Load Balancing – SLB)

Một phần của tài liệu Công nghệ cân bằng tải và ứng dụng trong truyền hình lưu động độ nét cao (Trang 33)

1. Truyền hình lƣu động

2.2Công nghệ cân bằng tải (Server Load Balancing – SLB)

2.2.1 oạt ộng của hệ thống cân bằng tải server

27

Hình 2.2: Hệ thống SLB đơn giản

SLB mở rộng hiệu nǎng của c c server ứng dụng, ch ng hạn như Web server, nhờ phân phối c c yêu cầu của client cho c c server trong nhóm (cluster). C c server (hay còn gọi là host) đều nhận gói IP đến, nhưng gói chỉ được xử lý bởi một server nhất định. C c host trong nhóm s đồng thời đ p ứng c c yêu cầu kh c nhau của c c client, cho dù một client có th đưa ra nhiều yêu cầu. Ví dụ, một trình duyệt Web cần rất nhiều hình ảnh trên một trang Web được lưu trữ tại nhiều host kh c nhau trong một nhóm server. Với kỹ thuật cân bằng tải, qu trình xử lý và thời gian đ p ứng client s nhanh hơn nhiều.

Mỗi host trong nhóm có th định ra mức tải mà nó s xử lý hoặc tải có th phân phối một c ch đồng đều giữa c c host. Nhờ sử dụng việc phân phối tải này, mỗi server s lựa chọn và xử lý một phần tải của host. Tải do c c client gửi đến được phân phối sao cho mỗi server nhận được số lượng c c yêu cầu theo đúng phần tải đã định của nó. Sự cân bằng tải này có th điều chỉnh động khi c c host tham gia vào hoặc rời khỏi nhóm. Đối với c c ứng dụng như Web server, có rất nhiều client và thời gian mà c c yêu cầu của client tồn tại tương đối ngắn, khả nǎng của kỹ thuật này nhằm phân phối tải thông qua nh xạ thống kê s giúp cân bằng một c ch hiệu quả c c tải và cung cấp khả nǎng đ p ứng nhanh khi nhóm server có thay đổi.

28

trạng th i hoạt động của nó (gọi là heartbeat message) tới c c host kh c trong nhóm đồng thời nghe bản tin này từ c c kh c host kh c. Nếu một server trong nhóm gặp trục trặc, c c host kh c s điều chỉnh và t i phân phối lại tải đ duy trì liên tục c c dịch vụ cho c c client. Trong phần lớn c c trường hợp, phần mềm client thường tự động kết nối lại và người sử dụng chỉ cảm thấy trễ một vài giây khi nhận được đ p ứng trả lời.

2.2.2 Kiến trúc hệ thống cân bằng tải Load Balancing

Đ tối đa ho thông lượng và độ khả dụng, công nghệ cân bằng tải sử dụng kiến trúc phần mềm phân t n hoàn toàn, trình điều khi n cân bằng tải được cài đặt và chạy song song trên tất cả c c host trong nhóm. Trình điều khi n này sắp xếp tất cả c c host trong nhóm vào một mạng con đ ph t hiện đồng thời lưu lượng mạng đến địa chỉ IP chính của nhóm (và c c địa chỉ bổ sung của c c host ở nhiều vị trí kh c nhau). Trên mỗi host, trình điều khi n hoạt động như một bộ lọc giữa trình điều khi n card mạng và chồng giao thức TCP/IP, cho phép một phần lưu lượng mạng đến được nhận bởi host đó. Nhờ đó, c c yêu cầu của client s được phân vùng và cân bằng tải giữa c c host trong nhóm.

Kiến trúc này tối đa ho dung lượng nhờ việc sử dụng mạng quảng b đ phân phối lưu lượng mạng đến tất cả c c host trong nhóm và loại bỏ sự cần thiết phải định tuyến c c gói đến từng host riêng lẻ. Do thời gian lọc c c gói không mong muốn diễn ra nhanh hơn thời gian định tuyến c c gói (định tuyến bao gồm c c qu trình nhận gói, ki m tra, đóng gói lại và gửi đi), kiến trúc này cung cấp thông lượng cao hơn c c giải ph p dựa trên bộ điều phối. Khi tốc độ của mạng và server tǎng lên, thông lượng cũng tǎng theo tỉ lệ thuận, do đó loại bỏ được bất cứ sự lệ thuộc nào vào việc định tuyến dựa trên c c phần cứng đặc biệt.

Phân phối lƣu lƣợng trong SLB

Luồng dữ liệu từ người dùng cuối tới thiết bị cân bằng tải, tới m y chủ thực sự phía sau và sau đó quay ngược trở lại người dùng cuối. Phần này s phân chia qu trình đi của gói tin trên từng đoạn mạng đ giúp cho việc hi u r SLB hoạt động như thế nào.

29

sự phía sau. Việc này thực hiện một c ch đơn giản bởi việc sử dụng địa chỉ IP đích và nguồn tại lớp 3 trong hoạt động sử lý được biết đến như là NAT (Network Address Translation).

Hình 2.3: Hành trình của một gói dữ liệu

Trong Hình 2.3, ta có th thấy một gói dữ liệu có địa chỉ nguồn là 208.185.43.202 địa chỉ đích là 192.168.0.200. Bộ định tuyến sử dụng c c thông tin này đ chuy n tiếp dữ liệu trên mạng qua c c trạm trung gian tới đích. Một vấn đề có tính chất quan trọng sống còn với SLB nói riêng và mạng TCP/IP nói chung là, khi gửi một gói dữ liệu tới một địa chỉ đích, gói dữ liệu đó cần phải có b o nhận lại với cùng địa chỉ nguồn và đích hay nói một c ch kh c, khi gửi một gói tin tới một m y đích, m y đích phải gửi ngược trở lại m y gửi với địa chỉ đích là m y gửi và địa chỉ nguồn là địa chỉ của chính m y nhận, nếu từ một địa chỉ kh c gói dữ liệu s bị loại bỏ. Nguyên tắc này không có ý nghĩa quan trọng với gói tin UDP do UDP sử dụng giao thức không hướng nối (Connectionless). Mặc dù vậy, phổ biến c c SLB dựa trên giao thức hướng nối TCP.

Thuật toán cân bằng tải

NLB sử dụng thuật to n lọc phân t n hoàn toàn đ nh xạ c c client đến c c host trong nhóm. Thuật to n này cho phép c c host trong nhóm đưa ra c c quyết định cân bằng tải một c ch độc lập và nhanh chóng cho từng gói đến. Nó được tối ưu ho đ cung cấp khả nǎng cân bằng tải một c ch thống kê đối với một số lượng lớn c c yêu cầu nhỏ do vô số client tạo ra, đi n hình là đối với c c Web server. Nếu

30

số client và/hoặc c c kết nối client tạo ra c c tải qu chênh lệch nhau trên server, thuật to n cân bàng tải s ít hiệu quả. Tuy nhiên, tính đơn giản và tốc độ của thuật to n cho phép cung cấp hiệu nǎng rất cao bao gồm cả thông lượng cao và thời gian đ p ứng ngắn trong một dải rộng c c ứng dụng client/server thông dụng.

NLB xử lý c c yêu cầu của client bằng c ch dẫn đường cho một tỉ lệ phần trǎm đã chọn những yêu cầu mới cho từng host trong nhóm. Thuật to n không đ p ứng những thay đổi về tải trên mỗi host (ch ng hạn như tải CPU hay vấn đề sử dụng bộ nhớ). Tuy nhiên, qu trình nh xạ s được thay đổi khi quan hệ thành viên trong nhóm thay đổi và tỉ lệ phần trǎm tải phân bố s được t i cân bằng.

Khi xem xét một gói đến, tất cả c c host thực hiện đồng thời việc nh xạ thống kê đ x c định nhanh chóng host nào s xử lý gói đó. Qu trình nh xạ sử dụng một hàm ngẫu nhiên đ tính mức ưu tiên của host dựa trên địa chỉ IP và cổng đến của client cùng c c thông tin trạng th i kh c đ tối ưu ho việc cân bằng tải. Host tương ứng s chuy n gói đó từ c c tầng dưới lên tầng TCP/IP còn c c host kh c s loại bỏ gói này. Qu trình nh xạ không thay đổi trừ phi quan hệ giữa c c host trong nhóm thay đổi, đ đảm bảo rằng địa chỉ IP và cổng đến của client cho trước s luôn được nh xạ đến cùng một host trong nhóm. Tuy nhiên, host cụ th trong nhóm mà địa chỉ IP và cổng đến của client nh xạ tới không th được x c định trước do hàm ngẫu nhiên có tính đến quan hệ thành viên trong nhóm hiện tại và qu khứ đ tối thi u ho khả nǎng nh xạ lại.

Nhìn chung, chất lượng cân bằng tải được x c định một c ch thống kê bởi số lượng client tạo ra yêu cầu. Như kết cấu tǎng giảm về số lượng client theo thống kê, sự đều đặn về chất lượng của thuật to n cân bằng tải s thay đổi nhẹ. Đ hoạt động cân bằng tải có độ chính x c cao trên mỗi host trong nhóm, một phần tài nguyên hệ thống s được sử dụng đ đo và phản ứng trước những thay đổi của tải. Sự trả gi về hiệu nǎng này phải được cân nhắc so với lợi ích của việc tối đa ho khả nǎng sử dụng c c tài nguyên trong nhóm (về cơ bản là CPU và bộ nhớ). Trong bất cứ trường hợp nào, việc sử dụng hợp lý c c nguồn tài nguyên server phải được duy trì đ có th phục vụ cho c c tải client kh c trong trường hợp xảy ra lỗi.

31

quan hệ thành viên mới trong nhóm s được tính to n. Khi qu trình hội tụ hoàn thành, một phần tối thi u client s được nh xạ tới host mới. NLB dò c c kết nối TCP trên mỗi host và sau khi kết nối TCP hiện tại của chúng hoàn thành, kết nối tiếp theo từ c c client bị ảnh hưởng s được xử lý bởi host mới. Do đó, c c host nên được bổ sung vào nhóm tại những thời đi m tải tǎng qu mạnh nhằm tối thi u ho hiện tượng ngắt quãng c c phiên. Đ tr nh vấn đề này, trạng th i phiên phải được quản lý bởi ứng dụng server sao cho nó có th được t i cấu trúc hay được trả lại từ bất kỳ một host nào trong nhóm. Ví dụ, trạng th i phiên có th được đ y đến server cơ sở dữ liệu và lưu trong c c cookies của client.

2.2.4 ạn chế của công nghệ cân bằng tải Load Balancing:

Hạn chế lớn nhất của công nghệ cân bằng tải Load Balancing thông thường đó là việc không sử dụng được c c đường truyền tải dùng cho 1 ứng dụng tại cùng một thời đi m.

Công nghệ cân bằng tải Load Balancing chỉ tối ưu nhất trong trường hợp người dùng muốn có một đường truyền có tính dự phòng (back-up) cao vì khi đó khả năng đ nhiều đường truyền bị lỗi cùng một thời đi m là thấp.

2.3 Công nghệ cân bằng tải dạng Bonding

Kh c với công nghệ cân bằng tải Load Balancing không th sử dụng đồng thời tại cùng 1 thời đi m c c đường truyền kh c nhau cho cùng 1 ứng dụng, công nghệ cân bằng tải dạng Bonding có khả năng làm được điều này. Như vậy tức là, p dụng công nghệ cân bằng tải dạng Bonding, người dùng có th sử dụng đồng thời nhiều đường truyền tại 1 thời đi m cho 1 ứng dụng nhất định, điều này giúp tăng khả năng của đường truyền lên nhiều lần so với riêng lẻ từng đường một.

2.3.1 hế nào là ông nghệ cân bằng tải dạng Bonding (adsbygoogle = window.adsbygoogle || []).push({});

Công nghệ cân bằng tải dạng Bonding là một ki u kết hợp nhiều đường truy cập thành một kết nối băng thông rộng cho bất cứ một ứng dụng nào yêu cầu kết nối internet.

Ví dụ như, khi bạn ở một nơi nào có đồng thời một lúc c c đường truyền internet như: c p quang, wifi, kết nối 3G/4G….Theo truyền thống, bạn chỉ có th sử dụng một trong những kênh truyền trên tại một thời đi m duy nhất, và chưa có c ch

32

nào đ kết hợp tất cả c c kênh có sẵn đ có được băng thông tổng hợp (k cả với công nghệ cân bằng tải Load Balancing). Nhưng với công nghệ cân bằng tải dạng Bonding, điều đó là có th .

2.3.2 So s nh giữa ông nghệ cân bằng tải Load Balancing và ông nghệ cân bằng tải dạng Bonding (7)

Kh thường xuyên khi có sự nhầm lẫn đ nh đồng giữa 2 công nghệ cân bằng tải Load Balancing và công nghệ cân bằng tải dạng Bonding. Sự thật có kh nhiều sự kh c nhau giữa 2 công nghệ này. Và hiện nay nhiều sản ph m công nghệ p dụng công nghệ cân bằng tải dạng ghép kênh bonding nhờ vào c c ưu thế vượt trội của nó so với công nghệ cân bằng tải thông thường như một xu hướng mới trong lĩnh vực công nghệ Multi-Wan.

Cả hai công nghệ đều có mục đích tối ưu hóa khả năng truyền tải dữ liệu trên c c liên kết đ truy cập vào Internet và đảm bảo dữ liệu được định tuyến tới c c kết nối tối ưu một c ch chính x c. Sự kh c biệt chủ yếu là giữa hai công nghệ trên thì qu trình cân bằng tải xảy ra tại lớp nào trong mô hình OSI.

 Cân bằng tải thông thường Load Balacing phân chia lưu lượng giữa c c giao diện mạng (interfaces) ở lớp 4 trong mô hình OSI ( network socket). Công nghệ Load Balacing thông thường hoạt động bằng c ch chọn c c đường đi/ kết nối kh c nhau đ định tuyến cho một phiên giao thức TCP hoặc UDP. Điều này có nghĩa mỗi phiên được nh xạ tới một kết nối cụ th với một tốc độ tối đa mà kết nối đó cho phép. Trong trường hợp một kết nối bị lỗi, phiên đó s kết thúc và một phiên làm việc mới được thiết lập và được định tuyến tới một kết nối kh c khả dụng.

 Cân bằng tải dạng Bonding phân chia lưu lượng ở c c lớp thấp hơn: lớp 2 hoặc lớp 3 (C c trường hợp cụ th ở từng lớp s được trình bày ở mục tiếp theo). Như vậy công nghệ Bonding làm việc với những gói tin TCP/UDP, điều đó có nghĩa một phiên s được định tuyến qua tất cả c c kết nối khả dụng (available connection), về cơ bản bằng c ch phân phối tất cả c c gói dữ liệu cho tất cả c c kết nối. Điều này dẫn đến việc sử dụng băng thông của tất cả c c kết nối riêng lẻ một c ch đồng thời, đạt được tốc độ cao, cả đường

33

lên và đường xuống, ngay cả đối với một phiên duy nhất. Trong trường hợp có một vài kết nối bị lỗi trong qu trình truyền dữ liệu, phiên làm việc s không bị gi n đoạn mà chỉ bị giới hạn băng thông tổng do giảm băng thông của c c kết nối bị lỗi.

Một khía cạnh kh c nữa giữa hai công nghệ là việc quản lý chất lượng dịch vụ QoS. Việc đ nh gi , tính to n QoS đối với công nghệ cân bằng tải Load Balancing là kh phức tạp, do phải đ nh gi với từng đường truyền thành phần riêng lẻ. Như vậy một c ch đ nh gi tổng qu t, duy nhất khó có th x c định r rang và p dụng. Ngoài ra, khi sử dụng c c kết nối DSL – loại kết nối có hiệu suất biến động, c c quy tắc ưu tiên QoS có th không được p dụng một c ch chính x c do hoạt động không ổn định của mỗi kết nối.

Còn đối với công nghệ cân bằng tải dạng Bonding, quy tắc ưu tiên được x c định cho 1 kênh giao tiếp duy nhất, công suất đươc tính theo thời gian thực cho phép đ nh gi QoS dễ dàng.

Vì vậy, khi so s nh hai công nghệ, đi m kh c biệt quan trọng là việc sử dụng nhiều kết nối đồng thời tại một thời đi m đ nâng cao băng thông toàn đường truyền và độ tin cậy. Ngoài ra, công nghệ cân bằng tải dạng Bonding có nhiều đi m chung, tính năng với đường dây thuê bao vì nó tạo ra một kết nối duy nhất với tốc độ tổng hợp và độ tin cậy.

2.3.3 c trường hợp của công nghệ cân bằng tải Bonding:

Công nghệ cân bằng tải dạng Bonding có th được sử dụng tại c c lớp kh c nhau trong mô hình OSI.

 Bonding trên lớp vật lý ( Physical Layer) có th được thực hiện bằng c ch sử dụng JMB (Joint Multi-user Beamforming) , một hệ thống cho phép cộng thêm c c đi m ph t Access Points (APs) trong cùng 1 kênh đ tăng băng thông trong mạng. Sử dụng JMB, một mạng LAN không dây có th mở rộng thông lượng (throughput) hiệu quả bằng c ch liên tục them vào c c Access Point (APs) trên cùng một kênh

 Bonding trên lớp data link – lớp 2: Công nghệ này sử dụng 2 hoặc nhiều

Một phần của tài liệu Công nghệ cân bằng tải và ứng dụng trong truyền hình lưu động độ nét cao (Trang 33)