Khái niệm về lập trình socket trong c# - phần 3
Qua 2 bài về lập trình socket cơ bản trước thì các bạn đã hiểu phần nào về khái niệm về socket trong c# hôm nay sẽ tiếp về phần 3 của khái niệm lập trình socket
Có thể bạn quan tâm:
Chuyển đổi chuỗi sang mảng Byte[]
Byte[] msg;
msg=Encoding.Utf.Getbyte("Chào bạn");Chuyển đổi mảng Byte[] sang ký tự;string chuôi = Encoding.UTF8.Getstring(msg);
Cùng làm bài tập Gửi và nhận dữ liệu qua mạng ( chat cơ bản )
Lớp TCP ( TCP Client )
Giới thiệu:
TCP là viết tắt của từ Tranport control protocol
Bao gồm 2 phương thức:
- TCP Client
- TCPListener
Lớp TCP là giao thức có hướng kết nối . Đảm bảo độ tin cậy trong các ứng dụng mạng để lập trình theo phương thức TCP Microsoft cung cấp 2 giao thức là TCP Client và Listener
Các thành phần của lớp
Phương thức khởi tạo:
- TCPClient(): Tạo mọt dói tựng TCPClient chưa đặt thông số gì
- TCPClient(Ipendpoin): Tạo một đối tượng tpclient và gán cho nó một IPendpoint cục bộ
Một số thuộc tính
- Available : Cho biết số byte đã nhận về từ mạng
- Client: Trả về Socket ứng với TCPclient hiện hành
- Connected: Trạng thái cho biết đã kết nối được với Sever hay Client
Một số phương thức
- Close(): Giải phóng đối tượng TCPCient nhưng không đóng kết nối
- Connect(RemoteHost,Port): Kết nói đến 1 TCP Client khác có tên và số hiệu cổng
- GetStram(): Trả về 1 NetWorkStream giúp chúng ta gởi và nhận dữ liệu thường dùng là StreamReader và StreamWrite
Trình tự kết nối và nhận dữ liệu của TCPClient
- Bước 1: tạo một TCPClient
- Bước 2: Kết nối đến máy chủ sever dùng phương thức connect
- Bước 3 : Tạo hai đối tượng SreamReader(Recevice) và StreamWrite(send)
- Bước 4: Dùng đối tượng StreamWrite, Writeline vừa tạo ở bước 3 để gửi dữ liệu đi
- dùng đối tượng StreamRider Readline vừa tạo ở bước 3 để nhận dữ liệu về
- Bước 5: Đóng kết nối
TCP Listener
Cho phép người dùng xây dựng các ứng dụng phía sever ví dụ như DNS sever , FTP Sever. Ứng dụng phía sever khác với Client ở chỗ sever luôn lắng nghe và thực hiện các yêu cầu từ Client
Các thành phần của lớp TCPListener
Các phương thức khởi tạo:
- TCPListener(Port,Int32): Tạo TCPListener và lắng nghe tại cổng được quy định
- TCPListener(Ipendpoint ): Tạo TCPListener với giá trị Ipenpoint truyền vào
- TCPListener(Ipadress,Port):Tạo một TCPlistener lắng nghe kết nối tới được IP và cổng được chỉ định
Một số phương thức
- AcceptTCPclient: Chấp nhận yêu cầu kết nối đang chờ
- AcceptSocket: Chấp nhận yêu cầu kết nối đang chờ
- Start: Bắt đầu lắng nghe một kết nối
- Close: Đóng lắng nghe