传输层协议TCP UDP

传输层协议

TCP

  • TCP是面向连接的、可靠的进程到进程通信的协议

  • TCP提供全双工服务,及数据可以在同一时间双向传输

  • TCP报文段

  • TCP将若干和字节构成的一个分组,叫报文段

  • TCP报文段封装在IP数据报中

TCP头部格式

端口:运输层与应用层的服务接口

序号:发送端每个字节进行编号,方便接收端重组

确认号:用于确认发送端的信息

首部长度:确定首部数据结构的字节长度,20-60字节

保留:目前未被使用,用于今后扩展

窗口大小:用于控制本地可接受数据段的数目,此大小可变化,流量控制机制就是依靠此属性的大小实现的

紧急比特URG:当URG=1时,告诉系统此报文字段中有紧急数据,应尽快发送

确认比特ACK:只有当ACK=1时确认号才有效,当ACK=0确认号则无效,用于确认对方发送的数据

推送比特PSH:接受TCP收到推送比特置1的报文段,就尽快的交付给接受应用进程,而不是再等整个缓存填满后再向上交付

复位比特RST:当RST=1时,表明TCP连接中出现严重差错(如主机崩溃或其他原因),必须释放连接,在重新建立连接

同步比特SYN:同步比特SYN置为1时,表示这是一个连接请求或者连接接收报文

终止比特FIN:用来释放一个连接,当FIN=1时,表明此报文段的发送端的数据已发送完毕,并要求释放连接

校验和:检验和字段检验的范围包括首部和数据

紧急指针:指出在本报文段中的紧急数据的最后一个直接的序号

选项:长度可变,TCP只规定了一种选择,即最大报文段长度

TCP端口号

用于区分不同的网络服务

TCP三次握手

通俗易懂简单概述TCP三次握手过程。

第一次握手:建立连接时,客户端发送syn包到服务器表示需要连接服务器;

第二次握手:服务器收到syn包,通过回应ack确认客户端连接,同时自己也发送一个SYN包表示要与客户端建立连接;

第三次握手:客户端收到服务器的SYN+ACK包后再向服务器发送确认包ACK以确认服务器发送的SYN,到此TCP三次握手建立成功。

TCP四次挥手

UDP

UDP常用端口号

UDP传输过程

  • 使用UDP传输数据时,由应用程序根据需要提供报文到达确认、排序、流量控制等功能。

  • UDP不提供重传机制,占用资源小,处理效率高

  • 一些时延敏感的流量,如语言、视频等,通常用UDP作为传输协议

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值