1.简介
HTTP 即 超文本传输协议(Hypertext Transfer Protocol )
超文本
早期的互联网中两台服务器之间的信息传输通常都是以有意义的能够被计算机解析的数据包(文本)的形式进行的,但随着互联网的发展, 人们希望能够传输图片、音频、视频,甚至以超链接的形式进行跳转, 这就是文本含义的拓展---超文本
传输
两台服务器之间进行通信, 会把超文本解析成二进制的数据包, 通过传输载体(网线光纤等)把二进制数据包通过一台服务器的终端传到另一台服务器终端的过程
协议
协议即约定, 网络协议即互联网通信过程中需要遵守的一定规则
HTTP 是一个在计算机世界里专门在两点之间传输文字、图片、音频、视频等超文本数据的约定和规范
2.组件
TCP/IP 5层模型
为了给网络协议的设计提供一个结构,网络设计者以分层(layer)的方式组织协议,每个协议属于层次模型之一。每一层都是向它的上一层提供服务(service),即所谓的服务模型(service model)。每个分层中所有的协议称为 协议栈(protocol stack)。
应用层
应用层是网络应用程序和网络协议存放的分层, 互联网中的很多协议 如 HTTP、SMTP、 FTP、 域名解析的DNS都是放在这一层的, 位于应用层的信息 我们称之为报文.
传输层
传输层建立了主机端到端的链接,传输层的作用是为上层协议提供端到端的可靠和透明的数据传输服务,包括处理差错控制和流量控制等问题。TCP, UDP 就在这一层.
TCP(Transmission Control Protocol):
向它的应用程序提供了面向连接的服务,它能够控制并确认报文是否到达,并提供了拥塞机制来控制网络传输,因此当网络拥塞时,会抑制其传输速率。
UDP(User Data Protocol):
向它的应用程序提供了无连接服务。它不具备可靠性的特征,没有流量控制,也没有拥塞控制。
我们把运输层的分组称为 报文段(segment)
网络层
网络层负责将称为 数据报(datagram) 的网络分层从一台主机移动到另一台主机。网络层一个非常重要的协议是 IP 协议,所有具有网络层的因特网组件都必须运行 IP 协议,IP 协议是一种网际协议,除了 IP 协议外,网络层还包括一些其他网际协议和路由选择协议,一般把网络层就称为 IP 层,由此可知 IP 协议的重要性.
数据链路层
为了将分组从一个节点(主机或路由器)运输到另一个节点,网络层必须依靠链路层提供服务。链路层的例子包括以太网、WiFi 和电缆接入的 DOCSIS 协议,因为数据从源目的地传送通常需要经过几条链路,一个数据包可能被沿途不同的链路层协议处理
我们把链路层的分组称为 帧(frame)
物理层
物理层的作用是将帧中的一个个比特从一个节点运输到另一个节点,物理层的协议仍然使用链路层协议,这些协议与实际的物理传输介质有关,例如,以太网有很多物理层协议:关于双绞铜线、关于同轴电缆、关于光纤等.
OSI 7层模型
OSI参考模型,是ISO(国际标准化组织)组织在1985年研究的网络互连模型.
OSI 要比TCP/IP5层模型多了 表示层 和 会话层,其他层基本一致.表示层主要包括数据压缩和数据加密以及数据描述,数据描述使得应用程序不必担心计算机内部存储格式的问题,而会话层提供了数据交换的定界和同步功能,包括建立检查点和恢复方案
web 服务器
web服务器一般指网站服务器,浏览器是HTTP请求的发起方, web服务器则是HTTP请求的应答方, 目前最主流的web服务器是:Apache、 Nginx 、IIS
CDN
CDN, 全称: Content Delivery Network,即内容分发网络, 利用HTTP协议中的缓存和代理技术代替原站响应请求. CDN是构建在现有网络基础之上的网络, 通过部署在各地的边缘服务器, 通过负载均衡,内容分发, 调度等模块使用户能够 就近获取资源降低网络拥塞,提高用户访问响应速度和命中率.
HTML
HTML 称为超文本标记语言,是一种标识性的语言.它包括一系列标签,通过这些标签可以将网络上的文档格式统一,使分散的互联网资源连接为一个逻辑整体.HTML 文本是由 HTML 命令组成的描述性文本,HTML 命令可以说明文字,图形、动画、声音、表格、链接等.