目录
目录
教材
第1章计算机网络和因特网
计算机网络和Internet发展史:了解即可
什么是Internet?
计算机网络:两台计算机相互链接
Internet: “由网络构成的网络”
1.1.3 Internet通信控制:通过协议通信
什么是协议?:就是多个计算机之间按什么方式交流
Internet标准:了解即可
Internet标准化组织:了解即可
Internet文档RFC:了解即可
网络边缘部分:了解即可
近距离观察网络结构
端系统、客户和服务器
接入网络
物理介质
1. 面向连接的服务:TCP可靠的有准备的数据传输
2. 无连接服务:UDP不会堵塞,可以接受一定数据损失的数据传输
网络核心部分
1. 电路交换
1. 电交换(续: FDMA and TDMA):频分FDMA是处理一份为多,时分TDMA是一小段时间跑满
2. 网络核心部分: 分组交换
2. 网络核心部分: 分组交换-统计复用:多个电脑分时传输小段数据
资源竞争:
比较分组交换与电路交换:分组交换允许更多的用户使用网络
分组交换是最后的赢家吗?:有优有劣
分组交换网络的分类:汽车和动车的区别
数据报网络: TCP/IP
虚电路网络: X.25,FR,ATM
总结:网络的分类
Internet主干/ISP的结构组成
1. Internet结构组成: 网络的网络:第一层ISP是国家级,用IXP链接
2.第二层ISP(区域级ISP):用专用点对点或IXP链接
3. Tier-3 ISP(本地ISP或接入ISP):了解即可
4. Internet结构组成与分组传送
分组交换网络中的延迟和丢失
分组丢失和延迟是如何产生的?:丢失:排队人多了,没位置就丢失;延迟:排队等待时间
分组延迟的4种类型:安检时间,排队上机时间,挤小水管时间,路途时间
车队举例
总的节点延迟
排队时延(详解):公式理解:流量强度=分组长度*平均分组到达率/链路带宽
流量强度与延迟关系
分组丢失:入站和出站等待位置不够就会丢包
吞吐量(Throughput):就是网络传输速率
瓶颈链路:走一段小水管,和大水管,则吞吐量为小水管速率
吞吐量: 因特网中的情景:基本上都是到用户和服务器卡,核心不卡
习题:吞吐量通用公式=min{服务器链路,用户链路,网络链路/用户数}
习题:最大吞吐量:只能使用一条路径时,为所有链路的吞吐量的最大值;全部路径时,所有链路的吞吐量之和
协议层及其服务模型
1.6.1 分层的体系结构
为什么要分层?:化杂为简,易于维护,可能重复
ISO/OSI七层参考模型
TCP/IP参考模型
网际协议栈(protocol stack):通过分层进行不同部分数据的传输
分层: 逻辑通信:不考虑物理分层,只考虑逻辑
分层: 物理通信:考虑每一层
协议分层与数据:发的不断加头,收的不断去头
攻击威胁下的网络:了解即可
1. 植入恶意软件
2. 攻击服务器和网络基础设施
3. 嗅探分组
4 . 伪装
5.修改或删除报文
第一章: 小结
第一章:复习大纲
第2章应用层
第3章运输层
第4章网络层
第5章数据链路层
第6章套接字编程
第7章无线网络和网络安全(课外自学)
目录
第1章计算机网络和因特网
第2章应用层
第3章运输层
第4章网络层
第5章数据链路层
第6章套接字编程
第7章无线网络和网络安全(课外自学)
教材
计算机网络:自顶向下方法(第7版), Kurose等著,陈鸣译
第1章计算机网络和因特网
计算机网络和Internet发展史:了解即可 1. 分组交换原理的早期发展与演化:1961-1972
2. 网际互连与新兴的专属网络:1972-1980
Cerf and Kahn: 开放网络体系结构的系统设计原则:
最简单化,自治原则 – 网络独立运作,与其他网络互连时无须进行内部改动
尽力服务原则– 提供尽最大努力的端到端服务
无状态路由器 – 路由器无须维护连接状态信息
分散式控制
定义了当今Internet体系结构的理论基础——40年后仍适用
计算机网络 TCP/IP 之父Cerf and Kahn
设计了TCP/IP协议和互联网基础架构而被共同称为“互联网之父”
3. TCP/IP新协议与网络数量激增:1980-1990
4. 商业化, Web, 新的网络应用:1990-2000
5. 移动互联网:21世纪10年代中期——至今
中国互联网的诞生与发展
1987年9月20日,中国第一封电子邮件从中国兵器工业计算机应用技术研究所发向德国卡尔斯鲁厄大学——“Across the Great Wall we can reach every corner in the world”(“越过长城,走向世界”),标志着中国互联网诞生
第一次互联网大浪潮(1994年—2000年)——从四大门户到搜索
第二次互联网大浪潮(2001年—2008年)——从搜索到社交化网络: 博客、sns、论坛、微博
第三次互联网大浪潮(2009年—…)——PC互联网到移动互联网:入口从搜索到各种APP分流
什么是Internet?
计算机网络:两台计算机相互链接
两台以上具有独立操作系统的计算机通过某些介质连接成的相互共享软硬件资源的集合体。
计算机网络向用户提供的最重要的两大功能:连通性、共享
Internet: “由网络构成的网络”
互联网:Internet的集合
万维网:互联网的一种应用
松散分层:相当于不同局域网相连
公共Internet与专用Intranet
对于Internet,硬件和软件、提供的服务上,都很复杂,无法给出一个明确的定义
我们只能对其具体构成和提供服务方面进行描述
Internet具体构成构成:
数以亿计的计算互连设备、通信链路、分组交换:路由器和交换机
数以亿计的计算互连设备
- 主机(host)=端系统(end system)
- 运行网络应用程序
- 双绞线,光纤, 无线电频谱, 卫星
- 传输速率 = 带宽(bandwidth)
- 带宽单位为bps,bit per second每秒传输的位数,例如百兆光纤就是100M bps,实际传输使用的单位为BPS,1B=8bit,所以传输速率为100/8=12.5M BPS,就是12.5MB/s
- 通信链路只有极限带宽,例如5号线极限带宽为300M,不能接千兆网卡,只能接百兆网卡
- 网卡有传输的能力,传输速率取决于网卡能传输的能力,例如百兆,千兆网卡
- 路由器(Router)和交换机(Switch)
- 交换机:形成局域网
- 路由器:链接互联网
提供网络应用基础架构:允许终端系统上运行分布式应用程序,并彼此交换数据
- Web, email, games, e-commerce, database, VOIP, P2P file sharing
- 无连接服务connectionless
- 面向连接服务connection-oriented:建立连接,传输数据,关闭链接
- 不提供数据传递时间保证(发送端到接收端)的服务
控制发送和接收消息——协议
e.g., TCP, IP, HTTP超文本传输协议, FTP文件传输协议, SMTP简单邮件传输协议
什么是协议?:就是多个计算机之间按什么方式交流
协议:定义了两个或多个通信实体间所交换报文的格式和次序,以及在报文发送和/或接收或者其他事件方面所采取的行动(响应)。
协议的基本要素:语法、语义和同步
例子:
人类的协议
询问“几点了?”
上课提问“我有个问题”
关键点:
发送出具体的消息
收到消息后具体的行动,或者其他事件
网络协议
是计算机,而非人参与
Internet所有的通信活动都由协议掌控
文章图片
Internet标准:了解即可
IETF:
Internet Engineering Task Force
(因特网工程任务组)
RFC:
Request for comments
(请求评论)
Internet标准化组织:了解即可
Internet文档RFC:了解即可
所有的因特网标准都以RFC(Request For Comments,请求评论)的形式在因特网上发表。
正式标准要经历四个阶段:
因特网草案(Internet Draft)-不是RFC文档
建议标准(Proposed Standard) -开始成为RFC文档
草案标准(Draft Standard)
因特网标准(Internet Standard)
后三个阶段对应三种RFC。另外,还有历史(Historic)的RFC、实验(Experimental)的RFC和提供信息(Informational)的RFC
总结:
硬件网络系统三类:
主机\端系统:软件和硬件
链接设备:IO设备
分组交换设备:路由器和交换机
向用户提供服务:
无连接服务:通信之前不需要进行链接,有数据就向外发
面向链接服务:建立链接,传输数据,关闭链接
为实现以上服务,要协议:
语法:格式
语义:数据含义
同步:发送顺序,时序
制定协议:国际组织用RFT文档规范协议
网络边缘部分:了解即可 近距离观察网络结构
网络边缘:
主机:客户机和服务器
服务器一般位于数据中心内
接入网络,物理介质:
有线通信链路:光纤,双绞线
无线通信链路:wifi,4g,5g
网络核心:
互联的路由器:是不同网络之间链接的设备
网络组成的网络
端系统、客户和服务器
端系统 (/主机):例如手机和电脑
- 运行网络应用程序
- 处在网络的边缘
- 传统主机/网络计算机和瘦客户
- 客户请求,并接收服务器提供的服务
- e.g. Web browser/server; email client/server
- 极少或不采用专门服务器
- e.g. Gnutella, KaZaA
1. 家庭接入网络: 点对点接入
拨号线路上使用modem家庭接入网络: cable modems(线缆调制解调器)
可达56Kbps 直接接入边缘路由器
(实际远小于该值,数字模拟调制解调)
不能同时网上冲浪和拨打电话: 不能一直在线
ISDN(Integrated Services Digital Network):综合业务数字网,数字数据传输,2D+B,128Kbps
ADSL: (asymmetric digital subscriber line,非对称数字用户线路)
可达1 Mbps 上行速率 (典型 < 512 kbps)
可达 8 Mbps 下行速率 (典型 < 4 Mbps)
FDM: 50 kHz - 1 MHz 高速下行通道4 kHz - 50 kHz 高速上行通道0 kHz - 4 kHz 普通双向电话通道
HFC:(hybrid fiber coaxial cable)混合光纤同轴电缆Cable Network 体系结构: 概述
非对称: 可达2Mbps 上行速率, 30Mbps下行速率
光纤/同轴电缆混网连接家庭住宅到ISP路由器
各住宅共享到路由器之间的广播信道
引起问题: 拥塞, 规模
部署: 可以通过广电公司提供该网络接入服务
家庭接入网络: FTTH(Fiber To The Home)-光纤到户
2. 企业接入网络: local area networks (LAN)
3. WiFi无线接入网络
4. 广域无线接入网络
物理介质
物理链路:在发送方和接受方间,传播位bit信号
导引型媒体: 信号在固态介质中有向传播, 如:光纤、双绞线和同轴电缆等
非导引型媒体: 信号在大气空间或外太空空间自由传播, 如:无线电
物理介质-双绞线
物理介质:同轴电缆和光纤线缆
物理介质:同轴电缆和光纤线缆
全球海底光纤示意图
物理介质:无线电磁波
铱星系统示意图
端系统上的因特网服务
1. 面向连接的服务:TCP可靠的有准备的数据传输
目的:在端系统间传送数据
握手: 客户和服务器事先进入戒备状态,为接下来的分组交换做好准备
如同Hello, hello back 这样的人类电话通信
建立“连接” ,在两个彼此通信的端系统之间
TCP - Transmission Control Protocol
Internet的面向连接的服务
TCP 服务 [RFC 793]
可靠、顺序、字节流传输:
丢失: 确认和重传
流量控制:
【计算机网络|第1章 计算机网络和因特网-计算机网络】发送者不至于淹没接收者
拥塞控制:
当网络拥塞时发送者降低发送速率
2. 无连接服务:UDP不会堵塞,可以接受一定数据损失的数据传输
目的:在端系统间传送数据
无连接服务
不可靠数据传输
无流量控制
无拥塞控制
UDP - User Datagram Protocol [RFC 768
使用TCP的网络应用:
HTTP (Web), FTP (file transfer), Telnet (remote login), SMTP (email)
使用UDP的网络应用:
流媒体, 视频会议, DNS, Internet电话
网络核心部分 相互连接的路由器构成的网络
如何在这个网络中传送数据?
基本原理:
电路交换: 每次会话预留沿其路径(线路)所需的独占资源--电话网
分组交换: 数据以离散的数据块通过网络来发送
1. 电路交换
网络资源(如带宽)被分片
多路复用(Multiple Access)
分片分配到会话
分片没有被会话使用的情况下,分片空载(不共享)
电路级性能(有保证)
要求呼叫建立--建立一个专门的端到端线路(意味着每个链路上预留一个线路)
链路带宽分片
频分-frequency division
时分-time division
1. 电交换(续: FDMA and TDMA):频分FDMA是处理一份为多,时分TDMA是一小段时间跑满
文章图片
电路交换举例
从主机A到主机B经一个电路交换网络需要多长时间发送一个640Kb的文件?
假设:
所有链路都是 1.536 Mbps
每个链路使用TDM划分成24个时隙
创建一条端到端的链路需要500msec
(注意:计算时统一单位)
2. 网络核心部分: 分组交换
每个端到端的数据流被划分成分组
所有分组共享网络资源
每个分组使用全部链路带宽
资源按需使用
2. 网络核心部分: 分组交换-统计复用:多个电脑分时传输小段数据
A & B 分组没有固定的顺序统计复用。
在时分复用中,每个主机获得各TDM循环帧的固定时隙。
文章图片
资源竞争:
资源需求总量可以大于可 获得资源的总量
拥塞: 采用分组队列, 等待使用链路
存储转发: 分组每次转发1站
- 在1个链路上传输
- 每经过1个链路转发1次
- 转发分组前,要求收到完整分组
假设:
用户共享1 Mbps 的链路
每个用户:
活动期传输率100 kbps
只有10%的时间活动
对于电路交换——
10 users
对于分组交换——
如果35个用户
10个以上活动用户的概率小于 0 .0004
分组交换是最后的赢家吗?:有优有劣
优点:适合大量的突发数据传输
- 资源共享
- 简单, 不需要建立连接
- 需要可靠数据传输、拥塞控制协议
- 对于音视频的网络应用需要带宽保障
- 仍然是1个没有解决的问题
分组交换网络的分类:汽车和动车的区别
数据报网络: TCP/IP
- 分组目的地址决定下一跳
- 会话期间路由可以改变
- 比方: 驱车逐段问路
- 每个分组有1个标签(虚电路号,virtual circuit ID), 标签决定下1跳
- 连接建立时确定固定的路径, 并且将保持于整个会话期间
- 路由器必须为每个连接维护状态信息
文章图片
虚电路网络一定是面向连接的
数据报网络既可以提供面向连接的服务,也可以提供无连接的服务。
如:Internet为网络应用既提供面向连接的传输服务 (TCP),也提供无连接的传输服务(UDP)
Internet主干/ISP的结构组成
文章图片
1. Internet结构组成: 网络的网络:第一层ISP是国家级,用IXP链接
松散分层,由众多网络构成的网络
构成Internet的核心主干: “第一层” ISPs =National Backbone Provider (NBPs)国家/国际级ISP,
覆盖国际区域的ISP彼此对等,直接互连或通过因特网交换点(Internet Exchange Point,IXP)互连
文章图片
2.第二层ISP(区域级ISP):用专用点对点或IXP链接
“第二层” ISPs: 较小的(通常是区域级的) ISPs
——连接到1个或多个 tier-1 ISPs, 也可能连接其他 tier-2 ISPs
文章图片
3. Tier-3 ISP(本地ISP或接入ISP):了解即可
“Tier-3”ISPs and local ISPs ——最后的接入网络 (最接近端系统)
文章图片
4. Internet结构组成与分组传送
一个分组可能要穿越很多网络
文章图片
分组交换网络中的延迟和丢失 分组丢失和延迟是如何产生的?:丢失:排队人多了,没位置就丢失;延迟:排队等待时间
路由器分组缓冲区队列
- 分组到达输出链路的速率超过输出链路的容量,产生延迟,甚至丢失
- 分组在缓冲区队列排队, 按序等待
文章图片
分组延迟的4种类型:安检时间,排队上机时间,挤小水管时间,路途时间
1. 节点处理时延nodal processing delay:
- 检查错误位
- 选择输出链路
- 高速路由器处理延迟-微秒级
- 等待被发送到输出链路上的时间
- 取决于路由器的拥塞程度
- R=链路带宽 (bps)
- L=分组长度 (bits)
- 发送分组比特流的时间 = L/R
- d = 物理链路的长度
- s = 介质的信号传播速度 (~2x108 m/sec)
- 传播延迟 = d/s
文章图片
车队举例
文章图片
小车速度100 km/hr
收费站 12 sec 服务1辆小车 (transmission time)
小车~bit; 车队 ~ packet
Q: 整个车队到达第2个收费站的时间?
整个车队通过收费站进入高速公路的时间= 12*10 = 120 sec
最后1辆小车从第1个收费站到第2个收费站的时间: 100km/(100km/hr)= 1 hr
A: 62 minutes
小车速度1000 km/hr
收费站 1 min 服务1辆小车
Q: 在所有小车收费全部收费完成以前,有小车到达第2个收费站吗 ?
Yes! 7 min后, 第1辆小车到达第2个收费站,还有3辆小车在第1个收费站
分组在被第1个路由器发送完以前,分组的第1个位 可以传播到第2个路由器!
总的节点延迟
文章图片
dproc =节点处理时延-nodal processing delay
典型几个微秒或更小
dqueue = 排队时延-queuing delay
取决于路由器的拥塞程度
dtrans = 传输时延-transmission delay
= L/R, 低带宽链路比较显著
dprop = 传播时延-propagation delay
几个微妙到数百毫秒(卫星通信高传播延迟)
排队时延(详解):公式理解:流量强度=分组长度*平均分组到达率/链路带宽
R=链路带宽 (bps)
L=分组长度 (bits)
a=平均分组到达率average packet arrival rate
流量强度:traffic intensity = La/R
流量强度与延迟关系
La/R ~ 0: 分组稀疏到达,无队列,平均排队延迟极小接近于0
La/R -> 1: 分组猝发到达,形成队列,队列长度迅速增加,排队延迟大幅增大
La/R > 1: 输出队列平均位到达速率超过送走这些位的极限速率,输出队列持续增长,排队延迟趋于无穷大
文章图片
分组丢失:入站和出站等待位置不够就会丢包
- 路由器输入链路和输出链路的缓冲区容量有限
- 当分组到达路由器输入链路发现缓冲区已满,则路由器只好丢弃分组
- 当分组在路由器内部要转发到输出链路时发现输出缓冲区队列已满,路由器只好丢弃分组
- 丢失的分组可能被前路由节点、源节点重传,或不重传
- 丢包率或分组丢失率(packet loss rate/ratio)
网络吞吐量——
单位时间内整个网络传输数据的速率或分组数
单位:bps或data packets per second
吞吐量: 接收端接收到数据的比特速率 (bps )
瞬时吞吐量: 某一瞬间的吞吐量
平均吞吐量: 一段时间内的吞吐量均值
文章图片
瓶颈链路:走一段小水管,和大水管,则吞吐量为小水管速率
(Bottleneck Link)
link on end-end path that constrainsend-end throughput
在端到端路径中制约吞吐量的链路
文章图片
吞吐量: 因特网中的情景:基本上都是到用户和服务器卡,核心不卡
每1个链路的吞吐量: min(Rc,Rs,R/10)
实际情况:
核心设备很少出现拥塞
Rc or Rs 经常成为瓶颈,其吞吐量为:min(Rc,Rs)
文章图片
习题:吞吐量通用公式=min{服务器链路,用户链路,网络链路/用户数}
文章图片
习题:最大吞吐量:只能使用一条路径时,为所有链路的吞吐量的最大值;全部路径时,所有链路的吞吐量之和
文章图片
协议层及其服务模型 1.6.1 分层的体系结构
Internet极其复杂:
hosts
routers
links of various media
applications
protocols
hardware, software
为什么要分层?:化杂为简,易于维护,可能重复
处理复杂的系统:
- 清楚的结构允许我们对大型复杂系统定义其特定部分,探讨其各部分的关系
- 分层参考模型的讨论
- 改变其某一层服务的具体实现对系统其余部分透明(不影响)
- 各层可能重复较低层功能 ...
层号 |
层的名称 |
层的英文名称 |
层的英文缩写 |
7 |
应用层 |
Application |
A |
6 |
表示层 |
Presentation |
P |
5 |
会话层 |
Session |
S |
4 |
传输层 |
Transport |
T |
3 |
网络层 |
Network |
N |
2 |
数据链路层 |
Data Link |
DL |
1 |
物理层 |
Physical |
PL |
文章图片
网际协议栈(protocol stack):通过分层进行不同部分数据的传输
应用层(application)
- 支持网络应用,报文传送
- FTP, SMTP, STTP …
- 主机进程间数据段传送
- TCP, UDP
- 主机(源目标节点)间分组传送
- 主要是IP协议, 路由协议 …
- 相邻网络节点间的数据帧传送
- 例如:PPP, Ethernet …
- 物理介质上的比特传送
文章图片
分层: 逻辑通信:不考虑物理分层,只考虑逻辑
各层 :
分布式
在各节点的网络实体(entities) 实现了各层的功能——主机实现5层功能,路由器和交换机实现2-3层功能。
网络实体完成功能动作, 对等实体交换消息
实体: 定义自身功能的硬/软件的集合
对等实体: 两台计算机上同一层所属的程序、进程或实体称为该层的对等程序、对等进程或对等实体。
文章图片
例如:传输层
从应用层获取消息
添加地址可靠校验等,创建报文段
发送报文段
等待对方应答
文章图片
分层: 物理通信:考虑每一层
文章图片
协议分层与数据:发的不断加头,收的不断去头
各层发方从上层到下层,收方从下层到上层传递数据
- 发方添加头部信息创建新的数据单元,收方去掉头部
- 传递新的数据单元到下层/上层
- 各层传送不同的协议数据单元PDU
文章图片
文章图片
攻击威胁下的网络:了解即可 网络并非安全,攻击者试图攻击与因特网相连的计算机,侵犯我们隐私,危及我们的数据安全
攻击方式:
植入恶意软件
攻击服务器和网络基础设施
嗅探分组
伪装
修改或删除报文
1. 植入恶意软件
病毒:潜伏,自我复制,破坏
蠕虫:主动在网络中传播的病毒
僵尸网络:通过各种手段在大量计算机中植入特定的恶意程序,使控制者能够通过相对集中的若干计算机直接向大量计算机发送指令的攻击网络。攻击者通常利用这样大规模的僵尸网络实施各种其他攻击活动。
2. 攻击服务器和网络基础设施
拒绝服务攻击(DoS)
三种类型
弱点攻击
带宽洪泛
连接洪泛
文章图片
3. 嗅探分组
分组嗅探器:记录每个流经的分组拷贝的被动接收机
容易受到攻击的网络:无线网络和以太网LAN
Wireshark示意图
文章图片
4 . 伪装
生成具有任意源地址、分组内容和目的地址的分组,然后将这个人工制作的分组传输到因特网中
将具有虚假源地址的分组注入因特网的能力称为IP哄骗
解决方法:采用端点鉴别机制
5.修改或删除报文
中间人攻击(man-in-middle attack)
第一章: 小结 本章覆盖了大量基本知识和素材
计算机网络和Internet发展史
什么是Internet?Protocol?
网络边缘部分、核心部分、接入网络及其物理介质
分组交换与电路交换 (packet-switching versus circuit-switching)
Internet主干/ISP 组成结构
分组交换网络的性能:延迟和丢失
协议层及其服务模型
第一章:复习大纲 计算机网络的定义
协议的定义和基本要素
Internet的构成描述:
具体构成:边缘(端系统,包括软件和硬件)、核心、接入网络和物理介质
网络交换方式:电路和分组
电路:时分和频分
分组:数据报和虚电路
分组交换网络中的延迟及其计算
TCP/IP的分层模型,各层PDU的名称和功能
课外实践:wireshark软件的使用入门
第2章应用层 第3章运输层 第4章网络层 第5章数据链路层 第6章套接字编程 第7章无线网络和网络安全(课外自学)
推荐阅读
- 金融|第1章金融概念及金融决策习题---金融学基础
- 金融|第2章金融市场与金融机构习题---金融学基础
- 算法|开学季——经典计算机教材带你起飞!
- 关于如何实现外网访问本地主机IP地址(natapp)。(如何实现将外网可访问的域名与本地主机IP地址绑定)
- 计算机网络|计算机网络——TCP / IP
- 考研408|计算机网络——基础篇
- 考研408|计算机网络——HTTP
- 网络|一、计算机网络之TCP/IP协议
- 计算机网络|计算机网络——TCP和UDP及TCP的三次握手与四次挥手