(计算机网络)应用层

1.为什么需要应用层

应用层提供使用tcp,udp使用的方式

协议就是制定的规则

2.域名服务器概述

域名是唯一的

新增域名,大家都要修改这个文本文件,所以要进行集中管理这个文本文件,而不是使用本地的hosts文件

hosts文件在Windows系统和Linux系统中相应的路径可以找到

该文件能帮助我们快速定位做出域名解析

从浏览器输入www.baidu.com时,浏览器先去本地的hosts文件当中找有没有www.baidu,com(域名),有的话直接跳到该ip地址,就不需要先访问本地的域名解析服务器,再去访问远程(这样就提升了效率)

像www.baidu.com其实是有层次的

域名系统DNS,是一个名称空间,具备分布式的能力,域名系统不能挂,所以用分布式的方式来部署

从浏览器输入www.baidu.com时,会先来到DNS这个域名解析服务器,域名服务器会将输入的内容转换成具体的百度服务器ip地址,对方的浏览器ip地址是有ip的。

对于域名的划分:

其中,.cn表示中国,.us美国,.uk英国 .edu教育部门,.gov表示政府部门

例如:

mail邮件服务 bbs论坛服务

四级域名为某一个功能模块或者是组织架构,前面的是隶属于某一个机构。

权限域名服务器用来做真正的解析(将www转换成ip地址)

域名不是以域为单位,而是以区为单位

默认是都在一起的,若常用,独立划分出来成为一个单独的区,是一个独立的域名服务器,做成独立的一台服务器。

3. 域名解析过程

域名服务器分为四种,是根据等级来划分的

对于顶级的域名服务器

一个区就有一个权限域名服务器,主要的作用就是用来解析的。

A会将数据同步给B主机,若在这个过程中,若有DNS的请求发送给B,这样的请求允许发生吗?

若允许发生,这样的数据是不准确的,为了保证数据的一致性,所以不允许发生。

对于主机而言,在做递归查询,请别人帮忙,对本地域名服务器,在做迭代查询,主动完成

冷门数据没有被访问,就删除。热点数据:经常被访问,只有热点数据一直保存在缓存里面。

4.万维网要解决的问题

网站有多个页面所构成,或是说有很多多媒体所组成,集合在一起,成为一个站点,资源可以相互跳转---使用超链接来实现

超文本:不止包含文本信息,还能包含除了文本以外的其他信息(图文声像)

最重要的特点就是:跳转

从浏览器向服务器请求超文本资源(文字 图片声音等等)资源会从服务器发送到浏览器

浏览器的身份就是一个客户端

能成功返回:前提是要能找到资源

tomcat(用javaweb开发) nginx(静态资源服务器 服务器性能较好 响应速度快)

URL(统一资源定位符)--标识互联网文档 相当于文件的身份证号

UDP发送对方就不会响应

事实上服务器上有很多html页面

5.URL的概念

网页上面输入的网址,其实就是URL

其中:80端口是默认的端口,可以不写 URL中http没有时默认会自动带上 www也是不写也没有关系 其中,index.html是主页,当没有其他地址,默认展示这个

6.http协议

当请求和响应完整的结束,TCP连接就会被释放

点击--跳转--(完成的是超链接的功能)--相当于浏览器又向服务器发起了一次请求最终获得

7.cookie的实现原理

无状态:就是没有记录上一次请求留下的数据

cookie是客户端的会话技术 会话就是客户端和服务器的一次交互

客户端和服务器的交互产的数据可以保存下来

cookie(保存在客户端的本地) session(保存在服务器的本地)

若是使用了cookie技术,客户端就需要开辟一段空间来保存这一次交互所产生的数据

若是使用了session技术,服务器就需要开辟一段空间来保存这一次交互所产生的数据

使用cookie的流程:

转账操作:同时成功或者同时失败

这些动作是不能再被分割的整体

一次的请求和响应是一个RTT

客户和服务器要去发送请求,整个过程需要三次握手:

第一次握手:客户端发送请求给服务器

第二次握手:服务器返回响应

第三次握手:客户端将请求的报文带给服务器

最后服务器将客户端需要的资源传回客户端

所需时间:三次握手+最后传输文档所需的时间

8.持续连接

版本为1.1的http就使用了持续连接

但是会存在一些问题:

流水线的出现,大大提升了利用率

解决方法:

当客户端收到12395的时候,就相当于服务器告诉浏览器响应结束了

9.代理服务器

很好的提高性能的方式:代理服务器

代理的意思就是帮助做一些事情,提供代理服务

代理服务器:代表你来发送http请求(相当于房屋中介,你只需提出要求)

代理服务器:又称万维网的高速缓存

流量强度<1--说明性能是不错的,流量在局域网里面是能够被承载下来的

若没有使用代理服务器,就会有一定的弊端:

链路时延较长,如何解决?--

使用代理服务器,所有的请求都会发送给代理服务器,由代理服务器去代理这次请求。

例如A向服务器发起请求,A会先将需求告诉代理服务器,然后由代理服务器去发起请求

代理服务器的好处:就是一个高速缓存(响应的资源会放到代理服务器内部)

若是B也想访问那个服务器,直接先访问代理服务器,这样就减少了链路上的流量

但是在这个过程中,代理服务器也会访问服务器,但是会带一个最后修改时间,如果和服务器的时间相同,服务器会返回一个响应304(不会给你资源了,直接使用你缓存的就可以)

若服务器的最后修改时间是最新的,这时,服务器就会返回最真实的页面给客户端,此时,状态码就成为200.这样就减少了链路上的浏览压力。

服务器中存储最后一次修改时间

10.http协议的请求报文

请求首部--请求头(里面放的是键值对的信息)--一个名称对应一个值(表示一个属性和属性值)

报文:由请求行,请求头,请求体组成

post请求:新的资源的建立,已有资源的修改

11.http响应

相关推荐
starstarzz2 小时前
计算机网络实验四:Cisco交换机配置VLAN
网络·计算机网络·智能路由器·vlan·虚拟局域网
HSunR6 小时前
计算机网络
网络·计算机网络
像污秽一样6 小时前
计算机网络简答题
计算机网络
背着黄油面包的猫17 小时前
计算机网络基础知识
计算机网络
a_weng0820 小时前
CS 144 check6: buiding an IP router
网络·网络协议·计算机网络
lfwendula01 天前
对称多处理器 Symmetric multiprocessing
计算机网络
写代码的小阿帆1 天前
计算机网络压缩版
计算机网络
打鱼又晒网1 天前
linux网络套接字 | 深度解析守护进程 | 实现tcp服务守护进程化
linux·网络协议·计算机网络·tcp
njnu@liyong2 天前
图解HTTP-HTTP报文
网络协议·计算机网络·http
GISer_Jing2 天前
2025前端面试热门题目——计算机网络篇
前端·计算机网络·面试