Ram ECC là gì? – Series phần cứng (P2)

Ở phần trước, chúng ta đã có cái nhìn tổng quát về một con Server tầm quan trọng của nó trong Thế giới Internet ngày nay. Nhưng có rất nhiều thành phần rất quan trọng cốt lõi để tạo nên một con Server. Việc tìm hiểu các thành phần của Server sẽ giúp chúng ta rất nhiều trong việc lựa chọn Server có cấu hình cho các mục đích cụ thể cũng như định giá Server dựa trên cấu hình của chúng. Ở phần này chúng ta sẽ tìm hiểu Ram ECC dành riêng cho Server. Vậy Ram ECC là gì? Chúng ta sẽ cùng tìm hiểu qua bài viết dưới đây.

1. Ram ECC là gì? Sự khác biệt của Ram ECC với Ram Non ECC (Ram thường)

RAM ECC (Error Checking and Correction) là loại RAM có khả năng điều khiển được dòng dữ liệu truy xuất trong nó giúp tự động sửa lỗi. Khi xảy ra xung đột RAM ECC chỉ cần yêu cầu gửi lại đúng gói tin bị crash, RAM ECC có độ ổn định rất cao giúp bạn giảm rủi ro và chi phí vận hành.

Ram ECC là gì? - Series phần cứng (P2)

Cơ chế tự sửa lỗi của Ram ECC

Quá trình truyền tín hiệu ở tốc độ cao dễ xảy ra xung đột, khi có xung đột xảy ra RAM non ECC (Hay còn gọi là Ram thường) phải nạp lại toàn bộ dự liệu vì không có khả năng quản lý dòng dữ liệu dẫn đến hiện tượng lỗi phần mềm, treo máy và màn hình xanh. Ram ECC có 9 Chip còn Ram non-ECC (Ram thường) có 8 chip đây là cách nhận biết nhanh nhất khi nhìn một thanh Ram có hỗ trợ ECC hay không.

Ram ECC là gì? - Series phần cứng (P2)

ECC có 9 chip còn NON-ECC chỉ có 8 chip

Khả năng tự kiểm tra và sửa lỗi cho từng bit riêng lẻ giúp nó phát hiện và sửa lỗi kịp thời ngay lúc xảy ra. ECC sẽ không dành một phần bộ nhớ để sửa dụng cho việc sửa lỗi mà bổ sung thêm chip vào bộ nhớ ECC. Do chỉ sửa lỗi trên cơ chế từng bit riêng lẻ nên khi có nhiều bit lỗi xảy ra cùng 1 lúc thì bộ nhớ ECC tuy phát hiện ra lỗi nhưng không có khả năng sửa kịp.

Với máy PC, Laptop nói chung thì chức năng ECC ít được quan tâm, nên chúng ta sẽ thấy khi bị lỗi, chương trình thường văng ra ngoài desktop kèm theo dòng cảnh báo lỗi hoặc tự khởi động lại máy gây ra không ít phiền phức cho người dùng. Đối với máy trạm (Workstation) và máy chủ (Server), việc duy trì toàn vẹn dữ liệu và khả năng hoạt động liên tục 24/7 là yếu tố rất quan trọng và là ưu tiên hàng đầu.

Trong năm 2015 và 2016 có nhiều thông tin từ việc Hacker sử dụng phương thức hack cứng, nghĩa là dùng thủ thuật đảo bit bộ nhớ để tìm kiếm thông tin điều khiển hệ thống. Do vậy, việc sử dụng RAM ECC cũng được khuyến cáo cho các máy tính sử dụng trong doanh nghiệp, hoặc các tổ chức cần an toàn ở mức tối đa.

2. Phân biệt 2 loại Ram ECC là UnbufferedRegistered

Hiện nay Ram ECC có 2 loại, đó là RAM ECC unbuffered và ECC Registered. 2 loại Ram này có một số đặc tính riêng tùy thuộc vào túi tiền cũng như mục đích sử dụng để lựa chọn cho Server.

  • Ram ECC Unbuffered hay còn gọi là ECC UDIMM là loại RAM Unbuffered bổ sung thêm tính năng ECC có chức năng tự kiểm tra và sửa lỗi. RAM ECC UDIMM là bộ nhớ không có các bộ đệm hoặc thanh ghi được thiết kế trên module bộ nhớ mà thay vào đó, các thiết bị này được thiết kế trên mainboard. Ram ECC UDIMM các lệnh truy xuất bộ nhớ được đưa trực tiếp đến module bộ nhớ nhanh hơn ECC RDIMM vì không phải gửi gián tiếp qua thanh ghi.
Ram ECC là gì? - Series phần cứng (P2)

Cách hoạt dộng của RAM ECC Unbuffered

  • Với Ram ECC Registered hay còn gọi là ECC RDIMM là bộ nhớ có chứa các thanh ghi, còn Ram ECC Unbuffered là bộ nhớ không có các bộ đệm hoặc thanh ghi mà được thiết kế trên mainboard. Vì lý do đó mà sự khác biệt giữa hai loại ram ECC này nằm ở lệnh truy xuất. Đối với RAM ECC UDIMM thì các lệnh truy xuất bộ nhớ được đưa trực tiếp tới module bộ nhớ, còn RAM ECC RDIMM thì các lệnh truy xuất được gửi dến thanh ghi trước rồi mới chuyển tới module bộ nhớ. Khi sử dụng ECC RDIMM sẽ giúp giải tải bớt khối lượng điều khiển bộ nhớ của CPU, một phần công việc truy xuất trực tiếp bộ nhớ đã có chip thanh ghi thực hiện. Nhờ đó CPU sẽ bớt được khối lượng công việc, giúp máy chạy tốt và hiệu quả hơn. Do đó những Server / WS lớn với Dual CPU hoặc hơn thường sử dụng RAM ECC Registered. Do nguyên lý hoạt động của ECC RDIMM, các lệnh truy xuất phải gửi đến thanh ghi trước sau đó mới truyền module bộ nhớ nên các lệnh chỉ thị sẽ mất xấp xỉ 1 chu kỳ CPU.
Ram ECC là gì? - Series phần cứng (P2)

Cách hoạt động của RAM ECC Registered

Lưu ý: Để sử dụng được Ram ECC khi lắp ráp nâng cấp vào một hệ thống Server đang vận hành, việc đầu tiên chúng ta phải kiểm tra xem CPU có hỗ trợ chức năng ECC không. Thứ 2, chúng ta kiểm tra Mainboard đó hỗ trợ loại ECC nào, ECC Unbuffered (ECC UDIMM) hay ECC Registered (ECC RDIMM). Có một số mainboard vẫn sử dụng được RAM ECC nhưng sẽ có dòng ghi chú nhỏ là sử dụng được tại mode non-ECC, vậy có nghĩa là chúng ta bỏ tiền mua thanh RAM ECC nhưng không dùng được chức năng ECC, chỉ có tác dụng như thanh RAM thường.

Kết luận

Ram ECC chỉ là một bộ phận nhỏ cấu tạo nên một Server khổng lồ nhưng sứ mệnh của nó là rất to lớn. Chức năng ECC quyết định rất nhiều đến chất lượng dịch vụ của cả hệ thống Server, chỉ một sự cố crash chương trình thông thường cũng có thể ảnh hưởng đến hàng triệu website nằm trên Server đó. Chỉ bấy nhiêu thôi cũng đủ thấy tầm quan trọng khi chọn Ram ECC thay vì Ram thường để các bạn đưa ra quyết định đúng đắn khi mua Ram cho Server rồi đó.