C#基于TCP协议的服务器端和客户端通信编程的基础教程

2019-12-30 12:16:26丽君
易采站长站为您分析C#基于TCP协议的服务器端和客户端通信编程的基础教程,文中讲解了C#中TCP编程主要相关的TcpListener类与TcpClient类用法,需要的朋友可以参考下  

运行在TCP之上常见的网络应用协议有比如HTTP、FTP、SMTP、POP3、IMAP。
TCP是TCP/IP体系中最重要的传输协议,它提供全双工和可靠交付的服务,是大多数应用协议工作的基础。
TCP是一种面向连接(连接导向)的,可靠的,基于字节流的传输层通信协议。

 

TCP的工作过程

  • 建立连接
  • 传输数据
  • 连接的终止


    TCP的主要特点
    1.TCP是面向连接的协议
    2.是端到端的通信。每个TCP连接只能有两个端点,而且只能一对一通信,不能点对多的
    的直接通信
    3.高可靠性
    4.全双工方式传输
    5.数据以字节流的方式传输
    6.传输的数据无消息边界

     

    关于线程
    利用TCP开发应用程序时,.net框架提供两种工作方式,一种是同步工作方式,另一种是异步工作方式。
    同步工作方式是指利用TCP编写的程序执行到监听或者接收语句,在未完成当前工作前不再。
    继续往下执行,线程处于阻塞状态,直到该语句完成后才能继续执行下一条语句。
    异步工作方式是指程序执行到监听或者接收语句时,无论当前工作是否完成,都会继续往下执行。

     

    TcpListener与TcpClient类常用方法与属性

    TCPListener类用于监听客户端连接请求,TCPClient类用于提供本地主机和远程主机的连接信息。
    两个类都位于 System.Net.Socckets命名空间下。

    1.TCPListener类常用的方法:

    (1)AcceptSocket:从端口处接收一个连接并赋予它Socket对象
    (2)AcceptTcpClient:从端口处接收一个连接并赋予它TCPClient对象
    (3)Equals:判断两个TcpListener对象是否相等
    (4)GetType:获取当前实例的类型
    (5)Pending :确定是否有挂起的连接请求
    (6)Start:开始接听传入的连接请求