【文档说明】网络安全协议基础(PPT50页).pptx,共(50)页,176.860 KB,由精品优选上传
转载请保留链接:https://www.ichengzhen.cn/view-287755.html
以下为本文档部分文字说明:
网络安全协议基础1标准与协议(一)网络非常复杂!⚫大量组成单元⚫主机⚫路由器⚫不同介质的链路⚫应用⚫协议⚫硬件,软件问题:⚫使用哪种网线?网线所使用的电子信号的意义?⚫如果两台计算机使用不同的操作系统,应该如何处理通信?⚫如何确定哪些数据是发给哪台计算机的?⚫如果其中一
台计算机要使用其它类型的网线,应该如何处理通信?两台计算机,一根网线,软件协议2标准与协议(二)⚫要解决上述问题,必须为网络通信建立标准。⚫这些标准必须尽量保持松耦合,以便将由于一个协议的变化而对其他协议产生的影响降低到最小。⚫最坏的情况:改变一个协议,需要重写软件。⚫可以对标准和协
议进行分层,为网线上的物理通信建立标准,然后为其上的逻辑层通信建立标准。3什么是协议?一种人类使用的协议与一种计算机网络协议:4什么是网络协议?…发送特定的消息…当接收到消息或有其他事件发生时,采取特
定的行动⚫Internet上的所有通信活动都由协议控制协议定义了网络实体之间发送和接收的消息的格式,顺序以及在消息传递过程中的所有活动5ISO/OSI协议栈applicationpresentationsessiontransportnetw
orklinkphysicalInternationalStandardsOrganization’sOpenSystemInterconnectionOSI参考模型是国际标准化组织ISO制定的模型,把计算机与计算机之间的通信
分成七个互相连接的协议层6物理层(PhysicalLayer)⚫最底层是物理层,这一层负责传送比特流,它从第二层数据链路层接收数据帧,并将帧的结构和内容串行发送,即每次发送一个比特。⚫物理层只能看见0和1,只与电信号技术和光信号技术的物理特征相关。这些特征包括用于传输信号电流的电压、介质类型以及
阻抗特征。该层的传输介质是同轴电缆、光纤、双绞线等,有时该层被称为OSI参考模型的第0层。⚫物理层可能受到的安全威胁是搭线窃听和监听,可以利用数据加密、数据标签加密,数据标签,流量填充等方法保护物理层的安全。7数据链路层(DataLi
nkLayer)⚫OSI参考模型的第二层称为数据链路层。与其他层一样,它肩负两个责任:发送和接收数据。⚫还要提供数据有效传输的端到端连接。在发送方,数据链路层负责将指令、数据等包装到帧中,帧是该层的基本结构。⚫帧中包含足够的信
息,确保数据可以安全地通过本地局域网到达目的地。8网络层(NetworkLayer)⚫网络层的主要功能是完成网络中主机间的报文传输。在广域网中,这包括产生从源端到目的端的路由。⚫当报文不得不跨越两个或多个网络时,会产生很多新问题。⚫例如:第二个网络的寻址方法可能不同于第一个网络;第二个网络也可
能因为第一个网络的报文太长而无法接收;两个网络使用的协议也可能不相同。⚫网络层必须解决这些问题,使异构网络能够互连。⚫在单个局域网中,网络层是冗余的,因为报文是直接从一台计算机传送到另一台计算机的。9传输层(Transp
ortLayer)⚫传输层的主要功能是完成网络中不同主机上的用户进程之间可靠的数据通信。⚫最好的传输连接是一条无差错的、按顺序传送数据的管道,即传输层连接是真正端到端的。⚫由于绝大多数主机都支持多用户操作,因而机器上有多道程序,这意味着多条连接将进出于这些主机
,因此需要以某种方式区别报文属于哪条连接。识别这些连接的信息可以放入传输层的报文头中。10会话层(SessionLayer)⚫会话层允许不同机器上的用户之间建立会话关系。会话层提供的服务之一是管理对话控制。⚫会话层允许信息同时双向传输,或限制
只能单向传输。如果属于后者,类似于物理信道上的半双工模式,会话层将记录此时该轮到哪一方。⚫一种与对话控制有关的服务是令牌管理(TokenManagement)。会话层提供了令牌,令牌可以在会话双方之间移动,只有持有令牌的一
方可以执行某种操作。11表示层(PresentationLayer)⚫表示层以下各层只关心从源端机到目标机可靠地传送比特,而表示层关心的是所传送的信息的语法和语义。⚫表示层服务的一个典型例子是用一种一致选定的标准方法对数据进行编码。⚫大多数用户程序之间并非交换
随机的比特,而是交换诸如人名、日期、货币数量和发票之类的信息。这些对象是用字符串、整型数、浮点数的形式,以及由几种简单类型组成的数据结构来表示。12应用层(ApplicationLayer)⚫应用层包含大量人们普遍需要的协议。对于
需要通信的不同应用来说,应用层的协议都是必须的。⚫例如,PC机用户使用仿真终端软件通过网络仿真某个远程主机的终端并使用该远程主机的资源。⚫这个仿真终端程序使用虚拟终端协议将键盘输入的数据传送到主机的操作系统,
并接收显示于屏幕的数据。13分层⚫从概念上讲,我们可以把网络按下图进行分层Applications(WebBrowsers,etc)Networking(TCP/IP,etc)Hardware(Ethernet,Wirel
ess,Fiber)14协议分层与数据每一层从上一层接收数据⚫添加头信息后得到新的数据单元⚫把新数据单元传到下一层applicationtransportnetworklinkphysicalapplicationtransportnetwo
rklinkphysicalsourcedestinationMMMMHtHtHnHtHnHlMMMMHtHtHnHtHnHlmessagesegmentdatagramframe15分层:逻辑通信(一)每一层⚫分布式的⚫“实体”
在每个节点上实现本层的功能⚫实体与对等实体交换消息16分层:逻辑通信(二)如:transport⚫从应用层得到数据⚫添加地址和可靠性标记信息,得到”数据报”⚫把数据报发送给对等实体⚫等待对方发送确认信息17分层:物理通信applicationtransportne
tworklinkphysicalapplicationtransportnetworklinkphysicalapplicationtransportnetworklinkphysicalapplicationtransportn
etworklinkphysicalnetworklinkphysicaldatadata18解剖TCP/IP模型⚫TCP/IP模型、OSI模型和常用协议的对应关系19网络协议IP⚫IP协议已经成为世界
上最重要的网际协议。⚫IP的功能定义在IP头结构中。⚫IP是网络层上的主要协议,同时被TCP协议和UDP协议使用。⚫TCP/IP的整个数据报在数据链路层的结构以太网数据包头IP头TCP/UDP/ICMP/IGMP头数据20IP头的结构版本
(4位)头长度(4位)服务类型(8位)封包总长度(16位)封包标识(16位)标志(3位)片断偏移地址(13位)存活时间(8位)协议(8位)校验和(16位)源IP地址(32位)目的IP地址(32位)选项(可选)填充(可选)数
据21IP头的结构⚫IP头结构在所有协议中都是固定的,说明如下:⚫版本:占第一个字节的高四位。头长度:占第一个字节的低四位。⚫服务类型:前3位为优先字段权,现在已经被忽略。接着4位用来表示最小延迟、最大吞吐量、最高可靠性和最小费用。⚫封
包总长度:整个IP报的长度,单位为字节。⚫存活时间:就是封包的生存时间。通常用通过的路由器的个数来衡量,比如初始值设置为32,则每通过一个路由器处理就会被减一,当这个值为0的时候就会丢掉这个包,并用ICMP消息通知源主机。⚫协议:定义了数据的协议,分
别为:TCP、UDP、ICMP和IGMP。⚫校验和:首先将该字段设置为0,然后将IP头的每16位进行二进制取反求和,将结果保存在校验和字段。⚫源IP地址:将IP地址看作是32位数值则需要将网络字节顺序转化位主机字节顺序。
⚫目的IP地址:转换方法和源IP地址一样。⚫IP是面向非连接的,传递数据的时候不检测网络是否连通,所以是不可靠的数据报协议。22IPv4的IP地址分类⚫基本的IP地址是8位一个单元的32位二进制数。为了方便人们的使用,对机器友好的二进制地址转变为人们更熟悉的十进制地址。⚫I
P地址中的每一个8位组用0~255之间的一个十进制数表示,这些数之间用点“.”隔开。⚫IP地址分成五类:A类地址、B类地址、C类地址、D类地址和E类地址。⚫每一个IP地址包括两部分:网络地址和主机地址,上面五类地址对所支持的网络数和主机数有不同的组合。23IPv
4的地址结构A类B类C类0001117bits24bits14bits16bits网络号主机(接口)号网络号主机(接口)号21bits8bits网络号主机(接口)号D类111组播地址28bits0E类111保留地址28bits124IPv4的地址范围⚫A类⚫0.0.0.0~
126.255.255.255⚫B类⚫128.0.0.0~191.255.255.255⚫C类⚫192.0.0.0~223.255.255.255⚫D类⚫224.0.0.0~239.255.255.255⚫E类⚫240.0.0.0~255.255.255.2
5525保留的IP地址00...000000...000011...111111...1111本机本网中的主机局域网中的广播对指定网络的广播回路00...00主机号1111...1111网络号127任意值一般来说,主机号部分为全“1”的IP地址保留用作广播地址;
主机号部分为全“0”的IP地址保留用作网络地址。0000...0000网络号网络地址26子网掩码(一)⚫子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网的根据。⚫两台计算机各自的IP地址与子网掩码进行二进制“与”(AND)运算后,如果
得出的结果是相同的,则说明这两台计算机是处于同一个子网络上的,可以进行直接通信。27子网掩码(二)⚫计算机A的IP地址为192.168.0.1,子网掩码为255.255.255.0,将转化为二进制进行“与”运算。IP地址11010000.10101000.00
000000.00000001子网掩码11111111.11111111.11111111.00000000IP地址与子网掩码按位“与”运算11000000.10101000.00000000.00000
000运算的结果转化为十进制192.168.0.028子网掩码(三)⚫计算机B的IP地址为192.168.0.254,子网掩码为255.255.255.0,将转化为二进制进行“与”运算。IP地址11010000.10101000.00000000.11111110子网掩码11111
111.11111111.11111111.00000000IP地址与子网掩码按位“与”运算11000000.10101000.00000000.00000000运算的结果转化为十进制192.168.0.029
子网掩码(四)⚫计算机C的IP地址为192.168.0.4,子网掩码为255.255.255.0,将转化为二进制进行“与”运算。IP地址11010000.10101000.00000000.00000100子网
掩码11111111.11111111.11111111.00000000IP地址与子网掩码按位“与”运算11000000.10101000.00000000.00000000运算的结果转化为十进制192.168.0.030传输控制
协议TCP⚫TCP是传输层协议,提供可靠的应用数据传输。⚫TCP在两个或多个主机之间建立面向连接的通信。⚫TCP支持多数据流操作,提供错误控制,负责对乱序到达的报文进行重新排序。31TCP协议的头结构⚫T
CP的功能受限于其头中携带的信息源端口(2字节)目的端口(2字节)序号(4字节)确认序号(4字节)头长度(4位)保留(6位)URGACKPSHRSTSYNFIN窗口大小(2字节)校验和(16位)紧急指针(16位)选
项(可选)数据32TCP协议的头结构(一)⚫TCP协议的头结构都是固定的,说明如下:⚫TCP源端口:16位的源端口包含初始化通信的端口号。源端口和IP地址的作用是标识报文的返回地址。⚫TCP目的端口:16位的目的端口域定义传输的目的。这个端口指明报文接收计算机上的应用程序
地址接口。⚫序列号:TCP连线发送方向接收方的封包顺序号。⚫确认序号:接收方回发的应答顺序号。⚫头长度:表示TCP头的四字节数,如果转化为字节个数需要乘以4。33TCP协议的头结构(二)⚫URG:是否使用紧急指针,0为不使用,1为使用。⚫ACK:请求/应答状态。0为请求,1为应答。
⚫PSH:以最快的速度传输数据。⚫RST:连线复位,首先断开连接,然后重建。⚫SYN:同步连线序号,用来建立连线。⚫FIN:结束连线。如果FIN为0是结束连线请求,FIN为1表示结束连线。⚫窗口大小:目的机使用16位的域告诉源主机,它想收到的每个TCP数据段大小。⚫校验和:这个校
验和和IP的校验和有所不同,不仅对头数据进行校验还对封包内容校验。⚫紧急指针:当URG为1的时候才有效。TCP的紧急方式是发送紧急数据的一种方式。34传输控制协议TCP的特点⚫传输控制协议TCP的特点是:⚫提供可靠的、面向连接的数据报传递服务。⚫传输控制协议可以做到如下的六点:
⚫确保IP数据报的成功传递。⚫对程序发送的大块数据进行分段和重组。⚫确保正确排序以及按顺序传递分段的数据。⚫通过计算校验和,进行传输数据的完整性检查。⚫根据数据是否接收成功发送消息。通过有选择的确认,也对没有收到的数据发送确认。⚫为必须使用可靠的基于会话的数据传输的程序提供支
持,如数据库服务和电子邮件服务。35TCP协议的工作原理⚫TCP提供两个网络主机之间的点对点通信。⚫TCP从程序中接收数据并将数据处理成字节流。⚫首先将字节流分成段,然后对段进行编号和排序以便传输。在两个TCP主机之间交换数据
之前,必须先相互建立会话。TCP会话通过三次握手完成初始化。这个过程使序号同步,并提供在两个主机之间建立连接所需的控制信息。⚫TCP在建立连接的时候需要三次确认,俗称“三次握手”,在断开连接的时候需要四次确认,俗称“四次挥手”。36TCP协议的三次“握手”当网络可能丢失、存储和重复
发送报文分组时就会出现问题,特别是延迟性重复问题,需要一种可靠的方法建立连接。37TCP协议的四次“挥手”⚫需要断开连接的时候,TCP也需要互相确认才可以断开连接。发送FIN消息(SEQ=x)接收FIN消息(SEQ=x)TCP发送确认(ACK=x+1)
接收ACK消息(ACK=x+1)A→B的连接断开(半关闭)但A仍可接收数据发送确认(ACK=y+1)接收确认(ACK=y+1)B→A的连接断开发送FIN消息(SEQ=y,ACK=x+1)接收FIN消息(SEQ=y)38用户数据报
协议UDP⚫UDP为应用程序提供发送和接收数据报的功能。⚫某些程序(比如腾讯的OICQ)使用的是UDP协议,UDP协议在TCP/IP主机之间建立快速、轻便、不可靠的数据传输通道。39UDP协议⚫UDP提供的是非连接的数据报服务,意味着UDP无法保证任何数据报的
传递和验证。⚫UDP的头结构源端口(2字节)目的端口(2字节)封报长度(2字节)校验和(2字节)数据40UDP的头结构⚫源端口:16位的源端口域包含初始化通信的端口号。源端口和IP地址的作用是标识报文的返回地址。⚫目的端口:16位的目的端口域定义传输的目
的。这个端口指明报文接收计算机上的应用程序地址接口。⚫封包长度:UDP头和数据的总长度。⚫校验和:和TCP的校验和一样,不仅对头数据进行校验,还对包的内容进行校验。41UDP和TCP传递数据的差异⚫UDP和TCP传递数据的差异类似于电话和明信片之间的差异。⚫TCP就像电话,必须先验证目标是否可以访
问后才开始通信。⚫UDP就像明信片,信息量很小而且每次传递成功的可能性很高,但是不能完全保证传递成功。⚫UDP通常由每次传输少量数据或有实时需要的程序使用。在这些情况下,UDP的低开销比TCP更适合。42UDP和TCP传递数据的比较UDP协议TCP协议无连接的
服务;在主机之间不建立会话。面向连接的服务;在主机之间建立会话。UDP不能确保或承认数据传递或序列化数据。TCP通过确认和按顺序传递数据来确保数据的传递。使用UDP的程序负责提供传输数据所需的可靠性。使用TCP的
程序能确保可靠的数据传输。UDP快速,具有低开销要求,并支持点对点和一点对多点的通信。TCP比较慢,有更高的开销要求,而且只支持点对点通信。UDP和TCP都使用端口标识每个TCP/IP程序的通信。43互联网控制消息协议ICMP⚫通过ICMP协议,主机和路由器可以报告错误并交换
相关的状态信息。在下列情况中,通常自动发送ICMP消息:⚫IP数据报无法访问目标。⚫IP路由器(网关)无法按当前的传输速率转发数据报。⚫IP路由器将发送主机重定向为更好的到达目标的路。⚫ICMP协议的结构44ICMP协议的头结构⚫ICMP头结构比较简单类型(8位)代码(8位)校验和(8位)
参数和数据45UDP数据报分析⚫常用的网络服务中,DNS使用UDP协议。DNS是域名系统(DomainNameSystem)的缩写⚫当用户在应用程序中输入DNS名称时,DNS服务可以将此名称解析为与此名称相关的IP地址。46FTP服务
⚫FTP的缺省端口是20(用于数据传输)和21(用于命令传输)。⚫在TCP/IP中FTP是非常独特的,因为命令和数据能够同时传输,而数据传输是实时的,其他协议不具有这个特性。⚫FTP客户端可以是命令界面的也可
以是图形界面的。47Telnet服务⚫Telnet是TELecommunicationsNETwork的缩写,其名字具有双重含义,既指应用也是指协议自身。⚫Telnet给用户提供了一种通过网络登录远程服务器的方式。⚫Telnet通过端口23工作。
48Email服务⚫目前Email服务用的两个主要的协议是:简单邮件传输协议SMTP(SimpleMailTransferProtocol)和邮局协议POP3(PostOfficeProtocol)。⚫SMTP默认占用25端
口,用来发送邮件,POP3占用110端口,用来接收邮件。⚫在Windows平台下,主要利用MicrosoftExchangeServer作为电子邮件服务器。49Web服务⚫Web服务是目前最常用的服务,使用H
TTP协议,默认Web服务占用80端口⚫在Windows平台下一般使用IIS(InternetInformationServer)作为Web服务器。50