文档介绍:TCP/IP应用基础
⒈ 简介
是众多网络间的互联网,即计算机网络互相连接组成的一个大的网络。现在,这个网络已经覆盖了全球。在其形成初期,每个网络都使用不同的方法来进行互联或传输数据,因而有必要采用一个通用的协议使这些网络可以互相通讯。TCP/IP(传输控制协议/互联网协议)上的通讯协议。
⒉ 理解 TCP/IP
Â
DOS Workstations
:
Apple Macintosh
:5
UNIX Workstation
:5
OS/2 workstation
:5
最初建立时,各个终端通过不同的电话线同不同的主机相连接。在不同计算机之间进行互联的过程是很复杂的。图1阐明了不同的终端需要不同的协议来进行连接。
图 1. 用于互联的不同的硬件和软件
计算机商家用不同的硬件和软件解决方式来在他们的系统之间进行互联,不久人们意识到需要采用简单的方法来对计算机进行互联。其目的是建立一种连接方法,可以支持不同传输方式上的不同种类的计算机。
在1973年,Bob Kahn和Vincent Cerf开始研究传输控制协议组。它就是传输控制协议/互联网协议,在1978年研制成功。
很快TCP/上的通讯协议。那么什么是TCP/IP呢?它是一组数据传输协议,其中TCP和IP本身就是不同的协议。在协议组中还有其他几种协议,每一个组件都有其不同的规则。TCP/IP协议组包括:
传输控制协议(TCP) - - 实现主机间的可靠的连接。同时负责数据包按正确的顺序发送。如果数据丢失了,TCP 负责自动重新传输丢失的数据。
互联网协议(IP) - - 提供数据流服务。
UDP (用户数据流协议) - - 负责传输不同主机间任意的数据流。
ICMP (控制信息协议) - - 用于主机间携带不同的错误和状态信息。
TCP/上计算机的编址方式。并定义了数据在网络上通过不同的计算机或程序进行传输的方式。
图2描述了TCP/IP中的各种服务和层的一个概念性的视图.
* IP packet
IP
ICMP
TCP
UDP
FTP
TTTT
DNSLLLLLLSSSSSSSS
NFS
PING
图2. TCP/IP 服务和层的一个概念性的视图
传输控制协议(TCP)
TCP的目的是为采用不同传输方式的网络提供一种互联的方法。路由器用于给带有不同网络路由器地址的数据包打包。打包的过程可能会重复,数据包在到达最终目的地址前可能会被重复打包,并被发送到几个不同的路由器。图3描述了网络中路由器的作用。当路由器收到数据包信息时,它检查该目的地址,如果是属于本网络的,路由器将数据包送回客户。如果不是,它将数据包重定向到别的网络的路由器上。
O 路由器是用于对局域网或广域网进行互联的设备,其主要功能是控制网络交通。它的另一个功能是有多个可能的传输路径存在时,给数据包分配一个最合理的路径。
:5
Â
Â
Router
Router
图
TCP协议利用sockets接口提供了系统中一个双向的连接。一个socket是一个通讯连接的一端,定义了计算机的地址和在计算机上运行的通讯应用程序的端口号。例如,你的电话在你的房子中,你的房子有一个地址,而电话号码就象是一个特殊的端口,将你和一个特定的人连接。同样,一个socket也是和计算机上的应用程序或进程相连接。
互联网协议(IP)
IP数据包是一个独立的信息包,由路由器通过包中的地址信息传输。互联网协议是提供这种数据包服务的通讯协议。数据包可能通过不同的路径到达目的地。由于他们可能通过不同的路由器,他们可能不会按顺序到达,而在接收端这些数据包被重新排序。
协同工作
TCP和IP协同工作,服务可行。通过网络传输信息时,如果空间较大,可以将该信息分成较小的包。这些包在目的地重新组合形成原有的信息。例如,一般的信息包大小为1500字节,大多数发送的信息可能会大于1500字节。这样TCP将发送的信息分为信息包大小的块或数据流。每个信息包包括:
源地址和目的地址
包的大小
当一系列的数据包组成较大的信息包时,插入数据包的位置信息
IP协议再来给这些信息包编址并将它们以可能最佳的路由路径发送到目的地址。
在大多数情况下,在发送端主机和接收端的并没有直接相连。如果在它们之间有一个直接的连接,传输过程就会相当简单了,就象从孟买到纽约的直飞的航班一样。但是大多数情况下并非如此。毕竟,是网络之间的互联,信息在到达目的地前可能会有几次停留,其目的是寻求最佳的路径。这也意味着信息包可能通过不同的路径到达目的地,并在目的地被TCP重新组合。可能所有的信息包都不是通过同样的路径。在每一个停留点,信息包被发送前都要检查其目的地址。