«NetBIOS không đi qua router» được nhắc lại như thể điều đó đã giải quyết xong thiết kế. Không phải vậy. Tìm tên bằng quảng bá thường ở lại trong miền quảng bá của chính nó, nhưng các dịch vụ NetBIOS cũng có thể dùng lưu lượng IP định hướng vốn được định tuyến hoàn toàn tốt. Câu hỏi hữu ích không phải là NetBIOS có đi qua router hay không; mà là ứng dụng của bạn dùng dịch vụ nào trong ba dịch vụ của nó.

Một giao diện phần mềm, không phải một giao thức dây

RFC 1001 mô tả NetBIOS như một giao diện mà ứng dụng lập trình hướng tới, với nhiều tầng truyền tải bên dưới. Mô hình TCP/UDP của nó tách dịch vụ tên, phân phối datagram và dịch vụ phiên, và nó hỗ trợ rõ ràng việc hoạt động có hoặc không có quảng bá IP.

ServiceWhat it doesTransport dependence
NameRegisters and resolves namesBroadcast, point-to-point, or a name server
DatagramConnectionless messages, including broadcastBroadcast domain or directed delivery
SessionConnection-oriented exchangeTCP connection to a named endpoint

Chính bảng đó cho thấy vì sao khẩu hiệu thất bại. Dịch vụ phiên giữa hai máy chủ có tên là một cuộc trò chuyện IP; datagram quảng bá thì không. Một thiết kế VPN có thể đáp ứng cái đầu mà không đáp ứng cái sau, và một bài kiểm tra chứng minh cái đầu không nói gì về cái sau.

Loại nút quyết định thứ mà máy khách yêu cầu

Các mô hình nút quảng bá, điểm-tới-điểm và hỗn hợp của RFC 1001 mô tả cách một máy chủ phân giải tên: bằng cách hỏi mạng cục bộ, hỏi trực tiếp máy chủ tên, hoặc thử cái này rồi cái kia. Mô hình ảnh hưởng đến việc lưu lượng nào phải được cho phép, không phải việc ứng dụng có chạy được hay không.

Một bố trí máy chủ tên được quản lý cho máy khách một đường điểm-tới-điểm, nhưng chỉ cho những máy khách được cấu hình để dùng nó. Đặt một máy chủ ở đâu đó trên mạng không khiến ứng dụng hỏi ý nó, và một máy khách bị để ở chế độ quảng bá sẽ tiếp tục hỏi phân đoạn cục bộ và đi đến hết thời gian chờ. Địa chỉ máy chủ phải đến được cấu hình của máy khách, qua bất kỳ đường quản trị nào mà máy khách đó tôn trọng.

Vì vậy hãy ghi lại ba quan sát cho ứng dụng đang xét: nó biến tên máy chủ thành địa chỉ như thế nào, việc khám phá hay nhắn tin dùng quảng bá hay một điểm cuối định hướng, và phiên thực tế dùng địa chỉ cùng phương thức vận chuyển nào. Đó là những sự kiện độc lập, và mỗi cái có cách khắc phục riêng. Một lần phân giải tên thành công chỉ là bằng chứng về cái đầu tiên.

NetBIOS trên TCP/IP không phải NetBEUI

Hai thứ bị nhầm lẫn vì cả hai đều được gọi là cũ. NetBIOS trên TCP/IP mang các dịch vụ của nó bên trong gói IP, thứ mà một đường hầm được định tuyến đã vận chuyển. NetBEUI là một giao thức tầng 2 không thể định tuyến, và một đường hầm IP không vận chuyển các khung Ethernet tùy ý chỉ vì nó vận chuyển IP.

Thêm một tuyến IP không thể biến một khung không phải IP thành một ứng dụng IP. Nếu một ứng dụng thực sự phụ thuộc vào hành vi của tầng 2, các lựa chọn là một dịch vụ tầng 2 được giới hạn rõ ràng hoặc thay thế ứng dụng; không có thay đổi định tuyến nào thay thế cho cả hai.

Chọn thay đổi nhỏ nhất đáp ứng nhiệm vụ

Một thư mục chia sẻ SMB hiện có, được truy cập bằng tên DNS đã được phê duyệt và một đường dẫn UNC rõ ràng, không cần mở rộng Ethernet. Nhiệm vụ dịch vụ tệp và trải nghiệm duyệt là những yêu cầu khác nhau, và chỉ cái thứ hai phụ thuộc vào danh sách hàng xóm. Truy cập thư mục chia sẻ bằng tên giải quyết nhiệm vụ mà không kéo giãn miền quảng bá qua một đường hầm.

Duyệt chính là phần thường thất bại, và nó thất bại một cách lặng lẽ. Một máy có thể mở thư mục chia sẻ theo đường dẫn trong khi danh sách máy tính lân cận vẫn trống, vì danh sách được đổ đầy bằng khám phá quảng bá còn đường dẫn dùng DNS. Quyết định rằng bạn cần danh sách là một yêu cầu khác với quyết định rằng bạn cần tệp. Hãy ghi lại người dùng thực sự đã yêu cầu cái nào trước khi bạn thiết kế bất cứ thứ gì.

Khi một ứng dụng cũ thực sự cần quảng bá hoặc các khung không phải IP, hãy đánh giá một dịch vụ tầng 2 được giới hạn với một chủ sở hữu có tên, hoặc thay thế ứng dụng. Một cầu nối mở rộng miền lỗi chia sẻ và ranh giới chính sách, và đó là một quyết định kiến trúc, không phải một ô chọn có nhãn NetBIOS. Hãy ghi lại các thao tác cụ thể mà đường hầm phải vận chuyển, và quản trị viên có thể đánh giá yêu cầu thay vì đoán về «toàn bộ mạng Windows».

Bài viết liên quan