TCP-IP详解学习笔记2

TCP-IP详解学习笔记2

链路层

  • 链路层的目的是为IP模块发送和接收IP数据报;
    • TCP/IP支持多种不同的链路层,依赖于使用网络硬件类型:有线局域网(以太网,城域网(MAN),有线语音网络)、无线网络(Wi-Fi无线局域网,蜂窝技术的各种无线数据服务)。
    • 大多数链路层技术都有一个相关的协议,描述路由硬件传输的相应PDU格式,链路层对应的是帧数据,以区分更高层的PDU格式。
    • 帧格式一般支持可变的帧长度,范围从几字节到几千字节,上限叫作最大传输单元(MTU);
    • 调制解调技术不强制规定最大帧。
  • 如果多个站同时发送数据,可能因信号传播延迟而发生碰撞,碰撞可以被监测到,它会导致发送站等待一个随机时间,然后重新发送数据,这种方法叫作带冲突监测的载波侦听多路访问。
  • IEEE 802局域网、城域网标准。
    • 所有的以太网(802.3)帧都基于一个共同的格式:
      • 以太网帧开始是一个前导字段,用于确定一个帧的到达时间,并确定编码位(时钟恢复)之间的时间量;
      • 以太网是一个异步的局域网,接口到另一个接口之间的编码位间隔可能不同。
      • 前导是一个公认的模式,典型值为0xAA,在发现帧起始分隔符(SFD),接收器使用它恢复时钟,SFD的固定值为0xAB.
    • 以太网(IEEE 802.3)帧格式包含一个源地址和目的地址,一个重载的长度/类型字段,一个数据字段和一个帧校验序列(CRC32)。
    • 大多数系统中,以太网使用1500字节的MTU.
  • 帧校验序列、循环冗余校验:
    • 循环冗余校验(CRC)字段位于尾部,一般具有32位。
    • 使用一个模2除法除以一个(n+1)位的值,这个作为除数的值称为生成多项式,取余数的二进制反码。
    • 位模的任何改变极可能导致余数的改变,帧在传输过程中受损就会被丢弃。
  • 帧大小:
    • 以太网帧有最小和最大尺寸,最小帧是64字节,最大帧长度为1518字节。
  • 为解决大型多用途交换网路运行中的问题,IEEE采用一种称为虚拟局域网(VLAN)的扩展。
  • 以全双工模式运行扩展的以太网和跨越不同速率的网段时,可能需要由交换机将帧缓存一段时间,在发送方采取流量控制的方法,利用PAUSE帧实现流量控制。

网桥和交换机

  • 交换机本质上是高性能的网桥,网桥和交换机用于连接多个物理链路层网络;
  • 过滤数据库就是一张存端口的列表。
  • 生成树协议(STP)能够解决循环帧, STP通过在每个网桥禁用某些端口来工作,可避免拓扑环路。
  • 使用网桥协议数据单元(BPDU)的帧来实现让STP适应一些变化。
    • 最新的方案是快速生成树协议。
    • 根网桥在网络中标识符最小。
  • 传统STP的问题之一是在拓扑变化后,只能通过一定时间内未接收到的BPDU来检测。
    • 快速生成树协议(Rapid Spanning Tree Protocol, RSTP), 会监视每个端口的状态,并在故障时立即发送一个拓扑变化通知。
  • RSTP使边缘端口(只连接到端口站的端口)和正常的生成树端口之间,以及点到点链路和共享链路之间都有区别。
  • 多注册协议提供在网桥局域网环境中的站之间注册属性的通用方法。

无线局域网(IEEE 802.11 Wi-Fi)

  • 无线保真(Wi-Fi)是访问Internet的最流行技术之一,IEEE标准名称为802.11.
  • 多个站(STA),站和接入点(AP)组成一个操作子集,一个AP和相关的站被称为一个基本服务集(BSS),AP之间通常使用一种有线的分布式服务(DS,"主干"),形成一个扩展服务集(ESS).
  • 802.11帧:
    • 用于同步的前导码;
    • 物理层会聚程序(PLCP),以独立于物理层的方式提供特定的物理层信息。
      • 帧的PLCP部分的传输速率一般比其他部分低, 为了提高正确交互的概率(较低速率一般具有更好的容错性能),提供对传统设备的兼容性和防止慢速操作的干扰。
  • MPDU(Mac PDU)以帧控制字开始,其中包括2位的类型字段,用于识别该帧的类型。
  • 管理帧: 用于创建、维持、终止站和接入点之间的连接。
  • 控制帧: RTS/CTS和ACK,控制帧与帧确认被用于一种流量控制方式。
    • 流量控制有助于接收方使一个过快的发送方降低发送速率。
    • 帧确认有助于发送方知道哪些帧已正确接收。
    • 802.11支持请求发送和明确发送(RTS/CTS)。
    • AP提供一个称为分组大小阈值的配置选项。
      • 超过阈值的帧会导致一个RTS帧优先于数据帧发送。
      • iwconfig命令可用于设置多种变量,包括RTS和分片阈值,这是一个用于衡量链路可靠性的粗略指标。
  • 发送一个帧和接收一个ACK所需时间与链路距离和时隙(802.11 Mac协议的一个基本单位)相关。
  • 数据帧、分片和聚合: 在一个繁忙的网络中看到的帧一般都是数据帧。
    • 802.11帧和链路层(LLC)帧之间存在一对一的关系,它们保证更高层协议(IP)是可用的。
    • 帧分片时, 每个分片有自己的MAC头部和尾部的CRC, 并且他们独立于其他分片处理。
    • 除非使用块确认的功能,否则每个分片将被单独发送,并由接收方为每个分片产生一个ACK.
    • 分片仅用于目的地址为单播的帧。
    • 同一帧最多能分15个分片。
    • 最后一个分片将更多标志字段设为0,接收方根据分片号将帧重组并交付给更高层的协议。
    • 帧聚合:将多个完整的802.3(以太网)聚合在一个802.11帧中; 聚合为短帧。
  • 省电模式和事件同步功能:
    • 802.11提供一种使站进入有限电源状态的方式: 省电模式(PSM),STA可在某个时间关闭无线电接收器电路。
    • Wi-Fi采用时间同步功能(TSF),每个站保持一个64位计数器的参考时间,这个时间与网络中的其他站保持同步。
  • 802.11介质访问控制:
    • 在无线网络中检测"冲突"具有更大挑战性,无线网络中的介质是相对单一的,都需要协同传输,避免多个站点同时发送。
    • 点协调功能(PCF)、分布式协调功能(DCF)和混合协调功能(HCF).
    • 802.11载波侦听能以物理和虚拟方式实现。
    • 虚拟载波侦听机制会检查每个MAC帧中的持续时间字段,这通过站的侦听而非引导流量来实现。
    • 物理载波侦听(CCA), DCF冲突避免和退避过程,HCF和802.11e/n的QoS;
      • 支持QoS的Wi-Fi设备通常更昂贵更复杂。
  • 物理层的细节: 速率、信道和频率:
    • 802.11中,多个信道可能以不同方式、不同功率水平工作,这取决于所在地区和国家的监管。
    • 存在不同的信道宽度: 5MHz、10MHz、20MHz和40MHz, 信道绑定(将所有者的Wi-Fi系统聚合为2个20MHz信道)。
    • 更高吞吐量的802.11/802.11n,采用多输入多输出(MIMO)管理空间流,即由多个天线同时传输的多个数据流。
  • Wi-Fi安全:
    • 临时密钥完整性协议(TKIP)的方案。
    • CCMP是基于计数器模式的AES, 以确保用于认证和完整性的密码块链消息认证码的安全。
  • Wi-Fi网状网(802.11s):
    • 网状网(Mesh操作): 通过Mesh操作,无线站点可用作数据转换代理(像AP那样)。
    • 混合路由协议(HWRP)。
    • 基于对等同时认证(SAE)的认证(SAE).
      • 不需要特定的发起者与响应者之间的操作同步.
  • 点到点协议:
    • 点到点协议(PPT), 是一种在串行链路上传输IP数据报的流行方法,可分配Internet系统参数。
    • 点到点协议族支持建立链接的基本方法--称为链路控制协议(Link Control Protocol,LCP), 以及一系列的NCP协议。
    • 链路控制协议: 用于在点到点链路上建立和维护底层的双方通信路径。
      • 由2个1字节的包含固定值0x7E的标志字段包围。
    • LCP在基本的PPP分组之上进行了简单的封装。
      • 回送请求/应答消息可由LCP在一条活跃链路上随时交换,以验证对方的操作。
      • 放弃请求消息可用于性能测试,指示对方丢弃没有响应的分组。
    • LCP选项:
      • 异步控制字符映射(ACCM)选项定义那些控制字符(0x00~0x1F)需要被转义为PPP操作。
      • PPP支持一种交换链路质量报告信息的机制。
      • 回叫控制协议(CBCP)。
    • 多链路PPP: 可用于将多条点到点链路聚合为一条链路。
  • 环回:
    • 回环能力一般使用一个虚拟的环回网络接口来实现,它就像一个真正的网络接口,可通过TCP/IP与同一主机的其他部分通信。
      • 127.0.0.1,localhost;
      • 在linux中,回环接口被称为lo;
    • IPv4中以127开始的目的地址被回环,但是对于IPv6,只有地址::1被定义用于环回操作。
  • MTU和路径MTU:
    • 很多链路层网络中,携带高层协议PDU的帧大小是有限制的;
      • 以太网有效载荷的字节数通常被限制为1500;
      • 链路层的这种特征被称为最大传输单元(MTU).
    • 如果IP层有一个数据要传送,但是长度超过了MTU,则IP层就需要分片。
    • 路径MTU是不对称的,因为两个方向上的路由选路可能不同。
  • 隧道基础: 两台计算机通过Internet或其他网络建立一条虚拟链路是有用的(虚拟专用网络, VPN)。
    • 隧道是在高层(或同等层)分组中携带底层的数据。
    • 为某个协议的分组或另一层的分组建立隧道有多种方法:
      • 通用路由封装;
      • Microsoft专用的点对点隧道协议(PPTP);
      • 第2层隧道协议(LT2P).
  • 单向链路(DUL):
    • 当链路仅在一个方向工作时出现一个有趣的问题: 在一个方向工作的链路称为单向链路(UDL).
    • 可在辅助Internet接口上创建隧道。
    • 为了在接收方自动建立和维护隧道,规定了一种动态隧道配置协议(DTCP)。
  • 与链路层相关的攻击:
    • 由于大部分链路层信息不被高层共享, 因而被攻击后难以检测。
    • 混杂模式。
    • 攻击交换机,因为交换机中有一个基于每个端口的站列表。
    • WEP加密,可能被先进的Wi-Fi攻击涉及加密保护的攻击。
    • 如果攻击者可以访问两个端点之间的信道,它可采用很多方式来攻击PPP链路。
    • 隧道经常是目标,有时也成为攻击工具。
  • TCP/IP成功的原因之一在于它能工作在几乎任何一种链路技术之上。
    • 本质上来说:IP只要求发送方和接收方之间存在某条路径,它可能经过一些级联的中间链路。
    • 发送方和接收方之间可能永远没有一条端到端路径。
posted @ 2019-04-05 21:53  coding-for-self  阅读(527)  评论(0编辑  收藏  举报