协议卷1备注笔记
四层网络应用模型
1.应用层 ftp email telnet
2.传输层 TCP UDP
3.网络层 IP(ICMP IGMP)
4.链路层 设备驱动程序及接口卡(arp-地址解析协议 rarp-反地址解析协议)
传输层提供端到端, IP层提供点到点
五类互联网地址
A 0.0.0.0127.255.255.255191.255.255.255
B 128.0.0.0
C 192.0.0.0223.255.255.255239.255.255.255
D 224.0.0.0
E 240.0.0.0~247.255.255.255
域名系统DNS 实际为一个分布式数据库
子网掩码 192.0.2.96/24表示的是一个前24位被用作网络号的IP地址(和255.255.255.000的意思一样)
计算方式是位与运算,如:
类别
起始位
开始
结束
点分十进制掩码
A
0
0.0.0.0
127.0.0.0
255.0.0.0
B
10
128.0.0.0
191.255.0.0
255.255.0.0
C
110
192.0.0.0
223.255.255.0
255.255.255.0
封装与分用-封装
TCP数据段(tcp segment)
IP数据报文 (ip datagram)
以太网数据帧(frame)46~1500(字节 可设置)
IP头有一个8bit的协议域,标示协议类型1=ICMP 2=IGMP 6=TCP 17=UDP
封装与分用-分用
端口号:
大部分知名端口号为奇数? 半双工历史
tcp 23
udp 53
环回接口
国际惯例ip是127.0.0.1 并设置localhost
IP网际协议
ip不可靠性。
ip无连接。 每个ip数据报文独立, 可以没有先后顺序
网络字节序:大端字节序
TTL 生存时间,一般为源主机设置
ARP地址解析协议
ARP功能是IP地址和不同网络技术的硬件地址做一个映射。arp发出一个arp数据请求给每个以太网上的主机,对应主机符合后回复arp应答,发送ip报文到目标主机
RARP 是许多无盘系统在引导时候获取ip地址的
ICMP 网络控制报文协议Internet Control Message Protocol
常用于返回错误信息及分析路由,如 ping(icmp echo的request和reply) traceroute
PING
不经过传输层,仅为ICMP的echo的request和reply
IP分片
MTU 以太网硬件(网卡)一般设置为1500:例如:IP首20, UDP首8 剩余1472数据字节
广播多播单播
使用单播IP地址的IP传输方式,叫做IP单播(Unicast),简称为单播。
使用广播IP地址的IP传输方式,叫做IP广播(Broadcast),简称为广播。
使用组播IP地址的IP传输方式,叫做IP组播(Multicast),简称为组播。
广播不实际增加网络通讯量, 但是如ICMP协议端口不可达会额外引起广播流量
IGMP internet组管理协议
广播长局限于局域网中,多播协议可以降低不参与通讯的主机负担
DNS域名系统
一个基于tcpip的分布式缓存
TCP传输控制协议
面向连接可靠地字节流服务
可靠性保障:
- tcp segment 数据块封装成ip协议发送
- 发送一个段后,启动一个定时器等待回复(自适应超时和重传)
- 收到发送端的数据后给一个确认的回复(不一定是立即回复)
- 首部和校验和来保证数据正确性
- ip数据报文到达可能无序, tcp对数据报文重排序交给应用层
- IP数据包会重复,需要丢弃重复
- 提供流量控制,接收端只容许发送端发送本段缓冲能接收的数据
tcp首部中有6个标示bit:
- URG 紧急指针
- ACK确认序号有效
- PSH 尽快发送到应用层
- RST 重新建立连接
- SYN 同步序号用来发起一个链接 (ISN 初始序列号,随机+数据包长度)
- FIN 发送完毕
三次握手:SYN n->SYN m、ack n+1->ack m+1
四次握手:FIN n、ack ->ack n+1->FIN m、ack ->ack m+1
链接主要状态:
S : Listen=被动打开
C : SYN_SENT=主动打开
SC: ESTABLISHED=链接建立
C : FIN_WAIT=主动关闭
S : CLOSE_WAIT=被动关闭
C : TIME_WAIT=关闭等待
S : CLOSED=关闭(假想)
Nagle算法, 尽量的合并发送包,合并条件:
- 达到MSS(最大segment 大小) 大小 MSS来自MTU(包含IP和tcp或者udp头)
- FIN协议
- tcp nodelay(关闭 Nagle algorithm)
- 或者一段时间(200ms)超时
滑动窗口
控制流量避免拥塞。 分为发送窗口和接收窗口
超时和重传机制
定时器:
- 重传定时器
- 坚持定时器 使窗口大小信息保持流动
- 保活定时器
- 2MSL定时器 测量timewait时间
超时和重传: 指数避退策略
插口对(socket pair)套接字对, ip_port-r_ip_port
ISN 初始序列号, 随机值
MSL(最大segment lifetime)
TIME_WAIT 为2MSL状态,在等待期内,这部分时间socket pair 不容许被使用
后记
待续和完善, 目前简要备注大纲
版权声明:本文为博主原创文章,未经允许不得转载。