Phần mềm giao thức
Phần mềm xử lý giao thức hay nói gọn là phần mềm giao thức là một thành phần
giao diện mạng, có nhiệm vụ thực hiện các chức năng xử lý giao thức còn lại trong mô
hình OSI. Phần mềm giao thức tồn tại dưới ba hình thức là phần dẻo (firmware), thành
phần của hệ điều hành hoặc phần mềm thư viện.
Firmware
Phần mềm dưới dạng firmware được đổ cứng trong các vi mạch ghép nối ASIC,
được chứa trong các bộ nhớ lâu dài (EPROM, Flash-ROM), hoặc được nạp lên một bộ
nhớ RAM trước khi đi vào hoạt động. Hình thức sau cùng còn được gọi là bootloading
hay downloading, phổ biến trong các card giao diện cho PC. Hầu hết các ASIC cho bus
trường đều chứa toàn bộ phần mềm xử lý giao thức cho tất cả các lớp chức năng, hoặc
chỉ một phần trong đó. Trong trường hợp sau, các chức năng còn lại sẽ được thực hiện
bổ sung trên ASIC hoặc qua CPU chủ thông qua sử dụng các phần mềm thư viện.
Trong một số trường hợp, CPU chủ chỉ cần truy nhập trực tiếp vào một số vùng trong
bộ nhớ của ASIC (ví dụ vùng nhớ DPM), phần tổ chức giao tiếp còn lại do ASIC đảm
nhiệm hoàn toàn. Một số vùng nhớ như thanh ghi có thể chứa dữ liệu cấu hình, một số
vùng nhớ khác như hộp thư (mailbox) có thể chứa các dữ liệu sử dụng cần trao đổi trong
mạng.
Thành phần của hệ điều hành
Phần mềm giao thức có thể thực hiện dưới hình thức là một thành phần tùy chọn
trong hệ điều hành. Thông thường, phần mềm này không thực hiện toàn bộ các lớp giao
thức của một hệ thống mạng, mà chỉ thực hiện một số lớp phía trên. Ví dụ, một card
giao diện Ethernet đã chứa sẵn firmware cho xử lý giao thức cấp thấp, trong khi hệ điều
hành (Windows, UNIX) có thể bổ sung các phần mềm giao thức cấp trên như TCP/IP,
IPX/SPX,... Sự khác biệt cơ bản so với dạng firmware là phần mềm xử lý giao thức ở
đây do CPU của máy chủ thực hiện, trong khi firmware do vi xử lý của phần cứng giao
diện mạng thực hiện. Ưu điểm của cách thực hiện này là sự linh hoạt tối đa cho nền ứng
dụng.
Phần mềm thư viện
Phần mềm xử lý giao thức thực hiện dưới dạng một thư viện lập trình là hình thức
linh hoạt nhất, cho phép nhúng trực tiếp mã xử lý giao thức vào chương trình ứng dụng
một cách có lựa chọn. Thông thường, nhà sản xuất phần cứng giao diện mạng có thể
cung cấp kèm một thư viện hàm (C/C++). Cũng giống như dạng cài đặt trong hệ điều
hành, mã phần mềm thư viện do CPU của máy chủ thực hiện và thông thường chỉ đảm
nhiệm chức năng xử lý giao thức của các lớp trên.
Đăng ký:
Đăng Nhận xét
(
Atom
)