决战网络编程 之 网络协议分层

​ 之前一直对网络分层很模糊,一会儿七层分层,一会儿五层,一会儿四层。而且网络编程也是相当重要的一块知识点,总是要拿下来的。今天开始第一篇~~~~

​ 首先不管三层还是五层,都是从七层的网络分层中抽取出来的。我们先来看看是哪七层模型,并且都有些什么用?这里我们采用自上而下的方法,通俗点说,就是发出一个请求。

  1. 应用层

    ​ 应用层是网络应用程序及它们应用层协议停留的地方。因特网的应用层包括许多协议,例如HTTP(它提供了Web文档的请求和传送),SMTP(它提供了电子邮件报文的传输)和FTP(它提供了两个端系统之间的文件传送)。我们将看到,某些网络功能,如将像www.ietf.org这样对人友好的端系统名字转换为32比特的网络地址,也是借助于特定的应用层协议即域名系统完成的。

    ​ 应用层协议分布在多个端系统上,而一个端系统中的应用程序使用协议与另一个端系统中的额应用程序交换信息分组。我们把这种位于应用层的信息分组称为报文

  2. 表示层:

    ​ 表示层的表示有“表现”,“演示”的意思,因此更关注数据的具体表现形式。此外,所使用的应用软件的不同也会导致数据的表现形式的截然不同。例如所有的文字处理软件创建的文件只能由该文字处理器厂商提供的特定版本的处理软件才能打开读取。

    ​ 表示层的主要作用就是将数据从“某个计算机特定的数据格式”转换为“网络通用的标准数据格式”后再发送出去。接收端主机上收到数据后将这些网络标准格式的数据恢复为“该计算机特定的数据格式”,然后再进行相应处理。

  3. 会话层:

    ​ 决定采用合种连接方法是会话层的主要责任。

  4. 传输层:

    ​ 我们可以发现,到目前为止,由我们应用层产生的报文还没有开始发送,表示层对其进行了格式化编码,会话层负责确定连接方式,以及何时建立连接,何时发送数据等。真正负责在网络上传输数据的是会话层以下的“无名英雄”。

    ​ 因特网的传输层在应用程序端点之间传送应用层报文。在因特网中,有两种运输协议,即TCP/UDP,利用其中任何一个都能传输应用层报文。TCP向它的应用程序提供了面向连接的服务。这种服务包括了应用层报文向目的地的确保传递和流量控制(即发送方/接收方速率匹配)。TCP也将长报文划分为短报文,并提供拥塞控制机制,因此当网络拥塞时,源抑制其传输速率。UDP协议向它的应用程序提供无连接服务。这是一种不提供不必要服务的服务,没有可靠性,没有流量控制,也没有拥塞控制。我们把运输层的分组称为报文段

  5. 网络层:

    ​ 因特网的网络层负责将称为数据报的网络层分组从一台主机移动到另外一台主机。在一台源主机中的因特网运输层协议(TCP/UDP)向网络层递交运输层报文段和目的地址,就像你通过邮政服务寄信件时提供一个目的地址一样。

  6. 链路层:将数据以进行传输,

  7. 物理层:将数据以比特的方式进行传输

什么是五层协议:

​ 在《计算机网络----自顶向下方法》一书中,五层因特网协议栈,去除了表示层跟会话层。

什么是四层协议:

​ 即----》TCP/IP四层(参考)模型。前三层统称应用层,将链路层跟物理层合并,统称为链路层

原文地址:https://www.cnblogs.com/daimzh/p/12854430.html