网络传输

计算机网络基础

邮差的信 提交于 2019-12-06 16:47:02
网络层次划分 为了使不同计算机厂家生产的计算机能够相互通信,以便在更大的范围内建立计算机网络,国际标准化组织(ISO)在1978年提出了“ 开放系统互联参考模型 ” 即著名的OSI/RM模型(Open System Interconnection/Reference Model)。 它将计算机网络体系结构的通信协议划分为七层 自下而上依次为: 物理层(Physics Layer) 数据链路层(Data Link Layer) 网络层(Network Layer) 传输层(Transport Layer) 会话层(Session Layer) 表示层(Presentation Layer) 应用层(Application Layer) 其中第四层完成数据传送服务, 上面三层面向用户。 除了标准的OSI七层模型以外,常见的网络层次划分还有TCP/IP四层协议以及TCP/IP五层协议 它们之间的对应关系如下图所示: OSI七层网络模型 TCP/IP协议是互联网基础协议,没有它就根本不可能上网 任何和互联网有关的操作都离不开TCP/IP协议 。 不管是OSI七层模型还是TCP/IP的四层、五层模型,每一层中都要自己的专属协议,完成自己相应的工作以及与上下层级之间进行沟通。 由于OSI七层模型为网络的标准层次划分,所以我们以OSI七层模型为例从下向上进行一一介绍。 物理层 物理层

2019-2020-1学期 20192419 《网络空间安全专业导论》第九周学习总结 (读书笔记)

。_饼干妹妹 提交于 2019-12-06 10:27:42
第三章 网络安全 3.1 网络安全及管理概述 3.1.1 网络安全的概念 网络安全是个涉及计算机科学、网络技术、通信技术、密码技术、信息安全技术、应用数学、数论、信息论等的综合性领域。 网络安全包括网络硬件资源和信息资源的安全性。其中,网络硬件资源包括通信线路、通信设备(路由机、交换机等)、主机等,要实现信息快速安全的交换,必须有一个 可靠的物理网络。信息资源包括维持网络服务运行的系统软件和应用软件,以及在网络中存储和传输的用户信息数据等。信息资源的安全也是网络安全的重要组成部分。 3.1.2 网络管理的概念 网络管理是指监督、组织和控制网络通信服务,以及信息处理所必需的各种活动的总称。其 目标 是确保计算机网络的持续正常运行,使网络中的资源得到更加有效的利用,并在计算机网络运行出现异常时能及时响应和排除故障。从网络管理范畴来分类,可分为对网络设备的管理和对行为的管理。 3.1.3 安全网络的特征 安全网络的特征即为能够通过网络安全与管理技术或手段保障可靠性、可用性、保密性、完整性、可控性、可审查性的网络。 可靠性:网络信息系统能够在规定条件下和规定的时间内完成规定功能的特性。可靠性是所有网络信息系统建设和运行的目标。 可用性:可用性是指网络信息可被授权实体访问并按需求使用的特性。 保密性:保密性是指网络信息不被泄露给非授权的用户、实体或过程,或者供其的特性。 完整性

【计算机网络】WebSocket实现原理分析

大兔子大兔子 提交于 2019-12-06 08:49:28
1.介绍一下websocket和通信过程? 1.1 基本概念 [!NOTE] Websocket是应用层第七层上的一个应用层协议,它必须依赖 HTTP 协议进行一次握手 ,握手成功后,数据就直接从 TCP 通道传输,与 HTTP 无关了。即:websocket分为握手和数据传输阶段,即进行了HTTP握手 + 双工的TCP连接。 1.2 通信过程 下面我们分别来看一下这两个阶段的具体实现原理: 1.2.1 握手阶段 客户端发送消息: GET /chat HTTP/1.1 Host: server.example.com Upgrade: websocket Connection: Upgrade Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ== Origin: http://example.com Sec-WebSocket-Version: 13 服务端返回消息: HTTP/1.1 101 Switching Protocols Upgrade: websocket Connection: Upgrade Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo= 这里值得注意的是Sec-WebSocket-Accept的计算方法: base64(hsa1(sec-websocket-key +

从传统计算机到“无处不在”的计算(下)

丶灬走出姿态 提交于 2019-12-06 07:07:42
从传统计算机到“无处不在”的计算(下) 参考:百度百科。 2.2 计算机系统结构 2.2.1 计算机系统结构的基本概念 计算机系统结构是计算机的机器语言程序员或编译程序编写者所看到的外特性。外特性就是指概念性的结构及其功能。例如鸡有胃,而胃的功能是消化食物。胃就是概念,其功能就是消化,而我们不需要关心胃是什么形状,以及胃由什么组成。 对于计算机系统结构,不同级的程序员眼中的计算机有不同的属性,比如机器语言程序员所看到的计算机的主要属性是指令集的功能,而高级语言程序员所看到的则是该机所配置的高级语言所具有的功能。这样,程序员们可以只需要知道对自己需要知道的部分,而不用小到CPU如何制作这样的细节都知道。 2.2.2 计算机的组成 1.系列机 *系统结构相同,具有相同的指令集,却不同型号、不同性能的一系列机器,通常由同一厂家生产。 2.兼容机 *不同厂家生产的具有相同系统结构的计算机,能够实现在不同时期、不同厂家生产的机器都能正常稳定的运行。为保证计算机系统结构的发展,兼容还分有向上、向下、向前、向后兼容。 2.2.3 计算机实现 物理实现:包括CPU、ROM、RAM等硬件的制造,总之就是把计算机组成方案制作成真实的计算机。 CPU:由运算器和控制器以及寄存器组成。运算器负责执行数据操作(如加\减法),控制器负责协调计算机的运行的电路,寄存器负责存储临时数据。程序执行时

【计算机网络】你真的了解HTTP(HTTPS)协议的这12个知识点吗

你说的曾经没有我的故事 提交于 2019-12-06 05:41:11
1. 介绍一下OSI七层参考模型和TCP/IP五层模型 1.1 OSI七层模型 1.2 TCP/IP五层模型 1.3 各层的设备 [各层设备] 1.4 各层对应协议 2. HTTP协议和特点 2.1 基本概念 [!NOTE] HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型。HTTP是一个无状态的协议。 2.2 数据包结构 数据包细节 2.3 协议的特点 无连接(重点理解) 限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。 无状态 协议对于事务处理没有记忆能力。 简单快速 客户向服务器请求服务时,只需传送请求方法和路径。 灵活 HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。 2.4 请求报文 请求行 请求类型 要访问的资源 HTTP协议版本号 请求头 用来说明服务器要使用的附加信息(一些键值对) 例如:User-Agent、 Accept、Content-Type、Connection 空行 分割请求头与请求体 请求体 可以添加任意的其他数据 2.5 响应报文 状态行 状态码 状态消息 HTTP协议版本号 消息报头 说明客户端要使用的一些附加信息 如:Content

程序性能优化之网络传输与数据存储优化(五)下

百般思念 提交于 2019-12-06 02:48:28
阿里P7移动互联网架构师进阶视频(每日更新中)免费学习请点击: https://space.bilibili.com/474380680 本篇文章将继续从7Z极限压缩和WebP使用来介绍网络传输与数据存储优化: 一、7Z极限压缩 一些文件过大或者是容量太大了,占用硬盘太多空间了。此刻可以使用压缩软件进行压缩,让它的体积变小了。其中极限压缩可以让文件夹或者是文件,压缩的最小。那么如何使用这个极限压缩功能的。 ​ 1、你要到网上下载这个压缩的程序,点击它,点击【install】。 ​ ​ 2、此刻软件会安装到电脑,找到需要压缩的文件以及文件夹。 ​ ​ 3、右键文件或者文件夹选择这个7z,选择压缩包,点击这个压缩等级这里。 ​ ​ 4、选择这个极限压缩,然后压缩算法选择【LZMA2】。 ​ ​ 5、然后点击这个确定,软件将会以极限压缩的方式进行压缩的。压缩后的文件明显变小了的。 ​ ​ 二、WebP使用 图片优化 2.1、什么是 WebP? WebP(发音 weppy,项目主页),是一种支持有损压缩和无损压缩的图片文件格式,派生自图像编码格式 VP8。根据 Google 的测试,无损压缩后的 WebP 比 PNG 文件少了 45% 的文件大小,即使这些 PNG 文件经过其他压缩工具压缩之后,WebP 还是可以减少 28%的文件大小。 2.2

程序性能优化之网络传输与数据存储优化(五)上

霸气de小男生 提交于 2019-12-06 02:48:21
阿里P7移动互联网架构师进阶视频(每日更新中)免费学习请点击: https://space.bilibili.com/474380680 本篇文章将先从google protobuf来介绍网络传输与数据存储优化: 简介 protobuf也叫protocol buffer是google 的一种数据交换的格式,它独立于语言,独立于平台。google 提供了多种语言的实现:java、c#、c++、go 和 python,每一种实现都包含了相应语言的编译器以及库文件。由于它是一种二进制的格式,比使用 xml 、json进行数据交换快许多。可以把它用于分布式应用之间的数据通信或者异构环境下的数据交换。作为一种效率和兼容性都很优秀的二进制数据传输格式,可以用于诸如网络传输、配置文件、数据存储等诸多领域。 protobuf在各种rpc的实现上都占据重要角色。 优点  性能好/效率高  代码生成机制  支持“向后兼容”和“向前兼容”  支持多种编程语言 缺点  应用不够广(相比xml和json)  二进制格式导致可读性差  缺乏自描述 安装  github源代码下载地址: https://github.com/google/protobuf 源码包中的src/README.md, 有详细的安装说明,安装过程如下: 1、解压压缩包:unzip protobuf-master.zip

网络传输数据的加密过程详解

徘徊边缘 提交于 2019-12-06 01:23:04
常见的明文传输协议有:http,smtp,dns,pop3,imap4。 常见的攻击方式有:窃听,数据注入,会话劫持 为了保证互联网上的数据传输的安全性,于是各种的加密方式和加密算法诞生了: 数据加密方式:对称加密、公钥加密、单向加密。 1.对称加密: 加密方和解密方使用同一个密钥, 其优点是: 加密解密的速度快,适合于大量数据的加密。 缺点是: 无法进行密钥交换。 2.公钥加密: 使用接受方的公钥进行加密,接收方在使用自己的密钥进行解密。 缺点是: 加密效率低,一般不用在数据加密上,通常是用在数据加密的密钥交换上的加密。 3.单向加密: 获取数据的特征码, 其特点是: 定长的输出,加密过程不可逆,具有雪崩效应也称作蝴蝶效应。 由上面的加密方式可以得知,每一种加密方式都具有缺点,要想在互联网上传输数据既要保证数据的完整性和数据的保密性,以及数据发送者的身份验证 ,显然使用一种加密方式是远远不够的。 单说要完成数据发送者的身份验证: 发送者使用自己的私钥对某一数据的特征码或其他进行加密,当接受者收到数据时在使用发送者的公钥进行解密,这一过程就可以完成发送者的什么验证,该过程又称作"数字签名"。 在既保证数据的完整性,保密性以及实现发送者的身份验证的数据传送过程: 首先发送者对自己要发送的数据进行单行加密,计算出数据的特征码,并且使用自己的私钥讲该段特征码进行加密

计算机的拓扑

*爱你&永不变心* 提交于 2019-12-06 00:20:06
一、网络拓扑结构 星型网: (节点扩展,移动方便,网络传输数据快,维护容易;核心交换机工作超负荷,网络布线复杂,广播传输影响网络) 树状网: (成本低,易于扩充,管理较方便,故障隔离较容易。;根节点依赖性大,如发生故障,则全网不能正常工作。) 分布式网络 环形网络: (网络路径选择与组建简单,投资成本低;传输速度慢,连接用户非常少,传输效率低,扩展性能差,维护困难) 、 总线型网络: (费用较低,易于扩展,线路的利用率高;可靠性不高,维护困难,传输效率低) 复合型网络 二、数据传输方式的分类: 1.按传输数据顺序:串行运输、并行运输 2.按传输数据流向和时间顺序分:单工、双工、半双工 3.按传输数据的同步方式分:同步运输、异步运输 三、国际组织: 国际标准化组织( ISO)、国际电信联盟( ITU)、电子电器工程师协会( IEEE)、美国国家标准局( ANSI)、电子工业协会( EIA/TIA)、 Internet工程任务组( IETF)、 Internet架 构委员会( IAB)、 Internet上的 IP地址编号结构( IANA) 四、网络的分类: 1.局域网( LAN) 2.城域网( MAN) 3.广域网( WAN) 来源: https://www.cnblogs.com/pe4nut7/p/11953394.html

RPC

一个人想着一个人 提交于 2019-12-06 00:13:32
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:是阿里集团开源的一个极为出名的 RPC 框架,在很多互联网公司和企业应用中广泛使用