Chapter 1 —— 概论

计算机网络   2024-03-10 14:01   120   0  

计算机网络在学什么?

· 通信:数据如何从一个实体传输到另一个实体?

· 服务:用户能利用网络做什么?

如何解决通信和服务的问题?

· 如何解决通信问题——分层解决

  1. 物理层:比特流(透明)传输;

  2. 数据链路层相邻节点之间的无差错通信;

  3. 网络层:两个主机之间的通信;

  4. 传输层:端到端主机中应用进程之间的通信,

· 如何提供服务——应用层提供

  1. DNS:域名解析服务;

  2. WWW:资源共享服务;

  3. SMTP:电子邮件服务;

  4. FTP:匿名下载文件服务;

  5. DHCP:主机IP地址等配置服务;

  6. SNMP:网络管理服务;

  7. .......

如何学习计算机网络?

· 按层次来学习,根据计算机网络的7层体系结构与TCP/IP的4层体系结构,我们归纳出学习计算机网络的5层原理体系结构:

8711_xjwz_6297.png

· 之后,我们会根据每个层要解决什么问题用了些什么协议提供了什么服务来分析计算机网络。

· 每一层通过自己的协议来为高一层提供服务,如数据链路层通过自己的协议为网络层提供服务;最终,应用层为用户提供服务。

互联网的核心部分

· 互联网的核心部分中最重要的就是采用了分组交换的技术。

· 典型的交换技术有电路交换分组交换报文交换

· 电路交换:

  1. 两部电话之间通过1条线可以连接,那么N部电话就需要N(N-1)/2条线,这不可行。

  2. 因此,我们可以采用一个中心节点,即交换机,来连接全网。

    10613_gox7_3722.png

  3. 当某两台电话需要通话的时候,就把两台电话的线连接起来即可。

  4. 这里交换的含义其实就是转接,从通信资源的角度来看,就是按某种方式动态地分配传输线路的资源。

  5. 由于计算机数据具有突发性,因此使用电路交换来传输数据的话通信线路的利用率就很低,早期拨号上网的速度就非常非常慢。

· 分组交换

  1. 分组交换采用存储转发的技术,在发送端,先把较长的报文划分成较短的,固定长度的数据段。

  2. 然后,在每个数据段前面添加首部(Header)来构建分组,这个首部里包括了各种解析数据的重要信息,如多少比特数据为一组,组的顺序,所使用的协议等。

    11406_n5rm_5180.png

  3. 然后,把分组一个一个地依次发送出去。

  4. 最后,接收端在收到分组的信息后,去除首部并还原成报文。

  5. 具体来说,第3步的发送是怎么发的呢?采用的是存储、转发的方式。

  6. 首先,路由器接收到分组信息后,把收到的分组放入缓存;然后查找转发表,找到某个目的地址应该从哪个端口转发;最后把分组送到适当的端口转发出去。

  7. 同时,每个分组所走的路线可以动态选择,可基于负载均衡等场景选择最佳路线

    12512_r7j8_6769.png

  8. 分组交换的优点有:

    · 高效:分组传输过程中动态分配带宽,对通信链路的占用是逐段而不是整段。

    · 灵活:每一个分组可以独立选择最合适的转发路由。

    · 迅速:以分组作为传送单位,可以不先建立连接就能向其它主机发送分组。

    · 可靠:拥有可靠的网络协议;分布式多路由的分组交换网提高了生存性。

  9. 分组交换带来的问题

    · 分组在各存储节点转发时需要排队,这必然造成时延。

    · 分组必须携带首部,也会造成一定开销。

· 报文交换:

  1. 电报通信采用了基于存储转发原理的报文交换(Message Switching),他是把一整段数据一起发送出去的。

  2. 它的发送时延比较长,因此现在很少人会使用这种交换方式。

· 通过比较三种交换方式,我们发现,分组交换最适合计算机网络传输:

13786_udcq_9675.png

计算机网络的分类

· 我们可以按照网络的作用范围对计算机网络进行分类:

13883_0vql_4082.png

· 也可以按照网络的使用者进行分类:

13956_ajbo_2639.png

计算机网络的性能指标

· 速率:指的是数据的传输速率,单位是bit/s,kbits/s,Mbits/s,Gbits/s等;速率往往指的是额定速率,并非实际运行速率。

· 带宽(bandwidth):在计算机网络中,用于表示某通道传输数据的能力,表示在单位时间内网络中某信道所能通过的最高数据率。说人话就是最高网速。

· 吞吐量(throughput):单位时间内通过某个网络(或信道、接口)的数据量。吞吐量受网络的带宽或网络的额定速率限制。

· 时延(delay/latency):数据(一个报文/分组/比特)从网络一端传送到另一端所需的时间。

  1. 发送时延:也称传输时延,是从发送数据帧的第一个比特起,到该帧的最后一个比特发送完毕所需要的时间,说人话就是数据从主机的网卡传到网线上去所要的时间。计算公式为数据帧长度(bit)/发送速率(bit/s)。

  2. 传播时延:数据传到网线上去的时候以电磁波的形式传输,电磁波在信道中传输一定距离所花费的时间就是传播时延。计算公式为信道长度(m)/信号在信道上传播速率(m/s)。

  3. 处理时延:主机或路由器在接收到分组的时候,为处理分组所耗费的时间。

  4. 排队时延:分组在路由器输入输出队列中排队等待处理所消耗的时间。

20326_v0l6_1422.png

总时延由四个时延之和决定,谁占大头要根据实际情况来计算。

注意:对于高速网络链路,我们能提高的只有数据的发送速率,而传播速率无法提高,这是由其物理介质决定的,因此不能笼统地说"数据发送速率越高,传送的就越快。"

· 时延带宽积:又称为以比特为单位的链路长度,即在一个长度的链路上,最多同时充满多少比特,计算公式为传播时延*带宽。

21034_k1x1_3839.png

· 往返时间(round-trip time, RTT):从发送方发送数据开始,到发送方收到来自接收方的确认,总共经历的时间。

· 利用率:

  1. 信道利用率:某信道有百分之几的时间是被利用的。并非越高越好,当某信道的利用率上升时,该信道引起的时延也就迅速增加

  2. 网络利用率:全网络的信道利用率的加权平均值。

博客评论
还没有人评论,赶紧抢个沙发~
发表评论
说明:请文明发言,共建和谐网络,您的个人信息不会被公开显示。