CN105610666A - 一种基于linux操作系统的接口扩展方法和装置 - Google Patents

一种基于linux操作系统的接口扩展方法和装置 Download PDF

Info

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
Application number
CN201510959355.8A
Other languages
English (en)
Inventor
姜彦君
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dawning Information Industry Beijing Co Ltd
Original Assignee
Dawning Information Industry Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Dawning Information Industry Beijing Co Ltd filed Critical Dawning Information Industry Beijing Co Ltd
Priority to CN201510959355.8A priority Critical patent/CN105610666A/zh
Publication of CN105610666A publication Critical patent/CN105610666A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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/163Interprocessor communication
    • G06F15/17Interprocessor communication using an input/output type connection, e.g. channel, I/O port
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric

Abstract

本发明提出了一种基于linux操作系统的接口扩展方法和装置,该方法包括:在进行报文发送的情况下,将CPU的子接口IP地址添加到报文的虚拟局域网ID信息中;根据报文中的虚拟局域网ID信息,确定报文的发送端口。本发明通过上述技术方案,实现了在运行linux操作系统的机器上,提供多个对外的物理接口,且每个物理接口都具有了自己的IP地址。

Description

一种基于linux操作系统的接口扩展方法和装置
技术领域
本发明涉及通信领域,具体来说,涉及一种基于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的子接口。
CN201510959355.8A 2015-12-18 2015-12-18 一种基于linux操作系统的接口扩展方法和装置 Pending CN105610666A (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 南京南瑞继保电气有限公司 一种嵌入式系统中虚拟多个以太网控制器的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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