TCPIP协议基础及常用协议

IP

IP包头

包头长度

4位,单位为4字节,如数据为0101,则包头长度为5*4=20

存活时间(TTL)

数据每经过一次路由转发值会减一,相当于保质期,归零时数据丢失

包头校验和

网络层仅对包头做校验,不对数据做校验,只校验自己头部

标识符(16位)

同一IP数据包的各个分片的标识符相同。

标志位(3位)

第1位:没有使用。
第2位:DF位,DF=1不允许对该包进行分片,DF=0允许分片。
第3位:MF位,MF=1表示后面还有分片,MF=0表示最后一个分片。

分段偏移量(13位)

本分片数据载荷在原IP包数据载荷中的相对位置,单位为8字节。

分片

网络层最大数据:1500 字节,现有5000字节的数据需要发送。
首先将原始数据按顺序按字节编号。0-4999

第一个报文携带:编号 0-1479的数据,DF=0,MF=1,标识符 A,分段偏移量:0/8
第二个报文携带:编号1480-2959的数据,DF=0,MF=1,标识符 A分段偏移量:1480/8
第三个报文携带:编号2960-4439的数据,DF=0,MF=1,标识符A分段偏移量:2960/8
第四个报文携带:编号4440-4999的数据,DF=0,MF=0,标识符A分段偏移量:4440/8

IP协议特点

IP是无连接的,在传输数据之前不需要建立连接。
IP提供的是尽力而为的服务,超过转发能力时直接丢弃。
IP数据包在网络中的传送是无序的,在转发过程中,不考虑到达
接收端的顺序,每个数据包单独进行路由(即单独选择到达目的
地的路径)。
IP分组传送是不可靠的,发送端只管发送数据,不关心接收端是
否收到数据,IP的可靠性需要上层协议来解决。

抓包实验

IP包头如下

TCP协议(传输控制协议)

概述

TCP是面向连接的,数据传输需要经过建立连接、传输数据、断开连接三个阶段。
全双工通信,数据可在同一连接上同一时间内双向流动
TCP提供有序的数据传输,接收端按字节对数据进行确认。
TCP数据传输是可靠的,包头中含有校验和可对数据进行校验并具有超时重传机制重传丢失的数据。
TCP提供高质量的传输服务,通过滑动窗口机制实现流量控制。
TCP适合于可靠性要求高的应用。

包头结构

编码位(TCP flag)

FIN:结束标志;为1时,请求断开连接。
SYN:同步标志;为1时,请求建立连接。
RST:复位标志;为1时,请求重新建立TCP连接
PSH:通知接收端立即将数据交给用户进程,不要停留在缓存中等待更多的数据。
ACK:确认标志;确认号有效位,表明该数据包包含确认信息。
URG:紧急标志:紧急指针有效位,与16位紧急指针配合使用

字节号

TCP把要在一个连接上发送的数据都按字节编号。通信双方的编号是相互独立的,编号不一定要从0开始,TCP选择0~(2的32次方-1)之间的一个随即数作为第1个字节的编号。

序号

TCP把要在一个连接上发送的数据分成若干报文段,然后给每个报文段指派一个序号,序号就是该报文段第一个字节的编号。

确认号

期望接收到的下一个字节的编号。

TCP工作机制

TCP连接建立——三次握手机制

第一次握手

此时syn置1

第二次握手

syn置1,ack置1

第三次握手

只有ack置1

TCP连接建立——TCP MSS

TCP数据传输——传输确认机制

TCP数据传输——超时重传机制

TCP数据传输——双向传输机制

TCP连接断开——四次断开机制

TCP流量控制——滑动窗口机制

TCP为每个方向的数据传送都使用两个窗口(发送窗口和接收窗口),共4个窗口。
TCP通过强制发送方和接收方不断调整窗口大小,来实现流量控制。
出现拥塞,窗口减半;
传输稳定,窗口慢慢变大。

UDP协议

概述

UDP是无连接的,数据传输之前不需要建立连接。UDP是不可靠的,发送端不管接收端是否能收到数据,UDP传输数据的可靠性需要应用层来解决。UDP只有校验和机制,只能做简单的差错控制。UDP没有流量控制机制。
UDP包头小,开销低,传输效率高。

UDP包头结构

端口号

16位,0--65536,1024以下为知名端口号。


长度

16位,UDP报文总长度(包头+数据),单位为字节。


校验和

16位,UDP包头和数据的校验和。

上层协议标识

常见以太网类型号

常见IP协议号

常见TCP端口号

常见UDP端口号

ARP(地址解析协议)

ARP是网络层协议,在同一广播域内,将IP地址解析成MAC地址。

抓包

请求

应答

无故ARP

请求型无故ARP

使用广播方式主动发送自己IP地址的ARP
用于重复IP地址检测。

应答型无故ARP

用于刷新其他主机或设备的ARP表。
用于刷新交换机的MAC表。

ICMP(互联网消息控制协议)

ICMP工作在网络层,封装于IP,协议号1,用于发送错误消息和控制消息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值