嵌入式面经-TCP/UDP

本文详细介绍了TCP编程的基础概念,包括其面向连接的特性、与UDP的区别,以及TCP的三次握手和四次挥手通信过程。同时讨论了TCP和UDP各自的优缺点。
摘要由CSDN通过智能技术生成
  • TCP编程是什么

    • 指使用TCP(传输控制协议)进行网络通信的编程方式,TCP是一种可靠的、面向连接的协议

  • TCP和UDP的区别是什么

    • TCP是面向连接的,UDP是面向无连接的

    • UDP程序结构简单

    • TCP是面向字节流的,UDP是基于数据包的

    • TCP保证数据的正确性,UDP可能会数据丢失

  • TCP优缺点

    • 优点:可靠,体现在TCP在传输数据之前,会有三次握手来建立连接,在传输数据时,有确认、窗口、重传等控制机制,在数据传输后还会断开连接用来节约系统资源

    • 缺点:慢,效率低,占用系统资源高,易被攻击

  • UDP优缺点

    • 优点:快,比TCP稍安全

    • 缺点:不可靠,不稳定,容易丢失数据

  • TCP的通信过程

    • 建立连接:三次握手

      • 客户端收到应答后,再发送一个应答报文段,其中包含ACK标志位,同时客户端发送一个随机数Z

      • 服务器收到请求后,如果同意连接,则发送一个应答报文段,其中包含SYN和ACK(确认)标志位,同时服务器发送一个随机数Y

      • 客户端向服务器发送连接请求报文段,其中包含SYN(同步)标志位,同时客户端发送一个随机数X

    • 数据传输

    • 断开连接:四次挥手

      • 客户端收到应答后,再发送一个应答报文段,确认断开请求

      • 服务器发送一个FIN(结束)报文段,请求断开连接

      • 服务器收到请求后,发送一个应答报文段,确认断开请求

      • 客户端发送一个FIN(结束)报文段,请求断开连接

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值