计算机网络

Ipv4地址和子网掩码

1 1 1 1 1 1 1 1 二进制

128 64 32 16 8 4 2 1 对照表

Ip地址是由四组二进制位组成的,每一组8位二进制之间都有一个点来隔开,这样IPV4地址加起来一共就有32位。

就二进制来说,每一组最低可以有8个0组成(0),最高由8个1来组成(255)

IP:网络号+主机号

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Pn2vPYrU-1653126696169)(C:\Users\何文强\AppData\Roaming\Typora\typora-user-images\1653100383861.png)]

例题:

IP:192.168.50.10

子网掩码:255.255.192.0

主机号?

子网掩码:255.255.192.0

11111111.11111111.11000000.00000000

IP:192.168.50.10

xxxxxxxx.xxxxxxxx.00110010.00000000

主机:50.10 网络部分:192.168

192.168.0.0/18

Ipv6

没有子网掩码

十六进制 0 1 2 3 4 5 6 7

二进制 0000 0001 0010 0011 0100 0101 0110 0111

十六进制 8 9 A B C D E F

二进制 1000 1001 1010 1011 1100 1101 1110 1111

16进制 0 d b 8

10进制 0 15 11 8

2进制 0000 1111 1011 1000

​ 0000:0000:0000:0000:0000:0000:0000:0001

相当于 0 : 0 : 0 : 0 : 0 : 0 :0 :1

相当于 ::1

例题:

2001:8000:0000:0000:0456:0000:0000:0000

2001:8000:0 :0 : 456:0 :0 :0

2001:8000::456:0:0:0

只能有一个双冒号

IPV6前64位为网络部分,后64位为接口ID

网络部分中前48为由网络提供商给到我们,后16为为子网

IPV6类型

1.全球单播 2000:😕/3

2.链路本地 FE80::/10

3.环回 ::1/128

4.未指明 ::/128

5.唯一本地 FC00::/7

6.内嵌IPV4 ::/80

BGP边界网关协议

自治系统就是处于一个管理机构(比如运营商)控制之下的路由器和网络群组的全体,它们对互联网执行共同的路由策略。

BGP( Border Gateway Protocol,边界网关协议)是一个路径矢量路由协议,和传统的基于下一跳的IGP协议不同,它是基于AS(自治系统)的协议。BGP属于外部网关路由协议,它解决的是AS之间的选路问题,如果把一个城市比作一个自治系统,那么像RIP、OSPF等协议就相当于该城市的公交车或地铁,而BGP则是火车,运行在城市之间。

IBGP:同一个AS内部的BGP邻居关系,IBGP邻居通常是指运行BGP协议的对等体两端均在同一个AS域内,属于同一个 BGP AS内部。

EBGP:AS之间的BGP邻居关系,EBGP邻居通常是指运行BGP协议的对等体两端分别在不同的AS内。

eBGP 外部网关协议 iBGP内部网关协议

TCP:179

  • 传输协议:TCP,端口号179
  • BGP是外部路由协议,用来在AS之间传递路由信息
  • 是一种增强的路径矢量路由协议
  • 拥有可靠的路由更新机制,无环路协议设计
  • 具备丰富的 Metric度量方法
  • 无须周期性更新
  • 路由更新时只发送增量路由
  • 周期性发送 Keepalive报文,以保持TCP连通性
在两个BGP建立会话的时候有4种基本报文类型

建立连接的OPEN报文

建立连接后交换和更新路由信息有UPDATE报文

中断,拒绝或者加入错误信息的NOTIFICATION报文

保持会话状态的KEEPALIVE报文

BGP在交互的过程还需要状态来方便会话的每一步执行

最初的时候就是ldle空闲状态

初始连接的时候是Connect连接状态

到了Active活跃状态时候就是进行TCP三次握手

发送报文后就是OpenSent状态

接着BGP会等待KEEPALIVE或者NOTIFICATION报文,此时是OpenConfirm状态

最后BGP会话进行连接的时候就是Established状态

BGP属性

Weight:越大越优

Local Preference:越大越优

AS Path:越少越优

Origin:IGP>EGP>INCOMPLETE

MED:越小越优

TCP三次握手和四次挥手

三次握手:

第一次握手:客户端发送syn包(seq=x)到服务器,并进入SYN_SENT状态,等待服务器确认;
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=x+1),同时自己也发送一个SYN包(seq=y),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP 连接都将被一直保持下去。

四次挥手:

与建立连接的“三次握手”类似,断开一个TCP连接则需要“四次握手”。
第一次挥手:主动关闭方发送一个FIN,用来关闭主动方到被动关闭方的数据传送,也就是主动关闭方告诉被动关闭方:我已经不 会再给你发数据了(当然,在fin包之前发送出去的数据,如果没有收到对应的ack确认报文,主动关闭方依然会重发这些数据),但是,此时主动关闭方还可 以接受数据。
第二次挥手:被动关闭方收到FIN包后,发送一个ACK给对方,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号)。
第三次挥手:被动关闭方发送一个FIN,用来关闭被动关闭方到主动关闭方的数据传送,也就是告诉主动关闭方,我的数据也发送完了,不会再给你发数据了。
第四次挥手:主动关闭方收到FIN后,发送一个ACK给被动关闭方,确认序号为收到序号+1,至此,完成四次挥手。

HTTP是什么

超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII形式给出;而消息内容则具有一个类似MIME的格式。这个简单模型是早期Web成功的有功之臣,因为它使开发和部署非常地直截了当。

2xx成功

3xx重定向

4xx客户端错误

5xx服务端错误

工作原理

HTTP是基于客户/服务器模式,且面向连接的。典型的HTTP事务处理有如下的过程:

(1)客户与服务器建立连接;

(2)客户向服务器提出请求;

(3)服务器接受请求,并根据请求返回相应的文件作为应答;

(4)客户与服务器关闭连接。

GET和POST的区别

1.get请求用来从服务器上获得资源,而post是用来向服务器提交数据;
2.get将表单中数据按照name=value的形式,添加到action 所指向的URL 后面,并且两者使用”?”连接,而各个变量之间使用”&”连接;post是将表单中的数据放在HTTP协议的请求头或消息体中,传递到action所指向URL;
3.get传输的数据要受到URL长度限制(最大长度是 2048 个字符);而post可以传输大量的数据,上传文件通常要使用post方式;
4.使用get时参数会显示在地址栏上,如果这些数据不是敏感数据,那么可以使用get;对于敏感数据还是应用使用post;
5.get使用MIME类型application/x-www-form-urlencoded的URL编码(也叫百分号编码)文本的格式传递参数,保证被传送的参数由遵循规范的文本组成,例如一个空格的编码是”%20”。
ps:GET方式提交表单的典型应用是搜索引擎。GET方式就是被设计为查询用的。
常用http请求方法用途

GET 发送一个请求常用来获取服务器资源
POST 向URL指定的资源提交数据或附加新的数据
PUT 跟POST方法很像,也是像服务器提交数据进行处理请求。但是,它们之间有不同。PUT指定了资源在服务器上的位置,而POST没有。一般用于修改资源
DELETE 请求服务器删除指定的资源

HTTP缓存

浏览器缓存 - 登山背包里有肉

代理缓存 - 备份原服务器的资源进行缓存 - 中间有不同营地

数据库缓存 - 自己有导航

缺氧吸氧类比浏览器缓存,需要查看是自己有没有氧气瓶,有,有没有过期,过期了,再问一下氧气站有没有过期,没过期就是用,过期了就下山投诉换回新的氧气瓶

物资的使用规则也是缓存的基本原理

如果自己有就看有没有过期,过期了,要和服务器验证是否真的过期,过期了就从服务器获取新的资源。

cache-control:max-age=3153600(一年)

cache-control:no-cache - 不是不需要缓存,是每次使用前都要和服务器确认

no-store 不缓存

private 私有,其他代理服务器不能缓存

etag 标识资源,每次资源更新后,新的etag值也会被服务器更新

expires 过期时间

last-modified 最后修改时间

检查和服务器的修改时间是否一致,不一致就得让服务器返回新的资源了

HTTPS是什么?加密原理和证书。SSL/TLS握手过程

SSL或安全套接字层和TLS(传输层安全)是旨在通过Internet在客户端和服务器之间提供安全通信通道的加密协议。SSL是较旧的加密协议,而TLS是相对较新的版本。拥有SSL/TLS证书的目的不仅是为了进行身份验证,而且是为了建立客户端浏览器与之通信的远程服务器的身份。

img

对称加密算法采用单密钥加密,在通信过程中,数据发送方将原始数据分割成固定大小的块,经过密钥和加密算法逐个加密后,发送给接收方

2.接收方收到加密后的报文后,结合解密算法使用相同密钥解密组合后得出原始数据。

优点

是效率高,算法简单,系统开销小,适合加密大量数据。

缺点

安全性差

加解密算法是公开的,因此在这过程中,密钥的安全传递就成为了至关重要的事了。而密钥通常来说是通过双方协商,以物理的方式传递给对方,或者利用第三方平台传递给对方,一旦这过程出现了密钥泄露,不怀好意的人就能结合相应的算法拦截解密出其加密传输的内容。

扩展性差

每对通信用户之间都需要协商密钥,n个用户的团体就需要协商n*(n-1)/2个不同的密钥,不便于管理;而如果都使用相同密钥的话,密钥被泄漏的机率大大增加,加密也就失去了意义

img

​ 非对称加密(公钥加密):指加密和解密使用不同密钥的加密算法,也称为公私钥加密。假设两个用户要加密交换数据,双方交换公钥,使用时一方用对方的公钥加密,另一方即可用自己的私钥解密。如果企业中有n个用户,企业需要生成n对密钥,并分发n个公钥。假设A用B的公钥加密消息,用A的私钥签名,B接到消息后,首先用A的公钥验证签名,确认后用自己的私钥解密消息。由于公钥是可以公开的,用户只要保管好自己的私钥即可,因此加密密钥的分发将变得 十分简单。同时,由于每个用户的私钥是唯一的,其他用户除了可以通过信息发送者的公钥来验证信息的来源是否真实,还可以通过数字签名确保发送者无法否认曾发送过该信息。非对称加密的缺点是加解密速度要远远慢于对称加密,在某些极端情况下,甚至能比对称加密慢上1000倍。

img

SSL包含特定的公钥和私钥,由CA第三方证书公司发布

  • HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议, 要比http协议安全。
  • http和https使用的是完全不同的连接方式用的端口也不一样,前者是80,后者是443。
  • https协议需要到ca申请证书,一般免费证书很少,需要交费。

TLS是使用非对称加密来生产一个只有服务器和客户端知道的对话密钥,然后之后的对话就通过这个会话密钥进行对称加密传输数据。

img

CDN

CDN ,简单来讲,就是你的网站服务器在黑龙江,怎么能让海南岛的用户快速访问呢?很简单,在广州再放一台服务器。

img

RTT(Round-Trip Time):往返时延。是指数据从网络一端传到另一端所需的时间。通常,时延由发送时延、传播时延、排队时延、处理时延四个部分组成。

img

直接超远程访问,中间节点出问题的几率太大,导致用户打开你网站会很慢,白屏半天。

img

接入 CDN 后,就不会这样了,海南的用户连接的是广州的服务器。

img

img

img

静态内容,一般指的是图片啊文档啊多媒体文件之类的。

动态内容,php;jsp;asp;aspx 这种文件,需要连接你源服务器进行动态计算的内容。这种一般不缓存到CDN,或者只存短时间。

动态请求现在一般怎么加速呢?如果服务器离用户很远的话,BGP 机房??

img

img

不同的内容要设定不同的 CDN 缓存时间,比方说用户头像存1天的样子,不然用户自行更换头像,好几天了,他头像都没换过来。

img

img

个人网站使用 CDN 记得做好用量封顶配置

当统计周期(比如5分钟内)产生一个GB的CDN 流量,那很可能是有人在刷你流量,可以配置直接给用户返回404。

DNS域名解析过程

通常我们有两种方式识别主机:通过主机名或者 IP 地址。人们喜欢便于记忆的主机名表示,而路由器则喜欢定长的、有着层次结构的 IP 地址。为了满足这些不同的偏好,我们就需要一种能够进行主机名到IP 地址转换的目录服务,域名系统作为将域名和 IP 地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。

img

因特网的域名空间

  • 根域名服务器 根域名服务器是最高层次的域名服务器。每个根域名服务器都知道所有的顶级域名服务器的域名及其IP地址。因特网上共有13个不同IP地址的根域名服务器。当本地域名服务器向根域名服务器发出查询请求时,路由器就把查询请求报文转发到离这个DNS客户最近的一个根域名服务器。这就加快了DNS的查询过程,同时也更合理地利用了因特网的资源。

img

任播:将任播报文至少传输到一个具有任播地址的主机,最好仅仅传输到一个主机,改善网络负载拓扑,较好地分摊网络负载,提高网络服务的范围和服务质量,使网络资源得到合理利用;

img

  • 顶级域名服务器 这些域名服务器负责管理在该顶级域名服务器注册的所有二级域名。当收到DNS查询请求时就给出相应的回答(可能是最后的结果,也可能是下一级权限域名服务器的IP地址)。
  • 权限域名服务器 这些域名服务器负责管理某个区的域名。每一个主机的域名都必须在某个权限域名服务器处注册登记。因此权限域名服务器知道其管辖的域名与IP地址的映射关系。另外,权限域名服务器还知道其下级域名服务器的地址。
  • 本地域名服务器 本地域名服务器不属于上述的域名服务器的等级结构。当一个主机发出DNS请求报文时,这个报文就首先被送往该主机的本地域名服务器。本地域名服务器起着代理的作用,会将该报文转发到上述的域名服务器的等级结构中。本地域名服务器离用户较近,一般不超过几个路由器的距离,也有可能就在同一个局域网中。本地域名服务器的IP地址需要直接配置在需要域名解析的主机中。

img

域名解析会先搜索本地计算机的缓存,并查询主机本地文件中是否有对应IP,如果没有则调用解析器向DNS服务器发送请求,查找对应IP地址的服务器

域名解析包含两种查询方式,分别是递归查询迭代查询

  • 1、主机首先向其本地域名服务器进行递归查询
  • 2、本地域名服务器采用迭代查询,它先向某个根域名服务器查询。
  • 3、根域名服务器告诉本地域名服务器,下一次应查询的顶级域名服务器的IP地址。
  • 4、本地域名服务器向顶级域名服务器进行迭代查询
  • 5、顶级域名服务器告诉本地域名服务器,下一次应查询的权限域名服务器的IP地址。
  • 6、本地域名服务器向权限域名服务器进行迭代查询
  • 7、权限域名服务器告诉本地域名服务器所查询的域名的IP地址。
  • 8、本地域名服务器最后把查询的结果告诉主机。

img

VPN的概念和原理

办公使用,最早的VPN在1996年出现,https在后边才出但没有加密。

两头接受和发出的两处加密和解密。

ISP:互联网中间提供商。

img

哈希值两方确定内容是否被篡改

img

两大框架 核心为安全。

img

img

依旧不安全

Ping的过程

  1. **控制台输入ping 127.0.0.1;**检测自己主机的基础网络配置是否正常,也就是检查自己本机TCP/IP是否正确安装
  2. ping 本机IP地址 比如ping 192.168.10.5;ping不同可能是网线或者WiFi有问题
  3. ping 默认网关 比如ping 192.168.10.1 ;通常ping你的路由器;ping不通应该检查路由器的问题
  4. ping 目标IP地址 ;ping不通就证明不是你主机或者网络的问题,有可能是对方主机下线,有可能对方防火墙阻止了,有可能数据包被丢弃,重复,损毁
  5. ping 目标主机名

来源:b站蛋老师

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值