Mô hình client server và một số khả năng ứng dụng.

Một phần của tài liệu Dịch vụ truy cập từ xa và dịch vụ Proxy (Trang 34 - 37)

I. Các khái niệm.

I.1.Mô hình client server và một số khả năng ứng dụng.

Mô hình chuẩn cho các ứng dụng trên mạng là mô hình client-server. Trong mô hình này máy tính đóng vai trò là một client là máy tính có nhu cầu cần phục vụ dịch vụ và máy tính đóng vai trò là một server là máy tính có thể đáp ứng được các yêu cầu về dịch vụ đó từ các client. Khái niệm client-server chỉ mang tính tương đối, điều này có nghĩa là một máy có thể lúc này đóng vai trò là client và lúc khác lại đóng vai trò là server. Nhìn chung, client là một máy tính cá nhân, còn các Server là các máy tính có cấu hình mạnh có chứa các cơ sở dữ liệu và các chương trình ứng dụng để phục vụ một dịch vụ nào đấy từ các yêu cầu của client (hình 6.1).

Hình 6.1

Cách thức hoạt động của mô hình client-server như sau: một tiến trình trên server khởi tạo luôn ở trạng thái chờ yêu cầu từ các tiến trình client tiến trình tại client được khởi tạo có thể trên cùng hệ thống hoặc trên các hệ thống khác được kết nối thông qua mạng, tiến trình client thường được khởi tạo bởi các lênh từ người dùng. Tiến trình client ra yêu cầu và gửi chúng qua mạng tới server để yêu cầu được phục vụ các dịch vụ. Tiến trình trên server thực hiện việc xác định yêu cầu hợp lệ từ client sau đó phục vụ và trả kết quả tới client và

cấp như: dịch vụ về thời gian (trả yêu cầu thông tin về thời gian tới client), dịch vụ in ấn (phục vụ yêu cầu in tại client), dịch vụ file (gửi, nhận và các thao tác về file cho client), thi hành các lệnh từ client trên server...

Dịch vụ web là một dịch vụ cơ bản trên mạng Internet hoạt động theo mô hình client-server. Trình duyệt Web (Internet Explorer, Netscape...) trên các máy client sử dụng giao thức TCP/IP để đưa ra các yêu cầu HTTP tới máy server. Trình duyệt có thể đưa ra các yêu cầu một trang web cụ thể hay yêu cầu thông tin trong các cơ sở dữ liệu. Máy server sử dụng phần mềm của nó phân tích các yêu cầu từ các gói tin nhận được kiểm tra tính hợp lệ của client và thực hiện phục vụ các yêu cầu đó cụ thể là gửi trả lại client một trang web cụ thể hay các thông tin trên cơ sở dữ liệu dưới dạng một trang web. Server là nơi lưu trữ nội dung thông tin các website, phần mềm trên server cho phép server xác định được trang cần yêu cầu và gửi tới client. Cơ sở dữ liệu và các ứng dụng tương tự khác trên máy chủ được khai thác và kết nối qua các chương trình như CGI (Common Gateway Interface), khi các máy server nhận được yêu cầu về tra cứu trong cơ sở dữ liệu , nó chuyển yêu cầu tới server có chứa cơ sở dữ liệu hoặc ứng dụng để xử lý qua CGI.

I.2. Socket.

Một kết nối được định nghĩa như là một liên kết truyền thông giữa các tiến trình, như vậy để xác định một kết nối cần phải xác định các thành phần sau: {Protocol, local-addr, local-process, remote-addr, remote-process}

Trong đó local-addr và remote-addr là địa chỉ của các máy địa phương và máy từ xa. local-process, remote-process để xác định vị trí tiến trình trên mỗi hệ thống. Chúng ta định nghĩa một nửa kết nối là {Protocol, local-addr, local- process} và {Protocol, remote-addr, remote-process} hay còn gọi là một socket.

Chúng ta đã biết để xác đinh một máy ta dựa vào địa chỉ IP của nó, nhưng trên một máy có vô số các tiến trình ứng dụng đang chạy, để xác định vị trí các tiến trình ứng dụng này người ta định danh cho mỗi tiến trình một số hiệu cổng, giao thức TCP sử dụng 16 bit cho việc định danh các cổng tiến trình và qui ước số hiệu cổng từ 1-1023 được sử dụng cho các tiến trình chuẩn (như FTP qui ước sử dụng cổng 21, dịch vụ WEB qui ước cổng 80, dịch vụ gửi thư

SMTP cổng 25...) số hiệu cổng từ 1024- 65535 dành cho các ứng dụng của người dùng. Như vậy một cổng kết hợp với một địa chỉ IP tạo thành một socket duy nhất trong liên mạng. Một kết nối TCP được cung cấp nhờ một liên kết logic giữa một cặp socket. Một socket có thể tham gia nhiều liên kết với các socket ở xa khác nhau. Trước khi truyền dữ liệu giữa hai trạm cần phải thiết lập một liên kết TCP giữa chúng và khi kết thúc phiên truyền dữ liệu thì liên kết đó sẽ được giải phóng.

Hình 6.2

Quá trình thiết lập một socket với các lời gọi hệ thống được mô tả như sau: server thiết lập một socket với các thông số đặc tả các thủ tục truyền thông như (TCP, UDP, XNS...) và các kiểu truyền thông (SOCK_STREAM, SOCK_DGRAM...), sau đó liên kết tới socket này các thông số về địa chỉ như IP và các cổng TCP/UDP sau đó server ở chế độ chờ và chấp nhận kết nối đến từ client.

Một phần của tài liệu Dịch vụ truy cập từ xa và dịch vụ Proxy (Trang 34 - 37)