计算机网络——清华大学出版社(笔记)

各层关键字

一、物理层
信号调制 1、调幅、调频、调相 2、归零码、不归零码、曼彻斯特码
多数复用 频分复用、时分复用、码分复用、波分复用

二、介质访问控制层
载波侦听多路访问
一个网络可能具有载波侦听功能,也可能没有。有线网络通常具有载波侦听功能,无线网络不能有效地侦听载波。同样,在站不能直接和其他各站通信的一些其他设置中,载波侦听也不可用,如线缆调制解调器,站必须通过线缆头端才能通信。
1、夏威夷无线通信网络
2、经典以太网
3、无线局域网
4、有线电视网

三、数据链路层
面向连接、无连接
可靠、不可靠
流量控制
差错校验
停等协议、管道化技术、滑动窗口
管道化技术:回退N协议
滑动窗口:选择重传
泛洪算法、向后学习算法


物理层

一、数字调制1

常用的数字调制编码方法有归零码、不归零码、曼彻斯特码

  • 归零码:

  归零码可分为单极性归零码和双极性归零码。  

  上图(a)是单极性归零码,以无电压表示0,以恒定的正电压表示1。

  上图(b)是双极性归零码,以恒定的负电压表示0,以恒定的正电压表示1。

  不归零码发送的是窄脉冲,发送完0或1后电压将回归到零电平;即,在一个码元的时间内会返回初始状态(零)。

  • 不归零码:

  non-return to zero,又可分为单极性不归零码和双极性不归零码。

      

    上图(a)是单极不归零码,在每一个码元内,没有电压表示0,有恒定的正电压表示1。每个码元的中心是取样时间。

    上图(b)是双极不归零码,在每一个码元内,以恒定的负电压表示0,以恒定的正电压表示1。

    为了保证收、发双方同步,在发送不归零码的同时,往往还要用另外一个信道发送同步时钟信号。

    常用-5V表示1,+5V表示0。

  • 曼彻斯特码   

  

 

  来自信源的信号通常称为基带信号,即基本频带信号。基带信号一般包含较多的低频成分,甚至有直流成分,而许多信道并不能传输这样的低频分量或直流分量;因此必须把基带信号转变为一个相对基带频率而言更高的频率以用于信道传输。

  曼彻斯特码在基带数字信号每一位的中间(1/2处)有一跳变,该跳变既作为数据信号,又作为时钟信号,从高到低跳变表示1,从低到高跳变表示0。

 二、信号调制2

  振幅、频率或相位

三、调制解调器

  调制解调器有许多类型:电话调制解调器、DSL调制解调器、有线电视调制解调器、无线调制解调器。
  低级的调制解调器有0伏电压表示0,1伏电压表示1,每个符号为1个比特。进一步地,可以使用4种不同的符号,类似于QPSK的4个相位,从而以每个符号传2个比特的方式提高数据传输率。随着技术的改进,数据速率已得到很大的提高。较高速率需要一组更大的符号或星座。

 四、多路复用

  频分复用、时分复用、码分复用、波分复用

五、实现

  曼彻斯特编码主要用在经典以太网上

六、实现2

  802.11a/g调制方案称为正交频分复用。

  第一代移动电话(1G)使用频分复用;第二代移动电话既使用了频分复用和也使用了时分复用。第三代移动电话使用了码分复用。

  卫星通信(频分复用时分复用):在最早的卫星上,转发器之间的信道划分是静态的,整个带宽被简单地分成固定的频段。现在,每个转发器的波束被分成多个时间槽,不同的用户可以轮流使用这些时间槽。

  电话网络本地回路上的ADSL也使用频分复用。电话网络的长途中继线,使用光纤,使用频分复用、时分复用;光纤的频分复用也就是波分复用。

  有线电视网络下行信道只有一个发送者,不会发生竞争。上行信道,多个用户以时分复用的方式来共享上行流的带宽;否则这些用户传输的信号将产生冲突。时间被细分为迷你槽,用户申请迷你槽,在头端响应后,就可以在分配给自己的迷你槽中发送信息。作为一项规则,多个调制解调器将被分配在同一个迷你槽中,从而产生了竞争。这时,有两种解决方案,第一个方案是码分复用;第二个解决方案是,多个申请迷你槽的用户在头端产生冲突后,不会收到头端的确认,在这各情况下,调制解调器等待一个随机时间后再次尝试。

  光纤到户也用到了时分复用。  


数据链路层

      一、成桢:链路层通常对帧有严格的长度限制,这是由硬件所决定的。

     FLAG——头——有效载荷——尾——FLAG

      二、提供给上层的服务:

    1,有连接的、无连接的服务

    当使用面向连接的服务时,需要经过三个不同的阶段。第一阶段,建立连接,双方初始化各种变量和计数器,这些变量和计数器记录了哪些帧已经接收到,哪些帧还没有收

    到。第二阶段,才真正传输数据帧。第三阶段,释放连接,所有的变量、缓冲区以及其他用于维护该连接的资源也被释放。

    2,确认机制

    发送数据——>接收数据——>校验——>错误——>失败应答——>重传

    包丢失——>计时器——>一个帧被多次传输——>序号

    2.1 差错控制:

    校验码——奇偶校验  纠错码——二维奇偶校验

    光纤或高品质铜线出错的机率要低很多,对于偶尔出现的错误采用差错校验和重传的机制就可以了。

    无线信道非常容易出错,如果没有纠错码,将很难实现数据传输。

    检错码经常被用在链路层、网络层和传输层。

    2.2 停等式协议

    大多数无线链路,卫星链路除外,发送方只能有一帧在途中,甚至不能在链路上存储一个完整的帧,一个小的窗口足够产生良好的性能。所以802.11使用停等式协议,每个帧被传输或重传,直到它被确认,才会移动到下一帧。

    2.3 管道化技术,发送主发送窗口大于1,接收方接收窗口等于1,确认机制使用回退N本协议。

    2.4 滑动窗口协议

    发送方在发送下一帧之前必须等待前一帧的确认,如果我们放松这一限制,则可以获得更好的带宽利用率。这个方案的基本思想是允许发送方在阻塞之前发送多达w个帧,而不是一个帧。通过选择足够大的w值,发送方就可以连续发送帧,因为在发送窗口被填满之前前面帧的确认就返回了,因而防止了发送方的阻塞。

    发送方维持着的一组序号,叫发送窗口,这组序号对应着允许它发送的帧;类似地,接收方也维持着一个接收窗口。发送窗口和接收窗口不必有同样的上下限,甚至也不必有同样的大小。

    如果发送窗口最大尺寸是 n,那么发送方需要有 n 个缓冲区来存放未被确认的帧,以备重传。

    接收方收到一个帧,当其序号等于窗口下边界时,接收方将它传递给网络层,并将其窗口向前移动1个位置。任何落在窗口外的帧都将被丢弃。在所有情况下,接收方都要生成一个确认并返回给发送方,以便发送方知道该如何处理。

    当n号帧的确认到达,n-1号桢、n-2号帧等都会被确认,这叫累计确认。

    可以使用选择重新传

    三、流量控制:

    1,确认机制。

    2,发送方限制传输速率。

    四、实例

    以太网,使用无确认的无连接服务。WiFi使用有确认的无连接服务。有确认的有连接服务适用于长距离的不可靠的链路,如卫星通信、长途电话电路。

    可靠通信的含义是指有确认。

    最适合用可靠的面向连接服务的一种典型情形是文件传输。

    IP语音,不可靠的面向连接的服务。

    文本消息,有确认的无连接服务。

    五、数据链路层交换

    泛洪算法和向后学习算法。

    交换机维护着一个哈希表,这个表是交换机插口和计算机MAC地址的映射。

    刚开始,哈希表是空的。一个帧到达交换机,交换机没有能力明白此帧的真正目的地,所以它会把此帧广播到所有站,发送者除外(泛洪算法)。此时,它还需要检查此帧的源地址,并把源插口和源地址映射起来并保存到哈希表(向后学习法)。

    一个帧到达交换机的路由规则:目标端口和源端口相同,丢弃该帧;目标端口和源端口不同,转发该帧;目标端口未知,泛洪。

    虚拟局域网,以太网帧头有一个VLAN标识符字段,表示该帧所属的VLAN颜色。


介质访问控制层

  网络链路可以分为两在类,点到点连接和广播信道;介质访问控制层用来协调共享信道分配问题。

  介质访问控制层位于数据链路层底部。

  一、分布式仲裁

  1、最早的多路访问控制协议:

    1.1 夏威夷群岛一个无线通信系统

    当用户有数据要发送的时候就发送,中央计算机做为接收方会以广播的形式返回一个确认,发送者可以收到此确认。

    只要两个帧在相同的时间试图占用信道,冲突就会发生,两帧都将损坏。中央计算机不返回确认,发送者要等待一个随机时间,然后再次发送该帧。

    1.2 改良版——时间分槽

    不允许用户每次敲回车就立即发送帧,它必须等到下一个时间槽的开始时间。这样可以减少一半的冲突。

  2、载波侦听多路访问协议

    一个网络可能具有载波侦听功能,也可能没有。有线网络通常具有载波侦听功能,无线网络不能有效地侦听载波,因为并不是每个站都在其他各站的无线电广播范围内。同样,在站不能直接和其他各站通信的一些其他设置中,载波侦听也不可用,如线缆调制解调器,站必须通过线缆头端才能通信。

    版本一:当一个站有数据要发送时,它首先侦听信道,确定当时是否有其他站正在传输数据;如果信道忙,抑制自己的发送;空闲就传输。

    版本二:抑制自己的发送,直到第三方发送结束,这时两个站侦听到信道为空,同时开始传输,冲突;不要同时传输,等待一个随机时间。

    版本三:空闲就传输,两个发送方同时传输,冲突。发生冲突后立即停止传输帧,因为这些帧已经无可挽回地成为乱码了,这种策略节省了时间和带宽。然后等待一个随时时间再次尝试传输。

  二、集中式仲裁——无冲突

  1、位图协议

    有一个数组,数组长度是网内计算机的数目。1号计算机有数据要发送,置数组1号元素值为1;n号计算机有数据要发送,置数组n号元素为1——此操作直到竞争期结束。接下来是传输期,每个计算机按照顺序传输数据帧。

  2、令牌传递

    我们并不需要一个物理环来实现令牌传递,相反,连接各站的信道可以是一根长总线。

    20世纪80年代非常流行,是经典以太网之外的另一种局域网选择。

  三、实例

    1、802.11,即无线网,也叫WiFi。

    无线通信使用确认机制在事后发现冲突和其他错误。无线通信通常不能检测出正在发生的冲突,站接收到的信号可以很微弱,也许比它发出去的信号弱上百万倍,要发现这样的冲突就像在海上寻找涟渏一样的困难。

    无线电传输范围有限,无线局域网中的站或许无法给所有其它站发送帧。

    因为检测不出冲突,所以802.11试图避免冲突。802.11在发送前侦听介质,如果听到别人已经在发送就推迟自己的发送;如果信道空闲,它等待一个随机时间再发送。随机时间在很大程度上能避免两台机器同时发送数据。这是802.11的物理侦听机制。

    802.11的虚拟侦听机制,发送方刺激接收方输出一个短帧,以便其附近的站能检测到该次传输。802.11帧的首部包含本帧预计将要使用的持续时间。这样,附近接收到该帧的其它站将抑制自己发送数据于该持续时间内。

    2、经典以太网

    侦听信道,空闲就传输,两个发送方同时传输,冲突。发生冲突后立即停止传输帧,因为这些帧已经无可挽回地成为乱码了,这种策略节省了时间和带宽。然后等待一个随时时间再次尝试传输。

    以太网帧最大1500字节,这样就没有任何用户可以长时间霸占任何传输线路,并且当时内存价格昂贵。

    以太网帧最小64字节。局域网中A、B两个站距离最远,假设从A到B需要x秒。A站发送一个短帧,这个帧在没有到达B站将要到达B站的时候,A站的传输已经结束。这时B站也发送一帧,冲突,最终A站B站发送的数据最后都会到达收发器的缓存中,数据没有意义了。现在看B站,当B站检测到它接收到的信号比它发出去的信号更强时,它知道已经发生了冲突,所以它放弃了自己的传输,并且产生一个48位的突发噪声以警告所有其他的站,阻塞以太电缆,大家都等一个随机时间后再发送。大约在2x后,A站收到了突发噪声,但A会错误的认为刚才的一帧已经成功发送了。为了避免发生这样的情况,所有帧必须至少需要2x的时间才能完成发送,这样当突发噪声返回到发送方时传输仍在进行。

    经典以太网,最大长度2500米,具有4个中继器。电流在2500米的线路上走一个来回的时间是2x,2x时间可以发送的数据正好是64字节。

    3、一个公共信道的动态分配方法可以是集中式的,例如蜂窝网络中的基站,由这个中心实体决定接下来谁使用信道。具体的算法可能是它接受多个数据包,按照某个内部算法确定这些数据包发送的优先次序。


网络层

  一、面向连接
   虚电路,标签交换
   MPLS,多协议标签交换:ISP用它为超大流量建立长期的连接。两台路由器可以给两个都发到第三台路由器但相互之间毫无关系的数据包分配相同的标签,它们使用同一条输出线路传输。和虚电路的区别,为目标相同的多个流的数据包分配相同的标签,合并后可以再区分开;虚电路区分不开。转发速度快,因为标签转发表的表项数量小。
   MPLS是一个2.5层协议。它可以转发IP数据包和非IP数据包,多协议的由来。

  二、路由算法
   1、距离向量路由算法:发现邻居、构建自己的路由表、相邻路由器交换自己的路由表信息。
      无穷计数、慢收敛
   2、链路状态路由算法:发现邻居、维护一个链路状态表、泛洪自己的链路状态表到所有的路由器、每个路由表计算自己的路由表。
      最短路径算法
   3、网络内部的层次路由算法
      当网络增长到一定的规模时,每台路由器都不可能为其他每一台路由器维护一个表项,分层路由,每个网络内部有一个或多个路由器连通外网。
   4、泛洪算法
      会产生大量的重复数据包。
      解决方法1,跳计数器。
      解决文法2,序号,让源路由器在接收到来自主机的每个数据包中放置一个序号,然后每个路由器为每个源路由器维护一个列表,记录已经观察到的来自该源路由器的数据包序号。如果进来的数据包序号已经在该列表中,丢弃。为了防止该列表无限地膨胀,每个列表应该使用一个计数器k作为参数,它表示到k为止的所有序号都已经观察到了。
   5、广播路由算法
      逆向路径转发,路由器完成路由计算,路由器内部维护着整个网络的链路状态。路由器根据内部维护着的生成树实现泛洪算法。
      生成树是网络的一个子集,它包含所有的路由器,但没有任何环路。
   6、多播路由算法(组播)
      修剪生成树
   7、任播路由算法(选播)
      选择树上就近一个节点即可。DNS。
   8、路由协议
      域内路由协议,内部网关协议。早期采用距离向量路由算法,RIP。后来被链路状态路由算法取代,OSPF、IS-IS。
      域间路由协议,外部网关协议。路径向量路由算法。

  三、传输协议
      IPv4头格式:
      区分服务:前6位用来表示服务类别;后2位用来表示显示拥塞通知,表明数据包是否经历了拥塞。
      标识,DF位,段偏移量。

      IPv6头区分服务字段和IPv4使用方式一样,也由低两位表示显示拥塞通知。
      IPv6的段扩展头是用来支持数据包分片和重组的。

    1、分类寻址
      在路由器转发时,只关注网络部分。如果第一位是0,是A类网,如果前两位是10,是B类网,如果前三位是110是C类网。A类网网络号7位,B类网网络号14位,C类网网络号21位。找出相应的网络号并路由。

    2、子网划分
      子网:1、一个网络中的所有路由器和通信线路的集合。2、分割一个大型网络得到的一系列较小的网络,比如以太网。
      一个C类网只能有255个地址,B类网数据有限。
      一个网络只有两个主机也需要一个C类网,地址浪费。
      分割一个大型网络得到的一系列较小的子网,需要结合子网掩码,以确定网络位即子网号,再根据子网号转发数据包。

    3、无类地址
      也叫超网。通过基本取消地址分类,使用子网划分的想法。
      最长匹配前缀,打破IP地址和地域相关联的耦合。

    4、特殊寻址
      0.0.0.0,在主机启动时使用,表示这个网络或这个主机。
      网络号全是0,表示当前网络。
      255.255.255.255,表示本地网络的所有主机。
      网络号,主机号全1,表示目标网络所有主机。

    5、IPv4地址短缺
      (1)动态分配IP,一台主机上线且使用网络时,动态分配一个IP,下线回收此IP。        
      (2)网络地址转换 NAT
          NAT盒子可以集成到防火墙、路由器、调制解调器中。
          内网主机发送的数据包到达NAT盒子时,盒子选择一个自己的未使用的端口号,再把数据包中的源IP和源端口提取出来,然后创建一个表,索引是刚刚选择的自己的端口号,表项是源IP和源端口。维护这个映射,当响应到来时,据此映射找到发送主机。
          远程主机无法主动与内网主机通信,NAT穿越

      (3)私有地址,ABC类地址分别有:10.0.0.0-10.255.255.255(1677 7216),172.16.0.0-172.16.255.255(104 8576),192.168.0.0-192.168.255.255(6 5536)

   四、控制协议
      1、ICMP,Internet Control Message Protocol,因特网控制消息协议。ICMP消息封装在IP数据包中。
        发现附近的路由器,数据不可达,抑制包
        超时,traceroute 命令,发送到目标主机的一组数据包,数据包的超时路数设为1、2、3、4,这样,途中每个路由器就会返回超时消息。
        检查一台主机是否活着,ping 命令。

      2、ARP,地址解析协议
      3、DHCP,动态主机配置协议,一台主机启动时,广播一个带有自己MAC地址的请求,DHCP服务器返回一个未使用的IP。DHCP除了为主机提供IP地址以外,还可以配置网络掩码、默认网关的IP地址、DNS服务器和时间服务器。

   五、网络互联

      网络互联有两种基本选择:可以利用硬件设备,将每种网络的数据包翻译或转换成任何其他网络的数据包;也可以像计算机科学家通常做的那样,利用软件实现在不同的网络上面增加一个间接层,从而构建一个公共层来解决这一问题。无论哪一种情形,都要有设备放置在网络之间的边界上。可以处理多个网络协议的路由器称为多协议路由器或者网关。上面两种方法都不完全令人满意。交给更高层来处理,比如说用TCP,要求所有的网络都能实现TCP,并且限制了跨网络的场景只适用于使用TCP的应用。另一种方法是在网络之间转译数据包。然而,除非数据包格式有很近的亲缘关系,否则转换总是不完整的,并且往往注定要失败。比如,IPv6地址128位长,IPv4地址32位长,不管路由器如何努力,无法把IPv6的地址填入32位的IPv4地址字段(IPv4和IPv6不兼容)。

      1、隧道技术
        源主机和目标主机所在网络的类型完全相同,但它们中间隔着一个不同类型的网络。
        比如一家跨国银行,它在巴黎有一个IPv6网络,在伦敦也有一个IPv6网络,但两个办公地之间的连接却是通过IPv4的。巴黎办公地的主机构造一个包含伦敦IPv6地址的数据包,然后发给一个支持IPv4和IPv6的多协议路由器。该路由器把一个IPv6数据包放入一个IPv4数据包中。当这个数据包到达伦敦的路由器时,原来的IPv6数据包被提取出来,并发送到目标主机。
      2、数据包分段和重组
        MTU,Maximum Transmission Unit,最大传输单元。以太网,1500字节;802.11,2000字节;光纤网络,4000字节;IP网络层,最大65515字节。
      3、主机根据路径MTU生成数据包。
        现代Internet采用的策略
        每个IP数据包发出时头部设置一个标志,指明不允许对它执行分段操作。如果一台路由器收到一个太大的数据包,那它就生成一个报错数据包,并返回给源端,然后丢弃该数据包。

      4、在互联网内,一个网络内部使用内部网关协议,网络之间使用外部网关协议。互联网中各个网络可能全部使用不同的内部网关协议,但它们必须使用相同的外部网关协议。

   六、拥塞控制:流量感知路由、准入控制、流量调节、负载脱落、流量整形
      准入控制,通常使用漏桶或令牌桶来对网络状况进行分析。网络流量有突发性的特点,漏桶有两个参数,约束流量的平均速率和瞬时突发大小。在实际网络中,对过去行为的测量,即捕获数据传输的统计特征,可用来估计准入的虚电路数量。

      流量调节。1、随机早期检测,对丢包现象按照拥塞进行处理。TCP就硬性规定了对丢包现象按照拥塞进行处理。它指在拥塞还没有形成以前随机地丢弃一些数据包,这使得最快速的发送方更有可能看到数据包的丢失。2、抑制包。早期的Internet使用了一种抑制数据包,不过它从来没有流行起来。路由器选择一个被拥塞的数据包,并且给源主机发送回一个抑制数据包。原始的数据包可能会被打上标记,因而它在前行的路径上不会产生更多的抑制数据包。3、显式拥拥塞通知。现代Internet使用的通知设计。路由器在它转发的任何数据包上打卡标记以发出信号,表明它正在经历拥塞。最终目标主机注意到拥塞已经发生,并在它发送应答数据包时通知发送方。4、逐跳后压,让抑制数据包在沿途每一跳都发挥作用。

      负载脱落。葡萄酒策略、牛奶策略。对于文件传输,旧的数据包价值要高于新的数据包。比如,丢弃数据包6,保持数据包7、8、9,只会迫使接收方做更多的工作来缓存它已经接收但尚不能使用的数据。相比之下,对于实时媒体数据,新的数据包比旧的数据包更有价值。这是因为,如果数据包被延迟并且错失了必须播放给用户观看的时间,那么这些数据包就变得毫无用处。视频压缩算法,MPEG,周期性地传输完整帧和差异帧。

   七、服务质量:
      1、流量整形
      2、数据包调度
        a、先进先出,尾丢包。快速的发送方占用大多数的流量,慢速发送方的数据包不得不排在队列中快速发送方的许多数据包后面。
        b、公平队列(1)路由器针对一条给定的输出线路为每个流设置一个单独的队列。给使用大数据包的主机提供了更多的带宽。
                  (2)按数据包轮循方式改成按字节轮循方式。
                     (3)加权公平队列
      3、综合服务
        资源预留协议,一个组中的任何接收方都可以沿着生成树给发送方发送一个预留消息。
      4、区分服务
        加速转发,加速类别的数据包应该可以直接通过网络,就好像不存在其他任何数据包一样。
        确保转发,发送速率的优先级和丢弃类别。


传输层   

一、连接管理

  • TCP建立连接过程

    1、客户端发送一个SYN包(SYN同步),生成一个伪随机数作为初始序号。在一个时间间隔内防止回绕。
      对于初始序号,TCP最初使用了基于时钟的方案。时钟使得攻击者很容易预测到下一个初始序号以便建立一个伪造的连接。
    2、服务器ACK置为1,接收到的序号加1为确认号,稍带确认。SYN及自己的初始序号。
      TCP传输的是字节流,字节流没有边界,所以确认号的意思是希望下次接收的偏移量,这里没有数据,加了一个1。
    3、客户端ACK置为1,确认序号加1。

  • 三次握手原因

    客户端发出一个SYN包,此包在网络中长期驻留在一个缓存中。超时,重发了一个SYN包,顺利完成任务,释放连接。这时,第一个SYN包来到服务器,服务器以为这是一个新请求,创建了一个半连接。它一直等待对方给它发送数据。
    因为连接已经释放,服务端已经丢失了释放连接的序号,所以无法辨别这是一个重复的数据包;发送方也已经释放了连接,并没有一个此序号的连接请求,所以会明确拒绝服务器。

  • 四次挥手

    对称释放。为了避免两军问题,需要使用计时器。如果在两倍于数据包生存期的时间内,针对FIN的响应没有出现,那么FIN段的发送方释放该连接。另一方最终会注意到似乎不再有人在监听该连接,也将会超时。

二、错误控制
    只有数据链路层的差错控制是不够的,如果在某个路由器的网络层出现了错误,数据链路层检测不出来。

三、流量控制
    传输层使用动态的滑动窗口。和数据链路层的做法不同,把缓冲与确认机制分离。
    初始时,发送方根据它的需求请求一定数据的缓冲区,然后接收方根据它的能力分配尽可能多的缓存区。接收方在逆向流量中捎带上单独的确认和缓冲区分配数。
    确认段可能丢失,由于控制段没有序号,也不会超时,所以可能在发送方造成死锁。为了避免这种情况,每台主机定期地在每个连接上发送控制段,给出确认和缓冲区大小。

四、拥塞控制
    TCP拥塞信号,丢包、快速重传、显示拥塞通知。
    1,加法递增,乘法递减。拥塞窗口慢慢增大,发生拥塞时快速减半。
    2,确认时钟。发送方在快速链路上发送多个数据包,确认包以网络上慢速链路的速率返回。如果发送方以确认时钟的速率发送数据包,那么数据包就不会在路由器被排队,不会造成拥塞。

    慢速启动,初始窗口大小为1,通过确认时钟使拥塞窗口指数级的增大。1,拥塞信号,当前拥塞窗口的值除以2设为阈值,拥塞窗口回到1,再进行慢启动。2,拥塞窗口值超过阈值,加法递增。
    快速恢复,加法递增后拥塞信号,当前拥塞窗口的值除以2设为阈值,并调整拥塞窗口的大小为此阈值,加法递增。

五、拥塞窗口和流量控制窗口
    发送方比较这两个窗口,只能发送两个中较小的那个窗口指定的流量。否则,要么,接收方没有足够的缓存接收,要么,会造成网络拥塞。


应用层 

  一、DNS,域名系统,Domain Name System

    任播,UDP
  二、SMTP,从邮件服务器到邮件服务器传输时使用SMTP协议。从邮件服务器到用户代理的投递使用POP3或IMAP。
  三、CDN,内容分发网络

     

posted @ 2018-08-26 17:20  zhuangrunwei  阅读(500)  评论(0编辑  收藏  举报