区块链技术博客
www.b2bchain.cn

iOS 网络相关面试题(UDP的特点、UDP的报文结构及差错检测)求职学习资料

本文介绍了iOS 网络相关面试题(UDP的特点、UDP的报文结构及差错检测)求职学习资料,有助于帮助完成毕业设计以及求职,是一篇很好的资料。

对技术面试,学习经验等有一些体会,在此分享。

TCP(Transmission Control Protocol 传输控制协议)和UDP(User Datagram Protocol 用户数据报协议)同属传输层协议

一、UDP的特点

UDP是是面向非连接的协议,传送数据不需要和服务器连接,只需要知道ip和监听端口,不需要链接没有目的的socket,只是将数据报投递出去,不管接收方是否成功接收到,是一种不可靠的传输。

既然UDP是不可靠数据传输协议,那为什么那么多应用去选择UDP呢?

1、关于何时、发送什么数据的应用层控制更加精细

  • 只要应用将数据传递给UDP,UDP就会将此数据打包进UDP报文段并立刻将其传递给网络层。
  • 而TCP则是有个拥塞控制机制,以确保数据能够安全传输,而不管可靠传输成功需要用多少时间。
  • 所以有些实时应用,比如微信视频、语音都是更希望数据能够及时发送,为此可以容忍一部分数据丢失,比较适合用UDP

2、无需连接建立

  • 众所周知,TCP在数据传输前需要经过三次握手,UDP却不需要做任何的准备即可进行数据传输,因此UDP不会引入建立连接的时延。
  • 这也是DNS运行在UDP而不是TCP上的主要原因。
  • 而HTTP协议之所以使用TCP,是因为对于HTTP协议来说,可靠性是至关重要的。

3、无连接状态

  • TCP需要维护连接状态。此连接状态包括接收和发送缓存、拥塞控制参数以及序号与确认号的参数。(后面如果有时间,会详细说下TCP的拥塞控制方案,对该方案来说,这些状态信息都是必要的)
  • 而UDP不需要维护连接状态,也不用跟踪这些参数

4、分组首部开销小

每个TCP报文段都有20字节的首部开销,而UDP仅有8字节的开销

所以,如非必要,比如电子邮件,远程终端服务,web,以及文件传输,需要可靠地数据传输,会去采用TCP。其余的尤其是对实时性要求高的应用,比如实时视频会议,网络电话,一般都会选用UDP

二、UDP的报文结构

iOS 网络相关面试题(UDP的特点、UDP的报文结构及差错检测)

应用层数据占用UDP报文段的数据字段。UDP首部只有4个字段,每个字段由2个字节组成,即UDP首部仅有8字节。

  • 端口号:可以使目的主机将应用数据交给运行在目的端系统中端相应进程,执行分用功能。

iOS 网络相关面试题(UDP的特点、UDP的报文结构及差错检测)

  • 长度:该字段指示了在UDP报文段中的字节数(首部+数据)

  • 检验和:接收方使用检验和来检查在该报文段中是否出现了差错,即差错检测。

TCP(Transmission Control Protocol 传输控制协议)和UDP(User Datagram Protocol 用户数据报协议)同属传输层协议

一、UDP的特点

UDP是是面向非连接的协议,传送数据不需要和服务器连接,只需要知道ip和监听端口,不需要链接没有目的的socket,只是将数据报投递出去,不管接收方是否成功接收到,是一种不可靠的传输。

既然UDP是不可靠数据传输协议,那为什么那么多应用去选择UDP呢?

1、关于何时、发送什么数据的应用层控制更加精细

  • 只要应用将数据传递给UDP,UDP就会将此数据打包进UDP报文段并立刻将其传递给网络层。
  • 而TCP则是有个拥塞控制机制,以确保数据能够安全传输,而不管可靠传输成功需要用多少时间。
  • 所以有些实时应用,比如微信视频、语音都是更希望数据能够及时发送,为此可以容忍一部分数据丢失,比较适合用UDP

2、无需连接建立

  • 众所周知,TCP在数据传输前需要经过三次握手,UDP却不需要做任何的准备即可进行数据传输,因此UDP不会引入建立连接的时延。
  • 这也是DNS运行在UDP而不是TCP上的主要原因。
  • 而HTTP协议之所以使用TCP,是因为对于HTTP协议来说,可靠性是至关重要的。

3、无连接状态

  • TCP需要维护连接状态。此连接状态包括接收和发送缓存、拥塞控制参数以及序号与确认号的参数。(后面如果有时间,会详细说下TCP的拥塞控制方案,对该方案来说,这些状态信息都是必要的)
  • 而UDP不需要维护连接状态,也不用跟踪这些参数

4、分组首部开销小

每个TCP报文段都有20字节的首部开销,而UDP仅有8字节的开销

所以,如非必要,比如电子邮件,远程终端服务,web,以及文件传输,需要可靠地数据传输,会去采用TCP。其余的尤其是对实时性要求高的应用,比如实时视频会议,网络电话,一般都会选用UDP

二、UDP的报文结构

iOS 网络相关面试题(UDP的特点、UDP的报文结构及差错检测)

应用层数据占用UDP报文段的数据字段。UDP首部只有4个字段,每个字段由2个字节组成,即UDP首部仅有8字节。

  • 端口号:可以使目的主机将应用数据交给运行在目的端系统中端相应进程,执行分用功能。

iOS 网络相关面试题(UDP的特点、UDP的报文结构及差错检测)

  • 长度:该字段指示了在UDP报文段中的字节数(首部+数据)

  • 检验和:接收方使用检验和来检查在该报文段中是否出现了差错,即差错检测。

TCP(Transmission Control Protocol 传输控制协议)和UDP(User Datagram Protocol 用户数据报协议)同属传输层协议

一、UDP的特点

UDP是是面向非连接的协议,传送数据不需要和服务器连接,只需要知道ip和监听端口,不需要链接没有目的的socket,只是将数据报投递出去,不管接收方是否成功接收到,是一种不可靠的传输。

既然UDP是不可靠数据传输协议,那为什么那么多应用去选择UDP呢?

1、关于何时、发送什么数据的应用层控制更加精细

  • 只要应用将数据传递给UDP,UDP就会将此数据打包进UDP报文段并立刻将其传递给网络层。
  • 而TCP则是有个拥塞控制机制,以确保数据能够安全传输,而不管可靠传输成功需要用多少时间。
  • 所以有些实时应用,比如微信视频、语音都是更希望数据能够及时发送,为此可以容忍一部分数据丢失,比较适合用UDP

2、无需连接建立

  • 众所周知,TCP在数据传输前需要经过三次握手,UDP却不需要做任何的准备即可进行数据传输,因此UDP不会引入建立连接的时延。
  • 这也是DNS运行在UDP而不是TCP上的主要原因。
  • 而HTTP协议之所以使用TCP,是因为对于HTTP协议来说,可靠性是至关重要的。

3、无连接状态

  • TCP需要维护连接状态。此连接状态包括接收和发送缓存、拥塞控制参数以及序号与确认号的参数。(后面如果有时间,会详细说下TCP的拥塞控制方案,对该方案来说,这些状态信息都是必要的)
  • 而UDP不需要维护连接状态,也不用跟踪这些参数

4、分组首部开销小

每个TCP报文段都有20字节的首部开销,而UDP仅有8字节的开销

所以,如非必要,比如电子邮件,远程终端服务,web,以及文件传输,需要可靠地数据传输,会去采用TCP。其余的尤其是对实时性要求高的应用,比如实时视频会议,网络电话,一般都会选用UDP

二、UDP的报文结构

iOS 网络相关面试题(UDP的特点、UDP的报文结构及差错检测)

应用层数据占用UDP报文段的数据字段。UDP首部只有4个字段,每个字段由2个字节组成,即UDP首部仅有8字节。

  • 端口号:可以使目的主机将应用数据交给运行在目的端系统中端相应进程,执行分用功能。

iOS 网络相关面试题(UDP的特点、UDP的报文结构及差错检测)

  • 长度:该字段指示了在UDP报文段中的字节数(首部+数据)

  • 检验和:接收方使用检验和来检查在该报文段中是否出现了差错,即差错检测。

部分转自互联网,侵权删除联系

赞(0) 打赏
部分文章转自网络,侵权联系删除b2bchain区块链学习技术社区 » iOS 网络相关面试题(UDP的特点、UDP的报文结构及差错检测)求职学习资料
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

b2b链

联系我们联系我们