前言
寒假里没事做,于是来学学《计算机网络》,用的是自顶向下那本,中译本的,关键概念力求中英表达都了解。之前看的是Tanenbaum的,结果看着相当迷糊,勉强看完第一章之后第二章物理层直接来傅里叶?据豆瓣网友评,此书不适合初学者,诚不我欺,遂换坑。果然,这本书读完第一章便茅塞顿开,把读完T那本第一章就产生的很多疑惑解决了。
看能不能寒假里(到1月3号)学完,心血来潮,干脆把笔记写到简书,以此监督,诸君共勉。
第一章 计算机网络和因特网
1 因特网
协议(protocol)
定义了在多个通信实体之间交换的报文(message)的格式次序等。
2 网络边缘
搭建互联网络所依赖的物理媒介,分为两类。
导引媒介(guided media):铜线、光缆等
非导引媒介(unguided media):空气、外层空间(宇宙)
3 网络核心
3.1 电路交换&分组交换
通过网络链路(link)和交换机(switch)交换数据的两种基本方法:
电路交换(circuit switching)
必须构建一定的路径来在两个端系统之间进行数据交换。
其中存在频分多路复用和时分多路复用。前者把不同频率分给不同链接共享使用,后者把一个周期中某一份分给一个对象使用。比如通信周期是1s,分给5个对象使用,那么每1s中其中一个对象只能用0.2s。
分组交换(packet switching)
把信息封装成一个一个的包,称为分组(packet)。今天的互联网基本上都是这种,因其对线路的利用率比电路交换高。
在数据交换的源和目标之间可以有多个中转,即这个包可以到处派,直到目的地。例子,顺丰把你的包裹寄来寄去,最终寄到你那里。
4 分组交换中的时延、丢包、吞吐量
4.1 时延概述
节点处理时延(nodal processing delay)、排队时延(queuing delay)、传输时延(transmission delay)、传播时延(propagation delay),此四者之和即为节点总时延(total nodal delay)。
Dnode=sigma(Dproc+Dq+Dprop)
4.2 处理时延
4.3 排队时延
4.4 传输时延
传输和传播时延,我们用高速公路和收费站模型理解。
传输时延即是在每个收费站(节点)之前排队所需时间
4.5 传播时延
传播时延即是通过每个收费站之后开到下一个收费站所需时间,说白了就是数据在物理媒介中跑所用的时间。
4.6 排队时延和丢包
4.7 端到端(end-to-end)时延
Dend-end=N [ Dnode ],因为中间有N个链路
4.8 吞吐量
由瓶颈链路(bottleneck link)所决定。两端之间传输时间为F/min(R1,R2,R3...)。F为数据量,R为各链路的传输速度。
5 协议层次和它们的服务模型
5.1 两种主流模型
五层因特网协议栈
七层OSI参考模型
本书采用五层的。自顶向下分别为:
应用层。这一层的包称为报文(message)
运输层。包(同上),称为报文段(segment)
网络层。称为数据报(datagram)
链路层。称为帧(frame)
物理层。
散点概念
数字用户线(DSL,digital subscriber line)。ADSL,A stands for asymmetric, 非对称
端系统(end system)。又称主机(host)
报文(message)
TCP。在运输层
协议栈,protocol stack。就是五层模型的总称
SMTP,simple mail transmission protocol。
IP,Internet Protocol。是网络层的主要协议