8.1 TCP/IP协议簇
各种计算机或网络,通常都有各自环境下的网络协议。例如,IBM的SNA、DEC的DECNet以及NetWare的IPX/SPX等。它们一般只适用于特定范围内计算机之间的通信,或者说它们都是专用的网络协议。各专用网络协议互不相容,这会使不同计算机、不同的网络之间难以互连通信。从用户角度看,最好是在其计算机连网后就能透明地访问所有与该网相连接的资源,包括异构的网络和主机上的资源。这就需要有一种公共的网际协议,把各个异构网络或主机连接成可以相互通信和资源共享的网际网。
TCP/IP协议成功地解决了不同网络之间难以互连的问题,实现了异构网互连通信。TCP/IP是当今网络互连的核心协议,可以说没有TCP/IP协议就没有今天的网络互连技术,也没有今天以互连为核心建立起来的Internet。
TCP/IP协议具有以下特点:
①TCP/IP协议并不依赖于特定的网络传输硬件,所以TCP/IP协议能够集成各种各样的网络。用户能够使用以太网(Ethernet)、令牌环网(Token Ring Network)、拨号线路(Dial-up line)、X.25网及所有的网络传输硬件。
②TCP/IP协议不依赖于任何特定的计算机硬件或操作系统,提供开放的协议标准,即使不考虑Internet,TCP/IP协议也获得了广泛的支持。所以TCP/IP协议成为一种联合各种硬件和软件的实用系统。
③TCP/IP工作站和网络使用统一的全球范围寻址系统,在世界范围内给每个TCP/IP网络指定唯一的地址。这样就使得无论用户的物理地址在哪儿,任何其他用户都能访问该用户。
8.1.1 TCP/IP体系结构
TCP/IP的核心思想是把千差万别的两层(网络层和数据链路层)协议的物理网络,在传输层/网络层建立一个统一的虚拟的“逻辑网络”,屏蔽或隔离所有物理网络的硬件差异,TCP/IP逻辑网络与上、下层的关系如图8-1所示。
TCP/IP(传输控制协议/网际协议)协议是Internet最基本的协议,它由底层的TCP协议和IP协议组成,通常说TCP/IP是Internet协议簇,其实不仅是TCP和IP。TCP/IP模型由4个层次组成,分层模型和TCP/IP组成的网络体系结构如图8-2所示。
图8-1
图8-2
实质上TCP/IP是用于计算机通信的一组协议,我们通常称它为TCP/IP协议簇。它是20世纪70年代中期美国国防部为其ARPANET广域网开发的网络体系结构和协议标准,然后以它为基础组建立的Internet是目前国际上规模最大的计算机网络,正因为Internet的广泛使用,使得TCP/IP成为事实上的标准。之所以说TCP/IP是一个协议簇,是因为TCP/IP协议包括TCP、IP、UDP、ICMP、RIP、TELNETFTP、SMTP、ARP、TFTP等许多协议,这些协议一起称为TCP/IP协议。下面对协议簇中一些常用协议英文名称和用途进行介绍。
・FTP(File Transfer Protocol):文件传输协议,协议用于主机之间文件的交换。
・HTTP(Hypertext Transfer Protocol):超文本传输协议,是基于请求/响应范式的。一个客户机与服务器建立连接后,发送一个请求给服务器,服务器再给出响应。
・SMTP(Simple Mail Transfer Protocol):简单邮件传输协议。
・DNS(Domain Name System):DNS为域名服务,DNS提供域名到Internet IP地址的转换。
・TCP(Transport Control Protocol):传输控制协议,它是最主要的协议,是面向连接的。
・UDP(User Datagram Protocol):用户数据报协议,是主机和主机之间无连接的数据报协议。UDP使用IP提供的数据报服务,并对IP进行了扩充。
・IP(Internet working Protocol):IP为最重要的一个网络层协议。IP提供了无连接数据报传输和网际路由服务。
・ICMP(Internet Control Message Protocol):互联网控制信息协议,为Internet控制报文协议,网关或主机用ICMP向源站发送所发数据报有关问题的报告。
・SNMP(Simple Network Manage Protocol):SNMP简单网络管理协议。
・ARP(Address Resolation Protocol):地址解析协议。
・RARP(Reverse Address Resolution Protocol):反向地址解析协议,一个新接入网络的站通过RARP发出广播请求,得到RARP服务器给它分配的Internet地址。
・TELNET:为远程通信协议,用户的终端能够很容易地通过这个协议接入远程系统。
从协议分层模型方面来讲,TCP/IP由网络访问层、网际层、传输层、应用层4个层次组成。
①网络访问层:这是TCP/IP软件的最底层,负责接收IP数据报并通过网络发送之,或者从网络上接收物理帧,抽出IP数据报,交给IP层。
②网际层:负责相邻计算机之间的通信。其功能包括三方面。一是,处理来自传输层的分组发送请求,收到请求后,将分组装入IP数据报,填充报头,选择去往信宿机的路径,然后将数据报发往适当的网络接口。二是,处理输入数据报:首先检查其合法性,然后进行寻径——假如该数据报已到达信宿机,则去掉报头,将剩下部分交给适当的传输协议;假如该数据报尚未到达信宿,则转发该数据报。三是,处理路径、流控、拥塞等问题。
③传输层:提供应用程序间的通信。其功能包括:格式化信息流、提供可靠传输。为实现后者,传输层协议规定接收端必须发回确认信息,并且假如分组丢失,必须重新发送。
④应用层:向用户提供一组常用的应用程序,比如电子邮件、文件传输访问、远程登录等。远程登录TELNET使用TELNET协议提供在网络其他主机上注册的接口。TELNET会话提供了基于字符的虚拟终端。文件传输访问FTP使用FTP协议来提供网络内机器间的文件复制功能。
8.1.2 TCP/IP的应用
TCP/IP的应用十分广泛。TCP/IP分别定义了如下操作及相应的方法。这些操作主要包括:
(1)远程登录
网络终端协议(TELNET)允许用户远程注册到网络上的任何一台计算机上。通过说明要连接的计算机启动一个远程会话,此后直到完成这个会话,用户输入的任何字符都被送到远程计算机,由远程计算机解释信息的含义,完成相应的功能,并将最终结果送回本地计算机。
(2)文件传输
文件传输协议(FTP)允许一台计算机上的用户从另一台计算机上取得文件或将自己的文件传送到另一台计算机上。
(3)电子邮件
简单邮件传输协议(SMTP)允许用户发送信息给其他计算机上的用户,邮件通常由一个功能强大的计算机系统或服务器处理。该计算机系统或服务器不间断地运行,为用户代办各种邮件服务,包括邮件检索或处理。
TCP/IP还有以下应用:
①经WWW完成信息的传输和浏览;
②定制程序对用户提供支持;
③提供经网络传输数据的机制;
④经网络完成数据的路由选择。