查看: 2311| 回复: 14
跳转到指定楼层
上一主题 下一主题
收起左侧

[其他] 问一UDP和IP的问题

全局:

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
今天读了下UDP和IP的header的格式

我发现IP的一个section是"protoco",意思说这个IP可以是在传输UDP或者TCP

这个意思是不是,除了 UDP 可以传输 UDP datagram之外,IP也可以传输 UDP datagram。那么他们之间的区别是什么。

如果不是的,

UDP和IP在逻辑上个关系是啥?  

感谢各位。认真回复的有米。

也求一个米


上一篇:Mock Interview(Pramp或任何视讯会议)找愿意一起做模拟面试的小伙伴
下一篇:问一个concurrent server和select的问题(网络编程)
推荐
dutingda 2020-12-22 02:13:00 | 只看该作者
全局:
osi layer 4 transport layer: udp, layer 3 network layer: ip
回复

使用道具 举报

推荐
kunge12345 2020-12-22 15:12:41 | 只看该作者
全局:
本帖最后由 kunge12345 于 2020-12-22 15:38 编辑

强烈建议系统地学习/复习以下computer network的知识,否则你顶多就断章取义的理解了。

如果时间紧的话,看一下Computer Networking: A Top-Down Approach这本书的1.5以及4.3.1章节,资源应该很好找
最简单的解释TCP/UDP等传输层协议都使用了IP(网络层协议),IP在传送完一段数据后,接收方要知道这段数据是给哪一种传输层协议传送的,就是通过这个proto field:
Protocol: This field is typically used only when an IP datagram reaches its finaldestination. The value of this field indicates the specific transport-layer protocol towhich the data portion of this IP datagram should be passed. For example, a value of6 indicates that the data portion is passed to TCP, while a value of 17 indicates thatthe data is passed to UDP. For a list of all possible values, see [IANA ProtocolNumbers 2016]. Note that the protocol number in the IP datagram has a role that isanalogous to the role of the port number field in the transport-layer segment. Theprotocol number is the glue that binds the network and transport layers together,whereas the port number is the glue that binds the transport and application layerstogether.

csg25-03-tcp-ip-encapsulation.png (13.09 KB, 下载次数: 8)

Encapsulation

Encapsulation
回复

使用道具 举报

推荐
ezohuya 2020-12-8 07:23:22 | 只看该作者
全局:
反了,UDP在处理上是在IP层上面,但是数据上是放在IP层的payload里面
IP层看到的是:
[IP packet]= [IP header][IP Payload]
然后从header里发现payload应该归UDP协议处理,所以把Payload丢给UDP协议栈那块程序,然后UDP会从这块payload里parse自己的UDP header
[IP Payload] = [UDP header][UDP payload]

评分

参与人数 3大米 +5 收起 理由
yyj2518 + 2 正在复习计网期末的表示,你说的对!
techDiscussion + 1 欢迎分享你知道的情况,会给更多积分奖励!
lwx40115 + 2 多谢指正!

查看全部评分

回复

使用道具 举报

🔗
gongsidegou 2020-12-8 06:50:02 | 只看该作者
全局:
网络层次结构模型上 IP和UDP是不同层的协议, LZ可以去查一下, 细节记不清了。。。

评分

参与人数 1大米 +1 收起 理由
techDiscussion + 1 欢迎分享你知道的情况,会给更多积分奖励!

查看全部评分

回复

使用道具 举报

🔗
lwx40115 2020-12-8 06:56:40 | 只看该作者
全局:
UDP在IP之上,其实就是在IP报文外面套个UDP Header, UDP有端口的概念

评分

参与人数 1大米 +1 收起 理由
techDiscussion + 1 欢迎分享你知道的情况,会给更多积分奖励!

查看全部评分

回复

使用道具 举报

🔗
 楼主| techDiscussion 2020-12-8 07:08:21 | 只看该作者
全局:
lwx40115 发表于 2020-12-8 06:56
UDP在IP之上,其实就是在IP报文外面套个UDP Header, UDP有端口的概念

IP报文外面套个UDP Header  -- 这是啥意思?
回复

使用道具 举报

🔗
 楼主| techDiscussion 2020-12-8 07:08:36 | 只看该作者
全局:
lwx40115 发表于 2020-12-8 06:56
UDP在IP之上,其实就是在IP报文外面套个UDP Header, UDP有端口的概念

IP报文外面套个UDP Header  -- 这是啥意思?
回复

使用道具 举报

🔗
lwx40115 2020-12-8 07:14:43 | 只看该作者
全局:
techDiscussion 发表于 2020-12-8 07:08
IP报文外面套个UDP Header  -- 这是啥意思?

[UDP Header][IP Header][Payload]
回复

使用道具 举报

🔗
hychl1023 2020-12-8 07:35:03 | 只看该作者
全局:
TCP和UDP属于transport layer
IP属于network layer
是网络中的上下两级。
TCP和UDP都要通过IP传输数据。

评分

参与人数 2大米 +2 收起 理由
jsun2s + 1 赞一个
techDiscussion + 1 欢迎分享你知道的情况,会给更多积分奖励!

查看全部评分

回复

使用道具 举报

🔗
yyj2518 2020-12-8 12:54:33 | 只看该作者
全局:
ezohuya 发表于 2020-12-8 07:23
反了,UDP在处理上是在IP层上面,但是数据上是放在IP层的payload里面
IP层看到的是: ...
正在复习计网期末的表示,你说的对!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表