一、网络工作模型
1. OSI七层模型
OSI七层模型:(开放式系统互联参考模型 )是国际标准化组织(ISO)和国际电报电话咨询委员会(CCITT)联合制定的开放系统互连参考模型,为开放式互连信息系统提供了一种功能结构的框架。
第七层 应用层 :抽象语言(人类语言)的键入和输出 —>编码
第六层 表示层 :编码(使用各种编程软件所编写的代码) —>二进制(计算机可识别的语言)
第五层 会话层 : 应用程序内部地址,区分程序内的各个会话;(提供会话地址,建立应用程序端到端的会话)
(上三层:应用程序处理加工数据的层面 ,上三层统称"应用层")
(下四层:负责数据的传递和转发,下四层被称为"数据流层")
第四层 传输层 :使用TCP/UDP协议传送; 提供端口号、数据分段(受MTU限制)
第三层 网络层 : Internet 协议–IP 在网络层进行数据传输出共享
第二层 数据链路层 = LLC(校验)+MAC(控制物理层) 介质访问控制–控制物理设备 (LLC 逻辑链路控制层 、 MAC介质访问控制层,这两层被合并为同一层称为”数据链路层“)
第一层 物理层 : 实质的物理硬件,用来处理光电信号。
小tips:
数据链路层的核心作用在于控制物理层设备;因为物理设备不能自动工作的;需要程序控制;
由于大部分网络环境物理层均使用以太网技术,故数据链路层的思考大多基于以太网的二层封装来进行;
以太网二代帧头部:
仅以太网技术在二层使用MAC地址进行物理寻址;
2.网络增大
(1)传输距离的延长
使用中继器(放大器)物理加压。
(2)节点(终端)数量的增加
HUB集线器
3.网络增大过程中的升级要求:
无线传输距离;无冲突—所有节点可以同时收发自己的数据;单播;
针对以上三个要求,发明了 “交换机”
4.网络扩大 — 无限距离、无冲突、单播 —> 交换机 —> MAC地址 —> 洪泛 —> 洪泛的范围 —> 路由器 —> ip地址 —> ARP —> 广播 —> 广播域(洪泛域)
二、集线器HUB
1.HUB概念
在实现网络节点(终端)增加的时候 可以使用HUB集线器,但是其增加传输的距离有限且不能够保证安全,延时,等问题所以现在已经被淘汰。
2.集线器环境下的问题:
安全 、延时 、地址 、冲突
地址: MAC地址(工作在介质访问控制层) — 网卡芯片的出厂ID — 48位二进制构成 – 16进制标识 全球唯一,出厂烧录到网卡
冲突:CSMA/CD 载波侦听多路访问/冲突检测 — 排队 —延时增加 依旧存在冲突概率
3.网桥
网桥又称桥接器,英文名Network Bridge,数据链路层设备。它也是转发数据包的设备,但和HUB不一样的是,它工作在数据链路层,HUB只能看懂物理层上的东西(比如一段物理信号),网桥却能看懂一些帧的信息(在链路层上,把上面传下来的数据封装后,封装好了的数据就是帧,但这里我用“数据包”这样的泛指去代替“帧”这个专业术语)。在以太网构造的局域网上,最终的寻址是以数据链路层的MAC地址作为标识的(就是用MAC地址可以在局域网上找到一台唯一的机器),网桥能从发来的数据包中提取MAC信息,并且根据MAC信息对数据包进行有目的的转发,而不采用广播的方式,这样就能减少广播风暴的出现,提升整个网络的效率。
三、交换机
1.交换机实现的功能:
(1)与集线器一样提供端口密度(继承了HUB的作用),用于更多的用户接入
(2)基于数据识别再转发,实现了理论上的无限传输距离
(3)基于数据识别、存储再转发,所有节点可以同时收发自己的数据,解决了冲突问题
(4)基于MAC地址识别、记录、查询,实现了(一对一)单播通讯
由于交换机工作在介质访问控制层,故可将电流识别为二进制数据,再重新转换为电信号,来实现无线传输距离;
通过识别数据,存储数据再转发的逻辑来解决冲突;
通过记录数据帧中的MAC地址对应接口,来唯一转发到目标,实现单播;
2.交换机的工作过程:
数据电流进入交换机后,交换机先将其识别为二层二进制;之后通过识别数据帧中的源mac地址,记录到本地的MAC地址表中;(MAC表中记录各个MAC对应的接口)之后再关注数据帧中的目标MAC地址,再查询本地MAC表中是否有其记录,若存在记录,仅基于记录的接口唯一转发(单播); 若没有记录将进行洪泛;
四、路由器
1.概念
路由器(Router)是连接两个或多个网络的硬件设备,在网络间起网关的作用,是读取每一个数据包中的地址然后决定如何传送的专用智能性的网络设备。它能够理解不同的协议,例如某个局域网使用的以太网协议,因特网使用的TCP/IP协议。这样,路由器可以分析各种不同类型网络传来的数据包的目的地址,把非TCP/IP网络的地址转换成TCP/IP地址,或者反之;再根据选定的路由算法把各数据包按最佳路线传送到指定位置。所以路由器可以把非TCP/IP网络连接到因特网上。
2.路由器的作用
不同网络间的互联
为它所承载的数据做路径的选择 — 选路
3.路由器的工作原理
接收到一段比特流后,先识别成二层数据帧;查看目标mac地址,之后丢弃或解封装;解封装到三层后,关注目标ip地址,查询本地的路由表;若表中存在记录将无条件按照记录重新封装二层后转发;若没有记录将丢弃该流量;
[r1]display ip routing-table 查看路由表
默认:1、仅存在直连网段的路由 2、路由器默认以一个网段作为目标
非直连网段为未知网段;获取未知网段的方法:
静态路由 – 手写
动态路由 — 路由器间协商、沟通、计算自动生成
五、名词注解
1.ARP 地址解析协议
(已知对端的某一种地址,获取另一种地址)
(通过对端IP地址获取对端的MAC的行为需要用到广播机制)
(1)AARP—正向ARP:
已知同一网段其他节点设备的IP地址,通过二层广播(目标MAC全F)的形势来获取对端MAC地址;
(2)反向ARP:
已知本地的MAC,通过对端来获取本地的IP地址;
(3)无故ARP:(免费ARP)
在设备刚获取或使用IP地址,将主动向外进行一次正向ARP,被请求的IP地址,为本地的IP地址;其作用在于检测该网段内使用存在其他节点和本地使用相同的IP地址(地址冲突检测)
(4)代理ARP:
如果ARP请求是从一个网络的主机发往同一网段却不在同一物理网络上的另一台主机,那么连接它们的具有代理ARP功能的设备就可以回答该请求,这个过程称作代理ARP(Proxy ARP)。
2.DNS – 域名解析服务
该服务器记录各个网站IP与对应的域名;访问域名时需要DNS服务器解析出对应的ip地址,之后客户端可以进行访问;用于终端查询和解析;
DNS在进行区域传输的时候使用TCP协议,其它时候则使用UDP协议。
DNS的规范规定了2种类型的DNS服务器,一个叫主DNS服务器,一个叫辅助DNS服务器。
3.
洪泛:除流量的进入接口外,其他所有接口复制转出;
IP地址:是由网络位与主机位共同组成;前部分为网络位,标记对应的洪泛范围(广播域);后部分为主机位,标记在该范围内的唯一性;每个ip地址后均携带一个子网掩码,子网掩码在于进行区分ip地址中网络位与主机位。
IPV4地址:32位二进制构成,点分十进制标识。
ABCDE分类,其中ABC为单播地址;D组播;E保留地址
ABC虽然均为单播地址,但基于默认的掩码长度再ABC三种;
广播:迫使交换机进行洪泛行为(目标MAC全F,该MAC在网络中实际不存在)
分段:超大数据包在网络中无法与他人共享带宽,将出现带宽抢占,导致数据包损坏,重传,大大增加网络的延时;故必须对数据包进行分段;分段时需要受到MTU限制。
MTU:最大传输单元 --默认1500字节
端口号:用客户端区分进程 、 服务端区分服务
范围: 0-65535
1-1023为注明端口,用于标记固定的服务器的服务端口
1024-65535 为随机端口号(动态端口,高端口),用于标记终端的各个进程
客户端访问服务端时,客户端随机使用高端口作为源端口号来标记本地的进程;使用注明端口号作为目标端口号来对应服务;
80 http 443 https 53dns 21 ftp 22 ssh 23 telnet .....
4.UDP(用户数据报文协议)
非面向连接的不可靠传输协议 — 仅完成传输的基本工作 — 分段、端口号
UDP报头如下:
5.TCP:传输控制协议
面向连接的可靠传输协议—在完成传输层的基本工作之上,还需要进一步的保障传输的可靠性
面向连接:在传输数据前,需要通过TCP的’‘三次握手’'建立端到端的虚链路;
可靠传输:4种可靠机制 – 确认、重传、排序、流控(滑动窗口)
TCP报头如下:
TCP的三次握手:
TCP建立连接时要传输三个数据包,俗称三次握手
第一次握手:由客户端发出SYN标志符请求与服务器建立连接。随机产生一个值seq=J,并将该数据包发送给服务端,客户端进入SYN_SENT状态,等待服务端确认。
第二次握手:由服务端回复ACK确认报文给客户端,确认服务端的接收能力与客户端器的发送能力没有问题并为此次链接分配资源。服务端收到数据包后由标志位SYN=1知道客户端请求建立连接,服务端将标志位SYN和ACK都置为1,ack=J+1,随机产生一个值seq=K,并将该数据包发送给客户端以确认连接请求,服务端进入SYN_RCVD状态。
第三次握手:再次由客户端来发出ACK报文回复服务端,确认客户端的接受能力与服务器的发送能力没有问题并建立连接。客户端收到确认后,检查ack是否为J+1,ACK是否为1,如果正确则将标志位ACK置为1,ack=K+1,并将该数据包发送给服务端,服务端检查ack是否为K+1,ACK是否为1,如果正确则连接建立成功,客户端和服务端进入ESTABLISHED状态,完成三次握手,随后客户端与服务端之间可以开始传输数据了。
TCP的四次挥手:
TCP的四次挥手是断开连接时的四个过程,它让计算机释放不再使用的资源。如果连接不能正常断开,不仅会造成数据传输错误,还会导致套接字不能关闭,持续占用资源,如果并发量高,服务器压力堪忧。
过程概述: a(数据传送完毕,请求断开连接。)
b(收到断开请求,请给我一点时间准备。)
b(我已经准备好了,可以断开连接了。)
a( 好的,谢谢合作。)
第一次挥手:客户端发送一个FIN结束标志符用来断开客户端到服务器的数据传送。客户端发送一个FIN,用来关闭客户端到服务端的数据传送,客户端进入FIN_WAIT_1状态。
第二次挥手:服务器收到FIN结束标志符后,发送ACK确认报文回复给客户端。服务端收到FIN后,发送一个ACK给客户端,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号),服务端进入CLOSE_WAIT状态。
第三次挥手:服务器发送FIN结束标志符给客户端,用来断开服务器到客户端的数据传送。服务端发送一个FIN,用来关闭服务端到客户端的数据传送,服务端进入LAST_ACK状态。
第四次挥手:客户端收到FIN结束标志符后,发送ACK确认报文回复给服务器。客户端收到FIN后,客户端t进入TIME_WAIT状态,接着发送一个ACK给服务端,确认序号为收到序号+1,服务端进入CLOSED状态,完成四次挥手。
6.IPV4报头:
标准20字节,可扩展到60字节
7.TTL:生存时间
每个数据包存在初始的跳数寿命,基于目标系统为255、128、64间的一个数字,每经过一次路由器转发,该值减1,为0时数据包将不得再被传输;意义在于环路中可以将数据传递停止下来;
8.封装与解封装
封装:数据从高层向低层加工处理的一个过程;过程中数据包将不断变大;
解封装:数据从低层向高层的一个读取、识别过程,过程中数据将不断变小
9.PDU ( 协议数据单元 )— 每层数据的计量单位
上三层— 数据报文;传输层— 段; 网络层— 包;数据链路层-- 帧; 物理层 — 比特流(单位:bit)
10. TCP/IP 协议栈道模型,‘实际’工程使用模型。
TCP/IP 协议栈道是OSI模型的前身;也是当下真实运行的模型;
TCP/IP与OSI模型的区别:
1. 层数不同
2. TCP/IP 在3层仅支持IP协议,OSI支持所有网络层协议;
3. TCP/IP 支持跨层封装 -- 跳层封装
作用主要在于直连设备间协议,减少层面,加快计算;非直连间使用的跨层封装协议为 ICMP;
当跨层后,被跨层面的工作,必须由其他层面临时的来进行;
当没有传输层 — 应用层数据包直接跨层到网络层时;
IP报头将实施分片后,将数据填充到报头 – 取代分段 协议号–端口号
当没有传输层和网络层–应用层数据包直接跨层到数据链路层
若二层为以太网封装时,将不能再使用第二代以太网报头;必须使用第一代报头;
第一代以太网报头分成两个子层 ---- LLC逻辑链路控制子层+MAC介质访问控制子层
LLC为802.2报头 MAC为802.3报头
LLC负责分片和提供帧类型号
MAC负责正常的MAC地址和前导
11. OSI(开放式系统互联‘参考’模型)— 7层模型
12.带宽计算
速率 约等 (带宽/8)*85%
13. 两个设备正常的通讯,必须已知目标ip地址;ip地址的获取方式—1、域名 2、APP记录 3、管理员直接提供
14. PC 访问的目标ip地址与本地在同一网段
--- ARP 获取对端mac地址,获取失败放弃通讯,等待超时
获取成功后正常通讯
六、IP地址的分类
.
1.IPV4地址分类:
(32位二进制构成,点分十进制标识)
(11000000101010000000000100000001 === 192.168.1.1)
一个IPV4地址由两部分组成:网络位+主机位
其中网络位标记对应的广播域 主机位标记广播域内部的唯一性
一个ip地址的网络位与主机位识别方式依赖子网掩码
(1) ABCDE 5类
其中ABC为单播地址 D类为组播地址 E类保留,用于科研
(2)单播地址:在整个网络,每个地址均全网唯一;唯一及可以作为目标ip地址,也可以作为源ip地址的地址; 因此要给一台设备配置IP地址,必须为单播地址;
(3)基于ip地址的第一段(第一个8位)即可分辨其所在类别:
范围 默认子网掩码长度
A 1-126 255.0.0.0
B 128-191 255.255.0.0
C 192-223 255.255.255.0
D 224-239
E 240-255
2.特殊IP地址:
(1)IPV4地址中存在公有ip与私有ip的区别
(2)在每一段单播地址中,主机位全0:
eg:192.168.1.00000000 255.255.255.0 (其不是一个可用ip,不能配置为设备的地址;)
网络号,用于代表整个网段;
192.168.1.0 255.255.255.0 = 192.168.1.x 255.255.255.0
网络号简写:
192.168.1.0 255.255.255.0 = 192.168.1.0/24
(3)在每一段单播地址中,主机位全1;
192.168.1.11111111/24 = 192.168.1.255/24 (也不是一个可用ip地址;不能配置给设备使用;此地址为 直接广播地址;)
(4)32位全1
255.255.255.255 受限广播地址;受到路由器的限制,路由器将不转发该信息到
其他的广播域;
(5)32位全0 : 0.0.0.0
①没有DHCP时作为无效地址--代表没有 ②缺省地址--代表所有
(6) 169.254.0.0/16 本地链路地址 自动私有地址;
是终端通过多次广播DHCP请求后,依然没有任何的DHCP应答时,本地自动生成的临时ip地址;
其网络位固定为169.254,子网掩码为16位;主机位本地随机生成;
(7) 127 环回地址 win系统默认127.0.0.1
系统默认自动生成,用于测试系统的TCP/IP网络组建是否可以正常工作;
(8)注:只有单播地址及可以作为目标ip地址,也可以作为源ip地址;其他地址只能作为目标ip地址;— 故只要给一个设备配置ip地址,一定配置的是单播地址;
3. VLSM:可变长子网掩码 – 子网划分
通过延长子网掩码的长度,起到从原来主机位借位到网络位的效果;实现最终将一个大的网段,切分为多个小的网段;每个新生的子网,主机变少;增加网络号,减少每个网络号中的用户数量;提高地址的利用率;同时便于网络的规划和管理;
(将一个网段划分为多个子网后,在网络中该母网将不能配置为可用IP)
172.16.0.0/15 划分为4个子网:
172.0001000 00 0000000 00000000 172.16.0.0 172.16.0.1--- 172.16.127.254
255.1111111 11 0000000 00000000 255.255.128.0
172.0001000 01 0000000 00000000 172.16.128.0 172.16.128.1--- 172.16.255.254
255.1111111 11 0000000 00000000 255.255.128.0
172.0001000 10 0000000 00000000 172.17.0.0 172.17.0.1--- 172.17.127.254
255.1111111 11 0000000 00000000 255.255.128.0
172.0001000 11 0000000 00000000 172.17.128.0 172.17.128.1--- 172.17.255.254
255.1111111 11 0000000 00000000 255.255.128.0
4. CIDR无类域间路由-- 子网汇总
将多个小的网段,计算后合成一个网段;
取相同位,去不同位;
eg1:将192.168.1.0/24 ; 192.168.2.0/24 ;192.168.3.0/24; 合为一个网络。
192.168.000000 01 .0
192.168.000000 10 .0
192.168.000000 11 .0
取相同去不同: 192.168.000000 00.0/22 ---> 192.168.0.0/22
eg2:将172.16.33.0/24 ;172.16.44.0/24 ; 172.16.55.0/24 ; 172.16.63.0/24 ;合为一个网络
172.16.001 00001.0
172.16.001 01100.0
172.16.001 10111.0
172.16.001 11111.0
取相同去不同: 172.16.001 00000.0/19 ---> 172.16.32.0/19
子网汇总: 汇总后,汇总网段的掩码长于主类;
超网: 汇总后,汇总的网段的掩码短于主类掩码;