【计算机网络 - 自顶向下方法】计算机网络和因特网

目录

1. What is the Internet?

1.1 因特网的具体构成

1.2 因特网的功能

2. Network core

2.1 基本介绍

2.2 分组交换

2.2.1 序列化时延

2.2.2 排队延迟和丢包

2.2.3 分组交换的优缺点

2.3 电路交换

2.3.1 基本概念

2.3.2 电路交换网络中的复用

2.3.3 电路交换文件传输时间

2.3.4 分组交换与电路交换的对比

2.3.5 一些问题

2.4 网络的网络

3. Delay, loss and throughput in packet-switched networks

3.1 时延的类型

3.2 排队延迟与流量强度

3.3 排队与丢包

3.4 端到端吞吐量

4. Protocol layers, service models

4.1 分层

4.2 封装

5. Networks under attack: security

5.1 拒绝服务(DOS)攻击

5.2 嗅探

5.3 伪装 


1. What is the Internet?

1.1 因特网的具体构成

终端:
    也称主机(host)或端系统(end system),运行应用程序。


通信链路:
    光纤,铜线,电磁波。主要指标为传输速率也称带宽(bandwidth),可分为有线链路和无线链路。


交换设备:
    转发分组,有路由器和交换机。


Internet Service Provider(ISP):
    ISP 是由交换设备和通信链路组成的网络,为终端提供因特网接入服务。
    不同层次的ISP:本地ISP,地区ISP,全球IS。每个ISP都是自治的


协议:
    协议规定了设备之间通信需要遵循的规则:
            终端与终端之间
            终端和交换设备之间
            交换设备和交换设备之间
    因特网协议标准:
            因特网协议标准由IETF组织统一管理,其中最核心的两个协议为 TCP 和 IP,因特网协议统称为TCP / IP协议族。

因特网定义一:由一群遵循TCP/IP协议的 ISP,按照松散的层次结构组织而成的网络的网络。
因特网的几个特点:
        因特网是 ''网络的网络''。
        因特网不存在严格的层次结构
        因特网没有统一的管理机构

1.2 因特网的功能

因特网定义二:因特网是为分布式应用提供通信服务的基础设施。

传统通信系统的服务接口:

        电话系统:拨号,振铃

        邮政系统:邮筒,信箱

因特网提供给应用程序的服务接口:一组用于在因特网上发送和接受数据的应用编程接口的API。

2. Network core

2.1 基本介绍

                                                【计算机网络 - 自顶向下方法】计算机网络和因特网_第1张图片

网络核心:由路由器和链路形成的网状网络。

任务:将数据包从发送侧的边缘路由器,传送到接收侧的边缘路由器。

基本问题:数据包如何在网络核心中高效地传递?

        分组传输延迟小。

        网络吞吐量高。

通信网络中移动数据的两种基本方法:
        
        电路交换(独占信道):电话网使用。
        
        分组交换(复用信道):计算机网络使用。
网络核心的两个重要功能:
【计算机网络 - 自顶向下方法】计算机网络和因特网_第2张图片

2.2 分组交换

分组交换过程要点:

        1. 主机将要传输的数据分段,并组装成一系列分组。

        2. 交换:在传输路径上,交换设备从一条链路上接收 分组,将其发送到另一条链路上。

        3. 存储转发:交换设备在接收到完整的分组后,才可以开始转发。

2.2.1 序列化时延

【计算机网络 - 自顶向下方法】计算机网络和因特网_第3张图片

如上图所示,分组长度为L,传输速度为R(忽略传播时延),我们来计算源发送三个分组到目的地所需的时间:

        在 L / R 时刻,路由器开始向目的地转发第一个分组,而在此时源也开始发送第二个分组到路由器,因为他已经完成了第一个分组的完整发送。因此在 2L / R 时刻目的地已经接收到了第一个分组并且路由器接收到第二个分组,以此类推,当在时刻 4L / R 时目的地收到所有的3个分组!

故有 P 个分组经过 N 条链路序列的时延为:

                                                        \frac{(P-1 + N)*L}{R}       

可解释为:第一个分组到达目的地需要 N * L / R的时间,此后还剩 P - 1 个分组,每个分组到达目的地的时间都为 L / R,取两者之和可以得到以上公式。

2.2.2 排队延迟和丢包

【计算机网络 - 自顶向下方法】计算机网络和因特网_第4张图片

排队延迟:分组在输出链路的缓存中排队,引入延迟。
丢包:若输出链路的缓存满,溢出的分组被丢弃。
当大量分组集中到达时,排队延迟和丢包较严重。
2.2.3 分组交换的优缺点

        优点:资源利用率高,简单(不需要建立连接)。

        缺点:可能产生延迟、丢包,需要设计相应的协议解决。

2.3 电路交换

2.3.1 基本概念

电话网采用的就是电路交换:通话前完成两部电话机之间的电路接续,通话结束后释放整条电路。

本质:预留资源和独占资源。

链路和电路的区分:

        链路:物理媒体,也称信 道(channel) ,可以通过某种方式划分为若干条独立的子信道。

        电路:物理媒体中的一条子信道。

2.3.2 电路交换网络中的复用

频分复用:在连接期间链路为每一条链接专用一个频段。

时分复用:网络在每个帧中为该链接指定一个时隙,这些时隙专门由该链接单独使用。

【计算机网络 - 自顶向下方法】计算机网络和因特网_第5张图片

2.3.3 电路交换文件传输时间

从主机 A 到主机 B 经过一个电路交换网络发送一个 640000 比特的文件需要多长时间:

        假如该网络中所有链路使用具有24时隙的TDM,比特速率为1.536Mbps,端对端电路创建时间为 500ms。则有:

        每条链路具有的传输速率是:1.536Mbps / 24 = 64 kbps

        传输该文件需要:(640kb)/(64kpbs)= 10s.

        再加上创建时间所以总共需要:10.5 s.

2.3.4 分组交换与电路交换的对比

1. 为什么采用分组交换?

  • 同样的链路容量,分组交换允许支持更多的用户
         【计算机网络 - 自顶向下方法】计算机网络和因特网_第6张图片
        
        假设有35个用户,则有11个或更多并发活跃用户的概率为:
                        ​​​    ​​​                        \sum_{11}^{35}\binom{35}{n}p^{n}(1-p)^{35-n}      
  • 轻负载时,分组交换可以更快地服务用户
    【计算机网络 - 自顶向下方法】计算机网络和因特网_第7张图片
2.3.5 一些问题
        1. 有些应用需要类似电路交换的传输特性,如何提供?
                音视频应用需要带宽保证,该问题尚未解决。
        2. 为什么因特网采用分组交换?
                分组交换适合突发流量。
                传统因特网应用(如电子邮件、文件传输)具有突发通信的特点。

2.4 网络的网络

如何将全球的ISP连接在一起?

Question: given millions of access ISPs, how to connect them together?
                         【计算机网络 - 自顶向下方法】计算机网络和因特网_第8张图片
朴素方法:
                 【计算机网络 - 自顶向下方法】计算机网络和因特网_第9张图片
连接到一个全球ISP:
                         【计算机网络 - 自顶向下方法】计算机网络和因特网_第10张图片
建立多个全球ISP:
【计算机网络 - 自顶向下方法】计算机网络和因特网_第11张图片 【计算机网络 - 自顶向下方法】计算机网络和因特网_第12张图片

        IXP:互联网交换中心

多层架构:

                【计算机网络 - 自顶向下方法】计算机网络和因特网_第13张图片

今天的网络:

【计算机网络 - 自顶向下方法】计算机网络和因特网_第14张图片

3. Delay, loss and throughput in packet-switched networks

衡量网络性能的主要指标:

        延迟:分组从源终端到达目的终端的时间。

        丢包率:未成功交付到目的终端的分组比例。

        吞吐量:单位时间内网络成功交付的数据量。

3.1 时延的类型

【计算机网络 - 自顶向下方法】计算机网络和因特网_第15张图片

1. 节点处理

        检查错误

        确定输出链路

2. 排队

        在输出缓存等待传输

        时间长短取决于链路负载大小

3. 传输延迟

        R=link bandwidth (bps)

        L=packet length (bits)

        将分组发送到链路上的时间 = L/R(分组序列化时间)

4. 传播延迟

        d = length of physical link
        s = propagation speed in medium (~2x108 m/sec)
        propagation delay = d/s
端到端延迟:
【计算机网络 - 自顶向下方法】计算机网络和因特网_第16张图片

3.2 排队延迟与流量强度

【计算机网络 - 自顶向下方法】计算机网络和因特网_第17张图片

3.3 排队与丢包

丢包的原因:输出队列的容量是有限的,当队列满时,新来的分组被丢弃。

【计算机网络 - 自顶向下方法】计算机网络和因特网_第18张图片

队列太短:丢包率增大。

队列太长:排队延迟增大(也会造成间接丢包)

3.4 端到端吞吐量

单位时间内向接收端成功交付的数据量:
        瞬时吞吐量 : 给定时刻的传输速率
        
        平均吞吐量 : 较长时间内的传输速率
【计算机网络 - 自顶向下方法】计算机网络和因特网_第19张图片

瓶颈链路的带宽限制了端到端吞吐量 。

【计算机网络 - 自顶向下方法】计算机网络和因特网_第20张图片

4. Protocol layers, service models

4.1 分层

系统分层:将系统按功能划分一系列水平的层次,每一层实现一个功能。

层次间的关系:每一层的功能实现都要依赖其下各层提供的服务。

分层的好处:

        显式的层次结构易于确定系统的各个部分及其相互关系。

        模块化简化了系统的维护和升级,改变某层服务的实现方式,对于其他层次是透明的。

Internet 协议栈:

1. 应用层(application):在应用程序之间传输应用特定的报文。FTP、SMTP、HTTP

2. 传输层(transport):在应用程序的网络接口之间传输报文段。TCP、UDP

3. 网络层(network):在源主机和目的主机之间传输分组。IP、routing protocols

4. 链路层(link):在相邻设备之间传输帧。PPP、Ethernet

5. 物理层(physical):在物理媒体上传输比特(bit)。

4.2 封装

【计算机网络 - 自顶向下方法】计算机网络和因特网_第21张图片

5. Networks under attack: security

因特网面临的安全威胁:

         针对因特网基础设施的攻击:
                恶意软件(如病毒、蠕虫)入侵计算机设备。
                对主机、网络等实施拒绝服务攻击(Denial of Service),使其中止服务。
        针对因特网中信息的攻击:
                窃听网络中传输的数据。
                在网络中注入虚假的信息欺骗用户。

5.1 拒绝服务(DOS)攻击

        攻击者通过耗尽主机或网络带宽资源,使得合法用户得不到所需的服务。
                                         【计算机网络 - 自顶向下方法】计算机网络和因特网_第22张图片
        1.选择目标。
        2.利用恶意软件攻陷网络中的主机(称肉鸡、僵尸机器)。
        3.从僵尸主机向目标发送大量数据包。

5.2 嗅探

        
        
        监听网络中传输的数据包,获取数据包中携带的信息,如密码。
        
                 【计算机网络 - 自顶向下方法】计算机网络和因特网_第23张图片

5.3 伪装 

IP欺骗: 发送虚假地址的数据包。
        ​​​​​​​         【计算机网络 - 自顶向下方法】计算机网络和因特网_第24张图片
重放攻击: 嗅探敏感信息(比如,某用户的口令),之后重新注入网络(以假冒该用户)。
        ​​​​​​​         【计算机网络 - 自顶向下方法】计算机网络和因特网_第25张图片​​​​​​​

你可能感兴趣的:(计算机网络,网络,网络协议,http,计算机网络)