0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

通信必备知识!TCP与UDP协议介绍及使用

亿佰特物联网应用专家 2024-03-15 08:19 次阅读

TCP与UDP是两个最常用的通讯协议。

TCP是面向连接的协议,需要在收发数据前与对方建立可靠的连接,建立连接的过程为3次握手,断开连接的过程为4次挥手,确保数据传输的可靠性。

UDP是一种面向无连接的协议,它在数据传输之前不需要建立连接。发送端可以直接将数据报文(数据段)扔到网络上,而接收端则从网络中接收数据,并从消息队列中读取数据段。UDP不提供可靠性和顺序保证,因此在某些应用场景下,如实时音视频传输或简单查询等,UDP更为适用。

大多数需要通过网络通讯的设备都支持TCP和UDP两种协议。本教程将详细讲解这两个协议在调试过程中的使用方法以及区别。

b97203c4-e261-11ee-9118-92fbcf53809c.png

「TCP」

首先,我们先了解TCP的两种模式,分别是TCP客户端(TCPC)和TCP服务端(TCPS)。

「TCP服务端」

TCP服务端指的是设备建立TCP服务器,允许其他设备通过访问设备的IP和端口进行通讯。在设置设备为TCP服务端时,需要配置服务器的IP地址和通讯端口。其他客户端设备可以对服务器进行访问,并且支持多台设备进行连接。

「TCP客户端」

TCP客户端是指设备作为一个客户端去访问服务器。设备工作在客户端模式时,需要设置客户端访问的服务器IP和端口。在网络连接正常的情况下,设备可以与服务器建立连接。

「UDP」

在使用UDP通讯时,不需要区分客户端和服务端,但在通讯过程中,我们可以将发送端定义为服务端,接收端定义为客户端。因此,在配置UDP通讯时,我们只需要开启本机端口即可。在发送数据时,需要设置接收的IP地址和端口。UDP模式下,任意一端都可以发送数据,只需要在发送端添加目标IP和端口即可。

模拟通讯」

接下来,我们使用两个实际设备模拟两种协议在实际使用中的配置。我们使用两个网络调试助手来进行演示。

「TCP模拟通讯」

首先,打开两个网络调试助手,为了二者能正常进行连接,需要将一方设置为TCP客户端。

我们先设置TCP服务器,打开软件后将协议类型选择为TCP Server,此时界面将会有本地主机地址和本地主机端口两个选项,IP地址可以选择电脑当前IP地址,端口可以指定任意端口,此处以1234为例,点击打开。

b98450b0-e261-11ee-9118-92fbcf53809c.png

此时,TCP服务器建立完成,TCP客户端可以向该服务器发起连接,此处我们同样以网络调试助手来模拟TCP客户端。向TCP服务器连接前,需要知道服务器的IP及端口(及上述服务器的本地主机地址与本地主机端口(192.168.0.100:1234))。

将TCP软件协议类型选择TCP Client,远程主机地址为服务器的本地主机地址,远程主机端口设置为服务器的本地主机端口,点击连接。

b994b5d6-e261-11ee-9118-92fbcf53809c.png

此时连接建立,就可以进行通信了,适用设备连接时同理进行。

b9a2b294-e261-11ee-9118-92fbcf53809c.png

「UDP模拟通讯」

接下来,我们使用UDP进行通讯模拟。跟TCP类似,通信时需要先找到目标的IP地址与端口号。

先打开网络调试助手软件,选择协议类型为UDP,本地主机地址为电脑IP地址,本地主机端口设置为1234。同样方法设置通信另一端,注意如IP相同则同一局域网设备端口不能一致。

b9be47a2-e261-11ee-9118-92fbcf53809c.png

在下方远程主机中输入需要通信的对方的IP:端口,即可发送数据。

b9d0b64e-e261-11ee-9118-92fbcf53809c.png

如通信双方为设备,同理配置即可。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据传输
    +关注

    关注

    9

    文章

    1774

    浏览量

    64382
  • 通信
    +关注

    关注

    18

    文章

    5938

    浏览量

    135747
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1342

    浏览量

    78902
  • UDP
    UDP
    +关注

    关注

    0

    文章

    319

    浏览量

    33844
收藏 人收藏

    评论

    相关推荐

    基于UDP协议的网络通信应用程序

    基于UDP协议的网络通信应用程序(UDP-Socket)前两篇文章介绍了基于TCP/IP
    发表于 11-05 08:29

    TCPUDP的区别分析

      传输层协议主要有TCPUDPUDP提供无连接的通信,不能保证数据包被发送到目标地址,典型的即时传输少量数据的应用程序通常使用
    发表于 09-18 10:29 2次下载

    (WiFi干货)WiFi模块的TCPUDP协议

    TCPUDP都是网络通信协议,也就是通信时都要遵守的规则,双方在同一规则下”交流”,才能理解或者为之服务. 一、TCP
    的头像 发表于 09-11 09:02 3w次阅读

    tcpudp协议的异同

    UDP 校验和则是包含 UDP 首部和数据在内的校验结果。 TCP协议 TCP协议基于网络层的
    的头像 发表于 11-12 14:45 3952次阅读
    <b class='flag-5'>tcp</b>和<b class='flag-5'>udp</b><b class='flag-5'>协议</b>的异同

    TCP协议UDP协议的区别和相同点有哪些 一文看懂TCP协议UDP协议的优缺点

    首先咱们弄清楚,TCP协议和UCP协议TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP
    的头像 发表于 05-26 14:35 9420次阅读
    <b class='flag-5'>TCP</b><b class='flag-5'>协议</b>与<b class='flag-5'>UDP</b><b class='flag-5'>协议</b>的区别和相同点有哪些 一文看懂<b class='flag-5'>TCP</b><b class='flag-5'>协议</b>与<b class='flag-5'>UDP</b><b class='flag-5'>协议</b>的优缺点

    通信协议中的HTTP、TCPUDP你了解多少(上)

    TCP HTTP UDP: 都是通信协议,也就是通信时所遵守的规则,只有双方按照这个规则“说话”,对方才能理解或为之服务。
    的头像 发表于 02-13 14:19 903次阅读
    <b class='flag-5'>通信协议</b>中的HTTP、<b class='flag-5'>TCP</b>、<b class='flag-5'>UDP</b>你了解多少(上)

    TCP协议UDP协议的区别

    TCP/IP协议中有两个具有代表性的传输层协议,分别是TCP协议UDP
    的头像 发表于 03-21 10:39 1135次阅读

    一文搞明白TCP协议UDP协议(上)

    网络编程有三个要素,分别是IP地址、端口号和通信协议,那本文主要讲述的是TCPUDP这两种通信协议,以及编程的实现。 首先,我们需要了解一下IP地址、端口号、
    的头像 发表于 05-18 17:17 631次阅读
    一文搞明白<b class='flag-5'>TCP</b><b class='flag-5'>协议</b>与<b class='flag-5'>UDP</b><b class='flag-5'>协议</b>(上)

    一文搞明白TCP协议UDP协议(下)

    网络编程有三个要素,分别是IP地址、端口号和通信协议,那本文主要讲述的是TCPUDP这两种通信协议,以及编程的实现。 首先,我们需要了解一下IP地址、端口号、
    的头像 发表于 05-18 17:17 608次阅读
    一文搞明白<b class='flag-5'>TCP</b><b class='flag-5'>协议</b>与<b class='flag-5'>UDP</b><b class='flag-5'>协议</b>(下)

    TCP/UDP网络编程的基础知识合集1

    本文主要记录TCP/UDP网络编程的基础知识,采用TCP/UDP实现宿主机和目标机之间的网络通信
    的头像 发表于 05-18 17:31 662次阅读

    TCP/UDP网络编程的基础知识合集2

    本文主要记录TCP/UDP网络编程的基础知识,采用TCP/UDP实现宿主机和目标机之间的网络通信
    的头像 发表于 05-18 17:31 609次阅读

    TCP/UDP网络编程的基础知识合集3

    本文主要记录TCP/UDP网络编程的基础知识,采用TCP/UDP实现宿主机和目标机之间的网络通信
    的头像 发表于 05-18 17:31 745次阅读
    <b class='flag-5'>TCP</b>/<b class='flag-5'>UDP</b>网络编程的基础<b class='flag-5'>知识</b>合集3

    TCP协议UDP协议最核心的区别是什么?

    对于TCP协议UDP协议,大家应该都有所耳闻。TCP协议
    发表于 06-15 09:37 630次阅读
    <b class='flag-5'>TCP</b><b class='flag-5'>协议</b>和<b class='flag-5'>UDP</b><b class='flag-5'>协议</b>最核心的区别是什么?

    udp是什么协议 TCPUDP的区别

    TCP协议提供可靠的数据传输,UDP协议提供尽量高效的数据传输。TCP协议通过使用序列号、确认应
    的头像 发表于 06-26 17:47 1.1w次阅读

    IP地址、端口号、通信协议的相关知识 TCPUDP通信协议简述

    网络编程有三个要素,分别是IP地址、端口号和通信协议。本文主要讲述的是TCPUDP这两种通信协议,以及编程的实现。首先,我们需要了解一下IP地址、端口号、
    的头像 发表于 07-18 11:20 1822次阅读
    IP地址、端口号、<b class='flag-5'>通信协议</b>的相关<b class='flag-5'>知识</b> <b class='flag-5'>TCP</b>和<b class='flag-5'>UDP</b><b class='flag-5'>通信协议</b>简述