OSI七层模型和TCP/IP四层模型
OSI七层模型:
①物理层:
包括物理传输介质,任何网络都必须使用传输介质来发送和接收信号,这些信号构成了网络通信的物理表示。物理层的任务就是建立、维持和断开网络连接。发送方发起一个通过网络介质传输数据的连接,接收方响应建立连接的请求,接收或拒绝连接请求。物理层一个简单概貌就是,它关注网络硬件以及支持硬件访问某种网络介质的连接。
物理层管理网络介质到协议栈的通信,把计算机的出栈数据转换为网络所用的信号,对于入栈消息来说,把来自网络介质的信号转换为计算机网卡接受的比特位。
物理层的PDU成为比特位。
②数据链路层:
它的任务是,确保在发送方实现物理层数据的可靠传输,在接收方检验所收到数据的可靠性,数据链路层也管理跨网络介质的、从一台计算机到另一台计算机上、在单个逻辑或物理电缆段上的点对点传输。它通过唯一标识每一块网卡的专用地址,识别本地介质上的每个设备。由于数据链路层管理网卡之间的点对点通信,所以,它也处理这些网卡所插入的计算机之间的局域网连接。同时,它也处理从发送方到接收方的数据串行化,原因在于,比特位必须映射为相应的信号,一边从发送方传输到接收方,而在接收方执相反的过程。
数据链路层还能控制从发送方到接收方数据传输的节奏----这个过程称为介质流控制,当发生本地阻塞时进行响应,避免网络介质被数据流淹没,当出栈PDU可以传输时,数据链路层请求开始传输数据,并处理接收和构造入栈数据的入栈PDU。
数据链路层的PDU成为帧或数据帧。
eg: ATM FDDI....
③网络层
处理网络位置标记的地方,也是处理PDU从发送方发往接收方所蕴含的复杂性的地方。所以,网络层处理网络上与每个机器相关的逻辑寻址问题。当数据流的源地址和目标地址不在网络上的同一个物理段时,网络层也使用寻址信息来确定如何把PDU从发送方传递到接收方。网络层的主要功能是对Internet上的每一台主机提供一个全球唯一的地址,并提供主机之间的通信路径。
网络层也具体化了不同IP地址之间多个并发连接的表示方法,因此,多个应用程序能够同时保持网络连接。网络层能够识别一个网络连接属于计算机上的哪一个进程或应用程序,不仅可以把数据流从发送方正确的传递到接收方,还可以把能够入栈的数据传递给接收方计算机上的特定进程或应用程序。
使用一个或多个路由,把单个PDU从发送方转发或中继给接收方的技术成为分组交换,这也正是网络层以每个PDU为基础进行转发和中继的原因。事实上,网络层对于与路由相关的延迟也是敏感的,在从发送方往接收方转发数据的同时,能够管理通过这些路由的数据流,这个过程称为阻塞控制,它用于当网络上发生大量活动时避免过载。
网络层的PDU成为数据包。
eg: IP IPX.....
④传输层:
它的任务就是确保从发送方到接收方PUD可靠的端到端传输,所以,传输层通常包含了端到端的错误检测和错误恢复数据。这些数据通常作为传输层PDU尾部的一部分进行打包,在数据传输之前和传输之后计算一个成为校验和的特殊值,之后进行对比,如果发送的校验和与本地计算的校验和一致,那么可以认为成功传输,否则,当检测到错误时,传输层的某个协议将请求PDU重新传输。
从发送方到接收方可以发送的数据量在长度上不受限制,但是,从端到端能够传输数据的容器具有固定的最大长度(最大传输单元),因此,传输层也必须处理分段和重组操作。分段就是把很长的消息分为一连串的数据块,称为数据段,其中每一个数据块都表示为在发送方与接收方之间网络介质能够传送的最大数据载荷。重组就是将发送的数据块按照其原始顺序重新组织在一起,把传输的消息构成分段前的样子。
传输层具有在重组过程中请求重传所有出错PDU或丢失PDU的功能,实现可靠传递,传输层的PDU称为分段或数据段。
eg: TCP UDP....
⑤会话层:
是在发送方和接收方之间进行通信时创建、维持、之后终止或断开连接的地方,所以,会话层允许发送方和接收方启动或停止请求回话,以及当双方之间发生拥塞时仍然能保持对话。会话层包含了一种称为检查点的机制来维持可靠会话。
检查点定义了一个最接近成功通信的点,并且定义了当发生内容丢失或损坏时需要回滚以便恢复丢失或损坏数据的点。同样,会话层还定义了当会话出现不同步时,需要重新同步化的机制。
会话层的主要任务是负责两个网络参与者之间进行的通信,这两者在通信过程中通常交换一些列的消息或PDU。会话层的PDU有各种类型,统称为会话PDU或SPDU。
eg: RPC SQL....
⑥表示层:
管理在网络上(从其往下到协议栈)以及在特定机器或应用程序上(从其往上到协议栈)的数据的表示方式。这使得完全不同类型的计算机(它们可能是用不同的方式表示数值和字符)能够跨网络进行相互通信。
在表示层还有一种特殊的操作系统驱动程序,有的称为重定向器,有的称为网络外壳,不管是什么,它的作用就是把对网络资源的请求和对本地资源的请求区分开来,并把这样的请求重定向到恰当的本地子系统或远程子系统上。这样,计算机无需辨别要访问资源的类型,就能够使用单个子系统访问各种资源,不管这些资源是在本地计算机上还是在跨网络的远程计算机上。
表示层也能够为应用程序提供特殊的数据处理工能,包括协议转换、数据加密、解密、数据压缩或解压缩。对于这类型的服务,无论发送方的表示层做了什么,接收方的表示层都必须予以复原,从而使连接的双方在某个时刻分享相似的数据视图。表示层的PDU也有各种类型,统称为PDU。
eg: 加密 SACll.....
⑦应用层:
应用层定义的是应用程序用于请求网络服务的接口,而不是直接指向应用程序本身。因此,应用层主要定义了应用程序能够从网络上请求使用的几种类型的服务,并且规定了从应用程序接收消息或向应用程序发送消息时,数据所必须采用的格式。应用层的PDU也统称为PDU。
eg: HTTP FTP SNMP.....
TCP/IP四层模型
①网络接口层:
它负责监视数据在主机和网络之间的交换。事实上,TCP/IP本身并未定义该层的协议,而由参与互连的各网络使用自己的物理层和数据链路层协议,然后与TCP/IP的网络接入层进行连接。
网络接口层最重要的协议是PPP协议(点对点协议),PPP用于在两个网络设备之间创建一个直接的连接。PPP可以提供连接认证以识别双方的身份,应用加密技术进行传输以实现保密,应用压缩技术以减少传输的数据量(在接收端都必须进行解码和解压缩),PPP只提供检错而不纠错。
②互联网层:
TCP/IP互联网层协议处理跨越多个网络的机器之间的路由问题,它也管理网络名称和地址,以利于解决路由问题。更具体地说,互联网层处理TCP/IP有以下三个基本任务:
(1)MTU分块:当路由将数据从一种类型的网络运送到另一种类型的网络时,网络能够承载的最大数据块(MTU)就可能发生变化,当数据从支持较大MTU的介质移动到支持较小MTU的介质时,这一数据就必须被缩小,以便匹配这个较小的MTU。这个任务仅仅需要一次单向转换,但它必须在数据传输的过程中完成。
(2)寻址:寻址定义了一种机制,即TCP/IP网络中的所有网卡都必须与标识没一个网卡的专用的、唯一的比特位模式相对应,这个比特位模式也标识了网卡所属的网络。
(3)路由:路由定义了将数据从发送方转发给接收方的机制,在从发送方到接收方的转发过程中,可能需要数个中间中继过程。这一功能不仅包含在成功传递的过程中,而且还提供了跟踪传递性能的方法,以及在发生传递失效时报告错误的方法,否则就会发生障碍
互联网层的协议:IP ICMP ARP RARP RIP OSPF BGP...
③传输层:
这一层提供了从一台主机到另一台主机的数据移动。传输层协议提供的基本功能包括从发送方到接收方数据的可靠传输,还提供传输前必要的出战消息分段,以及在把数据交付给应用层之前重组分段的功能。
传输层的协议:TCP UDP
④应用层:
对应于OSI参考模型的高层,为用户提供所需要的各种服务,例如:FTP、Telnet、DNS、SMTP等
模型比较:
相同点:
(1)OSI参考模型和TCP/IP参考模型都采用了层次结构的概念,
(2)都能够提供面向连接和无连接两种通信服务机制;
不同点:
(1)前者是七层模型,后者是四层结构
(2)对可靠性要求不同(后者更高)
(3) OSI模型是在协议开发前设计的, 具有通用性.TCP/IP是先有协议集然后建立模型, 不适用于非TCP/IP网络.
(4)实际市场应用不同(OSI模型只是理论上的模型,并没有成熟的产品,而TCP/IP已经成为“实际上的国际标准”)
本文出自 “11944248” 博客,请务必保留此出处http://11954248.blog.51cto.com/11944248/1905387
原文:http://11954248.blog.51cto.com/11944248/1905387