计算机网络(五)常见面试题

1、sessioncookie的区别

相同:都是用来跟踪浏览器用户身份的会话方式。

不同:

(1)session是保存在服务器端,跟踪用户状态,可保存在集群、数据库、文件等。Cookie是保存在客户端的,是session的一种实现方式。

(2)Cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,如果考虑到安全应该使用session.

(3)Session会在一定时间内保存在服务器上,当访问增多,会占用服务器的性能,如果主要考虑到减轻服务器性能方面,应当使用cookie

4)登陆信息等重要信息存放为session。其他信息如果需要保留,可以放在cookie

服务器端如何能识别特定的用户?

原理:当第一次创建session时,服务器端会在http协议中告诉客户端,在cookie上保存sessionId,每次http请求时,客户端都会发送相应cookie信息给服务器端。

2、HTTP请求中Session实现原理

1. Java Servlet API 中引用 Session 机制来追踪客户的状态。Servlet API 中定义了 javax.servlet.http.HttpSession 接口,Servlet 容器必须实现这个接口。

2.当一个 Session 开始时,Servlet 容器将创建一个 HttpSession 对象,Servlet 容器为 HttpSession 分配一个唯一标识符,称为 Session IDServlet 容器将 Session ID 作为 Cookie 保存在客户的浏览器中。每次客户发出 HTTP 请求时,Servlet 容器可以从 HttpRequest 对象中读取 Session ID,然后根据 Session ID 找到相应的 HttpSession 对象,从而获取客户的状态信息。

3.当客户端浏览器中禁止 CookieServlet 容器无法从客户端浏览器中取得作为 Cookie Session ID,也就无法跟踪客户状态。  

Java Servlet API 中提出了跟踪 Session 的另一种机制,如果客户端浏览器不支持 CookieServlet 容器可以重写客户请求的 URL,把 Session ID 添加到 URL 信息中。  

4. HttpServletResponse 接口提供了重写 URL 的方法public java.lang.String encodeURL(java.lang.String url)  

该方法的实现机制为:   

先判断当前的 Web 组件是否启用 Session,如果没有启用 Session,直接返回参数 url。   

再判断客户端浏览器是否支持 Cookie,如果支持 Cookie,直接返回参数 url;如果不支持 Cookie,就在参数 url 中加入 Session ID 信息,然后返回修改后的 url。   

我们可以对网页中的链接稍作修改,解决以上问题:

修改前:

<a href=“maillogin.jsp“>   

修改后:  

<a href=“<%=response.encodeURL(“maillogin.jsp“)%>“>  

 3、网络计算题:

1)以下几条路由

10.1.193.0/24,10.1.194.0/24,10.1.196.0/24,10.1.198.0/24,如果进行路由汇聚,则能覆盖这几条路由地址的是()

A 10.1.192.0/22

B 10.1.200.0/22

C 10.1.192.0/21

D 10.1.224.0/20

解析:C.

10.1.193.0的二进制:00001010.00000001.11000 001.00000000

10.1.194.0的二进制:00001010.00000001.11000 010.00000000

10.1.196.0的二进制:00001010.00000001.11000 100.00000000

10.1.198.0的二进制:00001010.00000001.11000 110.00000000

则子网掩码为:11111111.11111111.11111 000.00000000(255.255.248.0)

子网掩码代表网络号+主机号,IP地址的前21位都相同,则作为网络号,后11位作为主机号。(21代表21个1)

则子网掩码&IP地址为00001010.00000001.11000 000.00000000即10.1.192.0/21.

21如何得到:网络号的位数:21个1

其中从193、194、196、198二进制可以得到11000相同。则加上10.1相同的部分。则网络号=8+8+5=21

2)Https的端口号是443

(linux)-r是搜索子目录 -n是显示行号信息,grep是搜索包含xx字符串的文件 find -name是搜索文件名包含xx

(3) 一台刚刚接入互联网的WEB服务器第一次被访问到时,不同协议的发生顺序是下面中的____。

A ARP -> DNS -> HTTP

B ARP -> HTTP -> DNS

C DNS -> HTTP -> ARP

D DNS -> ARP -> HTTP

E HTTP -> ARP -> DNS

F HTTP -> DNS -> ARP

答案:A。当服务器第一次接入到网络中时,会自动发送ARP信息,使得接入网关能找的到它;当用户使用域名请求时,先把URL中域名解析为IP地址,根据IP地址和端口80与服务器建立连接,浏览器发出读取读取文件的HTTP请求,作为TCP连接的第三次连接的报文段发送。

4)路由信息是由{目的主机所在的网络地址,下一跳地址,子网掩码}组成

5如果将网络IP段40.15.128.0/17划分成2个子网,则第一个子网IP段为40.15.128.0/18,则第二个子网为:

A 40.15.129.0/18

B 40.15.128.128/18

C 40.15.192.0/17

D 40.15.192.0/18

解:D划分子网就是占用IP一个主机位。40.15.128.0/17,从主机位分一位,从17之后的第18位,刚好是64,即在原来的基础加上64,变成 40.15.192.0/18

6)网络地址为172.16.0.0,采用子网掩码255.255.224.0 .以下说法正确的是()

A其中一个子网的广播地址为:172.16.32.255

B其中一个子网的广播地址为:172.16.128.255

C划分了8个有效子网

D划分了6个有效子网

答案:子网掩码可以知:255.255.224.0的二进制:11111111 11111111 11100000 00000000 网络号19位,主机号13位

根据IP地址可以知是B类网络,网络号为16位,则此子网ID为19-16=3位,子网个数2^3=8.去掉全为0和全为1的则8-2=6为有效子网。

广播则是主机号全为1,即后13位全为1,则广播IP例如

172.16.00011111 11111111   ==    172.16. 31.255

172.16.00111111 11111111   ==    172.16 .63.255

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值