1 引言
1.协议(Protocol):一组控制数据通信的规则(三要素:语法、语义、时序)
标准(standard):一致同意的规则(事实上的标准、合法标准)
2.ISO国际标准化组织,ANSI美国国家标准化局
Internet标准:RFC文档
2 OSI模型和TCPIP协议族
1.OSI参考模型:open system interconnection开放系统互连
目的:使两个不同的系统能够互相通信,而不需要改变底层的硬件或软件逻辑。
包括:(1)物理层 (2)数据链路层 (3)网络层 (4)传输层 (5)会话层 (6)表示层 (7)应用层
2.对等层、对等实体、对等层协议、协议数据单元(PDU)
3.TCP/IP四层结构:网络接口层(LAN、MAN、WAN)、网络层(IP、RAP、RAPR、ICMP、IGMP)、传输层(TCP、UDP)、应用层(FTP、HTTP、SMTP、DNS、TFTP、SNMP)
4.编址
物理地址:标识通信节点,节点所属LAN或WAN指定,LAN或WAN唯一;
IP地址:标识通信节点的网络连接,Internet指定,Internet内唯一;
端口地址:标识通信的进程,操作系统指定,一台计算机内唯一
5.IPv4:地址空间不足(32位)、低效率、对服务质量和安全等方面支持弱;
IPv6:扩大了地址空间(128位),改进了IPv4的弱点
3 底层网络技术
1.局域网(LAN):允许一些独立设备在受限地理范围内彼此能够直接通信;共享介质——广播式
广域网(WAN):在一个很大的地理范围内提供数据、话音、视频信息的长距离传输;交换网络——点到点式
2.以太网(Ethernet)帧:(8字节控制)+14字节首部+DATA+4字节校验尾部
最大限制:1518字节(DATA_max=MTU=1500字节),最小帧长:64字节(2τc)
3.交换(switching):电路交换 VS 分组交换(数据包、虚电路)
4. 连接设备
转发器(Repeater)物理层 转发器越多,冲突域越大,网络性能越差
网桥(Bridge) 链路层 分割冲突域,网络性能提升
路由器(Router) 网络层
网关(Gateway) 应用层
4 IP编址
1. IP地址—通用标识 唯一标识互联网上的主机或路由器
32位地址,常用点分十进制表示
2. IP地址分类
A类:0 Net^7 Host^24 0.0.0.0 ~ 127.255.255.255 单播
B类:10 Net^14 Host^16 128.0.0.0 ~ 191.255.255.255 单播
C类:110 Net^21 Host^8 192.0.0.0 ~ 223.255.255.255 单播
D类:1110 Multicast 224.0.0.0 ~ 239.255.255.255 多播
E类:1111 Reserved 240.0.0.0 ~ 255.255.255.255 保留地址
3.特殊IP地址
①网络地址:Net id特定,Host id全0
②直接广播地址:Net id特定,Host全1
③受限广播地址(源所在的网络内广播):255.255.255.255
④本网络上的本主机:0.0.0.0 获取地址时临时使用
⑤环回地址:127.xxx.xxx.xxx 测试机器软件
5 构成子网和超网
1.构成子网(subnetting):将一个IP类网划分几个较小的子网(subnet),多个物理网共享同一个IP类网前缀
构成:三层结构(Net id + Subnet id + Host id)
子网地址:特定的Net id + Subnet id + 全0的Host id
子网广播地址:特定的Net id + Subnet id + 全1的Host id
2.掩码(表示子网的大小):全1的Net id + Subnet id + 全0的Host id
位与运算:①网络地址=IP地址 & 掩码
②主机地址=IP地址 & 掩码的反=IP地址-网络地址
③地址范围=(网络地址,网络地址+掩码的反)
3.默认掩码 VS 子网掩码
4.最小的IP子网的掩码=255.255.255.252(4个IP地址中只有2个主机地址)
变长子网划分所需IP地址个数=主机数+路由器数+2个特殊地址
5.构成超网(Supernetting):偶数个C类网合并+地址块连接
方法:将Net id中的某些1改为0
6 IP组的交付和路由选择
1.交付(Delivery):对分组的物理转发
路由选择(Routing):为分组寻找路由
2.面向连接(虚电路):建立时选路 VS 无连接(数据报):每个分组独立选路
3.直接交付(目的IP-物理地址):分组目的和分组发送接口在同一IP网络中
间接交付(下一跳IP-物理地址):分组目的和分组发送接口在不同IP网络中
交付方式判断:目的IP & 发送口掩码 = 发送口IP & 发送口掩码
4.静态路由选择(手动更新) VS 动态路由选择(路由协议自动更新)
5.路由选择算法:用IP分组中的目的IP地址查找路由表,使用匹配表项的下一跳IP地址完成
匹配条件:目的IP & Mask(i) = Net(i) 顺序查找
7 网际协议(IP) 无连接、不可靠
1.数据报(datagram):信息字段(版本4+长度20+服务类型8)+分片控制字段(标识16+标志3+片偏移13)+生存时间字段(TTL8+协议8+校验和16)+源IP地址(32bits)+目的IP地址(32bits)
2.分片:仅有路由器操作 data+header<=MTU
重组:仅有目的主机操作
8 ARP和RARP
地址解析:逻辑地址à物理地址
1.ARP(IPàMAC):主机发送一个包含目的IP的请求,以广播形式在物理网内扩散。网内所有主机检查是否与目的IP相匹配,若匹配则将自己的MAC地址返回给请求者
①ARP缓存表永远认为新的就是正确的,直接更新
②只有ARP请求和ARP应答才能更新缓存表
2.RARP(MACàIP):广播发送请求,sIP和tIP不填,sMAC=tMAC;RARP服务器单播发送应答
用途:无盘机器的引导,动态IP地址配置
9 ICMP
1. IP的辅助协议,为IP提供差错报告机制。为其它层(TCP/UDP 应用)提供辅助功能 。
2. ICMP在IP之上实现,逻辑上与IP同在网络层。与IP传递过程一致,无连接通信。ICMP差错报告只能送给IP分组的源站,沿途的转发路由器不能获知ICMP报文内容。
10 UDP用户数据报协议 无连接、不可靠
1.端点(endpoint)=协议端口(port)+IP地址
2.校验和:伪首部+UDP首部+数据
伪首部:根据IP首部的部分信息形成,不与UDP报文一起发送到网络上。进一步确保UDP报文送到正确主机的正确端口上。
11 TCP 面向连接、可靠、有缓冲、数据流
1.可靠性保证
(1)采用面向连接的通信方式;
(2)滑动窗口协议,以提高通信性能;
(3)携带确认方式;
(4)只有一种报文格式。
2.端口、端点概念与操作方式和UDP完全一样,通信双方抽象的虚电路连接(全双工)。
3.分割数据流产生报文段发送出去,接收处将报文段恢复成数据流
报文段采用序号标号,上一段序号X,长度L,则下一段序号为X+L
4.MSS(最大报文长度)影响网络传输性能
太小:降低网络利用率(报文开销)
太大:降低网络性能(分片降低成功传输概率)
5.窗口比例因子:针对高吞吐量和高时廷传输介质上的数据传输,增大窗口大小
比例因子max=16 最大窗口大小=2^32
6.差错控制
检测:校验和、确认、超时
纠正:重传
7.确认机制—带重传的肯定确认
接收方收到正确的数据后,向源站回送ACK报文。
源站一段时间未收到ACK报文,发送方重传错误数据(受损报文,丢失报文)
累计确认:ACK number是接收方希望接收到的下一个字节,对ACK number以前的所有字节的确认
8.超时重传机制
发送方发送数据时启动一个定时器,定期期间,发送方收到确认后,再发送后续数据;定期期满,发送方重传未确认数据(受损报文,丢失报文)
问题1:重复报文段(精确估计报文往返时间RTT)
问题2:失序报文段(直到收到报文之前的所有报文再确认)
9.TCP的流控:收发速率匹配,防止接收方被数据流淹没
方法:收发速率匹配—滑动窗口协议
TCP的拥塞控制:表现为接收时廷增加,超时重传机制会进一步加重网络拥塞
方法:减少报文段的发送量—滑动窗口协议
10.窗口:发送方在收到确认前,其发送缓冲区可以发送的数据流长度
滑动:随着确认的不断到达,窗口也不断的向后移动
动态可变窗口:发送窗口大小可变
①超时重传:动态可变窗口导致重传报文与原报文不一致
②流量控制:窗口机制可能不会立即起作用,无法确切知道和防止拥塞
③拥塞避免:发送窗口=min(窗口通告值,拥塞窗口)
没有收到确认,加速递减;收到确认后,慢启动
糊涂窗口综合征(SWS):通信双方的应用进程以不同速率工作时,会出现严重的性能问题。
11.三次握手,四次挥手
12.UDP和TCP的特点比较
UDP:无连接、不可靠、无拥塞控制、报文、支持多目标并发通信
TCP:面向连接、可靠、有拥塞控制、数据流、点对点通信、全双工
12 路由协议
1.Metric(度量):衡量路径的长短
Convergence(收敛):采用特定路由协议的所有路由器对整个网络拓扑具有一致性的认识
2.自治系统(AS):处于一个管理机构控制下的网络和路由器集合
内部网关协议:RIP(距离向量路由算法D-V)、OSPF(链路状态路由算法L-S)
外部网关协议:BGP-4
3.RIP选路信息协议:周期性向邻居路由器发送自己的路由表,封装在UDP中
计算路径:累计距离向量
Version1通告信息:IP地址+到达目的的跳数(先加1再发送)
问题:路由环路&无限计数
解决方法:触发更新、水平分割、毒性逆转、抑制定时器
4.OSPF开放最短路径优先:事件驱动,向整个区域内的路由器发布链路状态通告分组(LSA),封装在IP分组中
计算路径:SPF-最短路径优先算法
OSPF Tables:邻接表、链路状态数据库,转发表
操作步骤:①建立路由器邻接关系;②选择DR/BDR(可选);③路由发现;④选择适当路由;⑤路由信息维护
5.RIP VS OSPF
①网络拓扑:RIP只了解自己的邻居和可到网络,OSPF了解整个网络;
②路由计算方法:RIP跳数累加,OSPF计算最短路径优先树
③路由更新方式:RIP周期更新+触发更新,OSPF事件驱动更新
④路由更新内容:RIP更新自有的所有,OSPF只更新有变动的
⑤收敛速度:OSPF快于RIP
⑥适用环境:OSPF适用规模大于RIP
6.BGP-4边界网关协议:封装在TCP中可靠传输,基于策略的选路——路径属性
13 客户/服务器模型
1.一个server可以同时向多个client提供服务,一个client不可以同时向多个server请求服务
2.循环:程序一个接一个的运行,使用UDP服务器
并发:同时运行多个程序,使用TCP服务器
14 BOOTP和DHCP
1.BOOTP引导协议,静态配置协议(服务器上预先设置了客户端物理地址和IP地址的绑定),引导无盘计算机或第一次启动的计算机
2.DHCP动态主机配置协议:静态IP池+动态IP
15 DNS
1.域名:用.分开的标号序列(节点à根的顺序)
域:域名空间中的一颗子树
域名服务器:存放所授权区的信息
区:一个域名服务器所负责或授权的范围
2.DNS解析:将域名映射到IP地址
反向查询:将IP地址映射为域名
方法:递归解析(更优)、迭代解析