计算机网络基础之OSI网络分层大总结

温故:

网络层在OSI七层中位于第三层,同时也是通信子网的最高层,物理层传输的单位是比特流,数据链路层传输的是数据帧,而网络层的传输单位是数据包,传输层的传输单位是报文。这里还要做一个比较,物理层要解决的问题是创建、维护和释放连接;数据链路层要解决的问题是将不可靠的物理链路改造成无差错的数据链路;而网络层主要解决的问题是选择路径,传输层在这里会使用分流/合流,复用/介复用技术等技术为上层的会话层屏蔽掉这种差异,让上层的会话层对下层的通信子网的差异性“视而不见”,实现端到端之间的建立和维持,而会话层的作用就是对用户之间的会话进行管理,实现数据流同步和重同步,表示层的作用就是格式控制,进行语法之间的转换,应用层是直接面向用户的一层,它的意义就是为网络应用提供一个访问网络的接口,是应用程序能够访问网络。

关于文中提到的OSI网络七层相关的知识点的链接如下,有兴趣的朋友可以看看:

计算机网络基础之应用层

计算机网络基础之表示层的功能和服务

计算机网络基础之会话层的功能和服务

计算机网络基础之传输层的功能和服务

计算机基础之网络层的功能和服务

计算机网络基础之数据链路层的功能与服务

计算机网络基础之物理层功能与协议

知新:

今天的内容之所以叫做OSI网络分层大总结,是因为前面的内容中我们已经将OSI网络七层的的各层功能和服务都已经讲完了,就需要从宏观的整体的角度来认真分析一下OSI网络七层的优缺点,既然要分析就需要有参照物,我选择的参照物是TCP/IP协议。所以接下来我要做的两件事是总结与对比。

1、通信协议是在计算机网络中为实现双方通信而制定的必须通信双方都遵守的规则,通信协议必须包含的三要素是:语法、语义和时序;

2、计算机网络中的服务指的是下层为上层提供的功能,它是“垂直”的;而计算机网络中提到的协议是“水平”的,它负责的是同层对等实体之间的交互,定义了每一层的功能的实现方式;接口是指相邻的上下两层之间的边界,定义了某层的服务如何被上层访问。同一系统中相邻两层实体交换信息的地方称之为服务访问点(SAP),注意每个层间的接口可以有多个SAP;

3、关于面向连接的服务和无连接的服务,他们在某些分层中有着不同的体现,在网络层中变现为虚电路和数据报,在传输层中表现为“升级版”的网络层服务,之所以称之为升级版,主要是因为在传输层还是使用的有连接和无连接的服务,区别是传输层的更可靠,性能更优,相当于是2.0版本哈哈。

 

前面我简单的对之前几天写的内容做了一些总结,主要都是总结的概念性知识,其他的东西大家可以去看看前面的几篇文章,也可以去网络上查查。我这里就不再赘述了。接下来说说OSI网络七层和TCP/IP协议的小区别。首先OSI网络七层模型是一种比较完成的网络概念模型,但是说实在的在实际的应用中真的能符合这个OSI/RM模型的成熟产品不多。更多的产品却是支持TCP/IP,所以目前真正实际上使用的标准是TCP/IP。也许有人可能会问既然现在使用的是TCP/IP,那么你费那么大劲给我们讲这个OSI干嘛?我只能说:要想跑得先学会走。

那么TCP/IP模型到底是什么样的呢?是这样的TCP/IP协议本着从最实用的角度出发,将原来的OSI网络七层合并成了现在的四层,分别是网络接口层、网络互联层、传输层和应用层。咱们具体说一下。

1、网络接口层:它实际上就是将物理层和数据链路层整合在了一起。它负责接收IP数据报并将其封装成适合在物理网络上传输的帧格式进行传输,或将从网络接收到的帧解封装,取出IP数据报交给上层的网络互联层。

2、网络互联层:它负责将数据报文独立的从源主机送到目的主机,以建立互联网络。网间的数据报可以根据它携带的目的IP地址,通过路由器由一个网络传送到另一个网络。

3、传输层:这里的传输层和OSI 中的传输层没有太大的区别,该层主要有TCP和UDP协议。前者是可靠传输连接,后者是不可靠传输连接。

4、应用层:这里的应用层与OSI 的应用层有着区别,它不仅包含了OSI上三层的所有功能,还包含了应用进程本身。

 

咱们这里将OSI 和TCP/IP做一个比较:

1、后者相比于前者简化了高层,形成了统一的应用层;

2、前者抽象能力强,适合描述各种网络,但是它是先有了参考模型,再有了协议,简单说就是先有了理论才有了实践,所以概括性好但是实用性不强;后者是先定义了各种协议,然后制定模型,相当于先实践了然后有了理论,所以后者更实用,但是后者不适用与其他的非TCP/IP网络;

3、前者详细的区分了网络分层中的功能、服务和接口,后者没有。

4、TCP/IP的网络互联层只提供无连接的服务。

 

拓展:为什么建立连接协议是三次握手,而关闭连接却是四次握手呢? 这是因为服务端的 LISTEN 状态下的 SOCKET 当收到 SYN 报文的建连请求后,它可以把 ACK 和 SYN(ACK 起应答作用,而 SYN 起同步作用)放在一个报文里来发送。但关闭连接时,当收到对方的 FIN 报文通知时,它仅仅表示对方没有数据 发送给你了;但未必你所有的数据都全部发送给对方了,所以你可以未必会马上会关闭 SOCKET,也即你可能还需要发送一些数据给对方之后,再发送 FIN 报文给对方来表示你同意现在可以关闭连接了,所以 TCP 传输是一种全双工的模式,两端的传输都是相互分开的, TCP 断开也是相互独立的,它这里的 ACK报文和 FIN报文多数情况下都是分开发送的。

 

                                                                     

                                                                                                             注意了 

关于计算机网络分层的基础知识咱们就暂且聊到这里,至于后面和大家聊些什么?我得琢磨一下。我很开心能和大家分享我的成果,当然了实话实说,里面有些内容是我从网络上copy下来的,没有办法有些时候你琢磨半天都没人家一句话总结的到位,所以就只能站在巨人的肩膀上面喽。

小二,关门上闸板,放假三天。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

金陵大掌柜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值