网站大量收购闲置独家精品文档,联系QQ:2885784924

《C#与VB.NET网络通信开发实战》.pdf

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

第 1 章 套接字编程 编写网络应用程序是程序设计中最有趣的领域之一。眼看着自己编写的程序成功地通过网络 实现了通信,这是特别令人振奋的。在这一章里,我们将使用TCP/IP建立一个类似于Windows Live Messenger (或ICQ )的聊天程序。通过这个聊天程序,你将学会如何在.NET中进行网络编程,并 了解建立多用户聊天程序时会遇到的种种挑战。 1.1 套接字编程介绍 套接字 (socket)是网络计算机与应用程序之间发送和接收数据的方式的一种抽象描述。它描 述了(可能在不同的计算机上,也可能在同一台计算机内的)两个通信点之间的连接。 在实际操作中,套接字编程往往与TCP/IP和UDP/IP通信相结合(关于TCP/IP和UDP/IP 的更多 信息参见下面的“理解IP、TCP和UDP ”)。论及套接字编程时,以下3类信息是很重要的: TCP/IP UDP/IP 协议(如 或 )。 IP地址(例如)。 80 端口号(例如端口 )。 举例来说,对于http//这样的地址,你应该比较熟悉,这个地址用来指示Web 浏览器加载位于 的主页。http指定了使用的应用协议(HTTP使用TCP/IP传输数 据),指定了地址(名称将会被DNS服务器解析成一个IP地址)。由 于HTTP使用端口80进行通信,端口号80被隐式地指明,故没有出现在地址里。如图1-1所示,通 信的双方都必须拥有IP地址。 HTTP(TCPIP) HTTP(TCPIP) (01) 端口80 端口80 图1-1 Web浏览器和网络服务器之间的通信 2 第 1 章 套接字编程 尽管有TCP/IP这样的协议负责把数据从一个点传输到另一个点,但所传输数据的内容则需由 诸如HTTP这样的应用协议来指定。 在.NET Framework里,套接字通信由Socket类来实现(该类位于System.Net.Sockets命名空 间)。 理解IP、TCP和UDP 对于网络编程来说,深入地理解当下正在使用的一些常见网络协议是很重要的。首先是网 际协议(Internet Protocol ,IP )。IP指定了从一个点传送到另一个点的数据分组(如数据报 datagrams )的格式和寻址方案。假设IP是一种邮递系统,你可以通过它把邮件从一个地方寄到 另一个地方。你只需写上收件者地址并把邮件丢进邮箱里。随后邮局会试图把邮件投递给收件 人。但是,你不能确定你的邮件肯定会到达目的地,也不会知道它究竟何时到达。 为了确保邮件被正确地投递,你必须使用额外的服务,比如挂号信。与上述情形类似,我 们需要将其他协议与IP联合使用,以保证数据分组传送无误。传输控制协议(Transmission Control Protocol ,TCP )正是这样一种协议。TCP是一种面向连接的网络协议,它(通过应答机制)保 证数据分组可靠并有序地传送。作为流行的网络协议,与IP协同工作的TCP 已被Web浏览器和 电子邮件客户这样的应用程序广泛采用。 TCP确保了传送的正确性,但它也有不便的地方。正如要花更多的钱来寄送的挂号信一样, TCP给被发送的数据分组加上了额外的报头,增大了分组的尺寸。因此,开发人员有时会将用 户数据报协议(User Datagram Protocol ,UDP )与IP联用。UDP是一种无连接的网络协议,同样 把数据分组从一点发送到另一个点,只有一个例外——它并不提供可靠的、有保障的传送。由 于UDP不对传送提供保障,数据分组将包含更多的有效信息并能更快地传送。使用UDP的开发 人员必须建立自己的逻辑以确保数据分组的正确传送。这也与邮寄的例子很相似:你可以自己 给收件人打电话,看他们是否已经收到你寄的邮件。如果他们没有收到,你可能需要重新寄。 对于那些传送小数据分组且不需要数据精确组装的应用程序来说,UDP是非常

文档评论(0)

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

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

1亿VIP精品文档

相关文档