计算机网络笔记

第一章

1.3 因特网的组成

两种通信方式

  1. 客户端服务器方式(C/S方式),Client/Server方式

    就像我们Java开发的系统,部署一个网站,那个网站所在主机就是服务器。用户通过浏览器访问网站,浏览器就是客户端

  2. 对等方式(P2P方式),Peer-toPeer方式

数据交换方式

  1. 电路交换:基本可以做到实时通信

    • 电路交换的过程:建立连接–>通信–>关闭连接
    • 适用场景:使用数据量很大的实时性传输
    • 像我们打电话,就是电路交换。拨号等待就是建立连接的过程,对话就是通信,挂断就是关闭连接
  2. 分组交换:将数据分组传输

    • 优点:高效,灵活,迅速,可靠

    • 缺点:时延,开销

    • 计算机就采用分组传输,不需要建立路径,只需要给分段数据加上目标头部即可

  3. 报文交换:不分组,直接加个目标首部传输,时延长,开销大

1.6 计算机性能

  • 速率:连接在计算机网络上的主机在数字信道上传送数据位数的速率,也称比特率
    • 单位:b/s,kb/s,Mb/s,Gb/s
    • 我们手机下载软件看到的速度,就是在下载信道上的速率,xxkb/s,xMb/s这种,
  • 带宽:数据通信领域,数字信道所传送的最高数据率(他和速率打配合,多条信道,最高带宽)
    • 单位:b/s,kb/s,Mb/s,Gb/s
  • 吞吐量:单位时间内通过某个网络的数据量
    • 单位:b/s,Mb/s等
  • 时延:
  • 时延带宽积:传播时延*带宽
  • 往返时间:从发送发发送数据开始,到发送方收到接收方确认
  • 利用率:信道利用率和网络利用率组成
    • 信道利用率:有数据通过时间/(有+无)数据通过时间
    • 网络利用率:网络空闲时的时延/(1-信道利用率)

1.7 计算机网络体系结构

OSI参考模型

应用层–>表示层–>会话层–>传输层–>网络层–>数据链路层–>物理层

TCP/IP四层模型

应用层–>传输层–>网络层–>数据链路层

第五章

5.3 传输层协议

5.3.1 TCP协议概述

  • TCP是面向连接的传输层协议
  • 每一天TCP协议连接只能有两个端点,每一条TCP连接只能是点对点的(一对一)
  • TCP提供可靠交付的服务
  • TCP提供全双工通信
  • 面向字节流

5.3.2 TCP连接

  • TCP把连接作为最基本的抽象
  • 每一条TCP连接有两个端点
  • TCP连接的端点不是主机,不是主机的IP地址,不是应用进程,也不是运输层的协议端口。TCP 连接的端点叫做**套接字(socket)**或插口(是不是联想到了Java的Socket连接)
  • 端口号拼接到IP地址即构成了套接字
  • 套接字
    • 套接字socket=(IP地址: 端口号)
    • TCP连接= {socket1, socket2}={(IP1: port1), (IP2: port2)}

5.3.3 TCP协议实现可靠传输

停止等待协议

计算机网络笔记

  • 情况(a)无差错情况,A发送M1,B收到并确认M1,A收到M1的确认并发送M2,直至完成
  • 情况(b)超时重传,A发送M1,在M1到达B时数据包丢了,那么B肯定不会给A发送M1的确认。此时的A在一直等待M1的确认,在等待数据往返时间更多一点时间后,判定M1发送失败,重新发送M1,重复情况(a)
    计算机网络笔记
  • 情况(a)确认丢失,A发送M1,在M1正确到达B,B发送M1的确认,但M1的确认丢失了,此时A在一直等待M1的确认,在等待数据往返时间更多一点时间后,判定M1发送失败,重新发送M1,这时B会收到重复的M1,丢弃重复的M1并给A发送M1的确认
  • 情况(b)确认迟到,A发送M1,在M1正确到达B,B发送M1的确认,M1的确认由于某些原因迟到了。A在等待M1的确认,超过一定时间重新发送给M1,B收到重复的M1,丢弃重复的M1并发送M1的确认,开始AB正常的收发。但一段时间后A收到了迟到的M1的确认,但A什么也不做
    计算机网络笔记
连续ARQ协议

ARQ:自动重传请求

用一个滑动窗口来发送请求,假设这个窗口可以存放5个数据,A一次发送5个,B收到1位置的数据,发送窗口滑动,而B如果全部收到的话,只需要发送5,就表示1-5的数据包全部收到了,此时会滑动5个位置计算机网络笔记