"你准备好接受面试了吗?"
"当然是。请开始。"
"大。能否谈谈你对计算机网络的了解?也许我们可以从TCP是什么以及它如何工作开始。"
"嗯……嗯……嗯……"
"好的,谢谢你今天的时间。请等待未来几天的进一步通知。"
这看起来和你的经历相似吗?
不要放弃, 你绝对可以做得更好。
这是技术面试中会遇到的一些常见计算机网络问题。它们大多数与应用程序,传输和网络层有关。你可以按照本指南从头开始学习计算机网络,并向面试官清楚地解释它们。
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需要更多的资源。
需要明确的是,仍然有许多与计算机网络有关的知识。由于常见的技术面试,尤其是初级软件工程师的面试通常集中在网络层的上半部分,因此我们所看到的那些问题只是该领域的一小部分。
5G商用即将驶入快车道。根据中国移动、中国电信、中国联通三大运营商在2020年6月...
组织的首席技术官可以遵循一些最佳实践,以确保其IT运营高效,在容量范围内尽可...
近日三大运营商先后发布了2020年经营报告。整体行业发展状况有所好转,至少无论...
做设计师这些年,我一直有个类似闪电侠的标签就是在保证一定质量的情况下,出活...
这两年随着各个大厂开始进军 B 端市场,关于 B 端产品设计的讨论在不断变多。恰...
蜂窝覆盖范围不可靠的普遍问题对企业和个人都有深远的影响。在医疗保健领域,这...
假设您的任务是训练ML模型,以将数据点分类为一定数量的预定义类。 一旦完成分类...
1.除了我,每个人都不合适和你白头到老。 2.爱情就像两个拉着橡皮筋的人,受伤...
在网购的时候,查看其他买家对商品的评价,是了解该商品好坏的一个重要参考,尤...
近段时间,NSA 5G手机无法继续使用5G网络成为了手机圈的热门话题。有网友向媒体...