CN111158845B - 一种采用通用计算机实现路由器和终端一体化集成的方法 - Google Patents

一种采用通用计算机实现路由器和终端一体化集成的方法 Download PDF

Info

Publication number
CN111158845B
CN111158845B CN201811316398.4A CN201811316398A CN111158845B CN 111158845 B CN111158845 B CN 111158845B CN 201811316398 A CN201811316398 A CN 201811316398A CN 111158845 B CN111158845 B CN 111158845B
Authority
CN
China
Prior art keywords
router
virtual machine
purpose computer
general
virtual
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.)
Active
Application number
CN201811316398.4A
Other languages
English (en)
Other versions
CN111158845A (zh
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.)
Chongqing Jinmei Communication Co Ltd
Original Assignee
Chongqing Jinmei Communication 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 Chongqing Jinmei Communication Co Ltd filed Critical Chongqing Jinmei Communication Co Ltd
Priority to CN201811316398.4A priority Critical patent/CN111158845B/zh
Publication of CN111158845A publication Critical patent/CN111158845A/zh
Application granted granted Critical
Publication of CN111158845B publication Critical patent/CN111158845B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种采用通用计算机实现路由器和终端一体化集成的方法,本方法在通用计算机里安装虚拟机软件VMware,虚拟机创建vxworks实例,执行传统路由器核心的控制管理功能和开发者自定义功能。采用特定的方式对虚拟机和通用计算机进行配置,建立接口关联关系和业务传输路径,逻辑上构成路由器和终端一体化集成系统,同时实现传统路由器的路由转发和终端的业务接入功能。

Description

一种采用通用计算机实现路由器和终端一体化集成的方法
技术领域
本发明属于通信领域,具体涉及嵌入式开发技术和虚拟机技术。
背景技术
工程应用基于不同的使用场景,经常需要自开发路由器,除实现常规的路由功能外,还需要加入自定义功能以满足用户需求,比如流量控制,业务统计等功能。开发该类路由器,通常采用嵌入式开发技术。嵌入式开发技术以应用为中心,基于专用嵌入式处理器,采用嵌入式软件进行开发,是当前发展最快、应用最广、最有发展前景的信息技术。传统的路由器普遍采用该技术进行开发,但是该方式需要专用硬件芯片,成本较高,硬件开发也需要相关的专业技术背景和开发环境,配备专用仪器仪表。
虚拟机技术指通过软件在现有系统上模拟具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,该技术可以透明化底层物理硬件,有效利用系统资源。近年来,虚拟机技术受到越来越多的关注和重视,已经在企业计算,和系统安全领域得到了广泛应用。
随着计算机技术和互联网技术的发展,通用计算机作为业务终端,已经非常普及。通信设备的开发,一般都会用到通用计算机,但只是将其用作编程工具,用来进行辅助开发,并不会将通用计算机作为目标设备。因为通用计算机大部分采用windows系统,这是一种面对普通用户的应用系统,屏蔽了通信资源的编程接口,不适合作为通信设备的开发。
有一些特殊的应用场景,比如仿真试验网络、路由器开发学习、通信车设备集成,为了快速搭建网络环境,或者为了降低产品成本,减小设备体积, 往往需要以网口连接其它路由器,传输信令和业务报文,实现传统路由器的路由转发和业务接入功能。
发明内容
本发明的有益技术效果是:无需采用专用芯片开发,降低了硬件成本,也省去了硬件开发环节,缩短了开发周期,可以直接移植自开发目标程序。采用纯软件开发产品,简化了开发环境,无需专用仪器仪表,只需要通用计算机。一体化集成路由器和终端,减少了设备数量,也缩减了设备体积,更适宜于部署装配。通用计算机既做业务终端又做路由器,可以充分利用丰富的应用层资源,便于实现应用服务与路由器的一体化开发与集成。
附图说明
图1是vxworks工程包含模块及模块交互信息;
图2是虚拟机报文接收处理流程图;
图3是虚拟机以太网和计算机以太网关联示意图;
图4 是通用计算机以太网地址配置举例;
图5是本专利逻辑原理等效示意图;
图6是路由器配置实现原理图。
具体实施方式
具体实施步骤如下:
1.先期准备
1)准备一台通用计算机,需具备两个以太网接口,预装操作系统,支持Windowsserver 2003、Windows server 2008、windows xp、windows 7;
2)Tornado 2.2 for pcPentium开发环境,在步骤1准备好的计算机上安装;
3)虚拟机VMware-workstation-5.5.3-34685,在步骤1准备好的计算机上安装;
4)步骤3安装成功之后,通用计算机会具备3个以太网接口,物理以太网口1,物理以太网口2,虚拟以太网口3;
5)采用虚拟机创建vxworks实例,构造一个虚拟的嵌入式运行平台。
制作虚拟机映像文件
1)打开Tornado2.2,建立一个vxworks空工程;
2)在该工程组件里加入基本的TCP/IP协议栈元素和核心控制管理模块,具体模块及模块交互信息参见图1;各模块功能描述如下:
接口驱动实现对物理接口寄存器,中断等元素的控制管理;
报文收发控制实现对接收发送报文的适配和分类处理。其中报文发送由各发送模块根据通用IP格式封装发送,报文接收根据IP协议号分类处理,执行流程参见图2;
路由协议实现OSPF/RIP协议的报文处理,路由管理和算法控制,该模块可移植其它工程的成熟模块;
路由管理实现路由优选和路由表添加/删除/查询;
自定义功能实现开发者自开发功能;
人机界面管理实现对外部软件控制报文处理和对其它模块的参数管理;
3)Vxworks工程里创建三个以太网口eth1,eth2,eth3,配置虚拟机以太网适配器Virtual Network Editor,建立与通用计算机以太网接口关联。其中eth1,eth2分别桥接到通用计算机的物理以太网口1,物理以太网口2,eth3采用host-only方式连接通用计算机虚拟以太网口3,如图3所示;
4)点击build按钮,编译生成vxworks映像文件。
虚拟机硬盘启动映像文件
1)启动虚拟机,创建一个新的实例;
2)将vxworks可执行文件存放到虚拟机硬盘空间;
3)启动虚拟机实例,修改bootrom启动参数boot device:ata=0,0,选择从硬盘启动vxworks。
通用计算机配置
1)物理以太网口1,物理以太网口2分别配置为虚拟机eth1,eth2同一网段,不配置网关;计算机虚拟以太网口3配置为虚拟机eth3同一网段,网关配置为虚拟机eth3接口地址;配置举例如图4所示;
2)通过以上配置,通用计算机构成了连接用户终端的路由器,其原理等同于图5;此时通用计算机业务软件对外通信,将业务报文都发送给网关—虚拟机,由虚拟机实例vxworks基于业务报文目的地地址查询路由表,根据匹配路由表项出接口转发,从而实现终端的业务接入;通用计算机物理以太网接收的业务报文,传递到虚拟机,由虚拟机实例vxworks基于业务报文目的地地址查询路由表, 根据匹配路由表项出接口转发,从而实现路由器中继转发功能。
制作路由器配置界面
本通用计算机作为业务终端,可以通过虚拟以太网3和虚拟机创建的路由器直接通信,利用该原理,可通过通用计算机发送参数管理报文给路由器,路由器根据参数管理报文执行相应的参数配置,从而实现对路由器参数的配置管理;其原理如图6所示:
1)首先在windows系统上采用应用软件开发工具,可以选择采用Qt,Java等工具,编程开发应用软件,向用户提供友好的图形操作界面;
2)根据用户使用习惯,将该界面划分成多个菜单项,将路由器可配置参数分别部署到不同的菜单项。路由器参数包括路由器router ID,接口地址,路由表查询,路由协议hello包发送时间间隔及邻居保持时间间隔,自定义功能参数;
3)将菜单项修改的参数封装成自定义格式的参数管理报文,通过虚拟以太网3发送给虚拟机;
4)虚拟机实例vxworks接收该参数管理报文,根据自定义格式解析成配置参数,执行相应的参数修改和控制行为。
控制启动/关闭路由器
1)在虚拟机实例的保存路径下,创建启动路由器批处理文件,在该文件编辑状态下输入以下语句并保存:
“cd C:\Program Files\VMware\VMware Workstation
vmrun start C:\sinc\sinc.vmx”
C:\Program Files为虚拟机安装路径;
C:\sinc\为虚拟机实例保存路径;
2)在虚拟机实例的文件路径下,创建关闭路由器批处理文件,在该文件编辑状态下输入以下语句并保存:
“cd C:\Program Files\VMware\VMware Workstation
vmrun stop C:\sinc\sinc.vmx”
3)对步骤5制作的路由器界面软件加入控制命令,软件初始化时,执行启动路由器批处理文件,引导启动路由器。软件退出时,执行关闭路由器批处理文件,关闭该路由器。

Claims (4)

1.一种采用通用计算机实现路由器和终端一体化集成的方法,其特征在于,包括以下步骤:
a)在通用计算机上安装虚拟机软件VMware,采用虚拟机创建vxworks实例,构造一个虚拟的嵌入式运行平台;
b)采用传统的路由器开发方法,并结合自定义需求功能,开发生成vxworks实例的映像文件,包括:采用Tornado2 .2创建vxworks工程,工程里添加三个以太网口eth1,eth2,eth3,并在工程组件里加入基本的TCP/IP协议栈元素和核心控制管理模块;
c)配置通用计算机和虚拟机,建立通用计算机和虚拟机的接口关联及报文传输路径;
d)基于通用计算机windows系统开发路由器配置界面,该界面属于应用软件,用于配置管理路由器;
e)运行路由器配置界面,引导虚拟机加载执行vxworks实例,提供路由器的路由转发功能和终端的业务接入功能,实现路由器和终端的一体化集成;
步骤c)中,所述配置通用计算机和虚拟机,建立通用计算机和虚拟机的接口关联及报文传输路径,包括:
配置虚拟机以太网适配器Virtual Network Editor:eth1,eth2分别桥接到通用计算机的物理以太网口1,物理以太网口2,eth3采用host-only方式连接通用计算机虚拟以太网口3;
通用计算机接口地址配置:物理以太网口1,物理以太网口2分别配置为虚拟机eth1,eth2同一网段,不配置网关;计算机虚拟以太网口3配置为虚拟机eth3同一网段,网关配置为虚拟机eth3接口地址;
步骤e)中,通用计算机将虚拟机实例作为对外通信的网关路由器,实现业务接入功能,包括通用计算机业务软件对外通信,将业务报文都发送给虚拟机,由虚拟机vxworks实例基于业务报文目的地地址查询路由表,根据路由表匹配出接口转发业务,从而实现终端的业务接入功能。
2.根据权利要求1所述的一种采用通用计算机实现路由器和终端一体化集成的方法,其特征在于,步骤e)中,所述提供路由器的路由转发功能,包括开发vxworks工程,加入路由协议OSPF/RIP,和所接路由器进行路由交互,生成路由表,执行路由转发功能。
3.根据权利要求2所述的一种采用通用计算机实现路由器和终端一体化集成的方法,其特征在于,所述执行路由转发功能包括通用计算机物理以太网接收的业务报文,传递到虚拟机,由虚拟机vxworks实例基于业务报文目的地地址查询路由表,根据路由表匹配出接口转发业务,从而实现路由器中继转发功能。
4.根据权利要求1所述的一种采用通用计算机实现路由器和终端一体化集成的方法,其特征在于,步骤e)中,所述提供终端的业务接入功能,包括虚拟机eth3采用host-only方式连接通用计算机虚拟以太网口3,计算机虚拟以太网口3配置为虚拟机eth3同一网段,网关配置为虚拟机eth3接口地址;通过以上配置,通用计算机将虚拟机实例作为对外通信的网关路由器,实现业务接入功能。
CN201811316398.4A 2018-11-07 2018-11-07 一种采用通用计算机实现路由器和终端一体化集成的方法 Active CN111158845B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811316398.4A CN111158845B (zh) 2018-11-07 2018-11-07 一种采用通用计算机实现路由器和终端一体化集成的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811316398.4A CN111158845B (zh) 2018-11-07 2018-11-07 一种采用通用计算机实现路由器和终端一体化集成的方法

Publications (2)

Publication Number Publication Date
CN111158845A CN111158845A (zh) 2020-05-15
CN111158845B true CN111158845B (zh) 2023-09-12

Family

ID=70554423

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811316398.4A Active CN111158845B (zh) 2018-11-07 2018-11-07 一种采用通用计算机实现路由器和终端一体化集成的方法

Country Status (1)

Country Link
CN (1) CN111158845B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102103518A (zh) * 2011-02-23 2011-06-22 运软网络科技(上海)有限公司 一种在虚拟化环境中管理资源的系统及其实现方法
CN104717081A (zh) * 2013-12-13 2015-06-17 杭州华为数字技术有限公司 一种网关功能的实现方法及装置
CN105323161A (zh) * 2015-12-09 2016-02-10 武汉烽火网络有限责任公司 基于Windows平台的实现虚拟化路由器的方法及系统
CN105681191A (zh) * 2016-02-25 2016-06-15 武汉烽火网络有限责任公司 基于路由器虚拟化的sdn平台及实现方法
CN107544835A (zh) * 2017-08-21 2018-01-05 新华三云计算技术有限公司 一种虚拟机业务网口的检测方法和装置
CN107797844A (zh) * 2016-09-05 2018-03-13 中兴通讯股份有限公司 一种创建虚拟机的方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2458157B (en) * 2008-03-07 2012-04-25 Hewlett Packard Development Co Virtual machine liveness check

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102103518A (zh) * 2011-02-23 2011-06-22 运软网络科技(上海)有限公司 一种在虚拟化环境中管理资源的系统及其实现方法
CN104717081A (zh) * 2013-12-13 2015-06-17 杭州华为数字技术有限公司 一种网关功能的实现方法及装置
CN105323161A (zh) * 2015-12-09 2016-02-10 武汉烽火网络有限责任公司 基于Windows平台的实现虚拟化路由器的方法及系统
CN105681191A (zh) * 2016-02-25 2016-06-15 武汉烽火网络有限责任公司 基于路由器虚拟化的sdn平台及实现方法
CN107797844A (zh) * 2016-09-05 2018-03-13 中兴通讯股份有限公司 一种创建虚拟机的方法和装置
CN107544835A (zh) * 2017-08-21 2018-01-05 新华三云计算技术有限公司 一种虚拟机业务网口的检测方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Network resource control for Xen-based virtualized software routers";Rodrigo S. Couto等;《Computer Networks》;第64卷;第 71-88页,全文 *

Also Published As

Publication number Publication date
CN111158845A (zh) 2020-05-15

Similar Documents

Publication Publication Date Title
US20220321404A1 (en) Programmable Protocol Parser For NIC Classification And Queue Assignments
CN102334112B (zh) 用于虚拟机网络的方法和系统
EP3373518B1 (en) Service configuration method and device for network service
EP3031174B1 (en) Hybrid network management
CN103095565B (zh) 一种软件定义网络操作系统及其实现方法
EP2835938B1 (en) Message publishing and subscribing method and apparatus
EP2736191B1 (en) Virtual router system and virtual router implementation method
WO2021226948A1 (zh) 基于开放虚拟软交换机ovs的数据包处理方法及设备
CN102195803B (zh) 数据通信方法和数据通信系统
WO2020062959A1 (zh) 配置数据的方法及装置
Sonkoly et al. OpenFlow virtualization framework with advanced capabilities
CN113472624A (zh) 一种基于vDPA实现虚拟网络数据包转发的方法及应用
CN115150454A (zh) 一种跨操作系统的中心化发布订阅通信中间件
CN103780674B (zh) 一种基于硬件模拟的虚拟机通信方法和装置
Andersson et al. Uml and systemc–a comparison and mapping rules for automatic code generation
CN111158845B (zh) 一种采用通用计算机实现路由器和终端一体化集成的方法
CN115378822B (zh) 一种dds分布式应用仿真的方法和系统
CN112769716B (zh) 基于混合型虚拟网桥的虚拟交换机的数据转发方法及装置
CN114510323A (zh) 在容器中运行虚机的网络优化实现方法
CN113395334A (zh) 服务功能链在线更新方法、系统及设备
CN111050339B (zh) 一种基于协议无感知转发的高速数据更新系统及方法
Salsano et al. RDCL 3D, a model agnostic web framework for the design of superfluid NFV services and components
CN105610739A (zh) 一种采用deltaos实现龙芯交换机操作系统的方法
Li et al. Design of General SDN Controller System Framework for Multi-domain Heterogeneous Networks
CN117938640A (zh) 一种基于jinja2模板的云网络自动化配置方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant