协议分层
网络设计者以分层的方式组织网络协议,以及实现这些协议的网络硬件和软件,各层的所有协议被称为协议栈。下一层向它的上一层提供服务,即一层的服务模型。
因特网的协议栈从下到上分为五层:物理层、链路层、网络层、传输层、应用层。
数据从发送端系统的协议栈向下,沿中间的链路上上下下,然后向上到达接收端系统的协议栈。在每一层,一个分组具有首部字段和有效载荷字段两种字段,有效载荷字段包含了真正的数据,而首部字段由上一层向下一层发送时添加,包含了一些与交付、校验等相关的信息,这个过程称为封装。
链路中的路由器和链路层交换机同样实现了协议分层,但并不像主机实现了所有层次,路由器实现了物理层、链路层、网络层,链路层交换机实现了物理层、链路层。
传输过程示意图如下:
应用层
应用层是网络应用程序及它们的应用层协议存留的地方,位于应用层的信息分组称为报文。
应用层协议主要包括:
- HTTP(超文本传输协议)
- SMTP(简单邮件传输协议)
- FTP(文件传输协议)
- DNS(域名解析系统)
传输层
传输层在应用程序端点之间传送应用层报文,传输层的分组为报文段。
传输层协议主要包括:
- UDP(提供面向无连接的服务,不可靠、无流量控制、无拥塞控制、尽最大努力交付)
- TCP(提供面向有连接的服务,可靠、有流量控制、有拥塞控制、向目的地确保传递)
网络层
网络层负责将数据报从一台主机移动到另一台主机,网络中的路由器和主机通过网络层的IP协议进行标识,数据报在网络中传输的路径通过该层的路由选择协议进行控制。路由器实现了该层。
链路层
链路层沿着路径将数据报传递给下一个节点;在下一个节点,链路层将数据表上传给网络层。链路层分组为帧。
物理层
物理层将帧中的比特从一个节点沿着物理媒体移动到下一个节点。
网络安全
恶意软件
恶意软件是指有意设计用于对计算机系统、网络或用户造成伤害、窃取信息或进行未授权操作的恶意软件程序。主要包含两类:
- 病毒:一种需要某种形式的用户交互来感染用户设备的恶意软件;
- 蠕虫:一种无需任何明显用户交互就能进入设备的恶意软件。
拒绝服务攻击
拒绝服务攻击(DOS) 是通过向目标主机发送大量请求,目标主机疲于发送拒绝服务响应,从而占用目标主机资源使其影响合法用户的正常使用,破坏目标主机的可用性的攻击手段,主要分为以下几种:
- 弱点攻击:向一台目标主机上的易受攻击的程序发送制作精细的报文,使其无法正常运作甚至崩溃。
- 带宽洪泛:向目标主机发送大量分组,使目标的接入链路变得拥塞。
- 连接洪泛:在目标主机中创建大量半开或全开TCP连接,使目标停止接受合法的连接。
分布式拒绝服务攻击(DDOS) 是攻击者控制多个源并让每个源向目标猛烈发送流量的DOS攻击。
嗅探攻击
攻击者在有线或无线网络中放置一台分组嗅探器,它能够被动地接收到网络中传输的分组的副本,从而导致一些敏感信息的泄漏。一般很难检测到分组嗅探器的存在,因此基本使用密码学的方式防御该类攻击。
IP哄骗
将具有虚假源地址的分组注入网络,从而冒充另一用户。抵御该类攻击可以采用端点鉴别的方式。