计算机网络是互连的,自治的(无主从关系)计算机集合
组成:硬件,软件,协议
功能:
1.数据通信
2.资源共享(共同使用打印机)
3.分布式处理(多台计算机共同承担同一任务)
4.提高可靠性(可用替代机)
5.负载均衡(计算机更加亲密)
工作方式:边缘部分,核心部分
功能组成:通信子网(传递数据);资源子网(包装数据)
按范围分:广域网,城域网,局域网,个人区域网
按使用者:公用,专用
按交换技术:电路交换,报文交换,分组交换
按拓扑结构:总线,星,环,网状
按传输技术:广播式网络,点对点网络(p2p)
标准化工作:法定标准(OSI);事实标准(某些公司的产品在竞争中占据了主流tcp/ip)
RFC要上升为因特网的四个阶段:1.因特网草案;2.形成rfc文档,建议标准;3.草案标准;4.因特网标准
相关组织:ISO(国际标准化组织);ITU(制定通信规则);IEEE(国际电气电子工程师协会);IETF(负责互联网标准的制定)
性能指标:
1.速率(比特率):一个人一个人进游乐园。
1Byte(字节)= 8bit(比特)
2.带宽(发送端):原指最高频率与最低频率的差,计算机网络中☞某一点到另一点所能通过的“最高数据率”,网络设备支持的最高速度
链路(信道)
3.吞吐量:单位时间通过某个网络的数据量
4.时延:延迟,分为发送时延,传播时延,排队时延,处理时延
- 发送时延:主机内部发生,和数据长度有关
- 传播时延:和信道长度有关,受介质影响
- 排队时延:等待输出/入
- 处理时延:检错,找出口
路由器就像机场的扫描器,要排队,排到了还要扫描,这就好比排队时延,处理时延
5.时延带宽积:描述信息量,相当于一个时间变量乘一个数据传输速度=数据量
6.往返时延RTT(Round-Trip Time),rtt越大,即我等的越久,我发送的数据越多
7.利用率:信道利用率:网络利用率
分层结构:解决信息传送的一系列问题,把每个小问题包装为一层,以求徐徐图之。
基本原则:独立;界限清晰;用最合适的技术实现;上层单向使用下层的服务
服务是单向垂直的,协议是双向水平的。
语法,语义,时序(同步):
🙅套娃,相邻层有接口
数据包:
数据帧:
七层模型:领导层😂,不同的快递车就是MAC地址
网线断了:物理层
Mac地址冲突,ADSL(交网费上网,类似光纤),网速没办法协调一致,连接到错误的vlan(虚拟局域网):数据链路层
配置错误的ip地址,子网掩码,路由器没有配置到达:网络层
应用程序配置错误:应用层
封装过程:FCS检验
物理层(傻瓜层)
解决如何在连接各种计算机的传播媒体上传输数据比特流,不指具体的传播媒体;主要任务:确定传播媒体的接口的特性。
- 机械特性:接口形状,大小
- 电气特性:电压范围(-5v到+5v)
- 功能特性:-5v表示0,+5v表示1
- 过程特性:规定各个相关部件的工作步骤
数据通信:
码元:一定时间段里的波形,一码元其携带的信息量可以是多位的,比如6v,转换为二进制是110,在图上表示为高高低。
信道:一个方向传送信息的载体
半双工通信:两端都可发送信息,但不能同时
全双工通信:可同时发送信息
基带(baseband)信号,带通信号:带通信号传的远,基带信号来自信源,传不远
单极,双极,归零,不归零:归零的每次变化后,信号都要立即归零
0信号与无数据:这两种情况表现一样,但意义却不一样,为了区分这些,用曼切斯特编码,使得0也是有变化的
信噪比:
信道极限容量:实际的信道会带宽受限,有噪声,干扰,失真
物理层下的传输媒体:
-
双绞线
屏蔽双绞线 STP
无屏蔽双绞线 UTP
-
同轴电缆
50欧同轴电缆用于数字信号传输
75欧用于模拟传输
-
光缆
信道复用技术:
1.频分复用:用户分配一定的频带后,至始至终都用这个频带
2.时分复用:TDM帧
3.波分复用:就是光的频分复用
4.码分复用
宽带接入技术:xDSL非对称数字用户线路,拨号上网
数据链路层(路人)
动态分配信道:
1.轮询访问介质访问控制:令牌传递协议
2.随机访问介质访问控制:ALOHA(不听就说,不按时间槽发送,随机重发),CSMA/CA(先听再说),CSMA/CD(先听再说,边听边说)
CSMA/CA:碰撞避免,无线局域网,先听等一会再说(有礼貌)
CSMA/CD:碰撞检测,有线局域网
相同点:先听再说,先监听
GBN弊端(后退N帧协议):一旦出错就会全部重传
解决措施:滑动窗口,滑动窗口不能过大,接收方不能确定传来的是新帧还是重传的帧
PPP协议:点到点协议,简单,封装成帧(帧定界符),透明传输,满足多种网络协议,差错检测
LCP链路控制协议:身份验证
NCP网络控制协议:不是NPC,每个不同的网络层都要一个对应的NCP来配置
HDLC:高级数据链路控制,面向比特,每五个一插个零
汉明码:发现双比特错,纠正单比特错,动一数而牵全身,先根据公式求出冗余位,冗余位只能插入到二的几次方,再找对应的数进行异或运算
链路层扩展以太网:网桥是前期的交换机,交换机是更多接口的网桥
从层次上来看数据的流动,通信协议控制数据的传输,把实现这些协议的软件和硬件加到链路上,就构成了数据链路
点对点信道,广播信道;
数据链路层传送的是帧:加上帧头,帧尾,好比火车头,火车尾,可以明确哪里是开始,哪里是结束
三个基本问题
1.封装成帧
用控制字符进行帧定界,加头加尾
2.透明传输
凑巧中途出现了帧结束的标记,会破坏数据的完整性,用字节填充法,ESC相当于转义字符
3.差错控制
比特差错:0可能变为1,1可能变为0;BER(bite error rate)
CRC循环冗余检验:同零异一
PPP协议帧格式:支持实名认证,点到点
以太网最初是将许多计算机都连接到一根总线上,不安全;黑客若是想要全部数据全盘接受,而恶意抓包,这将会导致数据的泄露
二进制指数类型退避算法:网卡里的算法
以太网(802.3局域网)
以太网是应当符合DIX Ethernet V2标准(和IEEE 的802.3很像)的局域网
以太网提供的服务是不可靠的交付,即尽最大努力的交付,不提供纠错
致命的优点“比ATM网,令牌环网便宜,满足网络需求
扩展以太网:
1.距离扩展,光纤
2.集线器级联 变成大的冲突域了,效率降低了
3.网桥:当网桥收到一个帧时,并不是向所有接口转发此帧,而是先检查目的 MAC地址,有灵性,后来就变成交换机了(安全,可通过学习构建MAC地址表)
MAC地址(适配器)
硬件地址,48位二进制,全球唯一,我们看到的是16进制,高位24位是IEEE的注册管理机构向厂家分配的;处理三种帧:单播帧,广播帧,多播帧
网络层(大佬)
电路交换,报文交换,分组交换:
数据报方式:无连接服务,没有确定的路径(因特网在用哦!)
虚电路方式:连接服务
分类的IP地址弱点:利用率低,两级IP地址不够灵活
子网划分:多余的高位的主机号作为子网号,本单位外的网络看不到单位内的子网划分,自己决定子网
子网掩码:为了隐藏单位内的子网号,因为子网只是自己划分的,在整个大的互联网中毫无意义,子网掩码与IP地址做与运算
路由器:具有多个输入输出端口的专用计算机,其任务是分组转发,属于三级设备
数据分包,接收到的数据包顺序不确定,且路径也不确定
一个区域使用一个网段,通过看子网掩码,几个255,就是几位的网络层(通常是拿这个子网掩码,去和原IP地址,目标IP地址比较,来判断各自的网段);ip号的第一位往往给网关,这是个不成文的规定;要看路由器划分网络,集线器只是对网络的扩展(傻瓜设备),跨网段通讯必须配网关
**ARP广播:**向交换机发广播包,随后交换机会向连接它的所有接口发送请求,要求每个接口返回自己的MAC地址;广播的范围只能是一个网段内
ARP缓存:记录IP与MAC的映射,这样方便在局域网中解决MAC的问题
who has x.x.x.x?:ARP是这样广播的,可爱
ARP欺骗:中间人欺骗,中间商赚差价
p2p终结者:控制本网段,也是利用ARP欺骗
交换机工作在第二层,二层设备;路由器是三层设备;集线器啥也看不懂,傻瓜设备
路由器,交换机能有病毒吗?
显然不能,病毒也是切成小段小段,且没有运行环境,所以是不能中病毒的,但是可以影响网络,占用带宽。病毒“瞧不起”,连运行环境都没有。
ICMP:
1.差错报文:终点不可达;时间超过(判断TTL是否等于零);参数问题;重定向(可通过更好的路由)
2.询问报文:ping命令,测试目的站点是否可达以及了解其状态
PING:(packet internet grope)因特网包探索器,TTL(time to live)叫生存周期,每过一个路由器减一,防止在网有循环的传输,“踢皮球”
pathping:跟踪数据包路径,计算丢包情况
Traceroute:跟踪源点到终点的路径
请求超时:包过去了没回来
组播=多播:局部广播,应用于UDP(快速,实时),范围D类地址224.0.0.0~239.255.255.255,需要映射MAC地址,IGMP协议(组播路由管理协议):判断相邻的路由是不是连接着组播组
抓包分析数据包的头部:
版本:ipv4,ipv6
首部长度:规定头的长度,很少用到
区分服务:加个标记,确定优先级,消息有急有缓
网络层将过于大的数据包分片,分片后的数据,在传输过程中,路由器是不知道你分还是没分
泪滴攻击:向目标计算机发送损坏的IP包,通过TCP/IP中分片重组代码中的bug来瘫痪操作系统
**标识:**超过MTU(最大传输单元)进行分片,让每个分片知道自己是属于哪个数据包的
**标志:**最低位(MF more fragment)是1表示还有分片,0表示是最后一个分片;DF(don·t fragment)是中间的那一位,DF=0时,才允许分片
**片偏移:**可以确定这个片在整个数据包里的相对位置
生存时间:time to live(TTL),经过一个路由器减一
协议字段:指定什么协议,TCP很溜(6)还是UDP容易遗弃(17)
、
首部检验和(check sum):只检验首部,不检验数据部分
可选字段:IPV6就没有了,是固定长度的
填充:全零,把首部补齐,一家人要整整齐齐的
静态路由,动态路由:动态路由是路由器根据协议自行“学习”;静态是写死的,适用于小型网络
静态路由算法:路由更新慢
动态路由算法:路由器间彼此交换信息,优化出最佳路由表项;全局性(OSPF),分散性(RIP)
DHCP协议:动态主机配置协议,发现报文,提供报文,请求,确定
网络畅通的条件:数据包有去有回
IP协议:是统称,一系列协议的集合
内部网关协议IGP:
- RIP:周期性广播路由表【30s】,根据跳数最少的原则选择,最大跳数15
- OSPF:要交换的信息量大,直接采用IP,具有全局性的,根据代价最低的原则,使用分布式的链路状态协议,交换链路状态信息,每当链路状态发生改变时,向所有路由器洪泛发送此信息
外部网关协议:和zookeeper有点像,AS(自治系统)
移动IP:以固定的网络IP地址,实现跨越不同网段的漫游功能,并保证网络权限不发生任何改变
分类的IP地址:
IPV6:从根本上解决地址耗尽的问题,改进首部格式,快速处理,支持Qos
地址表示形式:
过度策略:
1.双栈协议:同时支持IPV4,IPV6
2.隧道技术:重新封装,在传播中v4可变为v6,v6可变为v4
私有IP地址:虽然是私有的,但也可以通过某种技术(子网掩码)达到与外部连接的效果
A类:1个网段
B类:16个网段
C类:256个网段
NAT:网络地址转换,专用网连接到因特网的路由器上安装的NAT软件,安装NAT软件的路由器叫NAT路由器,至少提供一个有效的外部全球IP地址,在经过这个路由器的时候,根据转换表更换IP和端口号
传输层
TCP:需要建立会话,文件分段,可靠传输,数据较大,提供全双工通信,面向字节流,点对点
UDP:一个数据包搞定,数据较小,不需要建立会话(无连接),不可靠,屏幕广播,丢两帧不影响播放(无拥塞控制)
端口:进程对外界的入口,只具有本地意义,不同的计算机是没有联系的
TCP,UDP协议的作用范围:提供进程间的逻辑通信
IP协议作用范围:主机间的逻辑通信
UDP首部:开销小,8字节(64位),16位源端口号,16位目的端口号,16位UDP长度,16位UDP检验和(伪首部+首部+数据部分采用二进制反码求和)
ARP(automatic repeat reQuest):自动重传请求,表明重传的请求是自动进行的,接收方不需要发送方重传某个出错的部分,不叫ARR太尴尬了。
TCP的可靠传输:
数据偏移:表明多少位以后是数据
确认号:确认了我收到了你发的多少个数据,你给我发下一个就行,且是连续的,如果断开的话,断开后的数据,即使收到也没用
窗口同步,通过实时的反应调整窗口大小,以达到流量控制
三次握手建立TCP连接:
A:“你能听到我说话吗?”
B:“我能,你能听到我说话吗?”
A: “听得见”
SYN洪泛攻击:SYN是三次握手中的第一个数据包,当服务器返回ACK后,该攻击者就不对其进行再确认,那这个TCP连接就处于挂起状态,服务器收不到确认,就会一直发送ACK。就这样形成半连接状态,大量的半连接会使服务器死机。
四次挥手:分手吧/好/祝你幸福/祝你幸福
流量控制:控制发送方,利用滑动窗口机制(改变rwnd来控制发送方),rwnd接收窗口,ACK=1表示确认号有效,ack确认号
TCP会为每一个连接设有一个持续的计时器,时间一到就会发送一个零窗口探测报文段,接收方收到此报文段给出现在的窗口值
拥塞控制:防止过多数据注入到网络,发送方减速
四种算法:假定数据单方向传输,接收方有足够的空间来接受,发送窗口取决于拥塞程度
1.慢开始:爆炸增加
2.拥塞避免:线性的慢慢加
3.快重传:收到三个重复的确认触发
4.快恢复:不降到最低
应用层
DNS;就像一个数据库,存有所有网站的ip,负责解析域名
顶级域名:com,edu,net,cn,org,gov(表明性质)
二级域名:个体可以注册的
三级域名,四级域名都可以,只不过别人访问起来麻烦
主从结构:只要查不到,都去根DNS服务器去解析,13个顶级域名服务器
DHCP:动态主机配置
静态IP地址:计算机较固定,看位置就可分辨
动态IP地址:IP地址不固定
DHCP客户端必须为静态地址,为本地网络分地址,每个网段都需要一个作用域
FTP协议:
TELNET:远程终端协议,通过网络远程控制
RDP:Remote Desktop Protocol远程桌面协议,输用户名密码来登别人的桌面
电子邮件系统:假脱机
SMTP(简单邮件传送协议):建立在TCP上,规定两个相互通信的SMTP进程之间如何交换信息,发邮件的就是客户,收邮件的就是服务器
过程:
- 建立连接
- 邮件发送
- 连接释放
缺点:MIME扩展SMTP的局限
POP3:邮局协议,同样建立在Tcp协议上
工作方式:下载并保留(在服务器),下载并删除
IMAP:比pop3复杂,当打开IMAP服务器邮箱时,用户可以看到邮箱首部,若要打开某个文件,该文件才上传到用户计算机(预览头部信息)
基于万维网的电子邮件:
万维网
world wide web:是一个大规模,联机的信息储存空间,是无数个网络站点和网页的集合,依靠url(统一资源定位符),使用html来展示界面
过程:
HTTP特点:
1.无状态的,但在实际工作中,往往希望网络站点可以识别用户,例如淘宝,这就诞生了cookie
2.无连接,采用TCP连接
DNS系统
通过域名来进入网站,记ip地址不太现实
域名服务器:
根域名服务器:13个
顶级域名服务器:org,com,edu
权限域名服务器:更具体
本地域名服务器:DNS缓存,主机发出DNS请求时,优先去本地查询,查不 到到再去问根域名服务器
域名解析系统:递归查询(靠别人,根查询完后,接着往后查询);迭代查询(靠自己,根查询完后,到本地去查);两者相同的是,本地的高级缓存找不到,先去根域名服务器