七层协议和四层协议(阿里)

若是想了解HTTP的协议结构,原理,post,get的区别(阿里面试题目),请参考:HTTP协议 结构,get post 区别(阿里面试) 

查看 http 1.0和1.1的区别参考:HTTP/1.0和HTTP/1.1的区别,HTTP怎么处理长链接html

可是若是想进入阿里的话,仍是看本文理解TCP的三次握手和四次挥手,发送的报文和状态都要掌握,阿里问了好几回了。能够参考:三次握手,四次挥手 具体发送的报文和状态都要掌握面试

为何会有TCP/IP协议

在世界上各地,各类各样的电脑运行着各自不一样的操做系统为你们服务,这些电脑在表达同一种信息的时候所使用的方法是千差万别。就好像圣经中上帝打乱了各地人的口音,让他们没法合做同样。计算机使用者意识到,计算机只是单兵做战并不会发挥太大的做用。只有把它们联合起来,电脑才会发挥出它最大的潜力。因而人们就千方百计的用电线把电脑链接到了一块儿。算法

可是简单的连到一块儿是远远不够的,就好像语言不一样的两我的互相见了面,彻底不能交流信息。于是他们须要定义一些共通的东西来进行交流,TCP/IP就是为此而生。TCP/IP不是一个协议,而是一个协议族的统称。里面包括了IP协议,IMCP协议,TCP协议,以及咱们更加熟悉的http、ftp、pop3协议等等。电脑有了这些,就好像学会了外语同样,就能够和其余的计算机终端作自由的交流了。浏览器

TCP/IP协议分层

           

TCP/IP协议族按照层次由上到下,层层包装。服务器

应用层:
向用户提供一组经常使用的应用程序,好比电子邮件、文件传输访问、远程登陆等。远程登陆TELNET使用TELNET协议提供在网络其它主机上注册的接口。TELNET会话提供了基于字符的虚拟终端。文件传输访问FTP使用FTP协议来提供网络内机器间的文件拷贝功能。网络

传输层:
提供应用程序间的通讯。其功能包括:1、格式化信息流;2、提供可靠传输。为实现后者,传输层协议规定接收端必须发回确认,而且假如分组丢失,必须从新发送。post

网络层 :
负责相邻计算机之间的通讯。其功能包括三方面。
1、处理来自传输层的分组发送请求,收到请求后,将分组装入IP数据报,填充报头,选择去往信宿机的路径,而后将数据报发往适当的网络接口。编码

2、处理输入数据报:首先检查其合法性,而后进行寻径--假如该数据报已到达信宿机,则去掉报头,将剩下部分交给适当的传输协议;假如该数据报还没有到达信宿,则转发该数据报。加密

3、处理路径、流控、拥塞等问题。url

网络接口层
这是TCP/IP软件的最低层,负责接收IP数据报并经过网络发送之,或者从网络上接收物理帧,抽出IP数据报,交给IP层。

IP 是无链接的

IP 用于计算机之间的通讯。

IP 是无链接的通讯协议。它不会占用两个正在通讯的计算机之间的通讯线路。这样,IP 就下降了对网络线路的需求。每条线能够同时知足许多不一样的计算机之间的通讯须要。

经过 IP,消息(或者其余数据)被分割为小的独立的包,并经过因特网在计算机之间传送。

IP 负责将每一个包路由至它的目的地。

IP地址

每一个计算机必须有一个 IP 地址才可以连入因特网。

每一个 IP 包必须有一个地址才可以发送到另外一台计算机。

网络上每个节点都必须有一个独立的Internet地址(也叫作IP地址)。如今,一般使用的IP地址是一个32bit的数字,也就是咱们常说的IPv4标准,这32bit的数字分红四组,也就是常见的255.255.255.255的样式。IPv4标准上,地址被分为五类,咱们经常使用的是B类地址。具体的分类请参考其余文档。须要注意的是IP地址是网络号+主机号的组合,这很是重要。

CP/IP 使用 32 个比特来编址。一个计算机字节是 8 比特。因此 TCP/IP 使用了 4 个字节。
一个计算机字节能够包含 256 个不一样的值:
00000000、0000000一、000000十、000000十一、00000100、0000010一、000001十、000001十一、00001000 ....... 直到 11111111。
如今,你知道了为何 TCP/IP 地址是介于 0 到 255 之间的 4 个数字。

TCP 使用固定的链接

TCP 用于应用程序之间的通讯。

当应用程序但愿经过 TCP 与另外一个应用程序通讯时,它会发送一个通讯请求。这个请求必须被送到一个确切的地址。在双方“握手”以后,TCP 将在两个应用程序之间创建一个全双工 (full-duplex) 的通讯。

这个全双工的通讯将占用两个计算机之间的通讯线路,直到它被一方或双方关闭为止。

UDP 和 TCP 很类似,可是更简单,同时可靠性低于 TCP。

IP 路由器

当一个 IP 包从一台计算机被发送,它会到达一个 IP 路由器。

IP 路由器负责将这个包路由至它的目的地,直接地或者经过其余的路由器。

在一个相同的通讯中,一个包所经由的路径可能会和其余的包不一样。而路由器负责根据通讯量、网络中的错误或者其余参数来进行正确地寻址。

域名

12 个阿拉伯数字很难记忆。使用一个名称更容易。

用于 TCP/IP 地址的名字被称为域名。w3school.com.cn 就是一个域名。

当你键入一个像 http://www.w3school.com.cn 这样的域名,域名会被一种 DNS 程序翻译为数字。

在全世界,数量庞大的 DNS 服务器被连入因特网。DNS 服务器负责将域名翻译为 TCP/IP 地址,同时负责使用新的域名信息更新彼此的系统。

当一个新的域名连同其 TCP/IP 地址一同注册后,全世界的 DNS 服务器都会对此信息进行更新。

TCP/IP

TCP/IP 意味着 TCP 和 IP 在一块儿协同工做。

TCP 负责应用软件(好比你的浏览器)和网络软件之间的通讯。

IP 负责计算机之间的通讯。

TCP 负责将数据分割并装入 IP 包,而后在它们到达的时候从新组合它们。

IP 负责将包发送至接受者。

 

 

  OSI 七层模型经过七个层次化的结构模型使不一样的系统不一样的网络之间实现可靠的通信,所以其最主要的功能就是帮助不一样类型的主机实现数据传输 。完成中继功能的节点一般称为中继系统。一个设备工做在哪一层,关键看它工做时利用哪一层的数据头部信息。网桥工做时,是以MAC头部来决定转发端口的,所以显然它是数据链路层的设备。具体说:

  • 物理层:网卡,网线,集线器,中继器,调制解调器
  • 数据链路层:网桥,交换机
  • 网络层:路由器
  • 网关工做在第四层传输层及其以上 

  路由器的一个做用是连通不一样的网络,另外一个做用是选择信息传送的线路。选择通畅快捷的近路,能大大提升通讯速度,减轻网络系统通讯负荷,节约网络系统资源,提升网络系统畅通率。  

物理层
  
在OSI参考模型中,物理层(Physical Layer)是参考模型的最低层。物理层的做用是实现相邻计算机节点之间比特流的透明传送,尽量屏蔽掉具体传输介质和物理设备的差别。“透明传送比特流”表示经实际电路传送后的比特流没有发生变化,对传送的比特流来讲,这个电路好像是看不见的。

数据链路层
  
数据链路层(Data Link Layer)是OSI模型的第二层,负责创建和管理节点间的链路。该层的主要功能是:经过各类控制协议,将有差错的物理信道变为无差错的、能可靠传输数据帧的数据链路。在计算机网络中因为各类干扰的存在,物理链路是不可靠的。所以,这一层的主要功能是在物理层提供的比特流的基础上,经过差错控制、流量控制方法,使有差错的物理线路变为无差错的数据链路,即提供可靠的经过物理介质传输数据的方法。数据链路层的具体工做是接收来自物理层的位流形式的数据,并封装成帧,传送到上一层;一样,也未来自上层的数据帧,拆装为位流形式的数据转发到物理层;而且,还负责处理接收端发回的确认帧的信息,以便提供可靠的数据传输。

网络层
  
网络层(Network Layer)是OSI模型的第三层,它是OSI参考模型中最复杂的一层。它在下两层的基础上向资源子网提供服务。其主要任务是:经过路由选择算法,为报文或分组经过通讯子网选择最适当的路径。具体地说,数据链路层的数据在这一层被转换为数据包,而后经过路径选择、分段组合、顺 序、进/出路由等控制,将信息从一个网络设备传送到另外一个网络设备。通常地,数据链路层是解决同一网络内节点之间的通讯,而网络层主要解决不一样子网间的通讯。例如在广域网之间通讯时,必然会遇到路由(即两节点间可能有多条路径)选择问题。 

传输层
  传输层(Transport Layer)是OSI模型的第4层。所以该层是通讯子网和资源子网的接口和桥梁,起到承上启下的做用。该层的主要任务是:向用户提供可靠的端到端的差错和流量控制,保证报文的正确传输。传输层的做用是向高层屏蔽下层数据通讯的细节,即向用户透明地传送报文。该层常见的协议:TCP/IP中的TCP协议和UDP协议。传输层提供会话层和网络层之间的传输服务,这种服务从会话层得到数据,并在必要时,对数据进行分割。而后,传输层将数据传递到网络层,并确保数据能正确无误地传送到网络层。所以,传输层负责提供两节点之间数据的可靠传送,当两节点的联系肯定以后,传输层则负责监督工做。综上,传输层的主要功能以下:监控服务质量
会话层
  会话层(Session Layer)是OSI模型的第5层,是用户应用程序和网络之间的接口,主要任务是:向两个实体的表示层提供创建和使用链接的方法。将不一样实体之间的表示层 的链接称为会话。所以会话层的任务就是组织和协调两个会话进程之间的通讯,并对数据交换进行管理。 用户能够按照半双工、单工和全双工的方式创建会话。当创建会话时,用户必须提供他们想要链接的远程地址。而这些地址与MAC(介质访问控制子层)地址或网络层的逻辑地址不一样,它们是为用户专门设计的,更便于用户记忆。

表示层
  表示层(Presentation Layer)是OSI模型的第六层,它对来自应用层的命令和数据进行解释,对各类语法赋予相应的含义,并按照必定的格式传送给会话层。其主要功能是“处理用户信息的表示问题,如编码、数据格式转换和加密解密”等。

应用层
  应用层(Application Layer)是OSI参考模型的最高层,它是计算机用户,以及各类应用程序和网络之间的接口,其功能是直接向用户提供服务,完成用户但愿在网络上完成的各类工做。它在其余6层工做的基础上,负责完成网络中应用程序与网络操做系统之间的联系,创建与结束使用者之间的联系,并完成网络用户提出的各类网络服务及 应用所需的监督、管理和服务等各类协议。此外,该层还负责协调各个应用程序间的工做。
  
    

参考:七层协议和四层协议

相关文章
相关标签/搜索