计算机网络-自顶向下:第一章 计算机网络概述
- 本章节术语中英文对照
- 1.1 什么是Internet?
- 1.2 网络边缘
- 1.3 网络核心(Core)
- 1.4 接入网和物理媒体
- 1.5 Internet结构和ISP
- 1.6 分组延时、丢失和吞吐量
- 1.7 协议层次及服务模型
- 1.8 历史
- 总结
- 最后
根据b站:中科大《计算机网络-自顶向下》
课程连接
总结的笔记,图片很多都是来源于郑老师的课件及原书《Computer Networking》
仅用作个人复习,捋清各章节思路。如若也能帮到一些小伙伴,也会给我带来莫大的欢喜
本章节术语中英文对照
- Internet: network of networks
- Edge 边缘网络
- end system(端系统), host(主机), application(应用)
- access networks 接入网络
- residential network 住宅网
- company/institutional network 公司网
- wireless network 无线网
- physical media 物理介质
- twisted pair 双绞线
- coaxial cable 同轴线缆
- optical fiber 光纤
- radio 无线电
- Core(switched network) 核心网络
- circuit switching 电路交换
- FDM/TDM Frequency/Time-division multiplexing频分多路复用/时分多路复用
- packet switching 报文交换
- statistical multiplexing 统计多路复用
- store and forward 存储转发
- queue 排队
- heirarchy(tiers) 层次结构
- nodal delay
- processing delay 处理延迟
- queuing delay 排队延迟
- transmission delay 传输延迟
- propagation delay 传播延迟
*end-to-end delay 端到端延迟
*throughput 吞吐量*bottleneck link 瓶颈链路
- Peer Entity 对等实体
- Layering 分层
- Protocol, PDU(Protocol Data Unit) 协议
- Service, SAP(Service Access Point) 服务
- 5-layer Internet protocol stack 5层网络协议栈
- application layer, message 应用层,消息
- transport layer, segment 传输层,报文段
- network layer, datagram 网络层,数据报
- link layer, frame 链路层,帧
- physical layer, bit sequence 物理层, 比特序列
TCP/IP:Transmission Control Protocol/Internet Protocol 传输控制协议与网际协议
IEEE, Institute of Electrical and Electronics Engineers 美国电气和电子工程师协会
OSI Open Systems Interconnection model (OSI model) 开放系统互联
1.1 什么是Internet?
什么是Internet:从具体构成角度
节点(node):
- 主机(hosts)及其上运行的应用程序
- 路由器(route)、交换机(switch)等网络交换设备
边:通信链路(communication link)
- 接入网链路:主机连接到互联网的链路
- 主干链路:路由器间的链路
协议
所有接入因特网的设备都叫做主机(host) 或者 端系统(end system)
end system = host
而这些端系统通过 通信链路(communication link) 和 分组交换机(packet switch) 连接在一起。数据在通信链路上的传输速率就是带宽
通信链路:
- 光纤(optical fiber)、同轴电线(coaxial cable)、无线电(radio)、卫星(statelite)
- 传输速率=带宽(bps,或bit/s)
分组交换机:转发分组(packet)
- 路由器(route)和交换机(switch)
- 分组(packet):在主机之间发送数据时,发送方的主机将其数据分成一段一段,然后加上必要信息后封装成的数据包就叫分组
什么是协议?
人类协议:
“几点了?”
"两点”"你中午吃饭了吗?“
"我中午还没吃饭”人类之间通过特定语言 (包括理解此语言所需掌握的语义、语法) ,动作来进行交流,计算机之间通信也需要结合相应的语法、语义、动作来进行交流。
因此,协议定义了在两个或多个通信实体之间交换的报文格式和次序,以及在报文传输和/或接收或其他事件方面所采取的动作。
什么是Internet:从服务角度
- 使用通信设施进行通信的分布式应用:
- Web、VoIP、email、分布式游戏、电子商务、社交网络
- 通信基础设施为apps提供编程接口(通信服务):
- 将发送和接收数据的apps与互联网连接起来
- 为app应用提供服务选择,类似于邮政服务:
- 无连接不可靠服务
- 面向连接的可靠服务
简单来讲,服务角度 将Internet划分为应用和为应用提供服务的基础设施
1.2 网络边缘
1.2.1 网络结构
网络边缘
- 主机(host)或称为端系统(end system)
- 应用程序(客户端和服务器)
网络核心
- 互联着的路由器
- 网络的网络
接入网、物理媒体
- 有线或无线通信链路
1.2.2 网络边缘(Edge)
端系统(主机)
- 运行应用程序
- 如web、email
- 在“网络的边缘”
客户/服务器模式(C/S)
- 客户端向服务器请求、接受服务
- 如:Web浏览器/服务器;email客户端/服务端
对等(Peer-Peer,又称P2P)模式
- 极少(甚至没有)专门的服务器。每一个端系统既是客户端又是服务器。
- 如Gnutella、KaZaA、Emule
1.2.3 网络边缘:连接服务
1.2.3.1 网络边缘:采用网络设施的面向连接服务
目标:在端系统之间传输数据
握手:在数据传输之前做好准备
- 人类协议中:你好、你好
- 两个通信主机之间为连接建立状态
TCP-传输控制协议(Transmission Control Protocol)
- Internet上面向连接的服务
TCP服务
- 可靠地、按顺序地传输数据
- 确认和重传
- 流量控制
- 发送方不会淹没接受方
- 拥塞控制
- 当网络拥塞时,发送方降低发送速率
1.2.3.2 网络边缘:采用基础设施的无连接服务
目标:在端系统之间传输数据
- 无连接服务
UDP-用户数据报协议(User Datagram Protocol)
- 无连接
- 不可靠数据传输
- 无流量控制
- 无拥塞控制
使用TCP的应用
- HTTP(Web)、FTP(文件传送)、Telnet(远程登陆)、SMTP(email)
使用UDP的应用
- 流媒体、远程会议、DNS、Internet电话
1.3 网络核心(Core)
- 电路交换:为每个呼叫而预留一条专有电路:如电路网
- 分组交换:
- 将要传送的数据分成一个个单位:分组(packet)
- 将分组从一个路由器传到相邻路由器(hop),一段段最终从源端到目标端
- 每段:采用链路的最大传输能力(带宽)
1.3.1 电路交换(Circuit Switching)
端到端(end to end) 的资源被分配给从源端到目标端的呼叫“call”:
- 图中,每段链路有四条线路。
- 该呼叫采用了上面链路的第2个线路,右边链路的第一个线路(piece)
- 独享资源:不同享
- 每个呼叫一旦建立起来就能够保证性能
- 如果呼叫没有数据发送,被分配的资源就会被浪费(no sharing)
- 通常被传统电话网络采用
为呼叫预留 end to end 资源
- 链路带宽、交换能力
- 专用资源:不共享
- 保证性能
- 要求建立呼叫连接
网络资源(如带宽)被分成片
- 为呼叫分配片
- 如果某个呼叫没有数据,则其资源片处于 空闲状态
注:处于空闲状态时,仍会占用资源片,会浪费资源
- 将带宽分成片
- 频分多路复用(FDM,全称:Frequency-division multiplexing)
- 时分多路复用 (TDM, 全称:Time-division multiplexing)
- 波分多路复用(WDM,全称: Wave-division multiplexing)
- 码分多路复用 (CDM, 全称:Code-division multiplexing)
时分复用(TDM)与频分复用(FDM)
时分复用 Time-Division Multiplexing TDM):是指将时间划分为固定区间的帧,每个帧则又>被划分为固定数量的时间空隙;当网络需要建立一条连接时,网络将在每个帧中为该连接指定一>个时隙;在该时隙内,链路用来传输该链接的数据;
频分复用(Frequency-Division Multiplexing):将频率域划分为频段,然后将频段分配给连接;此频段被用来专门传输链接的数据。该频段的宽度成为带宽。
电路交换不适合计算机之间的通信
- 连接建立时间长
- 计算机之间的通信有突发性,如果使用线路交换,则浪费的片较多
- 即使这个呼叫没有数据传输,其所占据的片也不能够被其他的呼叫使用
- 可靠性不高?
- 在传送信息期间,网络不对用户信息进行误码校正等处理,没有任何差错控制措施,不利于可靠性要求高的数据业务
1.3.2 分组交换(Packet Switching)
以分组为单位 存储-转发(store and forward) 方式
- 网路带宽资源不再分为一个个片,传输时使用全部带宽
- 主机之间传输的数据被分为一个个分组
资源共享,按需使用:
- 存储-转发:分组每次移动一跳(hop)
- 在转发之前,节点必须要收到整个分组
- 延迟比线路交换要大
- 排队时间
分组交换(Packet Switch):排队延时(queueing delay)和丢失(loss)
排队和延时
- 如果到达速率>链路的输出速率:
- 分组将会 排队,等待传输
- 如果路由器的缓存用完了,分组将会被 抛弃
网络核心的关键功能
路由
- 决定分组采用的源到目标的路径
- 利用路由算法
转发
- 将分组从路由器的输入链路转移到输出链路
分组交换(Packet Switch):统计多路复用
分组交换 VS 电路交换
假设我们现在有1Mb/s的链路,且每个用户活动时占用100kb/s,每个用户全天有10% 的时间是活动的。
电路交换
- 最多只能支持1000/100=10个用户(用1Mb/s除以100kb/s)
分组交换
- 假设现在有一共有35个用户,使用分组交换时有大于等于10个用户活动的概率为0.0004
Circuit Switching | Packet Switch | |
---|---|---|
Connection | - Connect before send(Synchronized)- One path | - No Connection(Asynchronized)- Maybe many paths |
Critical resource | Capacity of switch | Link bandwidth |
multiplexing | TDM,FDM | Statistical |
resourse conversation | - Dedicated(pre-allocated) - No sharing | - On demand - Sharing |
Contention | deny connection(no queue) | queue |
data format | - stream - No address | - Datagram -Address in each data gram(stroe and forward) |
分组交换 VS 电路交换(续)
从上述的例子看来,好像分组交换更胜一筹,但事实果真如此吗?
- 分组交换更适合于突发式数据传输
- 资源共享
- 简单、不必建立呼叫
- 过多使用会造成网络拥塞:分组延时和丢失
- 对可靠地数据传输需要协议来约束:拥塞控制
- Q:怎样提供类似电路交换的服务?
- 保证音频/视频应用需要的带宽
- 一个仍未解决的问题(chapter 7)
分组交换网络:存储-转发(Store-Forward)
- 分组交换:分组的存储转发一段一段从源端传到目标端,按照有无网络层的连接,分成:
- 数据报(datagram)网络
- 分组的目标地址决定下一跳
- 在不同的阶段,路由可以改变
- 类似:问路
- Internet
- 虚电路(virtual circuit)网络
- 每个分组都带标签(虚电路标识VCID),标签决定下一跳
- 在呼叫建立时决定路径,在整个呼叫中路径保持不变
- 路由器维持每个呼叫的状态信息
- X.25和ATM
1.4 接入网和物理媒体
接入网络和物理媒体
Q:怎样将端系统和边缘路由连接?
- 住宅接入网络
- 单位接入网络(学校、公司)
- 无线接入网络
注意:- 接入网络的带宽是多少,怎么分配?
- 是共享还是专用?
1.4.1 接入网(Access network)
1. 家庭接入(住宅接入):modem
- 将上网数据调制加载音频信号上,在带你花线上传输,在局端将其中的数据解调出来;反之亦然
- 调频
- 解调
- 调相位
- 综合调制
- 拨号调制解调器
- 56Kbps的速率直接接入路由器(通常更低)
- 不能同时上网和打电话:不能总是在线
家庭接入通常采用DSL(digital subscriber line)、电缆(cable network)、FTTH和5G固定式无线等方式
接入网:digital subscriber line(DSL)
- 采用现存的到交换局DSLAM的电话线
- DSL线路上的数据被传输到互联网
- DSL线路上的语音呗传输到电话网
- 小于2.5Mbps:上行传输速率(typically<1Mbps)
- 大于 24Mbps:下行传输速率(typically<10Mbps)
接入网:电缆网络(cable network)
有线电视信号线缆双向改造
FDM:在不同频段传输不同信道的数据,数字电视和上网数据(上下行)
电缆调制解调器将HFC网络划分为下行和上行两个信道。如同DSL。接入通常是不对称的,下行信道分配的传输速率通常比上行信道的高。
除了以上两种方式之外,还有:
FTTH(Fiber To The Home,FTTH):提供一条从本地中心局直接到家庭的光纤路径
5G固定式无线:使用波束成形技术,数据以无线方式从供应商的基站发送到家中的调制解调器
接入网: 家庭网络
2.企业接入网络(Ethernet)
- 经常被企业或大学等机构采用
- 10Mbps、1000Mbps、1Gbps、10Gbps传输率
- 现在,端系统经常直接接到以太网络交换机上
3.无线接入网络(wireless network)
- 各无线端系统共享无线接入网络(端系统到无线路由器)
- 通过基站 或者 接入点
1.4.2 物理媒介(physical media)
物理媒介分成两种类型:
- 导引型媒介
- 信号沿着固体媒介呗导引:同轴电缆、光纤、双绞线
- 非导引型媒介
- 开放的空间传输电磁波或者光信号,在电磁或者光信号中承载数字数据
物理媒介:双绞线、同轴电缆、光纤
双绞线(twisted pair):
- 两根绝缘铜导线拧合而成
- 5类:100Mbps以太网,1Gbps千兆位以太网
- 6类:10Gbps万兆位以太网
同轴电缆(coaxial cable):
- 两根同轴的铜导线
- 双向
- 基带电缆
- 电缆上一个单个信道
- Ethernet
- 宽带电缆
- 电缆上有多个信道
- 同样采用HFC(Hybrid Fiber Coax)
光纤和光缆(fiber optic cable):
- 光脉冲。每个脉冲表示一个bit,在玻璃纤维中传输
- 高速:
- 点到点的高速传播(如10Gbps-100Gbps)
- 低误码率:在两个中继器之间可以有很长的距离,不受电磁噪声的干扰
- 安全
物理媒介:无线链路(radio):
- 开放空间传输电磁波,携带需要传输的数据
- 无需物理的”线缆“
- 双向
- 传播环境效应
- 反射
- 吸收
- 干扰
无线链路类型:
- 地面微波(terrestrial microwave)
- up to 45Mbps channels
- LAN(e,g.,WiFi)
- 54 Mbps
- wide-area(e.g.,蜂窝,即cellular)
- 4G :10Mbps
- 卫星(statelite)
- 每个信道Kbps到45Mbps(或者多个聚集信道)
- 270msec 端到端延迟
- 同步静止卫星和低轨卫星
1.5 Internet结构和ISP
端系统通过接入ISPs(Internet Service Providers)连能接到互联网。如果将每两个IPSs直接相连,代价太大,需要O(N^2)连接。于是,我们可以进行分层,局部接入再到全局接入
注意:自顶向下这本书在ISP这里是从其发展角度进行讨论,在本文章中为了节约复习时间,只记录了个人对其理解
1.6 分组延时、丢失和吞吐量
四种分组延时
1.节点处理延时:
- 检查bit级错误
- 检查分组首部和决定将分组导向何处
2.排队延时:
- 在输出链路上等待传输的时间
- 依赖于路由器的拥塞程度
3.传输延时
- R=链路带宽(bps)
- L=分组长度(bits)
- 将分组发送到链路上的时间=L/R
4.传输延时
- d=物理链路的长度
- s=在媒体上的传播速度
- 传播延时=d/s
车队类比
分组丢失
- 链路的对联缓冲区容量有限
- 当分组到达一个满的队列,由于没有地方存储该分组,该分组将会丢失
- 丢失的分组可能会被前一个节点或源端系统重传,或者根本不重传
排队延时和丢包
- 排队时延和丢包与网络的状况和结点的缓冲空间大小、处理速度相关;
- 如果分组到达的速度高于结点的处理速度,那么分组就会在缓冲队列里排队等待。
- 当缓冲空间用完后,如果还有到的分组,那么该分组将被迫丢弃
- 流量强度 I=分组到达的速度/结点的处理速度;
- 流量强度不能大于1,如若出现此状况,就会出现丢包现象。
吞吐量
吞吐量:在源端和目标端之间传输的速率(数据量/时间单位)
- 瞬间吞吐量:在一个时间点的吞吐量
- 平均吞吐量:在一段时间的吞吐量
>
1.7 协议层次及服务模型
服务和服务访问点
服务的类型
服务和协议
数据单元
示意图
- 对等层之间是协议
- 下层向上层提供的是服务
Internet协议栈:将各层的所有协议组合起来,称为协议栈。因特网的协议栈有5个层次组成:物理层、链路层、网络成、传输层、应用层
应用层 |
---|
传输层 |
网络层 |
链路层 |
物理层 |
- 应用层:网络应用
- 为人类用户或者其他应用进程提供网络应用服务
- FTP、SMTP、HTTP、DNS
- 传输层:主机之间的数据传输
- 在网络层提供的端到端的通信基础上,细分为进程到进程,将不可靠的通信变成可靠的通信
- TCP、UDP
- 网络层:为数据报从源到目的选择路由
- 主机与主机之间的通信,端到端的通信,不可靠
- IP,路由协议
- 链路层:相邻网络节点间的数据传输
- 2个相邻节点的通信,点到点通信,可靠或不可靠
- 点对对协议PPP,802.11(wifi),Etherne
- 物理层:在线路上运输bit
ISO/OSI参考模型
应用层 表示层 会话层 传输层 网络层 链路层 物理层
- 表示层:允许应用解释传输的数据
- e.g. 加密,压缩,机器相关表示转换
- 会话层:数据交换的同步,检查点,恢复
注意:互联网协议栈没有这两层
-究其原因是因为这两层的功能在现有的基础之上就可以在一些层级得到实现,不需要再有单独的层次来实现这两层的功能
各层次的协议数据单元
- 应用层:报文(message)
- 传输层:报文段(segment)
- TCP段
- UDP数据报
- 网络层:分组(packet)
==如果无连接方式,则是数据报datagram
- 链路层:帧(frame)
- 物理层:位(bit)
小结:
Layer Name Name Protocol Device Application Message HTTP,FTP,SMTP,DNS Host,Gateway Transport Segment TCP,UDP,SSL Network Datagram IP,ICMP,ARP,IPSec Router,NAT Datalink Frame Ethernet,PPP,HDLC Bridge,Switch Physical Bit sequency Repeater/Hub
1.8 历史
略
总结
最后
此博文仅为个人复习用。
如文章中有错误或对某知识点有疑问,希望可以私信我,我们一起讨论,谢谢!