【计网】计算机网络导论

195 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第7天,点击查看活动详情

重点概览

1.2 Network edge
App’s using TCP and why? Such as HTTP , FTP , Telnet, SMTP
App’s using UDP and why? streaming media, DNS, Skype

1.4 Performance: delay, loss and throughput in packet-switched networks
Four sources of packet delay
Throughput

1.5 Protocol layers, service models
Layers and functions of ISO/OSI reference model
Data encapsulation process of TCP/IP

1. 什么是网络

互联网Internet:互联网是互连计算机网络的全球系统,它使用互联网协议套件(TCP / IP)在网络和设备之间进行通信

  • end systems = hosts
  • transmission rate = bandwidth 传输速率=带宽

协议是什么?

  • 协议控制消息的发送、接收 例如,TCP,IP,HTTP,Skype,Ethernet
  • 协议定义网络实体之间发送和接收的msgs的格式,顺序,以及对msg传输,接收执行的操作

网络结构具象化:

  • 网络边缘(Network Edge):应用程序和主机
  • Access networks, physical media接入网、物理介质:有线、无线通信链路
  • Network core :interconnected routers、network of networks

Network Edges:

  • 终端系统(主机)End systems (hosts): 运行应用程序、在“网络边缘”
  • 客户端/服务器模型Client/server model: 客户端主机请求,从始终在线的服务器接收服务
  • Peer-peer(P2P) model:最少(或不使用)专用服务器 例如 Skype、BitTorrenth

为什么我们需要网络? 为了给终端系统交换消息

  • 协议:规范消息交换
    • 如消息的格式和顺序,以及按终端系统划分的操作令牌
  • 计算模型
    • 客户端/服务器
    • Peer/Peer
  • 互联网:
    • 网络中的网络,形成松散的分层架构
    • 涵盖“网络边缘”

2. Network Edge

2.1 接入网(access network)

传统家庭接入:

  • Dialup via modem (拨号调制解调器):直接访问路由器,不能同时上网和打电话
  • DSL: digital subscriber line (数字用户线,电缆调制解调器)
    • 部署:电话公司(通常)
    • upstream最高可达 1 Mbps(目前通常< 256 kbps) downstream速度高达 8 Mbps(目前通常< 1 Mbps)
    • 专用物理线路到电话中心局
  • HFC: hybrid fiber-coaxial cable (混合光纤同轴电缆)
    • 非对称:downstream速度高达 30Mbps,upstream速度高达 2 Mbps
  • 电缆和光纤网络将家庭连接到ISP路由器
    • 家庭共享路由器接入
    • 部署:可通过有线电视公司获得

更为常用的接入:以太网、WIFI、广域无线接入(3G、LTE)

典型的家庭网络组件:

  • DSL(Digital Subsriber Line)数字用户线或电缆调制解调器
  • 路由器/防火墙/NAT
  • 以太网
  • 无线接入点 通信链接 光纤、铜缆、无线电、卫星

2.2 物理介质

Twisted Pair (TP) (双绞线) 两根绝缘铜线

Coaxial cable(同轴电缆):

  • 两根同心铜导体
  • 双向的
  • 基带: 电缆上的单通道 传统以太网
  • 宽带: 电缆上的多个通道 HFC

Fiber optic cable(光缆):

  • 玻璃纤维承载光脉冲,每个脉冲一点
  • 高速运行: 高速点对点传输(例如,10-100 的 Gps)
  • 低错误率:中继器间隔很远;不受电磁噪声的影响 单/多模式

Radio link types无线电链路:

  • terrestrial microwave 地面微波
  • LAN (e.g., Wifi)
  • wide-area (e.g., cellular)
    • 4G celluar: ~ 100 Mbps
    • 5G celluar: ~ 1000 Mbps
  • satellite

3. Network Core

3.1 Circuit Switching 电路交换

circuit switching电路交换: dedicated circuit per call: telephone net

  • 为“呼叫”保留的端到端资源
  • 专用资源:无共享
    • 网络资源(例如带宽)被分为pieces分配给调用的片段
    • 如果资源段空闲,由之前未调用的使用(无共享)
  • 类似电路(可以保证)的性能
  • 需要呼叫设置

链路带宽根据频率、根据时间划分为pieces:

  • 频分复用(Frequency-Division Multiplexing),分割成多个频段

  • 时分复用(Time-Division Multiplexing),每帧一个周期,帧划分为时隙(slot),每slot给一条链路用 image.png

  • TDM示例:通过电路交换网络将 640,000 位的文件从主机 A 发送到主机 B 需要多长时间?

    • 所有链接均为 1.536 Mbps
    • 每个链路使用 TDM每秒 24 个slots(24个时隙)
    • 500 毫秒建立端到端电路
  • 答:

    • 每秒使用一个slot,则1.536Mbps/24 = 64Kbps
    • 640, 000bits/64Kbps = 10s
    • 10s+0.5s=10.5s

3.2 Packet Switching 分组交换

packet switching分组交换:以离散“块”chunks的形式通过网络发送的数据

每个端到端数据流划分为数据包:

  • 用户 A、B(他们的数据包)共享网络资源
  • 每个数据包使用全链路带宽
  • 根据需要使用的资源

资源竞争:

  • 存储和转发:数据包一次移动一个跃点 节点在转发之前接收完整的数据包
  • 拥塞:数据包队列,等待链路使用
  • 资源需求总量可能超过可用量

Statistical Multiplexing 统计多路复用:带宽按需共享,没有特殊顺序,而TDM必须按照周期顺序

如下图, 需要 L/R 秒来传输L 位数据包以 R bps 的速度进行链路
存储和转发:整个数据包必须到达路由器,然后才能在下一个链路上传输 延迟 = 3L/R(假设传播延迟为零)

image.png

分组交换和电路交换的对比:

  • 更好的带宽共享,适用于突发数据
  • 更简单,更有效,实现成本更低
  • 但是存在过度拥塞:数据包延迟和丢失 所以需要可靠数据传输、拥塞控制所需的协议 问:如何提供类似电路的行为? 音频/视频应用程序所需的带宽保证 仍然是一个未解决的问题(第7章)

“Best effort” means “No Guarantees”

  • Variable Delay (jitter抖动)
  • Variable rate
  • Packet loss
  • Duplicates
  • Reordering

3.3 网络结构:网络的网络

ISP(Internet Service Provider)因特网服务提供商分为多个等级

4. Delay, loss, Throughput 延时,丢包,吞吐量

丢包和延迟是如何发生的?
链路的数据包到达率超过输出链路容量,数据包在路由器缓冲区中排队,排队的数据包delay,溢出缓存后的数据包loss

4.1 时延

  1. 节点处理时延 nodal processing: (可以忽略)
  • 检查位错误
  • 确定输出链路
  1. 排队时延 queueing (等待前面的分组)
  • 在输出链路等待传输的时间
  • 取决于路由器的拥塞水平
  1. 传输延迟 Transmission delay: (路由器推出一个分组所需要的的时间,与距离无关)
  • R = 链路带宽 (bps)
  • L= 数据包长度(位)
  • 将位发送到链路的时间 = L/R
  1. 传播延迟 Propagation delay:
  • d = 物理链路的长度
  • s = 介质中的传播速度 (~2x108 米/秒)
  • 传播延迟 = d/s

节点总时延:dnodal=dproc(可忽略)+dqueue+dtrans+dpropd_{nodal} = d_{proc}(可忽略) + d_{queue} + d_{trans} + d_{prop}

端到端时延(中间N-1台路由器,并且假设没有排队时延):dendend=Ndproc+dtrans+dpropd_{end-end} = N(d_{proc} + d_{trans} + d_{prop})

image.png

4.2 排队时延

  • R = 链路带宽 (bps)
  • L= 数据包长度(位)
  • a= 平均数据包到达率
  • 则 traffic intensity = La/R(流量强度)

流量强度:

用来估计排队时延

  • La/R ~ 0:平均排队延迟小
  • La/R -> 1:延迟变大
  • La/R > 1:到达的“工作”比可以服务的要多,平均延迟无限!

4.3 吞吐量:

  • 在发送方/接收方之间传输bit的速率(bit/时间单位),即前面的带宽R
  • 端到端,取最小链路的R为吞吐量
  • 传输一个F bit的文件需要时间为 F/R

5. 网络层次模型

layers:每层实现一个服务 通过其自己的内部层操作 依赖于以下层提供的服务

分层的好处: 处理复杂系统

  • 显式结构允许识别复杂系统的各个部分的关系
  • 模块化简化了系统的维护和更新
  • 更改层服务的实现对系统的其余部分透明 例如,门程序的更改不会影响系统的其余部分

5.1 因特网协议栈(protocol stack 包括各层所有协议)

  • 应用:支持网络应用
    • FTP, SMTP, HTTP
    • 信息分组称为message(报文)
  • 传输:进程间数据传输
    • TCP, UDP
    • 分组称为segment(报文段)
  • 网络:将数据报从源路由到目标
    • IP、路由协议
    • 分组称为datagram(数据报)
  • 链接:相邻网元之间的数据传输
    • PPP,以太网
    • 分组称为frame(帧)
  • 物理:位“在电线上”

image.png

5.2 The OSI model:

  • Application layer
  • Presentation layer 表示层
    • 允许应用程序解释数据的含义,例如,加密,压缩,特定于机器的约定
  • Session layer 会话层
    • 同步、检查点、数据交换恢复
  • Transport layer
  • Network layer
  • Link layer
  • Physical layer

6. 小结

  • 什么是协议?
  • 网络边缘、核心、接入网络
  • 分组交换与电路交换
  • 互联网结构
  • 性能:丢失、延迟、吞吐量
  • 分层,服务模型