1. 计算机网络的主机节点(方的,数据的源或目标)和数据交换节点(圆的,按工作层次的不同可分为:中继器、交换机、路由器等)。
  2. 和方的有关就叫接入点,两个圆的就是骨干节点。
  3. 端系统称为end system 或者 host。
  4. 互联网网络结构:网络边缘、网络核心(作用:数据交换)和接入系统。
  5. tcp通信前除握手外,还具备保序、流量控制(发送方不会淹没接收方,根据接收方的接收能力发送)和拥塞控制(发生拥塞时,发送方降低发送速率)
  6. 网络核心:电路交换。将带宽分成片采用频分(fdm)、时分(tdm)和波分(wdm);分组交换:采用虚拟电路网络(有连接,每个分组带虚电路号存储转发)或者数据报网络(无连接,不维护状态,每个分组都带有完整的ip地址,存储转发,可能无序)。有排队和延迟,可能会丢失。例子:如果网络链路带宽为1Mbps,假设用户活跃是100kbps,但只有10%的时间活跃,以上两种模式最多能为多少用户服务。电路交换的因为是独享,就是1Mbps/100bps=10个。 分组比如服务35个,最多一次服务10个对象,只有0.4%的情况下不支持35个。分组交换能支持的用户多一些。
  7. 架构图里接入层_架构图里接入层

  8. 传播延迟在局域网可忽略,但在广域网时不能。因为物理距离太远了。
  9. 因特网服务提供商(Internet Service Provider, ISP)
  10. 分组延时:1节点处理延时;
  11. 架构图里接入层_计算机网络_02

  12. 2排队延时;
  13. 架构图里接入层_计算机网络_03

3传输延时;

架构图里接入层_计算机网络_04


4传播延时。

架构图里接入层_拥塞控制_05

  1. Tracert www.baidu.com 在windows测试。
  2. icmp报文,向目标请求时,被干掉或者其他原因会返回一个icmp报文通知源,达到测试延时时间。
  3. 上层到下层,sdu(服务数据单元)
  4. 架构图里接入层_客户端_06

  5. 物理层比特的传输,链路层帧的传输,网络层端到端的传输,传输层区分进程和加强网络服务不可靠变为可靠。
  6. 架构图里接入层_拥塞控制_07


  7. 架构图里接入层_服务器_08

  8. Tcp的socket ,
  9. 架构图里接入层_计算机网络_09

  10. Udp的socket
  11. 架构图里接入层_客户端_10

  12. 采用以上两个就可以不用每次传输时都带上ip和端口号,省去了麻烦。
  13. ssl因为tcp和udp不加密,被抓取后可直接分析。通过ssl提供安全。
  14. 架构图里接入层_拥塞控制_11

  15. https相当于就是浏览器跑在ssl上在tcp上运行。
  16. 安装本地缓存减少发出请求等待时间,通过条件查询达到,服务器更新了,就能获取到最新的返回,而不会一直都用之前存的。
  17. http持久和非持久
  18. 架构图里接入层_计算机网络_12

  19. ftp文件传输协议,数据和控制是在两个tcp上完成的,带内的叫数据传输,带外的是控制命令的传输。
  20. 原始的smpt只能传输ascii码,中文字符这些没在里面的需要先通过其他的转然后到那边再转回来
  21. 架构图里接入层_计算机网络_13

  22. DNS,域名系统。不用记ip而是记域名,就像www.baidu.com。dns系统需要解决的三个问题:命名、解析和维护。解决命名问题:主机的域名是树叶往上走到树根例如robot.ai.cs.yale.edu,域的域名是树枝往上走例如耶鲁大学的计算机系的域名为cs.yale.edu。解决解析问题:划区域,每个区域解析该区域的,每个区域是独立的。解决维护问题:通过保存资源记录(RR)的分布式数据库,进行下面的增删改查,就可以达到维护目的。
  23. 架构图里接入层_架构图里接入层_14

    架构图里接入层_客户端_15

  24. TLD(顶级域)服务器,负责维护顶级域名和所有国家的顶级域名。
  25. class在internet里面是IN;TTL是time to live有长期和短期,长期代表的是权威,短期是缓存;DN是域名;value存的是ip地址;type:不同值表示不同的作用。为NS的时候上层要知道下层的两个东西,一个是key:子域的域名,value:子域的子域的服务器域名;第二个是key:子域服务器的域名,value:服务器的ip
  26. 架构图里接入层_服务器_16

  27. DNS攻击,攻击根,流量不走根,查询并不一定要走根,而且localserver缓存了顶级域甚至二级域的域名和ip地址,所以把根掐掉并不一定就不能查询了。
  28. cs模式时,如果客户端数量少,则客户端的下行就成为限制,但是当数量很多时,服务器的上行就成为限制了。p2p模式时,最小下载带宽的客户端为限制。除了服务器提供上载外还有其他的客户端。
  29. 非结构化p2p:两个节点有关系有会话,相当于邻居关系,然后他们覆盖,但是节点和节点之间的这种关系是随意的随机的称为非结构化的p2p;(DHT)结构化p2p:节点和节点之间是有序的,根据节点的不同,例如构成一个环,一个树,或者更复杂的关系。
  30. 架构图里接入层_拥塞控制_17

  31. 非结构化p2p,集中目录、完全分布式、混合体(组长和组员,组长之间是分布式的,组长和组员之间是集中式的)。
  32. BitTorrent(位洪流):tit-for-tat,把这个文件分成很多快,每个人有这些块的那些部分的就为1没有的就为0,然后每次和4个建立连接(防止建立太多,速度又慢了),请求没有的,在这里面,你提供的资源越稀缺,下次该你需要下载的时候,为你提供的就好(鼓励贡献)。
  33. 结构化p2p,每个节点按照ip地址的hash值作为标识,例如构成一个环,离线了就重新连环。文件内容也是弄成hash值,文件hash值为6-88的就维护在88这种。查询的时候,就直接根据它的hash值查询。
  34. 架构图里接入层_拥塞控制_18

  35. cdn运营商部署缓存节点的位置:enter deep(部署在更接近用户的地方,数量多,管理困难);bring home(部署在关键位置,数量少)。
  36. cdn的使用让网络加速,事先将内容上传到cdn开始节点,不是都从源获取,而是通过计算判断让离用户最近的cdn缓存节点提供服务。
  37. tcpSocket(可靠的)
  38. 架构图里接入层_客户端_19

  39. udpSocket(不可靠)
  40. 架构图里接入层_服务器_20


  41. 架构图里接入层_客户端_21

  42. 传输层和网络层相比
  43. 架构图里接入层_拥塞控制_22

  44. tcp是字节流,udp是数据报
  45. Tcp复用
  46. 架构图里接入层_拥塞控制_23

  47. udp复用
  48. 架构图里接入层_拥塞控制_24

  49. 可靠数据传输rdt。不断的升级。但是是一发一停一接收,利用率很低。
  50. rtt往返延时。
  51. 流水线协议(一次性可解决多个),非流水线协议(一次只能一个)。
  52. 提高所述38的利用率:(slide window)滑动窗口协议,发送缓冲区(可用来存放已发送,但是还没得到对方确认的),发送窗口是发送缓冲区的一部分或全部(已发送,但是还没得到对方确认的),发送窗口不能超过发送缓冲区。在以上基础上。GBN是接收等于1和发送大于1,SR是都大于1。正常时,前者发送一个接收到一个之后再发。后者可同时发送几个,返回也是根据发送的返回;异常时,前者是全部重发,后者是对应的重发。S-W是等等与1
  53. GBN协议和SR协议总结。
  54. 架构图里接入层_拥塞控制_25

  55. 运行中的gbn
  56. 架构图里接入层_服务器_26

  57. 运行中的sr
  58. 架构图里接入层_客户端_27

  59. sr和gbn对比
  60. 架构图里接入层_拥塞控制_28

  61. 以太网MTU最大传输单元(Maximum Transmission Unit,MTU),最大为1500字节,应用层一次最多传1460个字节,多了需分段。
  62. mss 字节流中最大报文段的长度。
  63. TCP报文段结构。
  64. 架构图里接入层_服务器_29

  65. TCP的应答为发送方序列号+1,例如应答100代表99及之前的都收到了,且为累积确认。
  66. 为什么TCP要三次握手要知道要连接了、准备好缓冲区、要对某些值置位。只二次握手的话,可能确认连接的段丢失或暂留,导致服务器半连接。
  67. 架构图里接入层_客户端_30

  68. 两次握手是不行的。
  69. 架构图里接入层_计算机网络_31

  70. 所以需三次握手(第一次客户端带一个序号过去,服务端返回这个序号+1且也给一个另外单独序号,客户端返回服务端的序号+1,都正常之后才建立连接。这就是三次握手)
  71. 架构图里接入层_服务器_32

  72. 四次挥手。
  73. 架构图里接入层_客户端_33

  74. 网络拥塞。拥塞控制的两个方法
  75. 架构图里接入层_客户端_34

  76. 网络辅助信息的拥塞控制:
    ABR:提供的弹性服务,在网络不发生拥堵时可以瞬时的超过带宽,在阻塞时两主机之间一定不能超过限定的带宽;
    RM(资源管理信元):有两个标志位:NI(轻微拥塞),CI(严重拥塞),还有个字段ER标识能够为这对主机提供多大的带宽。
  77. 架构图里接入层_计算机网络_35

  78. 端到端的拥塞控制:有拥塞:超时或者三个冗余的ack(当前的没收到,但是当前的后面三个收到了)。
  79. 架构图里接入层_服务器_36

  80. tcp控制拥塞单独方法
  81. 架构图里接入层_架构图里接入层_37

  82. 流量和拥塞控制联合动作。一个是能发送的最大长度,一个是能接收的最大长度。分别对应着拥塞控制的值和流量控制的值。取他们最小的。
    Threshold为阈值,ConWin为窗口值,SS为慢启动。
  83. 架构图里接入层_拥塞控制_38

  84. 网络层。数据平面和控制平面。
    传统方式:控制平面算路由表,数据平面按照路由表进行转发,不易于更改。
    SDN方式:控制平面式集中式的,易更改。
  85. 网络层对什么都不管,所以叫尽力而为的模型。网络层单独服务模型。
  86. 架构图里接入层_服务器_39

  87. 交换结构
  88. 架构图里接入层_客户端_40

  89. 用排队,中间(fabric)速度要大于n倍的输入,例如输入为10bps,有10个中间处理速度要大于100bps。要排队是因为链路层的瞬时速度可能比fabric的速度快。
  90. 架构图里接入层_客户端_41

  91. fabric的输出排队可以是先进先出,但丢弃时有调度。输出也有其他的调度。
  92. 架构图里接入层_计算机网络_42

  93. 太大了需分片(记忆有偏移量),分片之后,到主机之后再重组,有一片没到就触发定时器重发。
  94. 子网:前缀一样、一个子网里面在ip上就一跳(可以借助交换机,但不借助路由器);
  95. 地址分类,其中全为0和全为1的不要。
  96. 架构图里接入层_计算机网络_43

  97. a、b、c都是单播。
  98. 架构图里接入层_架构图里接入层_44

  99. 路由是由一个网络为单位来做路由信息的发布和计算,而不是单个单个的ip,而且在传输的过程中这些网络还可以做聚集。
  100. 特殊的ip地址。
  101. 架构图里接入层_计算机网络_45

  102. 内网(专用)IP地址
  103. 架构图里接入层_架构图里接入层_46

  104. 子网掩码:按需分配网络比特,然后算的时候与上1111…000,因为主机号在路由转发的时候没用所以与的0。1的个数就是/后面的数字,总共32位,其余的补0。
  105. 架构图里接入层_拥塞控制_47

  106. 如何获取地址
  107. 架构图里接入层_客户端_48

  108. 左边的就是路由聚集,当isp发送200.23.18.7的时候,由于那个红色的是它的下一跳(前20位是满足的)所以先传给他,然后再往左边传,看前23位,就能得出谁是200.23.18的下一跳,就交给谁解析。
  109. 架构图里接入层_架构图里接入层_49

  110. 内网和外网的交互,内网能主动与外网连接,外网不行,需要网络穿透。
  111. 架构图里接入层_服务器_50

  112. net穿透:1静态写死;2映射Universal Plug and Play(UPnP);3中继。
  113. ipv6,源主机分片,不在路由分片(ipv4在路由分片)。
  114. 架构图里接入层_服务器_51

  115. ipv4升级ipv6平滑升级。最开始ipv6内部用ipv6外部用ipv4进行数据传输,两个ipv6之间的传输也依靠ipv4,当数据到ipv6这里时,就解封装在封装成ipv6,就实现两个ipv6的通信了。
  116. 架构图里接入层_服务器_52

  117. sdn的主要思路。
  118. 架构图里接入层_客户端_53

  119. sdn可以更细化的区分,传统的只能走一条。
    sdn将垂直集成变为了水平集成(更加开放)。
    集中式实现控制逻辑(易于管理)。
    SDN的openflow流表:改变里面的字段就可以表示不同的功能,应用更广。