详解HTTP--网络基础(一)
来源:互联网 发布:淘宝小号哪里有卖 编辑:程序博客网 时间:2024/05/18 12:30
知识点的梳理:
- 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 协议族。 大家基于同一套规则,才能好好玩耍
阅读全文
1 0
- 详解HTTP--网络基础(一)
- 从零开始学HTTP (一)网络基础
- http详解(一)-------web的基础
- Android 网络编程(一)Http网络请求详解?
- HTTP协议笔记(一):Web网络基础
- 图解HTTP读书笔记(一 了解web与网络基础)
- 图解http整理(了解web及网络基础一)
- android网络编程(一):HTTP协议详解
- http基础(一)
- 网络篇——android中的Http(一)之Http协议基础
- 网络基础(一)
- 网络基础(一)
- HTTP网络协议(一)
- HTTP网络协议(一)
- 《图解HTTP》(一)之HTTP基础
- HTTP协议基础(一)
- http基础篇(一)
- HTTP 协议详解(基础)
- SWAP分区详解
- 从AlphaGo完胜柯洁谈人工智能对于教育行业的影响
- mybatis代码生成器
- Oracle新建表空间,创建用户,授权和导入数据
- 2017 Google I/O 最新科技看点
- 详解HTTP--网络基础(一)
- servlet中的session不一定会被创建
- 详解HTTP--URI和URL(二)
- 对RxJava的认识
- Unbutu 常用功能命令
- Android5.0新特性:CardView卡片式设计
- OpenCV2.4.13 ARM版移植过程记录
- Fragment 分析
- 计算机网络学习笔记