C#网络编程及应用 教学课件 作者 刘瑞新第10章 TCP协议开发 .ppt

C#网络编程及应用 教学课件 作者 刘瑞新第10章 TCP协议开发 .ppt

ID:50041044

大小:100.50 KB

页数:35页

时间:2020-03-08

C#网络编程及应用 教学课件 作者 刘瑞新第10章 TCP协议开发 .ppt_第1页
C#网络编程及应用 教学课件 作者 刘瑞新第10章 TCP协议开发 .ppt_第2页
C#网络编程及应用 教学课件 作者 刘瑞新第10章 TCP协议开发 .ppt_第3页
C#网络编程及应用 教学课件 作者 刘瑞新第10章 TCP协议开发 .ppt_第4页
C#网络编程及应用 教学课件 作者 刘瑞新第10章 TCP协议开发 .ppt_第5页
资源描述:

《C#网络编程及应用 教学课件 作者 刘瑞新第10章 TCP协议开发 .ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第10章TCP协议开发10.1相关概念10.2定义与获取主机信息10.3同步套接字编程10.4同步套接字开发举例——简单聊天程序10.5使用TcpClient和TcpListener简化TCP编程10.6异步套接字编程10.7异步套接字开发举例10.1基本概念基本概念(相关概念)同步发送方将数据包发送到网络上以后,不等接收方响应,就接着发送下一个数据包。异步发送方将数据包发送到网络上以后,等接收方做出响应后,才接着发送下一个数据包。-同步套接字在通过Socket进行连接、接收、发送操作时,客户机或服务器会暂停当前工作,处于等待状态,即一直等到有数据时才继续

2、执行下面的语句。一般在阻塞方式下使用这种方式。可见,同步套接字适用于网络传输量不太大的情况。当网络传输量很大时,长时间的等待可能会让用户无法忍受。-异步套接字在通过Socket进行连接、接收、发送操作时,客户机或服务器不会暂停当前工作,而是利用callback机制进行连接、接收和发送处理。异步套接字适用于需要在网络上进行大量数据传输的应用程序,比如有几万客户同时传输的情况。10.2定义与获取主机信息定义主机对象IPEndPoint类IPAddress类获取主机信息Dns类中常用方法Dns.GetHostName()Dns.GetHostByName(str

3、inghostname)Dns.GetHostByAddress(address)Dns.Resolve()1.定义主机对象IPEndPoint类包含应用程序连接到主机上的服务所需的主机和端口信息。通过组合服务的主机IP地址和端口号,IPEndPoint类形成到服务的连接点。常用的方法原型:publicIPEndPoint(IPAddressaddress,intport);说明:address:IP地址port:端口号功能:初始化IPEndPoint类的实例。用法举例:IPAddressmyServerIP=newIPAddress.Parse(“127

4、.0.0.1”);IPEndPointmyServer=newIPEndPoint(myServerIP,13);2.主机解析程序实例——Dns.Resolve()的使用usingSystem;usingSystem.Net;publicclassTestFileStream{staticvoidMain(){Console.Write("输入主机名或者IP地址:");stringstr=Console.ReadLine();IPHostEntryhost=Dns.Resolve(str);for(inti=0;i

5、gth;i++){Console.WriteLine(host.AddressList[i].ToString());Console.WriteLine(host.HostName);}Console.ReadLine();}}10.3同步套接字编程1.服务器端口绑定与监听在服务器与客户机连接传输数据前,服务器需要做以下事情:1)创建一个套接字。2)创建本地IPEndPoint对象。3)使用Bind()方法将所创建的套接字与本地IPEndPoint绑定。4)使用Listen()方法设置套接字为监听模式。5)使用Accept()方法接收客户端连接请求并为客户

6、端创建一个客户端套接字。实现方法usingSystem.Net;usingSystem.Net.Sockets;……IPAddressip=IPAddress.Parse("127.0.0.1");IPEndPointiep=newIPEndPoint(ip,6788);Socketsocket=newSocket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);socket.Bind(iep);socket.Listen(10);//最多允许10个客户端同时连接while(tr

7、ue){SocketclientSocket=socket.Accept();……}2.客户端建立与服务器的连接客户端在传送数据前,只需要做两件事:1)创建一个套接字。2)使用Socket类的Connect()方法将套接字与远程服务器地址相连。IPAddressip=IPAddress.Parse("202.196.101.246");//服务器IPIPEndPointiep=newIPEndPoint(ip,6788);Socketsocket=newSocket(AddressFamily.InterNetwork,SocketType.Stream,

8、ProtocolType.Tcp);socket.Connect(

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。