CƠ SỞ VỀ LẬP TRÌNH MẠNG TRÊN MÔ

Một phần của tài liệu Đề tài xây dựng ứng dụng webmail (Trang 21 - 26)

2.1. LẬP TRÌNH GIAO TIẾP MẠNG VỚI WINDOWS SOCKETS

Windows NT là một hệ điều hành mạnh, cho phép tận dụng tối đa khả năng của máy tính loại 32 bit, cung ứng hàng loạt các dịch vụ mạng trên môi trường Intranet và

Internet. Hiện nay Windows NT được sử dụng tương đối phổ biến ở các cơ quan;

doanh nghiệp Việt Nam.

Giao thức truyền thông TCP/IP đã được dùng bởi hệ điều hành UNIX và mạng Internet, để các máy trên mạng NT có thể giao tiếp với các máy trên mạng khác, Windows NT cũng cung cấp giao thức này. Ngoài một số lệnh dùng giao thức TCP/IP đã được viết sẵn như: ftp, telnet, finger..., Windows NT cho phép người lập trình phát triển các ứng dụng khai thác kỹ thuật TCP/IP thông qua một thư viện tên là Windows Sockets.

Có ba lý do chính để người lập trình sử dụng kỹ thuật TCP/IP:

 Có thể viết các ứng dụng trên Windows NT để nối vào mạng UNIX và khai thác các dịch vụ có sẵn trên đó.

 Tạo ra các dịch vụ trên máy Windows NT để các máy UNIX có thể khai thác những dịch vụ này.

 Viết các chương trình cho phép các máy Windows NT giao tiếp trên hệ thống mạng Internet.

2.2. MỘT SỐ KHÁI NIỆM CƠ BẢN

2.2.1.Địa chỉ Internet

Trong hệ thống mạng Internet, mỗi máy đều có một tên và một địa chỉ IP (cũng gọi là địa chỉ Internet). Ví dụ như, một máy NT có tên là ntsvr.csc.hcmu.vn và địa chỉ là 192.48.94.200. Tên hay địa chỉ IP đều xác định duy nhất một máy trong hệ thống mạng Internet. Khi lập trình, chúng ta có các hàm để chuyển đổi từ tên sang địa chỉ IP và ngược lại.

2.2.2. Khái niệm socket và port

Một socket là một thiết bị truyền thông hai chiều tương tự như tập tin, chúng ta có thể đọc hay ghi lên nó, tuy nhiên mỗi socket là một thành phần trong một mối nối nào đó giữa các máy trên mạng máy tính và các thao tác đọc/ghi chính là sự trao đổi dữ liệu giữa các ứng dụng trên nhiều máy khác nhau.

Trong giao thức truyền thông TCP, mỗi mối nối giữa hai máy tính được xác định bởi một port, khái niệm port ở đây không phải là một cổng giao tiếp trên thiết bị vật lý mà chỉ là một khái niệm logic trong cách nhìn của người lập trình, mỗi port được tương ứng với một số nguyên dương.

Hình bên dưới minh họa cách giao tiếp giữa hai máy tính trong giao thức truyền thông TCP. Máy A tạo ra một socket và kết buộc (bind) socket này với port X (tức là một số nguyên dương có ý nghĩa cục bộ trong máy A), trong khi đó máy B tạo một socket khác và móc vào (connect) port X trong máy A.

2.3. CÁCH CÀI ĐẶT ỨNG DỤNG CLIENT/SERVER TCP socket

socket

MÁY A MÁY B

Port Hệ thống mạng

Các socket và port trong mối nối TCP Mối nối

2.3.1. Cách cài đặt server TCP

ứng dụng server làm việc theo qui trình sau đây:

1. Gọi hàm socket để tạo một socket.

2. Gọi hàm bind để kết buộc socket với một port, đối với mỗi giao thức ứng chuẩn thì sẽ có một hằng số được định nghĩa sẵn trong Winsock cho port của giao thức đó.

3. Gọi hàm listen để chờ đến khi có một client nối vào port.

4. Khi có một client nối vào thì hàm listen trả điều khiển về, ứng dụng server gọi hàm accept để xác nhận mối nối của client.

5. Gọi các hàm gửi hay nhận dữ liệu để trao đổi thông tin với client, ví dụ như hàm send, recv.

Sau khi đã hoàn tất quá trình trao đổi dữ liệu, ứng dụng server gọi hàm closesocket để đóng socket đã tạo.

2.3.2. Cách cài đặt client TCP

ứng dụng client thực hiện các bước sau:

1. Gọi hàm socket để tạo một socket.

2. Gọi hàm connect để nối vào server.

3. Gọi các hàm gửi hay nhận dữ liệu để trao đổi thông tin với server, ví dụ như các hàm send, recv.

4. Sau khi đã hoàn tất quá trình trao đổi dữ liệu, ứng dụng client gọi hàm closesocket để đóng socket đã tạo.

Hình minh họa các bước cần thiết để các ứng dụng client và server giao tiếp với nhau như sau:

ứng dụng Server ứng dụng Client

Nối vào port của server Tạo một socket

Kết buộc socket với một port (bind)

Đặt socket ở trạng thái chờ client nối

vào

Chấp nhận kết nối của client

Chuyển đổi dữ liệu giữa client và server

Tạo một socket

Các bước giao tiếp giữa client và server trong giao thức TCP

CHƯƠNG 3 : MỘT SỐ KHÁI NIỆM LIÊN QUAN ĐẾN

Một phần của tài liệu Đề tài xây dựng ứng dụng webmail (Trang 21 - 26)

Tải bản đầy đủ (PDF)

(145 trang)