- 主页 > 生活百科 > >
network的命名空间问题主要在于,每个协议模块的xx_net私有结构不仅是一个,而是由内核全局决定的,即每注册一个新的用户(有点像虚拟机机制),就分配一个新的xx_net结构,这样多用户间可以用参数相同的socket连接,但却指向不同的socket, 可以看到socket的操作,都会有个net参数,就是为了这个作用,主要实现函数在namespace.c中 在Linux协议栈中引入网络命名空间,是为了支持网络协议栈的多个实例,而这些协议栈的隔离就是由命名空间来实现的(有点像进程的线性地址空间,协议栈不能访问其他协议栈的私有数据) 。需要纳入命名空间的元素包括进程,套接字,网络设备 。进程创建的套接字必须属于某个命名空间,套接字的操作也必须在命名空间内进行,网络设备也必须属于某个命名空间,但可能会改变,因为网络设备属于公共资源<~/include/net.h> 在内核中引入命名空间工作量非常大. 为了保持与向后兼容,网络系统在初始化的时候只初始化了一个命名空间,即init_net命名空间 。所有的命名空间通过list项组织起来 。每个网络设备都对应有一个命名空间 。命名空间下的所有网络设备通过dev_base_head组织在一起
推荐阅读
-
-
43岁韩国歌手因手术失血过多去世,生前体重320公斤诸病缠身
-
-
-
教宗方济各呼吁教徒祈祷AI和机器人能“永远为人类服务”
-
-
巴基斯坦东部城市拉合尔一处宗教场所附近发生爆炸,已造成2人死
-
理财|南银理财公司正式揭牌亮相“致远”引领固收+产品布局
-
智东西|寒武纪科创板首发过会 欧洲推云计算生态计划,智东西周报:马斯克又发射了60颗卫星
-
卧蚕和眼袋容易混淆 中医针灸巧治眼袋 爱美的人一定要看:注射美容的三大误区
-
-
孕期38+6疑似宫内窘迫的情况下NST无反应可以使用催产素进行OCT激惹实验吗求专家解答谢谢
-
篮球火火火|球迷:之前错怪他了,广厦全华班大胜!李春江儿子5记三分成奇兵
-
-
王晶@被王晶发掘时才读大二,拍3部电影狂捞31亿,今成“最美晶女郎”!
-
-
-
-
-
【大众报业·海报新闻】陕西柞水回应“高中生玩手机被退学”:学校决定收回退学处分