协议栈
协议栈:各层的所有协议成为协议栈。
互联网中的协议栈
五层协议:自上而下依次是:应用层(http/https,ftp,smtp...)

各层协议简述
- 应用层: 应用层是网络应用程序以及他们的应用层协议留存的地方。计算机应用层中包括许多协议: HTTP,SMTP,FTP
应用层的信息分组成为报文(message)。
信息分组:一个端系统中的应用程序使用协议与另一个端系统中的应用程序交换信息分组
- 运输层: 运输层在应用程序端点(每个终端上的应用层和运输层之间的交互)之间传送应用报文(segment)。(TCP,UDP)
运输层分组成为报文段。
- 网络层: 负责将数据报的网络层分组从一台主机移动到另一台主机。(运输层(tcp,udp向网络层递交报文段和目的(接收方端系统)地址))
是的数据报根据路由从源传输到目的地(IP协议在该层)
- 链路层: 为了将分层从一个节点(主机或路由器)移动到下一个路由节点(wifi,以太网,docsis(电缆接入网)),链路层的分组成为帧(frame)
- 物理层: 这层中的协议仍然是与链路相关的:链路层的任务是将整个帧从一个网络元素移动到下一个网络元素,而物理层的任务是将该帧中的
一个一个比特,从一个结点移动到下一个结点(双绞铜线,同轴电缆,光纤)
TCP,UDP
http是基于tcp协议的,先简单介绍下tcp,udp协议
- TCP:当应用程序调用TCP作为其传输协议时,该应用程序就获得来自TCP服务的面向连接服务,和可靠数据传输服务(类似编程语言中的继承)
面向连接的服务:应用层数据报文开始流动之前,TCP让客户和服务器互相交换传输层控制信息。称为握手过程,使他们为大量分组的到来做好准备。
在我手阶段,一个TCP连接,就在两个进程(客户端上的进程,服务器上的进程)套接字之间建立了。
这条连接是双工的(可同时进行收和发);当应用程序结束报文发送时,必须拆除连接。
可靠的数据传输:通信进程能够依靠TCP,无差错,按顺序交付所有发送的数据,再另一端能够以TCP将相同的字节流交付给接接收方的套接字,而没有字节的丢失和冗余。
- UDP: UDP是无里无连接的,不可靠的数据传输服务。即:在通讯前不需要进行连接确认,数据发出后,不保证接受房的数据是有序的,不丢失的。
HTTP
http:超文本传输协议(HyperText Transfer Protocol)它是Web的核心。
计算机网路 互联网中的协议栈
原文:https://www.cnblogs.com/liveforlearn/p/15225811.html