持续创作,加速成长!这是我参与「掘金日新计划 · 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给一条链路用
-
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(假设传播延迟为零)
分组交换和电路交换的对比:
- 更好的带宽共享,适用于突发数据
- 更简单,更有效,实现成本更低
- 但是存在过度拥塞:数据包延迟和丢失 所以需要可靠数据传输、拥塞控制所需的协议 问:如何提供类似电路的行为? 音频/视频应用程序所需的带宽保证 仍然是一个未解决的问题(第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 时延
- 节点处理时延 nodal processing: (可以忽略)
- 检查位错误
- 确定输出链路
- 排队时延 queueing (等待前面的分组)
- 在输出链路等待传输的时间
- 取决于路由器的拥塞水平
- 传输延迟 Transmission delay: (路由器推出一个分组所需要的的时间,与距离无关)
- R = 链路带宽 (bps)
- L= 数据包长度(位)
- 将位发送到链路的时间 = L/R
- 传播延迟 Propagation delay:
- d = 物理链路的长度
- s = 介质中的传播速度 (~2x108 米/秒)
- 传播延迟 = d/s
节点总时延:
端到端时延(中间N-1台路由器,并且假设没有排队时延):
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(帧)
- 物理:位“在电线上”
5.2 The OSI model:
- Application layer
- Presentation layer 表示层
- 允许应用程序解释数据的含义,例如,加密,压缩,特定于机器的约定
- Session layer 会话层
- 同步、检查点、数据交换恢复
- Transport layer
- Network layer
- Link layer
- Physical layer
6. 小结
- 什么是协议?
- 网络边缘、核心、接入网络
- 分组交换与电路交换
- 互联网结构
- 性能:丢失、延迟、吞吐量
- 分层,服务模型