查看原文
其他

TCP/IP参考模型浅析

计算机与网络安全 计算机与网络安全 2022-06-01

一次性付费进群,长期免费索取教程,没有付费教程。

进微信群回复公众号:微信群;QQ群:460500587

 教程列表 见微信公众号底部菜单 |  本文底部有推荐书籍 

微信公众号:计算机与网络安全

ID:Computer-network


1、TCP/IP概述

说到TCP/IP的历史,不得不谈到Internet的历史。20世纪60年代初期,美国国防部委托高级研究计划局(Advanced Research Pojects Agency,ARPA)研制广域网络互连课题,并建立了ARPANET实验网络,这就是Internet的起源。ARPANET的初期运行情况表明,计算机广域网络应该有一种标准化的通信协议,于是在1973年TCP/IP诞生了。虽然ARPANET并未发展成为公众可以使用的Internet,但是ARPANET的运行经验表明,TCP/IP是一个非常可靠且实用的网络协议。当现代Internet的雏形——美国国家科学基础网(NSFNET)于20世纪80年代末出现时,借鉴了ARPANET的TCP/IP技术。借助于TCP/IP技术,NSFNET使越来越多的网络互连在一起,最终形成了今天的Internet。TCP/IP也因此成为了Internet上广泛使用的标准网络通信协议。

TCP/IP标准由一系列的文档定义组成,这些文档定义描述了Internet的内部实现机制,以及各种网络服务或服务的定义。TCP/IP标准并不是由某个特定组织开发的,实际上是由一些团体共同开发的,任何人都可以把自己的意见作为文档发布,但只有被认可的文档才能最终成为Internet标准。

作为一套完整的网络通信协议,TCP/IP实际上是一个协议簇。除了其核心协议——TCP和IP之外,TCP/IP簇还包括一系列其他协议,包含在TCP/IP簇的4个层次中,形成了TCP/IP栈,如图1所示。

图1  TCP/IP栈

2、TCP/IP参考模型各层的功能

OSI参考模型不同的是,TCP/IP参考模型是在TCP与IP出现之后才提出来的。两者之间的层次对应关系如图2所示。

图2  OSI参考模型与TCP/IP参考模型的层次对应关系

TCP/IP参考模型的主机—网络层与OSI参考模型的数据链路层和物理层相对应;TCP/IP参考模型的互连层与OSI参考模型的网络层相对应;TCP/IP参考模型的传输层与OSI参考模型的传输层相对应;TCP/IP参考模型的应用层与OSI参考模型的应用层相对应。

根据OSI模型的经验,会话层和表示层对大多数应用程序没有用处,所以TCP/IP参考模型将其排除在外。TCP/IP参考模型各层次的功能如下。

(1)主机—网络层

主机—网络层(Host to Network Layer)是TCP/IP参考模型中的最低层。事实上,TCP/IP参考模型并没有真正定义这一部分,只是指出在这一层上必须具有物理层和数据链路层的功能,以实现从网络层传送下来的数据发送到目的主机的网络层。至于在这一层上使用哪些标准,则不是TCP/IP参考模型关心的。

主机—网络层中包含了多种网络层协议,如以太网协议(Ethernet)、令牌环网协议(Token Ring)、分组交换网协议(X.25)等。

(2)互连层

互连层(Internet Layer)是TCP/IP参考模型中的第2层,是整个TCP/IP参考模型的关键部分。互连层提供的是无连接的服务,主要负责将源主机的数据分组(Packet)发送到目的主机。源主机与目的主机既可以在同一个物理网内,也可以不在一个物理网内。

互连层上定义了正式的数据分组格式和协议,即网际协议(Internet Protocol,IP)。除了IP之外,还包括一些用于互连层的控制协议,如Internet控制报文协议(Internet Control Message Protocol,ICMP)、地址解析协议(Address Resolution Protocol,ARP)、反向地址解析协议(Reverse Address Resolution Protocol,RARP)等。

互连层的主要功能包括以下几点。

1)处理来自传输层的分组发送请求。在接收到分组发送请求之后,将分组装入IP数据报,填充报头,选择发送路径,然后将数据报发送到相应的网络。

2)处理接收到的数据报。在接收到其他主机发送的数据报之后,检查目的地址,若需要转发,则选择发送路径,转发出去;如果目的地址为节点IP地址,则除去报头,将分组交送到传输层处理。

3)进行流量控制与拥塞控制。

(3)传输层

传输层(Transport Layer)是TCP/IP参考模型中的第3层。传输层的主要功能是使发送方主机和接收方主机上的对等实体可以进行会话。从这一点上看,TCP/IP参考模型的传输层和OSI参考模型的传输层功能类似。

在传输层上定义了以下两个端到端的协议。

1)传输控制协议。传输控制协议(Transmission Control Protocol,TCP)是一个面向连接的协议,允许从源主机发出的字节流无差错地传送到网络上的其他主机上。在发送端,TCP把应用层的字节流分成多个报文段并传给互连层。在接收端,TCP把收到的报文段再封装成字节流,送往应用层。TCP同时还要处理流量控制,以避免高速发送方主机向低速接收方主机发送的报文过多而造成接收方主机无法处理的情况。

2)用户数据报协议。用户数据报协议(User Datagram Protocol,UDP)是一个不可靠的、无连接的协议。UDP主要用于不需要数据分组顺序到达的传输环境中,同时也被广泛应用于只有一次的、客户/服务器(Client/Server,C/S)模式的请求应答查询,以及快速传送比准确传送更重要的应用程序(如传输语音或影像)中。

(4)应用层

应用层(Application Layer)是TCP/IP参考模型的最高层。应用层负责向用户提供一组常用的应用程序,如电子邮件、远程登录、文件传输等。应用层包含了TCP/IP簇中的所有高层协议,如文件传输协议(File Transfer Protocol,FTP)、电子邮件协议(Simple Mail Transfer Protocol,SMTP)、超文本传输协议(Hyper Text Transfer Protocol,HTTP)、简单网络管理协议(Simple Network Management Protocol,SNMP)和域名系统协议(Domain Name System,DNS)等。

应用层协议一般可以分为3类:一类是依赖于面向连接的TCP,如文件传输协议、电子邮件协议等;一类是依赖于无连接的UDP,如简单网络管理协议;还有一类则既依赖于TCP,又依赖于UDP,如域名系统协议。

微信公众号:计算机与网络安全

ID:Computer-network


【推荐书籍】

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存