摘要:TCP/IP的参考模型TCP/IP是建立在“无连接”技术上的网络互连协议,信息(包括报文和数据流)以数据报的形式在网络中传输,从而实现用户间的通信。TCP/IP协议遵守一个四层的模型概念:应用层(ApplicationLayer)、传输层(TransportLayer)、网络层(InternetLayer)和网络接口层(NetworkInterfaceLayer)。一、网络接口层模型
TCP / IP的参考模型
TCP/IP是建立在“无连接”技术上的网络互连协议,信息(包括报文和数据流)以数据报的形式在网络中传输,从而实现用户间的通信。TCP/IP协议遵守一个四层的模型概念:应用层(Application Layer)、传输层(Transport Layer)、网络层(Internet Layer)和网络接口层(Network Interface Layer)。
一、网络接口层
模型的基层是网络接口层。负责数据帧的发送和接收,帧是独立的网络信息传输单元。网络接口层将帧放在网上,或从网上把帧取下来。
二、网络层
互联协议将数据包封装成Internet数据报,并运行必要的路由算法。 这里有四个互联协议:
网际协议IP:负责在主机和网络之间寻址和路由数据包。
地址解析协议ARP:获得同一物理网络中的硬件主机地址。
网际控制消息协议ICMP:发送消息,并报告有关数据包的传送错误。
互联组管理协议IGMP:被IP主机拿来向本地多路广播路由器报告主机组成员。
三、传输层
传输协议在计算机之间提供通信会话。传输协议的选择根据数据传输方式而定。 这里有两个传输协议:
传输控制协议TCP:为应用程序提供可靠的通信连接。适合于一次传输大批数据的情况。并适用于要求得到响应的应用程序。
用户数据报协议UDP:提供了无连接通信,且不对传送包进行可靠的保证。适合于一次传输小量数据,可靠性则由应用层来负责。
四、应用层
应用程序通过这一层访问网络。
网络设计者在解决网络体系结构时经常使用ISO/OSI( 国际标准化组织/开放系统互连)七层模型,该模型每一层代表一定层次的网络功能。最下面是物理层,它代表着进行数据转输的物理介质,换句话说,即网络电缆。其上是数据链路层,它通过网卡提供服务。最上层是应用层,这里运行着使用网络服务的应 用程序。
TCP/IP模型是同ISO/OSI模型等价的。当一个数据单元从网络应用程序向下送到网卡,它通过了一列的TCP/IP 模块。这其中的每一步,数据单元都会同网络另一端对等TCP/IP模块所需的信息一起打成包。在数据传送中,可以形象地理解为有两个信封,TCP和IP就像是信封,要传递的信息被划分成若干段,每一段塞入一个TCP信封,并在该信封封面上记录有分段号的信息,再将TCP信封塞入IP大信封,发送上网。在接受端,一个TCP软件包收集信封,抽出数据,按发送前的顺序还原,并加以校验,若发现差错,TCP将会要求重发。因此,TCP/IP在INTERNET中几乎可以无差错地传送数据。
为了勾勒TCP/IP在现实网络世界中所扮演的角色,请考虑当使用HTTP(超文本传输协议)的Web浏览器(如IE)从连接在Internet上的Web服务器上获取一页HTML数据时所发生的情况。为形成同Web服务器的虚链路,浏览器使用一种被抽象地称为套接口(socket)的高层软件。为了获 取Web页,它通过向套接口写入HTTPGET命令来向Web 服务器发出该指令。接下来套接口软件使用TCP协议向Web服务器发出包含GET命令的字节流和位流,TCP将数据分段并将各独立段传到IP模块,该模块将数据段转换成数据报并发送给Web服务器。
其实在这一过程中,在网络上发送和接收的数据已经被分成一个或多个数据包(packet),每个数据包包括:要传送的数据;控制信息,即告诉网络怎样处理数据包。TCP/IP决定了每个数据包的格式。如果事先不告诉你,你可能不会知道信息被分成用于传输和再重新组合起来的许多小块。
当有应用程序(如例子中的浏览器)创建它时,这个数据包的生命就开始了。每个包都会穿过发送主机的各层,再通过网络电缆进入目标主机的各层后,进入适当的应用程序(如例子中的Web服务器)。当包穿过发送主机各层时,其控制信息和格式信息被加在包上。在它到达目标主机后,随着这个包向上穿过各个层,这些信息分别被读取并剥去。一旦这个包被送到线路上去时,它的重量已经增大,因为包中增加了许多网络信息。当这个滚雪球式增大的包到达目的主机时,又开始逐渐减轻,当它最后到达顶层时,又变得十分苗条了。
对浏览器和服务器来说,数据在这一端写入套接口而在另一端出现如同魔术一般,但这只是网络底层发生的各种复杂行为的表象,它创造了数据经过网络无缝传输的假象。
IP协议――天地本宽
IP是英文 Internet Protocol的缩写,意思是“网络之间互连的协议”,也就是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则。任何厂家生产的计算机系统,只要遵守IP协议就可以与因特网互连互通。正是因为有了IP协议,因特网才得以迅速发展成为世界上最大的、开放的计算机通信网络。因此,IP协议也可以叫做“因特网协议”。
IP是怎样实现网络互连的?各个厂家生产的网络系统和设备,如以太网、分组交换网等,它们相互之间不能互通,不能互通的主要原因是因为它们所传送数据的基本单元(技术上称之为“帧”)的格式不同。IP协议实际上是一套由软件程序组成的协议软件,它把各种不同“帧”统一转换成“IP数据报”格式,这种转换是因特网的一个最重要的特点,使所有各种计算机都能在因特网上实现互通,即具有“开放性”的特点。
IP协议用来在网络间交换数据并且执行一项重要的功能:路由选择--选择数据报从A主机到B主机将要经过的路径以及利用合适的路由器完成不同网络之间的跨越(hop)。
那么,“数据报” 是什么?它又有什么特点呢?数据报也是分组交换的一种形式,就是把所传送的数据分段打成 “包”,再传送出去。但是,与传统的“连接型”分组交换不同,它属于“无连接型”,是把打成的每个“包”(分组)都作为一个“独立的报文”传送出去,所以叫做“数据报”。这样,在开始通信之前就不需要先连接好一条电路,各个数据报不一定都通过同一条路径传输,所以叫做“无连接型”。这一特点非常重要,它大大提高了网络的坚固性和安全性。
每个数据报都有报头和报文这两个部分,报头中有目的地址等必要内容,使每个数据报不经过同样的路径都能准确地到达目的地。在目的地还需要重新组合还原成原来发送的数据,这就要IP具有分组打包和集合组装的功能。
在实际传送过程中,数据报还要能根据所经过网络规定的分组大小来改变数据报的长度,IP数据报的最大长度可达65535个字节。
IP协议中还有一个非常重要的内容,那就是给因特网上的每台计算机和其它设备都规定了一个地址,叫做“IP 地址”。由于有这种地址,才保证了用户在连网的计算机上操作时,能够高效而且方便地从千千万万台计算机中选出自己所需的对象来。
现在电信网正在与IP网走向融合,以IP为基础的新技术是热门的技术,如用IP网络传送话音的技术(即VoIP)就很热门,其它如IP over ATM、IP over SDH、IP over WDM等等,都是IP技术的研究重点。
IP分组格式的奥妙
IPv4数据包的报头包含如下内容:版本、头标长、服务类型、总长、标识、标志、片偏移、生存时间、协议、头标校验和、源IP地址、宿IP地址、选项。
为便于按照相应规定对报头进行分析,首先路由器要确定报头的格式,查看IP协议的“版本”(IPv4的“版本”是4);次之,路由器必须知道报头的长度和正确性,按照“头标长”截获报头,用“头校验和”加以校验。为避免数据包因寻径错误而在互联网中无休止地流动、占用宝贵的网络资源,有必要限制数据包的转发次数。路由器检查“生存时间”,目的在于此。路由器还需要根据“宿IP地址”或“选项”中的源路径查找路由转发表,如果“宿IP地址”正好与自己吻合,需参考“源IP地址”和“协议”,决定该数据包是否有权限访问路由器。如果有,就要根据“协议”在本地作进一步的高层处理,不过在此之前有必要根据“标识”、“标志”和“片偏移”来重组数据包。“协议”标明了数据区的协议类型,如89代表OSPF等,路由器根据“协议”规定的数据区格式分析数据,从而可以进一步处理其中相应的协议消息。
如果“宿IP地址”尚未到达,须参考“源IP地址”和“协议”,决定该数据包是否被允许转发,如果允许,路由器根据“宿IP地址”或“选项”中的源路径、“服务类型”在路由转发表中查找相应的输出端口,并把数据包交换到该输出端口的某队列中,解析下一跳IP地址对应的物理地址(比如以太网的MAC地址),把数据包封装在物理帧中传输。不过,如果一个物理帧装不下完整的数据包,还须把数据包分片,在“标识”、“标志”和“片偏移”中加以指示。“服务类型”包含优先级、时延、吞吐率和可靠性,目的是要映射到相应的路由选择、排队优先级、带宽分配上。不过,映射不是强制性的,即使映射也并非所有的要求都能被满足。在不久的将来,“服务类型”有可能被“区分服务”替代。
上述任何一个环节没通过,IP数据包就要被丢弃,与此同时,路由器可能产生ICMP数据包,报告相应的差错。
[1] [2]
通信工程师备考资料免费领取
去领取