第03章_TCP应用编程.ppt

  1. 1、本文档共50页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第03章_TCP应用编程

第3章 TCP应用编程 3.1 TCP应用编程涉及的相关技术 3.2 利用同步TCP编写网络聊天程序 3.3 利用同步TCP编写网络游戏 3.4 异步TCP应用编程 3.5 利用异步TCP编写网络聊天程序 3.1 TCP应用编程涉及的相关技术 3.1.1 TCP简介 3.1.2 同步TCP应用编程的一般步骤 3.1.3 TcpClient类与TcpListener类 3.1.4 NetworkStream类 3.1.5 解决TCP协议的无消息边界问题 3.1.1 TCP简介 TCP是Transmission Control Protocol(传输控制协议)的简称,是TCP/IP体系中面向连接的运输层协议,在网络中提供全双工的和可靠的服务。 TCP最主要的特点: 1) 是一种基于连接的协议(类似于打电话)。 2) 保证数据准确到达。 3) 保证各数据到达的顺序与数据发出的顺序相同。 4) 传输的数据无消息边界。 服务器、客户端是相对的概念,任何一台机器既可以单独运行服务器端程序,也可以单独运行客户端程序。也可以将服务器代码和客户端代码写到同一个程序中。 3.1.2 同步TCP应用编程的一般步骤 在同步TCP应用编程中,发送数据、接收数据以及监听客户端连接均采用同步阻塞方式工作。 使用同步TCP编写服务器端应用程序的一般步骤为: 创建一个包含采用的网络类型、数据传输类型和协议类型的TcpListener对象,在指定的端口进行监听。 接受客户端的连接请求,根据客户端发送的连接信息创建与该客户端对应的TcpClient对象。 根据创建的TcpClient对象,利用TcpClient对象的GetStream方法得到NetworkStream对象,然后利用NetworkStream对象的Write方法和Read方法分别与每个连接的客户进行数据传输。 与对方通信结束后,关闭与对方的连接,释放与TcpClient关联的所有资源。 3.1.2 同步TCP应用编程的一般步骤(续) 使用同步TCP编写客户端程序的一般步骤为: 创建一个包含传输过程中采用的网络类型、数据传输类型和协议类型的TcpClient对象。 调用TcpClient对象的Connect方法与远程服务器建立连接。 利用TcpClient对象的GetStream方法得到NetworkStream对象,然后利用NetworkStream对象的Write方法和Read方法与服务器进行数据传输。 完成工作后,向服务器发送关闭信息,并关闭与服务器的连接,释放相应资源。 3.1.3 TcpClient与TcpListener 两个类均封装了底层的套接字,并分别提供了对套接字进一步封装后的同步和异步操作的方法,降低了TCP应用编程的难度。 TcpClient类用于提供本地主机和远程主机的连接、发送和接收流数据。 TcpListener类用于侦听和接受传入的连接请求。 3.1.3 TcpClient与TcpListener(续) TcpClient类 TcpClient类在System.Net.Socket命名空间下。 编写客户端程序时,需要直接利用构造函数创建TcpClient对象。 构造函数有四种重载形式(见课本) 编写客户端程序时,常用形式为: TcpClient tcpClient=new TcpClient(“”, 51888) 它相当于: TcpClient tcpClient=new TcpClient(); tcpClient.Connect(, 51888); 编写服务器端程序时,不需要直接使用其构造函数创建TcpClient对象,而是利用TcpListener对象的AcceptTcpClient方法得到与该远程主机对应的TcpClient对象。 3.1.3 TcpClient与TcpListener(续) TcpClient类的常用属性 3.1.3 TcpClient与TcpListener(续) 在同步工作方式下,TcpClient类的常用方法 3.1.3 TcpClient与TcpListener(续) 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 da

文档评论(0)

liudao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档