精华内容
下载资源
问答
  • 网络边缘 端系统 接入网 家庭接入 企业接入 ...一、网络边缘端系统 与因特网相连的计算机或者其他设备称为端系统(end system)或者主机(host)。  主机有时进一步划分为客户(client)和服务器(se

    一、网络边缘

    端系统

      与因特网相连的计算机或者其他设备称为端系统(end system)或者主机(host)。
      主机有时进一步划分为客户(client)和服务器(server)。

    接入网

      接入网(access network)指的是将端系统连接到边缘路由器的物理链路。

    家庭接入

    1. DSL(数字用户线, Digital Subscriber Line):
      • DSL调制解调器将主机的数字信号装换位高频音(低频为电话信道),通过家庭电话线传递到中心局,使用DSLAM转回数字信号。
      • 上行通道和下行通道不对称。
    2. 电缆接入(cable Internet access):
      • 利用有线电视公司的基础设施接入。
      • 类似DSL接入。
      • 特征:共享广播媒体,用户之间可能相互干扰。
    3. FTTH(光纤到户,Fiber To The Home)
    4. 卫星接入
    5. 拨号接入

    企业接入

      局域网或无线局域网
    - 通过以太网交换机接入因特网。
    - 与家庭接入结合,组成家用网络:设备连接到以太网交换机,只用通过DSL和电缆接入因特网。

    广域无线接入

      3G,4G,LTE(Long-Term Evolution)。

    物理媒介

      双绞铜线,同轴电缆,光纤,陆地无线电信道,卫星无线电行道等。

    二、网络核心

      连接网络端系统的分组交换机和链路构成的网状网络。

    分组交换

      分组交换(packet switching):端系统彼此交换报文(message),源端系统将报文划分为较小的数据块,分组(packet),每个分组通过分组交换机(packet switch,包括路由器、链路层交换机)、通信链路传送。
      存储转发:交换机开始输出分组的第一个比特前,必须接受到整个分组。
      排队时延:每个分组交换机有多条链路相连,对每条链路都有输出缓存,如果链路正在传输其他分组,则需要等待。
      分组丢失:输出缓存被其他分组占满,丢弃到达的分组或者已经排队的分组。

    电路交换

      电路交换(circuit switching):端系统通信期间,预留通信路径所需要的资源,如缓存、链路传输速率等。
      通过频分复用(FDM,Frequency-Division Multiplexing)和时分复用(TDM,Time-Division Multiplexing)实现。

    两种交换方式的比较

      分组交换性能优于电路交换,向着分组交换发展。
      电路交换不考虑需求,预先分配传输链路,利用率低。分组交换按需分配,链路的传输能力在所有用户之间逐分组的共享,利用率高。

    三、分组交换网中的概念

    时延

    1. 结点处理时延(nodal processing delay):检查分组首部,将分组导向何处,检查比特级别的差错等。
    2. 排队时延(queuing delay):在输出缓存中等待传输的时延。
    3. 传输时延(transmission delay):由于存储转发机制,将所有的分组从输出缓存传输到链路的时延。与分组长度和链路传输速率有关。
    4. 传播时延(propagation delay):从链路的起点到链路的终点传播的时间。与传输介质和传播距离有关。
      这里写图片描述

    吞吐量

      主机A接受主机B传输文件的速率。

    四、协议的层次

    协议分层

      分层:使用下层的服务,执行某些动作,向上层提供服务。
      优点:简化每层的功能,单层功能的改变不影响其它组件。
      缺点:冗余较低层的功能(差错恢复),某层的功能可能需要仅在其他层的信息(时间戳)。
    这里写图片描述

    因特网协议

    1. 应用层:网络应用程序和协议。应用层信息分组为报文(message)。
    2. 传输层:将应用层报文分为报文段(segment),在应用程序的端点之间传输应用层报文。
    3. 网络层:将数据报(datagram)从一台主机传输到另一台主机。
    4. 传输层:将(frame)从一个结点传输到路径上的下一个节点。
    5. 物理层:将比特从一个结点传输到下一个结点。

    OSI七层模型

      在应用层和传输层之间添加表示层会话层
      表示层:应用程序能够解释交换数据的含义,包括数据压缩、数据加密、数据描述。
      会话层:提供数据交换定界和同步功能,包括建立检查点和恢复方案。
      因特网中缺少这两个层次,这两个层次的功能在应用程序中实现。

    五、网络面对的攻击

    1. 进入计算机的有害程序:恶意软件、病毒、蠕虫。
    2. 攻击服务器和基础设施:拒绝服务攻击(DoS,Denial-of-Service attack),分布式DoS(DDoS,Distributed DoS)。类型包括弱点攻击,带宽泛洪,连接泛洪。
    3. 嗅探分组:Wireshark等获得敏感信息。
    4. 伪装用户:生成某源地址、分组内容、目的地址的分组,执行分组内容的命令(修改转发表)。
    展开全文
  • 简介 路由器 结构 排队 IP协议 数据包格式 IP数据报分片 IPv4地址 DHCP NAT UPnP ICMP协议 IPv6 路由选择 算法 LS算法 DV算法 ...网络层功能: 转发(forwarding):在单一路由器中,分组从一条输入

    简介

    • 网络层功能:
      1. 转发(forwarding):在单一路由器中,分组从一条输入链路转移到一条输出链路。
      2. 路由选择(routing):在网络范围内,分组从源到目的地采取的端到端路径。
        • 转发表(forwarding table)通过检查到达分组的首部转发。
        • 转发表中的值由路由选择算法决定,分为集中式分布式两种。
      3. 连接建立(connection setup)。某些网络层结构(ATM,帧中继,MPLS等)要求从源到目的选择的路径彼此握手。
    • 因特网提供尽力而为服务(best-effort service)。
    • ATM体系提供恒定比特率(Constant Bit Rate, CBR)和可用比特率(Available Bit Rate, ABR)服务。
    • 虚电路网络(Virtual-Circuit, VC):仅在网络层提供连接服务。
      • 两个端系统之间的路由器都要参与虚电路建立,且每台路由器完全知道经过他的所有虚电路,维护连接状态信息。
      • 启动和终止连接的报文称为信令报文
    • 数据包网络(datagrame network):仅在网络层提供无连接服务。
      • 路由器使用最长前缀匹配规则(longest prefix matching rule)。
      • 转发状态信息表变化相对较慢。
      • 转发表能够在任何时刻修改,同一系列的分组可以走不同路径,并可能无序到达。

    路由器

    结构

    • router.png
    • 输入端口
      • 物理层和数据链路层功能。
      • 分组经历查找转发排队过程。
      • 查找功能,通过查询转发表决定路由器的输出端口,每个输入端口会有转发表的影子副本。
    • 交换结构:将输入端口和输出端口相连。
      • 分为内存交换、总线交换、纵横式交换。
    • 输出端口
      • 执行物理层和数据链路层功能。
      • 选择和取出排队分组进行传输。
      • 如果一条链路是双向的,则输入输出端口成对出现。
    • 路由选择处理器
      • 执行路由选择协议,计算转发表。
      • 网络管理。

    排队

    • 输入和输出端口形成分组队列,当队列增长,缓存空间耗尽,出现丢包(packet loss)。
    • 输出端口排队
      • 通过分组调度程序,选择排队分组发送,如先来先服务(FCFS)、加权公平(WFQ)等。
      • 通过主动队列管理(Active Queue Management, AQM)在缓存满之前丢弃分组,如随机早期检测(Random Early Detection, RED),为输出队列维护加权平均值。长度

    IP协议

    • 网络层三个组件:IP协议、路由选择协议、因特网控制报文协议ICMP。
      ip.png

    数据包格式

    • datagram.png
    • 版本号:包括IPv4、IPv6。
    • 首部长度:通常20字节。
    • 服务类型:区分不同类型数据报,如实时流量(IP电话)和非实时流量(FTP)。
    • 数据报长度:首部+数据长度,很少超过1500字节。
    • 标识、标志、片偏移:用于分组分片。IPv6不分片
    • 寿命(Time-To-Live, TTL):经过一台路由器,TTL减一。
    • 上层协议:数据报交付给哪个应用层协议。
    • 首部检验和:只对首部校验,TCP/UDP与IP不一定属于同一协议栈(如ATM代替IP)。
    • 源和目的IP。
    • 选项:IPv6不使用。
    • 数据:交付给运输层的数据,也可能是ICMP报文等其他类型。

    IP数据报分片

    • 链路层MTU限制数据报长度,不同链路使用不同的协议,MTU不同,所以一个数据报可能分成数个小的数据报,称为分片(fragment)。
    • 数据报在端系统中重新组装,然后上传传输层。
    • 标识标记初始IP数据报。
    • 最后一个片的标志为0,其余为1。
    • 偏移字段指定该片在初始IP数据报的位置。
    • fragment.png

    IPv4地址

    • 每台主机和路由器接口拥有自己的IP地址。
    • 因特网地址分配策略为无类别域间路由选择(Classless Interdomain Routing, CIDR)。
      • a.b.c.d/x :x最高比特为IP地址的网络部分,称为前缀。
      • 地址聚合(address aggregation):使用单个网络前缀通告多个网络的能力,也称为路由聚合或路由摘要。
    • IP地址、DNS根服务器由ICANN管理,IP地址块也可从ISP获得。

    DHCP

    • 动态主机配置协议(Dynamic Host Configuration, DHCP),允许主机自动获取一个IP地址,还有其他信息,例如子网掩码、第一条路由器地址(默认网关)、本地DNS服务器地址。
    • DHCP是C-S协议,客户是新到达的主机,服务器是子网中的DHCP服务器或者是DHCP中继代理(通常是路由器)。
    • 4个步骤
      1. DHCP服务器发现。使用广播目的地址255.255.255.255和源地址0.0.0.0,进行链路层广播。
      2. DHCP服务器提供。使用广播发送推荐IP、地址租用期等信息。
      3. DHCP请求。从一个或多个服务器提供的选择中响应,回显配置参数。
      4. DHCP ACK。对请求报文响应,证实要求的参数。
        dhcp.png
    • 不足:移动节点连接到一个新的子网,就要从DHCP获得新的IP,不能维持远程应用之间的TCP连接。

    NAT

    • 网络地址转换(Network Address Translation, NAT),通过NAT转换表管理小型子网络,对外隐藏网络细节。
    • 子网络中的主机使用专用地址(10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16),该地址只有在该网络中才有意义,不能用于因特网。
    • NAT路由器将因特网的IP和端口号、子网的IP和端口号进行转换,对外行为就像具有单一IP的单一设备
      NAT.png
    • 问题
      1. 使用端口号,影响子网中的服务器。
      2. 路由器处理传输层报文(提取端口号)。
      3. 妨碍P2P应用。一方在NAT之后,需要通过中间对等方创建TCP连接,这被用于NAT穿越

    UPnP

    • 通用即插即用,主机上的应用程序能够请求NAT映射,使得外部节点能够发起到该主机的TCP连接。

    ICMP协议

    • 因特网控制报文协议,主机和路由器之间沟通网络信息
    • ICMP报文封装在IP**数据报**中,占用数据字段,为IP数据报的有效载荷。
    • ICMP报文包括类型字段、编码字段、引起该ICMP报文的IP数据报的手部和前8个字节的内容。
      ICMP.png
      • ping发送类型8编码0的ICMP报文到指定主机,目的主机发回类型0编码0的ICMP报文。

    IPv6

    • 报文格式
      ipv6.png
      • 地址:由32比特增加到128比特。任播地址将数据报交付给一组主机中的任意一个(例如GET一组镜像站点中的某个)。
      • 下一个首部:与IPv4**协议**字段相同,表示数据字段交付上层哪个协议。
    • 取消的字段
      • 分片:如果数据报太长,发送ICMP差错报文。
      • 首部校验和,TCP和UDP、以太网已经校验。
      • 选项
    • v4到v6的迁移,两种双栈(dual-stack)方法。
      1. 接受结点和发送节点如果都是IPv6,则使用v6,否则使用IPv4。
      2. 将IPv4路由器集合作为隧道(tunneling),将IPv6数据报放入IPv4的数据字段。

    路由选择

    算法

    LS算法

    • 链路状态(Link State, LS)算法,是一种全局式路由选择算法。每个结点知道网络拓扑和链路费用,一般使用Dijkstra算法计算最低费用路径。
    • 链路状态通过链路状态广播(link state broadcast)完成。
    • 问题
      • 若链路费用依赖于链路负载,则每次运行LS算法时,下一条路由可能会在两个路由之间振荡。解决方法,使得并非所有路由器在同一时间运行LS。
      • 如果路由器保持相同周期运行LS,最终即使初始时刻一致也会同步。解决方法,每台路由器发送链路通告的时间随机化。

    DV算法

    • 距离向量(Distance-Vector, DV)算法,是一种分布式路由选择算法。每个结点知道到直接相连的邻居的费用、结点的距离向量(x->y的费用估计)、每个邻居的距离向量。
    • 直接相连的链路费用变化或者邻居的距离向量更新,使用Bellman-Ford方程更新距离向量。
      bellman-Ford.png
      Dx(y):从x到y的距离。v:邻居。
    • DV算法费用减少的好消息传的快,费用增加的坏消息传的慢,甚至可能无穷计数。
    • 两个直接相邻的邻居结点的无穷计数问题用毒性逆转(poisoned reverse)解决:如果z–>y–>x,z向y告知z到x的距离无穷大。

    两种算法比较

    • LS算法中,结点经广播和其他所有结点交流;DV算法中,结点只和直接相连的邻居交流。
    • 报文复杂度:LS需要广播,报文复杂度大比DV大。
    • 收敛速度:DV收敛慢,还可能出现选择环路、无穷计数等问题。
    • 健壮性:DV中结点的不正确计算会扩散到整个网络。LS计算分离,有一定健壮性。

    层次路由选择算法

    • 将路由器组织为自治系统(Autonomous System, AS),每个AS**规模相对整体而言较小,而且可以管理自治**。

    AS内的路由选择

    RIP协议

    • 路由选择信息协议(Routing Information Protocol, RIP),是一种距离向量协议,使用跳数作为费用的测度。
      • 跳:从源路由器到目的子网(包括目的子网)的最短路径经过的子网数量
      • 一条路径最大费用为15。
    • RIP使用RIP响应报文(RIP response message)更新路由选择信息,也称RIP通告(RIP advertisement),大约30s交换一次。
    • 每台路由器维护一张路由选择表(routing table),包括该路由器的距离向量转发表。转发表包括目的子网、下一台路由器、到目的子网的跳数。
      RIP.png
    • RIP是一个运行在UDP使用520端口的应用层协议。例如,UNIX的路由器中,一个routed进程执行RIP,维护路由选择信息并和相邻路由器中的routed进程交换。

    OSPF协议

    • 开放最短路优先(Open Shortest Path First, OSPF),是一种链路状态协议,泛洪链路状态信息,使用Dijkstra最低费用路径算法。
    • 优点
      1. 安全。使用鉴别,让受信任的路由器参与协议。
      2. 多条费用相同路径。多条路径费用相同时,使用多条路径分担流量。
      3. 多播。MOSPF支持多播。
      4. 支持层次结构。一个OSPF自治系统可分为多个区域,每个区域各自运行OSPF,区域边界路由器(area border router)负责向流向区域外的分组提供路由选择,主干(backbone)区域为区域之间的流量提供路由选择。

    AS间的路由选择

    • 边界网关协议(Broder Gateway Protocol, BGP)
      1. 从相邻AS获得子网可达性信息。
      2. 向本AS所有路由器传播这些可达性信息。
      3. 基于
      4. 可达性信息和AS策略,决定到达子网的路由。

    广播和多播

    广播

    • 通过N次单播实现广播(broadcast routing)效率低。

    实现方法

    1. 无控制泛洪(flooding)。源节点向所有邻居结点发送副本,某结点接收副本之后向除了从其接收分组的邻居转发副本。但这样可能产生广播风暴(broadcast storm)。
    2. 受控泛洪
      1. 序号控制泛洪。将广播序号放入分组,每个结点维护已经收到复制转发的源地址和广播分组序号列表。接收广播分组时,如果该分组在序号列表中,丢弃分组;否则,向除来源之外的邻居转发。
      2. 反向路径转发(Reverse Path Forwarding, RPF)。路由器接收广播分组,仅当该分组的到达链路位于自己返回源的最短单播路径上,才向除来源之外的邻居转发。
    3. 生成树广播。广播分组沿着生成树中的链路转发,可避免冗余广播。基于中心的方法构造生成树是,先定义一个中心结点。结点加入生成树时,单播加入树报文,报文经过的路径加入生成树。

    多播

    • 使用D类IP地址(1110开头,224-239)表示一个多播组(multicast group)。每台主机有唯一的单播IP,完全独立于所参与的多播组的地址。
    • 因特网网络层多播组件:因特网组管理协议(IGMP)、多播路由选择协议

    IGMP

    • 运行在主机和直接相连的路由器之间,通知路由器主机上运行的一个应用程序加入特定多播组。
    • IGMP报文类似ICMP报文,分装在IP数据报中。
    • 加入多播组
      1. 路由器通过向所有主机发送membership_query报文查询多播组集合,主机用membership_report响应。
      2. 主机也可直接发送report报文。
    • 离开多播组
      1. 主机发送membership_leave报文。
      2. 无主机响应给定组地址的membership_query报文时,则无主机在这个多播组。
        • 软状态:状态如果未被显示更新,则通过超时事件删除。

    多播路由选择算法

    • 确定一颗多播路由选择树,连接所有和属于该多播分组的主机相连的路由器。
    • 树的构建方法
      1. 组共享的树。类似广播生成树,可以使用中心选择算法。
      2. 基于源的树。每个源使用RPF算法构造树,但是需要剪枝(pruning),以防下游大量不在多播组的路由器收到不需要的分组。
        • 一台路由器如果收到多播分组,但是无法加入多播组,向上游路由器发送剪枝报文。如果一台路由器从每个下游路由器收到剪枝报文,向上游发送剪枝报文。
          muticast RPF.png
    展开全文
  • 支持多媒体的网络 尽可能利用尽力而为服务 区分服务 每连接服务质量保证 简介视频 高比特率。 能被压缩。 原因:空间冗余,图像内部有冗余空间,如空白;时域冗余,图像和后续图像完全一样或类似。 可压缩生成多重...

    简介

    视频

    • 高比特率
    • 能被压缩
      • 原因:空间冗余,图像内部有冗余空间,如空白;时域冗余,图像和后续图像完全一样或类似。
      • 可压缩生成多重版本

    音频

    • 脉冲编码调制(Pulse Code Modulation, PCM)。
      1. 采样。固定速率采样。
      2. 量化。每个采样值近似为有限数值中的一个。
      3. 级联。所有样本的量化值连在一起。
    • 使用压缩减小比特率。如MP3等。

    多媒体应用类型

    1. 流式存储的音频和视频。
      • 。从一个位置开始播放的同时,从服务器接收后续部分。
      • 相互作用。用户可对媒体内容暂停、前进、后退等。
      • 连续播放。根据初始记录的时序播放,需要及时接收数据,否则会停止或者帧跳过。
    2. 会话式 IP语音和视频。
      • 称为因特网电话,或者IP语音(Voice-over-IP, VoIP)。
      • 高度时延敏感(delay-sensitive)。
      • 容忍丢包(loss-tolerant)。
    3. 流式实况音频和视频。类似流式存储媒体。

    流式存储视频

    • 分为UDP流、HTTP流、适应性HTTP流。
    • 广泛使用客户缓存(client buffering)。
      1. 吸收分组在客户和服务器中时延的波动,使时延大的特殊分组不被注意。
      2. 即使暂时带宽低于消耗,也能连续播放。

    UDP流

    • 通过UDP,用与客户视频消耗速率相匹配的速率传输视频。
    • 使用的客户端缓存小,通常小于1s。
    • 通过单独的控制连接,发送暂停等命令。类似FTP控制连接,使用实时流协议(Real-Time Streaming Protocol, RTSP)。
    • 缺点:
      1. 带宽减小时,恒定速率UDP流很可能无法连续播放。
      2. 需要RTSP服务器,增加成本。
      3. 许多防火墙**阻塞**UDP流量。

    HTTP流

    • 使用 HTTP GET 请求获得给定URL的文件。通过缓存等技术避免UDP的缺点。
    • 预取视频。尝试以高于消耗速率的速率下载视频,增加客户缓存。
    • 客户缓存和TCP缓存。客户缓存变满,会引起TCP缓存变满,减小发送窗口,服务器降低发送速率。
      HTTPstream.png
    • 提前终止和重定位
      • 使用HTTP字节范围首部,从视频文件的某个字节开始发送数据,较早的请求终止。
      • 因为重定位可能浪费缓存,所以缓存取适当长度或者字节范围首部受限。

    DASH

    • 经HTTP的动态适应性流(Dynamic Adaptive Streaming over HTTP, DASH),将视频编码为不同比特率的几个版本,分配不同URL,用户根据带宽选择版本。
    • DASH可以在可能的最好质量下实现连续播放。
    • 用户通过测试带宽选择下载版本,减轻服务器的压力。

    CDN

    • 单一数据中心的问题:
      1. 数据中心到客户经过许多ISP,某段链路吞吐量小,甚至小于视频消耗速率。
      2. 流行视频在相同链路中发送多次,浪费带宽。
      3. 单点故障问题。
    • 内容分发网(Content Distribution Network, CDN)采取拉策略,用户请求的视频未存储在CDN上,CDN从另一个集群或者中心仓库请求视频,向客户传输视频并在本地存储副本。CDN删除不常使用的视频,类似LRU。
    • CDN通过DNS截获和重定向对视频的请求,步骤:
      1. 用户访问netchina页面。
      2. 点击视频链接video.netcinema.com/xxxxx,发送DNS请求。
      3. 本地DNS服务器(LDNS)中继请求到NetChina权威DNS服务器,服务器因为video向LDNS返回KingCDN域的主机名,如a1105.kingcdn.com。
      4. LDNS向KingCDN的主机发起DNS请求,得到KingCDN**内容分发服务器的IP地址**。
      5. LDNS向用户转发CDN节点IP地址。
      6. 用户根据IP创建TCP连接,发起HTTP GET请求获取视频。
        cdn.png
    • 使用IP任播(IP anycast)为客户分配CDN服务器。为每个CDN集群指派相同IP地址,BGP路由器选择最好的路由(如地理最近、流量最佳等)。
    • Netflix使用第三方CDN,谷歌的YouTube使用自己的CDN,迅雷看看使用P2P交付。

    IP语音

    尽力而为服务的限制

    • 丢包。VoIP默认运行在UDP上,会产生分组丢失,可以通过FEC弥补。
    • 端到端时延。时延超过400ms严重影响交互性,超过阈值(如400ms)延时的分组需要丢弃。
    • 分组时延抖动。端到端时延对不同的分组可能有波动,可以使用序号、时间戳、播放时延消除。

    消除时延抖动

    • 两种机制:
      1. 发送方为每个块产生时间戳(timestamp)。
      2. 接收方延时播放(delaying playout),使得大多数分组在预定播放之前被接收。
    • 两种播放时延。
      1. 固定播放时延。端到端时延抖动大,选用较大播放时延;时延抖动小,选用较小播放时延。
        VoIP_delay.png
      2. 适应性播放时延。类似TCP往返时间的估计。
        t,时间戳;r,分组接收时间;p,分组播放时间。
        • 平均网络时延:
          delay_d.png
        • 平均时延偏差:
          delay_v.png
        • 播放时间(K为常数,例如4):
          delay_p.png

    丢包恢复

    1. 前向纠错(Forward Error Correction, FEC)。增加冗余信息纠错,这样也会增加传输带宽和播放时延。
      1. 异或n个初始块。可恢复1个分组的丢失。
      2. 附加较低分辨率的音频。可附加之前一个或几个分组的低分辨率音频。
    2. 交织(interleaving)。传输之前对数据单元重新排序,接收之后重建。
      interleaving.png
    3. 差错掩盖。产生与丢失分组类似的分组,如重复分组或者内插法等。

    实时会话应用协议

    RTP

    • 实时传输协议(Real-time Transport Protocol),运行在UDP上,传输媒体块。
    • RTP不保证交付,不提供质量服务。RTP分装的内容仅为端系统可见。
    • RTP也可用于多播,如多方的视频会议。
    • RTP首部
      rtp.png
      • 有效载荷类型。指示音频编码类型,如PCM,GSM。
      • 序号。每发送一个RTP分组,序号+1.
      • 时间戳。RTP分组第一个字节采样时刻
      • 同步源标识符SSRC。表示RTP源,是新的流开始是随机分配的数。

    SIP

    • 会话发起协议(Session Initiation Protocol, SIP),用于经过IP网络建立呼叫。
    • SIP地址。
      • 类似电子邮件地址,如sip:bob@193.64.210.89。
      • 能够被包括在Web页面中。
    • SIP代理提供用户IP地址或者包括用户状态的URL(可以根据呼叫者有不同响应)。SIP代理是通过每个用户的SIP注册器确定用户的IP地址。
    • 发起会话的步骤(217.123.56.89上的jim@umass.edu对197.87.54.21上的keith@upenn.edu发起VoIP):
      1. Jim向umass的SIP代理发送INVITE报文
      2. 该代理向SIP注册器upenn.edu**请求DNS**,并**转发**INVITE报文。
      3. keith并没有在该upenn注册器上注册,upenn注册器返回重定向报文指向Keith@eurecom.fr。
      4. umass代理向eurcom.fr**请求DNS**,并**转发**INVITE报文。
      5. 该注册器知道keith@eurecom.fr的IP地址,将报文转发给keith的SIP主机。
      6. keith主机通过注册器代理返回SIP响应到jim主机。
      7. jim发送SIP确认,并开始会话
        SIP.png

    支持多媒体的网络

    • 三种方法
      mediaNetwork.png

    尽可能利用尽力而为服务

    • 进行网络定制(network dimensioning)。设计一个网络拓扑,取得给定的端到端性能。
    • 由于经济、组织上的问题,定制被限制。

    区分服务

    • 方法
      1. 标记分组,使路由器区分不同类型的流量分组,例如VoIP优先于HTTP。
      2. 提供流量隔离的度,使一种流量不受另一种流量异常的影响,这需要流量监管(traffic policing)。例如,VoIP流量超过带宽,也能保证一定的HTTP流量。
      3. 提供流量隔离时,尽可能有效使用资源。例如,VoIP不使用带宽时,HTTP可以使用更多的带宽。
    • 调度机制
      1. 先进先出(First-In-First-Out)。
      2. 优先排队(priority queuing)。分组放入某个优先级类,优先传输高优先级的类,每个优先级类通常使用FIFO。
      3. 加权公平排队(Weighted Fair Queuing, WFQ)。每个类被分到一个权值,每个类至少获得权值比例的带宽。
        WFQ.png
    • 漏桶监管。
      • 监管平均速率、峰值速率、突发长度。
      • 分组需要获得令牌才能发送。漏桶最多容纳b个令牌,每秒加入r个令牌。这样任何t时间内,进入网络的最大速率为 rt+b
      • 漏桶流可以采用WFQ调度机制。
        WFQ2.png
    • 因特网区分服务体系结构(Diffserv)的功能
      1. 边界功能:分组分类流量调节
      2. 核心功能:转发。路由器每一条行为只基于分组标记,不区分分组来源,即路由器将这些分组作为一个聚合体。
    • Diffserv的缺点
      1. 多个ISP之间协作困难。
      2. 如果网络运行负载不大,绝大多数情况里Diffserv效果不明显。

    每连接服务质量保证

    1. 资源预留(resource reservaton)。一旦呼叫预约的资源,则需确保它所具有的资源。
    2. 呼叫准入(call admission)。如果请求的资源不可用,呼叫被阻塞;否则,接收呼叫的QoS需求。
    3. 呼叫建立信令资源预留协议(resource Reservation Protocol, RSVP)用来协调资源的预留和呼叫准入。
    展开全文
  • 任何一个人都可以使用公钥B发送报文,需要使用 数字签名 绑定发送方和报文。 RSA算法 利用暂未找到 因式分解 一个数的快速算法的事实。 指数运算耗时,可以使用RSA加密对称密钥( 会话密钥 ),然后...

    安全通信

    • 机密性(confidentially)。通过加密,使报文无法被截获者理解。
    • 报文完整性(message integrity)。报文在传输过程中未被篡改或意外改动
    • 端点鉴别(end-point authentication)。确信通信的另一方具有所声称的身份
    • 运行安全性(operational security)。通过防火墙等反制对网络的攻击。

    机密性

    • 加密算法:明文+密钥A–>密文。
    • 解密算法:密文+密钥B–>明文。
    • 对称密钥系统中,两个秘钥是相同且秘密的。
    • 公开密钥系统中,一个密钥公开,另一个密钥只有本人知道

    对称秘钥

    • 凯撒密码。每个字母用字母表后的k个字母替换。
    • 单码代替密码。使用字母表中的一个字母代替另一个字母。
    • 多码代替密码。交替使用不同规则的单码代替密码。
    • 块密码。要加密的额报文被处理为k比特的块,根据k比特和密钥映射到加密的k比特块。
      • DES(Data Encryption Standard, 数据加密标准)。使用64比特块,56比特密钥。
      • AES(Advanced Encryption Standard, 高级加密标准)。使用128比特块,128、192、256比特密钥。
        blockCiphers.png
    • 密码块链接(Cipher Block Chaining, CBC)仅第一个报文发送一个随机值,随后使用计算的编码块代替后继随机数,避免相同的代码块产生相同的密文,从而防止猜测明文。
      1. 发送方生成随机的k比特串,即初始向量(Initialization Vector, IV)c(0),通过明文发送给接收方。
      2. 对于第一个块,计算明文m(1)和IV的异或,然后通过加密算法得到密文块c(1)。
      3. 对于第i个块,CBC.png

    公开密钥

    • A先取得B的公钥(public key),用它和加密算法加密报文发送给B。B通过自己的私钥(private key)和解密算法,得到初始报文。
      publicKey.png
    • 任何一个人都可以使用公钥向B发送报文,需要使用数字签名绑定发送方和报文。

    RSA算法

    • 利用暂未找到因式分解一个数的快速算法的事实。
    • 指数运算耗时,可以使用RSA加密对称密钥(会话密钥),然后利用该对称密钥加密报文。
    • 生成公钥私钥:
      1. 选择两个**大素数**p、q,乘积为1024比特量级。
      2. 计算 n=pq,z=(p-1)(q-1)
      3. 选择e用于加密,e

    报文完整性

    密码散列函数

    • MD5,生成128比特的散列。
    • SHA-1,生成160比特的散列。

    报文鉴别码

    • 使用鉴别密钥(authentication key)和散列算法保证报文完整性。
    • 步骤:
      1. A生成报文m,和鉴别密钥级联为m+s,计算散列H(m+s),即报文鉴别码(Message Authentication Code, MAC)。
      2. A将MAC附加到m上,生成扩展报文(m,H(m+s)),发送给B。
      3. B收到扩展报文(m,h),由s计算H(m+s),若等于h,则正常。
        MAC.png
    • MAC**不涉及加密算法**。
    • 鉴别密钥可以物理上直接配置,或者使用设备的公钥分发。

    数字签名

    • 数字签名(digital signature)证明发送方认可一个文件,并且提供报文完整性
    • 发送数字签名
      1. 由初始报文得到散列
      2. 使用私钥加密散列,进行签名。
      3. 将初始报文和签名后的摘要一起发送。
        signature.png
    • 验证数字签名
      1. 用发送方的公钥解密散列。
      2. 使用相同的散列函数散列明文报文得到散列。
      3. 两个散列匹配,则确保完整性和发送方。
        signature2.png

    公钥认证

    • 公钥认证(public key certification),证实一个公钥属于某个特定实体。否则,可能公钥会和实体不匹配。
    • 通常需要通过认证中心(Certification Authority, CA)完成公钥和特定实体的绑定
    • CA验证实体身份之后,会生成一个证书,包含公钥全局唯一的身份识别信息,然后对证书数字签名。实体发送自身公钥时,需要带上该证书,证明公钥的合法性
      CA.png

    端点鉴别

    IP

    • 验证IP数据报源地址
    • 缺点:可以伪造源地址。

    加密口令

    • 使用口令鉴别,并对口令使用对称密钥加密。
    • 缺点:回放攻击,发送口令的加密版本,伪装发送者。

    不重数和对称密钥

    • R为不重数(nonce),K为A和B共享的对称密钥。如果B解密得到的不重数与B发送的不重数相等,则可鉴别A,并确定A是活跃的
      ap4.png

    安全电子邮件

    • 机密性。使用对称会话密钥,解决公开密钥效率低下的问题。使用公开密钥加密分发会话密钥
      1. A选择随机的会话密钥Ks,加密报文m。
      2. 用B的公钥Kb+加密对称密钥。
      3. 级联加密报文和加密对称密钥,发送给B。
      4. B使用私钥Kb-解密得到Ks,用Ks解密得到m。
    • 发送方鉴别和报文完整性。使用报文摘要数字签名
      1. A对报文散列,得到摘要,随后用A的私钥加密摘要,得到数字签名。
      2. 级联报文和数字签名发送给B。
      3. B用A的公钥解密签名得到摘要,和对报文散列的摘要对比。
        email2.png
    • 公钥的发放需要CA的证书验证。
    • PGP(Pretty Good Privacy)是一个电子邮件加密方案。
      • 报文摘要,MD5或SHA。
      • 对称密钥加密,CAST、三重DES、IEDA。
      • 公开密钥加密,RSA。

    SSL

    • 安全套接字层(Secure Socket Layer, SSL),提供套接字接口,技术上位于应用层,但是是一个提供TCP的运输层协议。
      ssl.png

    握手

    • B与A握手分为3个阶段。
      1. 创建TCP连接。
      2. A发送包括A公钥的证书,验证A是真实的A。
      3. 发送给A一个加密的主密钥(MS)。
        sslHand.png
    • 二三步协商算法、彼此发送不重数用于会话密钥的生成,实际步骤如下:
      1. 客户发送支持的密码算法列表,和客户不重数
      2. 服务器从列表中选择一种对称算法、一种公钥算法、一种MAC算法,连通证书服务器不重数发送给客户。
      3. 客户验证证书,提取服务器公钥,生成前主密钥(Pre-Master Secret, PMS)。用服务器公钥加密PMS,发送给服务器。
      4. 使用相同密钥导出函数,客户服务器分别从PMS和不重数中计算主密钥(Master Secret, MS)。
      5. 客户发送所有握手报文的MAC。
      6. 服务器发送所有握手报文的MAC。
    • 最后两步使得报文免受篡改
    • 每次会话的不重数不一样,可以防止连接重放攻击。如,第二天发送前一天的相同序列的报文,通过完整性检验。

    密钥导出

    • MS需要生成4个会话密钥
      • Ea,A到B的会话加密密钥。
      • Eb,B到A的会话加密密钥。
      • Ma,A到B的会话MAC密钥。
      • Mb,B到A的会话MAC密钥。
    • 如果对称密钥用CBC(密码块链接),则两个初始向量IV也从MS导出。

    数据传输

    • SSL将数据流分为记录,MAC是数据、MAC密钥、当前序号的散列。
      sslRecord.png
      • 每发送一个SSL记录,序号+1。阻止一个会话中重放或者重排分组。

    连接关闭

    • 发送SSL记录,在类型中指出该记录用于终止SSL会话。
    • 如果直接终止底层TCP连接,可能被截断攻击

    IPsec和VPN

    • IP安全(IP Security)协议被称为IPsec,为网络层提供安IPsec可以创建运行在公共网络之上的虚拟专用网(virtual private network, VPN)。
    • IPsec提供机密性、源鉴别、数据完整性、重放攻击防护。

    协议

    • 鉴别首部协议(Authentication Header, AH)和封装安全性载荷(Encapsulation Security Payload, ESP)。
    • AH提供源鉴、数据完整性服务。ESP多提供机密性服务,所以ESP运用广泛。

    安全关联

    • IPsec数据报在源和目的实体之间创建网络层的逻辑关联,称为安全关联(Security Association, SA)。
    • SA是一个单工逻辑连接。两个实体互发安全连接需要2个SA。
    • IPsec实体需要维护许多SA的信息(例如,一个有n台主机和2个物理网络的VPN中,网关路由器需要维护2n+2个SA信息)。这些SA信息存储在它的安全关联数据库(Security Association Database, SAD),包括:
      • SA的32比特标识符,安全参数索引(Security Parameter Index, SPI)。
      • SA的初始接口和目的接口。
      • 使用的加密类型(例如,有CBC的3DES)和加密密钥。
      • 完整性检查类型(例如,有MD5的HMAC)和鉴别密钥。

    IPsec数据报

    • IPsec有两种不同的分组模式,隧道模式(tunnel mode),运输模式(transport mode),隧道数据报分组格式如下
      IPsec.png
    • 发送步骤:
      1. 在初始IPv4数据报后附加ESP尾部。下一个首部表示载荷类型,如UDP。
      2. 使用SA的算法和密钥加密初始数据报+ESP尾部。
      3. 在加密量之前附加ESP首部,得到enchilada。ESP首部中的序号可以防御重放攻击
      4. 使用SA算法和密钥生成整个enchilada的鉴别MAC
      5. 生成新的IPv4首部附加到载荷之前。IP地址为两个端点的路由器接口地址。
    • 接收步骤。目的IP是自身协议字段为50,需要IPsec ESP处理:
      1. 针对enchilada中的SPI,确定数据报属于哪个SA。
      2. 计算enchilada的MAC并确定与ESP MAC一致。
      3. 检查序号字段,确定数据报时新的
      4. 使用SA关联的解密算法和密钥解密被加密的单元。
      5. 删除ESP尾部,抽取初始IPv4数据报。
    • IPsec实体维护安全策略库(Security Policy Database, SPD),指示
      • 哪些类型的数据报(源、目的IP地址,协议类型)需要IPsec处理。
      • 处理之后使用哪个SA。

    IKE

    • 因特网密钥交换(Internet Key Exchange, IKE)协议,自动在两个IPsec实体间交换证书,协商算法、密钥、SPI,之后在SAD中键入SA信息。类似SSL握手。

    运行时安全

    防火墙

    • 防火墙的目标:
      1. 从内部到外部和从外部到内部的所有流量都通过防火墙。
      2. 被授权的流量允许通过。
      3. 防火墙自身免于渗透。否则可能提供安全的假象。
    • 传统分组过滤器。检验每个数据报,根据IP地址、TCP端口号、TCP标志比特等决定通过还是丢弃。
      firewall.png
      • 每个TCP连接第一个报文段ACK比特为0,其他所有报文段为1。过滤进入的所有SYN分组,即ACK为0的分组,可以阻止外部发起TCP连接,但是允许内部发起TCP连接。
      • 路由器使用访问控制列表实现防火墙规则。
    • 状态分组过滤器。跟踪TCP连接,通过FIN分组或者一段时间没有活动判断连接关闭,拒绝属于关闭连接的分组。
    • 应用程序网关。可以处理应用层数据,如用户身份等。起到中继代理的作用。
      applicationGateway.png
      • 仅对一种应用程序进行深度分组检查(deep packet inspection),深入查看分组携带的实际数据。

    入侵检测系统

    • 不仅可以检查分组首部,还能够对不同应用程序进行深度分组检查。
      • 入侵检测系统(Intrusion Detection System, IDS)能够对潜在的恶意流量告警
      • 入侵防止系统(Intrusion Prevention System, IPS)可以消除可疑流量。
    • 基于特征(signature-based)的IDS维护攻击特征库,匹配攻击。但是无法判断新的攻击,也有可能产生虚假警告。
    • 基于异常(anomaly-based)的IDS观察流量,生成流量概况,寻找统计上不寻常的分组,如ping分组比例不寻常等。如何区分和统计流量难。
    • 大多数IDS都是基于特征的,有些包含基于异常的特性。
    展开全文
  • 无线网络特征 物理层特征 CDMA 两种无线网络 WiFi 体系结构 MAC协议 帧格式 帧地址的变化 其他性质 蜂窝网 移动管理 原理 寻址 间接路由选择 直接路由选择 移动IP 对高层的影响简介 无线网络的要素 无线主机...
  • 应用层原理 主流体系结构 进程通信 运输服务 HTTP 概况 持续连接 报文格式 cookie Web缓存 FTP 电子邮件 ...网络应用程序的主流体系结构:客户-服务器体系结构、对等(P2P)体系结构。...P2P特点:扩展
  • 网络层的关系 应用层对应的协议 UDP 优点 UDP报文段 TCP TCP报文段 往返时间和超时 可靠传输 解决比特差错 解决丢包 解决性能问题 GBN协议 SR协议 TCP可靠传输 流量控制 TCP连接管理 拥塞控制 拥塞的代价 控制方法...
  • 简介 差错检测方法 多路访问协议 ...数据中心网络简介 链路层信道的类型 点对点链路(point-to-point link):长距离链路连接的两台路由器之间、主机与邻接的以太网交换机之间。 广播链路(broadcast link
  • 场景 通过DHCP获得本机IP等信息 通过DNS获得网站的IP地址...comcast.net为学校提供DNS服务,服务器在comcast网络中。 DHCP服务器运行在路由器中。通过DHCP获得本机IP等信息PC连接到网络时的动作 PC生成DHCP请求报文,放
  • 计算机网络自顶向下方法(陈鸣译),第一章笔记 第一章:计算机网络和因特网 分组交换: 分组:源将长报文划分为较小的数据块 交换机:主要有两类:路由器和链路层交换机 存储转发传输机制:指在交换机能够开始向...
  • 计算机网络自顶向下方法)学习笔记

    万次阅读 多人点赞 2019-03-24 21:20:07
    第一章 计算机网络和因特网 1.1 什么是因特网 1.1.1 组成描述 1.1.2 服务描述 1.1.3 协议 1.2 网络的边缘 1.2.1 接入网 1.2.2 物理媒体 1.3 网络核心 1.3.1 分组交换 1.3.2 电路交换 1.3.3 分组交换和...
  • 计算机网络自顶向下方法Character1 本文概述: 本文主要记录计算机网络自顶向下方法第一章节的知识点。 学习书籍为:计算机网络自顶向下方法 学习视频为:国立清华大学黄能富教授讲解的计算机网络自顶向下方法,需要...
  • 计算机网络自顶向下方法学习笔记 参考中科大郑老师B站视频网课
  • 计算机网络自顶向下方法学习笔记2017/5/23 From page 208: 1.可靠传输协议是基于ARQ (Automatic Repeat reQuest) protocols 2. rdt2.0 protocol will similarly send ACK and NAK packets back from the ...
  • 今天是阅读《计算机网络自顶向下方法》的第一天,以下是今天看书的感悟和相关笔记。由于本人技术有限,难免会有错误,如您发现错误,请及时评论或者私信我,让我意识到自己的不足,并与与改正。谢谢。 因特尔术语: ...
  • 计算机网络自顶向下第一章读书笔记
  • 计算机网络 自顶向下方法 第七版中文 读书笔记 目录计算机网络 自顶向下方法 第七版中文 读书笔记 目录第 1 章 计算机网络和因特网第 2 章 应用层第 3 章 运输层第 4 章 网络层 : 数据平面第 5 章 网络层: 控制平面...
  • 本文是《计算机网络自顶向下方法》一书的学习笔记和相关理解
  • 粗略浏览下来,计算机网络这门学科是偏向文科为主的学科,有纷繁复杂的规则和概念——这需要耐性子去学。好在学OS的经历也磨练出了我学这些内容的一些心性。宗旨就是:涉猎为主,记些概念和术语,能复述(做...
  • 第一阶段第1章 计算机网络和因特网 44页 一周第2章 应用层 58页 两周 第二阶段第3章 运输层 64页 两周这一章变难了,花费两周时间读。第4章 网络层:数据平面 38页 一周第5章 网络层:控制平面 跳过,感兴趣者...
  • 第一章 1.1 什么是因特网 端系统通过 通信链路(communication link) 和 **分组交换机(packet switch)**连接到一起。 链路的 传输速率(transmission rate) 以 比特/秒(bit/s) 度量。...1.2 网络...
  • 计算机网络和因特网 文章目录 计算机网络和因特网 因特网整体 术语 结构 因特网边缘 术语 接入网 家庭接入 数字用户线 电缆 光纤到户 卫星 企业接入 以太网 WiFi 广域网无线接入 因特网整体 术语 ...
  • 计算机网络自顶向下方法 网络:是由一组具有通信能力的设备相互连接而形成的。 设备可以是主机(host,端系统)如笔记本电脑,工作站,安全系统等,也可以是连接设备,如连接网络到其他网络的路由器,将设备连接到...
  • 与因特网相连的个人数字助手(PDA)、TV、移动计算机、蜂窝电话、Web相机、汽车、环境传感设备、数字相框、家用电器和安全系统称作主机/端系统。 端系统通过通信链路和分组交换机连接到一起。 通信链路的物理媒体...
  • 网络体系结构 1.客户-服务器体系结构(client-server architecture):有一个总是打开的主机被称为服务器,它服务于来自许多其他称为客户的主机的请求。服务器具有固定的IP地址。在给定一对进程之间的通话场景中,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 495
精华内容 198
关键字:

计算机网络自顶向下笔记