网络传输协议

五分钟学后端技术:如何学习Java工程师必须要会的RPC

穿精又带淫゛_ 提交于 2020-04-06 05:54:34
声明 本文转自 https://developer.51cto.com/art/201906/597963.htm 什么是RPC 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 等。 常用的RPC框架 gRPC:是 Google 公布的开源软件,基于最新的 HTTP 2.0 协议,并支持常见的众多编程语言。RPC 框架是基于 HTTP 协议实现的,底层使用到了 Netty 框架的支持。 Thrift:是 Facebook 的开源 RPC 框架,主要是一个跨语言的服务开发框架。 用户只要在其之上进行二次开发就行,应用对于底层的 RPC 通讯等都是透明的

五分钟学后端技术:如何学习Java工程师必须要会的RPC

╄→尐↘猪︶ㄣ 提交于 2020-03-30 23:01:00
声明 本文转自https://developer.51cto.com/art/201906/597963.htm 什么是RPC 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 等。 常用的RPC框架 gRPC:是 Google 公布的开源软件,基于最新的 HTTP 2.0 协议,并支持常见的众多编程语言。RPC 框架是基于 HTTP 协议实现的,底层使用到了 Netty 框架的支持。 Thrift:是 Facebook 的开源 RPC 框架,主要是一个跨语言的服务开发框架。 用户只要在其之上进行二次开发就行,应用对于底层的 RPC 通讯等都是透明的

TCP/IP 协议栈初识

白昼怎懂夜的黑 提交于 2020-03-30 14:02:42
原文: 深入浅出 TCP/IP 协议栈 0. 简介   TCP/IP 协议栈是网络通信中一系列网络协议的综合,是核心骨架。它定义了电子设备接入因特网、以及数据在它们之间的传输方式,是一份标准。TCP/IP 协议采用 4 层结构,分别是 应用层、传输层、网络层和链路层 ,每一层都呼叫它的下一层所提供的协议来完成自己的需求。我们大部分的工作是在看得见摸得着的应用层上,所以下层的事情不用太操心;其次网络协议本身是体系复杂庞大,想要精通需要花费大量时间经历,但这不妨碍简单探索一下 一个主机上的数据要经过哪些过程才能发送到对方的主机上 。 0.5 物理介质   物理介质的重要性不言而喻,就是通过光纤、双绞线、无线电波等物理手段把电脑连接起来,电信号(0和1)在其中传输。物理介质的不同决定了电信号的出传输带宽、速率、传输距离以及抗干扰性等等。   TCP/IP 协议栈分为四层,每一层都由特定的协议与对方进行通信,协议之间的通信最终会被转化成 0、1电信号通过物理介质传输才能到达对方电脑。   下图是一张 TCP/IP 协议的基本框架:   每当通过 http 发起一个请求的时候,应用层、传输层、网络层和链路层的相关协议依次对该请求进行包装并携带对应的 首部 ,最终在链路层生成 以太网数据包 ,以太网数据包通过物理介质传输给对方主机,对方接收到数据包以后,然后再一层一层采用对应的协议进行拆包

TCP/IP协议学习导览

烈酒焚心 提交于 2020-03-17 23:27:32
某厂面试归来,发现自己落伍了!>>> 前言 从字面意义上讲,有人可能会认为TCP/IP是指TCP和IP两种协议。实际生活当中有时也确实就是指这两种协议。然而在很多情况下,它只是利用IP进行通信时所必须用到的协议群的统称。具体来说,IP或ICMP、TCP或UDP、TELNET或FTP、以及HTTP等都属于TCP/IP协议。 该文章主要为《TCP-IP详解卷1:协议》归纳笔记 1. 网络的分层 网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。一个协议族,比如TCP/IP,是一组不同层次上的多个协议的组合。TCP/IP通常被认为是一个四层的协议系统。 链路层 有时也称作 数据链路层或网络接口层 ,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。 网络层 有时也称作互联网层,处理分组在网络中的活动,例如分组的选路。在TCP/IP协议族中,网络层协议包括 IP 协议(网际协议), ICMP协议 (Internet互联网控制报文协议),以及 IGMP协议 (Internet组管理协议)。 运输层 主要为两台主机上的应用程序提供端到端的通信。在TCP/IP协议族中,有两个互不相同的传输协议: TCP(传输控制协议)和UDP(用户数据报协议)。 TCP为两台主机提供高可靠性的数据通信

计算机网络

送分小仙女□ 提交于 2020-03-17 01:23:17
某厂面试归来,发现自己落伍了!>>> 数据链路层概述 基本概念 数据发送模型: 数据链路层的信道类型: 点对点信道:这种信道使用一对一的点对点通信方式。 广播信道。这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送。 链路和数据链路: 链路(link):是一条点到点的物理线路段,中间没有任何其他的点, 一条链路只是一条通路的一个组成部分 。 数据链路(data link):除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。 现最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和 软件。 一般的适配器都包括了数据链路层和物理层这两层的功能。 帧: 数据链路层传送的是帧 数据链路层就像一个数字管道 常常在两个对等的数据链路层之间画出一个数字管道,而在这条数字管道上传输的数据单位是帧。 要解决的三个基本问题 封装成帧 封装成帧就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧,用以确定帧的界限。 首部和尾部的一个重要作用就是进行帧定界。 如果发送端发送时出现故障,接收端没收到完整的头和尾,就会将帧丢掉 透明传输 若传输的数据是ASCI I码中“可打印字符(共95个)”集时,一切正常。 若传输的数据不是仅由“可打印字符”组成时

网络原理考点之HDLC协议

最后都变了- 提交于 2020-03-16 19:51:31
对于连续两年考到的知识点,得重视起来。虽然不明白为什么,这个知识点有什么用,但总归是有要考的理由。 但大概是有关于网络分析问题的思考方法吧,所以比较重要,不见得些技术是否已经过时,关键是解决思路。 如题:2019年4月 又如:2019年10月 虽然,此知识点只有一分的分值,但相对于简答题的不确定性,前面的选择和填空的分值,还是挺重要的,能拿就拿。 1、HDLC是什么? HDLC全称为高级链路控制。是一个在同步网上传输 数据、面向比特的数据链路层协议。 2、考点是考HDLC的透明传输,如何实现的呢?(以后再遇到一定要脑补出来) 每个帧前、后均有一标志码01111110,用作帧的起始、终止指示及帧的同步。标志码不允许在帧的内部出现,以免引起歧义。 采用“0比特插入法”来解决透明传输问题,步骤如下: 1、该法在发送端在没有加上标志字段时,监视除标志码以外的所有字段,当发现有连续 5 个“1”出现时,便在其后添插一个“0”,然后继续发后继的比特流。 2、在接收端,先找到F字段,同样监除起始标志码以外的所有字段,当连续发现 5 个“1”出现后,若其后一个比特“0”则自动删除它,以恢复原来的比特流; 注: 透明传输 透明传输是指数据直接通过系统中的互连功能模式而不进行 RLP 纠错,如果进行了RLP纠错即为非透明传输。 就是所谓的透明传输,不管传的是什么,所采用的设备只是起一个通道作用

网络7层架构+TCP/IP原理

怎甘沉沦 提交于 2020-03-12 08:23:40
7 层模型主要包括: 1. 物理层:主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率 等。它的主要作用是传输比特流(就是由 1、0 转化为电流强弱来进行传输,到达目的地后在转化为 1、0,也就是我们常说的模数转换与数模转换)。这一层的数据叫做比特。 2. 数据链路层:主要将从物理层接收的数据进行 MAC 地址(网卡的地址)的封装与解封装。常把这 一层的数据叫做帧。在这一层工作的设备是交换机,数据通过交换机来传输。 3. 网络层:主要将从下层接收到的数据进行 IP 地址(例 192.168.0.1)的封装与解封装。在这一层工 作的设备是路由器,常把这一层的数据叫做数据包。 4. 传输层:定义了一些传输数据的协议和端口号(WWW 端口 80 等),如:TCP(传输控制协议, 传输效率低,可靠性强,用于传输可靠性要求高,数据量大的数据),UDP(用户数据报协议, 与 TCP 特性恰恰相反,用于传输可靠性要求不高,数据量小的数据,如 QQ 聊天数据就是通过这 种方式传输的)。 主要是将从下层接收的数据进行分段进行传输,到达目的地址后在进行重组。 常常把这一层数据叫做段。 5. 会话层:通过传输层(端口号:传输端口与接收端口)建立数据传输的通路。主要在你的系统之间 发起会话或或者接受会话请求(设备之间需要互相认识可以是 IP 也可以是 MAC 或者是主机名) 6

认识计算机网络

不问归期 提交于 2020-03-11 04:41:15
计算机自诞生伊始,经历了一系列演变与发展。大型通用机计算机、超级计算机、小型机、个人电脑、工作站、便携式电以及现如今的智能手机终端都是这一过程的产物。它们性能逐年增强,价格却逐年下降,机体规模也在逐渐变小。随着计算机的发展,人们不再局限于单机模式,而是将一个个计算机连接在一起,形成一个计算机网络。从而实现信息共享,同事在能在两台物理位置较远的机器之间即时传递消息。计算机网络根据规模可以分为WAN(Wide Area Network,广域网)和LAN(Local Area Network,局域网)。将有业务往来的计算机连在一起便组成了私有网络,将多个私有网络连接一起就成了为公众使用的互联网。随着互联网爆发性地发展与普及,信息网络如同我们身边的空气,触手可及。但是在以前,对一般人来说使用一台计算机都不是那么容易的事情。 计算机与网络大致可以分为7个阶段: 一、20世纪50年代的批处理时代 二、20世纪60年代的分时系统时代 三、20世纪70年代的计算机间通信时代 四、20世纪80年代的计算机网络时代 五、20世纪90年代的互联网普及时代 六、2000年的以互联网为中心的时代 七、2010年的无论何时何地一切皆TCP/IP的网络时代 互联网是由许多独立发展的网络通信技术融合而成。能够使它们之间不断融合并实现统一的正是TCP/IP技术。 那什么是TCP/IP呢? TCP

网络基础知识 - HTTP协议

社会主义新天地 提交于 2020-03-09 17:40:24
这里还有一篇帖子写得很详细,可以拜读一下 https://www.cnblogs.com/ranyonsue/p/5984001.html 前传:HTTP协议的演变过程   HTTP(HyperText Transfer Protocol)协议是基于TCP的应用层协议,它不关心数据传输的细节,主要是用来规定客户端和服务端的数据传输格式,最初是用来向客户端传输HTML页面的内容。默认端口是80。 1.HTTP 0.9版本  1991年   这个版本就是最初用来向客户端传输HTML页面的,所以只有一个GET命令,然后服务器返回客户端一个HTML页面,不能是其他格式。利用这个版本完全可以构建一个简单的静态网站了。 2.HTTP 1.0版本  1996年   1.0版本是改变比较大的,奠定了现在HTTP协议的基础。这个版本的协议不仅可以传输HTML的文本页面,还可以传输其他二进制文件,例如图片、视频。而且还增加了现在常用的POST和HEAD命令。请求消息和响应消息也不是单一的了,规定了一些元数据字段。例如字符集、编码、状态响应码等。 3.HTTP 1.1版本  1997年   实际上是在1.0版本之后半年时间又发布了一个版本,这个版本在1.0版本的基础上更加完善了。这个版本增加了持久连接,就是说之前版本的协议一次请求就是一次TCP连接,请求完成后这个连接就关闭掉了

[计算机网络]HTTP协议

半腔热情 提交于 2020-03-07 02:37:35
转载自:https://www.cnblogs.com/ranyonsue/p/5984001.html HTTP简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。 HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。 HTTP协议工作于客户端-服务端架构为上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。Web服务器根据接收到的请求后,向客户端发送响应信息。 http请求-响应模型.jpg 主要特点 1、简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。 2、灵活