计算机网络(1)

计算机网络(1)

1.简述静态路由和动态路由

参考回答
静态路由由管理员手动维护;动态路由由路由协议自动维护。
①静态路由是由系统管理员设计与构建的路由表规定的路由。其缺点是不能动态地适用网络状况的变化,当网络状况变化后必须由网络管理员修改路由表。
②动态路由是由路由选择协议而动态构建的,可以自动学习网络的拓朴结构,并更新路由表。

2.说说有哪些路由协议

参考回答
两种主要算法:距离向量法(Distance Vector Routing)和链路状态算法(Link-State Routing)。基于距离向量法:RIP、IGRP、EIGRP;基于链路状态算法:OSPF、IS-IS。
各路由器之间相互交换和维护各自的路由表,实现路由信息共享。路由协议不承担网络上终端用户之间的数据传输任务。

3.简述域名解析过程,本机如何干预域名解析?

4.简述 DNS 查询服务器的基本流程是什么?DNS 劫持是什么?

3、4详见专题

5.简述网关的作用是什么,同一网段的主机如何通信

参考回答
网关即各个网络连接点上的关卡,保证网络互连的,翻译和转换,使得不同的网络体系能够进行。
网内通信:
假设发送主机的ARP表中并无目的主机对应的表项,则发送主机会以目的主机IP地址为内容向所有主机转发,而只有目的主机接收到此ARP请求后会将自己的MAC地址和IP地址装入ARP应答后将其回复给发送主机,主机建立目的主机的对应表项(IP地址到MAC地址的映射),之后即可向目的主机发送数据。

6.简述CSRF攻击的思想以及解决方法

参考回答
CSRF全称叫做跨站请求伪造。就是黑客可以伪造用户的身份去做一些操作,进而满足自身目的。要完成一次CSRF攻击,受害者必须依次完成两个步骤:
①登录受信任网站A,并在本地生成Cookie。
②在不登出A的情况下,访问危险网站B。
解决方法:
由于服务器不能识别用户的类型从而盗取用户的信息来攻击。因此要防御该种攻击,应从服务器端着手,增强服务器的识别能力,设计良好的防御机制:token验证。
请求令牌验证(token验证):
token验证是一种比较广泛使用的防止CSRF攻击的手段,当用户通过正常渠道访问服务器时,服务器会生成一个随机的字符串保存在session中,并作为令牌(token)返回给客户端,以隐藏的形式保存在客户端中,客户端每次请求都会带着这个token,服务器根据该token判断该请求是否合法。

7.说说 MAC地址和IP地址分别有什么作用

参考回答
①IP地址是逻辑地址,IP地址的分配是根据网络的拓扑结构。
②MAC地址是物理地址,用来定义网络设备的位置。
③无论是局域网,还是广域网中的计算机之间的通信,最终都表现为将数据包从某种形式的链路上的初始节点出发,从一个节点传递到另一个节点,最终传送到目的节点。数据包在这些节点之间的移动都是由ARP(Address Resolution Protocol:地址解析协议)负责将IP地址映射到MAC地址上来完成的。

8.简述 TCP 三次握手和四次挥手的过程

参考回答
三次握手:连接服务器指定端口,建立一个TCP连接,并同步两节双方的序列号和确认号。需要客户端和服务器总共发送三个包,最终目的是为了确认双方的接收能力和发送能力是否正常。
在这里插入图片描述
①第一次握手:客户端向服务器发送SYN报文,并指明客户端的初始化序列号ISN。此时客户端处于SYN_SENT状态。
②第二次握手:服务端收到客户端的SYN报文后,会以自己的SYN报文作为应答,并且也指定自己的初始化序列号ISN,同时发送确认ACK,此时服务器处于SYN_RCVD状态。
③第三次握手:客户端收到SYN+ACK包,再回一个ACK告诉服务端已经收到回应。此时客户端处于ESTABLISHED状态,服务器收到ACK后也会处于ESTABLISHED状态。三次握手完成,成功建立连接。
(半连接队列:服务器第一次收到SYN后,此时双方还没有建立连接,服务器会把这种状态下的请求连接放在一个队列里,即半连接队列。)
四次挥手:双方任意一端都可以申请关闭连接。我们以客户端申请为例。
在这里插入图片描述
①第一次挥手:客户端发送FIN报文(FIN=1)给服务端,请求终止连接,此时客户端不发送数据,但还能接收数据。
①第二次挥手:服务端收到FIN包,回一个ACK包给客户端告诉它已经收到了,此时还没有断开socket连接,而是等待剩下的数据传输完毕。
①第三次挥手:服务端等待数据传输完毕后,向客户端发送FIN包,表明可以断开连接。
①第四次挥手:客户端收到后,回一个ACK包表明确认收到,等待一段时间(TIME_WAIT),确保服务端不再有数据发过来,然后彻底断开连接。
(TIME_WAIT:可靠的终止TCP连接,使迟来的报文有足够的时间被识别并丢弃。)

9.说说 TCP 2次握手行不行?TCP三次握手可以携带数据吗?

参考回答
不可以。举情景:如果是两次握手,客户端向服务器发送一个SYN,但是服务器半天没有收到,客户端等待一段时间后会再次向服务器发送一个SYN,此时服务器收到了第二个SYN并给出响应,双方建立了连接,但是若此时服务器又收到了第一个SYN,那么双方会再次建立一个连接,导致重复,耗费资源。
1,2次不可以,第3次可以。即为如第一次可以携带数据,如果有人恶意攻击服务器,在第一次发送SYN时携带大量数据并且疯狂发送,那么服务器会在一段时间内不断维护半连接,从另一个角度看,服务器丧失了功能。但是在第3次时,客户端已经建立了连接并且知道服务器的收发能力正常,那么携带数据并没有啥影响。

10.简述 TCP 和 UDP 的区别?

参考回答
TCP:面向连接的,可靠的 ,流式服务。首部需20个字节(不算可选项)。
UDP:无连接的,不可靠的,数据报服务。首部字段只需8个字节。

11.简述TCP连接和关闭的状态转移

参考回答
状态转换如图所示:
在这里插入图片描述
上半部分是TCP三路握手过程的状态变迁,下半部分是TCP四次挥手过程的状态变迁。(捡重要的说)
上半部分:
SYN_SENT:客户端第一次发送SYN后。
SYN_RCVD:服务器收到SYN后。
ESTABLISHED:客户端收到服务器的SYN+ACK后,以及服务器收到客户端的ACK后。
下半部分:
FIN_WAIT_1:申请关闭方A发送FIN后。
FIN_WAIT_2:A收到被申请关闭方B发来的ACK后。
CLOSE_WAIT:B收到A第一次发来的FIN,并发送ACK后。
LAST_ACK:B向A发送FIN后。
TIME_WAIT:A向B发送最后的ACK后。

12.TCP拥塞控制算法?

参考回答
慢开始、拥塞避免、快重传和快恢复。
①慢开始:当主机开始发送数据时,如果立即把一个较大的发送窗口注入网络,那么由于不清楚网络状况,很有可能引起网络拥塞。所以我们应该由小到大不断探测网络状况,逐渐增大发送窗口(倍数递增)。
同时,我们有一个慢开始门限,如果发送窗口小于门限,使用慢开始算法;如果大于,改用拥塞避免算法;如果相等,二者都可以使用。门限的设置:当网络出现拥塞,立即把门限值置为当前发送窗口的一半,并将发送窗口重新置1。
②拥塞避免:思路是让发送窗口线性递增(缓慢),每次加一。
③快重传:场景:发送方发送数据1,2,3,但接收方只收到了1,2,会不断向发送方发送数据2的重复确认,当发送方接连收到3个重复确认,便会立即重新发送数据2。
④快恢复:当发送方接连收到三次确认,就表明现在网络状况良好,会将门限值减半,开始执行拥塞避免算法。

13.说说 TCP 如何保证有序?数据发送过程?

参考回答
主机每次发送数据时,TCP就给每个数据包分配一个序列号一并发送,接收方收到数据包后会根据正确顺序进行重组。
数据发送过程:
①发送方把已发送的数据包存在缓冲区,并为每个已发送的数据包启动一个超时定时器;
②如在定时器超时之前收到了对方发来的应答信息(可能是对本包的应答,也可以是对本包后续包的应答),则释放该数据包占用的缓冲区;
③否则,重传该数据包,直到收到应答或重传次数超过规定的最大次数为止;
④接收方收到数据包后会根据正确顺序进行重组。

14.说说 TCP 可靠性保证?

参考回答
乱序重排、去重、确认号应答、超时重传、拥塞控制等。(具体如上)

15.简述 TCP 滑动窗口

参考回答
滑动窗口(发送窗口)大小以字节为单位,滑动窗口里的序号表示允许发送的数据包的序号。滑动窗口表示窗口内的数据包在没有收到确认号之前,都保留在缓冲区,同时可以再次发送。

16.说说如果三次握手时候每次握手信息对方没收到会怎么样?分情况介绍

参考回答
①如果前两次握手消息丢失,那么客户端不会得到ACK确认,超时后进行重传SYN;
②如果第三次握手消息丢失,那么服务器会根据 TCP超时重传机制,重新发送SYN+ACK包,直至收到ACK确认。如果超过重发指定次数,仍然未收到ACK应答,那么一段时间后,服务器自动关闭这个连接。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值