计算机网络基础
互联网架构模型 https://live.infrapedia.com/
层次设计基本原则
性能指标:
速率
时延 发送时延 传播时延(路径) 排队时延 处理时延
往返时间 RTT ping
物理层:
不同设备的连接 传输比特流 网线 光纤 同轴电缆
信道 单工 半双工 全双工
数据链路层
封装成帧 透明传输 (转移字符) 差错监测 奇偶校验、CRC
最大传输单元MTU 1500字节 路径MTU
以太网协议 :完成相邻物理设备的数据传输 MAC 地址 MAC地址表(路由器) MAC地址和接口的映射
网络层: 数据路由,确定数据在网络之间的路径 路由器
虚拟互联网络 :忽略物理模型 使用ip协议 关注端到端的信息
ip协议 把实际网络转成虚拟互联网络 忽略介质等等... MAC 地址: 48位 ip地址 32位
版本:ipv4 ipv6
首部长度:15*4=60字节
总长度:16位 65535字节
片偏移 ip数据报分成多个帧的时候 需要保持片偏移
TTL 生存时间
协议 udp tcp ip...
源ip地址 目的ip地址 ip数据
转发流程:
一跳一跳
路由表 计算机和路由器都有
ARP RARP
地址解析协议 arp缓存表 ip地址-> mac地址 ip地址会变化 有缓存时间 arp -a
ip地址分类
A类地址 0000 0000 表示特殊网络
0111 1111 表示回环地址 127. 127.0.0.1 本地虚拟接口 不会挂掉的接口 检查本地网络和协议是否正常
B 1000 0000 0000 0000 不可使用 128.0
C 1100 0000 0000 0000 0000 0000 不可使用 192.0.0
主机号全0 表示当前网络段
全1 广播地址 向当前网络段所有主机发送广播消息
D类 1110 ... 224.
E类 1111 .... 240.
子网
划分子网
子网掩码
ip地址 & 子网掩码 ==网络号
NAT 网络地址转换
地址和端口映射
ICMP 网络控制报文协议
差错报告报文 验证网络数据是否错误
询问报文 验证网络是否通路
ping 127.0.0.1 重装系统
ping 192.168.0.1 路由器 网关故障
ping baidu.com 运营商
Traceroute tracert baidu.com 查看每一跳的地址
路由 下一跳是不是最好的
算法 图论算法
内部网关协议
RIP 故障信息传递慢 实现简单 开销小 限制网络的规模
OSPF 迪杰斯特拉算法 广度优先算法 最短路径算法
自治系统
外部网关协议 BGP 受外部因素影响严重
传输层
UDP
无连接
不可靠
面向报文传输 不处理
拥塞控制
首部开销很小
TCP
连接
可靠性
停止等待协议
无差错 有差错 出现差错的时候 超时定时器 信道利用率不高
连续ARQ协议
自动重传请求 批量发送和接受
滑动窗口 累计确认 提高信道利用率
丢失的情况下进行选择重传一个范围字节 序号和确认号
面向字节流
20 字节
序号 一个字节一个序号
确认号 期望收到数据的首字节序号
数据偏移 偏移头部的位置
TCP标记 ACK SYN FIN
窗口 拥塞控制
流量控制
滑动窗口 让发送方不要发送太快 窗口减小 窗口为0的时候 坚持定时器 询问 窗口是不是扩大 点到点的信号控制
拥塞控制
整个网络 超时 可能就是拥塞
慢启动算法 指数
拥塞避免算法 线性
三次握手
已发送的失效的请求到达对方,引用错误 2次可以建立连接,可能建立2个tcp请求
四次挥手
MSL最长报文寿命 2min 等待2个MSL 等待计时器 保证第四的报文正确到达 接收方 不到达 再进行第三次挥手
保活计数器 : 心跳 探测是否在线...
应用层
DNS
域名转ip
顶级域 (cn com org) 二级域 (taobao baidu )
DHCP 局域网协议 动态获取ip地址
HTTP 超文本 带超链接的文本 可靠
CDN 内容分发网络
HTTPS