网络传输协议

后端开发工程师面试题汇总 | 网络知识

本秂侑毒 提交于 2019-12-01 18:13:01
无论做前端开发还是后端开发,网络知识是必备的知识。这部分知识是基础中的基础,是我们必须掌握的内容。网络相关的问题也是在面试过程中经常被问到的内容。本文主要梳理了一下网络相关的主要知识点及面试中经常被问到的内容,希望对大家有所帮助。 OSI有哪几层,会画出来,知道主要几层的各自作用 OSI(Open System Interconnect),即开放式系统互联,是ISO(国际标准化组织)组织在1985年研究的网络互连模型。其一共有7层: 1. 应用层(数据):确定进程之间通信的性质以满足用户需要以及提供网络与用户应用 2. 表示层(数据):主要解决拥护信息的语法表示问题,如加密解密 3. 会话层(数据):提供包括访问验证和会话管理在内的建立和维护应用之间通信的机制,如服务器验证用户登录便是由会话层完成的 4. 运输层(段):实现网络不同主机上用户进程之间的数据通信,可靠 与不可靠的传输,传输层的错误检测,流量控制等 5. 网络层(包):提供逻辑地址(IP)、选路,数据从源端到目的端的 传输 6. 数据链路层(帧):将上层数据封装成帧,用MAC地址访问媒介,错误检测与修正 7. 物理层(比特流):设备之间比特流的传输,物理接口,电气特性等* TCP/IP有哪几层,会画出来,知道所有层数的作用,会列举各层主要的协议名称 TCP/IP分层模型(TCP/IP Layening Model

计算机网络基础 【 重点】

微笑、不失礼 提交于 2019-12-01 04:29:44
计算机网络概述 11111 OSI 参考模型 OSI(Open System Interconnect)即开放系统互联,一般都叫OSI参考模型,是国际标准化组织在1985年研究的网络互联模型,该体系结构标准定义了网络互联的七层框架(物理层、数据链路层、网络层、传输层、会话层、表示层和应用层),即OSI开放系统互连参考模型.在这一框架下进一步详细规定了每一层的功能,以实现开放系统环境中的互连性、互操作性和应用的可移植性,接下来将整理一些常用功能的知识点. 物理层次 协议作用 应用层 为用户提供服务,给用户一个接口 表示层 为数据提供表示,加密与压缩 会话层 确定数据是否需要传输,建立管理与终止会话 传输层 可靠与不可靠的数据传输,以及后期的错误检测 网络层 进行逻辑地址编址,实现不同网络之间的路由选择 数据链路层 进行硬件(MAC)地址编址有,差错的校验 物理层 电气特性,设备之间进行比特流的传输 以上的列表是一个通用的网络系统模型,并不是一个协议定义.实际上OSI模型从来没有被真正实现过,但是,出于其模型的广泛指导性,现在的网络协议都已经纳入了OSI参考模型的范围之内,OSI参考模型一共有7层,每层的作用在上面有说明,这也是网络方面的基础知识. ◆每层间作用◆ 物理层: 电器特性,设备之间比特流的传输,实现比特流的透明传输. 主要设备: 中继器、集线器 主要功能:

pytho——OSI七层模型

旧巷老猫 提交于 2019-11-30 18:04:12
OSI七层模型图 从图中我们已经了解到OSI七层分为:物理层;数据连接层;网络层;传输层;会话层;表示层;应用层。 OSI七层各层的讲解: 1.物理层: 在OSI参考模型中,物理层(Physical Layer)是参考模型的最低层,也是OSI模型的第一层。 物理层的主要功能是:利用传输介质为数据链路层提供物理连接,实现比特流的透明传输。 物理层的作用是实现相邻计算机节点之间比特流的透明传送,尽可能屏蔽掉具体传输介质和物理设备的差异。使其上面的数据链路层不必考虑网络的具体传输介质是什么。“透明传送比特流”表示经实际电路传送后的比特流没有发生变化,对传送的比特流来说,这个电路好像是看不见的。 设备:网卡,网线,集线器,中继器,调制解调器 2.数据链路层: 数据链路层(Data Link Layer)是OSI模型的第二层,负责建立和管理节点间的链路。该层的主要功能是:通过各种控制协议,将有差错的物理信道变为无差错的、能可靠传输数据帧的数据链路。 在计算机网络中由于各种干扰的存在,物理链路是不可靠的。因此,这一层的主要功能是在物理层提供的比特流的基础上,通过差错控制、流量控制方法,使有差错的物理线路变为无差错的数据链路,即提供可靠的通过物理介质传输数据的方法。 该层通常又被分为介质访问控制(MAC)和逻辑链路控制(LLC)两个子层。

面试中必备的网络相关知识

北慕城南 提交于 2019-11-30 12:28:43
废话不说,直接上干货。 1.协议的概念和作用 为了能让计算机之间能够通信,计算机需要定义通信规则,这些规则就是协议。规则有多种,协议也有多种。协议就是数据封装格式+传输。 2.OSI七层模型 应用层:提供网络服务和最终用户软件之间的接口服务。 表示层:数据的表示、安全、压缩。 会话层:建立、管理、中止会话。 传输层:定义传输数据的协议端口号,以及流控和差错校验。 网络层:进行逻辑地址寻址,实现不同网络之间的路径选择。 数据链路层:建立逻辑连接、进行硬件地址寻址、差错检验等功能。 物理层:网线、同轴电缆等。 3.TCP/IP参考模型 常用的协议: TCP/IP协议被称为传输控制协议/互联网协议,又称网络通讯协议,是由网络层的IP协议和传输层的TCP协议组成的,是一个很大的协议集合。 物理层和数据链路层没有定义任何特定协议,支持所有的标准和专用的协议。 网络层定义了网络互连,也就是IP协议: (1) 网际协议(IP):负责主机和网络之间寻址和路由数据包。 (2) 地址解析协议(ARP):获得同一物理网络中的硬件主机MAC地址。 (3) 网际控制消息协议(ICMP):发送消息,并报告有关数据包的传送错误。 (4) 互联网管理协议(IGMP):IP主机向本地多路广播路由器报告主机组成员。 传输层定义了TCP(传输控制协议)和UDP(用户数据报协议)。 应用层定义了HTTP(超文本传输协议)

计算机网络太难?了解这一篇就够了

混江龙づ霸主 提交于 2019-11-30 11:56:55
计算机网络、计算机操作系统这两个“兄弟”是所有开发岗位都需要“结拜”的,不管你是 Java、C++还是测试。对于后端开发的童鞋来说,计算机网络的重要性不亚于语言基础,毕竟平时开发经常会和网络打交道,比如:抓个包等等。所以对这一块知识点的准备还是要抱着敬畏之心,不要放过任何一个漏网之题。下面分享下我的学习过程: 1.看书:对于计算机比较基础的模块,我都是比较推荐找一本经典的书籍来好好学习下,不可以只看面经就去面试了。我一共看了两本书:汤小丹的《计算机操作系统》和《图解HTTP》。《计算机操作系统》是教科书,所以知识点相对比较基础,覆盖范围也比较广,非科班的学生还是很有必要看一看的。《图解HTTP》这本书用很多插图将一些知识点讲的通俗易懂,看起来也很快,还是比较推荐的。 2.做笔记:计算机网络的知识点还是比较多的,需要看书的时候做好笔记,方便复习。而且做笔记的时候可以就这个知识点去百度下,看看有没有自己遗漏的点,再给补充进来。在这里说下,我为什么一直强调做笔记?好处 1:做笔记是第 1 次你对书中的知识点的回顾,加深记忆;好处 2:而且如果你是发表在公关社区的肯定要保证最大限度的正确性,就需要再去看看这个知识点,核对下自己是否有理解偏差和遗漏等,这样就完成了知识点的深挖;好处3:正在到面试复习的时候,你是不太可能重新看一本书的,那么笔记就显得很重要了,自己做的笔记,复习起来很快

RPC原理及RPC实例分析

老子叫甜甜 提交于 2019-11-30 07:51:23
RPC(Remote Procedure Call):远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的思想。 RPC 是一种技术思想而非一种规范或协议,常见 RPC 技术和框架有: 应用级的服务框架:阿里的 Dubbo/Dubbox、Google gRPC、Spring Boot/Spring Cloud、Facebook 的 Thrift、Twitter 的 Finagle 等。 远程通信协议:RMI、Socket、SOAP(HTTP XML)、REST(HTTP JSON)。 通信框架:MINA 和 Netty。 ps: Google gRPC 框架是基于 HTTP2 协议实现的,底层使用到了 Netty 框架的支持。 1. RPC 框架 一个典型 RPC 的使用场景中,包含了服务发现、负载、容错、网络传输、序列化等组件,其中“RPC 协议”就指明了程序如何进行网络传输和序列化。 图 1:完整 RPC 架构图 2. RPC 核心功能 一个 RPC 的核心功能主要有 5 个部分组成,分别是:客户端、客户端 Stub、网络传输模块、服务端 Stub、服务端等。 图 4:RPC 核心功能图 下面分别介绍核心 RPC 框架的重要组成: 客户端(Client):服务调用方。 客户端存根(Client Stub):存放服务端地址信息

TCP/IP协议栈

可紊 提交于 2019-11-30 06:15:52
文章目录 一、参考书籍 二、必须掌握的内容 1.TCP/IP协议体系的认知 2.数据链路层 3.网络层 4.传输层 5.应用层 三、常见面试题目 1.分层的概念 2.数据链路层 3.网络层 (1)IP协议 (2)ICMP协议 四、传输层 1.UDP协议 2.TCP协议 五、应用层 1.DNS 2.http基本格式 六、参考 一、参考书籍 (1)TCP/IP详解 卷1:协议 (2)计算机网络:自顶向下方法 二、必须掌握的内容 1.TCP/IP协议体系的认知 (1)分层。一部分处于用户态,一部分处于内核态。数据链路层,网络层,传输层封装于操作系统内核态。应用层存在于操作系统的用户空间,包括DNS,FTP,HTTPs,HTTP,工作中接触较多的是应用层的部分。但其它层的原理必须理解,面试考察。 (2)层与层之间下层对上层是透明的,传输在每一层是对等的。 2.数据链路层 (1)以太网帧的格式。 (2)MTU(最大传输单元)的概念。 (3)ARP协议和RARP协议(地址协议和逆地址协议,网卡MAC地址和IP地址互查机制)(网络层和链路层的中间层)ARP报文格式,查询原理,缓存机制 3.网络层 (1)掌握IP首部格式:如16位分片标识、DF不分片标志、MF更多分片标志、13位片偏移、8位生存时间TTL、16位的首部检验和等等。 (2)掌握如何IP分片:如总长大于MTU值,画分片情况

zz 花了一个星期,我终于把RPC框架整明白了!

耗尽温柔 提交于 2019-11-29 21:14:01
https://www.jianshu.com/p/193634cca86a RPC(Remote Procedure Call):远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的思想。 RPC 是一种技术思想而非一种规范或协议,常见 RPC 技术和框架有: 应用级的服务框架:阿里的 Dubbo/Dubbox、Google gRPC、Spring Boot/Spring Cloud。 远程通信协议:RMI、Socket、SOAP(HTTP XML)、REST(HTTP JSON)。 通信框架:MINA 和 Netty。 目前流行的开源 RPC 框架还是比较多的,有阿里巴巴的 Dubbo、Facebook 的 Thrift、Google 的 gRPC、Twitter 的 Finagle 等。 下面重点介绍三种: gRPC:是 Google 公布的开源软件,基于最新的 HTTP 2.0 协议,并支持常见的众多编程语言。RPC 框架是基于 HTTP 协议实现的,底层使用到了 Netty 框架的支持。 Thrift:是 Facebook 的开源 RPC 框架,主要是一个跨语言的服务开发框架。 用户只要在其之上进行二次开发就行,应用对于底层的 RPC 通讯等都是透明的。不过这个对于用户来说需要学习特定领域语言这个特性,还是有一定成本的。 Dubbo

TCP/IP协议分层详解

有些话、适合烂在心里 提交于 2019-11-29 19:08:54
TCP/IP协议分层详解 目录 TCP/IP 和 ISO/OSI TCP/IP分层模型 数据的封装与分用 其他相关概念 TCP/IP 通信传输流 负责传输的 IP 协议 正文 回到顶部 TCP/IP 和 ISO/OSI      ISO/OSI模型,即开放式通信系统互联参考模型(Open System Interconnection Reference Model),是国际标准化组织(ISO)提出的一个试图使各种计算机在世界范围内互连为网络的标准框架,简称OSI。   TCP/IP协议模型(Transmission Control Protocol/Internet Protocol),包含了一系列构成互联网基础的网络协议,是Internet的核心协议,通过20多年的发展已日渐成熟,并被广泛应用于局域网和广域网中,目前已成为事实上的国际标准。TCP/IP协议簇是一组不同层次上的多个协议的组合,通常被认为是一个四层协议系统,与OSI的七层模型相对应。 回到顶部 TCP/IP分层模型    应用层   应用层决定了向用户提供应用服务时通信的活动。|| 应用层负责处理特定的应用程序细节。   TCP/IP 协议族内预存了各类通用的应用服务。比如,FTP(File Transfer Protocol,文件传输协议)和 DNS(Domain Name System,域 名系统

TCP/IP

﹥>﹥吖頭↗ 提交于 2019-11-29 12:31:50
1、TCP/IP模型 TCP/IP协议通信的过程其实就是数据入栈出栈的过程。入栈就是数据发送方每层不断的封装首部和尾部,添加一些传输的信息,保证能传输到目的地、出站就是数据接收方每层不断的拆除首部和尾部,得到最终的传输数据。 下图是以http协议来说明: 二、数据链路层 物理层负责的是0、1比特流与物理设备电压高低、光的闪灭之间的互换。 数据链路层负责的就是将这些0、1序列划分为数据帧,然后从一个节点(主机)传输到另一个节点(主机)。这些节点是通过MAC来唯一标识的(MAC,物理地址,一个主机有一个MAC地址)。 封装成帧:把网络层数据报加头和尾,封装成帧,帧头包括了源MAC地址和目的MAC地址; 透明传输:0比特填充、转义字符; 可靠传输:在出错率很低的链路上很少用(因为一根线连着彼此,当然不会出错),在 无线链路WLAN 会保证可靠传输; 差错检测(CRC):接受者检测错误,如果发现错误,就丢弃该帧; 三、网络层 1、IP协议 IP协议是TCP/IP协议的核心,所有的TCP,UDP,IMCP,IGMP的数据 都以IP数据格式 传输。 要注意的是, IP不是可靠的协议 ,这是说,IP协议 没有提供一种数据未传达以后的处理机制 ,这被认为 是上层协议:TCP或UDP要做的事情 。 1.1 IP地址 数据链路层中通过MAC地址来识别两个不同的节点,在IP层(网络层)通过IP地址来识别