请选择 进入手机版 | 继续访问电脑版
点击联系客服
客服QQ: 客服微信:

广州老站长门户

 找回密码
 立即注册
查看: 85|回复: 50

Linux UDP接收过程详细信息

[复制链接]

1

主题

1

帖子

-7

积分

限制会员

积分
-7
发表于 2021-10-2 15:00:40 | 显示全部楼层 |阅读模式
UDP是一种非连接协议,比TCP更容易实现。

1、创建socket

无论是TCP还是UDP,底层都是套接字映射。套接字有接收队列、等待队列和三个发送队列。

接收队列:

用于存储该数据。

等待队列:

线程调用recv_msg()时,如果传入队列为空,则会被阻止并添加到等待队列中。如果接收队列不为空,则直接读取相应的数据

发送队列:

当线程调用send_msg()时,它将数据挂起到传输队列,并将相应的内核线程写入网卡

2、接收数据

数据到达NIC后,将对udp_recv()逐层调用,根据源IP地址、源端口号找到相应的套接字,将数据包排队到套接字的接收队列,唤醒等待队列的线程,线程继续recv_msg()。
回复

使用道具 举报

0

主题

1570

帖子

-1058

积分

限制会员

积分
-1058
发表于 2021-10-2 15:09:36 | 显示全部楼层
难得一见的好帖
回复

使用道具 举报

0

主题

1564

帖子

-950

积分

限制会员

积分
-950
发表于 2021-10-2 15:45:32 | 显示全部楼层
谢谢楼主,共同发展
回复

使用道具 举报

1

主题

1521

帖子

-948

积分

限制会员

积分
-948
发表于 2021-10-2 16:37:58 | 显示全部楼层
有竞争才有进步嘛
回复

使用道具 举报

0

主题

1597

帖子

-1046

积分

限制会员

积分
-1046
发表于 2021-10-2 17:03:32 | 显示全部楼层
前排支持下
回复

使用道具 举报

0

主题

1598

帖子

-1095

积分

限制会员

积分
-1095
发表于 2021-10-2 17:44:12 | 显示全部楼层
小手一抖,积分到手!
回复

使用道具 举报

0

主题

1568

帖子

-996

积分

限制会员

积分
-996
发表于 2021-10-2 18:23:30 | 显示全部楼层
不错不错,楼主您辛苦了。。。
回复

使用道具 举报

1

主题

1592

帖子

-1049

积分

限制会员

积分
-1049
发表于 2021-10-2 20:52:38 | 显示全部楼层
相当不错,感谢无私分享精神!
回复

使用道具 举报

1

主题

1546

帖子

-1039

积分

限制会员

积分
-1039
发表于 2021-10-2 21:28:45 | 显示全部楼层
LZ说的很不错
回复

使用道具 举报

0

主题

1553

帖子

-1047

积分

限制会员

积分
-1047
发表于 2021-10-2 21:52:51 | 显示全部楼层
前排支持下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|无图版|手机版|小黑屋|广州@IT精英团

GMT+8, 2021-10-25 08:21 , Processed in 0.374401 second(s), 40 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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