[发明专利]Netlink资源的容器隔离方法及装置有效
申请号: | 201710637129.7 | 申请日: | 2017-07-31 |
公开(公告)号: | CN109324908B | 公开(公告)日: | 2021-09-07 |
发明(设计)人: | 钟国城;张亮;杨坚锐;刘金苗 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/455 |
代理公司: | 北京亿腾知识产权代理事务所(普通合伙) 11309 | 代理人: | 陈霁 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | netlink 资源 容器 隔离 方法 装置 | ||
公开了一种netlink资源的容器隔离方法及装置。内核接收应用程序下发的用于创建容器的触发指令。内核根据触发指令创建对应应用程序的容器,建立容器的netlink命名空间,并向应用程序发送netlink命名空间创建成功通知。内核接收容器下发的第一netlink消息,所述第一netlink消息包括容器运行时生成的表项。内核根据netlink命名空间的标识,存储表项,以使容器从内核获取所需的表项。该方法通过创建netlink namespace机制,实现了netlink通道的隔离,减少netlink消息的广播风暴,提高了netlink组播报文的处理效率。
技术领域
本申请涉及计算机网络领域,尤其涉及一种netlink资源的容器隔离方法及装置。
背景技术
Linux软件容器(Linux containers,LXC)是一种操作系统层虚拟化(operatingsystem–level virtualization)技术,用于隔离一个主机上使用同一个Linux内核的不同Linux系统(又称为容器)。它将应用软件系统打包成一个容器,该容器可以包括用户空间(user space),用户空间为应用程序运行的存储区域,应用程序的执行必须依托于容器所在的主机的内核提供的资源(如CPU资源、存储资源、I/O资源)。
目前使用Linux命名空间(namespace)技术隔离为不同容器分配的内核资源,这使得进程标识(process identifier,PID),进程间通信(inter-process communication,IPC)通道,网络转发表项等系统资源不再是全局性的,而是属于特定的namespace。每个namespace里面的资源对其他namespace都是不透明的(即不可见的)。namespace简单的来说就是将资源放到不同的命名空间中,各个命名空间中的资源是相互隔离的,各个命名空间中的资源被不同的进程调用。通常,一个容器对应一个容器命名空间,一个容器命名空间可以对应多个容器,该容器命名空间可以包括一个或多个子命名空间。当内核向容器发送容器订阅的信息时,内核可通过netlink通道以netlink消息的方式将该信息发送给该容器。图1为一种操作系统的逻辑结构示意图。如图1所示,操作系统分为用户空间和内核,用户空间包括容器1、容器2和容器3,内核包括命名空间1和命名空间2。容器1和容器3对应命名空间1,容器2对应命名空间2,命名空间1和应命名空间2分别通过netlink通道以netlink消息向容器1、容器2和容器3发送相应容器订阅的信息。
然而,现有容器的namespace不能实现netlink消息的隔离并且由于内核中表项资源(如arp、routing、interface等表项)的更新,都会通过netlink消息以组播或者广播的形式发送到多个容器的用户空间,即图1中命名空间1发给容器1和容器3的netlink消息容器2页可以接收。,这导致共享该内核的所有容器都会接收到该表项,造成表项广播泛滥。
发明内容
本申请提供了一种netlink资源的容器隔离方法及装置。实现netlink资源的隔离,使内核中的表项通过netlink消息广播发送后,只有对应的容器的用户空间会接收到该表项,避免共享该内核的所有进程都会接收到该表项,造成表项广播泛滥。
第一方面,提供了一种netlink资源的容器隔离方法,该方法可以包括:内核接收应用程序下发的用于创建容器的触发指令。内核根据触发指令创建对应应用程序的容器,建立容器的netlink命名空间,并向应用程序发送netlink命名空间创建成功通知。内核接收容器下发的第一netlink消息,第一netlink消息包括容器运行时生成的表项。内核根据netlink命名空间的标识,存储表项,以向所述容器的用户空间发送所述容器需要的表项。
该方法通过创建netlink namespace机制,实现了netlink通道的隔离,减少netlink消息的广播风暴,提高了netlink组播报文的处理效率。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710637129.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种分布式锁管理方法和装置
- 下一篇:一种基于云服务的人脸比对服务系统及方法