java面试计算机网络部分

1TCP,IP,HTTP协议分别在哪一层?
回答:TCP,运输层。IP网络层,HTTP应用层。
2.http和https的区别。
回答:2.1https需要申请证书,需要钱;2.2http是明文传输,https是加密的安全传输;2.3http的端口是80,https的端口是443;2.4http连接方式很简单没有状态,https是ssl加密传输,比http安全。
3.讲一下浏览器接收到一个URL到最后展示出页面,经历了哪些过程。
回答:3.1DNS解析,3.2TCP连接,3.3http请求,3.4服务器处理请求并返回http报文,5.浏览器解析渲染页面.
4.请你说明一下,TCP协议的4次握手(断开连接4次)。
回答:由于TCP的连接是全双工的,所以两个方向都必须进行单独关闭。通信双方告诉起始值,如果2次握手则客户端选择的序列号不能被确认。4次是因为通信不可能达到100%,3次相比更优。断开需要4次是因为TCP的半关闭状态造成的,TCP是全双工的,所以关闭的时候每个方向都要单独进行关闭。关闭的方法是向发送方发送一个FIN终止连接。
具体的是4.1 客户端A向服务器B发送一个FIN,用来关闭A到服务器B的数据传送,4.2服务器B收到A的FIN,发回一个ACK,确认序列号为收到的序号加1,和SYN一样,一个FUN将占用一个序号。4.3服务器B关闭,给客户端A发送一个FIN,4.4客户端A回应一个ACK,并且将确认序号设置为收到序号+1
5.谈一谈为什么TCP要建立连接?为什么TCP可靠一些?
回答:TCP建立连接是为了可靠传输,TCP可靠是因为TCP三次握手四次挥手,有超时重传,滑动窗口,拥塞控制。
6.为什么上图中的A在TIME-WAIT状态必须等待2MSL时间呢?
第一,为了保证A发送的最后一个ACK报文能够到达B。
第二,A在发送完ACK报文段后,再经过2MSL时间,就可以使本连接持续的时间所产生的所有报文段都从网络中消失。这样就可以使下一个新的连接中不会出现这种旧的连接请求的报文段。
7.一次完整的HTTP请求过程是怎样的?
7.1.对www.baidu.com这个网址进行DNS域名解析,得到对应的IP地址
7.2.根据这个IP,找到对应的服务器,发起TCP的三次握手
7.3.建立TCP连接后发起HTTP请求
7.4.服务器响应HTTP请求,浏览器得到html代码
7.5.浏览器解析html代码,并请求html代码中的资源(如js、css、图片等)(先得到html代码,才能去找这些资源)
7.6.浏览器对页面进行渲染呈现给用户
7.7.服务器关闭关闭TCP连接
8.http1.1和http2的区别。http1.0和http1.1区别。
HTTP1.1相较HTTP1.0新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。
GET 请求指定的页面信息,并返回实体主体。
HEAD 类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头
POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。
PUT 从客户端向服务器传送的数据取代指定的文档的内容。
DELETE 请求服务器删除指定的页面。
CONNECT HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
OPTIONS 允许客户端查看服务器的性能。 TRACE 回显服务器收到的请求,主要用于测试或诊断。
HTTP1.1 和 HTTP2.0 在访问页面上的区别主要是 多路复用,这样会大大的减少 tcp 的连接数,而且还提高了 tcp 连接的使用率,加快资源的获取。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值