前言
本博客仅做学习笔记,如有侵权,联系后即刻更改
科普:
计算机网络基础
基本概念
- 计算机网络
分布各地的具有独立功能的计算机连接起来,通过协议通信,通过网络操作系统管理,实现资源共享的网络
- IP地址
网络中给予主机的一个标识符(类似于地址),可进行三层寻址
- MAC地址
网卡唯一标识符,二层寻址
- 封装/解封装
- 封装:目的是发送数据
将应用程序产生的数据,根据TCP/IP模型,层层封装为比特流发送出去- 解封装:读取特定的数据
将收到的数据,根据TCP/IP模型,层层解封装,最后给服务程序读取数据
TCP/IP四层和OSI七层模型
TCP/IP模型,即基于OSI的一个简化标准,TCP/IP模型为4层结构,即网络接口层(物理层+数据链路层)、网络层、传输层、应用层
- 物理层
即通信介质,光纤、模块、网线等看得见摸得着的东西,传递的是类似0101010的
bit流
- 数据链路层
封装为
数据帧
,基于MAC地址进行寻址,依赖于MAC地址表项
- 网络层
封装为
数据包
,使用IP地址进行寻址,依赖于路由表项以及ARP(地址解析协议)表项
- 传输层
封装为数据段,某个服务进程监听某个端口(NGINX服务端),或者使用自身随机端口去访问目标端口(NGINX访问DB)
- 应用层
即具体的服务应用,每一个协议对应到传输层一个提供服务的端口号,可以理解为具体的服务
- FTP(20、21),HTTP(80),WWW(21),DNS(53)
LAN/WAN
- LAN
局域网,距离短,通过高速链路介质与网络设备互联构成的一套传输网络,效率较高
广播域和冲突域
广播域
- 基于二层(数据链路层),一个主机发送广播包所能辐射的范围,路由器的一个关口
冲突域
- 基于一层(物理层),交换机下的一个端口或者hub端口
- 广播域可以跨网段,而冲突域只是发生的同一个网段的
网段,又叫潜在冲突域- HUB 所有端口都在同一个广播域,冲突域内
Swith所有端口都在同一个广播域内,而每一个端口就是一个冲突域
单播、广播和组播
单播
- 一对一通信,目的MAC:目的端主机的MAC地址
广播
- 广播域内的主机都可以收到广播报文,目的MAC全F
应用:免费ARP、DHCP的DISCOVER、REQUEST组播
- 一对多,组播组内主机,比如IPTV、实时数据传输、多媒体
应用:IGMP(维护组播组成员)、PIM(组播路由协议)
- WAN
广域网,Internet、跨地州、省市的骨干链路以及设备都可以理解为WAN,传输距离相对长,一般需要租用运营商链路
冲突域
- 定义
- 图示一个10BASE5以太网
各主机通过同轴电缆与其他主机通信,这里的同轴电缆又被称为共享介质,所以这是一个共享式的网络
在这个网络中不同的主机同时收/发数据时,就会产生信号冲突问题,而解决这一问题的方法就是CSMA/CD(载波侦听多路访问/冲突检测技术)
- CSMA/CD工作流程
总结为:先听后发,边发边听,冲突停发,随机延迟后重发
- 终端设备不停检测共享链路状态
如果空闲,则发送数据;如果不空闲,则等待一段时间后继续检测(等待的时长由算法决定);- 如果同时有另外一个设备发送数据,两个设备产生的数据会产生冲突;
- 终端设备检测到冲突以后,会停止发送数据
并发送特殊阻塞信息,以强化冲突信号,使线路上其他站点能够检测到冲突,;- 设备检测到冲突以后
等待一段时间,在进行数据发送(延迟时间又退避的算法决定);
- 双工
以太网的通信模式:半双工和全双工,同一链路相连的双方双工模式必须一致
- 半双工模式下
通信的双方必须采用CSMA/CD来避免冲突- 全双工模式下
通道是双向的这种模式不会产生冲突,所以不需要CSMA/CD;
基本组网
- 二层组网
二层网络(接入层),二层依靠MAC地址进行转发,无表项则洪泛,维护ARP、MAC地址表
MSTP+VRRP组网
ETH-TRUNK+CSS
- 三层组网
三层网依靠路由表项进行转发,无表项则丢包,维护路由表项、ARP表项
- 企业网组网架构
NGFW Module三层双机部署,交换机堆叠,策略路由引流
基本协议
- ARP
根据IP地址去查找相关的MAC地址,形成IP和MAC的对应表项,即ARP表
- ARP request(广播包)
- ARP respone(单播)
- 802.1Q
即vlan tag,局域网中可以分配不同的IP地址段,划分vlan进行逻辑隔离
- 每个vlan是一个独立的广播域,每个vlan会带上一个tag标记
- DHCP:
用于终端自动获取地址,C/S架构
DHCP +
- DISCOVER:
- OFFER:
- REQUEST:
- ACK:
- NAK:
- DECLINE:
- RELEASE:
- INFORM:
- DNS
用户将域名解析成对应的IP地址
- DNS结构
DNS结构为树状结构的命名方式
- 分为根域、顶级域、主域名、子域名
根域
- 知道所以有的顶级域名服务器和域名的地址;
顶级域
- 知道所有顶级域名服务器下注册的二级域名和IP地址;
主域名(二级域)
- 负责一个区的域名服务器;可以自己去申请,比如xxx.com;
子域名(三级域)
- 二级域下的子域名,比如主域名为xxx.com,则子域名可以是www.xxx.com/dev.xxx.com;
- DNS请求过程
递归查询
- 是指DNS服务器在收到用户发起的请求时,必须向用户返回一个准确的查询结果
如果该服务器中没有这个域名对应的IP地址信息,则会向其他服务器去查询,并将查询的结果返回给用户
迭代查询- 是指DNS服务器收到请求的时候,并不直接返回结果,而是告诉客户端可以去找另外一个DNS服务器
递归查询时,访问一个网站(qq.com)的详细过程:
- 浏览器打开wx.qq.com,客户端会发送一个DNS查询消息
- DNS服务器收到这个请求以后,查看自身的DNS缓存记录,是否有qq.com
有则直接返回A记录(wx.qq.com 对用的IP:X.X.X.X)
无,则向(.)根域名服务器区查询- 根域名服务器返回NS记录,告知.com需要去找顶级域名服务器
- 本地服务器根据NS记录去查询.com的顶级域名服务器
- .com的顶级域名服务器返回NS记录,告知qq.com这个域名的权威服务器地址
- 本地DNS服务器根据NS记录去向qq.com的权威服务器进行查询;权威服务器返回A记录(qq.com对应的IP:X.X.X.X)
- 本地DNS服务器查询到这个DNS记录以后,返回给客户端
- 客户端根据根据这个A记录,去访问域名对应的IP地址,返回数据
- 路由协议
静态static,动态(OSPF,BGP)
- 静态路由
手工添加,手工指引报文的三层转发,目的IP+掩码+下一跳IP地址- 动态路由
即所有三层节点共同运行一个协议,所有设备支持且需要共同遵守的一个协议规则,生成动态表项,从而计算出相应的路由表项
总结
小小励志
有些事你现在不做,一辈子都不会做了。
如果你想做一件事,全世界都会为你让路。
《搭车去柏林》