您的位置:首页 > 理论基础 > 计算机网络

详解HTTP--网络基础(一)

2017-05-28 09:22 190 查看
知识点的梳理:

WWW这一名称,是web浏览器当年用来浏览超文本的客户端应用程序时的名称。现在则用来表示这一些列的集合,也可称为web。 
  

使用HTTP协议访问Web

访问网站发生了什么?
Web使用HTTP协议作为规范,完成从客户端到服务器等一系列运作流程。Web是建立在HTTP协议上通信的。

请求与响应:

前提:一个请求发出,一定有且只有一个响应返回
浏览器发送给服务器的叫做请求;
服务器返回给浏览器的叫做响应;

网站的登陆流程

Web浏览器根据地址栏中指定的URL,从Web服务器端获取文件资源(resource),Web服务器收到请求~解析请求,给予响应。Web浏览器收到响应,解析响应并显示网页;
注意:这种通过发送请求获取服务器资源的Web浏览器等,都可被称为客户端(client);



输入用户名密码后,浏览器会再次向服务器发出请求,并将用户输入的用户名密码发送给网站服务器,网站服务器让负责处理登陆请求的服务器程序来处理这个登陆请求。之后将判断结果返回给浏览器

总结:

上网就是从服务器向浏览器传送HTML格式描述的网页,每次请求都带回来新的页面(页面中的图片,JS,CSS等,并不在一次请求中,而是单独的多次请求)



什么是请求处理响应?

短连接与长连接:
短连接:客户端只有向服务器发请求的时候才建立连接,服务器请求返回之后连接断开。由于客户端不是"占着茅坑不拉屎",所以能够受理更多的客户端连接。由于每次请求都要建立连接。所以效率比较低。

长连接:客户端和服务器端长期保持连接。java-->mysql。效率高,因为不需要每次请求都建立连接。一台服务器能够承受同时连接的客户端数量有效。



服务器知道浏览器什么时候关闭吗?
除非浏览器请求,否则服务器无法主动向浏览器发送数据,因为浏览器和服务器之间是短暂的网络连接。所以服务器不知道浏览器什么时候关闭

HTTP的诞生

HTTP诞生在1989年3年
诞生之前的基本理念:借助多文档之间相互关联形成的超文本,连成可相互参阅的WWW(万维网);

现在已经提出的3项WWW构建技术
把SGML(标准通用标记语言)作为页面的文本标记语言的HTML(超文本标记语言);
作为文档传递协议的HTTP;
指定文档所在地址的URL(统一资源定位符);

HTTP的版本

HTTP/0.9
HTTP于1990年问世。现在的HTTP其实包含HTTP1.0之前的版本,因此被称为HTTP/0.9;

HTTP/1.0
该版本在1996年5月被公布;
1997年1月公布的HTTP/1.1是目前主流的HTTP协议版本;

HTTP/2.0
虽然已经公布,但覆盖率很低;

与HTTP关系密切的协议:IP,TCP和DNS

负责传输的IP协议
IP网际协议位于网络层,它也是TCP/IP中的IP;不要弄混"IP"和"IP地址","IP"其实是一种协议的名称;

IP协议的作用
将各种数据包传送给对方。要保证传输过程的确定性,需要满足一些条件,其中IP地址和MAC地址比较重要;
IP地址:指明了节点被分配到的地址;可变;可以与MAC地址进行配对;
MAC地址:是指网卡所属的固定地址;基本不会更改;

使用ARP协议凭借MAC地址进行通信
IP间的通信依赖MAC地址。在网络上,通过可能会经过多台计算机和网络设备中转才能连接到对方。在进行中转时,会利用下一站中转设备的MAC地址来搜索下一个中转目标;这是会采用ARP协议。
ARP是一种用以解析地址的协议,根据通信方的IP地址可以反查出对应的MAC地址;

路由选择
在传达通信目前的中转过程时,计算机和路由器等网络设备只能获悉很粗略的传输路线。这种机制称为路由选择。

图示



确保可靠性的TCP协议

TCP位于传输层,提供字节流服务;
字节流服务:为了方便传输,将大块数据分割成以报文段为单位的数据包进行管理。而可靠的传输服务是指,能够把数据准确可靠地传给对方;

TCP协议传送大数据会把数据分隔,而且TCP协议能够确认数据最终是否送达到对方;

TCP三次握手:
TCP把数据包送出去后,通过三次握手来保证数据传送的正确性。握手过程使用了TCP标志,SYN,ACK;
发送端首先发送一个带SYN标志的数据包给对方。接收端收到后,回传一个带有SYN/ACK标志的数据包以示传达确认信息。最后,发送端再回传一个带ACK标志的数据包,代表握手结束;

握手过程中某个阶段如果中断,TCP协议会再次以相同的顺序发送相同的数据包;



当然TCP协议还有其他手段来确保通信的正确性;

负责域名解析的DNS服务

位于应用层的协议。它提供了域名到IP地址之间的解析服务。
DNS协议可通过域名查找IP地址,或逆向从IP地址反查域名的服务;



计算机除了IP地址外,还可以被赋予主机名和域名,如:www.hackr.jp
用户通常使用主机名或域名来访问对方的计算机,并不直接通过IP地址访问;所以,要让计算机识别域名或主机名,就需要DNS来帮忙;

各种协议与HTTP协议的关系

通过下图,来了解IP协议,TCP协议和DNS服务在使用HTTP协议的通信过程中各自发挥的作用

简单的把一次通信的过程分为三个阶段:客户端发出,线路中传输,服务端响应。而互联网中的设备要完成通信必须基于双方都能识别的规则,如通信的语音,格式,硬件和操作系统等等,这些规则的集合统称为TCP/IP 协议族。 大家基于同一套规则,才能好好玩耍

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Http 网络