Thuật ngữ “máy khách” dùng để chỉ một chương trình hoặc hệ thống máy tính yêu cầu dịch vụ từ một chương trình hoặc hệ thống máy tính khác, được gọi là máy chủ, trong cấu trúc mạng. Khách hàng hoạt động như một trung gian cho người dùng, giúp họ truy cập các tài nguyên và dịch vụ của máy chủ như trang web, cơ sở dữ liệu và tệp, cùng nhiều thứ khác.
Nguồn gốc và cách sử dụng ban đầu của khách hàng
Khái niệm máy khách trong các hệ thống nối mạng bắt nguồn từ sự phát triển ban đầu của điện toán mạng vào những năm 1960 và 1970. Các hệ thống đầu tiên giống với mô hình máy khách-máy chủ ngày nay là hệ thống chia sẻ thời gian cho phép nhiều người dùng truy cập đồng thời vào một máy tính lớn.
Thuật ngữ “máy khách” lần đầu tiên được sử dụng trong bối cảnh này trong một bài báo của các kỹ sư Xerox PARC vào năm 1981, thảo luận về công nghệ Ethernet mới nổi và một hệ thống mạng phân tách các chức năng thành máy khách và máy chủ. Điều này đánh dấu sự khởi đầu của mô hình máy khách-máy chủ, nền tảng cho cấu trúc của Internet ngày nay.
Bản chất của khách hàng: Một cái nhìn sâu sắc
Máy khách là một phần quan trọng của mô hình máy khách-máy chủ, một cấu trúc ứng dụng phân tán phân chia nhiệm vụ giữa các máy chủ cung cấp tài nguyên hoặc dịch vụ và máy khách yêu cầu chúng. Mối quan hệ máy khách-máy chủ được thiết lập khi máy khách gửi yêu cầu đến máy chủ, sau đó máy chủ sẽ phản hồi với dịch vụ mong muốn.
Máy khách có thể là máy tính cá nhân, thiết bị di động hoặc ứng dụng phần mềm. Nó thường được liên kết với giao diện người dùng và các quy trình chạy trên máy tính cá nhân hoặc máy trạm. Phần mềm máy khách cũng có thể được nhúng trong các thiết bị cần kết nối với máy chủ để thực hiện một số chức năng nhất định, chẳng hạn như TV thông minh và thiết bị IoT.
Cơ chế làm việc của khách hàng
Một máy khách bắt đầu giao tiếp theo mô hình máy khách-máy chủ. Nó gửi yêu cầu qua mạng đến máy chủ bằng giao thức cụ thể, thường qua HTTP cho các dịch vụ web. Máy chủ nhận được yêu cầu này, xử lý nó và trả về phản hồi thích hợp cho máy khách.
Sau đó, máy khách sẽ diễn giải phản hồi của máy chủ và cung cấp kết quả cho người dùng cuối. Ví dụ: trong trường hợp trình duyệt web (máy khách), nó sẽ kết xuất và hiển thị HTML nhận được từ máy chủ web. Giao tiếp giữa máy khách và máy chủ có thể đồng bộ hoặc không đồng bộ và có thể bao gồm một hoặc nhiều thời gian khứ hồi (RTT).
Các tính năng chính của khách hàng
-
Giao diện người dùng: Khách hàng thường cung cấp một giao diện mà người dùng tương tác. Giao diện này có thể là trình duyệt web, ứng dụng di động hoặc ứng dụng máy tính để bàn.
-
Người khởi xướng yêu cầu: Khách hàng bắt đầu yêu cầu trong mô hình client-server. Máy chủ không thể gửi phản hồi cho đến khi nhận được yêu cầu từ máy khách.
-
Bộ xử lý phản hồi của máy chủ: Sau khi máy chủ phản hồi, máy khách sẽ xử lý phản hồi đó. Chẳng hạn, trình duyệt web hiển thị HTML, CSS và JavaScript nhận được từ máy chủ web.
-
Phụ thuộc vào máy chủ: Khách hàng phụ thuộc vào máy chủ để lấy tài nguyên hoặc dịch vụ. Chúng không hoạt động đầy đủ nếu không có kết nối với máy chủ.
Các loại khách hàng
Có ba loại máy khách chủ yếu trong một mạng:
-
Khách hàng béo hoặc dày: Những máy khách này thực hiện hầu hết quá trình xử lý ứng dụng, với máy chủ cung cấp khả năng lưu trữ dữ liệu. Một ví dụ về máy khách béo sẽ là một PC chạy trò chơi điện tử sử dụng máy chủ cho dữ liệu nhiều người chơi.
-
Khách hàng mỏng: Những máy khách này phụ thuộc rất nhiều vào máy chủ để xử lý và thường chỉ xử lý đầu vào và đầu ra. Một ví dụ về ứng dụng khách mỏng là ứng dụng email dựa trên web như Gmail.
-
Khách hàng kết hợp: Những khách hàng này là sự kết hợp của cả khách hàng dày và mỏng. Họ có thể thực hiện một số xử lý cục bộ nhưng vẫn dựa vào máy chủ cho các tác vụ khác.
Loại khách hàng | Xử lý cục bộ | Sự phụ thuộc của máy chủ | Ví dụ |
---|---|---|---|
Béo/Dày | Cao | Thấp | Máy tính trò chơi điện tử |
Gầy | Thấp | Cao | Gmail |
Hỗn hợp | Trung bình | Trung bình | Google Tài liệu |
Các trường hợp sử dụng, thách thức và giải pháp của khách hàng
Khách hàng được sử dụng để truy cập các dịch vụ mạng khác nhau, bao gồm dịch vụ web, chia sẻ tệp, email và cơ sở dữ liệu. Chúng được sử dụng trong nhiều lĩnh vực khác nhau như giải trí, kinh doanh, giáo dục và dịch vụ y tế.
Tuy nhiên, khách hàng phải đối mặt với những thách thức. Chúng phụ thuộc vào kết nối mạng và tính khả dụng của máy chủ. Nếu mạng hoặc máy chủ ngừng hoạt động, máy khách không thể truy cập dịch vụ. Chúng cũng có những lỗ hổng bảo mật tiềm ẩn vì các máy chủ độc hại có thể gửi dữ liệu có hại. Khách hàng phải đảm bảo rằng họ đang tương tác với các máy chủ hợp pháp và dữ liệu của họ được mã hóa để tránh bị chặn.
Các giải pháp bao gồm sử dụng cơ sở hạ tầng mạng đáng tin cậy, đảm bảo máy chủ có tính sẵn sàng cao, triển khai xác thực và kiểm tra phía máy khách cũng như sử dụng các giao thức mạng an toàn như HTTPS.
Khách hàng và các khái niệm tương tự
Khách hàng có thể được so sánh với các khái niệm tương tự như các đồng nghiệp trong mạng ngang hàng (P2P). Trong khi máy khách phụ thuộc vào máy chủ về tài nguyên, thì một máy ngang hàng trong mạng P2P có thể vừa cung cấp vừa tiêu thụ tài nguyên. Đây là một so sánh nhanh:
Ý tưởng | Cung cấp tài nguyên | Tiêu thụ tài nguyên | Phụ thuộc vào máy chủ | Ví dụ |
---|---|---|---|---|
Khách hàng | KHÔNG | Đúng | Đúng | Trình duyệt web |
Ngang nhau | Đúng | Đúng | KHÔNG | BitTorrent |
Xu hướng và đổi mới trong tương lai
Với sự ra đời của điện toán đám mây, định nghĩa về khách hàng ngày càng mở rộng. Máy khách hiện đại không chỉ là PC hay thiết bị di động mà còn bao gồm các ứng dụng web chạy trên nền tảng đám mây. Điện toán ranh giới là một xu hướng đang phát triển khác trong đó một số quy trình xử lý được chuyển sang máy khách để giảm độ trễ.
Các công nghệ mới nổi như 5G và Internet of Things (IoT) cũng sẽ ảnh hưởng đến mô hình máy khách-máy chủ. Nhiều thiết bị sẽ hoạt động như máy khách và với tốc độ mạng cao hơn, sự tương tác giữa máy khách và máy chủ sẽ trở nên hiệu quả hơn.
Máy chủ proxy và máy khách
Máy chủ proxy hoạt động như một trung gian giữa máy khách và máy chủ khác. Nó có thể cung cấp nhiều chức năng khác nhau như bảo mật, nâng cao hiệu suất và ẩn danh. Máy khách kết nối với máy chủ proxy, sau đó máy chủ này sẽ thay mặt máy khách gửi yêu cầu đến các máy chủ khác. Điều này có thể được sử dụng để che giấu địa chỉ IP của khách hàng, truy cập nội dung bị chặn địa lý hoặc nội dung bộ đệm để truy cập nhanh hơn.
Liên kết liên quan
Để biết thêm thông tin chi tiết về máy khách trong hệ thống mạng, hãy kiểm tra các tài nguyên sau: