UDP基本原理

合集下载

UDP协议详解

UDP协议详解

UDP协议详解UDP(User Datagram Protocol)是一种无连接的传输层协议,它提供了一种简单的、不可靠的数据传输服务。

与TCP协议相比,UDP协议不提供数据完整性、可靠性和流量控制等特性,但由于其简单性和低开销,UDP协议在一些特定的应用场景中被广泛使用。

本文将详细解释UDP协议的工作原理、特点和使用场景。

一、UDP协议的工作原理UDP协议使用简单的数据报文形式进行通信。

数据报文是由一个UDP首部和应用层数据组成的,UDP首部包含了源端口号、目的端口号、长度和校验和等字段。

UDP协议不需要建立连接,数据报文可以直接发送给目的主机。

UDP协议的工作流程如下:1. 发送端将应用层数据传递给UDP协议。

2. UDP协议在数据报文中添加首部信息。

3. UDP协议将数据报文发送给目的主机。

4. 接收端的UDP协议从数据报文中提取应用层数据并传递给应用程序。

二、UDP协议的特点1. 无连接:UDP协议不需要建立连接,发送端和接收端之间的通信是无状态的。

2. 不可靠:UDP协议不提供数据的可靠传输,数据报文可能会丢失、重复或乱序。

3. 简单高效:UDP协议的首部开销小,处理速度快。

4. 支持一对一、一对多和多对多的通信模式。

5. 不提供拥塞控制和流量控制等功能。

三、UDP协议的使用场景1. 实时应用:UDP协议适用于实时应用,如音频、视频和实时游戏。

由于UDP协议的低延迟和简单性,可以实现实时数据的快速传输。

2. DNS服务:域名系统(DNS)使用UDP协议进行域名解析。

由于DNS查询通常是短小的请求和响应,使用UDP协议可以减少开销。

3. 广播和多播:UDP协议支持广播和多播,可以将数据报文发送给多个主机,适用于组播视频、在线会议等应用。

4. SNMP协议:简单网络管理协议(SNMP)使用UDP协议进行网络设备的管理和监控。

5. TFTP协议:简单文件传输协议(TFTP)使用UDP协议进行文件的传输。

UDP点对点网络通信原理及源码

UDP点对点网络通信原理及源码
{
onDataArrived(buf,ClientEpException ex)
IPAddress[] myIP = Dns.GetHostAddresses(hostname);
foreach (IPAddress address in myIP)
{
str = address.ToString();
{
byte[] data = Encoding.Default.GetBytes(this.txtSend.Text);//将数据编码成byte字节数组
//定义接收端的IP和端口号
IPEndPoint ep=new IPEndPoint(IPAddress.Parse("192.168.133.211"),9981);
private string GetIPAddress()
{
string str;
string Result = "";
string hostname = Dns.GetHostName();//获取本地的主机名
if (str.Contains('.'))
Result = str;
}
return Result;
}
}
{
byte[] buf = Server.Receive(ref ClientEp);
if (this.onDataArrived != null)//判断是否与客户端的方法绑定
set { port = value; }
}
/// <summary>
/// 监听,启动线程开始后台获取数据
/// </summary>

udp协议工作原理

udp协议工作原理

udp协议工作原理UDP(User Datagram Protocol)是一种无连接的、不可靠的传输协议。

相比于TCP(Transmission Control Protocol),UDP更加简单,没有连接建立和维护的开销,同时也没有拥塞控制和流量控制等功能。

UDP主要用于实时性要求较高、对可靠性要求较低的应用场景,例如音视频传输、DNS域名解析等。

UDP的工作原理如下:1.数据报格式:UDP采用数据报的形式进行数据传输。

UDP数据报由两个重要字段组成:源端口号和目的端口号。

端口号指明数据是从哪个应用程序发送到哪个应用程序。

2.无连接性:UDP是无连接的,即在数据传输之前不需要建立连接。

发送方可以直接将数据报发送给接收方,而不需要两者之间的握手和协商。

3.不可靠性:UDP是一种不可靠的传输协议,它不保证数据传输的可靠性和顺序性。

它不提供任何确认机制,如果数据报在传输过程中丢失或者出错,UDP不会进行重传。

4.尽力交付:UDP采用尽力交付的方式,即发送方只负责尽力地将数据传输给接收方,而不保证接收方是否正确接收。

发送方不会等待确认,会连续发送数据报,从而提高传输效率。

5.高效性:UDP的头部开销相对较小,只有8个字节,相比TCP的20字节要少很多。

这使得UDP在传输过程中的开销较小,传输更加高效。

6.广播和多播支持:UDP支持广播和多播功能。

通过广播,一个UDP数据报可以同时发送给所有网络中的设备。

通过多播,一个UDP数据报可以同时发送给多个目的地址,节省网络带宽资源。

7.适用场景:由于UDP的特性,它主要适用于实时性要求较高的场景,如音视频传输、实时游戏等。

在这些场景下,对于传输的实时性要求更高,而对于可靠性要求较低,一些丢失的数据可以通过后续的数据重传或者应用层的冗余处理来实现。

总结起来,UDP的工作原理是基于无连接、不可靠的传输方式,适用于实时性要求较高、对可靠性要求较低的应用场景。

UDP的简单性和高效性使其在一些特定场景下得到广泛应用。

udp原理

udp原理

udp原理UDP协议是一种传输层协议,它不保证数据包的可靠传输,也不具有流控制和拥塞控制的功能,但是它具有传输速度快、占用资源少的优点,因此被广泛地应用在实时传输、网络游戏等需要快速传输的场景中。

UDP协议的工作原理主要包括以下几个方面:1.无连接通信UDP协议采用无连接通信的方式,即在数据传输之前不需要先建立连接,也不需要维护连接状态信息,因此具有较快的传输速度。

同时,由于不需要保持连接状态,UDP协议的资源占用也比TCP协议小。

2.不可靠传输UDP协议采用不可靠传输的方式,即数据传输时不能保证所有数据包都一定能够被对方接收。

如果在传输过程中某个数据包丢失,UDP协议也不会进行重传,而是直接将数据包丢弃,这极大地影响了数据的可靠性。

3.面向数据包传输UDP协议是一种面向数据包传输的协议,每个数据包都是一个独立的单元,具有自己的源地址、目的地址和长度等信息,数据包之间不存在先后关系和依赖关系。

因此,在传输过程中数据包之间的丢失和乱序等问题通常需要应用程序进行处理。

4.支持广播和多播UDP协议支持广播和多播功能,可以在网络中同时向多个主机传输同样的数据包,这对于一些需要向多个主机发送相同信息的应用非常有用。

5.不具备流量控制和拥塞控制UDP协议不具备流量控制和拥塞控制的功能,不能控制数据传输的速度和网络负载,因此在网络负载高时容易引起拥塞和丢包等问题。

但是,相对于TCP协议的复杂性和资源消耗,UDP协议具有更小的开销。

总之,UDP协议主要是一种快速传输数据的协议,适用于需要实时传输和对数据可靠性要求不高的场合,例如音视频传输、网络游戏等。

但是在面对大量数据传输和对数据传输可靠性有严格要求的场合,TCP协议仍然是更加可靠和稳定的选择。

udp通信原理

udp通信原理

udp通信原理UDP(用户数据报协议)是一种无连接的网络协议,属于传输层。

相对于TCP(传输控制协议),UDP具有传输速度快、不可靠、无拥塞控制等特点。

UDP主要用于不需要可靠数据传输的应用场景,如视频直播、VoIP等。

UDP通信原理:UDP通信过程分为两个部分:发送数据和接收数据。

1.发送数据发送数据时,需要指定目标主机的IP地址和端口号。

UDP没有连接的概念,所以只能通过此方式进行标识。

数据包由以下几个部分构成:源端口号:发送方发送数据的端口号。

目标端口号:接收方接收数据的端口号。

长度:UDP数据包的长度。

检验和:用于校验数据包是否有误。

数据:实际要传输的数据。

发送数据的过程如下:1.创建UDP套接字在发送数据前需要创建一个UDP套接字,通过socket()函数创建。

套接字可以理解为通信的端点,发送方和接收方都需要创建套接字。

2.设置目标IP地址和端口号发送方需要知道目标主机IP地址和端口号。

可以通过通过gethostbyname()函数获取主机IP地址,通过inet_addr()函数将主机IP地址转换为网络字节序。

3.封装数据包将要发送的数据加上源端口号和目标端口号、长度和检验和,封装成数据包。

4.发送数据包通过sendto()函数将数据包发送给目标主机。

2.接收数据接收数据时,需要指定本机的IP地址和端口号。

数据包由以下几个部分构成:源端口号:发送方发送数据的端口号。

目标端口号:接收方接收数据的端口号。

长度:UDP数据包的长度。

检验和:用于校验数据包是否有误。

数据:实际要传输的数据。

接收数据的过程如下:1.创建UDP套接字在接收数据前需要创建一个UDP套接字,通过socket()函数创建。

套接字可以理解为通信的端点,发送方和接收方都需要创建套接字。

2.绑定本地IP地址和端口号接收方需要知道本地IP地址和端口号,可以通过bind()函数绑定。

如果没有指定本地端口号,则系统会随机分配一个未使用的端口号。

udp协议工作原理

udp协议工作原理

UDP(User Datagram Protocol)是一种在计算机网络中常用的传输协议,它位于OSI(开放系统互联)模型的传输层,用于在网络上发送数据。

UDP与TCP(传输控制协议)一样,也是一种协议,但与TCP不同的是,UDP是一种面向无连接的协议,它不提供像TCP那样的可靠性、流量控制和拥塞控制。

UDP的工作原理如下:无连接性:UDP是一种无连接协议,这意味着在数据传输之前不需要建立连接。

TCP在发送数据之前要先进行三次握手来建立连接,而UDP不需要这一过程。

不可靠性:由于UDP不提供可靠性,因此它不会跟踪数据包的传输状态或确认接收。

如果使用UDP发送数据,数据包可能会在传输过程中丢失、重复或乱序,而应用程序需要自行处理这些问题。

简单性:UDP相对于TCP来说更加简单,它不需要维护连接状态表、序列号等信息,因此处理开销较小,适用于实时性要求较高的应用。

速度:由于UDP不需要建立连接和维护状态信息,它的传输速度通常比TCP更快。

这使得UDP适用于需要快速数据传输的应用,如音频和视频流媒体。

无流量控制和拥塞控制:UDP不提供流量控制和拥塞控制,这意味着它可以在网络拥塞时继续发送数据,可能会导致网络过载。

因此,在使用UDP时,应用程序需要自行处理流量控制和拥塞控制问题。

UDP常常用于以下类型的应用程序:实时多媒体应用:例如语音通话和视频会议,这些应用需要快速传输数据,可以容忍一些丢包或延迟。

DNS(域名系统):DNS查询通常使用UDP进行快速响应。

SNMP(简单网络管理协议):SNMP用于网络管理,通常使用UDP来发送管理消息。

总之,UDP是一种轻量级的协议,适用于一些对可靠性要求不高但需要快速传输的应用,但在需要可靠性和数据完整性的情况下,应考虑使用TCP。

udp组播原理 -回复

udp组播原理 -回复

udp组播原理-回复UDP组播原理UDP(用户数据报协议)组播是一种基于UDP协议实现的多播通信方式。

在计算机网络中,广播是将一条消息发送给网络中的所有设备,而多播则是将一条消息发送给一组具有共同兴趣的设备。

UDP组播允许发送端将数据报传输给一个广播地址,该地址标识了一组接收方。

本文将逐步介绍UDP组播的原理和工作过程。

一、UDP协议基础在了解UDP组播之前,我们先了解一下UDP协议。

UDP协议是一种面向无连接的协议,它提供了一种简单的数据传输机制,适用于一对一、一对多和多对多的通信。

与TCP不同的是,UDP不提供可靠性、可靠的顺序传输、重传机制等功能,因此在某些实时性要求较高,但可靠性要求较低的应用场景中广泛使用。

二、UDP组播概述UDP组播是一种采用UDP协议实现的多播通信方式,它可以将数据报发送给一组共享相同兴趣的接收方。

组播通信由两个主要组件组成:发送方和接收方。

发送方负责将数据报发送给组播地址,接收方通过加入组播组来接收发送方发送的数据。

三、UDP组播地址在UDP组播中,组播地址是指标识一组接收方的特殊IP地址。

IPv4组播地址由32位表示,其中前4位固定为1110,后面28位可以用于标识多达268,435,456个组播组。

IPv6组播地址由128位表示,以"FF"开头。

四、IGMP协议IGMP(Internet组管理协议)是一种在多播通信中,主机和路由器之间交换信息的协议。

IGMP协议允许主机加入和离开特定的组播组,并告知路由器有关组播组的信息。

路由器使用IGMP协议来维护组播组的成员关系,并决定哪些数据报发送到哪些接口。

五、UDP组播工作过程以下是UDP组播的一般工作过程:1. 发送方加入组播组发送方首先通过加入一个或多个组播组来表明它有兴趣发送给该组的数据报。

发送方以组播地址为目标地址,向网络发送UDP数据报。

2. 路由器处理加入组播组消息当路由器接收到来自发送方的加入组播组消息时,它将更新自己维护的组播组成员表,记录发送方加入的组播组信息。

UDP防火墙规则

UDP防火墙规则

UDP防火墙规则UDP(User Datagram Protocol)是一种无连接的传输协议,常用于实时应用程序,如音频和视频流传输。

为了保护网络安全并防止恶意攻击,防火墙起到了至关重要的作用。

本文将讨论UDP防火墙规则的设置和配置。

1. UDP基本原理UDP是一种面向无连接的传输层协议,不像TCP(Transmission Control Protocol)具有可靠性和流量控制的功能。

UDP通过IP协议在网络上发送数据包,但不包含握手和确认的过程。

由于UDP的特性,它的传输速度相对较快,但数据的可靠性较低。

2. UDP防火墙规则设置为了保护网络免受恶意攻击或未授权的访问,需要在防火墙上配置相应的UDP规则。

UDP防火墙规则可以通过阻止非授权的UDP数据包或限制特定的UDP端口来实现。

2.1 允许特定的UDP端口UDP协议使用端口号来标识不同的应用程序。

在防火墙规则中,我们可以通过允许特定的UDP端口来限制进入或离开网络的数据流量。

这可以通过配置防火墙的入站规则和出站规则来实现。

示例:允许内部网络访问外部DNS服务器(使用UDP端口53)。

入站规则:源IP:内部网络IP目标IP:外部DNS服务器IP协议:UDP目标端口:53操作:允许出站规则:源IP:内部网络IP目标IP:外部DNS服务器IP协议:UDP目标端口:53操作:允许2.2 阻止非授权UDP数据包防火墙规则还可以用于阻止非授权的UDP数据包进入或离开网络。

这可以通过配置防火墙的入站规则和出站规则来实现。

示例:阻止外部网络访问内部TFTP服务器(使用UDP端口69)。

入站规则:源IP:任意目标IP:内部TFTP服务器IP协议:UDP目标端口:69操作:阻止出站规则:源IP:内部TFTP服务器IP目标IP:任意协议:UDP目标端口:69操作:阻止3. 防火墙管理配置UDP防火墙规则需要综合考虑网络安全和应用需求。

根据不同的网络环境和实际需求,可以采用以下的防火墙管理策略:3.1 定期审查和更新规则网络环境和应用需求可能会随时间变化而变化。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

传摘要:UDP是ISO参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,UDP协议基本上是IP协议与上层协议的接口。

本文中对UDP协议进行一下具体的讲述,在第一章中将介绍UDP的基本概念,UDP协议的端口,长度和效验及其计算等方面的问题;在第二章中介绍了UDP数据的封装与拆装以及它的应用。

第一章 UDP基本原理1.1 UDP基本概念以及适用范围:1.1.1 UDP的基本概念UDP,即用户数据报协议(User Datagram Protocol)[5]。

作为运输层协议,UDP使用端口号来完成进程到进程之间的通信,UDP在运输层提供非常有限的流控制机制,在收到分组时没有流控制也没有确认。

但是,UDP提供了某种程度的差错控制。

如果UDP检测出在收到的分组有一个差错,它就悄悄的丢弃这个分组。

UDP不负责为进程提供连接机制,它只从进程接收数据单元,并将他们不可靠的交付给接收端。

数据单元必须足够小,能够装进到一个UDP分组中。

所以,UDP提供的是无连接的、不可靠的运输服务。

1.1.2 UDP的适用范围[7](1)UDP适用于需要简单的请求-响应通信,而较少考虑流控制和差错控制的进程;(2)UDP适用于具有内部流控制和差错控制机制的进程。

例如,简单文件传送协议(TFTP)的进程就包括流控制和差错控制,它能够很容易的使用UDP;(3)对多播和广播来说,UDP是个合适的运输协议。

多播和广播能力已经嵌入在UDP软件中,但没有嵌入到TCP软件中;(4)UDP可用于进程管理,如SMTP;(5)UDP可用于某些路由选择更新协议,如路由选择信息协议RIP。

1.1.3 UDP协议的建立以及使用的优点[3]协议是建立在IP协议之上的,从进程的缓冲区输出一个UDP数据报,把生成的UDP数据报直接封装在IP 数据报中进行传输,因此在传输层使用UDP协议时,发送端不需要发送缓冲区,图1所示:IP数据报图1尽管与IP协议类似,UDP提供的也是无连接的,不可靠的数据报传递服务,但是,有别于IP协议的是:1.UDP提供了端到端的通信机制2.增加了对数据区的完整性校验在网络通信中使用UDP协议的好处:在少量数据的传输时,使用UDP协议传输信息流,可以减少TCP连接的过程,提高工作效率。

但是使用UDP协议还有很多不足:当使用UDP协议传输信息流时,用户应用程序必须负责解决数据报排序,差错确认等问题。

在多媒体应用中,常用TCP支持数据传输,UDP支持音频/视频传输。

1.2 UDP特点及其其应用[8](1) UDP是一个无连接协议,传输数据之前源端和终端不建立连接,当UDP它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上。

在发送端,UDP传送数据的速度仅仅是受应用程序生成数据的速度、计算机的能力和传输带宽的限制;在接收端,UDP把每个消息段放在队列中,应用程序每次从队列中读一个消息段。

(2)由于传输数据不建立连接,因此也就不需要维护连接状态,包括收发状态等,因此一台服务机可同时向多个客户机传输相同的消息。

(3) UDP信息包的标题很短,只有8个字节,相对于TCP的20个字节信息包的额外开销很小。

(4)吞吐量不受拥挤控制算法的调节,只受应用软件生成数据的速率、传输带宽、源端和终端主机性能的限制。

(5)UDP使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持复杂的链接状态表(这里面有许多参数)。

(6)UDP是面向报文的。

发送方的UDP对应用程序交下来的报文,在添加首部后就向下交付给IP层。

既不拆分,也不合并,而是保留这些报文的边界,因此,应用程序需要选择合适的报文大小。

由于缺乏拥塞控制(congestion control),需要基于网络的机制来减小因失控和高速UDP流量负荷而导致的拥塞崩溃效应。

换句话说,因为UDP发送者不能够检测拥塞,所以像使用包队列和丢弃技术的路由器这样的网络基本设备往往就成为降低UDP过大通信量的有效工具。

数据报拥塞控制协议(DCCP)设计成通过在诸如流媒体类型的高速率UDP流中增加主机拥塞控制来减小这个潜在的问题。

虽然UDP是一个不可靠的协议,但它是分发信息的一个理想协议。

例如,在屏幕上报告股票市场、在屏幕上显示航空信息等等。

UDP 也用在路由信息协议RIP(Routing Information Protocol)[5]中修改路由表。

在这些应用场合下,如果有一个消息丢失,在几秒之后另一个新的消息就会替换它。

UDP广泛用在多媒体应用中,例如,Progressive Networks公司开发的RealAudio软件,它是在因特网上把预先录制的或者现场音乐实时传送给客户机的一种软件,该软件使用的RealAudio audio-on-demand protocol协议就是运行在UDP 之上的协议,大多数因特网电话软件产品也都运行在UDP之上。

UDP 只是在IP的数据服务之上增加了很少的一点功能,即端口的功能和差错检验的功能。

但是UDP不提供可靠性:他把应用程序封装后传给IP层,被IP层封装后发送出去,但是不保证他们到达目的地,但UDP 在某些方面有其特殊的优点[10]:1.发送数据前不需要建立连接2.UDP 的主机不需要维持复杂的链接状态表3.UDP用户数据报只有8个字节的首部开销4.网络出现的拥塞不会使源主机的发送数据降低,这对某些实现应用是很重要的。

1.3 UDP协议中涉及的的几个基本概念[9]1.3.1 点到点通信点到点通信:是由网络互联层来实现的网络互联层只屏蔽了不同网络之间的差异,构建了一个逻辑上的通信网络,因此他只解决了数据通信问题。

1.3.2 端到端通信端到端通信:IP 协议在IP 数据包的包头增添了IP 地址,根据IP 地址,路由器可以一站一站的将数据包从源主机路由到目标主机,依靠IP 地址,IP 协议实现了点到点的通信如图2所示:,它是建立在点到点通信基础上的,他是比网络互联层通信更高一级的通信方式,完成应用程序(进程)之间的通信,端到端的通信是由传输层来实现的。

网络12传输层端到端通信图2端到端通信——IP 地址+端口 如图3所示:QQ 腾讯公司 QQServer Web Server Client IE 浏览器服务器端 客户端用户数据报图3IP 地址+端口 对定义了端到端通信,例如(202.115.65.71,1500)和(202.115.64.37,80)1.3.3 UDP 协议的作用[2]UDP 协议的主要作用是将网络数据流量压缩成数据包的形式。

一个典型的数据包就是一个二进制数据的传输单位。

每一个数据包的前8个字节用来包含报头信息,剩余字节则用来包含具体的传输数据。

UDP协议从问世至今已经被使用了很多年,虽然其最初的光彩已经被一些类似协议所掩盖,但是即使是在今天,UDP仍然不失为一项非常实用和可行的网络传输层协议。

1.3.4 UDP协议的应用[13]既然UDP是一种不可靠的网络协议,那么还有什么使用价值或必要呢?其实不然,在有些情况下UDP协议可能会变得非常有用。

因为UDP具有TCP所望尘莫及的速度优势。

虽然TCP协议中植入了各种安全保障功能,但是在实际执行的过程中会占用大量的系统开销,无疑使速度受到严重的影响。

反观UDP由于排除了信息可靠传递机制,将安全和排序等功能移交给上层应用来完成,极大降低了执行时间,使速度得到了保证。

关于UDP协议的最早规范是RFC768,1980年发布。

尽管时间已经很长,但是UDP协议仍然继续在主流应用中发挥着作用。

包括视频电话会议系统在内的许多应用都证明了UDP协议的存在价值。

因为相对于可靠性来说,这些应用更加注重实际性能,所以为了获得更好的使用效果(例如,更高的画面帧刷新速率)往往可以牺牲一定的可靠性(例如,画面质量)。

这就是UDP和TCP两种协议的权衡之处。

根据不同的环境和特点,两种传输协议都将在今后的网络世界中发挥更加重要的作用。

1.4 端口[4]1.4.1 传输层端口传输层端口的概念:为了识别传输层之上不同的网络通信程序(进程),传输层引入了端口的概念,在一台主机上,要进行网络通信的进程首先要向系统提出动态申请,由系统(操作系统内核)返回一个本地唯一的端口号,进程再通过系统调用把自己和这个特定的端口联系在一起,这个过程叫绑定。

这样,每个要通信的进程都与一个端口号对应,传输层就可以使用其报文中的端口号,把收到的数据传送到不同的应用程序,如图4所示图4在TCP/IP协议中,传输层使用的端口号用一个16位的二进制数表示,因此,在传输层如果使用TCP协议进行进程通信,则可用的端口号共有2的16次方个不同的端口。

由于UDP也是传输层一个独立于TCP的协议,因此使用UDP协议时也有2的16个不同的端口1.4.2 UDP端口---最终目标的标识端口分类:1.是由因特网分配给一些常用的应用层程序固定使用的熟知端口,其数值一般为0~1023;2.是临时端口,当写一种新的应用程序时,必须为他指派一个临时端口,否则其他的应用程序就无法和它进行交互。

而实际上,机器通常从1024起分配动态(临时)端口。

由于大多数网络应用程序都在同一台机器上运行,计算机上必须能够确保目的地机器上的软件程序能从源地址机器处获得数据包,以及源计算机能收到正确的回复。

这是通过使用 UDP的“端口号”完成的。

例如,如果一个工作站希望在工作站 128.1.123.1 上使用域名服务系统,它就会给数据包一个目的地址 128.1.123.1 ,并在 UDP 头插入目标端口号 53 。

源端口号标识了请求域名服务的本地机的应用程序,同时需要将所有由目的站生成的响应包都指定到源主机的这个端口上。

1.4.3标准UDP端口:UDP数据包中,源端口字段可选,目标端口字段必须指定,接收主机发现IP协议字段为17,就将数据交给UDP协议处理,图5对端口号进行了描述:图5两台要通信的主机,每一端要使用一个二元地址(IP地址,端口号)才可以完成他们之间的通信。

UDP和TCP都使用了与应用层接口处的端口与上层的应用进程进行通信。

图6说明了端口在进程之间的通信中所起的作用应用进程应用进程应用进程应用进程图6端口在进程之间的通信中所起的作用若没有端口,运输层就无法知道数据应当交付给应用层的哪一个进程,端口是用来表示应用层的进程,图7举例说明了端口的作用计算机A计算机C1.4.4 UDP熟知端口号[13]UDP使用的熟知端口协议端口号的指定的两种方式:方式一:使用集中式管理机构。

这个机构负责指派协议端口并发布这些指派。

所有的软件在设计时都要遵从这些指派的规定。

这种方式又称为统一指派(UNIVERSAL ASSIGNMENT),这些被管理机构指定的端口指派也叫知名端口(WELL-KNOWN PORT)的指派。

相关文档
最新文档