网络七层协议
1、物理层
主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。它的主要作用是传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后在转化为1、0,也就是我们常说的数模转换与模数转换)。
2、数据链路层
提供错误检测和纠正,以确保数据的可靠传输。
3、网络层
这一层定义的是IP地址,通过IP地址寻址。通过路由选择算法,为报文或分组通过通信子网选择最适当的路径,且只能保证数据送出,不保证可靠性。
4、传输层
即使有了物理层和数据链路层,网络还是经常中断,只是中断的时间是毫秒级别的。要保证传输大量文件时的准确性。于是,我要对发出去的数据进行封装。就像发快递一样,一个个地发。于是,先发明了传输层。
例如TCP,是用于发大量数据的,我发了1万个包出去,另一台电脑就要告诉我是否接受到了1万个包,如果缺了3个包,就告诉我是第1001,234,8888个包丢了,那我再发一次。这样,就能保证对方把这个视频完整接收了。
例如UDP,是用于发送少量数据的。我发20个包出去,一般不会丢包,所以,我不管你收到多少个。在多人互动游戏,也经常用UDP协议,因为一般都是简单的信息,而且有广播的需求。如果用TCP,效率就很低,因为它会不停地告诉主机我收到了20个包,或者我收到了18个包,再发我两个!如果同时有1万台计算机都这样做,那么用TCP反而会降低效率,还不如用UDP,主机发出去就算了,丢几个包你就卡一下,算了,下次再发包你再更新。
5、会话层
会话层的主要功能是在两个节点间建立、维护和释放面向用户的连接,并对会话进行管理和控制,保证会话数据可靠传送。在会话层和传输层我们都提到了连接,那么会话连接和传输连接到底有什么区别呢?
假 设你对你的秘书说,给琼斯先生打个电话,这时你相当于会话层,而秘书相当于传输层。你的请求就相当于请求一个会话。你提出建立连接的要求,但不必自己动手 查找电话号码、拨号等。秘书着手打电话,开始建立传输连接。当拨号成功,对方拎起话筒,传输连接就建立起来了。然后,你接过电话,此时会话层(连接)建立 成功。
当我们进行大量的数据传输时,例如你正在下载一个100M 的文件,当下载到95M 时,网络断线了,这时怎么办?是否需要重头再传?为了解决这个问题,会话层提供了同步服务,通过在数据流中定义检查点(Checkpoint)来把会话分 割成明显的会话单元。当网络故障出现时,从最后一个检查点开始重传数据。
6、表示层
表示层主要是负责数据格式的转换,压缩与解压缩,加密与解密。
OSI 模型中,表示层以下的各层主要负责数据在网络中传输时不要出错。但数据的传输没有出错,并不代表数据所表示的信息不会出错。例如你想下午两点从杭州出发去 上海,于是你对上海的朋友说,“我下午两点来”,可是你的朋友却理解为两点钟到达上海。所以这句话虽然没有听错,却因为不同的理解,产生了完成不同的结 果。
表示层就专门负责这些有关网络中计算机信息表示方式的问题。表示层负责在不同的数据格式之间进行转换操作,以实现不同计算机系统间的信息交换。 两台计算机之间的信息交换除了编码外,还包括数组、浮点数、记录、图像、声音等多种数据结构,表示层用抽象的方式来定义交换中使用的数据结构,并且在计算 机内部表示法和网络的标准表示法之间进行转换。
表示层还负责数据的加密,以在数据的传输过程对其进行保护。数据在发送端被加密,在接收端解密。使用加密密钥来对数据进行加密和解密。表示层还负责文件的压缩,通过算法来压缩文件的大小,降低传输费用。
7、应用层
应用层是网络体系中最高的一层,也是唯一面向用户的一层,应用层将为用户提供常用的应用程序,并实现网络服务的各种功能。常用的电子邮件、上网浏览等网络服务,都是应用层的程序。
应用层主要是面对用户访问网络的。主要有一些应用程序,如:DNS,FTP,E-mail,Telnet,HTTP。
参考文章:https://www.cnblogs.com/carlos-mm/p/6297197.html