TCP/IP cho phép các máy tính trong mạng TCP/IP có thể tạo ra các kết nối để trao đổi thông tin với nhau.Với 1 địa chỉ IP + 1 cổng TCP sẽ tạo thành 1 cầu nối và Socket chính là 1 giao diện lập trình trên các cầu nối đó. (1 IP Address + 1 Port TCP = 1 Socket )
Khi 2 máy tính muốn trao đổi thông tin với nhau thì 2 máy phải có cùng 1 Socket .1 máy được coi là Server, nó mở ra 1 Socket và lắng nghe yêu cầu. Máy kia được coi là Client, nó gọi cho Server Socket để bắt thiết lập 1 kết nối. Để thiết lập được kết nối cần có địa chỉ của máy đích (Destination IP Address )và 1 cổng TCP(TCP port)
8 trang |
Chia sẻ: ngtr9097 | Lượt xem: 4460 | Lượt tải: 2
Bạn đang xem nội dung tài liệu Đề tài Lập trình chát theo mô hình client/server, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG Bài tập lớn Môn: JAVA Đề tài: LẬP TRÌNH CHÁT THEO MÔ HÌNH CLIENT/SERVER GV hướng dẫn : Phùng Anh Tuấn Nhóm thực hiện: Nguyễn Thị Hà Nguyễn Thị Nhàn Phùng Thị Thơm Nguyễn Thị Hồng Thắm 1. Giới thiệu về Socket 2. Mô hình Client/Server 3. Nguyên tắc hoạt động 4. Chương trình Nội dung chính 1. Giới thiệu về Socket TCP/IP cho phép các máy tính trong mạng TCP/IP có thể tạo ra các kết nối để trao đổi thông tin với nhau.Với 1 địa chỉ IP + 1 cổng TCP sẽ tạo thành 1 cầu nối và Socket chính là 1 giao diện lập trình trên các cầu nối đó. (1 IP Address + 1 Port TCP = 1 Socket ) Khi 2 máy tính muốn trao đổi thông tin với nhau thì 2 máy phải có cùng 1 Socket .1 máy được coi là Server, nó mở ra 1 Socket và lắng nghe yêu cầu. Máy kia được coi là Client, nó gọi cho Server Socket để bắt thiết lập 1 kết nối. Để thiết lập được kết nối cần có địa chỉ của máy đích (Destination IP Address )và 1 cổng TCP(TCP port) Socket có 2 phương thức truyền tin chính là : Truyền có kết nối(Connection-Oriented)và truyền không có kết nối(Connectionless) Truyền có kết nối cung cấp phương thức truyền tin như điện thoại,phải thiết lập kết nối trước khi truyền và hủy bỏ sau khi sử dụng xong.Mọi dữ liệu được nhận đúng thứ tự mà nó được gửi. Truyền không kết nối cung cấp phương thức truyền giống việc phân phát thư không đảm bảo vì nhiều gói dữ liệu được nhận khác với thứ tự mà chúng được gửi đi. Giới thiệu về Socket 2.Mô hình Client/Server Các Socket cung cấp 1 giao diện để đọc ghi dữ liệu thông qua 1 luồng.Khi kết nối đã được thiết lập 2 máy tính có thể trao đổi dữ liệu thông qua các đối tượng: BufferedReader in=new BufferedReader(new InputStreamReader(client.getInputStream())); PrintWriter out=PrintWriter(client.getOutputStream(),true); Khi thực hiện xong cần hủy bỏ các liên kết để trả lại tài nguyên cho hệ thống,chúng ta sử dụng phương thức: In.close(); Out.close(); Client.close(); Hoạt động của 1 ứng dụng mạng Client/Server Giao diện chát Client/Server