CN107040523B - 交易数据传输方法、装置和电子设备 - Google Patents
交易数据传输方法、装置和电子设备 Download PDFInfo
- Publication number
- CN107040523B CN107040523B CN201710170351.0A CN201710170351A CN107040523B CN 107040523 B CN107040523 B CN 107040523B CN 201710170351 A CN201710170351 A CN 201710170351A CN 107040523 B CN107040523 B CN 107040523B
- Authority
- CN
- China
- Prior art keywords
- port
- data
- forwarded
- data packet
- packet
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Abstract
本发明涉及一种交易数据传输方法、装置和电子设备,该方法包括:接收交易控制设备下发的数据包;提取所述数据包中包括的数据协议标识;当所述数据协议标识表示所述数据包为待转发数据包时,则确定所述待转发数据包中指定的端口;向接入所述端口的接入设备转发所述待转发数据包;接收所述接入设备响应于所述待转发数据包返回的应答包;将所述应答包反馈至所述交易控制设备。本申请提供的方案提高了在交易数据传输时的兼容性。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种交易数据传输方法、装置和电子设备。
背景技术
随着计算机技术的发展,基于计算机的交易系统越来越广泛地应用到人们的日常生活中。交易系统中的交易控制设备通过与端口集成设备连接,来实现与接入该端口集成设备的各接入设备的交互以完成交易过程。接入端口集成设备的接入设备相应的数据传输协议各不相同,开发人员需要在端口集成设备中对接入设备相应配置驱动,从而与接入设备交易进行数据传输。
然而,随着设备制造技术的不断发展,接入设备的种类越来越多,更新速度越来越快,传统的交易数据传输方法以及端口集成设备的兼容性越来越低,已无法满足交易数据传输的需要。
发明内容
基于此,有必要针对传统的交易数据传输方法在传输交易数据时兼容性低的问题,提供一种交易数据传输方法、装置和电子设备。
一种交易数据传输方法,包括:
接收交易控制设备下发的数据包;
提取所述数据包中包括的数据协议标识;
当所述数据协议标识表示所述数据包为待转发数据包时,则
确定所述待转发数据包中指定的端口;
向接入所述端口的接入设备转发所述待转发数据包;
接收所述接入设备响应于所述待转发数据包返回的应答包;
将所述应答包反馈至所述交易控制设备。
在一个实施例中,所述提取所述数据包中包括的数据协议标识之后,所述方法还包括:
当所述数据协议标识表示所述数据包为待本地处理数据包时,则
通过本地操作系统响应于所述待本地处理数据包生成应答包,并继续执行所述将所述应答包反馈至所述交易控制设备的步骤。
在一个实施例中,所述向接入所述端口的接入设备转发所述待转发数据包,包括:
当确定的所述端口为物理端口时,向接入所述物理端口的接入设备转发所述待转发数据包;
当确定的所述端口为以太网络端口时,则
获取所述待转发数据包中包括的目标地址与通信协议类型;
按照所述通信协议类型对应的通信协议,将所述待转发数据包由所述以太网络端口发送至所述目标地址所对应的接入设备。
在一个实施例中,所述向接入所述端口的接入设备转发所述待转发数据包,包括:
提取所述待转发数据包中包括的待转发数据;
向接入所述端口的接入设备转发所述待转发数据;
所述接收所述接入设备响应于所述待转发数据包返回的应答包,包括:
接收所述接入设备响应于所述待转发数据返回的应答包;
所述将所述应答包反馈至所述交易控制设备,包括:
确定接收所述应答包的端口所对应的端口标识;
将所述应答包和所述端口标识封装为应答包;
将封装得到的所述应答包反馈至所述交易控制设备。
在一个实施例中,所述将封装得到的所述应答包反馈至所述交易控制设备,包括:
获取端口标识间的路由关系表;
针对接收所述应答包的端口所对应的端口标识,从所述路由关系表中查询相对应的端口标识;
通过查询到的所述端口标识对应的端口,将封装得到的所述应答包反馈至所述交易控制设备。
一种交易数据传输装置,所述装置包括:
第一接收模块,用于接收交易控制设备下发的数据包;
提取模块,用于提取所述数据包中包括的数据协议标识;
确定模块,用于当所述数据协议标识表示所述数据包为待转发数据包时,则确定所述待转发数据包中指定的端口;
转发模块,用于向接入所述端口的接入设备转发所述待转发数据包;
第二接收模块,用于接收所述接入设备响应于所述待转发数据包返回的应答包;
反馈模块,用于将所述应答包反馈至所述交易控制设备。
在一个实施例中,所述转发模块还用于当确定的所述端口为物理端口时,向接入所述物理端口的接入设备转发所述待转发数据包;当确定的所述端口为以太网络端口时,则获取所述待转发数据包中包括的目标地址与通信协议类型;按照所述通信协议类型对应的通信协议,将所述待转发数据包由所述以太网络端口发送至所述目标地址所对应的接入设备。
在一个实施例中,所述转发模块还用于提取所述待转发数据包中包括的待转发数据;向接入所述端口的接入设备转发所述待转发数据;
所述第二接收模块还用于接收所述接入设备响应于所述待转发数据返回的应答包;
所述反馈模块还用于确定接收所述应答包的端口所对应的端口标识;将所述应答包和所述端口标识封装为应答包;将封装得到的所述应答包反馈至所述交易控制设备。
在一个实施例中,所述反馈模块还用于获取端口标识间的路由关系表;针对接收所述应答包的端口所对应的端口标识,从所述路由关系表中查询相对应的端口标识;通过查询到的所述端口标识对应的端口,将封装得到的所述应答包反馈至所述交易控制设备。
一种电子设备,包括存储器和处理器,所述存储器中储存有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行以下步骤:
接收交易控制设备下发的数据包;
提取所述数据包中包括的数据协议标识;
当所述数据协议标识表示所述数据包为待转发数据包时,则
确定所述待转发数据包中指定的端口;
向接入所述端口的接入设备转发所述待转发数据包;
接收所述接入设备响应于所述待转发数据包返回的应答包;
将所述应答包反馈至所述交易控制设备。
上述交易数据传输方法、装置和电子设备,通过数据包中包括的数据协议标识来区别交易控制设备下发的数据包是否为发往通过本地提供的端口接入本地的接入设备的待转发数据包,在判定交易控制设备下发的数据包为需要转发给接入设备的待转发数据包时,只需要确定数据包中指定的端口,便可向接入端口的接入设备转发该数据包,避免了需要针对各种接入设备相应配置驱动才能进行数据传输的约束条件,本地只需进行转发即可,提高了在交易数据传输时的兼容性。
附图说明
图1为一个实施例中交易数据传输方法的应用环境图;
图2为一个实施例中用于实现交易数据传输方法的电子设备的内部结构图;
图3为一个实施例中交易数据传输方法的流程示意图;
图4为另一个实施例中交易数据传输方法的流程示意图;
图5为一个实施例中用于实现交易数据传输方法的设备架构图;
图6为一个实施例中读卡器参与的交易数据传输方法的时序图;
图7为一个实施例中交易数据传输装置的结构框图;
图8为另一个实施例中交易数据传输装置的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1为一个实施例中交易数据传输方法的应用环境图。参照图1,该交易数据传输方法应用于交易数据传输系统。交易数据传输系统包括交易控制设备110、端口集成设备120和接入设备130。交易控制设备110可通过远程方式或者点对点方式与端口集成设备120连接。交易控制设备110具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑或者笔记本电脑等中的至少一种。端口集成设备120具体可以是交易系统底座,该交易系统底座可配置打印功能。接入设备130具体可以是销售终端、交易服务器或者读卡器等中的至少一种。端口集成设备120可通过远程方式或者点对点方式与接入设备130连接。端口集成设备120接收交易控制设备110下发的数据包,提取数据包中包括的数据协议标识。当数据协议标识表示数据包为待转发数据包时,端口集成设备120可确定待转发数据包中指定的端口,向接入该端口的接入设备130转发待转发数据包。端口集成设备120可再接收接入设备130响应于待转发数据包返回的应答包,将应答包反馈至交易控制设备110。
图2为一个实施例中电子设备的内部结构示意图。该电子设备可为图1中的端口集成设备120。如图2所示,该电子设备包括通过系统总线连接的处理器、非易失性存储介质、内存储器、网络接口和物理接口。其中,电子设备的非易失性存储介质存储有操作系统。电子设备包括的处理器用于提供计算和控制能力,支撑整个终端的运行。电子设备中的内存储器中可储存有计算机可读指令,该计算机可读指令被所述处理器执行时,可使得所述处理器执行一种交易数据传输方法。网络接口或者物理接口用于与接入设备130进行通信,如接收交易控制设备110下发的数据包,向接入设备130转发待转发数据包等。该电子设备具体可以是交易系统底座等。本领域技术人员可以理解,图2中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
如图3所示,在一个实施例中,提供了一种交易数据传输方法,本实施例以该方法应用于上述图1中的端口集成设备120来举例说明。该方法具体包括如下步骤:
S302,接收交易控制设备下发的数据包。
其中,交易控制设备是指用于发起交易并控制交易数据传输的电子设备。具体地,交易控制设备可提供与用户交互的交易界面,用户可在交易控制设备提供的交易界面上选择交易相关数据并触发发起交易的操作。比如,用户可在交易控制设备提供的交易界面上选择交易方式,交易方式具体可以是线上交易或者线下交易等。
交易控制设备可先获取用户通过交易界面触发的发起交易的操作,并确定发起的交易所指向的接入设备。交易控制设备可再确定与该接入设备适配的通信协议,按照与该接入设备适配的通信协议封装交易数据得到数据包。交易控制设备可再按照与端口集成设备适配的数据传输协议封装该数据包得到可下发至端口集成设备的数据包,并将封装得到的数据包发送至端口集成设备。端口集成设备接收交易控制设备下发的数据包。
其中,交易控制设备可通过远程方式或者点对点方式与端口集成设备连接。点对点方式具体可以是无线网络连接、蓝牙连接或者近场连接等。
S304,提取数据包中包括的数据协议标识。
其中,数据协议标识是指数据包所包括的各层数据协议的标识。数据包在生成时,都会在数据包上添加数据协议的数据协议标识。不同类型的数据包中包括的数据协议标识不同。数据包通常至少包括头部数据和正文数据两个部分。头部数据是数据包必须包括的部分,头部数据包括数据协议标识。正文数据则是数据包传输的数据。具体地,端口集成设备在接收到交易控制设备下发的数据包后,可从数据包的头部数据中获取预设的数据协议标识所在位置处的字符。
在一个实施例中,交易控制设备下发的数据包可包括头部数据、正文数据和尾部数据三部分。其中,头部数据包括起始符(STX Start Of Text)、数据包版本编号、数据包序号和数据帧序号;正文数据包括数据长度和需传输数据;尾部数据包括纵向冗余校验(LRC,Longitudinal Redundancy Check)值和结束符(ETX End Of Text)。
举例说明,数据包格式可如下表一所示:
表一:
其中,第2字节的最高位为数据协议标识所在位置。数据包版本编号用于标识数据协议版本。数据包序号用来唯一标识一个数据包。数据帧序号用来唯一标识一个数据包中的一个数据帧。
在一个实施例中,交易控制设备在向端口集成设备下发数据包时,可增序设置数据包序号。比如,按序下发的数据包的数据包序号依次加一,当前下发的数据包的数据包序号为256,相邻下发的上一个数据包的数据包序号为255。
在一个实施例中,按照数据包格式所能封装的数据量具有上限值。当交易控制设备需要传输的交易数据的数据量超过数据包所能封装的数据量的上限值时,可将传输的交易数据分别封装为数据包下发,并通过数据帧序号来标识一个数据包中的数据帧。交易控制设备可通过在数据包末尾添加不同的结束符来区别属于同一交易的交易数据是否传输完成。比如,交易A包括的交易数据需要通过两个数据包进行下发,在前的数据包的数据帧序号可设置为“1”,结束符可设置为“0x17”,表示后续还有属于交易A的数据包下发,在后的数据包的数据帧序号可设置为“2”,结束符可设置为“0x03”,表示属于交易A的数据包下发完毕。
S306,当数据协议标识表示数据包为待转发数据包时,则确定待转发数据包中指定的端口。
其中,待转发数据包是指需要通过端口集成设备转发至接入端口集成设备的接入设备的数据包。具体地,端口集成设备在提取数据包中包括的数据协议标识后,对提取的数据协议标识进行检测,当提取的数据协议标识与预设的转发数据协议的标识一致时,表示接收的数据包为待转发数据包。端口集成设备可在确定接收到的数据包为待转发数据包后,可从待转发数据包的头部数据中获取预设的端口标识所在位置处的字符,根据该字符确定待转发数据包中指定的端口。
在一个实施例中,交易控制设备下发的待转发数据包可包括头部数据、正文数据和尾部数据三部分。其中,头部数据包括起始符(STX Start Of Text)和预留信息;正文数据包括数据长度和需传输数据;尾部数据包括纵向冗余校验(LRC,LongitudinalRedundancy Check)值和结束符(ETX End Of Text)。
举例说明,数据包格式可如下表二所示:
表二:
其中,预留信息中的第1字节的最高位为数据协议标识所在位置。该位置的字符为1,表示该数据包为待转发数据包。预留信息中的第3字节为转发端口标识所在的位置。
在一个实施例中,端口与端口标识的对照表如下表三所示:
表三:
端口 | BT | WIFI | PINPAD | COM1 | COM2 | LAN | USB1 | USB2 | … |
端口标识 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | … |
其中,BT(Blue Tooth蓝牙)表示蓝牙端口,WIFI表示无线网络端口,PINPAD表示密码键盘端口,COM(Cluster Communication Port)表示串行通讯端口,LAN(Local AreaNetwork)表示以太网络端口,USB(Universal Serial Bus)表示通用串行总线端口。
S308,向接入端口的接入设备转发待转发数据包。
具体地,端口集成设备在确定待转发数据包中指定的端口后,通过该端口将待转发数据包发送至接入该端口的接入设备。
S310,接收接入设备响应于待转发数据包返回的应答包。
具体地,接入设备在接收到端口集成设备发送的待转发数据包后,将按照本地适配的通信协议对该数据包进行解析,并在解析后生成应答数据,并按照本地适配的通信协议对该应答数据进行封装得到应答包,再将应答包发送至端口集成设备。
S312,将应答包反馈至交易控制设备。
具体地,端口集成设备在接收到接入设备响应于待转发数据包返回的应答包后,将应答包反馈至交易控制设备。
上述交易数据传输方法,通过数据包中包括的数据协议标识来区别交易控制设备下发的数据包是否为发往通过本地提供的端口接入本地的接入设备的待转发数据包,在判定交易控制设备下发的数据包为需要转发给接入设备的待转发数据包时,只需要确定数据包中指定的端口,便可向接入端口的接入设备转发该数据包,避免了需要针对各种接入设备相应配置驱动才能进行数据传输的约束条件,本地只需进行转发即可,提高了在交易数据传输时的兼容性。
在一个实施例中,步骤S304之后,该交易数据处理方法还包括:当数据协议标识表示数据包为待本地处理数据包时,则通过本地操作系统响应于待本地处理数据包生成应答包,并继续执行将应答包反馈至交易控制设备的步骤。
具体地,端口集成设备在提取数据包中包括的数据协议标识后,对提取的数据协议标识进行检测,当提取的数据协议标识与预设的转发数据协议的标识不一致时,表示接收的数据包为待本地处理数据包。端口集成设备通过本地操作系统响应于待本地处理数据包生成应答包,再将生成的应答包发送至交易控制设备。
在一个实施例中,数据包的头部数据中第2字节的最高位为0时,表示数据包为待本地处理数据包。端口集成设备可在本地完成对该数据包的响应,生成应答包,再将生成的应答包发送至交易控制设备。
上述实施例中,通过数据包中包括的数据协议标识来区别交易控制设备下发的数据包是否为待本地处理数据包,在判定交易控制设备下发的数据包为待本地处理数据包时,便可直接进行响应,保证了需要在本地进行处理的数据的正常进行。
在一个实施例中,步骤S308包括当确定的端口为物理端口时,向接入物理端口的接入设备转发待转发数据包。当确定的端口为以太网络端口时,则获取待转发数据包中包括的目标地址与通信协议类型;按照通信协议类型对应的通信协议,将待转发数据包由以太网络端口发送至目标地址所对应的接入设备。
其中,物理端口是指通过物理连接方式接入的端口,比如COM端口或者USB端口等。以太网络端口是指通过网络连接方式接入的端口,比如LAN端口等。
具体地,端口集成设备在确定待转发数据包中指定的端口后,检测该端口的类型。端口集成设备在判定待转发数据包中指定的端口为物理端口时,可直接将该端口的端口标识作为目标地址,向接入物理端口的接入设备转发待转发数据包。
端口集成设备在判定待转发数据包中指定的端口为以太网络端口时,从数据包的头部数据中获取预设的目标地址所在位置处的字符和通信协议类型所在位置处的字符,根据上述字符确定待转发数据包中指定的目标地址和协议类型。端口集成设备按照通信协议类型对应的通信协议,将待转发数据包由以太网络端口发送至目标地址所对应的接入设备。
在一个实施例中,待转发数据包的头部数据中包括的预留信息中第1字节第1位为数据协议标识,第2-4位为数据包类型。比如:000表示非以太网络端口传输数据包,001表示端口集成设备反馈的错误信息数据包,010表示以太网络端口传输数据包。
待转发数据包的头部数据中包括的预留信息中第2字节标识数据包的数据来源地址,用端口标识表示,采用十进制数字表示。待转发数据包的头部数据中包括的预留信息中第3-6字节,对于非以太网络端口传输数据包,第3字节表示数据目的地址,用端口标识表示,采用十进制数字表示,第4-6字节预留,全为0;对于以太网络端口传输数据包,第3-6字节为远程目标地址,具体可以是IP(Internet Protocol Address网际协议地址)地址。
待转发数据包的头部数据中包括的预留信息中第7-8字节,对于非以太网络端口传输数据包预留,全为0;对于以太网络端口传输数据包,第7-8字节表示远程端口。
待转发数据包的头部数据中包括的预留信息中第9字节,对于非以太网络端口传输数据包预留,全为0;对于以太网络端口传输数据包,第9字节的高5位预留为0,低3位表示通信协议类型。协议类型具体可以是TCP(Transmission Control Protocol传输控制协议)对应第9字节低3位为000,UDP(User Datagram Protocol用户数据报协议)对应第9字节低3位为001,SSL(Secure Sockets Layer安全套接层)对应第9字节低3位为010。
举例说明,端口集成设备在检测到接收到的数据包头部数据中端口标识所在位置的字符为“04”时,判定该端口为物理端口,直接以该标识“04”作为目标地址转发数据包。端口集成设备在检测到接收到的数据包头部数据中端口标识所在位置的字符为“06”时,判定该端口为以太网络端口,提取头部数据中预留信息部分的第3-6字节的字符作为目标地址,查询第9字节低3位字符对应的通信协议类型,根据该通信协议向目标地址转发数据包。
在上述实施例中,对于不同类型的端口设置相应的数据转发方式,确保需要被转发的数据包均能被准确地进行转发。
在一个实施例中,步骤S308包括:提取待转发数据包中包括的待转发数据;向接入端口的接入设备转发待转发数据。步骤S310包括接收接入设备响应于待转发数据返回的应答包。步骤S312包括确定接收应答包的端口所对应的端口标识;将应答包和端口标识封装为应答包;将封装得到的应答包反馈至交易控制设备。
具体地,交易控制设备下发至端口集成设备的数据包为将交易数据二次封装得到的数据包。交易控制设备可先按照响应交易数据的接入设备适配的通信协议一次封装交易数据得到待转发数据,再按照端口集成设备适配的数据协议二次封装待转发数据得到待转发数据包。端口集成设备根据二次封装生成的头部数据确定待转发数据包指向的端口后,提取待转发数据包中包括的待转发数据,将提取的待转发数据转发至接入确定的端口的接入设备。
端口集成设备在接收到接入设备返回的应答包后,获取传输该应答包的端口的端口标识,按照端口集成设备适配的数据协议二次封装接收到的应答包和端口标识得到可反馈至交易控制设备的应答包,将该应答包反馈至交易控制设备。
在本实施例中,本地将接收到的接入设备反馈的应答包和接收该应答包的端口标识封装后反馈至交易控制设备,使得交易控制设备明确应答包来源,确保后续交易数据处理的准确进行。
在一个实施例中,该交易数据传输方法中将封装得到的应答包反馈至交易控制设备的步骤包括获取端口标识间的路由关系表;针对接收应答包的端口所对应的端口标识,从路由关系表中查询相对应的端口标识;通过查询到的端口标识对应的端口,将封装得到的应答包反馈至交易控制设备。
其中,端口标识间的路由关系表是指数据接收端口到数据发送端口的对应关系的列表。数据接收端口是接收数据包的端口,数据发送端口是指转发数据包的端口。具体地,端口集成设备作为数据转发设备,可事先配置有端口标识间的路由关系表,在接收到需要转发的数据包时,查找该端口标识间的路由关系表,确定转发的端口以转发数据包。
在一个实施例中,端口标识间的路由关系表中每条路由信息由一对端口标识组成。端口标识可用十进制字符表示,长度可为2字节。每条路由信息可为单向路由信息,在前的字节表示数据接收端口,在后的字节表示数据发送端口。转发方向为数据接收端口至数据发送端口。
举例说明,比如,PINPAD到BT的路由信息为“0301”,COM1到BT的路由信息为“0401”,LAN到BT的路由信息为“0601”,三条路由信息合并在一起可构成路由关系表“030104010601”表示PINPAD→BT、COM1→BT和LAN→BT的路由关系。
在本实施例中,通过端口标识间的路由关系表确定转发数据包的渠道,保证了在本地进行数据转发的有序进行,可避免数据包集中转发时的数据包阻塞。
如图4所示,在一个具体的实施例中,交易数据处理方法具体包括以下步骤:
S402,接收交易控制设备下发的数据包。
S404,提取数据包中包括的数据协议标识。
S406,根据数据协议标识判定数据包是否为待转发数据包;若是,则跳转到步骤S408;若否,则跳转到步骤S424。
S408,提取待转发数据包中包括的待转发数据,确定待转发数据包中指定的端口。
S410,判断待转发数据包中指定的端口为物理端口还是以太网络端口;若为物理端口,则跳转到步骤S412;若为以太网络端口,则跳转到步骤S414。
S412,向接入物理端口的接入设备转发待转发数据。
S414,获取待转发数据包中包括的目标地址与通信协议类型;按照通信协议类型对应的通信协议,将待转发数据由以太网络端口发送至目标地址所对应的接入设备。
S416,接收接入设备响应于待转发数据返回的应答包。
S418,确定接收应答包的端口所对应的端口标识;将应答包和端口标识封装为应答包。
S420,针对接收应答包的端口所对应的端口标识,从路由关系表中查询相对应的端口标识。
S422,通过查询到的端口标识对应的端口,将封装得到的应答包反馈至交易控制设备。
S424,通过本地操作系统响应于待本地处理数据包生成应答包,将应答包反馈至交易控制设备。
在本实施例中,通过数据包中包括的数据协议标识来区别交易控制设备下发的数据包是否为发往通过本地提供的端口接入本地的接入设备的待转发数据包,在判定交易控制设备下发的数据包为需要转发给接入设备的待转发数据包时,只需要确定数据包中指定的端口,便可向接入端口的接入设备转发该数据包,避免了需要针对各种接入设备相应配置驱动才能进行数据传输的约束条件,本地只需进行转发即可,提高了在交易数据传输时的兼容性。
图5示出了一个实施例中用于实现交易数据传输方法的设备架构图。参考图5,该设备架构图包括交易控制设备510和端口集成设备520。交易控制设备510与端口集成设备520通过蓝牙连接。交易控制设备510中存储有操作系统、接入设备通信协议、端口集成设备数据传输协议和通用功能模块。端口集成设备520中存储有操作系统、端口集成设备驱动和端口集成设备数据传输协议。端口集成设备520不需存储接入设备通信协议,只需要对发往接入设备的数据包转发即可。
图6示出了一个实施例中读卡器参与的交易数据传输方法的时序图。参考图6,交易控制设备向端口集成设备下发发往读卡器的数据包,端口集成设备在接收到交易控制设备下发的数据包后,解析数据包头部数据中第2字节的最高位,判定该数据包为待转发数据包。查询数据包头部数据中第3字节,提取端口标识为“04”即为COM1端口,直接将“04”作为目标地址将数据包转发至读卡器。端口集成设备在转发数据包后,轮询端口集成设备集成的各端口,在轮询时接收到读卡器返回的应答包,获取接收应答包的端口标识,将接收到的应答包和端口标识封装得到应答包,再根据端口标识间的路由关系表查询相对应的端口标识,通过查询到的端口标识对应的端口,将封装得到的应答包反馈至交易控制设备。
如图7所示,在一个实施例中,提供了一种交易数据传输装置700,包括:第一接收模块701、提取模块702、确定模块703、转发模块704、第二接收模块705和反馈模块706。
第一接收模块701,用于接收交易控制设备下发的数据包。
提取模块702,用于提取数据包中包括的数据协议标识。
确定模块703,用于当数据协议标识表示数据包为待转发数据包时,则确定待转发数据包中指定的端口。
转发模块704,用于向接入端口的接入设备转发待转发数据包。
第二接收模块705,用于接收接入设备响应于待转发数据包返回的应答包。
反馈模块706,用于将应答包反馈至交易控制设备。
上述交易数据传输装置700,通过数据包中包括的数据协议标识来区别交易控制设备下发的数据包是否为发往通过本地提供的端口接入本地的接入设备的待转发数据包,在判定交易控制设备下发的数据包为需要转发给接入设备的待转发数据包时,只需要确定数据包中指定的端口,便可向接入端口的接入设备转发该数据包,避免了需要针对各种接入设备相应配置驱动才能进行数据传输的约束条件,本地只需进行转发即可,提高了在交易数据传输时的兼容性。
如图8所示,在一个实施例中,交易数据传输装置700还包括响应模块707。
响应模块707,用于当数据协议标识表示数据包为待本地处理数据包时,则通过本地操作系统响应于待本地处理数据包生成应答包。
在本实施例中,通过数据包中包括的数据协议标识来区别交易控制设备下发的数据包是否为待本地处理数据包,在判定交易控制设备下发的数据包为待本地处理数据包时,便可直接进行响应,保证了需要在本地进行处理的数据的正常进行。
在一个实施例中,转发模块704还用于当确定的端口为物理端口时,向接入物理端口的接入设备转发待转发数据包;当确定的端口为以太网络端口时,则获取待转发数据包中包括的目标地址与通信协议类型;按照通信协议类型对应的通信协议,将待转发数据包由以太网络端口发送至目标地址所对应的接入设备。
在本实施例中,对于不同类型的端口设置相应的数据转发方式,确保需要被转发的数据包均能被准确地进行转发。
在一个是实施例中,转发模块704还用于提取待转发数据包中包括的待转发数据;向接入端口的接入设备转发待转发数据。第二接收模块705还用于接收接入设备响应于待转发数据返回的应答包。反馈模块706还用于确定接收应答包的端口所对应的端口标识;将应答包和端口标识封装为应答包;将封装得到的应答包反馈至交易控制设备。
在本实施例中,本地将接收到的接入设备反馈的应答包和接收该应答包的端口标识封装后反馈至交易控制设备,使得交易控制设备明确应答包来源,确保后续交易数据处理的准确进行。
在一个实施例中,反馈模块706还用于获取端口标识间的路由关系表;针对接收应答包的端口所对应的端口标识,从路由关系表中查询相对应的端口标识;通过查询到的端口标识对应的端口,将封装得到的应答包反馈至交易控制设备。
在本实施例中,通过端口标识间的路由关系表确定转发数据包的渠道,保证了在本地进行数据转发的有序进行,可避免数据包集中转发时的数据包阻塞。
在一个实施例中,一种计算机可读存储介质,其上存储有计算机可读指令,该计算机可读指令被处理器执行时实现以下步骤:
接收交易控制设备下发的数据包;
提取数据包中包括的数据协议标识;
当数据协议标识表示数据包为待转发数据包时,则
确定待转发数据包中指定的端口;
向接入端口的接入设备转发待转发数据包;
接收接入设备响应于待转发数据包返回的应答包;
将应答包反馈至交易控制设备。
上述计算机可读存储介质上存储的计算机可读指令在被处理器执行时,通过数据包中包括的数据协议标识来区别交易控制设备下发的数据包是否为发往通过本地提供的端口接入本地的接入设备的待转发数据包,在判定交易控制设备下发的数据包为需要转发给接入设备的待转发数据包时,只需要确定数据包中指定的端口,便可向接入端口的接入设备转发该数据包,避免了需要针对各种接入设备相应配置驱动才能进行数据传输的约束条件,本地只需进行转发即可,提高了在交易数据传输时的兼容性。
在一个实施例中,计算机可读存储介质上存储的计算机可读指令使得处理器在执行提取数据包中包括的数据协议标识的步骤之后,执行以下步骤:当数据协议标识表示数据包为待本地处理数据包时,则通过本地操作系统响应于待本地处理数据包生成应答包,并继续执行将应答包反馈至交易控制设备的步骤。
在一个实施例中,计算机可读存储介质上存储的计算机可读指令使得处理器执行的向接入端口的接入设备转发待转发数据包的步骤包括:当确定的端口为物理端口时,向接入物理端口的接入设备转发待转发数据包;当确定的端口为以太网络端口时,则获取待转发数据包中包括的目标地址与通信协议类型;按照通信协议类型对应的通信协议,将待转发数据包由以太网络端口发送至目标地址所对应的接入设备。
在一个实施例中,计算机可读存储介质上存储的计算机可读指令使得处理器执行的向接入端口的接入设备转发待转发数据包的步骤包括:提取待转发数据包中包括的待转发数据;向接入端口的接入设备转发待转发数据。执行接收接入设备响应于待转发数据包返回的应答包的步骤包括:接收接入设备响应于待转发数据返回的应答包。执行的将应答包反馈至交易控制设备的步骤包括:确定接收应答包的端口所对应的端口标识;将应答包和端口标识封装为应答包;将封装得到的应答包反馈至交易控制设备。
在一个实施例中,计算机可读存储介质上存储的计算机可读指令使得处理器执行的将封装得到的应答包反馈至交易控制设备的步骤包括:获取端口标识间的路由关系表;针对接收应答包的端口所对应的端口标识,从路由关系表中查询相对应的端口标识;通过查询到的端口标识对应的端口,将封装得到的应答包反馈至交易控制设备。
在一个实施例中,一种电子设备,包括存储器和处理器,存储器中储存有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行以下步骤:
接收交易控制设备下发的数据包;
提取数据包中包括的数据协议标识;
当数据协议标识表示数据包为待转发数据包时,则
确定待转发数据包中指定的端口;
向接入端口的接入设备转发待转发数据包;
接收接入设备响应于待转发数据包返回的应答包;
将应答包反馈至交易控制设备。
上述电子设备,在通过处理器执行上述步骤时,通过数据包中包括的数据协议标识来区别交易控制设备下发的数据包是否为发往通过本地提供的端口接入本地的接入设备的待转发数据包,在判定交易控制设备下发的数据包为需要转发给接入设备的待转发数据包时,只需要确定数据包中指定的端口,便可向接入端口的接入设备转发该数据包,避免了需要针对各种接入设备相应配置驱动才能进行数据传输的约束条件,本地只需进行转发即可,提高了在交易数据传输时的兼容性。
在一个实施例中,计算机可读指令还使得处理器在执行提取数据包中包括的数据协议标识的步骤之后,执行以下步骤:当数据协议标识表示数据包为待本地处理数据包时,则通过本地操作系统响应于待本地处理数据包生成应答包,并继续执行将应答包反馈至交易控制设备的步骤。
在一个实施例中,计算机可读指令还使得所述处理器执行的向接入端口的接入设备转发待转发数据包的步骤包括:当确定的端口为物理端口时,向接入物理端口的接入设备转发待转发数据包;当确定的端口为以太网络端口时,则获取待转发数据包中包括的目标地址与通信协议类型;按照通信协议类型对应的通信协议,将待转发数据包由以太网络端口发送至目标地址所对应的接入设备。
在一个实施例中,计算机可读指令还使得所述处理器执行的向接入端口的接入设备转发待转发数据包的步骤包括:提取待转发数据包中包括的待转发数据;向接入端口的接入设备转发待转发数据。执行的接收接入设备响应于待转发数据包返回的应答包的步骤包括:接收接入设备响应于待转发数据返回的应答包。执行的将应答包反馈至交易控制设备的步骤包括:确定接收应答包的端口所对应的端口标识;将应答包和端口标识封装为应答包;将封装得到的应答包反馈至交易控制设备。
在一个实施例中,计算机可读指令还使得所述处理器执行的将封装得到的应答包反馈至交易控制设备的步骤包括:获取端口标识间的路由关系表;针对接收应答包的端口所对应的端口标识,从路由关系表中查询相对应的端口标识;通过查询到的端口标识对应的端口,将封装得到的应答包反馈至交易控制设备。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种交易数据传输方法,包括:
接收交易控制设备下发的数据包;所述数据包中包括经过所述交易控制设备两次封装的交易数据;两次封装包括:先按照与接入设备适配的通信协议进行封装,再按照与端口集成设备适配的数据传输协议进行封装;
提取所述数据包中包括的数据协议标识;
当所述数据协议标识与预设的转发数据协议的标识一致,表示所述数据包为待转发数据包时,则
确定所述待转发数据包中指定的端口;
向接入所述端口的接入设备转发所述待转发数据包;
接收所述接入设备响应于所述待转发数据包返回的应答包;
将所述应答包反馈至所述交易控制设备。
2.根据权利要求1所述的方法,其特征在于,所述提取所述数据包中包括的数据协议标识之后,所述方法还包括:
当所述数据协议标识表示所述数据包为待本地处理数据包时,则
通过本地操作系统响应于所述待本地处理数据包生成应答包,并继续执行所述将所述应答包反馈至所述交易控制设备的步骤。
3.根据权利要求1或2所述的方法,其特征在于,所述向接入所述端口的接入设备转发所述待转发数据包,包括:
当确定的所述端口为物理端口时,向接入所述物理端口的接入设备转发所述待转发数据包;
当确定的所述端口为以太网络端口时,则
获取所述待转发数据包中包括的目标地址与通信协议类型;
按照所述通信协议类型对应的通信协议,将所述待转发数据包由所述以太网络端口发送至所述目标地址所对应的接入设备。
4.根据权利要求1或2所述的方法,其特征在于,所述向接入所述端口的接入设备转发所述待转发数据包,包括:
提取所述待转发数据包中包括的待转发数据;
向接入所述端口的接入设备转发所述待转发数据;
所述接收所述接入设备响应于所述待转发数据包返回的应答包,包括:
接收所述接入设备响应于所述待转发数据返回的应答包;
所述将所述应答包反馈至所述交易控制设备,包括:
确定接收所述应答包的端口所对应的端口标识;
将所述应答包和所述端口标识封装为应答包;
将封装得到的所述应答包反馈至所述交易控制设备。
5.根据权利要求4所述的方法,其特征在于,所述将封装得到的所述应答包反馈至所述交易控制设备,包括:
获取端口标识间的路由关系表;
针对接收所述应答包的端口所对应的端口标识,从所述路由关系表中查询相对应的端口标识;
通过查询到的所述端口标识对应的端口,将封装得到的所述应答包反馈至所述交易控制设备。
6.一种交易数据传输装置,其特征在于,所述装置包括:
第一接收模块,用于接收交易控制设备下发的数据包;所述数据包中包括经过所述交易控制设备两次封装的交易数据;两次封装包括:先按照与接入设备适配的通信协议进行封装,再按照与端口集成设备适配的数据传输协议进行封装;
提取模块,用于提取所述数据包中包括的数据协议标识;
确定模块,用于当所述数据协议标识与预设的转发数据协议的标识一致,表示所述数据包为待转发数据包时,则确定所述待转发数据包中指定的端口;
转发模块,用于向接入所述端口的接入设备转发所述待转发数据包;
第二接收模块,用于接收所述接入设备响应于所述待转发数据包返回的应答包;
反馈模块,用于将所述应答包反馈至所述交易控制设备。
7.根据权利要求6所述的装置,其特征在于,所述转发模块还用于当确定的所述端口为物理端口时,向接入所述物理端口的接入设备转发所述待转发数据包;当确定的所述端口为以太网络端口时,则获取所述待转发数据包中包括的目标地址与通信协议类型;按照所述通信协议类型对应的通信协议,将所述待转发数据包由所述以太网络端口发送至所述目标地址所对应的接入设备。
8.根据权利要求6所述的装置,其特征在于,所述转发模块还用于提取所述待转发数据包中包括的待转发数据;向接入所述端口的接入设备转发所述待转发数据;
所述第二接收模块还用于接收所述接入设备响应于所述待转发数据返回的应答包;
所述反馈模块还用于确定接收所述应答包的端口所对应的端口标识;将所述应答包和所述端口标识封装为应答包;将封装得到的所述应答包反馈至所述交易控制设备。
9.根据权利要求8所述的装置,其特征在于,所述反馈模块还用于获取端口标识间的路由关系表;针对接收所述应答包的端口所对应的端口标识,从所述路由关系表中查询相对应的端口标识;通过查询到的所述端口标识对应的端口,将封装得到的所述应答包反馈至所述交易控制设备。
10.一种电子设备,其特征在于,包括存储器和处理器,所述存储器中储存有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行以下步骤:
接收交易控制设备下发的数据包;所述数据包中包括经过所述交易控制设备两次封装的交易数据;两次封装包括:先按照与接入设备适配的通信协议进行封装,再按照与端口集成设备适配的数据传输协议进行封装;
提取所述数据包中包括的数据协议标识;
当所述数据协议标识表示所述数据包为待转发数据包时,则
确定所述待转发数据包中指定的端口;
向接入所述端口的接入设备转发所述待转发数据包;
接收所述接入设备响应于所述待转发数据包返回的应答包;
将所述应答包反馈至所述交易控制设备。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710170351.0A CN107040523B (zh) | 2017-03-21 | 2017-03-21 | 交易数据传输方法、装置和电子设备 |
PCT/CN2017/102996 WO2018171147A1 (zh) | 2017-03-21 | 2017-09-22 | 交易数据传输方法、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710170351.0A CN107040523B (zh) | 2017-03-21 | 2017-03-21 | 交易数据传输方法、装置和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107040523A CN107040523A (zh) | 2017-08-11 |
CN107040523B true CN107040523B (zh) | 2020-09-11 |
Family
ID=59534603
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710170351.0A Active CN107040523B (zh) | 2017-03-21 | 2017-03-21 | 交易数据传输方法、装置和电子设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107040523B (zh) |
WO (1) | WO2018171147A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107040523B (zh) * | 2017-03-21 | 2020-09-11 | 百富计算机技术(深圳)有限公司 | 交易数据传输方法、装置和电子设备 |
CN108282412A (zh) * | 2018-01-19 | 2018-07-13 | 世纪龙信息网络有限责任公司 | 网络分流方法、装置、系统及计算机设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103713608A (zh) * | 2013-12-27 | 2014-04-09 | 广东康宝电器有限公司 | 无线物联家居系统分级网络架构及其组网通信方法 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6460120B1 (en) * | 1999-08-27 | 2002-10-01 | International Business Machines Corporation | Network processor, memory organization and methods |
US7003571B1 (en) * | 2000-01-31 | 2006-02-21 | Telecommunication Systems Corporation Of Maryland | System and method for re-directing requests from browsers for communication over non-IP based networks |
AU2003217970B2 (en) * | 2002-03-06 | 2007-12-20 | Pharos Systems International, Inc. | Document processing system including multi-device compatible interface and related methods |
JP4365672B2 (ja) * | 2003-12-04 | 2009-11-18 | 株式会社日立製作所 | パケット通信ノード装置 |
CN1635506A (zh) * | 2003-12-25 | 2005-07-06 | 广东金中华通讯服务有限公司 | 一种金融收付服务系统 |
CN101631093A (zh) * | 2009-08-28 | 2010-01-20 | 中国电信股份有限公司 | 实时数据交换接口的实现方法和系统 |
CN102025593B (zh) * | 2009-09-21 | 2013-04-24 | 中国移动通信集团公司 | 分布式用户接入系统及方法 |
US20110167176A1 (en) * | 2010-01-06 | 2011-07-07 | Apple Inc. | Connecting multiple accessories to a portable computing device |
CN102592358A (zh) * | 2011-01-04 | 2012-07-18 | 中国移动通信集团公司 | 一种电子数据的写入方法、系统和设备 |
CN102325187A (zh) * | 2011-09-16 | 2012-01-18 | 宇龙计算机通信科技(深圳)有限公司 | 一种整合多种功能服务的系统及方法 |
CN103179027B (zh) * | 2011-12-22 | 2016-09-28 | 中兴通讯股份有限公司 | 一种实现电器设备兼容的方法和系统、通用外设接入网关 |
KR102130726B1 (ko) * | 2012-02-29 | 2020-08-05 | 모비웨이브 인코포레이티드 | 디바이스로 보안 금융 거래를 행하는 방법, 디바이스 및 보안 요소 |
CN102724124B (zh) * | 2012-06-27 | 2015-07-15 | 福建联迪商用设备有限公司 | Fsk通讯设备与通讯线路复用的实现方法 |
US9229894B2 (en) * | 2013-04-09 | 2016-01-05 | Apple Inc. | Protocol conversion involving multiple virtual channels |
US9258209B2 (en) * | 2013-07-02 | 2016-02-09 | Dell Products L.P. | System and method for layer 3 proxy routing |
CN105306366B (zh) * | 2014-05-29 | 2019-07-05 | 中国移动通信集团公司 | 数据路由方法及装置 |
CN104091397A (zh) * | 2014-07-09 | 2014-10-08 | 青岛中科英泰商用系统股份有限公司 | 一种基于智能移动设备的收银通信装置及收银系统 |
TW201635205A (zh) * | 2015-03-25 | 2016-10-01 | 格宇科技股份有限公司 | 內嵌智能晶片之安全數位記憶卡、行動讀卡終端機及其控制方法 |
CN105844457B (zh) * | 2016-04-11 | 2021-06-15 | 深圳创迹呈祥科技有限公司 | 一种消费数据采集智能盒子 |
CN107040523B (zh) * | 2017-03-21 | 2020-09-11 | 百富计算机技术(深圳)有限公司 | 交易数据传输方法、装置和电子设备 |
-
2017
- 2017-03-21 CN CN201710170351.0A patent/CN107040523B/zh active Active
- 2017-09-22 WO PCT/CN2017/102996 patent/WO2018171147A1/zh active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103713608A (zh) * | 2013-12-27 | 2014-04-09 | 广东康宝电器有限公司 | 无线物联家居系统分级网络架构及其组网通信方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2018171147A1 (zh) | 2018-09-27 |
CN107040523A (zh) | 2017-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107750058A (zh) | 基于wifi Beacon帧的设备接入网络的方法、控制终端及系统 | |
CN103414538B (zh) | 一种分布式环境下网络数据通信的数据包分拣方法 | |
CN113900982B (zh) | 一种分布式异构加速平台通信方法、系统、设备及介质 | |
CN104408003A (zh) | 增强的无线usb协议和集线器 | |
US20210160353A1 (en) | Data sending method and device, data receiving method and device, and system | |
CN107040523B (zh) | 交易数据传输方法、装置和电子设备 | |
CN109756401B (zh) | 一种测试方法、装置、电子设备及存储介质 | |
CN105190530A (zh) | 传输硬件渲染的图形数据 | |
CN111343148A (zh) | 一种fgpa通信数据的处理方法、系统及装置 | |
CN105389120A (zh) | 支持通过活动消息的rma api | |
CN104469501A (zh) | 一种基于串口通信协议的机顶盒自动设置方法 | |
CN110728558A (zh) | 虚拟物品包发送方法、装置、设备和存储介质 | |
CN106603748A (zh) | 一种终端上网方法及终端 | |
CN110247926A (zh) | 一种交互方法和系统 | |
US9128831B2 (en) | Electrical device and method of setting address | |
EP2420936A1 (en) | Protocol conversion Communication Device | |
JPH01126044A (ja) | マルチプロトコル処理装置 | |
US11804986B2 (en) | Method for the remote management of a device connected to a residential gateway | |
CN108848172A (zh) | 一种文件传输方法及系统 | |
CN114116574A (zh) | 一种数据传输的方法、装置、电子设备及存储介质 | |
CN113238982A (zh) | 数据通信方法、装置、计算机设备和存储介质 | |
CN102325199A (zh) | 终端中ip地址管理方法及装置 | |
EP3631640B1 (en) | Communication between field programmable gate arrays | |
CN107544928B (zh) | 直接存储器访问控制装置和对此的运行方法 | |
CN109525609B (zh) | 一种基于tcp/ip协议的通讯平台及其通讯方法 |
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 |