4 .3 .1 TCP/ IP 协议简介
什么是TCP/ IP ?
TCP 协议和IP 协议指两个用在Internet 上的网络协议( 或数据传输的方法)。它们
分别是传输控制协议和互联网协议。这两个协议属于众多的TCP/ IP 协议组中的一部
分。
TCP/ IP 协议组中的协议保证Internet 上数据的传输, 提供了几乎现在上网所用到的
所有服务。这些服务包括:
电子邮件的传输
文件传输
新闻组的发布
访问万维网
在TCP/ IP 协议组分两种协议: 网络层的协议和应用层的协议。
网络层协议管理离散的计算机间的数据传输。这些协议用户注意不到, 是在系统表
层以下工作的。比如, IP 协议为用户和远程计算机提供了信息包的传输方法。它是在许
多信息的基础上工作的, 比如说是机器的IP 地址。在机器IP 地址和其他信息的基础上,
IP 确保信息包能正确地到达目的机器。通过这一过程, IP 和其他网络层的协议共同用于
数据传输。如果没有网络工具, 用户就看不到在系统里工作的IP。
相反地, 应用层协议用户是可以看得到的。比如, 文件传输协议(FTP)用户是看得到
的。用户为了传输一个文件请求一个和其他计算机的连接, 连接建立后, 就开始传输文
件。在传输时, 用户和远程计算机的交换的一部分是能看到的。
TCP/ IP 是如何工作的?
TCP/ IP 通过使用协议栈工作。这个栈是所有用来在两台机器间完成一个传输的所
有协议的几个集合(这也就是一个通路, 数据通过它从一台机器到另一台机器) 。栈分成
层, 与这里有关的是五个层, 如图4-1 所示。学习此图可以对层有个初步概念。
网络
层次
TCP/ I P 参考模型
( TCP/ IP reference model )
协议数据单元
PDU(protocol data unit )
执行器执行的协议
层5 应用层( application) 消息(message ) 软件FTP , T elnet , SMTP ,
MIME , X, HT TP ,
Kerbe ros , DNS
NFS , SNMP,
TFT P, RPC,
DNS , 专用协议
层4 传输层( t ranspor t ) 消息段( segment ) 软件TCP UDP 层3 网络层( network ) 数据包( dat agram) 软件/ 硬件I P , ICMP, IGMP 层2 数据链路层( data link) 数据帧( frame ) 硬件HDLC, PP P , SLI P, Ethe rnet , X .25 , FDDI , Toke nRing
层1 物理层( physical ) 1 - PDU 硬件RS - 232 , V .35 , 10Base, Fibe rOptic 图4-1 TCP/ IP 参考模型
在数据通过图4-1 所示的步骤后, 它就从网络中的一台机器传到另一台机器了。在
这个过程中, 一个复杂的查错系统会在起始机器和目的机器中执行。
栈的每一层都能从相邻的层中接收或发送数据。每一层都与许多协议相联系。在栈
的每一层, 这些协议都在起作用。本节的下一部分将分析这些服务, 以及它们在栈中是如
何联系的。同时也分析一下它们的功能, 它们提供的服务和与安全性的关系。
4 .3 .2 协议简介
已经知道数据是怎样使用TCP/ IP 协议栈来传输的了。现在仔细分析在栈中所用到
的关键的协议。先从网络层的协议开始。
网络层协议是那些使传输透明化的协议。除了使用一些监视系统进程的工具外, 用
户是看不见这些协议的。
Sniffers 是能看到这些步骤的装置。这个装置可以是软件, 也可以是硬件, 她能读取
通过网络发送的每一个包。Sniffers 广泛地用于隔离用户看不到的、网络性能下降的问
题。sniffers 能读取发生在网络层协议的任何活动。而且, 正如你已经猜到的, sniffers 会
对安全问题造成威胁。
重要的网络层协议包括:
地址解析协议(ARP)
Internet 控制消息协议( ICMP)
Internet 协议( IP)
传输控制协议( TCP)
应用层协议是专门为用户提供应用服务的。它是建立在网络层协议之上的。
Telnet 在RFC854 中有详细的描述, Telnet 协议中说明: Telnet 协议的目的就是提供
一个相当通用的、双向的、面向八位字节的通信机制。它的最初目的是允许终端和面向终
端的进程之间的交互。
Telnet 不仅允许用户登录到一个远程主机, 还允许用户在那台计算机上执行命令。
这样, Los Angeles 的一个人可以Telnet 到NewYork 的一台机器, 并在这台机器上运行程
序, 就跟在NewYork 的用户一样。
对于熟悉Telnet 的用户来讲, 他的操作与BBS 的界面一样。Telnet 是一个能提供建
立在终端字体的访问数据库的一个应用程序。比如, 多于80%的大学的图书馆的目录可
以通过Telnet 访问到。
即使GUI 应用程序被大大采用, Telnet 这个建立在字符基础上的应用程序, 仍相当
的流行。这有许多原因。第一, Telnet 允许你以很小的网络资源花费实现各种功能(如收
发邮件)。实现安全的Telnet 是件十分简单的事。有许多这样的程序, 通用的是Secure。
文件传输协议FTP 是从一个系统向另一个系统传递文件的标准方法。它的目标在
RFC 0765 中写得很清楚。
约有二十年, 研究者调查了相当广泛的文件传输方法。FTP 经历了多次改变。1971
年作了第一次定义, 整个的说明参见RFC 114。
简单邮件传输协议SMTP 的目的是使得邮件传输可靠和高效。
SMTP 是一个相当小和有效的协议。用户给SMTP 服务器发个请求, 一个双向的连
接随后就建立了。客户发一个MAIL 指令, 指示它想给Internet 上的某处的一个收件人
发个信。如果SMTP 允许这个操作, 一个肯定的确认发回客户机。随后, 会话开始。客
户可能告知收件人的名称和IP 地址, 以及要发送的消息。
超链接传输协议HTTP, 由于它能让用户在网上冲浪, 超链接传输协议可能是最有名
的协议。HTTP 是一个应用层协议, 它很小也很有效, 符合发布、合成和超媒体文本系统
的需要。是一个通用的, 面向对象的协议, 通__________过扩展请求命令, 可以用来实现许多任务。
HTTP 的一个特点是数据表现的类型允许系统相对独立于数据的传输。
HTTP 的出现永久地改变了Internet 的特点, 主要是使Internet 大众化。在某些程度
上, 他的操作与Gopher 类似。比如, 它的工作是请求/ 响应式的。这是相当重要的一点。
其他应用程序, 比如Telnet 仍需要用户登录( 当他们登录时, 便消耗系统资源)。但
Gopher和HT TP 协议,
- flamemiracle:<div class="quote"><span class="q"><b>wohiaini<...
- wohiaini:<div class="quote"><span class="q"><b>flamemira...
- flamemiracle:长见识了哦
- flamemiracle:哦,要好好看看哈
- wohiaini:<div class="quote"><span class="q"><b>flamemira...
- flamemiracle:好长啊