- 主页 > 生活百科 > >
network的命名空间问题主要在于,每个协议模块的xx_net私有结构不仅是一个,而是由内核全局决定的,即每注册一个新的用户(有点像虚拟机机制),就分配一个新的xx_net结构,这样多用户间可以用参数相同的socket连接,但却指向不同的socket, 可以看到socket的操作,都会有个net参数,就是为了这个作用,主要实现函数在namespace.c中 在Linux协议栈中引入网络命名空间,是为了支持网络协议栈的多个实例,而这些协议栈的隔离就是由命名空间来实现的(有点像进程的线性地址空间,协议栈不能访问其他协议栈的私有数据) 。需要纳入命名空间的元素包括进程,套接字,网络设备 。进程创建的套接字必须属于某个命名空间,套接字的操作也必须在命名空间内进行,网络设备也必须属于某个命名空间,但可能会改变,因为网络设备属于公共资源<~/include/net.h> 在内核中引入命名空间工作量非常大. 为了保持与向后兼容,网络系统在初始化的时候只初始化了一个命名空间,即init_net命名空间 。所有的命名空间通过list项组织起来 。每个网络设备都对应有一个命名空间 。命名空间下的所有网络设备通过dev_base_head组织在一起
推荐阅读
-
-
[塞尔维亚]塞尔维亚:我们不需要钱,中国网友:不,你需要,这大概就是友谊
-
-
白酒:普通香型白酒最佳饮用期是5年,酱香酒是15年!你买的什么酒?
-
「言车社」30万的特斯拉Model3没质感?这台车完胜
-
阿力讲星座|3属相遇流年旺财,生意红火,财气连绵,婚姻美满!,8.7日开始
-
周到|旅美熊猫家族添新丁,四年之后它也会坐“熊猫快递号”专机回家吗?
-
祥说篮球|东部五虎或被4-0横扫?最贵阵容变败笔,2.7亿双巨头合砍17分
-
-
生二胎到底是值不值?过来人:用3年辛劳换30年幸福,真的很值
-
-
-
央视新闻|两部门:鼓励基层群众性自治组织参与城乡社区防汛救灾工作
-
勒布朗·詹姆斯|狂轰28+12+8,詹皇刷爆5大神迹,凶狠犯规+争议吹罚挡不住他
-
艾滋病:当艾滋病恐惧症极端情绪来临时 我们应该如何应对和脱恐
-
美丽一点 奈何自己都还走不稳,非常暖心,暖哭的一幕:弟弟想牵着姐姐
-
-
【黄璐琦】中国工程院院士黄璐琦:目前湖北地区病例中医药参与
-
-