1.1.11 TCP/IP模型
1.1.11 微课
TCP-IP模型
ARPAnet(Advanced Research Projects Agency Network)是世界上第一个计算机远距离的封包交换网络,被认为是现今互联网(Internet)的前身。TCP/IP模型发端于ARPAnet的设计和实现,其后被IETF不断地充实和完善。TCP/IP模型、TCP/IP功能模型、TCP/IP协议模型、TCP/IP协议族、TCP/IP协议栈等说法在现实中是经常被混用的。
1.TCP/IP
TCP/IP这个名字来自其协议族中两个非常重要的协议,一个是IP,另一个是传输控制协议(Transmission Control Protocol,TCP)。图1-41中给出了TCP/IP模型的两个不同版本,以及它们与开放系统互联(OpenSystem Interconnection, OSI)参考模型的比较。TCP/IP标准模型共有4层,其“网络接入层”对应OSI参考模型的第一层和第二层(或TCP/IP对等模型的第一层和第二层)。OSI参考模型中的第五、六、七层的功能全部影射到了TCP/IP标准模型或TCP/IP对等模型中的应用层。现实中,5层的TCP/IP对等模型使用最为广泛。如无特别说明,本书介绍的TCP/IP模型均指TCP/IP对等模型。
图1-41 TCP/IP
从字面意义上讲,有人可能会认为TCP/IP是指TCP和IP两种协议。在实际生活中,TCP/IP有时也确实就是指这两种协议。然而在很多情况下,它只是利用IP进行通信时所必须用到的协议族的统称。具体来说,IP或互联网控制报文协议(Internet Control Message Protocol,ICMP)、TCP或用户数据报协议(User Datagram Protocol,UDP)、Telnet(远程上机)或文件传送协议(File Transfer Protocol,FTP),以及超文本传送协议(Hypertext Transfer Protocol,HTTP)等都属于TCP/IP范畴。它们与TCP或IP关系紧密,是互联网必不可少的组成部分。TCP/IP一词泛指这些协议,因此,有时也称TCP/IP为网际协议族。
2.协议的系统化和标准化
计算机通信诞生之初,协议的系统化和标准化并未受到重视,不同厂商只生产各自的网络设备来实现通信,这样就造成了用户使用计算机网络有很大障碍,计算机网络缺乏灵活性和可扩展性。为解决该问题,ISO制定了一个国际标准——OSI。
1.1.12 微课
OSI模型
后来的许多标准都由ISO与原来的国际电报电话咨询委员会(Consultative Committee of International Telegraph and Telephone,CCITT)联合制定,更多地从通信思想考虑模型的设计,很多选择不适用于计算机与软件的工作方式。但是TCP/IP模型从20世纪70年代诞生以后,成功赢得大量的用户和投资。IBM、DEC等大公司纷纷宣布支持TCP/IP模型,局域网操作系统NetWare、LAN Manager争相将TCP/IP模型纳入自己的体系结构,数据库Oracle支持TCP/IP模型,UNIX、POSIX操作系统一如既往地支持TCP/IP模型。相比之下,OSI参考模型与协议显得有些势单力薄。人们普遍希望协议标准化,但OSI参考模型迟迟没有成熟的产品推出,妨碍了第三方厂商开发相应的硬件和软件,所以OSI参考模型又称为理论模型,TCP/IP模型成为事实上的标准和模型。
划分网络协议层次其中一个优点就是方便了层间的标准接口工程模块化,从而创建了一个更好的互连环境。例如,应用层上的HTTP,对应传输层的80端口;生产网络层路由器的厂家接口尺寸对应物理层RJ-45水晶头的尺寸,双绞线的传输原理对应通信传输。现在的世界是一个共同发展的经济体,没有哪一个国家或者企业可以独立地发展,保持友好的贸易互通,是一个企业和国家发展的必由之路。
同学们可能已经发现,OSI参考模型所使用的协议显得非常陌生,而TCP/IP模型所使用的协议则相对比较熟悉。为什么呢?因为诸如Internet等现实中的网络的设计与实现,使用的几乎全都是TCP/IP协议族,而不是OSI协议族。在OSI参考模型中,我们习惯把每一层的数据单元都称为协议数据单元(Protocol Data Unit,PDU)。例如,第六层的数据单元称为L6 PDU,第三层的数据单元称为L3 PDU,其中的L代表层(Layer)。
在TCP/IP模型中,我们习惯把物理层的数据单元称为比特(Bit),把数据链路层的数据单元称为帧(Frame),把网络层的数据单元称为分组或包(Packet)。对于传输层,我们习惯把通过TCP封装得到的数据单元称为段(Segment),即TCP段(TCP Segment);把通过UDP封装得到的数据单元称为报文(Datagram),即UDP报文(UDP Datagram)。对于应用层,我们习惯把通过HTTP封装得到的数据单元称为HTTP报文(HTTP Datagram),把通过FTP封装得到的数据单元称为FTP报文(FTP Datagram),以此类推。
现在,假设我们在Internet上通过某网站找到了一首歌曲,并向相应的Web服务器请求下载这首2000个字节的歌曲,那么,这首歌曲在被发送之前将在Web服务器中被逐层进行封装。应用层会对原始歌曲数据(Data)添加HTTP头部形成一个HTTP报文;因为该HTTP报文太长,所以传输层会将该HTTP报文分解成两部分,并在每部分前添加TCP头部,从而形成两个TCP段;网络层会对每个TCP段添加IP头部,形成IP包;数据链路层(假定数据链路层使用的是以太网技术)会在IP包的前面和后面分别添加以太网帧头和帧尾,形成以太网帧(简称以太帧);最后,物理层会将这些以太帧转换为比特流。
思考与练习
一、单选题
1.在OSI参考模型中,能够完成端到端差错检测和流量控制的是( )。
A. 物理层
B. 数据链路层
C. 网络层
D. 传输层
2. 通信协议的三要素不包括( )。
A. 语义
B. 语法
C.语序
D. 时序
3. ITU的中文含义是( )。
A. 国际电报联盟
B. 国际电信联盟
C. 国际数据联盟
D. 国际电话联盟
4. ISO是以下哪个标准机构的简称?( )
A. 电子工业联盟
B. 国际电信联盟
C. 国际标准化组织
D. 国际互联网工程任务组
5. 8位可表示的信息数为( )。
A.8
B.32
C. 64
D. 256
6. 6类双绞线的最高传输速率为( )。
A. 100Mbit/s
B. 250Mbit/s
C. 500Mbit/s
D. 1000Mbit/s
7. 6类双绞线由( )对不同颜色的线组成。
A. 2
B. 3
C. 4
D.5
二、多选题
1. “三网融合”中的“三网”包括( )。
A. 电信网
B. 有线电视网
C. 计算机网
D. 数据网
E. 电话网
2. 信息的表现形式有( )。
A. 数据
B. 文本
C. 图像
D. 数字
E. 声音
3. 有线传输介质包括( )。
A. 双绞线
B. 同轴电缆
C. 光纤
D. 红外线