Java网编(二) 细谈网络的两个分层模型——OSI七层模型和TCP/IP模型

    在上一次的文章中,说来惭愧,收到了非常多朋友的鼓励和支持,这也使我有更大的信心再继续发表一些自己对Java网编的一些理解,上次介绍一些基础概念的时候并没有深入地去研究,这次我打算比较深入地分享一下我对网络中这两个常见的分层模型——OSI七层模型和TCP/IP模型的一些理解。

    在开始之前,我们先来了解一下网络协议(Network Protocol)。网络协议就是在数据交换的时候需要遵守的一些规定和标准。一个网络协议有三个要素语法语义时序。①语法确定通信时采用的数据结构、编码、应答结构等,即如何沟通②语义就是对发布请求、执行动作和返回应答等给出解释,并确定用于协调和差错处理的控制信息,即做什么③时序就是确定事件的顺序及速度匹配和排序等,即何时做。


图1

图1列出了两个分层模型的对比,我们先从OSI讲起,最后再来总结一下。


OSI七层模型

OSI是一个理论上的模型,在这个模型中,网络被分成七个层次,其中物理层是第一层,依次向上数,应用层为最高层即第七层。这样做的优点很明显,能够将复杂的网络拆分成多个较简单的层,方便设计制造,并且每一层只需要通过接口隔离,若是出了问题能方便地修改某一层而不必影响到其它层。当然这样也有潜在的缺点,一层里可能会冗余低层的功能,而这样就背离了分层的目的。层与层之间的通信有两个原则,同一层之间使用协议通信;每一层只能与相邻层通信,使用下一层的服务并为上一层提供服务。

图2

从图2中可以看到,这七个层还能在分成两个部分,通信子网和网络高层(资源子网)。通信子网(低三层)作用是打通一条数据传输的网络通道,为来自上层的数据提供物理的传输通道。即提供网络访问。网络高层(高四层)的作用是为网络应用通信提供各种支持,构造数据通信平台,即提供网络服务。那么说了这么多,这几个层的作用是什么呢,接下来我们就来一一介绍一下这七个层次。因为从上到下来说会让我们更好地理解他们的关系和概念,我们就从最高层说起。这时候,为了区分每一层传输的数据,我们给每一层传输的数据都起一个名字,即不同层之间的协议数据单元(PDU)

应用层,顾名思义,他的作用是关于网络应用的。所以他的作用就是提供各种网络应用的接口,对网络应用进行处理。PDU一般称为应用层PDU

表示层,他处理数据的表示、压缩还有加密,使通信的应用能够解释交换的数据的含义。

会话层,作用于主机间的会话管理,提供了数据交换的界定和同步,包括建立检查点和恢复方案的方法。

传输层,处理端到端的连接,在应用程序端点之间传送数据。PDU为message

网络层,他的作用就是寻址和路由选择(即选择最短路径),将网络分组从一台主机移动到另一台主机。PDU为packet(包)

数据链路层,作用是将数据由一个节点传输到相邻的另一个节点。PDU为frame(帧)

物理层,将数据链路层的数据以二进制比特流的形式进行传输。PDU为bit(比特)



TCP/IP模型

相对于OSI七层协议模型,TCP/IP体系结构只有四层,每一层都能够与OSI有所对照,其中他将OSI中的高三层合并成应用层,传输层不变,网络层对应的层称为网际层(Internet Layer),将OSI中的数据链路层和物理层合并成为网络接口层。在TCP/IP体系结构中,表示层和会话层可分可不分,分了反而使网络的分层更加复杂,因此在TCP/IP体系结构便直接将其并入应用层,网络接口层也是如此,对应用程序开发者和用户来说隐藏底层的复杂性会有更好的体验。

当然除了TCP/IP体系结构,TCP/IP也是这两个协议的统称,他有几个特点①开放的协议标准。②独立于特定的网络硬件,可在不同的网络环境中运行和相互连接。③统一的网络地址分配方案,可以让网络中的每台主机都有唯一的地址。④标准化的高层协议,提供多种可靠的信息服务。

接着我们还是分别说说这几层的作用,当然这会和上面的OSI有很多的相似性,但还是存在着一些差别。


应用层,在数据经过低三层的传输后,决定数据传输后的操作。

传输层,确认接收方能按发送的顺序接收到数据包,并保证数据的完整性。

网际层,寻址和路由,网际协议(IP)是Java唯一理解的网络层协议

网络接口层,定义了一个网络接口(如以太网卡或WiFi天线)如何通过物理连接向本地网络或外界发送IP数据报。


对于应用层和传输层的PDU的问题,经过了解,这两层的PDU现在还没有一个统一的叫法,但比较权威的说法是应用层的PDU就直接叫成应用层PDU,运输层就叫message


这两个模型都是为了使我们对网络的理解和使用更加容易而开发出来的,OSI是一个分厂经典的模型,但因为只是一个理论模型,并且有些层的使用并不平均,因此在历史的潮流中输给了由实际应用产生的TCP/IP模型,TCP/IP模型在其基础上改进,将一些OSI分得太细的层再次合并,形成了自己的一套分层结构,并以此成为最广泛使用的模型。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值