TCP/IP协议栈:
物理层、数据接口层、网络层、传输层、应用层或网络接口层、网络层、传输层、应用层
TCP/IP协议栈的核心协议:
1、TCP
2、UDP
3、ICMP
4、IGMP
5、ARP:映射IP→Ethernet
6、RARP:映射Ethernet→IP
TCP/IP layer
-----------------Ipv4
A类 : 8位network/24位host Fisting octet :1~126 127.x.x.x本机回环地址
(0xxxxxxx) (10.0.0.0~10.255.255.255 私有地址) 2的24方-2
B类 :16位network/16位host Fisting octet :128~191
(10xxxxxx) (172.16.0.0~172.31.255.255 私有地址) 2的16方-2
C类 :24位network/8位host Fisting octet :192~223
(110xxxxx) (192.0.0.0~192.255.255.255 私有地址) 2的8方-2
D类 : Fisting octet :224~239 (1110xxxx)
E 类 : 保留
IP PDU Header
· IHL: IP头部长度 0~15 代表行数,最大15x4=60byte
· Service type: type of service(TOS),包括QoS,CoS;Qos最大划分了255个等级,一般用到6个等级
· Packet Length:包头和数据的总长度
· Identification:每个ip包都会有一个标识,主要用于超过链路MTU的ip包被分片后在接收端被重组时所用
· Flag: 3位: 0/DF/MF Don’t Frag / More Frag MTU 1500byte,超过就分片 0/0/1 , 第二0个代表有分片,第三个1代表有更多分片;0/1/1 死亡之ping;
· Frag.Offset: 分片偏移 , 也是用于重组IP包
· Time to live: 0-255,ttl减少1,一般16跳足够了
· Protocol:协议号 告诉IP上层用的是TCP(6)还是UDP(17)
DHCP:
1. Dhcp discover 封包 source:0.0.0.0 des:255.255.255.255 等待响应1s,再广播9s,第三次13s,第四次16s,宣告失败 (UDP 67)
2.DHCP offer 广播(不知道client地址)(UDP 68)
3.Client request message : 67
4.Acknowledgment : 68
企业系统的更多的是在windows下架设DHCP,我们讲到路由器基本配置后,演示在路由器上面配置DHCP
TCP/IP Transport Layer:
------------------------------------------------------------------------------------------
TCP具有下面几个特征
1) connection 面向连接(建立一条连接以交换数据)
2) numbering & sequencing 编号和排序
3) acknowledgement 确认机制
4) error-check 差错检测 (用校验和来检查)
5) retransmission 重传机制 (接收方可请求重传)
6) flow control 流量控制(缓冲区,确认,窗口大小)
7) full-duplex 全双工(TCP连接是一对虚电路,每方向上一条)
UDP具有下面几个特征
1) 面向无连接
2) 相比可靠性机制,UDP有低的开销
3) 有限的错误检测
4) 尽力而为传输
5) 没有数据恢复机制(不重传机制)
TCP Header
Sequence number:数据编排号或重传编号
Acknowledgment number:应答号
Header length:取值范围:5-15(基数为4byte,默认0x101,代表tcp包头20字节,最大0x1111=60字节)
Resv: 总被设置为0
Urg:紧急位:当该位为1时,代表告知接收方紧急需要CPU处理的数据在urgent pointer的所示位置
ACK:确认位:同意建立,拆除TCP连接,确认收到tcp字段
PSH:push强制位:代表要求接收方须将接收到的字段尽快交由上层,应用层协议处理
RST:reset重置位:请求重新建立tcp连接
Syn:同步位
Fin;finish 完成位 :请求断开一个tcp连接
CWR: congestion window-size reducing 拥塞窗口降低
ECN:explicit congestion notification 显示拥塞通告
Windows size: 发送方允许的窗口尺寸
Urgent pointer;urg有效字段,指向第一个非紧急数据的起始位置