漫谈网络通信——从OSI网络模型到TCP/IP协议族

  OSI七层模型

  OSI(Open System Interconnection,开放系统互联)七层网络模型成为开放式系统互联参考模型,是一个把网络通信在逻辑上的定义,也可以理解成为定义了通用的网络通信规范。而我们的数据在网络中传输的过程,实际上就是如下图的封装和解封装的过程,发送方通过各种封装处理,把数据转换成比特流的形式,比特流在信号传输的硬件媒介中传输,接收方再把比特流进行解封装处理。

 

 

1.物理层

  规定了如何为网络通信实现最底层的物理连接,以及物理设备的机械、电气、功能和过程特性。如:如何使用电缆和接头的类型、用来传送信号的电压等。需要注意的是,网络通信过程中所需的物理媒介(网线、线缆等),其实并不属于物理层,因为物理层实际上是一种规定,规定这些物理媒介设备在连接网络时的各种规格、参数以及工作方式。但是同时,双绞线、线缆等物理媒介又是物理层的实现。

 

2.数据链路层

  规定了如何进行物理地址寻址、如何在物理线路上进行数据(帧frame)的可靠传递以及流量控制。

  数据链路层协议有SLIP协议、CSLIP协议、PPP协议等。交换机,对帧解码并根据帧中包含的信息把数据发送到正确的接收方,所以交换机是工作在数据链路层的。

 

3.网络层

  规定了通过哪些网络节点、什么样的网络路径来将数据(数据包)从发送方发送到接收方。在网络层中,确定了从节点A发数据到节点B的网络路径,经过哪些节点。网络层既可以建立LAN通信系统,更主要的是可以在WAN网络系统中建立通信,这是因为它有自己的路由地址结构,通过路由协议(又称可路由协议)进行网络通信的路由工作。

 

4.传输层

  负责总体的数据传输和数据控制,提供端到端的交换数据的机制。传输层对数据(段)进行分割和重组,并且进行流量控制和根据接收方的接收数据能力确定适当的传输速率。例如以太网无法处理大于1500字节的数据包,传输层将数据分割成数据片段,并对小数据片段进行序列编号。接收方的传输层将根据序列编号对数据进行重组。

  传输层协议有TCP协议、UDP协议等。

 

5.会话层

  在网络中的两个节点之间建立、维持和终止通信。

 

6.表示层

  在应用程序和网络之间对数据进行格式化,使之能够被另一方理解。即发送方的表示层将应用程序数据的抽象语法转换成网络适用于OSI网络传输的传送语法,接收方则相反。除此之外,表示层还可对数据进行加密与解密。

 

7.应用层

  最顶层的OSI层,为应用程序提供网络服务。如为电子邮件、文件传输功能提供协议支持。

  应用层协议有HTTP协议、FTP协议、SMTP协议等。

 

  什么是TCP/IP协议?

  TCP/IP协议定义了今天的电子设备如何连入internet网络,以及数据如何在他们之间传输的标准。在今天的基于TCP/IP的互联网诞生之前,能够使用接口通信处理实现互联互通的电脑并不多,而且大部分电脑之间信息的交换并不兼容。后来好几个牛逼哄哄的歪果仁开始捣鼓一些协议,能够让电脑之间进行通信。终于在1974年12月,Bob Kahn和Vinton G.Cerf带领的团队首先制定出了通过详细定义的TCP/IP协议标准。当时作了一个试验,将信息包通过点对点的卫星网络,再通过陆地电缆,再通过卫星网络,再由地面传输,贯串欧洲和美国,经过各种电脑系统,全程9.4万公里竟然没有丢失一个数据位,远距离的可靠数据传输证明了TCP/IP协议的成功。1983年1月1日,运行较长时期曾被人们习惯了的NCP被停止使用,TCP/IP协议作为因特网上所有主机间的共同协议,从此以后被作为一种必须遵守的规则被肯定和应用。(让我们为Bob Kahn和Vinton G.Cerf两位老爷爷撒花鼓掌吧

猜你喜欢

转载自blog.csdn.net/runrun117/article/details/80213457