C# 网络编程 TCP应用编程简介

TCP简介

TCP是Transmission Control Protocol(传输控制协议)的简称,是TCP/IP体系中面向连接的运输层协议,在网络中提供全双工的和可靠的服务。
利用TCP开发应用程序时,.NET框架提供两种工作方式。
(1)同步工作方式
   指利用TCP编写的程序执行到发送、接收或监听语句时,在未完成工作前不再继续往下执行,即处于阻塞状态,直到该语句完成相应的工作后才继续执行下一条语句。

(2)异步工作方式
   异步工作方式是指程序执行到发送、接收或监听语句时,不论工作是否完成,都会继续往下执行。

TcpListener类与TcpClient类

(1)TcpListener类用于侦听和接受传入的连接请求。

(2)TcpClient类用于提供本地主机和远程主机的连接信息。

TcpListener类

TcpListener类在System.Net.Socket命名空间下。

常用的构造函数有两种:
TcpListener(IPEndPoint iep)
TcpListener(IPAddress localAddr, int port)

	IPAddress ipAddress = Dns.Resolve("localhost").AddressList[0];
	try
	{
	   TcpListener tcpListener = new TcpListener(ipAddress, 1326);
	 }
	catch ( Exception e)
	{ 
	    Console.WriteLine( e.ToString());
	} 

在同步工作方式下, TcpListener类常用的方法:
在这里插入图片描述

TcpClient类

TcpClient类在System.Net.Socket命名空间下。

主要用于编写客户端程序,且需要直接利用构造函数创建TcpClient对象。而服务器端程序中是通过TcpListener对象的AcceptTcpClient方法得到TcpClient对象的,所以不需要使用TcpClient类的构造函数来创建TcpClient对象。

构造函数有四种重载形式
TcpClient()
TcpClient(AddressFamily family)
TcpClient(IPEndPoint iep)
TcpClient(string hostname,int port)

TcpClient类的常用属性
在这里插入图片描述
TcpClient类的常用方法
在这里插入图片描述

	TcpClient tcpClient = new TcpClient();
	tcpClient.Connect("contosoServer", 11000);
	NetworkStream networkStream = tcpClient.GetStream();
	networkStream.ReadTimeout = 10;
	byte[] bytes = new byte[1024];
	networkStream.Read(bytes, 0, 1024);
	string data = Encoding.UTF8.GetString(bytes); 
	networkStream.Close();
	tcpClient.Close(); 
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页