1598076889256.jpg
运输层- 端口号(数据要发给服务端哪个端口)
网络层 - IP地址 (源IP 目标IP)
数据链路层- Mac地址(网卡地址)

路由器:
3.网络层
2.数据链路层
1.物理层

1598079373165.jpg
1598079650356.jpg

tcp三次握手

1598080486710.jpg
在吗

OK,我要开始给你发数据了

tcp四次挥手

1598081597955.jpg
我要分手 (FIN = 1)
行呀,那分就分 (ACK = 1)
服务端 也要说 我要分手
客户端 说那就分
两方都要提

计算机之间的通信

  • 需要得知对方的IP 地址 和 MAC地址
  • 最终是根据MAC地址(网卡地址), 输送数据到网卡,被网卡接收

集线器(Hub)
网桥(Bridge)

  1. arp -a

交换机(Switch) 组建局域网

  • 相当于更多接口的网桥 全双工通信
  • 连接的设备必须在同一网段
  • 连接的设备处在同一广播域

路由器(Router)
可以在不同网段之间转发数据
隔绝广播域
网关Gateway(跨网段发送数据):

网络
Mac地址,IP地址,路由器
交换机 集线器 同轴电缆

Mac地址

每一个网卡都有一个6字节(48bit)的的Mac地址(Media Access Control Address)
https://mac.51240.com/

IP地址

互联网上的每一个主机都有一个IP(Internet Protocol Address)地址
最初是IPv4版本,4字节(32 bit), 2019.11.25日全球IP地址已经用完
后面推出了IPv6版本, 16字节(128bit)1604538798186.jpg
ip地址由2部分组成: 网络标识(网路ID)、主机标识(主机ID)
一个网段的计算机,网络ID相同
通过子网掩码(subnet mask)可以计算出网络ID: 子网掩码&IP地址

IP地址:192.168.1.10
子网掩码: 255.255.255.0
1100 0000. 1010 1000. 0000 0001. 0000 1010
&1111 1111 1111 1111 1111 11111 0000 0000
192.168.1 网络ID
计算机和其他计算机通信之前,会先判断目标主机和自己是否在同一网段
同一网段: 不需要路由器转发
不同网段: 交由路由器进行转发

A类地址:
C34D0DB6-EE8D-49DF-BCA1-15FD0BC9E712.png

局域网 (Local Area Network, LAN)

局域网中使用最广泛的网络技术叫: 以太网(Ethernet)
无线局域网: WLAN(Wireless LAN)

上网方式

电话上网
1605877902694.jpg
ADSL电话拨号上网(Asymmetric Digital Subscriber Line)
非对称数字用户线路,提供上、下行部队称的传输带宽
猫(Modem),调制解调器,进行数字信号和模拟信号的转换
光猫(Optical Modem), 光调制解调器,进行数字信号和光信号的转换

数据链路层(Data Link)

不同类型的数据链路,所用的通信协议可能是不同的
广播信道: CSMA/CD协议 (比如同轴电缆、集线器组成的网络)
点对点信道: PPP协议(比如两个路由器之间的信道)

封装成帧
1606304600485.jpg
帧(Frame)的数据部分, 就是网络层传递下来的数据包(IP数据包, Packet)

最大传输单元MTU (Maximum Transfer Unit)
每一种数据链路层协议都规定了所能够传送的帧的数据长度上限
以太网的MTU为1500个字节

5.应用层

DNS(Domain Name)

  • 顶级域名

    通用顶级域名(General Top-Level Domain) .com .net(国际机构) .org(组织域名) .edu(教育) .gov(政府部门) .int(国际组织)等
    国家及地区顶级域名(Country Code Top-level Domain) .cn(中国) .jp(日本) .uk(英国)
    新通用顶级域名(New Generic Top-level Domain) .vip .xyz .top .club .shop等

  • 二级域名

利用DNS协议,可以将域名(比如baidu.com)解析成对应的IP地址
DNS协议可以基于UDP协议,也可以基于TCP协议,服务端占用53端口

  1. 客户端首先会访问最近的一台DNS服务器(也就是客户端自己配置的DNS服务器)
  2. 所有的DNS服务器都记录了 根域名服务器的IP地址
  3. 上级DNS服务器记录了下一级DNS服务器的IP地址
  4. 全球一共13台IPv4的DNS根域名服务器,25台IPv6的DNS根域名服务器

DHCP(Dynamic Host Configuration Protocol)

DHCP协议基于UDP协议,客户端是68端口,服务器是67端口
DHCP服务器会从IP地址池中,挑选一个IP地址”出租”给客户端一段时间,时间到期就回收他们

4个阶段
DISCOVER: 发现服务器
发广播包(源IP是0.0.0.0, 目标IP是255.255.255.255, 目标Mac:FF:FF:FF:FF:FF:FF)

OFFER:提供租约
服务端返回可以租用的IP地址,以及租用期、子网掩码、网关、DNS信息

REQUEST: 选择IP地址

ACKNOWLEDGE: 确认
被选中的服务器发送ACK数据包给客户端

HTTP(Hyper Text Transfer Protocol)

1996年 HTTP/1.0
支持POST、HEAD等请求方法,支持请求头、响应头等,支持更多数据类型
浏览器的每次请求都需要与服务器建立一个TCP连接,请求处理完成后立即断开TCP连接

1997年 HTTP/1.1
支持PUT、DELETE等请求方法
采用持久连接(Connection: keep-alive)

2015年 HTTP/2.0

RFC(Request For Comments) 请求意见稿

报文格式: