快速业务通道

Java网络编程之传输控制协议 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-22
会是计算机之间通讯的最高效率的 途径。还应该有另外一些的复杂性,你可以讨论在某个底线之上设计和建立软件 ,为程序员提供足够的复杂性。典型情况下开发者欢迎软件开发复杂性的降低, TCP就实现了这种功能。TCP允许程序员用一种完全不同的方式思考问题,而这种 方式更加现代化。数据不是被处理为不连续的单元(数据报包),而是被处理为 连续的流,就像目前读者所熟悉的I/O流。TCP套接字延续了传统的Unix编程,在 Unix编程中通讯与文件输入和输出是一样处理的。无论开发者写入网络套接字、 通讯管道、数据结构、用户控制台或文件的时候,这种机制都时相同的。当然它 也同样应用与读取信息。这使得通过TCP套接字进行通讯比通过数据报包通讯更 加简单。

2、使用端口在应用程序之间通讯

很明显,TCP与UDP之间差别巨大,但是在两种协议之间也有一项重要的相似 性。两种都共享了通讯端口的概念,它可以区别各个应用程序。在相同的端口上 可以运行多个服务和客户端,而且希望不给它们分配端口号而挑选出某个应用程 序是不可能的。当TCP套接字建立到某台计算机的连接的时候,它需要两部分非 常重要的信息才能连接到远程客户端--该计算机的IP地址和端口号。此外,本地 的IP地址和端口号也将绑定到它上面,因此远程计算机能够识别是哪一个应用程 序建立了连接(图3所示)。总之,你不会希望你自己的电子邮件被在相同系统 上运行软件的其它用户访问。

Java网络编程之传输控制协议 - 编程入门网

图3:本地端口识别了其它程序建立的到某个应用程序的连接

Java网络编程之传输控制协议(2)

时间:2010-12-16 天极 陶刚

允许多个TCP应用程序在同一台计算机上运行

TCP中的端口与UDP中的端口相似--它们的数字范围都是1-65535。1024以下的 端口是受限制的,只能被知名的服务(例如HTTP、FTP、SMTP、POP3和telnet) 使用。表1列举了一些知名的服务以及与它们对应的端口。

表1:协议和与它们相关的端口

知名的服务 服务端口

Telnet 23

SMTP(简单邮件传输协议) 25

HTTP(超文本传输协议) 80

POP 3 110

3、套接字操作

TCP套接字可以执行多种操作,包括:

建立到某个远程主机的连接。

给远程主机发送数据。

从远程主机接收数据。

关闭连接。

此外还有一些特殊类型的套接字,它们提供绑定到特定端口号的服务。这类 套接字通常用在服务器中,可以执行下面一些操作:

绑定到某个本地端口

从远程主机接收输入的连接

从本地端口取消绑定。

这两种套接字可以被分为不同的类,要么是客户端使用的,要么是服务器使 用的(由于某些客户端可以象服务器一样操作,还有些服务器可以象客户端一样 操作)。但是,客户端和服务器的角色还是可以靠经验区分的。

二、TCP和客户端/服务器范型

在网络编程中(同样在其它形式的通讯中,例如数据库编程),使用套接字 的应用程序也被分为两类--客户端程序和服务器程序。你可能对"客户端/服务器 编程"术语比较熟悉,尽管这个术语的准确意思你不一定清楚。下面的范例就是 讨论这个主题。

1、客户端/服务器范型

客户端/服务器范型把软件分为两类--客户端程序和服务器程序。客户端软件 启动一个连接并发送请求,而服务器软件监听连接并处理请求。在UDP编程环境 中,没有建立实际的连接,并且UDP应用程序可以在相同的套接字上建立并接收 请求。在TCP环境中,两台计算机之间建立了连接,客户端/服务器范型是相对应 的。

当软件作为客户端或者服务器的时候,它严格地定义了角色以更容易适应我 们所熟悉的思维模型。软件要么启动请求,要么处理请求。在两种角色之间切换 使系统更加复杂。即使允许切换,在某个特定的时刻软件程序也只能是客户端, 而另一个必须是服务器。如果两个同时是客户端,就没有服务器处理请求了。

客户端/服务器范型是一个

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号