Mô hình client-server là một mô hình
nổi tiếng trong mạng máy tính
, được áp dụng rất rộng rãi và là mô hình của mọi trang web hiện có. Ý tưởng của mô hình này là máy con (đóng vài trò là máy khách) gửi một yêu cầu (request) để máy chủ (đóng vai trò người cung ứng dịch vụ), máy chủ sẽ xử lý và trả kết quả về cho máy khách.
, được áp dụng rất rộng rãi và là mô hình của mọi trang web hiện có. Ý tưởng của mô hình này là máy con (đóng vài trò là máy khách) gửi một yêu cầu (request) để máy chủ (đóng vai trò người cung ứng dịch vụ), máy chủ sẽ xử lý và trả kết quả về cho máy khách.
Một mô hình ngược lại là mô hình master-slaver
, trong đó máy chủ (đóng vai trò ông chủ) sẽ gửi dữ liệu đến máy con (đóng vai trò nô lệ) bất kể máy con có cần hay không.
, trong đó máy chủ (đóng vai trò ông chủ) sẽ gửi dữ liệu đến máy con (đóng vai trò nô lệ) bất kể máy con có cần hay không.
Bài
hoặc đoạn này cần được wiki hóa
theo các quy cách định dạng và văn phong Wikipedia.
Xin hãy giúp phát triển bài này bằng cách liên kết trong đến các mục từ thích hợp khác. |
Mô hình client/server như sau: Client/Server là mô hình
tổng quát nhất, trên thực tế thì một server có thể được nối tới nhiều server
khác nhằm làm việc hiệu quả và nhanh hơn. Khi nhận được 1 yêu cầu từ client,
server này có thể gửi tiếp yêu cầu vừa nhận được cho server khác ví dụ như
database server vì bản thân nó không thể xử lý yêu cầu này được. Máy server có
thể thi hành các nhiệm vụ đơn giản hoặc phức tạp. Ví dụ như một máy chủ trả lời
thời gian hiện tại trong ngày, khi một máy client yêu cầu lấy thông tin về thời
gian nó sẽ phải gửi một yêu cầu theo một tiêu chuẩn do server định ra, nếu yêu
cầu được chấp nhận thì máy server sẽ trả về thông tin mà client yêu cầu. Có rất
nhiều các dịch vụ server trên mạng nhưng nó đều hoạt động theo nguyên lý là
nhận các yêu cầu từ client sau đó xử lý và trả kết quả cho client yêu cầu.
Thông thường chương trình server và client được thi hành trên hai máy khác
nhau. Cho dù lúc nào server cũng ở trạng thái sẵn sàng chờ nhận yêu cầu từ
client nhưng trên thực tế một tiến trình liên tác qua lại (interaction) giữa
client và server lại bắt đầu ở phía client, khi mà client gửi tín hiệu yêu cầu
tới server. Các chương trình server thường đều thi hành ở mức ứng dụng (tầng
ứng dụng của mạng). Sự thuận lợi của phương pháp này là nó có thể làm việc trên
bất cứ một mạng máy tính nào có hỗ trợ giao thức truyền thông chuẩn cụ thể ở
đây là giao thức TCP/IP. Với các giao thức chuẩn này cũng giúp cho các nhà sản
xuất có thể tích hợp nhiều sản phẩm khác nhau của họ lên mạng mà không gặp phải
khó khăn gì. Với các chuẩn này thì các chương trình server cho một dịch vụ nào
đấy có thể thi hành trên một hệ thống chia sẻ thời gian (timesharing system)
với nhiều chương trình và dịch vụ khác hoặc nó có thể chạy trên chính một máy
tính các nhân bình thường. Có thể có nhiều chương server cùng làm một dịch vụ,
chúng có thể nằm trên nhiều máy tính hoặc một máy tính. Với mô hình trên chúng
ta nhận thấy rằng mô hình client/server chỉ mang đặc điểm của phần mềm không
liên quan gì đến phần cứng mặc dù trên thực tế yêu cầu cho một máy server là
cao hơn nhiều so với máy client. Lý do là bởi vì máy server phải quản lý rất
nhiều các yêu cầu từ các clients khác nhau trên mạng. Ưu và nhược điểm chính Có
thể nói rằng với mô hình client/server thì mọi thứ dường như đều nằm trên bàn
của người sử dụng, nó có thể truy cập dữ liệu từ xa (bao gồm các công việc như
gửi và nhận file, tìm kiếm thông tin,...) với nhiều dịch vụ đa dạng mà mô hình
cũ không thể làm được. Mô hình client/server cung cấp một nền tảng lý tưởng cho
phép tích hợp các kỹ thuật hiện đại như mô hình thiết kế hướng đối tượng, hệ
chuyên gia, hệ thông tin địa lý (GIS)... Một trong những vấn đề nảy sinh trong
mô hình này đó là tính an toàn và bảo mật thông tin trên mạng. Do phải trao đổi
dữ liệu giữa 2 máy ở 2 khu vực khác nhau cho nên dễ dàng xảy ra hiện tượng
thông tin truyền trên mạng bị lộ.
1. Client Trong mô
hình client/server, người ta còn định nghĩa cụ thể cho một máy client là một
máy trạm mà chỉ được sử dụng bởi 1 người dùng với để muốn thể hiện tính độc lập
cho nó. Máy client có thể sử dụng các hệ điều hành bình thường như Win9x, DOS,
OS/2... Bản thân mỗi một client cũng đã được tích hợp nhiều chức năng trên hệ
điều hành mà nó chạy, nhưng khi được nối vào một mạng LAN, WAN theo mô hình
client/server thì nó còn có thể sử dụng thêm các chức năng do hệ điều hành mạng
(NOS) cung cấp với nhiều dịch vụ khác nhau (cụ thể là các dịch vụ do các server
trên mạng này cung cấp), ví dụ như nó có thể yêu cầu lấy dữ liệu từ một server
hay gửi dữ liệu lên server đó... Thực tế trong các ứng dụng của mô hình
client/server, các chức năng hoạt động chính là sự kết hợp giữa client và
server với sự chia sẻ tài nguyên, dữ liệu trên cả 2 máy Vai trò của client
Trong mô hình client/server, client được coi như là người sử dụng các dịch vụ
trên mạng do một hoặc nhiều máy chủ cung cấp và server được coi như là người
cung cấp dịch vụ để trả lời các yêu cầu của các clients. Điều quan trọng là
phải hiểu được vai trò hoạt động của nó trong một mô hình cụ thể, một máy
client trong mô hình này lại có thể là server trong một mô hình khác. Ví dụ cụ
thể như một máy trạm làm việc như một client bình thường trong mạng LAN nhưng
đồng thời nó có thể đóng vai trò như một máy in chủ (printer server) cung cấp
dịch vụ in ấn từ xa cho nhiều người khác (clients) sử dụng. Client được hiểu
như là bề nổi của các dịch vụ trên mạng, nếu có thông tin vào hoặc ra thì chúng
sẽ được hiển thị trên máy client.
2. Server Server
còn được định nghĩa như là một máy tính nhiều người sử dụng (multiuser
computer). Vì một server phải quản lý nhiều yêu cầu từ các client trên mạng cho
nên nó hoạt động sẽ tốt hơn nếu hệ điều hành của nó là đa nhiệm với các tính
năng hoạt động độc lập song song với nhau như hệ điều hành UNIX, WINDOWS...
Server cung cấp và điều khiển các tiến trình truy cập vào tài nguyên của hệ
thống. Các ứng dụng chạy trên server phải được tách rời nhau để một lỗi của ứng
dụng này không làm hỏng ứng dụng khác. Tính đa nhiệm đảm bảo một tiến trình
không sử dụng toàn bộ tài nguyên hệ thống. Vai trò của server. Như chúng ta đã
bàn ở trên, server như là một nhà cung cấp dịch vụ cho các clients yêu cầu tới
khi cần, các dịch vụ như cơ sở dữ liệu, in ấn, truyền file, hệ thống... Các ứng
dụng server cung cấp các dịch vụ mang tính chức năng để hỗ trợ cho các hoạt
động trên các máy clients có hiệu quả hơn. Sự hỗ trợ của các dịch vụ này có thể
là toàn bộ hoặc chỉ một phần thông qua IPC. Để đảm bảo tính an toàn trên mạng
cho nên server này còn có vai trò như là một nhà quản lý toàn bộ quyền truy cập
dữ liệu của các máy clients, nói cách khác đó là vai trò quản trị mạng. Có rất
nhiều cách thức hiện nay nhằm quản trị có hiệu quả, một trong những cách đang
được sử dụng đó là dùng tên Login và mật khẩu
Không có nhận xét nào:
Đăng nhận xét