Danh mục

Bài giảng Lập trình mạng Java: Chương 3 - ThS. Nguyễn Minh Thành

Số trang: 58      Loại file: pdf      Dung lượng: 893.59 KB      Lượt xem: 6      Lượt tải: 0    
Hoai.2512

Phí tải xuống: 25,000 VND Tải xuống file đầy đủ (58 trang) 0
Xem trước 6 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Chương 3 trang bị cho người học những kiến thức liên quan đến Mô hình Client-Server và lập trình socket. Trong chương này người học sẽ tìm hiểu các nội dung: Mô hình client – server, mô hình truyền tin socket, lập trình socket hướng kết nối, lập trình socket phi kết nối. Mời các bạn cùng tham khảo.
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình mạng Java: Chương 3 - ThS. Nguyễn Minh ThànhChương 3:Mô Hình Client-Server &Lập Trình SocketGIẢNG VIÊN : THS. NGUYỄN MINH THÀNHEMAIL : THANHNM@ITC.EDU.VNNội Dung1. Mô hình client – server2. Mô hình truyền tin socket3. Lập trình socket hướng kết nối4. Lập trình socket phi kết nối MÔ HÌNH CLIENT-SERVER & LẬP TRÌNH SOCKET 21. Mô Hình Client/Server Mô Hình Client/Server  Gồm có một chương trình đóng vai trò là client và một chương trình đóng vai trò là server. Hai chương trình này sẽ giao tiếp với nhau thông qua mạng. Chương trình server đóng vai trò cung cấp dịch vụ. Chương trình này luôn luôn lắng nghe các yêu cầu từ phía client, rồi tính toán và đáp trả kết quả tương ứng. Chương trình client cần một dịch vụ và gởi yêu cầu dịch vụ tới chương trình server và đợi đáp trả từ server. MÔ HÌNH CLIENT-SERVER & LẬP TRÌNH SOCKET 31. Mô Hình Client/Server Mô Hình Client/Server (tt) Quá trình trao đổi dữ liệu giữa Client và Server  Truyền một yêu cầu từchương trình client tới chương trình server  Yêu cầu được server xửlý  Truyền đáp ứng cho client MÔ HÌNH CLIENT-SERVER & LẬP TRÌNH SOCKET 41. Mô Hình Client/Server Các Kiến Trúc Client/Server Client/Server hai tầng  Tầng ứng dụng (client)  Tầng lưu trữ dữ liệu (server) Đặc điểm kiến trúc 2 tầng  công việc xử lý được dành cho phía client  server chỉ đóng vai trò kiểm soát luồng vào ra giữa ứng dụng và dữ liệu Nhược điểm  Toàn bộ ứng dụng được xử lý trên client  Không tận dụng được hết khả năng của server  Truyền tải dữ liệu giữa client và server nhiều MÔ HÌNH CLIENT-SERVER & LẬP TRÌNH SOCKET 51. Mô Hình Client/Server Các Kiến Trúc Client/Server Client/Server 3 tầng  Tầng trình diễn (client)  Tầng lưu trữ dữ liệu (data server)  Tầng xử lý dữ liệu trung tâm (Application server) MÔ HÌNH CLIENT-SERVER & LẬP TRÌNH SOCKET 62. Lập Trình Mạng với Socket Lập Trình Mạng với Socket  Trong mô hình TCP/IP, các chương trình client và server thường sử dụng các giao thức ở tầng ứng dụng và tầng vận chuyển để truyền thông dữ liệu cho nhau. Các giao thức còn lại chủ yếu nằm ở phần cứng mạng như card mạng, switch,….  2 giao thức chính được dùng trong lập trình Socket là : TCP và UDP MÔ HÌNH CLIENT-SERVER & LẬP TRÌNH SOCKET 72. Lập Trình Mạng với Socket Khái niệm về Socket  Socket  Đối tượng nằm giữa chương trình với 2 giao thức vận chuyển TCP và UDP. ◦ Một giao diện lập trình mạng để giao tiếp với các giao thức TCP và UDP. ◦ Lập trình viên không sử dụng trực tiếp giao thức TCP và UDP MÔ HÌNH CLIENT-SERVER & LẬP TRÌNH SOCKET 82. Lập Trình Mạng với Socket Khái niệm về Socket (tt)  Có 3 loại socket  Socket hướng kết nối (TCP Socket)  Socket không hướng kết nối (UDP Socket)  Raw socket MÔ HÌNH CLIENT-SERVER & LẬP TRÌNH SOCKET 92. Lập Trình Mạng với Socket Lý do sử dụng Socket Tại sao lập trình viên không sử dụng trực tiếp giao thức TCP và UDP để truyền tin ?  Dữ liệu được truyền trên mạng Internet dưới dạng các gói có kích thước hữu hạn được gọi là datagram.  Mỗi datagram chứa một header và một payload. Header chứa địa chỉ và cổng cần truyền gói tin đến, cũng như địa chỉ và cổng xuất phát của gói tin, và các thông tin khác được sử dụng để đảm bảo độ tin cậy truyền tin, payload chứa dữ liệu.  Tuy nhiên do các datagram có chiều dài hữu hạn nên thường phải phân chia dữliệu thành nhiều gói và khôi phục lại dữliệu ban đầu từcác gói ởnơi nhận.  Trong quá trình truyền tin có thểcó một hay nhiều gói bịmất hay bịhỏng và cần phải truyền lại hoặc các gói tin đến không theo đúng trình tự.  việc phân chia dữliệu thành các gói, tạo các header, phân tích header của các gói đến, quản lý danh sách các gói đã nhận được và các gói chưa nhận được, ... rất nhiều công việc cần phải thực hiện, và đòi hỏi rất nhiều phần mềm phức tạp. MÔ HÌNH CLIENT-SERVER & LẬP TRÌNH SOCKET 102. Lập Trình Mạng với Socket Lý do sử dụng Socket (tt) Các Socket che dấu người lập trình khỏi các chi tiết mức thấp của mạng như kiểu đường truyền, các kích thước gói, yêu cầu truyền lại gói, các địa chỉ mạng... Chúng cho phép người lập trình xem một liên kết mạng nhưlà một luồng mà có thể đọc dữ liệu ra hay ghi dữliệu vào từ luồng này. MÔ HÌNH CLIENT-SERVER & LẬP TRÌNH SOCKET 112. Lập Trình Mạng với Socket Các Thao Tác cơ bản trên Socket Kết nối với một máy ở xa Gửi dữ liệu Nhận dữ liệu Ngắt liên kết Gán cổng Nghe dữ liệu đến Chấp nhận liên kết từ các máy ở xa trên cổng đã được gán MÔ HÌNH CLIENT-SERVER & LẬP TRÌNH SOCKET 123. Lập Trình Socket hướng kết nối Socket hướng kết nối (TCP socket)  Lập trình socket hướng kết nối sử dụng giao thức TCP để thành lập phiên làm việc giữa client và server.  Cần thực hiện đàm phán kết nối trước khi thực hiện truyền dữ liệu.  Việc thực hiện truyền dữ liệu có sự tin tưởng tuyệt đối. MÔ HÌNH CLIENT-SERVER & LẬP TRÌNH SOCKET 133. Lập Trình Socket hướng kết nối Đặc Điểm của TCP Socket C ...

Tài liệu được xem nhiều:

Gợi ý tài liệu liên quan: