大家好,今天小编关注到一个比较有意思的话题,就是关于举例描述j***a语言中的问题,于是小编就整理了1个相关介绍举例描述j***a语言中的解答,让我们一起看看吧。
既然IP协议也能够进行数据的无连接不可靠传输服务,为什么还需要UDP协议?
简明扼要的回答:
IP协议和UDP协议是各司其职:
建议楼主多看看TCP/IP协议簇的书籍。
IP协议干不了UDP协议的活
- UDP协议也干不了IP协议的活
- 关系
IP协议是UDP协议的载体,也就是说IP协议承载着UDP协议,***如IP协议不存在,那UDP协议也完全丧失了能力。
但能力上它是!=数学上的包含关系:所以,IP协议不能干UDP协议的活。
正确的关系图,即使先后承载的关系
- IP协议
IP协议能力
IP protocol 的能力是标识网络上的一个主机。你可以理解为IP protocol= IP address
即它只提供地址的能力。
对于原始IP数据包,每个IP地址只能有一个专用侦听套接字。 IP地址标识网络层的主机,使流量能够到达某个物理设备,即“主机”。它的能力仅限于此。
但是只要你想在同一个主机上有不同的“目的地”(即应用程序),你就需要像TCP和UDP 这些protocol。
UDP protocol
UDP协议能力
UDP协议具有的端口概念,来解决同一个主机上有不同的“目的地”(即应用程序)。
UDP是支持端口的最小协议。
诞生的意义
一旦目标机器收到这样一个raw IP数据包,它应该将它传递给哪个应用程序? 我们需要一种识别特定消息的目标应用程序即 UDP和TCP这样的,通过端口号来完成目标地址的分发。
一旦数据包使用其IP protocol 到达主机,数据包需要被分配给该机器上的其中一个应用程序。 要确定哪个应用程序应该获取数据包,它需要基于端口的解复用逻辑。 UDP具有端口信息,IP用它将数据包传送到适当的应用程序。
举例,快递
设想一下,你在某里,或者某东买了一个东西:
IP地址=IP protocol 是建筑物的街道地址。
UDP protocol = 你所住的房间号即对应udp+端口号。
欢迎关注,一起进步
最近一直在学习TCP/IP协议的相关资料,正好可以针对此问题,说一下个人的一些想法。
首先,说明一下UDP协议和IP协议的关系。
如上图所示,UDP位于IP协议的上层,实现了对IP协议的封装。
第二,看一下两个协议数据格式的区别。
图1
图2
图3
通过比对图1和图2,可以看到UDP相对IP协议显著多了端口号字段。通过图3可以看到IP协议将UDP协议包在了里面。
第三、端口的作用。把主机比作一个大楼的话,那么端口号就代表这个大楼里面的房间。端口最主要的作用的是与应用绑定在了一起,不同的应用使用不同的端口号。IP协议是将数据从一个大楼发送到了另一个大楼。而有了端口号,可以知道数据是从这个大楼的A房间发送到了另一个大楼的A房间。这个是IP协议无法做到的。实际上我们知道每个大楼里面是有多个房间的,就好比一个主机上是有多个应用。例如SNMP\DNS等。
综合来说,IP协议还是无法代替UDP协议的。
本人具有多年的j***a开发经验,熟悉多种框架,熟悉网络编程,熟悉j***a安全编程,熟悉大数据,熟悉多种安全协议,有兴趣的同学可以互相关注,互相学习!!!
“我是哟哟吼说科技,专注于数据网络的回答,欢迎大家与我交流数据网络的问题”
如题,IP协议能进行数据的无连接不可靠的传输服务,但IP Header协议字段中只有一个字节,最多只能提供255种协议的标识,而这些大多又被特定的协议所占用,留给终端用户的空间非常小;而UDP可以提供更大的端口空间来满足此需求,UDP的端口号只占用两个字节,除去系统保留的1-1023端口外,为用户预留的端口有60000多个,因此能完全满足需求。
UDP报文的格式如下:
通过UDP报文的结构可以看出,UDP是通过16位源端口号和目标端口号来处理应用程序之间的区分的,16位UDP校验和可以完成传输层的校验,对出错的数据包直接就行丢弃处理。
那么IP协议的校验能完成此功能么?
不能。IP协议只校验IP报头,不参与数据的校验,整个数据包的校验是在传输层来完成的。
由于网络层和传输层在操作系统内实现层次不同,目前操作系统也不允许用户直接去操作IP协议,而是通过完成传输层协议的封装后,进而由操作系统进行网络层的封装、校验和计算过程。
因此,IP协议是无法代替UDP协议的。
欢迎大家多多关注我,在下方评论区说出自己的见解。
到此,以上就是小编对于举例描述j***a语言中的问题就介绍到这了,希望介绍关于举例描述j***a语言中的1点解答对大家有用。