面试中应该相识的所有有关盘算机网络的知识

作者:亚博全站app官网登录发布时间:2021-11-16 00:46

本文摘要:有关处置惩罚技术面试中常见盘算机网络问题的完整指南 Photo by Su San Lee on Unsplash你准备好接受面试了吗?固然是。请开始。大。 能否谈谈你对盘算机网络的相识?也许我们可以从TCP是什么以及它如何事情开始。嗯……嗯……嗯……好的,谢谢你今天的时间。 请等候未来几天的进一步通知。这看起来和你的履历相似吗?不要放弃, 你绝对可以做得更好。这是技术面试中会遇到的一些常见盘算机网络问题。 它们大多数与应用法式,传输和网络层有关。

亚博全站app官网

有关处置惩罚技术面试中常见盘算机网络问题的完整指南> Photo by Su San Lee on Unsplash"你准备好接受面试了吗?""固然是。请开始。""大。

能否谈谈你对盘算机网络的相识?也许我们可以从TCP是什么以及它如何事情开始。""嗯……嗯……嗯……""好的,谢谢你今天的时间。

请等候未来几天的进一步通知。"这看起来和你的履历相似吗?不要放弃, 你绝对可以做得更好。这是技术面试中会遇到的一些常见盘算机网络问题。

它们大多数与应用法式,传输和网络层有关。你可以根据本指南重新开始学习盘算机网络,并向面试官清楚地解释它们。1.盘算机网络的体系结构是什么?通常,盘算机网络观点通常分为5个主要层。这是OSI(开放系统互连)模型和TCP / IP模型的组合,划分具有7层和4层。

> Different Models of Computer Networks (Image by Author)2.每层的功效是什么?以下先容将基于OSI网络模型:· 应用法式层:应用法式层的任务是指定主机运行的应用法式历程之间的通信协议或接口。应用层中有一些通用协议,例如HTTP(超文本传输协议),DNS(域名系统)和SMTP。· 表现层:此层主要卖力未来自应用法式层的数据转换为所需的花样(例如ASCII)。

此处完成了一些事情,例如数据加密/解密和压缩。· 会话层:此层卖力在两个历程之间建设和维护毗连或会话。它还允许历程添加检查点以举行同步。

· 传输层:它通过网络在应用法式之间提供端到端的数据(段)传输服务。传输层最著名的协议是TCP(传输控制协议)和UDP(用户数据报协议)。· 网络层:网络层卖力数据包(数据块)的路由。

详细来说,网络层选择合适的传输路径,并从其他网络发送和吸收IP(互联网协议)数据包。· 数据链路层:该层未来自网络层的IP数据包封装为帧,并通过链路节点发送它们。帧传输取决于MAC(消息会见控制)地址。

可以通过发送ARP(地址剖析协议)请求来获取吸收者的MAC地址,以检察是否有任何节点具有所需的IP地址。· 物理层:卖力节点之间的位传输,这是物理毗连(通过物理数据链路),并尽可能消除设备之间的差异。3.传输层中的TCP和UDP是什么?他们有什么区别?TCP(传输控制协议)是一种面向毗连的服务,这意味着它在传输数据之前建设毗连,并在传输之后关闭毗连。

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

TCP通常用于文件传输,邮件的发送和吸收以及远程登录。UDP(用户数据报协议)不需要在数据传输之前建设毗连,这意味着远程主机在吸收到UDP段之后不需要举行确认。只管UDP无法提供可靠的传输,但它在某些情况下(通常是即时消息通报)是最有效的服务,例如实时音频和视频流。

> TCP v.s. UDP (Image by Author)4. TCP如何建设和终止毗连?我们首先来看一下如何在客户端/服务器模型中建设TCP毗连,该模型通常称为三向握手:· 客户端:它发送一个SYN段,该段请求服务器将其序列号与客户端的序列号同步。· 服务器:从客户端吸收到数据包后,服务器将返回SYN和ACK段,这会通知客户端已收到该数据包,并要求其提供用于确认的预期序列号。· 客户端:它发送回带有ACK段的数据包,该数据包通知服务器已正确吸收了返回的数据包。> TCP Connection Establishment (Image by Author)SYN段确认从发送方到吸收方的路由没有问题,可是从吸收方到发送方的路由应由ACK段确认。

接下来,我们将讨论TCP如何在"客户端/服务器"模型中终止毗连,这是一个四次握手历程:· 客户端:决议关闭毗连后,客户端将向服务器发送FIN段。然后,客户端将进入FIN_WAIT_1状态,等候来自服务器简直认。· 服务器:一旦吸收到来自客户端的FIN段,它将发送回ACK段。· 客户端:从服务器吸收到ACK段后,它进入FIN_WAIT_2状态,服务器正在等候另一端发送的FIN段。

· 服务器:它还会关闭与客户端的毗连,并在发送ACK段后发送FIN段。· 客户端:吸收到来自服务器的ACK段后,客户端会发回最终的ACK段举行确认。之后,客户端将进入TIME_WAIT状态,如果另一端未收到最终的ACK段,则客户端将在一段时间后正式关闭。5.什么是ARQ(自动重复请求)?ARQ是一种错误控制方法,用于在传输层和数据链路层中举行数据传输。

确认和超时用于确保可靠的数据传输。如果吸收方在给定时间内没有收到确认,它将重新发送同一数据包,直到返回确认或超出预界说的重传时间为止。有两种类型的ARQ,包罗:· 停止等候ARQ:停止等候ARQ的基本思想是发送方每次发送数据包后都市停止数据传输。如果在给定时间后未收到吸收方简直认,则传输将被视为失败。

这意味着应该重新传输数据,直到收到确认为止。如果吸收方收到重复的数据包,则应放弃此数据包并同时发送回确认。· Go-Back-N ARQ:发件人维护一个滑动窗口,该窗口中的数据包可以一连发送,无需等候确认。

吸收器通常仅吸收有序数据包,并在最后一个数据包到达后发回累积ACK。6. TCP如何实现流量控制?流控制的目的是控制数据包发送的速度,以确保吸收方可以实时吸收到它。TCP可以通过滑动窗口来实现流控制。发送方的滑动窗口巨细可以由吸收方返回的ACK段控制,这也可能影响发送速度。

7. TCP如何实现拥塞控制?当对网络资源的请求超出其可以处置惩罚的数据量时,就会发生网络拥塞。拥塞控制是为了防止过多的数据注入网络,以使网络链接或节点不会过载。TCP拥塞控制接纳多种计谋,包罗:· 启动缓慢:TCP不会首先将少量数据发送并在每个RTT(往返时间)后按指数方式逐渐增加拥塞窗口(cwnd)巨细,而不是将大量数据吸收到网络中。

· 制止拥塞:拥塞窗口(cwnd)巨细到达阈值后,它开始累加地增加以制止网络拥塞。· 拥塞检测:这发生在发生拥塞时,拥塞窗口巨细将成倍减小。假定在需要重发分组时发生拥塞。· 快速重传和恢复(FRR):这是一种拥塞控制算法,可以快速恢复丢失的数据包。

如果没有FRR,TCP将通过计时器暂停传输。在暂停期间,不会传输新的数据包。

使用FRR,如果吸收器收到一个分段,它将立刻返回一个重复的ACK分段。发送方将在吸收到三个重复的ACK段后假定该段丢失。

FRR淘汰了重传的延迟。8.从输入URL到显示网页的历程是什么?此历程可以分为几个步骤:· DNS剖析。· 建设一个TCP毗连。

· 发送HTTP请求。· 服务器处置惩罚该请求并返回HTTP响应。· 浏览器出现网页。· 精密毗连。

> 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需要更多的资源。

参考文献· OSI模型层· TCP / IP模型· 传输控制协议—维基百科· TCP毗连建设· TCP毗连终止· 停止等候ARQ· Go-Back-N ARQ· TCP / IP协议如那边理数据通信· 停止和等候,GoBackN和选择性重复之间的区别· TCP拥塞控制需要明确的是,仍然有许多与盘算机网络有关的知识。由于常见的技术面试,尤其是低级软件工程师的面试通常集中在网络层的上半部门,因此我们所看到的那些问题只是该领域的一小部门。希望您下次面试时发现它有用并祝您好运!(本文由闻数起舞翻译自Ryan Lamb的文章《All You Should Know About Computer Networks in Technical Interviews》,转载请注明出处,原文链接:https://towardsdatascience.com/all-you-should-know-about-computer-network-in-technical-interviews-5478f45368ac)。


本文关键词:面试,中,应该,相识,的,所有,有关,盘算机,网络,亚博全站app官网登录

本文来源:亚博全站app官网登录-www.sxfhcl.com