第一章 计算机网络概述
1.1 三大类网络:电信、有线电视、计算机网络
1.2 互联网两重要特点:连通性、共享
1.3 计算机网络组成:若干结点+链路
1.4 概念:网络把许多计算机连接在一起,互联网通过路由器把网络连接在一起,与网络相连的计算机叫主机
1.5 多层次ISP结构网络:主干ISP、地区ISP、本地ISP
1.6 万维网(WWW):World Wide Web
1.7 因特网组成部分:
- 边缘:由所有连接在因特网上的主机组成。
- 核心:由大量网络和连接这些网络的路由器组成。
1.8 计算机通信:主机A的某个进程与主机B的另一个进程进行通信
1.9 通信方式:
- C/S:客户端-服务器模式
- P2P:对等连接,既是客户也是服务器
1.10 在网络核心部分起特殊作用的是路由器,是实现分组交换(packet switching)的关键构建,其任务是转发收到的分组
1.11 电路交换:建立连接、通信、释放连接。(电路交换是面向连接的,由于计算机数据具有突发性,电路交换的通信线路利用率很低)
1.12 分组交换特点:
- 分组(
packet
,包) = 头部(header
,包头)+ 报文的一部分(message
/n
)
1.13 在路由器的输入输出端口之间没有直接连线
1.14 路由器处理分组步骤:
- 分组先放入缓存;
- 查找转发表;
- 将分组送到对应端口转发出去
1.15 网络分类:
- 作用范围:个域网(PAN)、局域网(LAN)、城域网(MAN)、广域网(WAN)
- 网络使用者: 公用网(Public Network)、专用网(Private Network)
1.16 接入网(AN):Access Network,本地接入网|居民接入网,把用户接入Internet
1.17 速率:数据率(data rate)| 比特率(bit rate),b/s,Kb/s,Mb/s,Gb/s等
1.18 宽带:现在指 数字信道传输的最高速率
- 千比每秒,即 kb/s (10^3 b/s)
- 兆比每秒,即 Mb/s(10^6 b/s)
- 吉比每秒,即 Gb/s(10^9 b/s)
- 太比每秒,即 Tb/s(10^12 b/s)
在计算机界,K = 2^10 = 1024,M = 2^20, G = 2^30, T = 2^40。
1.19 吞吐量:单位时间内通过某个网络(信道、端口)的数据量
1.20 时延(delay):
- 发送时延:数据帧第一个bit到该帧最后一个bit发送完毕的时间,( 数据帧长度/发送速率)
- 传播时延:电磁波在信道上传输消耗的传输时间(信道长度/信号在信道上传播速率)
- 处理时延:交换结点为存储转发而进行的一些必要处理花费的时间
- 排队时延:结点缓存队列中分组排队所经历的时间
总时延 = 发送时延+传播时延+处理时延+排队时延
往返时间(RTT,Round Trip Time):可计算有效数据率
1.21 提高链路的带宽减小了数据的发送时延
1.22 时延与网络利用率关系:
信道或网络的利用率过高会产生非常大的时延
1.23 计算机网络体系结构之分层,OSI/RM(开放系统互连基本参考模型),TCP/IP
1.24 网络协议:简称协议(Protocol),语法、语义、同步三要素构成,是为网络中的数据交换建立的规则
1.25 计算机网络的各层及一些的集合就是网络的体系结构。体系结构是抽象的,而实现是具体的,是真正在运行的计算机硬件和软件。
1.26 分层的好处:各层独立、灵活性好、结构可分、易于实现和维护、能促进标准换工作
1.27 OSI/RM:物理层、数据链路层、网络层、运输层、会话层、表示层、应用层
1.28 TCP/IP:网络接口层、网络层IP、运输层(TCP/UDP),应用层
1.29 五层协议:物理层、数据链路层、网络层、运输层、应用层
1.30 应用层:通过应用进程间的交互来实现特定网络应用
1.31 运输层:两台主机中进程之间的题的通信提供通用的数据传输服务
1.32 网络层:为分组交换网上的不同主机提供通信服务
1.33 数据链路层:两台主机传输数据,在一段段的链路上进行的,封装IP数据报为帧,帧包括同步信息,地址信息、差错控制等控制信息
1.34 物理层:物理层上传输的基本单位是bit(比特)
1.35 实体 、协议、服务:
- 实体(entity) 表示任何可发送或接收信息的硬件或软件进程。
- 协议是控制两个对等实体进行通信的规则的集合。
- 在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。
- 协议是“水平的”,即协议是控制对等实体之间通信的规则。
- 服务是“垂直的”,即服务是由下层向上层通过层间接口提供的。
- 同一系统相邻两层的实体进行交互的地方,称为服务访问点 SAP (Service Access Point)。
第二章 物理层
2.1 物理层任务:确定与传输媒体的接口有关的机械特性、电气特性、功能特性和过程特性。
- 机械特性:指明接口所用接线器的形状和尺寸、引线数目和排列、固定和锁定装置等等。
- 电气特性:指明在接口电缆的各条线上出现的电压的范围。(signal)
- 功能特性:指明某条线上出现的某一电平的电压表示何种意义。
- 过程特性:指明对于不同功能的各种可能事件的出现顺序。
2.2 信道:
- 单向通信(单工通信)——只能有一个方向的通信而没有反方向的交互。
- 双向交替通信(半双工通信)——通信的双方都可以发送信息,但不能双方同时发送(当然也就不能同时接收)。
- 双向同时通信(全双工通信)——通信的双方可以同时发送和接收信息。(传输效率最高)
2.3 基本的二元制调制方法:
- 调幅(AM):载波的振幅随基带数字信号而变化。
- 调频(FM):载波的频率随基带数字信号而变化。
- 调相(PM) :载波的初始相位随基带数字信号而变化。
2.4 奈奎斯特定理:在任何信道中,码元传输的速率是有上限的,否则就会出现码间串扰的问题,使接收端对码元的判决(即识别)成为不可能。如果信道的频带越宽,也就是能够通过的信号高频分量越多,那么就可以用更高的速率传送码元而不出现码间串扰。
2.5 信噪比:香农(Shannon)用信息论的理论推导出了带宽受限且有高斯白噪声干扰的信道的极限、无差错的信息传输速率。香农公式表明,信道的带宽或信道的信噪比越大,信息的极限传输速率就越高。用编码的方法让每一个码元携带更多比特的信息量
2.6 传输媒体:传输截止或传输媒介,数据传输系统中在发送器和接收器之间的物理通路,分为导引型传输媒体(有线传输)&非导引型传输媒体(无限传输)
2.7 导引型传输媒介:
- 双绞线:STP(屏蔽双绞线) UTP(无屏蔽双绞线)
- 同轴电缆:
- 光缆:多模光纤&单模光纤
2.8 信道复用:
- 频分复用 FDM(Frequency Division Multiplexing) :用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。
- 时分复用TDM(Time Division Multiplexing) :时分复用则是将时间划分为一段段等长的时分复用帧(TDM 帧)。每一个时分复用的用户在每一个 TDM 帧中占用固定序号的时隙。每一个用户所占用的时隙是周期性地出现(其周期就是 TDM 帧的长度)。TDM 信号也称为等时(isochronous)信号。时分复用的所有用户是在不同的时间占用同样的频带宽度。
- 统计时分复用(STDM)
- 波分复用(WDM):光的频分复用
2.9 码分复用(CDM, Code Division Multiplexing):
常用的名词是码分多址 CDMA(Code Division Multiple Access),这种系统发送的信号有很强的抗干扰能力,其频谱类似于白噪声,不易被敌人发现。各用户使用经过特殊挑选的不同码型,因此彼此不会造成干扰。每一个比特时间划分为 m 个短的间隔,称为码片(chip)。每个站分配的码片序列不仅必须各不相同,并且还必须互相正交(orthogonal)。
第三章 数据链路层
3.1 数据链路层主要信道:
- 点对点信道:一对一点对点通信方式
- 广播信道:一对多广播通信方式
3.2 数据链路(data link):除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。
3.3 数据链路层传送的是帧(framing),网络层协议上的数据单元是IP数据报(数据报,分组|包),其作为帧的数据部分,加上帧首部(SOH)和帧尾部(EOT)封装 成为一个帧,含有转义字符ESC
3.4 透明传输:无论什么样的比特流组合的数据,都能够按照原样没有差错得通过这个数据链路层。
3.5 差错控制:比特差错--误码率(EBR),与信噪比有很大关系,不可能下降到0,目前广泛采用循环冗余检验CRC(Cylic Redundancy Check)技术。
3.6 帧检验序列:FCS,Frame Check Sequence,为了进行检错添加的冗余码
3.7 计算FCS:被除数/除数,除数n+1位,被除数后加n个0,计算结果时,按照异或方式,结果中首位为0,则商0,否则商1,知道除到最后一位。
3.8 仅用循环冗余检验 CRC 差错检测技术只能做到无差错接受(accept)。“无差错接受”是指:“凡是接受的帧(即不包括丢弃的帧),我们都能以非常接近于 1 的概率认为这些帧在传输过程中没有产生差错”,要做到“可靠传输”(即发送什么就收到什么)就必须再加上确认和重传机制。
3.9 PPP点对点协议:Point to Point Protocol,计算机和ISP通信时所使用的数据链路层协议
- 标志字段 F = 0x7E (符号“0x”表示后面的字符是用十六进制表示。十六进制的 7E 的二进制表示是 01111110)。
- 地址字段 A 只置为 0xFF。地址字段实际上并不起作用。
- 控制字段 C 通常置为 0x03。
- PPP 是面向字节的,所有的 PPP 帧的长度都是整数字节。
3.10 字节填充:
- 当 PPP 用在同步传输链路时,协议规定采用硬件来完成比特填充(和 HDLC 的做法一样)。
- 当 PPP 用在异步传输时,就使用一种特殊的字符填充法。
将信息字段中出现的每一个 0x7E 字节转变成为 2 字节序列(0x7D, 0x5E)。
若信息字段中出现一个 0x7D 的字节, 则将其转变成为 2 字节序列(0x7D, 0x5D)。
若信息字段中出现 ASCII 码的控制字符(即数值小于 0x20 的字符),则在该字符前面要加入一个 0x7D 字节,同时将该字符的编码加以改变。
3.11 零比特填充:PPP 协议用在 SONET/SDH 链路时,是使用同步传输(一连串的比特连续传送)。这时 PPP 协议采用零比特填充方法来实现透明传输。在发送端,只要发现有 5 个连续 1,则立即填入一个 0。接收端对帧中的比特流进行扫描。每当发现 5 个连续1时,就把这 5 个连续 1 后的一个 0 删除,
3.12 PPP协议不提供使用序号和确认的可靠传输 原因:
- 在数据链路层出现差错的概率不大时,使用比较简单的 PPP 协议较为合理。
- 在因特网环境下,PPP 的信息字段放入的数据是 IP 数据报。数据链路层的可靠传输并不能够保证网络层的传输也是可靠的。
- 帧检验序列 FCS 字段可保证无差错接受。
3.13 局域网最主要的特点是:网络为一个单位所拥有,且地理范围和站点数目均有限。
3.14 局域网具有如下的一些主要优点:
- 具有广播功能,从一个站点可很方便地访问全网。局域网上的主机可共享连接在局域网上的各种硬件和软件资源。
- 便于系统的扩展和逐渐地演变,各设备的位置可灵活调整和改变。
- 提高了系统的可靠性、可用性和残存性。
3.15 局域网按网络拓扑结构进行分类:
- 星型网:由于集线器和双绞线的使用,星型以太网得到广泛使用。
- 环形网:典型代表:令牌环形网。
- 总线网:两端匹配电阻吸收电磁波信号的能量,避免在总线上产生有害的电磁波反射。
- CSMA/CD协议树形网:主要用于频分复用的宽带局域网。
3.16 数据链路两个子层:
- 逻辑链路控制子层(LLC,Logical Link Control)
- 媒体接入控制子层 (MAC,Medium Access Control)
与接入到传输媒体有关的内容都放在 MAC子层,而 LLC 子层则与传输媒体无关,不管采用何种协议的局域网对 LLC 子层来说都是透明的 (LLC 子层看不见下面的局域网)
3.17 CSMA/CD协议:载波监听多点接入/碰撞检测 CSMA/CD ,CSMA/CD 表示 Carrier Sense Multiple Access with Collision Detection
- “多点接入”表示许多计算机以多点接入的方式连接在一根总线上。
- “载波监听”是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞。
-
“碰撞检测”就是计算机边发送数据边检测信道上的信号电压大小。
示意图
使用
CSMA/CD
协议的以太网不能进行全双工通信而只能进行双向交替通信(半双工通信)。
每个站在发送数据之后的一小段时间内,存在着遭遇碰撞的可能性。
这种发送的不确定性使整个以太网的平均通信量远小于以太网的最高数据率。
3.18 以太网提供的服务:
- 以太网提供的服务是不可靠的交付,即尽最大努力的交付。
- 当目的站收到有差错的数据帧时就丢弃此帧,其他什么也不做。差错的纠正由高层来决定。
- 如果高层发现丢失了一些数据而进行重传,但以太网并不知道这是一个重传的帧,而是当作一个新的数据帧来发送。
3.19 以太网的端到端往返时延 2tao称为争用期,或碰撞窗口。经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发生碰撞。
参数a以太网取 51.2 us 为争用期的长度。
对于 10 Mb/s 以太网,在争用期内可发送512 bit,即 64 字节。
以太网在发送数据时,若前 64 字节没有发生冲突,则后续的数据就不会发生冲突。
以太网规定了最短有效帧长为 64 字节,凡长度小于 64 字节的帧都是由于冲突而异常中止的无效帧。
- 当数据率一定时,以太网的连线的长度受到限制,否则 tao 的数值会太大。
- 以太网的帧长不能太短,否则 T0 的值会太小,使 a 值太大。
3.20 在局域网中,硬件地址又称为物理地址,或 MAC 地址(48 位)。
3.21 适配器检查MAC地址:
- 适配器从网络上每收到一个 MAC 帧就首先用硬件检查 MAC 帧中的 MAC 地址.
- 如果是发往本站的帧则收下,然后再进行其他的处理。
- 否则就将此帧丢弃,不再进行其他的处理。
- “发往本站的帧”包括以下三种帧:
- 单播(unicast)帧(一对一)
- 广播(broadcast)帧(一对全体)
- 多播(multicast)帧(一对多)
3.22 MAC帧格式:
MAC帧格式
3.23 无效的MAC帧:
- 数据字段的长度与长度字段的值不一致;
- 帧的长度不是整数个字节;
- 用收到的帧检验序列 FCS 查出有差错;
- 数据字段的长度不在 46 ~ 1500 字节之间。
- 有效的 MAC 帧长度为 64 ~ 1518 字节之间。
- 对于检查出的无效 MAC 帧就简单地丢弃。以太网不负责重传丢弃的帧。
3.24 帧间最小间隔:
帧间最小间隔为 9.6 us,相当于 96 bit 的发送时间(10Mb/s)。
一个站在检测到总线开始空闲后,还要等待 9.6 us 才能再次发送数据。
这样做是为了使刚刚收到数据帧的站的接收缓存来得及清理,做好接收下一帧的准备。
3.25 网桥
在数据链路层扩展局域网是使用网桥。网桥工作在数据链路层,它根据MAC 帧的目的地址对收到的帧进行转发。网桥具有过滤帧的功能。当网桥收到一个帧时,并不是向所有的接口转发此帧,而是先检查此帧的目的 MAC 地址,然后再确定将该帧转发到哪一个接口。网桥使各网段成为隔离开的碰撞域 。
3.26 网桥缺点:
- 存储转发增加了时延。
- 在MAC 子层并没有流量控制功能。
- 具有不同 MAC 子层的网段桥接在一起时时延更大。
- 网桥只适合于用户数不太多(不超过几百个)和通信量不太大的局域网,否则有时还会因传播过多的广播信息而产生网络拥塞。这就是所谓的广播风暴。
3.27 网桥和集线器的不同
- 集线器在转发帧时,不对传输媒体进行检测。
- 网桥在转发帧之前必须执行 CSMA/CD 算法。若在发送过程中出现碰撞,就必须停止发送和进行退避。
3.28 网桥自学习算法:
- 若从 A 发出的帧从接口 x 进入了某网桥,那么从这个接口出发沿相反方向一定可把一个帧传送到 A。
- 网桥每收到一个帧,就记下其源地址和进入网桥的接口,作为转发表中的一个项目。
- 在建立转发表时是把帧首部中的源地址写在“地址”这一栏的下面。
- 在转发帧时,则是根据收到的帧首部中的目的地址来转发的。这时就把在“地址”栏下面已经记下的源地址当作目的地址,而把记下的进入接口当作转发接口。在网桥的转发表中写入的信息除了地址和接口外,还有帧进入该网桥的时间。
3.29 VLAN虚拟局域网:
虚拟局域网限制了接收广播信息的工作站数,使得网络不会因传播过多的广播信息(即“广播风暴”)而引起性能恶化
3.30 以太网发送的数据都使用 曼彻斯特(Manchester)编码,二进制基带数字信号通常是高低电压交替出现的信号问题,当出现一长串的0或1时,接收端就无法从收到的比特流中提取位同步(比特同步)信号。 曼彻斯特编码:把每一个码元再分成两个相等的间隔,1是上升沿,0是下降沿。
曼彻斯特识别差分曼彻斯特编码的方法:主要看两个相邻的波形,如果后一个波形和前一个的波形相同,则后一个波形表示0,如果波形不同,则表示1。
第四章 网络层
4.1 网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。不提供服务质量的承诺。
4.2 网络层的两种服务:
- 虚电路服务
- 数据报服务
虚电路表示这只是一条逻辑上的连接,分组都沿着这条逻辑连接按照存储转发方式传送,而并不是真正建立了一条物理连接。
电路交换的电话通信是先建立了一条真正的连接。因此分组交换的虚连接和电路交换的连接只是类似,但并不完全一样。
4.3 尽最大努力交付的好处:
- 由于传输网络不提供端到端的可靠传输服务,这就使网络中的路由器可以做得比较简单,而且价格低廉(与电信网的交换机相比较)。
- 如果主机(即端系统)中的进程之间的通信需要是可靠的,那么就由网络的主机中的运输层负责(包括差错处理、流量控制等)。
- 采用这种设计思路的好处是:网络的造价大大降低,运行方式灵活,能够适应多种应用。
- 因特网能够发展到今日的规模,充分证明了当初采用这种设计思路的正确性。
4.4 虚电路和数据报服务区别:
两种服务区别
4.5 IP(网际报文协议):
网际协议 IP 是 TCP/IP 体系中两个最主要的协议之一。与 IP 协议配套使用的还有三个协议:
- 地址解析协议 ARP (Address Resolution Protocol)
- 网际控制报文协议 ICMP (Internet Control Message Protocol)
- 网际组管理协议 IGMP (Internet Group Management Protocol)
4.6 网络的中间设备:路由选择&拥塞控制
中间设备又称为中间系统或中继(relay)系统。
物理层中继系统:转发器(repeater)。
数据链路层中继系统:网桥或桥接器(bridge)。
网络层中继系统:路由器(router)。
网桥和路由器的混合物:桥路器(brouter)。
网络层以上的中继系统:网关(gateway)。
4.7 基于IP地址是一个间接交付过程,基于MAC地址是直接交付过程
4.8 IP地址的编址方法:分类的IP地址、子网划分、构成超网
4.9 分类IP地址:
网络号:net-id,主机号:host-id
IP分类 使用范围
4.10 ARP:
- 不管网络层使用的是什么协议,在实际网络的链路上传送数据帧时,最终还是必须使用硬件地址。
- 每一个主机都设有一个 ARP 高速缓存(ARP cache),里面有所在的局域网上的各主机和路由器的 IP 地址到硬件地址的映射表。
- 当主机 A 欲向本局域网上的某个主机 B 发送 IP 数据报时,就先在其 ARP 高速缓存中查看有无主机 B 的 IP 地址。如有,就可查出其对应的硬件地址,再将此硬件地址写入 MAC 帧,然后通过局域网将该 MAC 帧发往此硬件地址。 没有就发送ARP广播请求。
4.11 ARP 是解决同一个局域网上的主机或路由器的 IP 地址和硬件地址的映射问题。
4.12 只要主机或路由器要和本网络上的另一个已知 IP 地址的主机或路由器进行通信,ARP 协议就会自动地将该 IP 地址解析为链路层所需要的硬件地址。
4.13 IP数据报格式
数据报格式
4.14 子网划分:
1985 年起在 IP 地址中又增加了一个“子网号字段”,使两级的 IP 地址变成为三级的 IP 地址。
划分子网(subnetting)
IP地址 ::= {<网络号>, <子网号>, <主机号>}
划分子网只是把 IP 地址的主机号 host-id 这部分进行再划分,而不改变 IP 地址原来的网络号 net-id。
4.15 子网掩码:
使用子网掩码(subnet mask)可以找出 IP 地址中的子网部分。
- 不同的子网掩码得出相同的网络地址。但不同的掩码的效果是不同的。
4.16 无分类编址CIDR
128.14.32.0/20 表示的地址块共有 212 个地址(因为斜线后面的 20 是网络前缀的位数,所以这个地址的主机号是 12 位)。
这个地址块的起始地址是 128.14.32.0。
在不需要指出地址块的起始地址时,也可将这样的地址块简称为“/20 地址块”。
4.17 路由聚合(route aggregation) :
一个 CIDR 地址块可以表示很多地址,这种地址的聚合常称为路由聚合,它使得路由表中的一个项目可以表示很多个(例如上千个)原来传统分类地址的路由。
路由聚合也称为构成超网(supernetting)。
4.18 CIDR的子网掩码:
子网掩码
4.19 构成超网:
- 前缀长度不超过 23 位的 CIDR 地址块都包含了多个 C 类地址。
- 这些 C 类地址合起来就构成了超网。
- CIDR 地址块中的地址数一定是 2 的整数次幂。
- 网络前缀越短,其地址块所包含的地址数就越多。而在三级结构的IP地址中,划分子网是使网络前缀变长。
4.20 网际控制报文协议(ICMP):
ICMP 允许主机或路由器报告差错情况和提供有关异常情况的报告。
ICMP 不是高层协议,而是 IP 层的协议。
ICMP 报文作为 IP 层数据报的数据,加上数据报的首部,组成 IP 数据报发送出去。
格式
4.21 ICMP用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用
4.22 PING 是应用层直接使用网络层 ICMP 的例子,它没有通过运输层的 TCP 或UDP。
4.23 路由算法选择:
- 静态路由选择策略——即非自适应路由选择,其特点是简单和开销较小,但不能及时适应网络状态的变化。
- 动态路由选择策略——即自适应路由选择,其特点是能较好地适应网络状态的变化,但实现起来较为复杂,开销也比较大。
4.24 因特网采用分层次的路由选择协议。
4.25 自治系统AS(Autonomous System)
在单一的技术管理下的一组路由器,而这些路由器使用一种 AS 内部的路由选择协议和共同的度量以确定分组在该 AS 内的路由,同时还使用一种 AS 之间的路由选择协议用以确定分组在 AS之间的路由。
4.26 因特网两大路由选择协议:
- 内部网关协议 IGP (Interior Gateway Protocol) 即在一个自治系统内部使用的路由选择协议。目前这类路由选择协议使用得最多,如 RIP 和 OSPF 协议。
- 外部网关协议EGP (External Gateway Protocol) 若源站和目的站处在不同的自治系统中,当数据报传到一个自治系统的边界时,就需要使用一种协议将路由选择信息传递到另一个自治系统中。这样的协议就是外部网关协议 EGP。在外部网关协议中目前使用最多的是 BGP-4。
4.27 RIP(Routing Information Protocol)
- RIP 是一种分布式的基于距离向量的路由选择协议。
- RIP 协议要求网络中的每一个路由器都要维护从它自己到其他每一个目的网络的距离记录。
- RIP 协议中的“距离”也称为“跳数”(hop count),因为每经过一个路由器,跳数就加 1。
- 从一路由器到直接连接的网络的距离定义为 1,这里的“距离”实际上指的是“最短距离”,
- RIP 允许一条路径最多只能包含 15 个路由器。“距离”的最大值为16 时即相当于不可达。可见 RIP 只适用于小型互联网。
- RIP 不能在两个网络之间同时使用多条路由。
4.28 RIP三要点:
- 仅和相邻路由器交换信息。
- 交换的信息是当前本路由器所知道的全部信息,即自己的路由表。
- 按固定的时间间隔交换路由信息,例如,每隔 30 秒。 坏消息传播速度慢
4.29 RIP 协议的收敛(convergence)过程较快
4.30 RIP协议优缺点:
RIP 存在的一个问题是当网络出现故障时,要经过比较长的时间才能将此信息传送到所有的路由器。
RIP 协议最大的优点就是实现简单,开销较小。
RIP 限制了网络的规模,它能使用的最大距离为 15(16 表示不可达)。
路由器之间交换的路由信息是路由器中的完整路由表,因而随着网络规模的扩大,开销也就增加。
4.31 OSPF(Open Shortest Path First)是分布式的链路状态协议。
4.32 OSPF三要点:
向本自治系统中所有路由器发送信息,这里使用的方法是洪泛法。
发送的信息就是与本路由器相邻的所有路由器的链路状态,但这只是路由器所知道的部分信息。
“链路状态”就是说明本路由器都和哪些路由器相邻,以及该链路的“度量”(metric)。
只有当链路状态发生变化时,路由器才用洪泛法向所有路由器发送此信息。
4.33 链路状态数据库(link-state datebase):
- 由于各路由器之间频繁地交换链路状态信息,因此所有的路由器最终都能建立一个链路状态数据库。
- 这个数据库实际上就是全网的拓扑结构图,它在全网范围内是一致的(这称为链路状态数据库的同步)。
- OSPF 的链路状态数据库能较快地进行更新,使各个路由器能及时更新其路由表。OSPF 的更新过程收敛得快是其重要优点。OSPF 能够用于规模很大的网络,区域也不能太大,在一个区域内的路由器最好不超过 200 个。
4.34 OSPF数据报:
- OSPF 不用 UDP 而是直接用 IP 数据报传送。
- OSPF 构成的数据报很短。这样做可减少路由信息的通信量。
- 数据报很短的另一好处是可以不必将长的数据报分片传送。分片传送的数据报只要丢失一个,就无法组装成原来的数据报,而整个数据报就必须重传。
4.35 BGP是不同自治系统的路由器之间交换路由信息的协议。边界网关协议 BGP 只能是力求寻找一条能够到达目的网络且比较好的路由(不能兜圈子),而并非要寻找一条最佳路由。
4.36 每一个自治系统的管理员要选择至少一个路由器作为该自治系统的“ BGP 发言人” 。使用 TCP 连接能提供可靠的服务,利用 BGP 会话交换路由信息。
4.37 BGP 所交换的网络可达性的信息就是要到达某个网络所要经过的一系列 AS。
4.38 BGP 协议的特点:
BGP 支持 CIDR,因此 BGP 的路由表也就应当包括目的网络前缀、下一跳路由器,以及到达该目的网络所要经过的各个自治系统序列。
在BGP 刚刚运行时,BGP 的邻站是交换整个的 BGP 路由表。但以后只需要在发生变化时更新有变化的部分。这样做对节省网络带宽和减少路由器的处理开销方面都有好处。
4.39 为了使路由器知道多播组成员的信息,需要利用网际组管理协议 IGMP (Internet Group Management Protocol)。
4.40 路由器转发多播数据报使用洪泛的方法(这就是广播)。为了避免兜圈子,采用了叫做反向路径广播 RPB (Reverse Path Broadcasting)的策略。
4.41 用隧道技术实现虚拟专用网 VPN(Virtual Private Network)
4.42 4.7.2 网络地址转换 NAT (Network Address Translation)
转换过程
第五章 运输层
5.1 从通信和信息处理的角度看,运输层向它上面的应用层提供通信服务,它属于面向通信部分的最高层,同时也是用户功能中的最低层。
5.2 应用进程之间的通信又称为端到端的通信。
5.3 运输层的一个很重要的功能就是复用和分用。应用层不同进程的报文通过不同的端口向下交到运输层,再往下就共用网络层提供的服务。
5.4 “运输层提供应用进程间的逻辑通信”。“逻辑通信”的意思是:运输层之间的通信好像是沿水平方向传送数据。但事实上这两个运输层之间并没有一条水平方向的物理连接。
5.5 TCP/IP 的运输层有两个不同的协议:
- (1) 用户数据报协议 UDP (User Datagram Protocol)
- (2) 传输控制协议 TCP (Transmission Control Protocol)
5.6 在运输层使用协议端口号(protocol port number),或通常简称为端口(port)。虽然通信的终点是应用进程,但我们可以把端口想象是通信的终点,因为我们只要把要传送的报文交到目的主机的某一个合适的目的端口,剩下的工作(即最后交付目的进程)就由 TCP 来完成。
5.7 端口号只具有本地意义,即端口号只是为了标志本计算机应用层中的各进程。在因特网中不同计算机的相同端口号是没有联系的。
5.8 端口:
- 熟知端口 0~1023
- 登记端口号 1024~49151
- 客户端使用的端口号 49152~65535
5.9 UDP
- 无连接
- 面向报文
- 不可靠
- 无拥塞控制
- 支持一对一、多对一、一对多交互通信
- 首部开销仅8字节
5.10 UDP首部:
UDP首部
在计算检验和时,临时把“伪首部”和 UDP 用户数据报连接在一起。伪首部仅仅是为了计算检验和。
5.11 TCP:
- 面向连接
- 一对一
- 可靠交付服务
- 全双工通信
- 面向字节流
5.12 TCP连接:
TCP 连接的端点叫做套接字(socket)或插口。
端口号拼接到(contatenated with) IP 地址即构成了套接字。
TCP 连接 ::= {socket1, socket2}
= {(IP1: port1), (IP2: port2)}
5.13 可靠的传输:
在不可靠的传输网络上实现可靠的通信。这种可靠传输协议常称为自动重传请求ARQ (Automatic Repeat reQuest)。ARQ 表明重传的请求是自动进行的。接收方不需要请求发送方重传某个出错的分组 。
5.14 停止等待协议的优点是简单,但缺点是信道利用率太低。
信道利用率
5.15 连续 ARQ 协议 & 累计确认
5.16 回退N(Go-back-N)
5.17 TCP头部:
TCP首部格式
5.18 TCP流量控制
利用滑动窗口机制可以很方便地在 TCP 连接上实现流量控制。
5.19 在某段时间,若对网络中某资源的需求超过了该资源所能提供的可用部分,网络的性能就要变坏——产生拥塞(congestion)。(对资源需求的总和 > 可用资源)
5.20 发送方维持一个叫做拥塞窗口 cwnd (congestion window)的状态变量。拥塞窗口的大小取决于网络的拥塞程度,并且动态地在变化。发送方让自己的发送窗口等于拥塞窗口。如再考虑到接收方的接收能力,则发送窗口还可能小于拥塞窗口。
发送方控制拥塞窗口的原则是:只要网络没有出现拥塞,拥塞窗口就再增大一些,以便把更多的分组发送出去。但只要网络出现拥塞,拥塞窗口就减小一些,以减少注入到网络中的分组数。
5.21 慢开始:
- 在主机刚刚开始发送报文段时可先设置拥塞窗口 cwnd = 1,即设置为一个最大报文段 MSS 的数值。
- 在每收到一个对新的报文段的确认后,将拥塞窗口加 1,即增加一个 MSS 的数值。
-
用这样的方法逐步增大发送端的拥塞窗口 cwnd,可以使分组注入到网络的速率更加合理
慢开始
使用慢开始算法后,每经过一个传输轮次(transmission round),拥塞窗口 cwnd 就加倍。
慢开始和拥塞避免算法的实现举例
5.22 快重传算法首先要求接收方每收到一个失序的报文段后就立即发出重复确认。这样做可以让发送方及早知道有报文段没有到达接收方。 发送方只要一连收到三个重复确认就应当立即重传对方尚未收到的报文段。不难看出,快重传并非取消重传计时器,而是在某些情况下可更早地重传丢失的报文段。
5.23 快恢复算法:当发送端收到连续三个重复的确认时,就执行“乘法减小”算法,把慢开始门限 ssthresh 减半。但接下去不执行慢开始算法。 由于发送方现在认为网络很可能没有发生拥塞,因此现在不执行慢开始算法,即拥塞窗口 cwnd 现在不设置为 1,而是设置为慢开始门限 ssthresh 减半后的数值,然后开始执行拥塞避免算法(“加法增大”),使拥塞窗口缓慢地线性增大。
从连续收到三个重复的确认转入拥塞避免5.24 运输连接就有三个阶段,即:连接建立、数据传送和连接释放。
建立链接 断开链接5.25 发送窗口的上限值 = Min [rwnd, cwnd]
TCP有限状态机第六章 应用层
6.1 域名系统 DNS(Domain Name System)
6.2 域名服务器:
- 根域名服务器
- 顶级域名服务器
- 权限域名服务器
- 本地域名服务器
6.2 FTP(File Transfer Protocol)文件传送协议
FTP
6.3 使用两个端口号的好处:
- 使协议更加简单和更容易实现。
- 在传输文件时还可以利用控制连接(例如,客户发送请求终止传输)
6.4 远程终端协议 TELNET :
TELNET 能将用户的击键传到远地主机,同时也能将远地主机的输出通过 TCP 连接返回到用户屏幕。这种服务是透明的,因为用户感觉到好像键盘和显示器是直接连在远地主机上。
TELNET 使用网络虚拟终端 NVT 格式
6.5 WWW 万维网:
用链接的方法能非常方便地从因特网上的一个站点访问另一个站点,从而主动地按需获取丰富的信息。
万维网是分布式超媒体(hypermedia)系统,它是超文本(hypertext)系统的扩充。
6.6 统一资源定位符 URL (Uniform Resource Locator)来标志万维网上的各种文档。
6.7 超文本传送协议 HTTP (HyperText Transfer Protocol)。 HTTP 是一个应用层协议,它使用 TCP 连接进行可靠的传送。 HTTP 是面向事务的(transaction-oriented)应用层协议,它是万维网上能够可靠地交换文件(包括文本、声音、图像等各种多媒体文件)的重要基础。
6.8 HTTP特点:
- HTTP 是面向事务的客户服务器协议。
- HTTP 1.0 协议是无状态的(stateless)。
- HTTP 协议本身也是无连接的,虽然它使用了面向连接的 TCP 向上提供的服务。
- HTTP/1.1 协议使用持续连接。
6.9 通用网关接口 CGI (Common Gateway Interface) :CGI 是一种标准,它定义了动态文档应如何创建,输入数据应如何提供给应用程序,以及输出结果应如何使用
6.10 CGI 程序的正式名字是 CGI 脚本(script)。“脚本”指的是一个程序,它被另一个程序(解释程序)而不是计算机的处理机来解释或执行。脚本运行起来要比一般的编译程序要慢,因为它的每一条指令先要被另一个程序来处理(这就要一些附加的指令),而不是直接被指令处理器来处理。
6.11 电子邮件:
一些标准:
- 发送邮件的协议:SMTP
- 读取邮件的协议:POP3 和 IMAP
- MIME 在其邮件首部中说明了邮件的数据类型(如文本、声音、图像、视像等),使用 MIME 可在邮件中同时传送多种类型的数据。
6.12 SMTP(简单邮件传输协议)
- 连接建立:连接是在发送主机的 SMTP 客户和接收主机的 SMTP 服务器之间建立的。SMTP不使用中间-
的邮件服务器。 - 邮件传送
- 连接释放:邮件发送完毕后,SMTP 应释放 TCP 连接。
6.13 邮件读取协议 POP3 和 IMAP
6.15 发信人的用户代理向源邮件服务器发送邮件,以及源邮件服务器向目的邮件服务器发送邮件,都是使用 SMTP 协议。而 POP 协议或 IMAP 协议则是用户从目的邮件服务器上读取邮件所使用的协议。
6.16 基于WWW的电子邮件:
WWW邮件
6.17 MIME与SMTP的关系:
MIME&SMTP
6.18 动态主机配置协议 DHCP
DHCP中继代理
DHCP过程
6.19 Socket(套接字):
socket
网友评论