网络提供信息传递服务(端用户角度)
通信介质:电子和光子,传输介质:fiber……,交换方式,协议,算法,功能,应用
通信网络分类
广播网络:一个节点发出的信息其他节点都可以收到
交换网络:信息通过一组特定功能的节点进行转发
电路交换
分组交换
Baran思想——烫土豆算法:当一个分组到来时,节点必须尽快脱手,将其放入输出队列最短的方向上排队,而不管该方向通向何方。(孤立动态路由选择算法,不一定是最短路径)
计算机网络逻辑功能分层:
一个自主的互连的计算机系统的集合
特征:节点有独立内存和CPU,需要网络协议支持
按照覆盖范围分类
按照服务类别分类
按照隔离模式分类
两级结构的计算机网络
资源子网(用户子网)和通信子网
信道连接方式
拓扑结构
云计算
定义:是一种商业计算模型。它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够按需获取计算力、存储空间和信息服务。
云计算服务的部署形式
SaaS应用云——salesforce的CRM
PaaS平台云——Google App Engine
Iaas基础设施云——亚马逊S3
Google云计算
云计算思路
云计算平台技术架构
GFS
设计原则:
组成:
GFS集群:一个Master和多个ChunkServer(块服务器)组成,并可以多客户端Client访问
设计要点:
Client职责:
Master职责:
ChunkServer职责:
Q:为什么文件要被划分成为64M
Answer
缺点:有冗余
架构特点:
采用中心服务器模式Master
不缓存数据
容错机制
Chunk Server容错
Mater容错
MapReduce
由普通PC组成的集群来处理超大规模的数据
容错机制
Worker容错
Master周期性的ping每个worker
Master容错
网络为什么要分层
优缺点
优点:
缺点:信息隐藏:实现效率降低
结构化的分层及各层通信协议的总和就是计算机网络的体系结构
对于分层的系统,通常协议也是分层的,此种协议是双方同层实体在通信时使用的规则
协议通常包括所传输数据的格式、使用哪些协议控制信息、差错控制方案及在计时与时序上的有关的约定
可以提供面向连接和无连接的服务
物理层:规定了介质与插接件的规格、信号的制式、收发与转发设备的性能、插接件各针的功能定义以及建立连接、传送位流和拆除连接的操作规程在物理媒体上透明地传输比特流(Bit)
传输数据单位:比特流
不是传输媒体
数据链路层:无差错地传输帧:组建数据帧、实现帧同步、按帧进行检错、重发出错帧、根据需要进行流量和顺序控制等在链路上无差错的传送帧
传输数据单位:帧frame
停等协议
点对点可靠通信
网络层:如何将分组从源传送到目的地分组传送,路由选择和流量控制
数据传输单位:分组packet
传输层:计算机与通信子网间的界面,提供有效、可靠且价格合理的端对端的通信服务,从端到端(主机到主机)经网络透明地传输报文端到端可靠的数据传输
传输数据单位:报文
可以提供面向连接和无连接的服务
会话层:不同主机的不同进程间的通信会话管理与数据传输的同步
表示层:为通信双方的应用层实体提供共同的表达手段,使双方能正确地理解所传送的信息数据格式转换
应用层:与最终用户的接口
数据链路层:采用现成的局域网协议
网络层:四个协议
传输层:
应用层:
缺点
服务:说明一层做什么
接口:如何获取服务
协议:服务是如何实现的
实体:任何可以发送或接收信息的硬件/软件进程,每一层中的活跃元素
包括数据连接层(LLC、MAC)和物理层,LAN对LLC子层透明,仅在MAC子层才可见LAN的标准
LAN标准的区别在MAC子层
不同局域网的差异是在物理层和MAC层
以太网解决多台主机共享信道的方法是载波侦听多路存取(Carrier Sense Multi Access,CSMA)。
在CSMA/CD中,发送者边发送边监听(listen while talking),只要检测到冲突,则立即停止发送数据,并发出一个特殊信号,通知其他主机发生了冲突。然后等待一段时间重新开始。载波监听、冲突检测、多路访问
数据最小帧长度
10Mbit/s以太网是半双工,最短帧长是64字节,即512比特,曼彻斯特编码
百兆以太网,最小帧长依旧是64字节,编码使用4B/5B
千兆以太网GE,修改了帧长度,增加了扩展字段
万兆以太网10Gbit/s,光纤链路技术,全双工
MAC帧
IEEE802.3 MAC标准只处理地址(各6字节)、长度(2字节)、数据/填充(46~1500字节)和FCS(4字节,使用CRC校验)字段,而前导(preamble)和帧开始定界符(Start of Frame Delimiter,SFD)字段由物理层处理,前导和SFD不是MAC帧的字段,它们和MAC帧构成以太网帧。
物理层使用它们把MAC帧封装到物理层的数据结构中
网卡
功能:串并转换
计算机到网卡是并行,网络传输是串行
IEEE802.3适合轻负载
以太网适合轻负载、长报文
适合重负载
数据优先级高于令牌优先级的才能抓住
转一圈优先级降低
物理上是总线网,逻辑上是令牌网
网卡
属于数据链路层/物理层
中继器
物理信号的放大和再生
集线器和集中设备
hub物理层
路由器属于网络层
交换机可以用于网络层互联
网桥与以太网交换机
网桥工作在数据链路层,具有过滤帧功能
数据链路层互联设备包括网桥和交换机
4B/5B、8B/6T、PAM5*5
以便解决服务器瓶颈问题、网络中链路交汇点拥塞问题
8B/10B、PAM5
增加扩展字段,帧最大长度由1518字节到1966字节,最小帧长度依旧是64字节
全双工
交换机连接计算机或其他交换机时,无冲突
半双工
交换机连接集线器时
流量控制
数据接收端发现接收缓冲区快用完,向对端发送PAUSE帧;(帧类
型Ox8808)
帧突发
只支持全双工
头部添加了长度(2字节,MAC帧长度)和头部差错校验字段HEC(CRC-16校验)
前导字段由7字节到5字节
编码方式:8B/10B、64B/66B
广域网
64B/66B,使用PCM脉冲编码调制
分段设备:bridge、router、switch
透明网桥
选路方法:网桥收到来自LANx的帧,查站表
源站选路网桥
由源站选择路由,路由信息放在帧首
网桥:冲突域是端口,广播域是所有网端
集线器/路由器:广播域/冲突域是所有网络和端口
基于端口
基于MAC地址
IP地址
数据的协议类型
干道链路Trunk-link
接入链路Access-link
以太网交换机端口分类
Access端口:接用户计算机,只能属于1个Vlan,缺省ID是所在的Vlan
Trunck端口:一般用于交换机之间连接,可以属于多个Vlan,缺省是Vlan1
Hybrid端口:可以交换机之间连接,也可以接用户的计算机,可以属于多个Vlan,缺省是Vlan1
在同一个交换机hybrid端口和Trunk端口不能并存
转发原则——Access link
转发原则——Trunk link
转发原则——Hybird link
接受帧
发送帧
IEEE802.1Q优点:
缺点:额外数据开销,每个VLAN帧都需要添加额外的VLAN标签信息,这增加了帧的大小和网络开销。
ISL优点:
缺点:
非标准化,ISL是一个思科专有的协议,不像IEEE 802.1Q协议那样被广泛支持于各种网络设备。因此,使用ISL可能会面临设备兼容性的问题。
额外开销,ISL封装会增加帧的大小,增加了网络带宽的消耗。
GARP和GVRP不给VLAN打标签,802.1Q和ISL给VLAN打标签
GARP通用属性注册协议,只是载体,协议框架
产生原因:过渡交换机必须知道全局VLAN信息,否则无法实现VLAN间通信
GCPR为处于同一个交换网内的交换成员之间提供了动态分发、传播、注册,注销VLAN信息的一种手段
GVRP在交换机上启动,每个GVRP的Trunk端口对应一个GVRP应用实体
GVRP注册类型
Normal
允许在该聚合端口动态创建、注册和注销VLAN
注册:连接的交换机,Vlan1默认有
声明:除port连接的交换机
fixed
允许手工创建和注册VLAN,并且防止VLAN的注销和在其它trunk端口注册此端口所知的VLAN
只有静态属性可以通过
FORBIDDEN
注销除VLAN 1之外的所有VLAN,并且禁止在该端口上创建和注册任何其它VLAN
vlan的缺点:VLAN隔离了二层广播域,也严格地隔离了各个VLAN之间的任何流量,分属于不同VLAN的用户不能互相通信。
每个VLAN一个物理连接
使用VLAN Trunking
交换和路由集成
三层交换机功能模型
push:Ingress接收分组,判定分组所属的FEC,给分组加上Label
swap:在MPLS域中只依据标签和标签转发表通过转发单元转发
pop:Egress将标签去掉,继续转发
倒数第二跳弹出(PHP):最后一跳,最外层标签已没有意义,因此可在倒数第二跳将标签弹出,减少最后一跳的负担
不用可变长度的IP地址前缀来查找转发表中的匹配项目,而是给每个IP数据报打上固定长度的“标签”,对打上标签的IP数据报用硬件转发(标签交换),不用上升到第三层,大大加快了IP数据报的转发速度
链路层如何判断MPLS报文
动态生成标签的协议,与动态路由协议OSPF相像
主要功能:
使用TCP连接
标签分配模式
标签控制模式
有序
只有收到它的下游返回的标签映射消息后才向其上游发送标签映射消息
独立
不管有没有收到它的下游返回的标签映射消息都立即向其上游发送标签映射消息
标签保持方式
保守模式
只保留来自下一跳邻居的标签,丢弃所有非下一跳邻居发来的标签。
自由模式
保留来自邻居的所有发送来的标签
优缺点与上面相反
标签转发表中的IN和OUT,是相对于标签转发而言,不是相对于标签分配的IN和OUT:
BGP用于解决地址冲突问题,BGP是唯一支持大量路由的路由协议,基于TCP建立连接,CE内部的VPN路由信息
属于Network-based VPN、Peer-to-Peer VPN
VRF
有一个site就有一个VRF,公网路由表
区分不同VPN中相同IP地址前缀
RD,Route Distinguisher 64bit前缀
VPNV4 Address=RD+IPV4和内层标签相关
RD唯一,VPNV4地址唯一
如何判断将VPNV4路由注入到VRF中
在PE收到邻居的VPNv4路由后,由于VPNv4路由通告中通过扩展团体属性携带了Export RT值,可以根据本地VRF的Import RT值将路由导入到相应的VRF中,路由被注入时RD值会被移除变成IPv4路由
IP+Port(16位)
违反了IP的结构模型:每个IP地址均唯一标识一台计算机,端口16位,限制了可以被映射的机器数
全 0 和全 1 的主机号地址一般不使用
使得路由表中的一个项目可以表示很多个传统分类地址的路由。
源地址只能是单播
目的地址类型:
扩展地址扩展到128位
写法:
IPv4报头
IP数据报首部长度:20B~60B
标识:DF(禁止分片),MF(还有分片)
片偏移为数据长度/8
到IP层前的数据分片需要是2的倍数
网络IP数据报分片则不需要,但是注意首部
IPv6报头
IPV6没有首部检验和,优点是首部处理简单,缺点是可能遇到数据链路层检测不出差错
IPv6扩展报头
分片只源点进行(加快网络种IP数据报的转发速度),资源预分配,即插即用
双栈协议用于过渡/隧道技术
IPv6安全性
认证报头的设计目的是保证报文的安全性和完整性,并提供身份验证功能
动态路由:
解决路由环路问题:
封装在UDP报文中,运行在520端口,Bellman-ford算法使每个路由器到每个目的网络得路由是最短的,“坏消息传的慢”
对于每个相邻路由器发送来得RIP报文,执行以下步骤:
链路状态网络发现机制
如何保证所有路由器收到所有必需的LSP
IP
层次化的路由选择协议
OSPF 支持的三种网络连接
BGP 是在自治系统间使用的协议确保交换无环路的路由信息
只能是力求寻找一条能够到达目的网络且比较好的路由(不能兜圈子),而并非要寻找一条最佳路由。
BGP邻居
任何两个建立了TCP连接以交换BGP路由信息的路由器称为peers 或 neighbors
当 BGP neighbors 属于同一个 AS,IBGP Neighbors 不需要直接连接
当BGP neighbors 属于不同的AS,EBGP Neighbors 必须直接连接
BGP属性
Well-konw属性:
BGP路径属性:
BGP路由
BGP 有自己的路由表, 独立于 IGP 路由表可以在路由表之间交换路由
在一个AS内的BGP不属于IGP
IGP是内部网关协议,在AS内部实现路由信息的交换;BGP是边界网关协议,在AS之间实现路由信息的交换
IGP:
IBGP:
路径偏好度分配的度量标准:
AS计数越小,路径越佳
路由决策前提:
路由选择过程:
多播源和接收者以及两者之间的下层网络都必须支持多播:
IPv4:D类地址
泛洪法Flooding
向前传送多播路由算法,不构造分布树
当多播路由器收到发往某个多播地址的数据包后,首先判断是否是首次收到该数据包
有源树
多播源作为root
共享树
RP树
为每个多播组选定一个共用根(RP或核心),以RP为根建立的多播树
有核树CBT (Core Based Trees)
有核树由根到所有组成员的最短路径合并而成
Steiner树
IGMP负责建立并维护路由器直联网段(局域网内部)的组成员关系信息
IGMP
多播路由选择实际上就是要找出以源主机为根结点的多播转发树。
由单播路由协议RIP扩展而来
基于链路状态的路由协议,单播OSPF协议应用于多播
基于端口的复用和分用
用户数据报协议UDP是面向报文的,无连接,尽最大努力交付,没有拥塞控制,支持单播、多播、广播,不提供可靠交付,首部开销小
UDP 对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界
对 IP 层交上来的 UDP 用户数据报,在去除首部后就原封不动地交付上层的应用进程,一次交付一个完整的报文
传输控制协议,支持点对点单播,提供可靠服务
首部最小长度是20字节
以字节为单位的滑动窗口
TCP如何保证端到端的可靠传输
利用滑动窗口可以在TCP连接上实现流量控制
基于窗口进行拥塞控制
真正的发送窗口值=Min(接收方窗口值,拥塞窗口值)
慢开始门限 ssthresh 的用法如下:
无论在慢开始阶段还是在拥塞避免阶段,只要发送方判断网络出现拥塞(重传定时器超时):
发送方只要一连收到三个重复确认,就知道接收方确实没有收到报文段,因而应当立即进行重传(即“快重传”)
快恢复算法 FR (Fast Recovery) 算法:
TCP连接
快速UDP网络连接,基于UDP协议的
QUIC的功能上相当于:TCP的可靠传输 + TLS的安全加密
无队列头阻塞
连接迁移
QUIC底层使用的UDP,本身就不需要连接,而QUIC的连接是基于ID来识别唯一的,ID保存在用户手机和对端上,所以网络切换时,不需要另外重新建立连接。
前向纠错
FEC(Forward error correction)是指在发送数据包时,提前多发一个或多个数据包,通过编码技术,将多发的包和原始包编码后一起发送。如果原始的数据包丢了一个,就能通过多发的包恢复回来。
主要特征:
转控分离:网元的控制平面在控制器上,负责协议计算,产生流表;而转发平面只在网络设备上。
开放接口:第三方应用只需通过控制器提供的开放接口,通过编程方式定义的网络功能,在控制器上运行即可。
集中控制:设备网元通过控制器集中管理和下发流表,不需要对设备进行逐一操作,只需要对控制器进行配置。
网络部署方式:
网络体系架构模型
OpenFlow
协议用于控制器与交换机之间下发流表
流表匹配规则:
保护在公用通信网络中传输、交换和存储的信息的机密性、完整性和真实性,并对信息的传播及内容有控制能力
攻击的一般步骤:
内部网络和外部网络的隔离
集中式防火墙
包过滤防火墙
双重宿主主机防火墙
屏蔽主机防火墙
屏蔽子网防火墙
分布式防火墙
嵌入式防火墙
专用虚拟网,使一个机构中分布在不同场所的主机能够像一个本机构的专用网那样通信
类型
隧道技术
优点是价格上比专用网便宜
缺点是技术复杂,安全性问题
分类
检测分析技术