文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

面试中应该了解的所有有关计算机网络的知识

2024-12-03 15:44

关注

"当然是。请开始。"

"大。能否谈谈你对计算机网络的了解?也许我们可以从TCP是什么以及它如何工作开始。"

"嗯……嗯……嗯……"

"好的,谢谢你今天的时间。请等待未来几天的进一步通知。"

这看起来和你的经历相似吗?

不要放弃, 你绝对可以做得更好。

这是技术面试中会遇到的一些常见计算机网络问题。它们大多数与应用程序,传输和网络层有关。你可以按照本指南从头开始学习计算机网络,并向面试官清楚地解释它们。

[[358249]]

1. 计算机网络的体系结构是什么?

通常,计算机网络概念通常分为5个主要层。这是OSI(开放系统互连)模型和TCP / IP模型的组合,分别具有7层和4层。

> Different Models of Computer Networks (Image by Author)

2. 每层的功能是什么?

以下介绍将基于OSI网络模型:

3. 传输层中的TCP和UDP是什么?他们有什么区别?

TCP(传输控制协议)是一种面向连接的服务,这意味着它在传输数据之前建立连接,并在传输之后关闭连接。

TCP的可靠性反映在通过三向握手建立连接,以及一些机制如错误检测,流控制,拥塞控制和重传。这些功能将花费大量开销并占用处理器资源。

TCP通常用于文件传输,邮件的发送和接收以及远程登录。

UDP(用户数据报协议)不需要在数据传输之前建立连接,这意味着远程主机在接收到UDP段之后不需要进行确认。

尽管UDP无法提供可靠的传输,但它在某些情况下(通常是即时消息传递)是最有效的服务,例如实时音频和视频流。

> TCP v.s. UDP (Image by Author)

4. TCP如何建立和终止连接?

我们首先来看一下如何在客户端/服务器模型中建立TCP连接,该模型通常称为三向握手:


> TCP Connection Establishment (Image by Author)

SYN段确认从发送方到接收方的路由没有问题,但是从接收方到发送方的路由应由ACK段确认。

接下来,我们将讨论TCP如何在"客户端/服务器"模型中终止连接,这是一个四次握手过程:

5. 什么是ARQ(自动重复请求)?

ARQ是一种错误控制方法,用于在传输层和数据链路层中进行数据传输。

确认和超时用于确保可靠的数据传输。如果接收方在给定时间内没有收到确认,它将重新发送同一数据包,直到返回确认或超出预定义的重传时间为止。

有两种类型的ARQ,包括:

6. TCP如何实现流量控制?

流控制的目的是控制数据包发送的速度,以确保接收方可以及时接收到它。

TCP可以通过滑动窗口来实现流控制。发送方的滑动窗口大小可以由接收方返回的ACK段控制,这也可能影响发送速度。

7. TCP如何实现拥塞控制?

当对网络资源的请求超出其可以处理的数据量时,就会发生网络拥塞。

拥塞控制是为了防止过多的数据注入网络,以使网络链接或节点不会过载。

TCP拥塞控制采用多种策略,包括:

8. 从输入URL到显示网页的过程是什么?

此过程可以分为几个步骤:

> The Process of Accessing URL and Protocols Used (Image by Author)

8. HTTP如何保存用户状态?

HTTP是一种"无状态"协议,这意味着它不会保存请求和响应本身之间的连接状态。

那么我们如何保存用户状态?

管理会话以解决此问题。会话的主要功能是从服务器端记录用户状态。

例如,当您将一些产品放入亚马逊购物车,并考虑以后再购买时。由于实际上是无状态的,因此系统实际上不知道是谁通过HTTP保存这些项目。因此,服务器将为您创建并保留一个特定的会话,从而可以跟踪您的购物信息。

9. 什么是计算机网络中的cookie?Cookies和会话之间有什么区别?

Cookie和会话都可以跟踪和存储用户身份,但是它们通常用于不同的情况。

Cookies通常用于存储用户信息。例如,在登录网站后,下次无需再次登录,因为我们的安全详细信息已作为令牌存储在cookie中。系统仅需根据令牌值查找用户。

会话通过服务器记录用户状态。使用会话的典型场景是在线购物车。由于HTTP是无状态的,因此服务器将通过将用户标记为会话来跟踪用户状态。

Cookie数据存储在客户端(浏览器)上,而会话数据存储在服务器端。这意味着与cookie相比,会话具有更高的安全级别。

10. HTTP和HTTPS有什么区别?

HTTP超出了TCP的范围,并使用纯文本传输内容。客户端和服务器端都无法验证彼此的身份。

HTTPS(安全超文本传输协议)是运行在SSL / TLS之外的HTTP,而SSL / TLS运行在TCP / IP之外。传输的所有内容均已加密。

因此,HTTPS的安全性高于HTTP,但是HTTPS比HTTP需要更多的资源。

需要明确的是,仍然有许多与计算机网络有关的知识。由于常见的技术面试,尤其是初级软件工程师的面试通常集中在网络层的上半部分,因此我们所看到的那些问题只是该领域的一小部分。

 

来源:今日头条内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯