Lan truyền chậm và xác minh chậm không phải là cùng một vấn đề
Khi một khối mới xuất hiện, các nút khác cần lấy các giao dịch của nó và xác minh khối. Nếu mempool của một nút đã chứa hầu hết các giao dịch, việc tải xuống tất cả các giao dịch lặp đi lặp lại sẽ lãng phí băng thông. Các khối nhỏ gọn tận dụng sự chồng chéo này, gửi thông tin tái tạo cần thiết trước. Nó tối ưu hóa việc truyền dữ liệu, nhưng điều này không có nghĩa là các nút có thể bỏ qua việc kiểm tra giao dịch, cũng như không đảm bảo tốc độ truyền nhanh hơn so với truyền toàn bộ dữ liệu mọi lúc.
Cách các định danh ngắn giúp tái tạo
Khối nhỏ gọn được mô tả trong BIP152 chứa tiêu đề khối, một số ngẫu nhiên được sử dụng để tạo định danh ngắn gọn, các giao dịch được điền sẵn và các định danh ngắn gọn cho các giao dịch khác. Nút nhận cố gắng khớp các giao dịch từ mempool cục bộ của nó và sau đó tái tạo khối theo trình tự. Định danh ngắn gọn không phải là định danh giao dịch hoàn chỉnh, cũng không phải là bằng chứng về số dư; nó là một manh mối nhỏ gọn được thiết kế cho quá trình truyền tải này và không thể được sử dụng độc lập để kiểm tra tính xác thực của các giao dịch.
Điều gì xảy ra khi các giao dịch cục bộ bị thiếu
Nếu nút nhận bị thiếu giao dịch, gặp phải sự không rõ ràng khi khớp hoặc không thể tái tạo khối, nó sẽ yêu cầu phần bị thiếu từ nút ngang hàng của nó. Chính sách mạng, sự khác biệt về mempool và các yếu tố như một nút vừa mới khởi động đều có thể ảnh hưởng đến tỷ lệ truy cập thành công. Quan sát nhật ký "yêu cầu hoàn thành giao dịch" không nên ngay lập tức dẫn đến kết luận rằng bên kia có ý đồ xấu hoặc có lỗi phần mềm; cần phải xem xét tỷ lệ giao dịch bị thiếu, chất lượng kết nối và liệu quá trình xác minh tiếp theo đã được hoàn tất hay chưa.
Một ví dụ về quy trình tái tạo
Giả sử một khối mới chứa nhiều giao dịch và nút đã thấy hầu hết chúng trong mempool. Sau khi nhận được khối nhỏ gọn, nó có thể trực tiếp điền vào các vị trí đã biết và sau đó tải xuống các giao dịch còn lại. Nếu nút vừa hoàn tất đồng bộ hóa và mempool nhỏ, chi phí hoàn thành dữ liệu sẽ tăng lên. Ví dụ này chỉ giải thích cơ chế và không nên được coi là số liệu thống kê mạng thực tế, cũng không thể được sử dụng để đảm bảo độ trễ lan truyền của pool khai thác.
Những điều người vận hành nút cần lưu ý
Ghi lại phiên bản phần mềm, loại kết nối ngang hàng, thời gian nhận khối, lỗi tái tạo và trạng thái hoàn thành, và so sánh hiệu suất trong thời gian bình thường và sau khi khởi động lại. Thời gian ghi nhật ký cũng bị ảnh hưởng bởi đồng hồ cục bộ và mạng; dữ liệu từ một thiết bị duy nhất không thể đại diện cho toàn bộ mạng. Khi khắc phục sự cố, trước tiên hãy kiểm tra tài liệu phiên bản chính thức và kết nối mạng, sau đó xem xét các tài nguyên cục bộ. Không nên tắt các xác minh quan trọng hoặc sao chép các cấu hình không rõ để theo đuổi tốc độ.
Cách tránh hiểu nhầm khi đọc tin tức liên quan
Khi gặp các tiêu đề như "nén khối" hoặc "đồng bộ hóa cấp hai", hãy xác nhận xem báo cáo đề cập đến việc lan truyền khối, đồng bộ hóa lịch sử hay tính cuối cùng của sự đồng thuận. Khối nén không làm giảm yêu cầu xác minh giao dịch trong sổ cái, cũng không làm cho các giao dịch đã được xác nhận hoàn toàn không thể sắp xếp lại. Hãy lưu phiên bản BIP, cách triển khai phần mềm và môi trường thử nghiệm để so sánh với kết luận của tác giả; không nên so sánh trực tiếp các số liệu tốc độ mà không có các điều kiện này.
