DNS
-
前言:
人类能以很多方式来标识,例如身份证等。而计算机也可以用多种方式来标识,一种是主机名(hostname),例如 www.baidu.com 等,然而主机名并没有提供关于主机位置在因特网中位置的信息,而且其字母数字不定长,难以由路由器处理,因此主机可以使用IP地址(IP address)进行标识。一个IP地址由4个字节组成,例如121.7.106.83,当从左到右扫描时,就越来越具体的获知主机在因特网的何处。人们喜欢记忆主机名,而路由器喜欢IP地址,为了折中,因此有了一种能将主机名到IP地址进行转换的目录服务,便是域名系统(DNS) -
概念:
- 域名解析,www.xxx.com转换成ip,能使用户更方便的访问互联网,而不用记忆ip地址
- DNS协议运行在UDP协议之上,使用端口号:53
-
主机解析域名的顺序:
- 浏览器缓存
- 找本机的host文件
- 路由缓存
- 找DNS服务器(本地域名,顶级域名,根域名)
HTTP
是用的最多的协议,用来访问网站的协议。使用TCP的80端口
HTTP 请求报文
HTTP响应报文
GET和POST区别
HTTP请求的一个完整过程
例如输入www.baidu.com然后回车
- 域名解析,客户端浏览器通过DNS解析到www.baidu.com的IP地址220.181.27.48
- 客户端浏览器发送一个http会话到IP地址220.181.27.48,通过三次握手建立TCP连接
- 客户端向服务器发送请求命令,比如 GET https://www.baidu.com?name=xx&addr=xx HTTP1.1
- 客户端发送请求头信息,发送完了header后会接着发送一个空白行,GET请求没有数据,POST请求要发送body数据
- 服务器接收到以上信息后,开始处理业务,处理完有了结果以后,服务器开始应答
- 服务器返回响应头信息,发送完response header以后,再发送一个空白行
- 然后服务器向客户端发送数据
- 发送完了服务器四次挥手关闭 TCP 连接
HTTP2.0和1.1的区别
Cookie和Session
- Cookie 是一种发送到客户浏览器的文本串柄句,保存在客户机硬盘上,可以用来访问某个WEB站点间持久的保持数据
- Session 是指访问者从到达某个特定主页到离开为止的那段时间。session 的运行依赖 session id,而 session id 是存在 cookie 中的,也就是说,如果浏览器禁用了 cookie ,同时 session 也会失效(但是可以通过其它方式实现,比如在 url 中传递 session_id)。当用户发送某个请求后,服务端就在用户浏览器上创建了一个Cookie,当这个Session结束时,就意味着这个Cookie过期了