CN105610666A - 一种基于linux操作系统的接口扩展方法和装置 - Google Patents
一种基于linux操作系统的接口扩展方法和装置 Download PDFInfo
- Publication number
- CN105610666A CN105610666A CN201510959355.8A CN201510959355A CN105610666A CN 105610666 A CN105610666 A CN 105610666A CN 201510959355 A CN201510959355 A CN 201510959355A CN 105610666 A CN105610666 A CN 105610666A
- Authority
- CN
- China
- Prior art keywords
- message
- interface
- information
- vlan
- sub
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/17—Interprocessor communication using an input/output type connection, e.g. channel, I/O port
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17306—Intercommunication techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
Abstract
本发明提出了一种基于linux操作系统的接口扩展方法和装置,该方法包括:在进行报文发送的情况下,将CPU的子接口IP地址添加到报文的虚拟局域网ID信息中;根据报文中的虚拟局域网ID信息,确定报文的发送端口。本发明通过上述技术方案,实现了在运行linux操作系统的机器上,提供多个对外的物理接口,且每个物理接口都具有了自己的IP地址。
Description
技术领域
本发明涉及通信领域,具体来说,涉及一种基于linux操作系统的接口扩展方法和装置。
背景技术
CPU本身对外提供的网络接口有限,但是由于业务需求,人们将业务处理板卡在CPU的外部外扩多个物理接口,并在运行linux的CPU上对上述物理接口进行管理。同时,在一般情况下,子接口主要用于一个物理接口支持不同网段的IP地址,从而实现了一个设备可与不同网段的设备实现互联互通。因此,现有技术中存在着CPU对外接口不足的问题。
针对相关技术中的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中的问题,本发明提出一种基于linux操作系统的接口扩展方法和装置,能扩展CPU对外的接口数量,同时每个对外接口具有了对应的IP。
本发明的技术方案是这样实现的:
根据本发明的一个方面,提供了一种基于linux操作系统的接口扩展方法。
该接口扩展方法包括:
在进行报文发送的情况下,将CPU的子接口IP地址添加到报文的虚拟局域网ID信息中;
根据报文中的虚拟局域网ID信息,确定报文的发送端口。
优选地,根据报文中的虚拟局域网ID信息,确定报文的发送端口包括:
根据报文中的虚拟局域网ID信息,确定报文是否在接收范围内;
在报文在接收范围内的情况下,将报文发送给具有相同的虚拟局域网ID信息的发送端口。
优选地,CPU的子接口的个数与交换芯片的物理端口的个数相同。
优选地,交换芯片的物理端口的虚拟局域网ID信息与CPU子接口的IP地址一一对应。
根据本发明的另一方面,提供了一种基于linux操作系统的接口扩展方法。
在进行报文接收的情况下,将接收端口的虚拟局域网ID信息添加到报文中;
根据报文中的虚拟局域网ID信息,确定接受报文的CPU的子接口。
根据本发明的另一方面,提供了一种基于linux操作系统的接口扩展装置。
该接口扩展装置包括:
第一添加模块,用于在进行报文发送的情况下,将CPU的子接口IP地址添加到报文的虚拟局域网ID信息中;
第一确定模块,用于根据报文中的虚拟局域网ID信息,确定报文的发送端口。
优选地,确定模块包括:第一确定子模块,用于根据报文中的虚拟局域网ID信息,确定报文是否在接收范围内;
发送模块,用于在报文在接收范围内的情况下,将报文发送给具有相同的虚拟局域网ID信息的发送端口。
优选地,CPU的子接口的个数与交换芯片的物理端口的个数相同。
优选地,交换芯片的物理端口的虚拟局域网ID信息与CPU子接口的IP地址一一对应。
根据本发明的另一方面,提供了一种基于linux操作系统的接口扩展装置。
该接口扩展装置包括:
第二添加模块,用于在进行报文接收的情况下,将接收端口的虚拟局域网ID信息添加到报文中;
第二确定模块,用于根据报文中的虚拟局域网ID信息,确定接受报文的CPU的子接口。
本发明实现了在运行linux操作系统的机器上,提供多个对外的物理接口,且每个物理接口都具有了自己的IP地址,更进一步实现了CPU对每个端口的管理。同时,本申请的技术方案在硬件上具有通用性,软件上不需要做任何更改。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的CPU外扩物理口的示意图;
图2是根据本发明一个实施例的基于linux操作系统的接口扩展方法的流程示意图;
图3是根据本发明一个实施例的数据报文发送的示意图;
图4是根据本发明另一个实施例的基于linux操作系统的接口扩展方法的流程示意图;
图5是根据本发明另一个实施例的数据报文接收的示意图;
图6是根据本发明另一个实施例的基于linux操作系统的接口扩展装置的结构示意图;
图7是根据本发明另一个实施例的基于linux操作系统的接口扩展装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,CPU与交换芯片之间通过一个物理接口相连,交换芯片通过PHY(物理层)对外提供N个物理接口与外部设备相连。其中,主要包含以下三部分的配置:
1)、CPU对多个子接口进行配置,具体地,CPU配置子接口IP地址,同时,子接口的个数和交换芯片对外提供的物理端口的个数相同。子接口在接收和发送数据报文时,自动在IP数据包中携带了VLAN(虚拟局域网)信息。
2)、与CPU相连的交换芯片的端口配置成接收所有对外接口的VLANID
3)、交换芯片对外的接口,每个接口都有自己的VLANID。VLANID与IP一一对应,这样CPU的每个子接口就有了自己的独立IP地址。
根据本发明的实施例,提供了
如图2所示,根据本发明实施例的一种基于linux操作系统的接口扩展方法包括:
步骤S201,在进行报文发送的情况下,将CPU的子接口IP地址添加到报文的虚拟局域网ID信息中;
步骤S203,根据报文中的虚拟局域网ID信息,确定报文的发送端口。
通过本发明的上述方案,能够在运行linux操作系统的机器上,提供多个对外的物理接口,且每个物理接口都具有了自己的IP地址。
具体的,在一个优选的实施例中,确定报文的发送端口包括:
根据报文中的虚拟局域网ID信息,确定报文是否在接收范围内;
在报文在接收范围内的情况下,将报文发送给具有相同的虚拟局域网ID信息的发送端口。
在一个优选的实施例中,CPU的子接口的个数与交换芯片的物理端口的个数相同,交换芯片的物理端口的虚拟局域网ID信息与CPU子接口的IP地址一一对应。
如图3所示,CPU组装报文,在发送时将子接口的IP地址放入报文的VLANID中,通过与交换芯片的接口发送出去。交换芯片与CPU相连的接口接收到数据报文后,解析报文的VLANID,发现端口的VLANID在自己接收的范围内,便接收并将报文转发给具有相同VLANID的出端口,如果端口的VLANID未在自己的接收的范围内,将不进行处理。
如图4所示,根据本发明实施例的一种基于linux操作系统的接口扩展方法包括:
步骤S401,在进行报文接收的情况下,将接收端口的虚拟局域网ID信息添加到报文中;
步骤S403,根据报文中的虚拟局域网ID信息,确定接受报文的CPU的子接口。
具体的,在一个优选的实施例中,确定报文的发送端口包括:
根据报文中的虚拟局域网ID信息,确定报文是否在接收范围内;
在报文在接收范围内的情况下,将报文发送给具有相同的虚拟局域网ID信息的发送端口。
在一个优选的实施例中,CPU的子接口的个数与交换芯片的物理端口的个数相同,交换芯片的物理端口的虚拟局域网ID信息与CPU子接口的IP地址一一对应。
如图5所示,交换芯片接收到数据报文之后,给报文打上交换芯片对应的接收端口的VLANID,并在交换芯片内同一VLAN内广播。由于交换芯片与CPU的接口接收所有对外接口的报文,交换芯片通过此端口将报文转发给CPU。由于CPU本身有多个子接口,当收到报文时,子接口ID与VLANID相同的IP地址会对报文做出相应。
如图6所示,根据本发明实施例的基于linux操作系统的接口扩展装置包括:
第一添加模块61,用于在进行报文发送的情况下,将CPU的子接口IP地址添加到报文的虚拟局域网ID信息中;
第一确定模块62,用于根据报文中的虚拟局域网ID信息,确定报文的发送端口。
其中,第一确定模块61包括:第一确定子模块(未示出),用于根据报文中的虚拟局域网ID信息,确定报文是否在接收范围内;
发送模块(未示出),用于在报文在接收范围内的情况下,将报文发送给具有相同的虚拟局域网ID信息的发送端口。
此外,CPU的子接口的个数与交换芯片的物理端口的个数相同。
同时,交换芯片的物理端口的虚拟局域网ID信息与CPU子接口的IP地址一一对应。
如图7所示,根据本发明的另一方面,提供了一种基于linux操作系统的接口扩展装置。
该接口扩展装置包括:
第二添加模块71,用于在进行报文接收的情况下,将接收端口的虚拟局域网ID信息添加到报文中;
第二确定模块72,用于根据报文中的虚拟局域网ID信息,确定接受报文的CPU的子接口。
其中,CPU的子接口的个数与交换芯片的物理端口的个数相同。
同时,交换芯片的物理端口的虚拟局域网ID信息与CPU子接口的IP地址一一对应。
综上所述,借助于本发明的上述技术方案,本发明实现了在运行linux操作系统的机器上,提供多个对外的物理接口,且每个物理接口都具有了自己的IP地址,更进一步实现了CPU对每个端口的管理。同时,本申请的技术方案在硬件上具有通用性,软件上不需要做任何更改。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于linux操作系统的接口扩展方法,其特征在于,包括:
在进行报文发送的情况下,将CPU的子接口IP地址添加到所述报文的虚拟局域网ID信息中;
根据所述报文中的所述虚拟局域网ID信息,确定所述报文的发送端口。
2.根据权利要求1所述的方法,其特征在于,所述根据所述报文中的所述虚拟局域网ID信息,确定所述报文的发送端口包括:
根据所述报文中的所述虚拟局域网ID信息,确定所述报文是否在接收范围内;
在所述报文在接收范围内的情况下,将所述报文发送给具有相同的所述虚拟局域网ID信息的发送端口。
3.根据权利要求1所述的方法,其特征在于,所述CPU的子接口的个数与交换芯片的物理端口的个数相同。
4.根据权利要求3所述的方法,其特征在于,所述交换芯片的物理端口的虚拟局域网ID信息与所述CPU子接口的IP地址一一对应。
5.一种基于linux操作系统的接口扩展方法,其特征在于,包括:
在进行报文接收的情况下,将接收端口的虚拟局域网ID信息添加到所述报文中;
根据所述报文中的虚拟局域网ID信息,确定接受所述报文的CPU的子接口。
6.一种基于linux操作系统的接口扩展装置,其特征在于,包括:
第一添加模块,用于在进行报文发送的情况下,将CPU的子接口IP地址添加到所述报文的虚拟局域网ID信息中;
第一确定模块,用于根据所述报文中的所述虚拟局域网ID信息,确定所述报文的发送端口。
7.根据权利要求6所述的装置,其特征在于,所述确定模块包括:
第一确定子模块,用于根据所述报文中的所述虚拟局域网ID信息,确定所述报文是否在接收范围内;
发送模块,用于在所述报文在接收范围内的情况下,将所述报文发送给具有相同的所述虚拟局域网ID信息的发送端口。
8.根据权利要求6所述的装置,其特征在于,所述CPU的子接口的个数与交换芯片的物理端口的个数相同。
9.根据权利要求8所述的装置,其特征在于,所述交换芯片的物理端口的虚拟局域网ID信息与所述CPU子接口的IP地址一一对应。
10.一种基于linux操作系统的接口扩展装置,其特征在于,包括:
第二添加模块,用于在进行报文接收的情况下,将接收端口的虚拟局域网ID信息添加到所述报文中;
第二确定模块,用于根据所述报文中的虚拟局域网ID信息,确定接受所述报文的CPU的子接口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510959355.8A CN105610666A (zh) | 2015-12-18 | 2015-12-18 | 一种基于linux操作系统的接口扩展方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510959355.8A CN105610666A (zh) | 2015-12-18 | 2015-12-18 | 一种基于linux操作系统的接口扩展方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105610666A true CN105610666A (zh) | 2016-05-25 |
Family
ID=55990211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510959355.8A Pending CN105610666A (zh) | 2015-12-18 | 2015-12-18 | 一种基于linux操作系统的接口扩展方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105610666A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108989167A (zh) * | 2017-05-31 | 2018-12-11 | 江苏兴云新能源有限公司 | 控制器局域网系统 |
CN112532540A (zh) * | 2019-09-17 | 2021-03-19 | 华为技术有限公司 | 接口管理方法、装置和系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101741664A (zh) * | 2009-12-21 | 2010-06-16 | 中兴通讯股份有限公司 | 以太网接口系统实现方法及实现装置 |
US20120198097A1 (en) * | 2010-06-07 | 2012-08-02 | Vmware, Inc. | Safely Sharing USB Devices During a Switch in State |
CN103294630A (zh) * | 2013-05-07 | 2013-09-11 | 福建鑫诺通讯技术有限公司 | 一种嵌入式linux系统中实现串口多路复用的方法 |
CN104104518A (zh) * | 2013-04-12 | 2014-10-15 | 南京南瑞继保电气有限公司 | 一种嵌入式系统中虚拟多个以太网控制器的方法 |
-
2015
- 2015-12-18 CN CN201510959355.8A patent/CN105610666A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101741664A (zh) * | 2009-12-21 | 2010-06-16 | 中兴通讯股份有限公司 | 以太网接口系统实现方法及实现装置 |
US20120198097A1 (en) * | 2010-06-07 | 2012-08-02 | Vmware, Inc. | Safely Sharing USB Devices During a Switch in State |
CN104104518A (zh) * | 2013-04-12 | 2014-10-15 | 南京南瑞继保电气有限公司 | 一种嵌入式系统中虚拟多个以太网控制器的方法 |
CN103294630A (zh) * | 2013-05-07 | 2013-09-11 | 福建鑫诺通讯技术有限公司 | 一种嵌入式linux系统中实现串口多路复用的方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108989167A (zh) * | 2017-05-31 | 2018-12-11 | 江苏兴云新能源有限公司 | 控制器局域网系统 |
CN112532540A (zh) * | 2019-09-17 | 2021-03-19 | 华为技术有限公司 | 接口管理方法、装置和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100471162C (zh) | 一种发布及处理虚线路信息的方法和供应商边缘设备 | |
CN105847108B (zh) | 容器间的通信方法及装置 | |
CN102891802B (zh) | 数据分流方法、移动终端及数据分流系统 | |
CN107852773B (zh) | 一种数据传输的方法、相关设备及系统 | |
JP2020511083A (ja) | サービス品質制御方法およびその装置、smf、upf、ue、pcfおよびan | |
CN104506408A (zh) | 基于sdn的数据传输的方法及装置 | |
CN100581177C (zh) | 获得互联网协议地址及建立操作维护链路的方法和系统 | |
CN102594711A (zh) | 一种在边缘设备上的报文转发方法和边缘设备 | |
CN105025044A (zh) | 一种设备控制方法及系统 | |
CN102845123A (zh) | 虚拟私云的连接方法及隧道代理服务器 | |
CN104243608B (zh) | 一种通信方法、云管理服务器及虚拟交换机 | |
CN102025792A (zh) | 路由器及其ip地址设置方法 | |
CN104243281A (zh) | 基于移动互联网的语音通信方法 | |
JP2015532053A (ja) | 中継装置を有するネットワーク内の3つのアドレスのみ適応できるアクセスポイントにおけるレイヤ−2アドレスの管理 | |
CN103703453A (zh) | 提供用于消息负载均衡的推送服务的系统及其方法 | |
CN103379184A (zh) | 网络业务访问的方法及系统 | |
CN102185766A (zh) | Dhcp服务器回应报文的单播转发方法及中转设备 | |
CN104954155B (zh) | 具有多个业务板的网络设备以及多业务板分担方法 | |
CN105323229A (zh) | 一种基于cpe的数据传输方法、网元、平台及系统 | |
CN102546407A (zh) | 报文发送方法及装置 | |
ATE522047T1 (de) | Token-bus-kommunikationssystem | |
CN108966363A (zh) | 一种连接建立方法及装置 | |
CN101018234B (zh) | 路由信息发布方法及网络地址转换-协议转换网关设备 | |
CN105610666A (zh) | 一种基于linux操作系统的接口扩展方法和装置 | |
CN104065656A (zh) | 一种媒体流数据识别方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160525 |