Khái niệm về lập trình socket trong c# - phần 2

Wednesday, November 26, 2014
Sau khi chúng ta đã học qua khái niệm về lập trình socket trong c# - phần 1 rồi thì hôm nag chúng ta sẽ học về Khái niệm về lập trình socket trong c# - phần 2
Giáo trình học lập trình socket c# tiếng việt 
Khái niệm về lập trình socket trong c# - phần 2
Khái niệm về lập trình socket trong c# - phần 2

Giới thiệu
1/ Lớp IpAddress:
+ Thuộc tính:
Any: Cung cấp ip để cho sever phải lắng nghe trên tất cả các card mạng
Address Family: Trả về họ của địa chỉ IP hiện hành
+Phương thức
- Phương thức khởi tạo:
IpAddress(byte[])
IpAddreess(int64)
+Parse: Chuyển UP dạng chuỗi về ip dạng chuẩn
+ Tryparse: Kiểm tra ip dạng xâu có hợp lệ hay không
a) Lớp IpEndpoint:
 + Phương thức khởi tạo
IpEndpoint(Int64,Int32)
IpEndpoint(IpAddress,int32)
Create: Tạo một endpoint từ một địa chỉ socket.
Tostring(): Trả về địa chỉ IP và khuông dạng địa chỉ cổng
VD: 192.168.1.1.205
b) Lớp DNS:
* Một số thành phần của lớp:
Hostname:cho biết tên của máy chủ phân giải
GethostAddress: Trả về tất cả ip của một trạm
Gethostname: Trả về tên máy tính cục bộ
Biểu diễn địa chỉ IP:
Tên máy : May01,may02,sever...
Địa chỉ ip dạng xâu: "192.168.1.20"; "127.0.0.1"
Địa chỉ ip dạng mảng: "192.168.1.25" dạng mảng

        Byte diachi=new byte[3];
        diachi[0]=192;
        diachi[1]=168;
        diachi[2]=1;
        dichia[3]=25;
        IPAddress ic = new IPAddress(diachi);
        textBox1.Text = ic.ToString();
Ví dụ: Tạo from dùng để thực hiện yêu cầu sau:
1/ Tạo một địa chỉ IP(tạo một đối tượng IPADDRESS) có giá trị là 16885952
2/ Tạo một địa chỉ ip từ một mảng byte tương ứng với địa chỉ "192.168.1.15"
3/ Tạo một địa chỉ ip từ một xâu
4/ Tạo một địa chỉ 192.168.1.12
Hãy chờ xem bài giải nhé.

2/ Lớp Ipendpoint

Giới thiệu:
IPendpoint chứa cả 2 giá trị Ipaddress và số hiệu cổng ( port)
Ipendpoint một Endpoint  để truyền trục tiếp cho TCP,UDP...
VD: tạo một Endpoint có địa chỉ là 192.168.1.15

3 / Giao thức TCP/IP

Được dùng trong mạng Internet , với kỹ thuật này các máy trên windows NT có thể kết nối với các máy tính trên mạng . Giao thức TCP/IP thông qua 1 thư viện là windows socket
TCP/IP là giao thức đáng tin cậy dựa trong kết nối cho phép 2 máy tính giao tiếp trên mạng
Để tạo kết nối TCP/IP 1 máy phải có vai trò là sver và bắt đầu lắng nghe Enpoint cụ thể 1
1 máy tính khác đóng vai trò là client gửi yêu cầu kết nối đến sever đang lắng nghe
Khi kết nối được thiết lập 2 máy có thể trao đổi thông điệp và dữ liệu

4/ Cách tạo Socket

Khai báo namespace Syste.Net.Socket
  • Socket(AdressFamily,Sockettype,Protocoltype)
  • .AdressFamily:Định rõ loại mạng
  • Sockettype:Xác định rõ protocol mạng
Chú ý:
  • AdressFamily: Thông thường gtri AdressFamily được dùng là InternetWork
  • Giá trị SocketType phải khớp với protocpl
  • Đối với kết nối có hướng knoi thì gtri sockettype là sockettypt . Dgram và giá trị Protocoltype là Protocoltype.UDP

5/ Lớp UDP


Giới thiệu
Giao thức UDP là giao thức phi kết nối có nghĩa là 1 bên có thể gửi dữ liệu cho bên kia . mà không cần biết bên kia có sẵn sàn hay chưa. Nghĩa là không cần thiết lập kết nối giữa 2 bên khi tiến hành trao đổi thông tin.GIao thức này không tin cậy bằng giao thức TCP nhưng tốc độ lại nhanh và dễ cài đặt hơn ,.
Các phương thức khởi tạo
  • UDPClient(): Tạo 1 đối tượng của lớp UDPClient
  • UDPClient(AdressFamily): Tạo 1 đối tượng Updclient, thuoocj1 dòng địa chỉ AdressFamily được định sẵn.
  • UdpClient(Ipendpoint): Tạo một upclient và gán Ipendpoint
  • UdpClient(int32,AdressFamily): Tạo một updclient và gán số hiệu cổng và AdressFamily
Các phương thức thực thi:
  • Beginsend: Gởi dữ liệu không đồng bộ tới máy ở xa
  • Close: Đóng kết nối
  • Connect: Thiết lập một deafult remote host
  • EndReceive: Kết thúc nhận dữ liệu không đồng bộ ở trên
  • Endsend: Kết thúc việc gởi dữ liệu không đồng bộ ở trên
  • Receive: Nhận dữ liệu đồng bộ do máy ở xa
  • Send: Gửi dữ liệu đồng bộ tới máy ở xa

No comments:

Post a Comment