草庐IT

网络工程师常见面试题,1分钟就能看完

网工学姐 2023-04-05 原文

哈喽大家好,我是网工学姐~

今天我们继续来看看网络工程师在面试中的一些常见问题,后续也会持续更新,大家可以收藏起来慢慢看哦~

面试官:请说一下什么是TCP?

参考答案:TCP 是TCP/IP四层模型中的传输层协议,中文名称是传输控制协议,它是一个面向连接的、可靠的,有序的,具有流量控制的传输协议;

面试官:TCP三次握手又是什么?

参考答案:(如图所示)第一次握手:客户端给服务端发一个 SYN(syn=1) (同步序列编号)报文,并指明客户端的初始化序列号seq= x。

第二次握手:服务器收到客户端的 SYN 报文之后,必须确认客户的SYN,此时ACK确认号为1,ACK的值为x+1,并且指定了自家的初始化序号y,发送ACK+SYN包,初始序号seq为y.

第三次握手:客户端收到 SYN 报文之后,会发送一个 ACK 报文,当然,也是一样把服务器的 y+ 1 作为 ACK 的值,表示已经收到了服务端的 SYN 报文,此时客户端处于 (建立连接)ESTABLISHED 状态。服务器收到 ACK 报文之后,也处于 ESTABLISHED 状态,此时,双方已建立起了连接。

面试官:那TCP和UDP又有什么区别?

参考答案:TCP提供有连接、可靠的、有序的、有流量控制的连接,协议号为6,常常用在邮件的收发、浏览网页HTTP传输等,UDP提供无连接,不可靠,无序的,无流量控制的传输服务,协议号为7,两者均是通过端口号来区别上层应用,常常用在视频聊天QQ语音等。

小拓展:

我们已经介绍了传输层协议,那么我们常见的应用层协议有哪些呢?

1、DHCP(动态主机配置协议)

设备需要实现通信必须用到IP地址,随着移动终端设备的增长,越来越多的设备需要用到IP地址,然而非专业人员并不知道IP地址如何配置,且手工配置过于麻烦也容易造成IP地址冲突,那么这时候就需要用到DHCP了。

DHCP是一种能够给主机自动配置IP地址的协议,常常用在企业内网及校园网中,能够省去手工配置IP的过程,给人们带来极大的便利。

2、DNS(域名解析协议)

当我们访问一个网站时,大家是输入IP地址访问还是使用搜索引擎直接访问的呢?我想,要是访问百度,应该没有人能够记住百度的IP地址吧!我们知道通信设备找到目标时需要访问的实际是具体的IP地址,但是我们输入的网址是怎么能够变成IP地址的呢?

DNS是因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串通过DNS域名解析协议,我们不需要再去记那些繁琐的IP地址,让我们上网更轻松!

3、HTTP(超文本传输协议)

我们向浏览器请求网页的时候,是不是常常会看到HTTP这几个字眼,HTTP是超文本传输协议,它是互联网上应用最为广泛的一种网络协议当客户端与服务器进行通信的时候,就需要一个协议来进行沟通这个协议就是HTTP协议。

当我们客户端点击一个URL地址的时候,会给浏览器一个请求,浏览器根据请求,会向客户端请求的服务器转发这个请求,这时候服务器会给一个响应

如果不出错的话浏览器就会把服务器发送的信息传递给客户端,在客户端上进行显示出来。如果错误的话就会把错误的信息,在客户端上显示出来常见的错误信息有403、200、302等,值得注意的是,http协议永远都是客户端发起请求浏览器进行响应。

4、FTP(文件传输协议)

文件传输协议是一种基于客户端/服务器的协议,用于将文件下载到主机或与主机向服务器上传文件的场景。FTP有主动连接与被动连接两种形式,且分为两个步骤,第一个步骤是控制连接,第二个步骤是数据连接,用户可以使用用户名和密码进行身份验证接收数据,但匿名则FTP允许所有用户从FTP服务器直接访问文件和数据。

                                       

 

 

有关网络工程师常见面试题,1分钟就能看完的更多相关文章

  1. ruby - 用 Ruby 编写一个简单的网络服务器 - 2

    我想在Ruby中创建一个用于开发目的的极其简单的Web服务器(不,不想使用现成的解决方案)。代码如下:#!/usr/bin/rubyrequire'socket'server=TCPServer.new('127.0.0.1',8080)whileconnection=server.acceptheaders=[]length=0whileline=connection.getsheaders想法是从命令行运行这个脚本,提供另一个脚本,它将在其标准输入上获取请求,并在其标准输出上返回完整的响应。到目前为止一切顺利,但事实证明这真的很脆弱,因为它在第二个请求上中断并出现错误:/usr/b

  2. 网络编程套接字 - 2

    网络编程套接字网络编程基础知识理解源`IP`地址和目的`IP`地址理解源MAC地址和目的MAC地址认识端口号理解端口号和进程ID理解源端口号和目的端口号认识`TCP`协议认识`UDP`协议网络字节序socket编程接口`sockaddr``UDP`网络程序服务器端代码逻辑:需要用到的接口服务器端代码`udp`客户端代码逻辑`udp`客户端代码`TCP`网络程序服务器代码逻辑多个版本服务器单进程版本多进程版本多线程版本线程池版本服务器端代码客户端代码逻辑客户端代码TCP协议通讯流程TCP协议的客户端/服务器程序流程三次握手(建立连接)数据传输四次挥手(断开连接)TCP和UDP对比网络编程基础知识

  3. Hive SQL 五大经典面试题 - 2

    目录第1题连续问题分析:解法:第2题分组问题分析:解法:第3题间隔连续问题分析:解法:第4题打折日期交叉问题分析:解法:第5题同时在线问题分析:解法:第1题连续问题如下数据为蚂蚁森林中用户领取的减少碳排放量iddtlowcarbon10012021-12-1212310022021-12-124510012021-12-134310012021-12-134510012021-12-132310022021-12-144510012021-12-1423010022021-12-154510012021-12-1523.......找出连续3天及以上减少碳排放量在100以上的用户分析:遇到这类

  4. ruby - 检查网络文件是否存在,而不下载它? - 2

    是否可以在不实际下载文件的情况下检查文件是否存在?我有这么大的(~40mb)文件,例如:http://mirrors.sohu.com/mysql/MySQL-6.0/MySQL-6.0.11-0.glibc23.src.rpm这与ruby​​不严格相关,但如果发件人可以设置内容长度就好了。RestClient.get"http://mirrors.sohu.com/mysql/MySQL-6.0/MySQL-6.0.11-0.glibc23.src.rpm",headers:{"Content-Length"=>100} 最佳答案

  5. ruby - 404 未找到,但可以从网络浏览器正常访问 - 2

    我在这方面尝试了很多URL,在我遇到这个特定的之前,它们似乎都很好:require'rubygems'require'nokogiri'require'open-uri'doc=Nokogiri::HTML(open("http://www.moxyst.com/fashion/men-clothing/underwear.html"))putsdoc这是结果:/Users/macbookair/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/open-uri.rb:353:in`open_http':404NotFound(OpenURI::HT

  6. 深度学习12. CNN经典网络 VGG16 - 2

    深度学习12.CNN经典网络VGG16一、简介1.VGG来源2.VGG分类3.不同模型的参数数量4.3x3卷积核的好处5.关于学习率调度6.批归一化二、VGG16层分析1.层划分2.参数展开过程图解3.参数传递示例4.VGG16各层参数数量三、代码分析1.VGG16模型定义2.训练3.测试一、简介1.VGG来源VGG(VisualGeometryGroup)是一个视觉几何组在2014年提出的深度卷积神经网络架构。VGG在2014年ImageNet图像分类竞赛亚军,定位竞赛冠军;VGG网络采用连续的小卷积核(3x3)和池化层构建深度神经网络,网络深度可以达到16层或19层,其中VGG16和VGG

  7. 【网络】-- 网络基础 - 2

    (本文是网络的宏观的概念铺垫)目录计算机网络背景网络发展认识"协议"网络协议初识协议分层OSI七层模型TCP/IP五层(或四层)模型报头以太网碰撞路由器IP地址和MAC地址IP地址与MAC地址总结IP地址MAC地址计算机网络背景网络发展        是最开始先有的计算机,计算机后来因为多项技术的水平升高,逐渐的计算机变的小型化、高效化。后来因为计算机其本身的计算能力比较的快速:独立模式:计算机之间相互独立。    如:有三个人,每个人做的不同的事物,但是是需要协作的完成。    而这三个人所做的事是需要进行协作的,然而刚开始因为每一台计算机之间都是互相独立的。所以前面的人处理完了就需要将数据

  8. 三分钟集成 TapTap 防沉迷 SDK(Unity 版) - 2

    三分钟集成Tap防沉迷SDK(Unity版)一、SDK介绍基于国家对上线所有游戏必须增加防沉迷功能的政策下,TapTap推出防沉迷SDK,供游戏开发者进行接入;允许未成年用户在周五、六、日以及法定节假日晚上8:00-9:00进行游戏,防沉谜时间段进入游戏会弹窗进行提示!开发环境要求:Unity2019.4或更高版本iOS10或更高版本Android5.0(APIlevel21)或更高版本🔗Unity集成Demo参考链接🔗UnityTapSDK功能体验APK下载链接二、集成前准备1.创建应用进入开发者后台,按照提示开始创建应用;2.开通服务在使用TDS实名认证和防沉迷服务之前,需要在上面创建的应

  9. 常见网络安全产品汇总(私信发送思维导图) - 2

    安全产品安全网关类防火墙Firewall防火墙防火墙主要用于边界安全防护的权限控制和安全域的划分。防火墙•信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过。防火墙是一个由软件和硬件设备组合而成,在内外网之间、专网与公网之间的界面上构成的保护屏障。下一代防火墙•下一代防火墙,NextGenerationFirewall,简称NGFirewall,是一款可以全面应对应用层威胁的高性能防火墙,提供网络层应用层一体化安全防护。生产厂家•联想网御、CheckPoint、深信服、网康、天融信、华为、H3C等防火墙部署部署于内、外网编辑额,用于权限访问控制和安全域划分。UTM统一威胁管理(Un

  10. 【Linux操作系统】——网络配置与SSH远程 - 2

    Linux操作系统——网络配置与SSH远程安装完VMware与系统后,需要进行网络配置。第一个目标为进行SSH连接,可以从本机到VMware进行文件传送,首先需要进行网络配置。1.下载远程软件首先需要先下载安装一款远程软件:FinalShell或者xhell7FinalShellxhell7FinalShell下载:Windows下载http://www.hostbuf.com/downloads/finalshell_install.exemacOS下载http://www.hostbuf.com/downloads/finalshell_install.pkg2.配置CentOS网络安装好

随机推荐