TCP的协议号是6,UDP的协议号是17。
1、传输层协议简介
TCP是TCP/IP协议族中传输层协议的一员
传输层总共是有TCP和UDP两大协议
每个协议都有对应的协议号,TCP的协议号是6,UDP的协议号是17。
TCP是传输控制协议
UDP是用户数据报协议
2、TCP协议
1.TCP是面向连接的、可靠的进程到进程通信的协议
2.TCP提供全双工服务,即数据可在同一时间双向传输
3.TCP报文段
TCP将若干个字节构成一个分组,叫报文段
TCP报文段封装在IP数据报中
这边添加了一个报文段的表格
名词后面跟随的数字是占用的二进制数位,每层占用32二进制
源端口号:是发送方的端口号,一般是针对客户机
目标端口号:是接收方的端口号,一般是针对服务器
序号:发送端为每个字节进行编号,以便于接收端正确重组
确认号:用于确认发送端的信息
例如:PC1向PC2发送四个数据,但是PC2一次只能接收3个数据,PC2就会只接收3个数据段,第四个不接受,并且向PC1回信说我只能接收三个,PC1再把第四个数据传输一次或者把第四段数据跟剩下的一起传
首部长度:包头的长度
保留:保留位
状态位:URG、ACK、PSH、RST、SYN、FIN
注:上面六个状态位,TCP中只用到三个:SYN、ACK、FIN,这三个,分别代表的意思是:
SYN:同步序列号,TCP需要建立连接的时候将SYN的数值设置成1
ACK:确认序列号,当ACK数值为1的时候,用于确认发送方的数据
FIN:当TCP连开连接的时候,将FIN数值设置成1,就是断开连接的时候用
窗口大小:用于说明本地可接受数据段的数目。窗口大小是可变的。
校验和:发送方发送数据的时候会附加一个校验值,接收方接收信息的时候会校验,是不是跟发送方的校验值一摸一样,一样就就接收。
紧急指针:TCP中会把小的零散数据放在一起发送,紧急指针就是为小数据添加标记,紧急发送,不再进行跟别的数据捆绑发送,而是接收到之后立即发送,比较紧急。
二、三次握手
第一次PC1跟PC2发送连接请求,SYN发送建立连接的请求,此时数值是1,还有一个Seq,序列号,数字是X,数值恶意任意设置。
请求信息到达PC2之后,如果PC2同意建立,就会跟PC1回数据说可以,就会产生确认值(Ack),确认无同意请求,这个值是PC1的序列号+1,
tcp和udp的协议号 扩展
TCP传输控制协议(TransmissionControlProtocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF RFC793定义.
UDP(用户数据报协议)为应用程序提供了一种无连接就可以发送封装的IP数据报的方法。由IETF RFC 768定义描述。
tcp和udp的协议号 扩展
一.UDP对应的协议
1.DNS:用于域名解析服务,将域名地址转换为IP地址,使用53号端口。
2.SNMP:简单网络管理协议,使用161号端口,是用来管理网络设备。由于网络设备过多,无连接的服务就体现出优势。
3.TFTP:简单文件传输协议,该协议在端口69号使用UDP服务。
二.TCP对应的协议
1.FTP:定义了文件传输协议,使用21号端口。
2.Telnet:用于远程登录的端口,其使用23号端口,用户可以以自己的身份远程连接到计算机上,可提供基于DOS模式下的通信服务。
3.SMTP:邮件传送协议,用于发送邮件。其使用25号端口。
3.POP3:其与SMTP对应,POP3用于接收邮件。使用了110端口。
4.HTTP:从Web服务器传输超文本到本地浏览器的传送协议,端口是80号。