Bài giảng Lập trình socket

Lập trình socket  
Click to add Text  
Nội dung  
⚫ Giới thiệu lập trình mạng  
Truyền thông mạng, tính toán client-server;  
Socket API cho lập trình các ứng dụng mạng  
⚫ Xây dựng ứng dụng CHAT theo mô hình  
Client-Server  
Giới thiệu lập trình mạng  
Click to add Text  
Kiến trúc mạng Internet  
⚫ application: Hỗ trợ các ứng dụng mạng  
ftp, smtp, http  
application  
transport  
network  
link  
⚫ transport: Chuyển dữ liệu đầu cuối  
(host-host)  
tcp, udp  
⚫ network: Định tuyến các gói tin  
(datagrams) từ nguồn tới đích  
ip, routing protocols  
⚫ link: Chuyển dữ liệu theo các chặng  
ppp, ethernet  
physical  
⚫ physical: Các tín hiệu bit dữ liệu trên  
đường truyền  
Lập trình ứng dụng mạng  
⚫ Người lập trình có thể tạo các ứng dụng mạng  
mà không cần biết chi tiết hoạt động của các  
giao thức truyền thông bên dưới.  
⚫ Mạng chỉ là môi trường truyền dữ liệu (thụ  
động), xử lý dữ liệu thực sự trong các CTƯD  
⚫ Chỉ có các chương trình ứng dụng giao tiếp với  
nhau hiểu được khuôn dạng và ngữ nghĩa thông  
điệp  
⚫ Tuy nhiên, tùy từng ứng dụng sử dụng các giao  
thức hỗ trợ thích hợp bên dưới (giao thức giao  
vận) -> người lập trình cần xác định khi lập trình  
ứng dụng  
Các giao thức giao vận trên Internet  
application  
transport  
⚫ TCP: Phân phát tin cậy, đúng  
network  
data link  
physical  
thứ tự (TCP)  
network  
data link  
physical  
twork  
link  
phal  
Chống tắc nghẽn (congestion)  
Kiểm sóat luồng (flow control)  
network  
data link  
physical  
Thiết lập kết nối (connection  
network  
data link  
physical  
setup)  
VD các ƯD: HTTP, FTP  
network  
ta link  
ical  
⚫ UDP: Phâ n phá t không đảm  
bảo tin cậy, đúng thứ tự -> nỗ  
lực tốt nhất (“best-effort”)  
application  
transport  
network  
data link  
physical  
VD các ƯD: Audio, Video thời  
gian thực  
Communication port (Socket)  
⚫ Cổng (port) là cơ chế cho phép dữ liệu được  
truyền đến đúng ứng dụng đang chạy trên máy  
tí nh  
Một kết nối vật lý, nhiều ứng dụng sử dụng  
⚫ Mỗi ứng dụng gắn với một cổng logic (số 16 bit  
(0..65535))  
Cổng 0.. 1023 bị hạn chế cho các dịch vụ phổ biến  
HTTP, FTP  
Các cổng còn lại dành cho ứng dụng người dùng  
⚫ Việc gán cổng thực hiện bởi chương trình hoặc  
hệ điều hành tùy theo ứng dụng  
Socket API cho lập trình mạng  
⚫ Socket: Điểm cuối trong  
một kết nối trao đổi thông  
tin giữa hai chương trình  
ứng dụng qua mạng.  
⚫ Định danh socket (định  
danh ứng dụng) là số  
cổng truyền thông  
⚫ Socket API (Application  
Program Interface), Tập  
các hàm giao diện giữa  
chương trình ứng dụng  
và các giao thức truyền  
thông (HĐH định nghĩa  
cá c API)  
Khuôn mẫu truyền thông  
Tí nh toá n Client-Server  
⚫ Cơ chế: Một ứng dụng bắt đầu trước, đợi ứng  
dụng khác liên lạc. Ứng dụng thứ 2 phải biết “vị  
trí” ứng dụng thứ 1 đang đợi (máy tính, ứng  
dụng)  
Chương trình đợi: Server  
Chương trình liên lạc: Client  
⚫ Khuôn mẫu truyền thông:  
Ứng dụng Server khởi động và đợi liên lạc từ client  
Client liên lạc với Server (Computer, Application)  
Client và Server trao đổi dữ liệu  
Kết thúc, client và server gửi tín hiệu end-of-file  
Socket hỗ trợ TCP và UDP  
TCP  
UDP  
Minh họa WinSock API cho HĐH  
Windows - Stream Socket  
Minh họa WinSock API cho HĐH  
Windows – Datagram Socket  
Nền tảng  
⚫ Windows: MFC Csocket, CsocketFile  
Visual C++ 6.0,…  
Java: Java.net.Socket, java.net.ServerSocket  
⚫ UNIX: Socket++  
Xây dựng ứng dụng CHAT  
theo mô hì nh Client-Server  
Click to add Text  
ppt 14 trang myanh 22341 Free
Bạn đang xem tài liệu "Bài giảng Lập trình socket", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pptbai_giang_lap_trinh_socket.ppt