| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> 计算机网络原理 读书笔记 -> 正文阅读 |
|
[网络协议]计算机网络原理 读书笔记 |
计算机网络 第一章 计算机网络含义:计算机网络是计算机技术与通讯技术的完美结合,是两者相互融合的产物 计算机网络就是互连的、自治的计算机集合。自治指计算机之间没有主从关系,一台计算机不可以命令另一台,互连指的是计算机之间要通过通信链路互连互通。 计算机网络是指将分布在不同地理位置的具有独立功能的多个计算机系统,通过通信线路和通信设备连接起来,在网络软件系统的控制下,实现资源共享和数据通信等功能。 概念: 带宽:不同链路的传输速度不同(通讯电路可以是光纤,同轴电缆、双绞线、微波、通信卫星等) ISP(internet service provider):互联网服务提供者,能提供拨号上网服务、网上浏览、下载文件、收发电子邮件等服务,是网络最终用户进入internet的入口和桥梁。 ISP分类,按照目前主营的业务划分,中国ISP主要有以下几类 1.搜索引擎ISP:百度,Google等 2.即时通信ISP 即时通信ISP主要提供基于互联网和基于移动互联网的即时通信业务。由于即时通信的ISP自己掌握用户资源,因此在即时通信的业务价值链中,即时通信ISP能起到主导作用,这在同运营商合作的商业模式中非常少见。现在运营商也在发力即时通信,如移动的飞信、电信的易信 3.移动互联网业务ISP 4.国家级ISP、区域或本地ISP区别:级别不用,管辖范围不同 家庭用户端系统构成小型家庭网络,并借助电话网络、有线电视网络等接入区域或本地ISP。企业网络、校园网等机构网络,通常构建成一定规模的局域网,然后再接入区域或本地ISP。 区域或本地ISP再与更大规模的国家级ISP互连,国家级ISP再互连其他国家的ISP或全球行ISP,实现全球所有ISP网络的互联,从而实现全球性端系统的互连。 ISP网络由许多有线或无线通信链路互连分组交换设备构成。分组交换设备可以实现数据分组的接收与转发,是构成internet的重要基础,存在多种形式,最典型的是路由器和交换机 协议 协议是网络通信实体之间在数据交换过程中需要遵循的规则或约定,是计算机网络有序运行的重要保证。 协议三要素:语法、语义与时序 计算机网络的功能 硬件资源共享 软件资源共享 信息资源共享 计算机网络的分类 1.覆盖范围分类 个域网:由个人设备通过无线通讯技术构成小范围的网络,实现个人设备间的数据传输,比如通过蓝牙技术实现个人设备的互连,个域网覆盖范围1-10m 局域网:局域网通常部署在办公室,办公楼,厂区,校园等局部区域内,采用高速有线或无线链路连接主机,实现局域范围内高速数据传输,范围在10m-1km 城域网:覆盖一个城市范围的网络,范围在5-50km 广域网:可以实现异地城域网或局域网的互连,通常跨越更大的地理空间,范围几十米到几千千米 2.网络拓扑结构分类 网络拓扑是指网络中的主机,网络设备间的物理连接关系与布局。按拓扑结构,计算机网络可以分为星形拓扑结构、总线型、环形、网状、树形和混合拓扑结构 1.星型拓扑结构:有一个中央结点,网络中的主机通过点对点通信链路与中央结点连接。 优点:易于监控与管理,故障诊断与隔离容易 缺点:中央结点是网络的瓶颈,一旦故障,全网瘫痪。网络规模受限于中央结点的端口数量 2.总线型拓扑结构:采用一条广播信道作为公共传输介质,称为总线,所有结点均与总线连接,节点间的通信均可以通过总线共享,由于总线是一条广播信道,所以任一结点通过总线发送数据时,其他结点都会接收到承载这些数据的信号,如果同时有两个或两个以上的结点同时向共享信道发送数据,会产生干扰,与数据的丢失,称之为冲突。 优点:结构简单,易于扩展 缺点:通信范围受限,故障诊断与隔离比较困难,易于产生冲突 3.环形拓扑结构:利用通信链路将所有结点连成一个闭合的环,每个结点可以从环中接收数据,并向环中进一步转发数据。 优点:所需电缆长度短,可以使用光纤,易于避免冲突 缺点:某个结点的故障容易引起全网瘫痪,新结点的加入跟撤出比较麻烦,存在时间等待问题 4.网络拓扑结构:网络中的结点通过多条链路与不同的结点直接连接,分为完全网络拓扑结构与非完全网络拓扑结构 优点:网络可靠性高,一条或多条出现故障,不影响其他的 缺点:网络结构复杂,造价成本高,选路协议复杂 5.树形拓扑结构:看作总线型拓扑或星形拓扑网络的扩展。 优点:易于扩展,故障隔离容易 缺点:对根结点的可靠性要求高,一旦根结点故障,可能导致网络大范围无法通信 6.混合拓扑结构:两种以上简单拓扑结构连接而成的网络 3.交换方式分类 电路交换网络、报文交换网络、分组交换网络 4.网络用户属性分类 公用网,专用网(私有网) 私有:军事专用网络、航空专用网络、银行专用网络、铁路专用网络等 计算机网络结构 网络边缘 ? 主机 ? 网络应用 接入网络,物理介质:接入网络指的是将主机连接到核心网络的物理链路。 ? 有线或无线通信链路(电话拨号接入、非对称数字用户线路ADSL、混合光纤同轴电缆HFC接入网络、局域网、移动接入网络) 网络核心(核心网络) ? 互联的路由器(分组转发设备) ? 网络之网络 数据交换技术 数据交换是实现在大规模网络核心上进行数据传输的技术基础,常见的数据交换技术有:电路交换、报文交换和分组交换 电路交换:电路交换是最早的一种交换方式,电话网络就是最早、最大的电路交换网络。利用电路交换进行通信包括建立电路、传输数据和拆除电路3个阶段。 ?? 建立电路:传输数据之前,必须建立一条端对端的电路,这个电路建立过程实际上就是一个个交换结点的接续过程。 ?? 传输数据:电路建立连接后,主机与主机之间就可以进行数据传输了。被传输的数据可以是数字数据也可以是模拟数据,数据的传输可以是单工也可以是全双工。 ?? 拆除数据:数据传输结束后,要释放该物理链路,该释放动作可以由两个通信主机之间任何一方发起并完成。释放信号必须传送到电路所经过的各个结点,以便重新分配资源 报文交换:采用为“存储-转发”交换方式, 分组交换:将待传输数据分割成较小的数据块,每个数据块附加上地址、序号等控制信息构成数据分组,每个分组独立传输到目的地,目的地将收到的分组重新组装,还原为报文。 计算机网络性能 1.速率与带宽 速率是指网络单位时间内传输的数据量,单位为bit/s kbit/s mbit/s gbit/s等 带宽:有时也用带宽来描述速率,在通信或信号处理领域中,带宽原本是指信号具有的频带宽度,即信号成分的最高频率与最低频率之差,单位为赫兹(Hz) 2.时延 时延是指数据从网络中的一个结点(主机或交换设备等)到达另一个结点所需要的时间,分组从源结点开始,从一个结点“跳到”下一个相邻的结点上,最终到达目的结点,每一个“跳步”成为“跳”。分组的每跳传输过程主要产生4类延迟:结点处理时延,排队时延,传输时延,和传播时延。 3.时延带宽积 4.丢包率 当网络阻塞特别严重时,新到达的分组甚至已无缓存空间暂存该分组,此时交换节点回丢弃分组,就会发生“丢包”现象。可见,网络阻塞是影响网络性能的重要现象或结果。 丢包率常被用于评价和衡量网络性能的指标,在很大程度上可以反映网络的拥塞程度,因为引发网络丢包的主要因素就是网络阻塞 5.吞吐量 吞吐量表示在单位时间内源主机通过网络向目的主机实际送达的数据量,单位为bit/s 或 B/s。吞吐量经常用于度量网络的实际数据传送(通过)能力。即网络实际可以达到的源主机到目的主机的数据传输速率。 吞吐量受网络链路带宽、网络连接复杂性、网络协议、网络拥塞程度等因素影响。 计算机网络体系结构 从计算机网络设备角度来看,有了主机,链路和交换设备就能够使两个用户在硬件上建立起连接,并实现数据交换,但是要顺利的进行信息交换,或者说让计算机网络正常运转,通信双方还必须遵循相同的协议。 OSI参考模型。 每一层的真正功能是为上一层提供服务。 OSI参考模型采用分层结构化技术,将整个计算机网络的通信功能分成7层,由低到高分别是:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层 物理层、数据链路层、网络层是结点到结点的层,其余四层为端到端层。 端到端与点到点的区别 一句话概括就是端到端是由无数的点到点实现和组成的。 端到端是传输层的,你比如你要将数据从A传送到E,中间可能经过A->B->C->D->E,对于传输层来说他并不知道B,C,D的存在,他只认为我的报文数据是从A直接到E的,这就叫做端到端。 点到点是网络层的 端到端与点到点是针对网络中传输的两端设备间的关系而言的。端到端传输指的是在数据传输前,经过各种各样的交换设备,在两端设备问建立一条链路,就象它们是直接相连的一样,链路建立后,发送端就可以发送数据,直至数据发送完毕,接收端确认接收成功。点到点系统指的是发送端把数据传给与它直接相连的设备,这台设备在合适的时候又把数据传给与之直接相连的下一台设备,通过一台一台直接相连的设备,把数据传到接收端。 ? 端到端传输的优点是链路建立后,发送端知道接收设备一定能收到,而且经过中间交换设备时不需要进行存储转发,因此传输延迟小。端到端传输的缺点是直到接收端收到数据为止,发送端的设备一直要参与传输。如果整个传输的延迟很长,那么对发送端的设备造成很大的浪费。端到端传输的另.一个缺点是如果接收设备关机或故障,那么端到端传输不可能实现。 ? 点到点传输的优点是发送端设备送出数据后,它的任务已经完成,不需要参与整个传输过程,这样不会浪费发送端设备的资源。另外,即使接收端设备关机或故障,点到点传输也可以采用存储转发技术进行缓冲。点到点传输的缺点是发送端发出数据后,不知道接收端能否收到或何时能收到数据。 在一个网络系统的不同分层中,可能用到端到端传输,也可能用到点到点传输。如Internet网,IP及以下各层采用点到点传输,4层以上采用端到端传输。 ? 1.物理层? 主要功能是在传输介质上实现无结构比特流传输,不关心比特流实际代表的信息内容。只关心如何将0和1这些比特以合适的信号传送到目的地。因此,物理层要实现信号编码功能,另外一个主要任务是规定数据终端设备与数据通信设备之间接口的相关特性。主要包括机械、电气、功能和规程4个方面的特性。 2.数据链路层 数据链路层的主要功能是实现在相邻结点之间数据可靠而有效的传输。数据在物理介质内传输过程,不能保证没有任何错误发生。为了能实现有效的差错控制,就采用了一种以“帧”为单位的数据块传输方式。 数据链路层还可以时间相邻结点间通信的流量控制。 数据链路管理控制数据链路的建立、维持和释放过程。 3.网络层 网络层解决的核心问题是如何将分组通过交换网络传送至目的主机,因此,网络层的主要功能是数据转发与路由。一般在两个结点之间会有多条路径选择,这种路由选择是网络层要完成的主要功能之一。 4.传输层 传输层是第一个端到端的层次,也是进程—进程的层次。 5 6 7 会话层、表示层、应用层 TCP/IP参考模型 1.应用层(OSI会话层、表示层、应用层三层合并) 2.传输层 3.网络互联层 网络互联层是真个TCP/IP参考模型的核心,主要解决把数据分组发往目的网络或主机的问题。在这个过程中,要为分组的传输选择相应的路径(路由选择),完成分组的转发,提供网络层寻址——ip地址。 4.网络接口层(OSI数据链路层与物理层) 五层参考模型 应用层 传输层 网络层 链路层 物理层 IP地址是internet的。 网络层地址,用于标识唯一一个主机或路由器接口。 ?? ? 第二章 网络应用 网络应用的本质是运行在不同主机上的应用程序之间的通信。 1.计算机网路体系结构 ? P2P:peer-to-peer(person-to-person),在p2p的环境中,成千上万台彼此相连的计算机都处于对等的 地位。整个网络一般来说不依赖专用的集中服务器。网络中的每一台计算机即能充当网络服务的请求者,又对其他计算机的请求作出响应,提供资源和服务,通常这些资源和服务包括:信息的共享和交换、计算资源、存储共享等 ?C/S 客户/服务器结构网络应用,人们平时使用的许多网络应用都属于这类应用,比如www应用、文件传输ftp、电子邮件等 2.网络应用通信基本原理 在c/s结构的网络应用中,服务器端运行的是服务器进程,被动地等待客户请求服务,客户端运行的是客户进程,主动发起通信,请求服务器进程提供服务。应用进程间遵循应用层协议交换应用层报文。 从应用层的角度来看,应用进程之间遵循应用层协议就可以直接实现端到端的报文交换,但是,实质通信过程并非如此。无论是服务器进程还是客户进程,当其遵循应用层协议组织好应用层报文后,需要通过层间接口将报文传递给相邻的 传输层,请求传输层协议提供的端到端传输服务。 网络应用需要使用传输层提供端到端的传输服务 ,不同应用对传输层服务有不同的服务性能需求,比如传输性能的保障。有的需要提供可靠的数据传输服务,有的需要提供延时保障,但是实际上 ,传输层通常能够提供的服务类型以及服务性能 都是有限的 例如:internet传输层能提供的服务只有两类:面向连接的可靠字节流传输服务和面向无连接的不可靠的数据包传输服务,分别对应传输层的TCP和UDP,这两类服务都不能提供延时保障或带宽保障服务 Tcp(Transmission control? protocol)传输控制协议。通过三次握手来 建立连接,三次握手就是用来启动和确认tcp连接的过程。 Tcp的主要优点是 1.能够确保链接的建立和数据包的发送 2.支持错误重传机制 3.支持拥塞控制,能够在网络拥堵的情况下延迟发送 4.能够提供错误校验和,甄别有害的数据包 Udp(user? datagram protocol)用户数据报协议 。不需要握手操作,加快了通信速度,允许网络上的其他主机在接收方同意通信之前进行数据传输。 优点: Udp支持容忍数据包丢失的带宽密集型应用程序 具有低延迟的特点 能发送大量的数据包 允许DNS查找,DNS是建立在udp之上的应用层协议 ? ?3.域名系统(DNS) 实现将域名映射为IP地址的过程,称为域名解析。 1.DNS为了实现域名的有效管理和高效查询,采用了层次树结构的命名方法,比如;顶级域名、二级域名、三级域名、四级域名。。。。。。 国家顶级域名: ?? 中国??? cn ?? 美国??? us ?? 英国??? uk 通用顶级域名: ?? 公司和企业????? com ?? 网络服务机构?? net ?? 非营利性组织?? org ?? 专用的教育机构??? edu ?? 专用的政府部门??? gov ?? 专用的军事部门??? mil ??? 国际组织???????? int ……. 2.域名服务器 :一个服务器所负责管辖的范围叫做区,不叫域 分类:根域名服务器(总共13个,命名从a—m。 a.rootserver.net? b.rootserver.net? ……)、顶级域名服务器、权威域名服务器、中间域名服务器4类。 域名解析过程:分为递归解析和迭代解析,通常本地域名服务器提供递归查询,根域名服务器只提供迭代查询服务。 本地域名不能直接响应解析结果时,都需要从根域名服务器开始查询。但是根域名服务器数量很少,都去 访问服务器 压力很大,因此典型策略是,缓存机制。 3.万维网应用 1.概述 也称为web应用,web应用主要包括web服务器、浏览器和超文本传输协议(http) Web应用是 典型的客户/服务器 网络应用。客户与服务器之间的交互基于应用层协议http 每个URL地址主要由两部分组成 :存放对象的服务器主机域名??? 对象的路径名 例如 :http://www.abc.edu.cn/cs/index.html 2.http http是web应用的应用层协议,定义浏览器如何向web服务器 发送 请求以及web服务器如何向浏览器进行响应。 http经历了多个版本的演变,目前主要使用的是http/1.0和http/1.1两个版本,尤其1.1为主流。 最新版本的http是http2.0, APDY(speedy)是Google在http从1.1向2.0过度之际推出的协议,长期以来一直被认为是http/2.0的可行选择。 http连接,http基于传输层的tcp传输报文,浏览器在向服务器发送请求之前,首先需要建立tcp连接,然后才能发送http请求报文,并接受http响应报文。 根据http在使用tcp连接的策略不同,可以分为非持久连接的 http和持久连接的http 除此之外,还涉及到的知识点是,串行连接 和 并行连接。 http报文由4部分组成:起始行、首部行、空白行、实体主体。每部分 之间由空格(CRLF)分隔,起始行最后是CRLF。 http报文起始行和空白行不可缺少,首部行可以是零行或多行,实体主体则根据报文类型、功能等可有可无。 http报文分为两类:请求 报文和响应报文,请求报文有浏览器发送 ,响应报文由web服务器发送给浏览器 请求报文与响应报文最主要的区别是起始行不同,请求报文起始行为。<方法><URL><协议版本> ??????????????????????????????????????????????????????????????????????????????? 响应报文起始行为? <协议版本><状态码><短语> 状态码分类 1xx???? 100—199??????? 信息提示 2xx??? ?200—-299。??? ?成功 3xx。 ??300—-399。 ????重定向,表示 资源已经转移,需要向新的URL发请求 4xx。 ??400—-499。?? ??客户端 错误 5xx。 ??500—-599。?? ??服务器端错误 100?? continue,表示 已经成功收到了请求的初始部分,请客户端继续 200? ?OK???? 成功,请求信息在响应报文 中 301?? 重定向,所请求对象被永久转移走,在响应报文的首部行location会给出 新的url,通常浏览器会自动跳转并向新的url发送请求。 400。 bad request? 客户端请求错误,即服务器不能正确理解客户请求 401。 未授权,需要输入用户名、密码。 404。 客户端请求对象在服务器上不存在。 451。 不支持的媒体类型,可能被服务器拒绝请求。或者是请求方法或者参数与服务器要求的不匹配 505?? 请求使用的http版本 服务器不支持 3.cookie 5.internrt电子邮件 电子邮件系统主要包括邮件服务器、简单邮件传输协议(SMTP)、用户代理和邮件读取协议等 一个邮件服务器通常包含至少两个进程,邮件发送进程和邮件接收进程。 邮件接收进程实现SMTP的服务器端,通常绑定端口号为25 邮件读取协议有POP3、IMAP、http等。 SMTP是internet电子邮件中核心应用层协议,SMTP使用传输层tcp实现可靠数据传输。 SMTP特点: 1.只能传送7位ASCII码文本,包括SMTP命令、应答消息以及邮件内容。,因此邮件不能直接传送可执行文件或其他的二进制文件(图形、图像、声音、视频)以及许多非英语国家的文字,对于这类内容需要先转化为7位的ASCII码文本形式,然后由接收方还原。 2.属于“推动”协议,会主动与服务器(25端口号)建立tcp连接 3.不能包含“CRLF.CRLF”的内容,因为使用这个标示邮件内容的结束,所以需要传输次内容时需要转义 4.使用tcp连续的持久性,并不会在一封邮件传输完成后,直接关闭连接。会利用已建立的tcp连接继续发送邮件,直至没有邮件需要发送为止。 MIME与电子邮件格式 由于SMTP只能传输7位的ASCII码文本内容,所以在传输非7位ASCII码文本内容时,必须依据一个非7位内容转换为7位内容,然后再利用SMTP进行传输,解决这一问题的具体方案就是多用途互联网邮件扩展(MIME)multipurpose internet mail extensions Pop3 是一个简单的邮件读取协议,用户使用pop3读取邮件时,一旦将邮件下载到本地主机,就可以在本地建立邮件文件夹,并将邮件存放在该文件夹下。用户可以在本地对邮件进行操作。但是不支持创建远程文件夹并为邮件指派文件夹的功能。IMAP支持这一特性 IMAP(internet mail access protocol)IMAP服务器将每个邮件与一个文件夹进行关联,当邮件第一次到达服务器时,与收件人的INBOX文件夹相关联,通过IMAP,收件人可以在服务器上创建新的文件夹,并可以对邮件进行移动、查询、阅读、删除等操作,IMAP还允许用户代理只读邮件的部分内容,比如用户想先看一下邮件主题然后再决定是否要下载邮件时,就非常有用了。 HTTp是web用用的应用层协议,当使用基于web的邮件时,http便被用于邮件的读取,此时http也作为邮件读取协议使用。 6.FTP 文件传送协议(file transfer protocol)是在互联网的两个主机间实现文件互传的网络应用,其应用层协议也称为FTP。ftp可以减少或者消除在不同操作系统下处理文件的不兼容性。适合在网络中任意异构计算机之间传送文件。 ftp采用C/S方式实现客户与服务器中间的双向文件传输。并且ftp客户端与服务器之间的交互以及文件传输过程均使用tcp的可靠传输服务。 ftp会话形式是客户向服务器发送命令,服务器发送状态码和短信作为应答。进行ftp应用时,会使用两个“并行”的tcp连接。控制连接与数据连接 控制连接:在整个会话期间一直保持打开,是持久的。客户端发出的传送请求通过控制连接发送给服务器端的控制进程的端口(21)。控制进程连接不用传送数据。 数据连接:数据进程实际完成文件的传送,在传送完毕后会关闭数据传送连接,数据连接是临时的,非持久的。服务器进程用自己的20端口传送数据。 由于ftp专门使用一个独立的控制连接传输控制信息,与传输文件信息进行分离。所以ftp服务器必须在整个会话期间保留用户的状态,也就是说ftp是有状态的协议。 7.P2P应用 P2p应用在对等方,是端对端的传输方式,每个对等方既是数据的获取着(消费者)又是数据的提供者(服务器)。 c/s体系结构关键在于服务器,所有的客户都只是与服务器通信,服务器必须一直处于运作状态,一旦服务器出现故障,则整个应用瘫痪,也就是所谓的单点故障问题。而p2p对服务器的依赖很小,几乎不会依赖某个集中服务器。特别是在实现文件分发的应用上,p2p在时间效率上具有明显的优势。 8.socket编程基础 待完善 端口号汇总 FTP连接进程服务器默认端口号:21 FTP数据进程端口号:20 HTTP服务器默认端口号:80 SMTP服务器默认端口号:25 DNS服务器默认端口号:53 第三章.传输层 传输层为网络应用进程之间的通信提供了端到端的报文传输服务。在五层参考模型中,传输层位于应用层与网络层之间。向下使用网络层提供的分组传输服务,向上为各种网络应用提供端到端的报文传输服务。 传输层的核心任务是为应用进程之间提供端到端的逻辑通信服务。 支持众多应用进程公用同一个传输层协议,并能够将接收到的数据准确交付给不同的应用进程,是传输层需要实现的一项基本功能,成为传输层的多路复用与多路分解,简称为复用与分解,也称为复用与分用。 ?
概括来说,在internet网络中,唯一标识套接字的基本信息是IP地址和端口号。UDP基于目的IP地址和目的端口号二元组唯一标识一个UDP套接字,从而可以实现精确分解;TCP则需要基于源IP地址、目的IP地址、源端口号和目的端口号四元组唯一标识一个TCP套接字(即一个TCP连接),从而实现精确分解。?????? TCP连接管理 主机1 与 主机2 尝试建立一条TCP连接 1、主机1向主机2发出连接请求段(第一次握手)。该报文段不包含应用层数据,,其首部中的同步位SYN = 1.该时段的报文被称为“SYN报文段”。 2、一旦“SYN报文”传送到主机2,主机2的TCP收到连接请求后,如果同意,则发回确认报文段(第二次握手),该同意建立连接的报文段常被称为“SYNACK段”,主机2在确认段中SYN = 1,ACK=1 3、主机1收到SYNACK报文段后,要给该连接分配缓存和变量,并向主机2发送确认报文段(第三次握手)。其中ACK=1,SYN=0。第三次握手的ACK报文段可以携带从主机1到主机2的应用层数据。 一旦完成三次握手,主机1与主机2之间就能互相发送包含数据的报文段了,在此之后的每一个报文段中。SYN都被置为0 为什么三次握手而不是两次握手呢?
第四章.网络层 第一节: 网络层介于传输层和数据链路层之间,传输层提供端到端的进程间通信服务,数据链路层则是实现物理链路直接相连的两个结点之间的数据帧传输服务,网络层关注的是如何将承载传输层报文段的网络层数据从源主机送达目的主机。因此,网络层需要实现两项重要功能:转发和路由选择。
网络层除了转发与路由选择的功能外,一些提供面向连接服务的网络还提供另外一个重要的网络层功能:连接建立。 此处的连接建立与TCP的端到端的连接不同,网络层的连接建立是从源主机到目的主机所经过的一条路径,这条路径多经过的每个路由器等网络层设备都要参与网络层连接的建立。 第二节 根据是否在网络层提供连接服务,分组交换网络可以分为仅在网络层提供连接服务的虚电路网络和仅在网络层提供无连接服务的数据报网络。 第三节 网络互连与网络互连设备
在真实的网络拓扑下,存在着许多不同类型网络,如WAN、LAN等,网络层的下一层数据链路层使用了多种不同的协议如以太网、8022.11等,在网络的各个层次广泛应用着大量协议,由此可见,网络之间是异构的。 异构网络主要指两个网络的通信技术和运行协议的不同。实现异构网络互连的基本策略是协议转换和构建虚拟互联网络。 实现协议转换需要中间设备,通过这些中间设备实现异构网络之间数据分组的转换与转发。 例如:网桥、交换机、多协议路由器和应用网关等。 除了异构网络互连,还有同构网络互连,如两个异地以太网的互连,实现这类同构网络互连的典型技术是隧道技术。 用来连接网络的设备多种多样,包括中继器、集线器、交换机、网桥、路由器和网关等。 中继器:中继器(RP repeater)是工作在物理层上的连接设备。适用于完全相同的两个网络的互连,主要功能是通过对数据信号的重新发送或者转发,来扩大网络传输的距离。 中继器是对信号进行再生和还原的网络设备:OSI模型的物理层设备。 它的作用是放大信号,补偿信号衰减,支持远距离的通信 优缺点: 优点:
中继器的主要优点是安装简单、使用方便、价格相对低廉。他不仅起到网络距离的作用,还可以将不同传输介质的网络连接在一起。中继器工作在物理层,对于高层协议完全透明。 缺点:
?? ? 集线器: 集线器(Hub)是指将多条以太网双绞线或光纤集合连接在同一段物理介质下的设备。集线器是运作在OSI模型中的物理层。它可以视作多端口的中继器,若它侦测到碰撞,它会提交阻塞信号。?[1]? 它工作于OSI(开放系统互联参考模型)参考模型第一层,即“物理层”。 由于集线器会把收到的任何数字信号,经过再生或放大,再从集线器的所有端口提交,这会造成信号之间碰撞的机会很大,而且信号也可能被窃听,并且这代表所有连到集线器的设备,都是属于同一个碰撞域名以及广播域名,因此大部份集线器已被交换机取代。?[1]? ??? 集线器的工作过程是非常简单的,它可以这样的简单描述:首先是节点发信号到线路,集线器接收该信号,因信号在电缆传输中有衰减,集线器接收信号后将衰减的信号整形放大,最后集线器将放大的信号广播转发给其他所有端口。 ??? 其实,集线器实际上就是中继器的一种,其区别仅在于集线器能够提供更多的端口服务,所以集线器又叫多口中继器。 ? ? ? 交换机 网络交换机,是一个扩大网络的器材,能为子网络中提供更多的连接端口,以便连接更多的计算机。 网络交换机分为两种:广域网交换机和局域网交换机。广域网交换机主要应用于电信领域,提供通信用的基础平台。而局域网交换机则应用于局域网络,用于连接终端设备,如PC机及网络打印机等。从传输介质和传输速度上可分为以太网交换机、快速以太网交换机、千兆以太网交换机、FDDI交换机、ATM交换机和令牌环交换机等。从规模应用上又可分为企业级交换机、部门级交换机和工作组交换机等。 交换机工作于OSI参考模型的第二层,即数据链路层。 交换机的主要功能包括物理编址、网络拓扑结构、错误校验、帧序列以及流控。交换机还具备了一些新的功能,如对VLAN(虚拟局域网)的支持、对链路汇聚的支持,甚至有的还具有防火墙的功能。 交换机除了能够连接同种类型的网络之外,还可以在不同类型的网络(如以太网和快速以太网)之间起到互连作用。 最后简略的概括一下交换机的基本功能: 1. 像集线器一样,交换机提供了大量可供线缆连接的端口,这样可以采用星型拓扑布线。 2. 像中继器、集线器和网桥那样,当它转发帧时,交换机会重新产生一个不失真的方形电信号。 3. 像网桥那样,交换机在每个端口上都使用相同的转发或过滤逻辑。 4. 像网桥那样,交换机将局域网分为多个冲突域,每个冲突域都是有独立的宽带,因此大大提高了局域网的带宽。 5. 除了具有网桥、集线器和中继器的功能以外,交换机还提供了更先进的功能,如虚拟局域网(VLAN)和更高的性能。 [3] 传统交换机从网桥发展而来,属于OSI第二层即数据链路层设备。它根据MAC地址寻址,通过站表选择路由,站表的建立和维护由交换机自动进行。路由器属于OSI第三层即网络层设备,它根据IP地址进行寻址,通过路由表路由协议产生。交换机最大的好处是快速,由于交换机只须识别帧中MAC地址,直接根据MAC地址产生选择转发端口算法简单,便于ASIC实现,因此转发速度极高。但交换机的工作机制也带来一些问题。 网桥 网桥也叫桥接器,是连接两个局域网的一种存储/转发设备,它能将一个大的LAN分割为多个网段,或将两个以上的LAN互联为一个逻辑LAN,使LAN上的所有用户都可访问服务器。 网桥将两个相似的网络连接起来,并对网络数据的流通进行管理。它工作于数据链路层,不但能扩展网络的距离或范围,而且可提高网络的性能、可靠性和安全性。 网桥优点 1、过滤通信量。网桥可以使局域网的一个网段上各工作站之间的信息量局限在本网段的范围内,而不会经过网桥溜到其他网段去。 2、扩大了物理范围,也增加了整个局域网上的工作站的最大数目。 3、可使用不同的物理层,可互连不同的局域网。 4、提高了可靠性。如果把较大的局域网分割成若干较小的局域网,并且每个小的局域网内部的信息量明显地高于网间的信息量,那么整个互连网络的性能就变得更好。 网桥缺点 1、由于网桥对接收的帧要先存储和查找站表,然后转发,这就增加了时延。 2、在MAC子层并没有流量控制功能。当网络上负荷很重时,可能因网桥缓冲区的存储空间不够而发生溢出,以致产生帧丢失的现象。 3、具有不同MAC子层的网段桥接在一起时,网桥在转发一个帧之前,必须修改帧的某些字段的内容,以适合另一个MAC子层的要求,增加时延。 4、网桥只适合于用户数不太多(不超过几百个)和信息量不太大的局域网,否则有时会产生较大的广播风暴。 数据链路层互联的设备是网桥(bridge),在网络互联中它起到数据接收、地址过滤与数据转发的作用,用来实现多个网络系统之间的数据交换。 网桥的基本特征 1.网桥在数据链路层上实现局域网互连; 2.网桥能够互连两个采用不同传输介质与不同传输速率的网络 3.网桥以接收、存储、地址过滤与转发的方式实现互连的网络之间的通信; 4.网桥需要互连的网络在数据链路层以上采用相同的协议 5.网桥可以分隔两个网络之间的通信量,有利于改善互连网络的性能与安全性。 路由器 ?路由器是一种具有多个输入端口和多个输出端口的专用计算机,主要任务是获取与维护由信息以及转发分组。路由器是最典型的网络层设备。路由器从功能体系结构角度,可以分为输入端口、交换结构、输出端口和路由处理器。
提供查找、转发的功能外,还提供对到达分组的缓存排队功能。 输入端口负责从物理接口接收信号,还原数据链路层帧,提取IP数据包,根据IP数据包的目的IP地址检索路由表,决策需要将该IP数据报交换到哪个输出端口。实际上,通常路由器每个输入端口内部都会存有转发表的一份副本,转发表由路由器进行计算和更新,并通过某种方式复制到每个输入端口,这相当于将集中式路由查询,转换为在每个端口分布式路由查询,不仅降低了路由选择器的压力,还提高了查询效率。
路由器的功能就是将不同的子网之间的数据进行传递。 具体功能有以下几点: (2)对数据进行处理。收发数据包,具有对数据的分组过滤、复用、加密、压缩及防护墙等各项功能。 (3)依据路由表的信息,对数据包下一传输目的地进行选择。 (4) 进行外部网关协议和其他自治域之间拓扑信息的交换。 (5) 实现网络管理和系统支持功能。? 上网猫和路由器的区别有哪些 ? 1、外形不同:路由器有两根天线,而猫没有天线。 2、作用不同:路由器可供几台电脑同时上网,上面连光猫,下面连电脑,而猫上面连电话线 ,下面连路由器。 3、端口不同:猫有2个端口,一个接电话线,另一个连接网线,而路由器的端口比较多。 网关 网关(Gateway)又称网间连接器、协议转换器。网关在网络层以上实现网络互连,是复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关既可以用于广域网互连,也可以用于局域网互连。 网关是一种充当转换重任的计算机系统或设备。使用在不同的通信协议、数据格式或语言,甚至体系结构完全不同的两种系统之间,网关是一个翻译器。与网桥只是简单地传达信息不同,网关对收到的信息要重新打包,以适应目的系统的需求。同层--应用层。 第五节:internet网络层 Internet是目前世界上最大、最重要的计算机网络。Internet网络层主要包括网际协议(internet protocol)IP、路由协议以及互联网控制报文协议等。 IP目前主要有两个版本,IPv4和IPv6,到目前为止,internrt仍然以IPv4为主,IP定义了如何封装上层协议(如UDP、TCP等),定义了internet网络层寻址(IP地址 )以及如何转发IP数据报等内容,是internet网络层最核心的协议。 目前IPv4地址已分配殆尽,很多连接到internet上的主机都无法获得合法的公共IP地址,只能使用私有地址。私有地址在公共internet上是无效的,网络地址转换(network address translation)NAT可以解决这个问题。 NAT的一般工作原理:对于从内网出去,进入公共互联网的IP数据报,将其源IP地址替换为NAT服务器拥有的合法的公共IP地址,同时替换源端口号,并将替换关系记录到NAT转换表中;对于从公共互联网返回的IP数据报,依据其目的IP地址与目的端口号检索NAT转换表,并利用检索到的内部私有IP地址与对应的端口号替换目的IP地址和目的端口号,然后将IP数据报转发到内部网络。 IPv6 NAT缓解了IPv4地址耗尽的问题。使得没有公共IP地址的设备也能成功上网。虽然在NAT技术的支持下,internet一直平稳运行,并没有因为地址耗尽而导致internet瘫痪,但是NAT终究是一个过渡技术,并不能彻底解决问题。IPv6才是解决问题的理想方案。除了在地址长度上进行了扩展之外,IPv6还在其他方面进行了增强。 ????????????????? 第五章 数据链路层与局域网 数据链路层负责通过一条链路,从一个结点向另一个物理链路直接相连的相邻结点,传送网络层数据报,中间通常不经过任何其他交换结点。网络层数据报被封装到数据链路层的帧中传送。数据链路是在物理线路之上,基于通信协议来控制数据帧传输的逻辑数据通信。实现数据链路层(协议)功能的典型硬件实体是网络适配器(NIC,网卡)。网络适配器实质上需要时下数据链路层和物理层的功能。
从数据链路层来看,无论是主机还是路由器等网络设备,都可以统称为结点,因为他们通常都是一条数据链路的端点,数据链路层通常提供一下几点服务。
数据链路层协议也可以提供可靠交付服务,即在相邻结点间经数据链路实现数据报的可靠传输。但并不是所有的数据链路层 协议都需要可靠传输,对于低出错率的链路,例如,光纤、双绞线链路,不需要。对于无限链路需要(可靠交付多用于出错率高的链路)
数据链路层通常采用不同的差错控制措施,或者通过确认重传纠正差错,或者直接丢弃差错帧。
差错控制就是通过差错编码技术,实现对信息传输差错的检测,并基于某种机制进行差错纠正和处理。是计算机网络中实现可靠传输的重要技术手段,并在许多数据链路层协议中应用。 差错控制的基本方式
前向纠错机制需要利用纠错编码。即这类编码不仅可以检测数据传输过程中是否发生了错误,还可以定位错误位置并加以纠正。在前向纠正机制中,发送端首先的数据进行纠错编码,然后发送包含纠错编码信息的帧,接收端收到帧后利用纠错编码进行差错检测,对于发生错误的帧直接进行纠错。前向纠错机制比较适用于单工链路或者对实时性要求比较高的应用。
数据链路层使用的信道主要有:点对点信道和广播信道。点对点信道使用一对一的通信方式。信道被通信双方独享,广播信道使用一对多的广播通信方式,广播信道上连接的结点很多,信道被所有结点共享,必须使用多路访问控制协议(MAC multiple access control)来协调结点的数据发送。 MAC协议类型:信道划分MAC协议、随机访问MAC协议、受控接入MAC协议。 MAC协议的根本任务是解决信道的共享问题。多路复用技术是实现物理信道共享的经典技术。其基本思想是将信道资源划分后,分配给不同的结点,各结点通信时只使用其分配到的资源,从而实现了信道共享。并避免了多结点通信时的相互干扰。 ??? 多路复用主要包括频分多路复用、时分多路复用、码分多路复用、波分多路复用。分别称为(FDMA,TDMA,WDMA,CDMA) 频分多路复用:简称频分复用,是频域划分制,即在频域内将信道带宽划分为多个子信道,并利用载波调制技术,将原始信号调制到对应某个子信道的载波信号上,使得同时传输的多路信号在整个无力信道带宽允许的范围内频谱不重叠,从未公用一个信道。 时分多路复用:简称时分复用,是一种时域划分,即将通信信道的传输信号在时域内划分为多个等长的时隙,每个信号占用不同的时隙,在时域上互不重叠,使用多信号合用单一的通信信道,从而实现信道共享, 波分多路复用:简称波分复用,广泛应用于光纤通信中,其实质是一种频分多路复用,只是由于在光纤通信中 ,光载波用光的波长来代替频率,所以称为波分多路复用。 码分多路复用:简称码分复用,通过利用更长的相互正交的码分分别编码各路原始 信息的每个码元,使得编码后的信号在同一信道中混合传输,接收端利用码组的正交特性分离各路信号,从而实现信道共享。 随机访问MAC协议 随机访问MAC协议就是所有用户都可以根据自己的意思随机地向信道上发送信息,如果一个用户在发送信息期间没有其他用户发送信息,则该用户信息发送成功,如果两个或两个以上的用户都在共享的信道上 发送信息,则产生冲突或碰撞。导致用户信息发送失败,每个用户随机退让一段时间后,再次尝试,直至成功。可见,随机访问实际上就是争用接入,竞争胜利者可以暂时占用共享信道来发送信息,竞争失败者随机等待一段时间,再次竞争,直至竞争成功。 受控接入MAC协议 受控接入的特点是各个用户不能随机接入信道而必须服从一定的控制,又可分为集中式控制和分散式控制。 集中式控制:系统中有一个主机负责调度其他通信站接入信道,从而避免冲突,主要方法是轮训战术,又分为轮叫轮询和传递轮询。 分散式控制:比较典型的分散式控制方法就是令牌技术,令牌是一种特殊的帧,它代表了通信站使用信道的许可,在信道空闲时一直在信道上传输,一个通信站如果想发送数据就必须首先获得令牌,然后在一定时间内发送数据,在发送完数据后重新产生令牌并发送到信道上,以便其他通信站使用信道。
局域网是局部区域网络,其特点是覆盖面积较小,网络传输速率高,传输误码率低。 局域网拓扑类型主要包括星型网络、总线型网络、环形网络等,目前比较多见的局域网拓扑是星型网络以及以星型网络为基础的树形网络拓扑。 数据链路层寻址
事实上,并不是主机或路由器具有链路层地址,而是它们的适配器具有链路层地址,或称为MAC地址、物理地址、局域网地址等,用来表示局域网中的结点或网络接口。
虚拟局域网(virtural local area network) 虚拟局域网是一种基于交换机的逻辑分隔(或限制)广播域的局域应用形式。在传统局域网中,工作组通常都是被限定在同一个局域网网段中,不同工作组之间通过网桥或路由器交换数据,当一个工作组中的主机要转移 到其他工作组时,需要重新调整物理位置。而采用虚拟局域网的方式可以不受物理位置的限制,以软件的方式划分和管理局域网中的工作组,可以限制接收广播信息的主机数,从未使局域网不会因为传播过多的广播信息而引起性能的恶化。 虚拟局域网的设置是在以太网交换机上,通过软件方式实现的。划分虚拟局域网的方法主要有基于交换机端口划分、基于MAC地址划分和基于上层协议类型或地址划分等方式。 点对点链路协议:PPP,HDLC协议。 ???? 现在全世界用的最多的点对点链路的数据层协议是点对点协议(point to poin protocol)。Ppp处理错误检测、支持多种上层协议(即支持复用),允许在连接时刻协商IP地址、允许身份认证等。 ??? Ppp只工作于具有单个发送方和单个接收方的点对点链路中,而高级数据链路控制协议(HIGH-level data link control,HDLC)则剋呀应用于点对点链路和点对多点链路。 第六章物理层 物理层在实现位数据终端设备提供数据传输通路、传送数据以及物理层管理等功能的过程中,定义了建立、维护和拆除物理链路的规范和标准,同时也定义了物理层接口通信的标准,物理层接口标准的定义主要包括四大特性;机械标准、电器特性、功能特性以及规程特性,物理层接口协议主要任务就是解决主机、工作站等数据终端设备与通信线路上通信设备之间的接口问题。 物理层在最底层,是真个计算机网络结构 体系机构的基础。
概念
计算机网络是一种典型的数据通信系统。 信源-----?发送设备-------?信道------?接收设备-----?信宿 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?| ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??噪声源 信源:将消息转换为信号的设备,如电话机、摄像机、计算机等 发送设备:将信源产生的信号进行适当的变换的装置,使之适合于在信道中传输,变化的方式主要包括编码和调制。 信道:信号传输的媒介,总体上可以分为有线信道和无线信道两大类,具体的类型包括双绞线、同轴电缆、光纤、大气层、外层空间等 接收设备;完成发送设备的反变换,即进行译码和解调,还原原始的发送信号。 信宿:信号的终点,并将信号转换为供人们能识别的消息。 噪声:自然界和通信设备中所固有的,对通信信号产生干扰和影响的各种信号。噪声对通信系统是有害的,但又无法完全避免。 数据通信方式:为了适应不同的通信环境、通信要求和经济成本,数据在通信系统中的传输有着多种方式, 按数据传输的方向,可分为单向通信、双向交替通信和双向同时通信。 按二进制数据传输的时空顺序分为:并行通信和串行通信。 按发送和接收方对数据保持步调一致分为异步通信和同步通信。
导引型传输介质,又可称为有线信道,以导线为传输介质,信号沿导线进行传输。有架空明线(基本不用)、双绞线电缆、同轴电缆、光纤等。
根据电磁波频率,通信距离与位置的不同,电磁波的传播可以分为地波传输、天波传输 (或称电离层反射波)和视线传播。 第七章.无线与移动网络 第一节无线网络 无线网络主要的部分
?? 无线网络与有线网络最主要的区别就是使用了无线链路。有线网络与无线网络的重要区别主要在数据链路层和物理层,主要表现在以下几个方面
由此可见,无线链路中的比特差错将比有限链路中更为常见。因此,无线链路协议不仅采用有效的CRC错误检测码,还采用了链路层ARQ协议来重传受损的帧。
无线网络不一定是移动网络,但移动网络一定是无线网络。
IEEE 802家族是由一系列局域网技术规范组成的。IEEE 802.11发表于1997年,是原始标准,支持速率2Mbit/s,工作在2.4Ghz的ISM(industrial scientific medical)频段.定义了物理层数据传输方式:DSSS、FHSS和红外线传输。在MAC层采用了类似有线以太网CSMA/CD协议的CSMA/CA协议 。 IEEE 802.11体系结构的基本构建由两部分组成
第八章.网络安全基础 网络安全威胁:从报文传输方面,主要包括窃听、插入、假冒、劫持等安全威胁。
概念:一般来说, 未加密消息在密码学中被称为明文 伪装消息以隐藏消息的过程称为加密 而被加密的消息称为密文 把密文转换成明文的过程称为解密。
在历史上,加密方法被分为替代密码和换位密码两大类。 替代密码是将明文字母表M中的每一个字母用密文字母表C中的相应字母来替代,常见的加密模型由移位密码、乘数密码、仿射密码等。 换位密码:又称置换密码,是根据一定的规则重新排列明文,以便打破明文的结构特性。置换密码的特点是保持明文的所有字符不变,只是利用置换打乱了明文字符的位置和次序。也就是说,改变了明文的结构,不改变明文的内容。 换位密码可分为列置换密码和周期置换密码。
对称密钥密码的加密密钥和解密密钥是相同的。 计算机常用的对称密钥加密为分组密码,比较常见的分组密码有DES、AES、IDEA等 DES加密算法:DES是典型的分组密码,使用56位密钥,明文为64位分组序列,共进行16轮的加密,每轮加密都会进行复杂的替换和置换操作,并且每轮加密都会使用一个由56位密钥导出的48位密钥,最终输出与明文等长的64位密文。 目前,DES已经被证实不是很安全了,屡次被破解,DES的最近一次评估是在1994年,同时决定自1998年12月以后,DES将不再作为美国联邦加密标准。 三重DES:由于DES密钥只有56位,易于遭受穷举式攻击。作为一种替代加密方案,有人提出使用两个密钥的三重DES加密方法,并在1985年成为美国的一个商用加密标准。该方法使用两个密钥,执行三次DES算法。加密的过程是加密—解密—加密,解密的过程是解密---加密---解密。 AES(advanced encryption standard)加密算法:DES逐渐不能适应现代密码安全性需求,就连三种DES也无法适应,于是一种新的密码标准应运而生。 AES加密过程涉及4种操作:字节替代、行移位、列混淆和轮密钥加。解密过程分别为对应的逆操作。 AES加密算法的特点
IDEA加密算法 国际数据加密算法(international data encryption algorithm)是1992年提出的非常成功的分组密码,并且广泛应用在安全电子邮件PGP中。 IDEA加密算法是一个分组长度为64位的分组密码算法,密钥长度为128位,同一个算法即可用于加密,也可用于解密。算法运用硬件与软件实现都很容易,而且比DES算法在实现上快得多。IEDA自问世以来,已经经历了大量的详细审查,对密码分析具有很强的抵抗能力,在很多商业产品中被使用。 对称加密 特点: 1、加密方和解密方使用同一个密钥; 2、加密解密的速度比较快,适合数据比较长时的使用; 3、密钥传输的过程不安全,且容易被破解,密钥管理也比较麻烦; 优缺点: ?????????优点:算法公开、计算量小、加密速度快、加密效率高。 ?????????缺点: (1)交易双方都使用同样钥匙,安全性得不到保证。 (2)每对用户每次使用对称加密算法时,都需要使用其他人不知道的惟一钥匙,这会使得发收信双方所拥有的钥匙数量呈几何级数增长,密钥管理成为用户的负担。对称加密算法在分布式网络系统上使用较为困难,主要是因为密钥管理困难,使用成本较高。 1、DES 已破解,不再安全,基本没有企业在用了 是对称加密算法的基石,具有学习价值 密钥长度56(JDK)、56/64(BC) 2、DESede(三重DES) 早于AES出现来替代DES 计算密钥时间太长、加密效率不高,所以也基本上不用 密钥长度112/168(JDK)、128/192(BC) 3、AES 最常用的对称加密算法 密钥建立时间短、灵敏性好、内存需求低(不管怎样,反正就是好) 实际使用中,使用工作模式为CTR(最好用BC去实现),此工作模式需要引入IV参数(16位的字节数组) 密钥长度128/192/256,其中192与256需要配置无政策限制权限文件(JDK6) 填充模式最常用的两种PKCS5Padding和PKCS7Padding,其中后者只有BC独有。 4、IDEA 常用的电子邮件加密算法 工作模式只有ECB 密钥长度128位 5、PBE 综合了消息摘要算法和对称加密算法,最常见的是PBEWithMD5AndDES 工作模式只有CBC(已丧失安全性,不推荐使用),所以PBE也不推荐使用了
非对称密码的加密密钥和解密密钥是不同的。 非对称加密需要两个密钥:公钥 (publickey)?和私钥 (privatekey)。公钥和私钥是一对,如果用公钥对数据加密,那么只能用对应的私钥解密。如果用私钥对数据加密,只能用对应的公钥进行解密。因为加密和解密用的是不同的密钥,所以称为非对称加密。 对称密钥加密算法经过多年的发展与改进,在防止暴力破解上做的已经非常完美了,但是仍然面临一个最大的问题,就是密钥分发问题。不管使用的密码系统有多强,如果密码分析者能直接偷取到密钥,则整个系统将变得毫无价值。因此,想要解决这个问题,需要对密钥进行保护,以防被偷,但是密钥总是需要发送给解密一方的。如何既方便密钥的分发,又确保密码体系的安全,是秘密体系面临的一个重要问题。非对称密码或称公开密钥密码(简称公钥密码),就解决了这个问题。 非对称加密算法的保密性好,它消除了最终用户交换密钥的需要。但是加解密速度要远远慢于对称加密,在某些极端情况下,甚至能比对称加密慢上1000倍。 非对称加密算法 RSA算法 RSA 是目前最有影响力的公钥加密算法,该算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥,即公钥,而两个大素数组合成私钥。公钥是可发布的供任何人使用,私钥则为自己所有,供解密之用。 工作流程 A 要把信息发给 B 为例,确定角色:A 为加密者,B 为解密者。首先由 B 随机确定一个 KEY,称之为私钥,将这个 KEY 始终保存在机器 B 中而不发出来;然后,由这个 KEY 计算出另一个 KEY,称之为公钥。这个公钥的特性是几乎不可能通过它自身计算出生成它的私钥。接下来通过网络把这个公钥传给 A,A 收到公钥后,利用公钥对信息加密,并把密文通过网络发送到 B,最后 B 利用已知的私钥,就能对密文进行解码了。以上就是 RSA 算法的工作流程。 运算速度 由于进行的都是大数计算,使得 RSA 最快的情况也比 DES 慢上好几倍,无论是软件还是硬件实现。速度一直是 RSA 的缺陷。一般来说只用于少量数据加密。RSA 的速度是对应同样安全级别的对称密码算法的1/1000左右。 比起 DES 和其它对称算法来说,RSA 要慢得多。实际上一般使用一种对称算法来加密信息,然后用 RSA 来加密比较短的公钥,然后将用 RSA 加密的公钥和用对称算法加密的消息发送给接收方。 这样一来对随机数的要求就更高了,尤其对产生对称密码的要求非常高,否则的话可以越过 RSA 来直接攻击对称密码。 公钥传递安全 和其它加密过程一样,对 RSA 来说分配公钥的过程是非常重要的。分配公钥的过程必须能够抵挡中间人攻击。假设 A 交给 B 一个公钥,并使 B 相信这是A 的公钥,并且 C 可以截下 A 和 B 之间的信息传递,那么 C 可以将自己的公钥传给 B,B 以为这是 A 的公钥。C 可以将所有 B 传递给 A 的消息截下来,将这个消息用自己的密钥解密,读这个消息,然后将这个消息再用 A 的公钥加密后传给 A。理论上 A 和 B 都不会发现 C 在偷听它们的消息,今天人们一般用数字认证来防止这样的攻击。
报文/消息完整性,也称为报文/消息认证(或报文鉴别),其主要目标是:证明报文确实来自声称的发送方;验证报文在传输过程中没有被篡改;预防报文的时间、顺序被篡改、预防报文持有期被篡改;预防抵赖(如发送方否认已发送的消息或接收方否认已接收的消息)。 1.消息完整性检测方法:
MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。MD5由美国密码学家罗纳德·李维斯特(Ronald Linn Rivest)设计,于1992年公开,用以取代MD4算法。这套算法的程序在 RFC 1321 标准中被加以规范。1996年后该算法被证实存在弱点,可以被加以破解,对于需要高度安全性的数据,专家一般建议改用其他算法,如SHA-2。2004年,证实MD5算法无法防止碰撞(collision),因此不适用于安全性认证,如SSL公开密钥认证或是数字签名等用途。(百度百科)。 MD5算法的原理可简要的叙述为:MD5码以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。
安全散列函数,是典型的用于创建数字签名的单向散列算法。 2.报文认证 报文认证是使消息的接受者能够检验收到的消息是否是真实的认证方法。报文认证的目的有两个,一个是消息源的认证,即验证消息的来源是真实的,另一个是消息的认证,即验证消息在传递过程中未被篡改。
数字签名在信息安全,包括身份认证、数据完整性、不可否认性以及匿名性等方面有重要应用,特别是在大型安全通信中的密钥分配、认证以及电子商务系统中具有 重要作用。数字签名是实现认证的重要工具。 数字签名和消息认证的区别:消息认证使接收方能验证发送方以及所发消息内容是否被篡改过。当收发者之间没有利害冲突时,这对防治第三者的破坏来说事足够了,但当接收者和发送者之间有利害冲突时,就无法解决它们之间的纠纷,此时须借助满足要求的数字签名技术。
因特网并不是一个安全的地方,隐藏着各种危险,可以说是危机四伏。在众多网络安全防护措施里,防火墙是比较有效并且被广泛部署使用的设施。防火墙是能够隔离组织内部网络与公共互联网,允许 某些分组通过,而阻止其他分组进去或离开内部网络的软件、硬件和软件硬件结合的一种设施。 防火墙发挥作用的基本前提,是需要保证从外部到内部和从内部到外部的所有流量都经过防火墙,并且仅被授权的流量允许通过,防火墙能够限制对授权流量的访问。? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
分为三类:无状态分组过滤器、有状态分组过滤器和应用网关。 参考:计算机网络原理2018年书籍 未记录网址的部分网友的总结知识点。 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 17:38:22- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |