TCP和UDP协议

一、TCP协议

TCP协议是一种面向连接的、可靠的、基于字节流传输层通信协议。TCP为了保证报文传输的可靠,给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的字节发送一个确认(ACK);如果发送端实体在合理的往返时延(RTT)内未收到确认,那么对应的数据(假设丢失)将会被重传。

二、TCP协议特点

  1. 在数据正确性与合法性上,tcp用一个校验和函数来检验数据是否有错误,在发送和接收时都要计算校验和
  2. 在保证可靠性上,采用超时重传和捎带确认机制
  3. 在流量控制上,采用滑动窗口协议,协议中规定,对于窗口内未经确认的分组需要重传

三、TCP三次握手

  • 第一次握手:客户端发送连接请求报文段,将SYN置为1,seq为x;然后客户端进入SYN-SEND状态,等待服务器的确认。
  • 第二次握手:服务器收到客户端的SYN报文段,需要对这个SYN报文段进行确认,设置ACK为x+1(seq+1);同时,自己还要发送SYN请求信息,将SYN置为1,seq为y;服务器端将上述所有信息放到一个报文段(即SYN+ACK报文段)中,一并发送给客户端,此时服务器进入SYN-RECV状态;
  • 第三次握手:客户端收到服务器的SYN+ACK报文段,然后将ACK设置为y+1,向服务器发送ACK报文段。这个报文段发送完毕以后,客户端和服务器端都进入ESTABLISHED状态,完成tcp三次握手。

四、UDP协议

UDP是一种无连接的传输层协议,它主要用于不要求分组顺序到达的传输中,分组传输顺序的检查与排序由应用层完成,提供简单的不可靠的信息传送服务。

五、UDP协议特点

udp报文没有可靠性保证、顺序保证和流量控制字段等,但udp协议的控制选项少,在数据传输过程中延迟小、数据传输效率高,适合对可靠性要求不高的应用程序,或者可以保障可靠性的应用程序,如DNS、TFTP、SNMP等

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值