CN101577712A - 支持多终端远程接入的业务前置机及其网络接口卡 - Google Patents
支持多终端远程接入的业务前置机及其网络接口卡 Download PDFInfo
- Publication number
- CN101577712A CN101577712A CNA200910059624XA CN200910059624A CN101577712A CN 101577712 A CN101577712 A CN 101577712A CN A200910059624X A CNA200910059624X A CN A200910059624XA CN 200910059624 A CN200910059624 A CN 200910059624A CN 101577712 A CN101577712 A CN 101577712A
- Authority
- CN
- China
- Prior art keywords
- network interface
- terminal
- end processor
- service front
- protocol
- 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
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种支持多终端远程接入业务前置机的网络接口卡。本发明的网络接口卡501包括:第一网络接口511以及第一网络接口驱动512、TCP/IP协议栈单元513、终端协议处理单元514、与业务前置机连接的第二网络连接装置515。本发明的网络接口卡负责提供收发终端业务数据的网络接口,并完成终端业务数据的TCP/IP协议处理和网络终端协议处理。通过将原业务前置机中在CPU中运行的TCP/IP协议栈单元、终端协议处理单元等放入本发明的网络接口卡中运行,从而减少服务器上CPU的软件功能,从而减小了业务前置机CPU负荷,增加了业务前置机的接入终端的数量。
Description
技术领域
本发明涉及网络通信领域,尤其涉及终端接入服务的业务前置机以及网络接口卡技术。
背景技术
在银行、保险、电力、税务等行业大量使用各种终端进行业务办理。其网络部署通常采用Unix或Linux服务器作为业务前置机,在业务前置机上运行终端应用程序为各网点接入的终端提供服务的应用模式。目前有如下两种终端接入方式。
第一种是物理终端直接接入业务前置机的方式。如图1所示,业务前置机中插入多串口卡,各个物理终端通过多串口卡接入业务前置机中。此时业务前置机101的结构框图如图2所示,包括多串口卡201、多串口卡驱动程序单元202、串口终端设备单元203和终端应用程序单元204。此时每台业务前置机支持接入终端的最大数量,受其能够支持的多串口卡的数量和单张多串口卡上串口数量的限制;而且业务前置机上连接大量的串口线时,布线比较复杂。另外,由于异步串口的传输距离近,如果业务前置机和终端相隔距离较远,则必需通过Modem、以太网转串口等设备在中间转接,网络构成复杂,容易发生故障。
第二种是采用网络协议方式实现远程接入业务前置机。如图3所示,物理终端与作为终端接入服务器的路由器相连,终端接入服务器经过TCP/IP协议与路由器相连,路由器通过网络接口卡的网络接口与业务前置机相连。业务前置机核心空间运行TCP/IP协议、用户空间运行终端连接协议服务程序如telnetd、sshd、rlogin、自定义的网络终端协议如银行telnet、迈普itest等程序,物理终端通过终端接入服务器采用telnet、ssh、rlogin、银行telnet、迈普itest等终端连接协议远程接入业务前置机。此时业务前置机的结构框图如图4所示,包括:
网络接口卡401,用于从物理线路上收发网络报文,从连续的物理信号中识别报文的开始和结束,计算报文的校验和;
网络接口卡驱动程序单元402,用于从网络接口卡收发报文,运行在业务前置机的软件系统的核心空间;
TCP/IP协议栈单元403,用于TCP/IP协议处理,例如:收到TCP数据报文之后给对方回应ACK确认报文,检查TCP报文和IP头的校验和是否正确等;
终端协议处理单元404,用于把从网络终端协议的TCP连接上收到的数据处理后写到伪终端主设备上,并把从伪终端从设备上读出的数据处理后发送到TCP连接上,运行在业务前置机的软件系统的用户空间,包括终端协议处理、数据加解密等功能;
伪终端主设备4051和伪终端从设备4052,作为终端设备文件,用于在内核空间与用户空间之间交换终端业务数据;
终端应用程序单元406,用于终端应用的处理;
伪终端驱动单元407,用于在伪终端主设备和伪终端从设备之间双向转发数据。
在业务前置机201的组成结构中,除了网络接口卡401外,在进行终端接入的业务数据处理时都要消耗CPU资源。TCP/IP协议栈单元和终端协议处理单元消耗CPU资源较多。由于TCP/IP协议栈单元需要计算IP头校验和、计算整个TCP报文段的校验和、需要维护协议超时重发的定时器、计算TCP的收发窗口大小、计算TCP报文段的序列号和应答序列号、查找协议控制块(PCB)、超找路由表等等,要处理工作比较多,所以需要消耗的CPU资源也多。当终端协议处理单元需要进行加解密处理,加解密是计算密集型任务,需要消耗较多的CPU资源。而且,在终端数据从TCP/IP协议栈单元传到终端协议处理单元的时候,需要从内核空间拷贝到用户空间。数据从终端协议处理单元传到伪终端驱动单元的时候,需要从用户空间拷贝到内核空间。数据从伪终端驱动单元传到终端应用程序单元时,需要从内核空间拷贝到用户空间。这些数据拷贝工作也是比较消耗CPU资源的。所以终端通过网络协议接入业务前置机的方式,一台业务前置机能够支持接入的终端数量受CPU处理能力的限制。
另外,随着各行各业信息化程度的逐渐提高,各终端应用行业都出现了一种把前置机集中到中心机房的趋势,如银行的三级网改造。由于终端是放在业务网点的,而业务网点与中心机房相隔较远,因此需要用网络协议来实现终端的接入,所以第二种终端接入方式比较容易与TCP/IP网络集成。因此第二种终端接入方式正逐渐取代第一种终端连接方式。由于很多前置机上的终端应用程序是在第一种接入方式下开发的,当从第一种接入方式改造成第二种接入方式的过程中,由于第二种接入方式使用的伪终端驱动程序和第一种接入方式使用的异步串口驱动程序之间存在一些细微差别,由此引起了很多兼容性问题。
发明内容
有鉴于此,本发明的一个发明目的在于提供一种支持多终端远程接入的业务前置机,另外一个目的提供一种支持多终端远程接入的业务前置机的网络接口卡,从而提高单台业务前置机所支持的接入终端的数量,同时提高了将终端从直接接入业务前置机的方式到通过网络协议接入业务前置机改造的兼容性。
本发明解决上述技术问题,所采用的技术方案是,一种支持多终端远程接入的业务前置机,包括网络接口卡、网络接口卡驱动程序单元、串口终端设备单元和终端应用程序单元,所述网络接口卡提供收发终端数据报文的网络接口,其特征在于,所述网络接口卡包括TCP/IP协议处理单元和终端协议处理单元,完成对收发的终端数据报文的TCP/IP协议处理和网络终端协议处理。
具体的,所述网络接口卡包括:
第一网络接口和第一网络接口驱动,用于提供终端远程接入业务前置机的网络接口,并完成终端数据报文的收发;
TCP/IP协议栈单元,用于对终端数据报文中进行TCP/IP协议的处理;
终端协议处理单元,用于对终端数据报文中进行应用层终端协议的处理。
具体的,所述网络接口卡还包括与所述业务前置机连接的连接装置,用于网络接口卡与业务前置机交互数据。
具体的,所述第一网络接口为链路层支持TCP/IP协议的网络接口。
所述连接装置模拟多串口卡的寄存器定义和工作模式,与业务前置机交换数据。
具体的,所述连接装置为计算机外设总线接口。
具体的所述计算机外设总线接口为PCI接口、或者PCI Express接口、或者PCI-X接口、或者InfiniBand接口。
本发明的另一目的,提供一种支持多终端远程接入业务前置机的网络接口卡,其分别和远程接入终端和业务前置机相连,其特征在于,包括:
第一网络接口和第一网络接口驱动单元,用于通过网络和远程接入终端进行连接,收发远程接入终端的数据报文;
TCP/IP协议栈单元,用于对收发的终端数据报文中进行网络协议的处理;
终端协议处理单元,用于对收发的终端数据进行网络终端协议的处理;
第二网络连接装置,用于连接业务前置机;
第二网络连接装置驱动单元,用于将来自终端协议处理单元的业务数据发送到的串口终端设备单元或将来自串口终端设备单元的数据发送到终端协议处理单元。
具体的,所述第一网络接口为链路层支持TCP/IP协议的网络接口。
具体的,所述第二网络连接装置为计算机外设总线接口,采用多串口卡的寄存器定义和工作模式,与业务前置机交换数据。
本发明的有益效果是:由于本发明把TCP/IP协议处理、网络终端协议处理和数据加密等功能用专用的硬件处理,不需要占用作为业务前置的Unix或Linux服务器的CPU处理能力,提升服务器的整体处理性能,从而提高单台服务器连接的终端数量。由于本发发明的网络接口卡跟上层应用程序之间的接口与多串口卡类似,当应用程序从多串口卡方式迁移到网络协议的连接方式时兼容性更好。
附图说明
图1是终端直接接入业务前置机方式的网络示意图。
图2是终端直接接入业务前置机方式的业务前置机结构框图。
图3是终端通过网络协议接入业务前置机方式的网络示意图。
图4是终端通过网络协议接入业务前置机方式的业务前置机结构框图。
图5是本发明的业务前置机的结构框图。
图6是本发明的网络接口卡网络框图。
图7是本发明具体实施例的网络接口卡硬件结构图。
具体实施方式
本发明的业务前置机主要用于如图3所示的终端通过网络协议接入的应用环境。本发明的业务前置机的结构示意图如图5。业务前置机301包括网络接口卡501、网络接口卡驱动程序单元502、串口终端设备单元503和终端应用程序单元504。本发明的网络接口卡501负责提供收发终端数据报文的网络接口,并完成终端数据报文的TCP/IP协议处理和网络终端协议处理。本发明中网络接口卡501提供的网络接口链路层支持TCP/IP协议,这个网络接口可以是以太网接口,也可以是其他类型的网络接口。本发明的网络接口卡501与业务前置机301之间还有一个连接装置,本连接装置为计算机外设总线接口,包括如PCI接口、PCI Express接口、PCI-X接口或InfiniBand等接口。本发明的网络接口卡通过计算机外设总线接口插在业务前置机中,并在业务前置机中操作系统的核心层运行其驱动程序502。本连接装置采用多串口卡的寄存器定义和工作模式,每个网络接口卡在业务前置机的文件系统上有一个终端设备文件,即串口终端设备单元503,终端应用程序单元504通过读写串口终端设备单元503的设备文件与网络接口卡驱动程序单元502之间交换数据。本网络接口卡的设备文件的操作方法与多串口卡设备文件的操作方法完全相同,网络接口卡设备文件实现了所有多串口卡设备文件具备的功能。本发明还可考虑将网络接口卡驱动程序单元放在网络接口卡上,具体实现本领域技术人员通过本发明方案并结合现有技术很容易实现,在这里不再赘述。
本发明通过将原图4业务前置机中在CPU中运行的TCP/IP协议栈单元、终端协议处理单元等放入本发明的网络接口卡中运行,从而减少服务器上CPU的软件功能,减小了数据在核心空间和用户空间之间的拷贝开销,减小了进程和线程的切换开销,从而减小了服务器CPU负荷,增加了业务前置机的接入终端的数量。
本发明还提供一种支持多终端远程接入的业务前置机的网络接口卡,如图6所示,本发明的网络接口卡501包括:
第一网络接口511以及第一网络接口驱动512。网络接口卡从第一网络接口511接收和发送承载了网络终端协议数据的TCP/IP报文,即终端数据报文。
TCP/IP协议栈单元513。TCP/IP协议栈单元513和上述第一网络接口驱动单元512交互接收和发送的终端数据报文。TCP/IP协议栈单元513在接收方向的功能包括:检查IP报文的合法性、对IP报文分片进行重组、提取TCP报文内容、检查TCP报文校验和的正确性、查找TCP协议控制块、检查TCP序号合法性、计算应答序号、发送TCP应答报文、提取TCP报文内的数据送交上层协议处理等。TCP/IP协议栈单元在发送方向的功能包括:把上层协议数据打包成TCP报文、计算并生成TCP序号、计算并生成TCP校验和、添加IP报头、查找路由表、添加链路层报头、把报文送交给网络接口发送出去。
终端协议处理单元514。在接收终端数据的方向上,终端协议处理单元514从TCP/IP协议栈单元513中接收网络终端协议的业务数据,把其中终端协议的控制数据抽取出来进行处理,把远程终端上业务数据即键盘(或其他设备)输入的数据送到与业务前置机连接业务前置机的连接装置的接收先进先出队列(FIFO队列)中,从而可以发送到业务前置机;在发送终端数据的方向上,终端协议处理单元514从与接业务前置机连接的连接装置的FIFO队列中读出数据打包成终端协议报文,并送交给TCP/IP协议栈单元处理之后发送出去。如果终端协议有加密功能,可实现了协议要求的加解密功能。
与业务前置机连接的第二网络连接装置515。其为计算机外设总线接口,可为PCI Express接口、或者PCI接口、或PCI-X接口、或InfiniBand接口,采用多串口卡的寄存器定义和工作模式,与业务前置机交换数据。
实施例
图7是一种实现本发明网络接口卡的硬件方案结构图的一实施例子。网络接口卡包括一微处理器,在微处理器的外围连接DDR SDRAM、flash等存储芯片,并包括有一以太接口和PCI Express接口。微处理器带有两个PowerPC处理器核、四个千兆以太网接口、TCP/IP协议加速硬件、加解密硬件协处理引擎、以及PCIExpress接口。在本微处理器上运行vxWorks操作系统,这样避免Unix或Linux操作系统的进程间切换开销。在vxWorks操作系统上运行以太网驱动、TCP/IP协议栈、网络终端协议和加密处理程序等软件。把微处理器的PCI Express接口配置为交易由业务前置机的CPU发起模式,本网络接口卡在PCI Express总线上的地址空间也由业务前置机的CPU决定。并将本网络接口卡的PCI Express接口的寄存器定义采用多串口卡的寄存器接口定义,如16c550芯片的寄存器接口定义,每个虚拟串口有:一个配置寄存器、一个发送FIFO寄存器、一个接收FIFO寄存器、线路状态寄存器、中断掩码寄存器、中断状态寄存器等。作为业务前置机的Unix或Linux服务器从PCI Express接口上读出的数据,是经过了处理的终端输入数据,与用户在终端键盘上的数据是完全相同的。业务前置机向PCIExpress接口写出的数据与终端接收到的数据相同。TCP/IP协议栈处理、网络终端协议处理、数据加解密等环节完全在本发明的网络接口卡上实现。从业务前置机的角度看,本发明的网络接口卡就像是普通的PCI Express接口的多串口卡一样。
本发明的网络接口卡与多串口卡接近,在将终端通过多串口卡接入业务前置机的方式改造为通过网络协议接入业务前置机的过程中,可以平滑过渡。例如:当TCP连接断掉的时候,网络接口卡驱动程序在PCI Express接口的寄存器上读出“串口的DTR信号”的状态变为无效,就从Unix或Linux核心向终端应用程序发送一个SIGHUP信号,而伪终端驱动不会发出这个信号。所以本发明很好的解决了从多串口卡终端接入方式迁移到网络终端协议接入方式的兼容性好,
本发明的个实施例是对本发明的原理以及实施方式进行解释,如本发明的计算机总线外设接口不限于PCI Express接口,还可能采用PCI-X接口、Infiniband接口等;仅理解本发明的方法和核心思想,不应理解为对本发明的限制,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等均应在本发明的保护范围之类。
Claims (10)
1、支持多终端远程接入的业务前置机,包括网络接口卡、网络接口卡驱动程序单元、串口终端设备单元和终端应用程序单元,所述网络接口卡提供收发终端数据报文的网络接口,其特征在于,所述网络接口卡包括TCP/IP协议栈处理单元和终端协议处理单元,完成对收发的终端数据报文的TCP/IP协议处理和网络终端协议处理。
2、根据权利要求1所述支持多终端远程接入的业务前置机,其特征在于,所述网络接口卡具体包括:
第一网络接口和第一网络接口驱动,用于提供终端远程接入业务前置机的网络接口,并完成终端数据报文的收发;
TCP/IP协议栈单元,用于对终端数据报文进行TCP/IP协议的处理;
终端协议处理单元,用于对终端数据报文进行网络终端协议的处理。
3、根据权利要求2所述支持多终端远程接入的业务前置机,其特征在于,所述网络接口卡还包括与所述业务前置机连接的连接装置。
4、根据权利要求2或3任一项所述支持多终端远程接入的业务前置机,其特征在于,所述第一网络接口为链路层支持TCP/IP协议的网络接口。
5、根据权利要求4所述支持多终端远程接入的业务前置机,其特征在于,所述连接装置采用多串口卡的寄存器定义和工作模式,与业务前置机交换数据。
6、根据权利要求4所述支持多终端远程接入的业务前置机,其特征在于,所述连接装置为计算机外设总线接口。
7、根据权利要求4所述支持多终端远程接入的业务前置机,其特征在于,所述网络接口卡驱动程序单元包括于网络接口卡中。
8、支持多终端远程接入业务前置机的网络接口卡,用于分别和远程接入终端和业务前置机相连,其特征在于,包括:
第一网络接口和第一网络接口驱动单元,用于提供终端远程接入业务前置机的网络接口,用于收发远程接入终端的数据报文;
TCP/IP协议栈单元,用于对收发的终端数据报文中进行TCP/IP协议协议的处理;
终端协议处理单元,用于对收发的终端数据进行网络终端协议的处理;
第二网络连接装置,用于连接业务前置机。
9、如权利要求8所述支持多终端远程接入业务前置机的网络接口卡,其特征在于,所述第一网络接口为链路层支持TCP/IP协议的网络接口。
10、如权利要求8所述支持多终端远程接入业务前置机的网络接口卡,其特征在于,所述第二网络连接装置为计算机外设总线接口,采用多串口卡的寄存器定义和工作模式,与业务前置机交换数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA200910059624XA CN101577712A (zh) | 2009-06-17 | 2009-06-17 | 支持多终端远程接入的业务前置机及其网络接口卡 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA200910059624XA CN101577712A (zh) | 2009-06-17 | 2009-06-17 | 支持多终端远程接入的业务前置机及其网络接口卡 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101577712A true CN101577712A (zh) | 2009-11-11 |
Family
ID=41272499
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA200910059624XA Pending CN101577712A (zh) | 2009-06-17 | 2009-06-17 | 支持多终端远程接入的业务前置机及其网络接口卡 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101577712A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102299944A (zh) * | 2010-06-23 | 2011-12-28 | 苏州彭华信息技术有限公司 | 自动网络开机或唤醒计算机的方法 |
CN102299943A (zh) * | 2010-06-23 | 2011-12-28 | 苏州彭华信息技术有限公司 | 用于自动网络开机或唤醒计算机的网络接口装置 |
CN108171595A (zh) * | 2017-12-27 | 2018-06-15 | 福建省农村信用社联合社 | 支持外围业务系统记账服务化的银行核心会计引擎系统 |
CN108462973A (zh) * | 2015-11-24 | 2018-08-28 | 广东欧珀移动通信有限公司 | 网络通信功能异常的处理方法、调制解调器和移动终端 |
CN110933024A (zh) * | 2019-10-18 | 2020-03-27 | 苏州浪潮智能科技有限公司 | 应用于交换机数据传输的方法、系统、接收端和发送端 |
-
2009
- 2009-06-17 CN CNA200910059624XA patent/CN101577712A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102299944A (zh) * | 2010-06-23 | 2011-12-28 | 苏州彭华信息技术有限公司 | 自动网络开机或唤醒计算机的方法 |
CN102299943A (zh) * | 2010-06-23 | 2011-12-28 | 苏州彭华信息技术有限公司 | 用于自动网络开机或唤醒计算机的网络接口装置 |
CN102299944B (zh) * | 2010-06-23 | 2014-05-14 | 江苏瑞曼信息技术有限公司 | 自动网络开机或唤醒计算机的方法 |
CN108462973A (zh) * | 2015-11-24 | 2018-08-28 | 广东欧珀移动通信有限公司 | 网络通信功能异常的处理方法、调制解调器和移动终端 |
CN108462973B (zh) * | 2015-11-24 | 2021-05-04 | Oppo广东移动通信有限公司 | 网络通信功能异常的处理方法、调制解调器和移动终端 |
CN108171595A (zh) * | 2017-12-27 | 2018-06-15 | 福建省农村信用社联合社 | 支持外围业务系统记账服务化的银行核心会计引擎系统 |
CN108171595B (zh) * | 2017-12-27 | 2022-07-08 | 福建省农村信用社联合社 | 支持外围业务系统记账服务化的银行核心会计引擎系统 |
CN110933024A (zh) * | 2019-10-18 | 2020-03-27 | 苏州浪潮智能科技有限公司 | 应用于交换机数据传输的方法、系统、接收端和发送端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105531685B (zh) | 通用pci express端口 | |
US20210216485A1 (en) | System and Method for Extended Peripheral Component Interconnect Express Fabrics | |
CN102724035B (zh) | 一种加密卡的加解密方法 | |
US9430432B2 (en) | Optimized multi-root input output virtualization aware switch | |
CN100438524C (zh) | 基于硬件支持的虚拟接口结构用户层网络通信系统 | |
US9596186B2 (en) | Multiple processes sharing a single infiniband connection | |
US7469309B1 (en) | Peer-to-peer data transfer method and apparatus with request limits | |
CN101577712A (zh) | 支持多终端远程接入的业务前置机及其网络接口卡 | |
CN108366018A (zh) | 一种基于dpdk的网络数据包处理方法 | |
CN106844263B (zh) | 一种基于可配置的多处理器计算机系统及实现方法 | |
CN106603409B (zh) | 一种数据处理系统、方法及设备 | |
CN106055504B (zh) | 控制数据传输的方法、装置及计算机设备 | |
CN206807466U (zh) | 一种基于pcie非透明桥的高可用冗余加密终端 | |
CN110659143A (zh) | 一种容器间的通讯方法、装置及电子设备 | |
US20020049875A1 (en) | Data communications interfaces | |
CN107766269A (zh) | 一种隔离交换装置及方法 | |
US20020049878A1 (en) | Data communications interfaces | |
CN118093468B (zh) | 具有RDMA加速功能的PCIe交换芯片及PCIe交换机 | |
Santhanaraman et al. | Designing zero-copy message passing interface derived datatype communication over infiniband: Alternative approaches and performance evaluation | |
US20240104045A1 (en) | System and method for ghost bridging | |
CN117971135B (zh) | 存储设备的访问方法、装置、存储介质和电子设备 | |
CN118093468A (zh) | 具有RDMA加速功能的PCIe交换芯片及PCIe交换机 | |
CN117579570A (zh) | 一种基于PCIe的数据传输方法、装置和系统 | |
CN117992378A (zh) | 使用dpa的可编程的用户定义的外围总线设备实现 | |
RU69660U1 (ru) | Адаптер высокоскоростной сети |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20091111 |