DCN - Mô hình Máy chủ Khách hàng
Hai quy trình ứng dụng từ xa có thể giao tiếp chủ yếu theo hai kiểu khác nhau:
Peer-to-peer: Cả hai quy trình từ xa đang thực thi ở cùng một mức và chúng trao đổi dữ liệu bằng cách sử dụng một số tài nguyên được chia sẻ.
Client-Server: Một quy trình từ xa hoạt động như một Máy khách và yêu cầu một số tài nguyên từ một quy trình ứng dụng khác đóng vai trò Máy chủ.
Trong mô hình máy khách-máy chủ, bất kỳ quá trình nào cũng có thể hoạt động như Máy chủ hoặc Máy khách. Nó không phải là loại máy, kích thước của máy hoặc khả năng tính toán của nó làm cho nó trở thành máy chủ; đó là khả năng phục vụ yêu cầu làm cho một máy trở thành một máy chủ.
Một hệ thống có thể hoạt động đồng thời như Máy chủ và Máy khách. Đó là, một tiến trình hoạt động như Máy chủ và một tiến trình khác hoạt động như một máy khách. Điều này cũng có thể xảy ra khi cả quá trình máy khách và máy chủ nằm trên cùng một máy.
Giao tiếp
Hai quy trình trong mô hình máy khách-máy chủ có thể tương tác theo nhiều cách khác nhau:
Sockets
Cuộc gọi thủ tục từ xa (RPC)
ổ cắm
Trong mô hình này, quá trình hoạt động như Máy chủ mở một ổ cắm bằng cách sử dụng một cổng nổi tiếng (hoặc được khách hàng biết đến) và đợi cho đến khi một số yêu cầu của khách hàng đến. Quá trình thứ hai hoạt động như một Máy khách cũng mở một ổ cắm nhưng thay vì chờ một yêu cầu đến, máy khách sẽ xử lý 'yêu cầu trước'.
Khi yêu cầu được gửi đến máy chủ, nó sẽ được phục vụ. Nó có thể là một yêu cầu chia sẻ thông tin hoặc tài nguyên.
Cuộc gọi thủ tục từ xa
Đây là một cơ chế trong đó một tiến trình tương tác với một tiến trình khác bằng các lệnh gọi thủ tục. Một quy trình (máy khách) gọi quy trình nằm trên máy chủ từ xa. Quá trình trên máy chủ từ xa được cho là Máy chủ. Cả hai quy trình đều được cấp phát sơ khai. Giao tiếp này diễn ra theo cách sau:
Tiến trình máy khách gọi cuống máy khách. Nó chuyển tất cả các tham số liên quan đến chương trình cục bộ cho nó.
Tất cả các tham số sau đó được đóng gói (sắp xếp lại) và một cuộc gọi hệ thống được thực hiện để gửi chúng đến phía bên kia của mạng.
Kernel gửi dữ liệu qua mạng và đầu kia nhận nó.
Máy chủ từ xa chuyển dữ liệu đến máy chủ gốc nơi nó không được quản lý.
Các tham số được chuyển cho thủ tục và sau đó thủ tục được thực thi.
Kết quả được gửi lại cho khách hàng theo cách tương tự.