URL全称:Uniform Resource Locator,统一资源定位器。
协议+域名或IP+端口号+路径+查询参数+锚点
如图:3.png
路径:可以做到请求访问不同页面
查询参数:可以做到同一个页面,显示不同的内容
锚点:可以做到同一个页面,同一个内容,展示在不同位置

IP

IP全称:Internet Protocol,互联网协议
主要约定了两件事:

  1. 如何定位一台设备
  2. 如何封装数据报文,以跟其他设备交流

IP分为内网IP和外网IP ,外网内网相互隔绝,通过路由器连接,这使得内网设备想要访问外网就要通过路由器中转,在外网中设备可以相互访问,但是不能访问我们的内网。外网想要把内容传送到内网也必须通过路由器,所以路由器有时候也被称为网关。

几个特殊的IP

  • 127.0.0.1 表示自己
  • localhost通过hosts指定为自己
  • 0.0.0.0不表示任何设备


端口

一台机器可以提供很多服务,每一个服务一个号码,这个号码就叫做端口号port。

  • 要提供HTTP服务最好使用80端口
  • 要提供HTTPS服务最好提供443端口
  • 一共有65535个端口(基本够用)

要发送请求IP和端口缺一不可

规则

0到1023(2的10次方减1)号端口十六个系统适用的,只有拥有管理员权限后才能使用这1024个端口。
其他端口可以给普通用户使用,例如 http-server 默认使用8080端口,如果端口被占用,只有换一个端口。

域名

英文名 domain name
域名就是对IP的别称

分类

顶级域名: .com .net .xyz .gov
二级域名: qq.com
三级域名: www.qq.com

ping 命令

例如:
ping qq.com
image.png
ping taobao.com
image.png

nslookup 命令

例如:
nslookup qq.com
image.png
nslookup taobao.com
image.png

小知识

一个域名可以对应不同的IP,这叫做均衡负载,防止一台机器扛不住。
一个IP也可以对应不同域名,这叫做共享主机。

DNS

全称:Domain Name System,域名系统服务协议
作用:将域名和IP对应起来。在浏览器地址栏中输入域名按下回车,浏览器会向电信/联通提供的DNS服务器询问该域名对应的IP是什么,电信/联通会回答一个IP,然后浏览器就会向对应IP的80/443端口发送请求,请求内容就是查看域名的首页。

curl 命令

用curl可以发合同HTTP请求
curl -v taobao.com
>里表示发送的内容
<里表示接收的内容
image.png
Web通信建立在http/https基础上,而网络是在是TCP/IP协议族的基础上运作的,TCP/IP是互联网相关的各类协议族的总称,HTTP/HTTPS属于它内部的一个子集。
TCP/IP的分层管理
优点:改变设计时不需要整体替换,每个层次内部相对独立,能自由改动
应用层:内预存了各类通用应用服务(FTP,DNS,HTTP/HTTPS)
传输层:提供数据传输(有TCP和UDP)
网络层:处理数据包,规定传输路线(IP)
链路层:处理连接网络的硬件部分
具体过程:
客户端在应用层发出一个HTTP/HTTPS请求(输入的域名会在这一层发给DNS解析,得到IP地址)
传输层(TCP协议)分割HTTP/HTTPS请求报文,并在各个报文上打上标记序号及端口号
网络层(IP协议)增加目的地MAC地址,转发给链路层
每过一层,都会被打上该层所属的首部信息

服务端链路层接收到数据自下而上传递请求数据。每过一层处理消去对应的首部

为确保数据能到达目标,TCP采用三次握手,发送端两次(一次SYN,一次ACK),接收端一次(SYN/ACK)

服务端将数据发送过来的时候同样如此