网络通信方法及客户端技术

技术编号:13171093 阅读:60 留言:0更新日期:2016-05-10 14:43
本发明专利技术提供了一种网络通信方法及客户端。其中,该方法包括:使用docker指定桥bridge,其中,bridge按如下步骤生成:在虚拟局域网vlan设置为中继trunk模式时,利用网桥设备关联vlan与网卡,生成bridge;利用bridge为docker中的每个container分配独立的网络通信标识,使得每个container能够利用其网络通信标识通过vlan独立与外界进行通信,其中,container为docker启动的container。依据本发明专利技术实施例提供的网络通信方法能够使得docker中的每个container独立与外界进行通信。

【技术实现步骤摘要】

本专利技术涉及通信领域,特别是涉及一种网络通信方法及客户端
技术介绍
随着网络技术的发展,人们越来越习惯在同一服务器中同时运行多个业务。例如,在一台内存为64G的服务器上同时运行导航业务、手机助手以及其他主站业务。在一台服务器上同时运行多个业务时,为保证当其中一个业务受到攻击或者出现运行等方面的问题时,其他业务不会受到相关的不良影响,对服务器进行资源隔离。在进行资源隔离时,由于使用VM虚拟机需要占用大量的中央处理器(Central Processing Unit,以下简称CPU)的资源,因此,现有技术中,通常采用由开源应用容器引擎docker管理多个容器container实现的虚拟化方案来进行资源隔离。但是,现有技术中,在使用docker与container的方式进行资源隔离时,docker的每个container不能够独立与外界进行通信,而且在对container进行端口分配时,每个端口仅能够让一个container使用,无法实现端口对应的技术或者协议被多个container共用,导致需要多重复杂繁琐的操作才能够进行多种技术或者功能的对接,甚至存在一些技术或者功能,在现有技术中,不论经过多少复杂繁琐的操作也无法实现对接。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的网络通信方法和相应的客户端。依据本专利技术的一个方面,提供了一种网络通信方法,应用于包括多个容器container的开源应用容器引擎docker,包括:使用docker指定桥bridge,其中,所述bridge按如下步骤生成:在虚拟局域网vlan设置为中继trunk模式时,利用网桥设备关联所述vlan与网卡,生成所述bridge ;以及利用所述bridge为所述docker中的每个container分配独立的网络通信标识,使得每个container能够利用其网络通信标识通过所述vlan独立与外界进行通信,其中,所述container为所述docker启动的container。可选地,为所述docker中的每个container分配独立的网络通信标识,包括:利用所述vlan根据所述docker中的container的个数对网络通信标识进行划分;根据所述划分结果为所述docker中的每个container分配独立的网络通信标识。可选地,利用添加完成的所述网桥设备启动所述docker的步骤包括:更改所述docker中的配置数据,以阻止所述docker的网络通信标识分配操作,其中,所述配置数据包括网卡配置数据;将指定网络通信标识与所述docker中选定的container绑定,以供所述选定的container利用所述指定网络通信标识独立与外界进行通信。可选地,更改所述docker中的配置数据的步骤包括:更改所述docker中的网卡配置数据为关闭false状态。可选地,所述方法还包括:利用所述bridge为所述docker中的每个container分配独立的网络通信标识之后,将所述docker中的所有container映射至同一功能端口,以供所述所有container共用所述功能端口对应的资源。可选地,所述网络通信标识包括网络互联协议IP地址。依据本专利技术的另一方面,还提供了一种网络通信客户端,应用于包括多个container的docker,包括:指定模块,适于使用docker指定bridge,其中,所述bridge按如下步骤生成:在虚拟局域网vlan设置为中继trunk模式时,利用网桥设备关联所述vlan与网卡,生成所述bridge ;以及分配模块,适于利用所述bridge为所述docker中的每个container分配独立的网络通信标识,使得每个container能够利用其网络通信标识通过所述vlan独立与外界进行通信,其中,所述container为所述docker启动的container。可选地,在利用所述bridge为所述docker中的每个container分配独立的网络通信标识时,所述分配模块还适于:利用所述vlan根据所述docker中的container的个数对网络通信标识进行划分;以及根据所述划分结果为所述docker中的每个container分配独立的网络通信标识。可选地,所述网络通信客户端还包括:数据更改模块,适于更改所述docker中的配置数据,以阻止所述docker的网络通信标识分配操作,其中,所述配置数据包括网卡配置数据;以及绑定模块,适于将指定网络通信标识与所述docker中选定的container绑定,以供所述选定的container利用所述指定网络通信标识独立与外界进行通信。可选地,在更改所述docker中的配置数据时,所述数据更改模块还适于:更改所述docker中的网卡配置数据为关闭false状态。可选地,所述网络通信客户端还包括:映射模块,适于利用所述bridge为所述docker中的每个container分配独立的网络通信标识之后,将所述docker中的所有container映射至同一功能端口,以供所述所有container共用所述功能端口对应的资源。可选地,所述网络通信标识包括网络互联协议IP地址。依据本专利技术实施例,能够使用docker指定bridge,其中,bridge的生成步骤为:在虚拟局域网vlan设置为中继trunk模式时,利用网桥设备关联vlan与网卡,生成bridge。之后,利用指定的bridge为docker中的每个container分配独立的网络通信标识,使得每个container能够利用其网络通信标识通过vlan独立与外界进行通信,解决了现有技术中docker的每个container无法独立与外界进行通信的问题。其中,本例中的container为docker启动的container。由于利用docker自身创建的bridge为docker管理的所有container分配网络通信标识时,所有的container只能够共用同一个网络通信标识,而利用指定的bridge进行网络通信标识的分配操作时,贝U能够利用bridge中的vlan对网络通信标识进行划分,使得组成docker的每个container能够被分配到独立的网络通信标识,并利用该网络通信标识独立与外界进行通信。因此,本专利技术实施例中,docker中的每个container能够直接与外界进行通信,避免通过第三方的数据分配等操作与外界进行通信导致的数据包不能够及时分配的问题,降低丢包率,提高container与外界的通信效率。另外,由于使用本专利技术实施例提供的网络通信方法能够使得docker中的每个container具备独立与外界进行通信的能力(通过独立的网络通信标识),因此,则当docker中存在多个container时,可以利用每个container的独立的网络通信标识映射到同一端口,每个container都可以利用该端口与外界通信(包括同时和/或分时使用),互相之间并不影响。即采用本专利技术实施例能够将所有container绑定到同一个端口,实现任意端口对应的功能或者技术的无缝对接。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施本文档来自技高网...

【技术保护点】
一种网络通信方法,应用于包括多个容器container的开源应用容器引擎docker,包括:使用docker指定网桥bridge,其中,所述bridge按如下步骤生成:在虚拟局域网vlan设置为中继trunk模式时,利用网桥设备关联所述vlan与网卡,生成所述bridge;以及利用所述bridge为所述docker中的每个container分配独立的网络通信标识,使得每个container能够利用其网络通信标识通过所述vlan独立与外界进行通信,其中,所述container为所述docker启动的container。

【技术特征摘要】

【专利技术属性】
技术研发人员:许斯亮赵鹏
申请(专利权)人:北京奇虎科技有限公司奇智软件北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1