网络知识科普,什么是网络分层模型?OSI参考模型、TCP

在悟空问答的题目中,很多网友对于网络的分层模型不是很清楚,对于通信双方是如何收发数据的,数据在通信过程中是如何转发的不是太了解,今天写一篇网络分层模型的文章,有不当之处,还望大家指出。

文章主要内容:

  • 网络分层模型,为什么分层
  • OSI七层参考模型
  • TCP/IP四层模型
  • 网络协议
  • 网络设备

关键词:OSI参考模型、TCP/IP模型、网络分层、协议

网络知识科普,什么是网络分层模型?OSI参考模型、TCP/IP模型

1 网络分层模型

互联网是一个非常复杂的结构,如果要位于地球两端的用户终端设备的通信,需要经过物理链路传输数据,需要通信双方协商传输内容的格式,需要完成同步,需要能够定位到通信双方,等等着一些列问题,如果要一次性解决这个问题,是一件非常复杂的问题。

为了将一个复杂的问题简单化,分层模型就出现了,将一个复杂的问题分为多个层次,每次只解决一个问题,而且层与层之间尽量实现低耦合,层内实现高内聚,下层的改变不会对上层产生过大的影响。

常见的网络分层模型有两种:

  • OSI七层参考模型
  • TCP/IP模型2 OSI七层参考模型

2 OSI七层参考模型

OSI七层参考模型从下到上依次是物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。在研究的过程中,由于会话层、表示层、应用层均位于同一主机内完成,均归为应用层。

OSI七层参考模型每一层完成的功能:

  • 应用层:直接与用户打交道,经常用的邮箱、web浏览器、ftp下载工具、QQ、微信等这些都属于应用层。
  • 表示层:主要负责数据格式的转换,完成各个通信系统之间不同表示方式的相互转化,比如你用的是GB2312的编码表示汉字,对方用的是UTF-8的编码,就需要进行编码的转化,还有进行数据压缩和解压缩的操作等。
  • 会话层:通信双方之
  • 间会话的建立、维持、释放等。
  • 传输层:完成通信双方端到端的通信,同时具有差错控制、流量控制等服务。使用端口号标识上层的应用协议,比如TCP的80端口表示web服务、20表示FTP服务等。也就是负责不同主机之间线程的通信。有两种通信方式TCP和UDP,下文讲解。
  • 网络层:完成主机和主机之间的通信,通过ip地址找到通信的双方。其中包括路由等。
  • 数据链路层:将网络层传下来的数据封装MAC地址等形成帧,在二层网络里传输。
  • 物理层:最底层的设备,传输比特流,0、1这样的数据,涉及到通信双方物理设备的电气信号定义等。最普遍使用的是局域网的双绞线和广域网的PPP。

下图显示了本台电脑的网络应用程序情况,四元组(源IP地址,源端口号,目的IP地址,目的端口号)可以唯一标识通信双方:

网络知识科普,什么是网络分层模型?OSI参考模型、TCP/IP模型

3 TCP/IP四层模型

TCP/IP四层模型是目前实事的标准,OSI参考模型是理论上的通信模型,TCP/IP模型是实际使用的通信模型和协议。

下面一幅图显示了TCP/IP模型与OSI模型的对应关系:

网络知识科普,什么是网络分层模型?OSI参考模型、TCP/IP模型

  • 应用层:对应于OSI的应用层、表示层、会话层
  • 传输层:同OSI
  • 网络层:同OSI
  • 网络接口层:同OSI的数据链路层和物理层

4 网络协议

通信双方要实现通信,每层均有对应的协议

  • 应用层:常用的有http协议、ftp协议、telnent协议、SMTP邮件发送协议、POP3邮件接收协议
  • 传输层:面向可靠连接的TCP协议、无连接的UDP协议,通过不同端口号区分应用层的不同应用,比如http用TCP的80端口,telnet协议用23端口
  • 网络层:主机的IP协议,通过IP找到通信双方,ARP协议完成IP地址到MAC地址的转化
  • 数据链路层:主要有以太网802.11、广域网的PPP、FDDI、ATM、FR等
  • 物理层:双绞线、光纤、卫通、短波、蓝牙、wifi等
网络知识科普,什么是网络分层模型?OSI参考模型、TCP/IP模型

5 网络设备

每一层都有对一个的网络设备:

  • 中继器:位于物理层,主要用来延长物理网络,实现信号的放大与中继,目前很少使用了。
  • 网桥/2层交换机 :位于数据链路层,二层设备,通过MAC地址实现数据的转发,工作在局域网。
  • 路由器/3层交换机:位于网络层,三层设备,通过IP地址实现数据的转发,可以通过路由协议找到通信双方。家里用的光猫就属于三层网络设备了。
  • 4~7层交换机:可以工作在传输层和应用层,对高层数据进行处理,比如流量监控等
  • 网关:在4~7层中做转发、转换工作。负责传输层以上的数据转发及其协议的转换
网络知识科普,什么是网络分层模型?OSI参考模型、TCP/IP模型


如有问题请在评论区留言讨论,若需更多帮助请私信关注。谢谢


分享到:


相關文章: