2023年銀聯(lián)銀行卡聯(lián)網(wǎng)聯(lián)合技術(shù)規(guī)范V第部分通訊接口_第1頁(yè)
2023年銀聯(lián)銀行卡聯(lián)網(wǎng)聯(lián)合技術(shù)規(guī)范V第部分通訊接口_第2頁(yè)
2023年銀聯(lián)銀行卡聯(lián)網(wǎng)聯(lián)合技術(shù)規(guī)范V第部分通訊接口_第3頁(yè)
2023年銀聯(lián)銀行卡聯(lián)網(wǎng)聯(lián)合技術(shù)規(guī)范V第部分通訊接口_第4頁(yè)
2023年銀聯(lián)銀行卡聯(lián)網(wǎng)聯(lián)合技術(shù)規(guī)范V第部分通訊接口_第5頁(yè)
已閱讀5頁(yè),還剩22頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Q/CUP

中國(guó)銀聯(lián)股份有限公司企業(yè)標(biāo)準(zhǔn)

Q/CUP006.5—2012

代替Q/CUP006.5—2011

中國(guó)銀聯(lián)銀行卡聯(lián)網(wǎng)聯(lián)合技術(shù)規(guī)范V2.1

第5部分通信接口規(guī)范

TechnicalSpecificationsonBankcardInteroperabilityV2.1

Part5SpecificationonCommunicationInterface

2012-11-02發(fā)布2012-11-02實(shí)施

中國(guó)銀聯(lián)股份有限公司發(fā)布

Q/CUP006.5—2012

目次

前言..................................................................................II

1范圍.....................................................................................1

2銀聯(lián)網(wǎng)絡(luò)概述.............................................................................1

2.1規(guī)范要求..............................................................................1

2.2銀聯(lián)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu).....................................................................1

2.3入網(wǎng)機(jī)構(gòu)接入線路選擇..................................................................1

3網(wǎng)絡(luò)接口...............................................................................2

3.1入網(wǎng)機(jī)構(gòu)的物理接入方式...............................................................2

3.2接入設(shè)備要求.........................................................................3

4通信接口協(xié)議.............................................................................4

4.1概述...................................................................................4

4.2通信配置.............................................................................5

4.3協(xié)議定義...........................................................................12

參考文獻(xiàn)..................................................................................22

附錄A(資料性附錄)入網(wǎng)機(jī)構(gòu)通訊線路數(shù)量計(jì)算原則..................................23

Q/CUP006.5—2012

%*—a-

刖三

本標(biāo)準(zhǔn)對(duì)中國(guó)銀聯(lián)跨行交易網(wǎng)絡(luò)中聯(lián)機(jī)交易與文件傳輸?shù)耐ㄐ沤涌趹?yīng)滿足的要求做了規(guī)定,包括

通信鏈路的選擇、接入方式選擇、接入設(shè)備的要求和通信協(xié)議的規(guī)定。

本標(biāo)準(zhǔn)由中國(guó)銀聯(lián)股份有限公司提出。

本標(biāo)準(zhǔn)由中國(guó)銀聯(lián)股份有限公司制定。

本標(biāo)準(zhǔn)起草單位:中國(guó)銀聯(lián)股份有限公司、國(guó)內(nèi)入網(wǎng)機(jī)構(gòu)。

本標(biāo)準(zhǔn)主要起草人:戚躍民、郭銳、鄭澎、徐靜雯、李潔、吳金壇、王力斌、苗恒軒、萬高峰、

陸爾東、蔣慧科、杜秉一、趙偉。

Q/CUP006.5—2012

中國(guó)銀聯(lián)銀行卡聯(lián)網(wǎng)聯(lián)合技術(shù)規(guī)范V2.1

第5部分通信接口規(guī)范

1范圍

本標(biāo)準(zhǔn)規(guī)定了中國(guó)銀聯(lián)跨行交易網(wǎng)絡(luò)中聯(lián)機(jī)交易與文件傳輸?shù)耐ㄐ沤涌趹?yīng)滿足的要求,包括通信

鏈路的選擇、接入方式選擇、接入設(shè)備的要求和通信協(xié)議的規(guī)定。

本標(biāo)準(zhǔn)適用于所有加入中國(guó)銀聯(lián)銀行卡信息交換網(wǎng)絡(luò)的入網(wǎng)機(jī)構(gòu)。

2銀聯(lián)網(wǎng)絡(luò)概述

2.1規(guī)范要求

銀聯(lián)網(wǎng)絡(luò)要求穩(wěn)定可靠、結(jié)構(gòu)簡(jiǎn)單、便于維護(hù)管理。入網(wǎng)機(jī)構(gòu)必須遵照本規(guī)范對(duì)網(wǎng)絡(luò)通信接口方

面的要求,建設(shè)與銀聯(lián)網(wǎng)絡(luò)的接口,保障各入網(wǎng)機(jī)構(gòu)和銀聯(lián)網(wǎng)絡(luò)之間互聯(lián)互通,并提供銀行卡信息安

全、穩(wěn)定、可靠的存取控制。

2.2銀聯(lián)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)

銀聯(lián)網(wǎng)絡(luò)是一個(gè)二層的網(wǎng)絡(luò)結(jié)構(gòu),其中的網(wǎng)絡(luò)節(jié)點(diǎn)按層次不同,可劃分為:核心節(jié)點(diǎn):上海信息

中心/北京信息中心;骨干節(jié)點(diǎn):銀聯(lián)分公司,如圖1所示。

圖1銀聯(lián)網(wǎng)絡(luò)結(jié)構(gòu)示意圖

全國(guó)性的入網(wǎng)機(jī)構(gòu)與境內(nèi)的外資銀行,(如全國(guó)性的商業(yè)銀行總行、匯豐銀行境內(nèi)機(jī)構(gòu))直接與

上海信息中心與北京信息中心連接,屬于直接接入機(jī)構(gòu)。

間接接入機(jī)構(gòu),如當(dāng)?shù)剞r(nóng)村信用社或城市商業(yè)銀行,選擇當(dāng)?shù)劂y聯(lián)分公司接入銀聯(lián)網(wǎng)絡(luò);而全國(guó)

性入網(wǎng)機(jī)構(gòu)在各地的分之機(jī)構(gòu)可選擇當(dāng)?shù)氐你y聯(lián)分公司接入,也可以采用總對(duì)總的方式,通過其全國(guó)

性入網(wǎng)機(jī)構(gòu)接入銀聯(lián)網(wǎng)絡(luò)。

2.3入網(wǎng)機(jī)構(gòu)接入線路選擇

2.3.1直接接入機(jī)構(gòu)接入線路選擇

根據(jù)目前運(yùn)營(yíng)商的分布情況,電信主要服務(wù)中國(guó)南方地區(qū),而新聯(lián)通主要服務(wù)中國(guó)北方地區(qū),因

此對(duì)于全國(guó)性入網(wǎng)直接接入機(jī)構(gòu)與境內(nèi)外資銀行的接入要求如下:

采用電信的SDH線路與上海信息中心互聯(lián),對(duì)于交易量大的機(jī)構(gòu)可采用MSTP的方式進(jìn)行接入。

I

Q/CUP006.5—2012

采用新聯(lián)通的SDH線路與北京信息中心互聯(lián),對(duì)于交易量大的機(jī)構(gòu)也可以采用MSTP的方式接入。

2.3.2間接接入機(jī)構(gòu)接入線路選擇

銀聯(lián)分公司與間接接入機(jī)構(gòu)在通訊接入線路上的選擇視各地區(qū)具體情況確定,但每一個(gè)接入機(jī)構(gòu)

都應(yīng)有主備通訊設(shè)備和主備通訊線路,并且主備線盡量選擇當(dāng)?shù)夭煌倪\(yùn)營(yíng)商,防止通訊設(shè)備與線路

的單點(diǎn)故障。

3網(wǎng)絡(luò)接口

3.1入網(wǎng)機(jī)構(gòu)的物理接入方式

3.1.1直接接入機(jī)構(gòu)接入方式

對(duì)于全國(guó)性的入網(wǎng)機(jī)構(gòu)與境內(nèi)的外資銀行通過直接與上海信息中心、北京信息中心互聯(lián)的方式接

入,并且選擇電信、新聯(lián)通運(yùn)營(yíng)商的SDH或MSTP線路。如下圖:

圖2直接接入機(jī)構(gòu)接入方式

3.1.2間接接入機(jī)構(gòu)接入方式

間接接入機(jī)構(gòu),可采取就近接入方式,根據(jù)當(dāng)?shù)氐膶?shí)際情況選擇1-2家不同運(yùn)營(yíng)商的專線接入當(dāng)

地的銀聯(lián)分公司。如下圖:

2

Q/CUP006.5—2012

對(duì)于上述兩種接入方式的說明如下:

直接接入機(jī)構(gòu)須采用電信與新聯(lián)通的兩個(gè)不同的運(yùn)營(yíng)商的SDH或MSTP線路與上海信息中心、北京信

息中心互聯(lián)。

間接接入機(jī)構(gòu)可以根據(jù)具體情況選用其他通信鏈路方式(建議使用SDH、MSTP線路),但必須滿足

本規(guī)范中的使用兩條通信鏈路和備份鏈路的規(guī)定。

正常情況下,兩條鏈路分別承載實(shí)時(shí)交易數(shù)據(jù)和非實(shí)時(shí)數(shù)據(jù),當(dāng)任何一條鏈路中斷時(shí),另外一條

中繼線路可以承載全部的數(shù)據(jù)。為了保證實(shí)時(shí)交易數(shù)據(jù)總是被優(yōu)先處理,建議在路由器上對(duì)交易數(shù)據(jù)

流使用LLQ的Qos策略。

3.2接入設(shè)備要求

3.2.1基本要求

銀聯(lián)要求各入網(wǎng)機(jī)構(gòu)選擇路由器作為廣域網(wǎng)接入設(shè)備。

路由器是廣域網(wǎng)(WAN)之間互連的關(guān)鍵設(shè)備。路由器支持不同的廣域網(wǎng)物理接口,能夠?qū)崿F(xiàn)負(fù)載

平衡,阻止廣播風(fēng)暴,控制網(wǎng)絡(luò)流量以及提高系統(tǒng)容錯(cuò)能力。

3.2.2設(shè)備接口要求

3.2.2.1物理接口

入網(wǎng)機(jī)構(gòu)與銀聯(lián)網(wǎng)絡(luò)互連的廣域網(wǎng)設(shè)備應(yīng)支持下述接口:

a)高速同步串行接口

b)G.703-E1接口

c)10Base-T和lOOBaseT接口

3.2.2.2互聯(lián)使用協(xié)議

a)互聯(lián)線路使用的封裝協(xié)議:

HDCL

PPP

Ethernet

b)互聯(lián)使用的路由協(xié)議:

靜態(tài)路由

常用動(dòng)態(tài)路由協(xié)議

c)網(wǎng)絡(luò)管理/安全協(xié)議:

SNMP

TelnetRemoteAccess

AccessLists(Routing)

DebugCommands

PingCommands

Syslog

EventLogging

3.2.3網(wǎng)絡(luò)互聯(lián)與線路切換

3.2.3.1直接接入機(jī)構(gòu)的互聯(lián)與線路切換

直接接入機(jī)構(gòu)采用浮動(dòng)靜態(tài)路由或動(dòng)態(tài)路由協(xié)議實(shí)現(xiàn)與上海信息中心或北京信息中心的互聯(lián)互通。

在配置中確?;ヂ?lián)上海信息中心的線路為主用線路,當(dāng)該線路故障時(shí),機(jī)構(gòu)路由能自動(dòng)切換至與北京

信息中心的備用線路上,而當(dāng)主用線路故障恢復(fù)后,路由又能自動(dòng)回切至主用線路上。如下圖:

3

Q/CUP006.5—2012

3.2.3.2間接接入機(jī)構(gòu)與銀聯(lián)分公司的互聯(lián)與線路切換

間接接入機(jī)構(gòu)與銀聯(lián)分公司采用浮動(dòng)靜態(tài)路由實(shí)現(xiàn)互聯(lián)互通。當(dāng)主線中斷時(shí),機(jī)構(gòu)的路由能自動(dòng)

切換至備線上,當(dāng)主線恢復(fù)時(shí),路由能實(shí)現(xiàn)自動(dòng)回切。如下圖:

4通信接口協(xié)議

4.1概述

銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)在物理通訊線路連通的基礎(chǔ)上,需要雙方建立一定的通信連接并制定相

應(yīng)的通信控制協(xié)議,實(shí)現(xiàn)雙方之間聯(lián)機(jī)報(bào)文的處理和文件傳輸。銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)應(yīng)根據(jù)實(shí)際

的需要,在以下方面滿足通信的要求:

a)銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)建立的通信連接方式;

b)雙方采用的通信協(xié)議;

c)雙方通信設(shè)備上運(yùn)行的通信軟件。

4

Q/CUP006.5—2012

4.1.1通信連接的選擇

在TCP/IP協(xié)議的基礎(chǔ)上,使用socket編程接口編寫通信程序。一個(gè)socket連接由本地IP地址、端

口號(hào)和遠(yuǎn)端IP地址、端口號(hào)唯一確定。

IPlIP2

圖4socket連接示意圖

銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)建立的socket連接種類應(yīng)能滿足業(yè)務(wù)的處理要求。對(duì)于實(shí)時(shí)性要求高的

聯(lián)機(jī)交易,銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)建立的連接是長(zhǎng)連接,銀聯(lián)處理中心將不再支持短連接的方式。

對(duì)于實(shí)時(shí)性要求不高的文件傳輸,銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)采用短連接的方式。

4.1.2協(xié)議和通信設(shè)備要求

銀聯(lián)處理中心向入網(wǎng)機(jī)構(gòu)提供TCP/IP協(xié)議通信接口,與入網(wǎng)機(jī)構(gòu)的通信程序使用套接字(socket)

技術(shù)編寫。在銀聯(lián)處理中心一側(cè),通信服務(wù)器上安裝有與入網(wǎng)機(jī)構(gòu)通信的socket通信軟件,該軟件提

供的通信接口符合本規(guī)范的通信控制協(xié)議。在入網(wǎng)機(jī)構(gòu)一側(cè),通信主機(jī)上也應(yīng)安裝有相應(yīng)的通信軟件,

該通信程序也應(yīng)符合本規(guī)范規(guī)定的通信控制協(xié)議,實(shí)現(xiàn)與銀聯(lián)處理中心的通信。

入網(wǎng)機(jī)構(gòu)路由器廣域網(wǎng)口應(yīng)對(duì)銀聯(lián)處理中心開放,使銀聯(lián)處理中心能夠通過簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議或

網(wǎng)絡(luò)連通測(cè)試等方法獲得與各入網(wǎng)機(jī)構(gòu)通信連通狀況的信息,便于銀聯(lián)處理中心對(duì)通信網(wǎng)絡(luò)進(jìn)行監(jiān)控

和管理。

4.2通信配置

4.2.1IP地址和端口號(hào)配置

各入網(wǎng)機(jī)構(gòu)接入銀聯(lián)網(wǎng)絡(luò)使用的IP地址由銀聯(lián)處理中心統(tǒng)一分配。入網(wǎng)機(jī)構(gòu)和銀聯(lián)處理中心通信

所用的端口號(hào)由雙方各自決定。測(cè)試系統(tǒng)與生產(chǎn)系統(tǒng)使用不同的IP地址。

4.2.1.1聯(lián)機(jī)交易的IP地址和端口號(hào)配置

銀聯(lián)處理中心使用多臺(tái)聯(lián)機(jī)交易通信服務(wù)器與一個(gè)入網(wǎng)機(jī)構(gòu)通信,每臺(tái)通信服務(wù)器應(yīng)有一個(gè)IP地

址。為了便于管理和配置以及提高系統(tǒng)的可用性,在每一個(gè)IP上,銀聯(lián)處理中心通過分配不同的端口

號(hào)和入網(wǎng)機(jī)構(gòu)建立多條連接,每個(gè)端口號(hào)只能建立一條socket連接,如下圖所示。

5

Q/CUP006.5—2012

圖5銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)聯(lián)機(jī)交易連接示意圖

在圖5中,IP1和IP2的portl和port2均用于和入網(wǎng)機(jī)構(gòu)1連接,port3和port4用于和入網(wǎng)機(jī)構(gòu)2

連接。

同樣,入網(wǎng)機(jī)構(gòu)也要為銀聯(lián)處理中心發(fā)起建立的每條連接指定不同的端口號(hào),指定的端口號(hào)均應(yīng)

介于1024與65535之間。

4.2.1.2文件傳輸?shù)腎P地址和端口號(hào)配置

銀聯(lián)處理中心使用多臺(tái)文件服務(wù)器與入網(wǎng)機(jī)構(gòu)進(jìn)行文件傳輸。

在分配給機(jī)構(gòu)的ip上,銀聯(lián)處理中心給入網(wǎng)機(jī)構(gòu)指定建立連接的端口號(hào),入網(wǎng)機(jī)構(gòu)也要為銀聯(lián)處

理中心指定建立連接的相應(yīng)IP地址和端口號(hào)。

圖6銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)文件傳輸連接示意圖

4.2.1.3IP地址和端口限制

6

Q/CUP006.5—2012

在聯(lián)機(jī)交易中,銀聯(lián)處理中心為每個(gè)入網(wǎng)機(jī)構(gòu)分配的聯(lián)機(jī)交易通信服務(wù)器或文件服務(wù)器的IP地址

和端口號(hào)都已經(jīng)確定。為了便于管理和保障系統(tǒng)安全性,銀聯(lián)處理中心不允許入網(wǎng)機(jī)構(gòu)使用提供給其

他入網(wǎng)機(jī)構(gòu)的IP地址和端口號(hào)。銀聯(lián)處理中心通信程序?qū)φ?qǐng)求建立連接的遠(yuǎn)端IP地址做合法性檢查,

如果是規(guī)定的IP地址則允許建立連接,否則拒絕連接。

圖7IP地址和端口限制示意圖

4.2.2連接數(shù)目和方式

4.2.2.1聯(lián)機(jī)交易的連接數(shù)目和方式

聯(lián)機(jī)交易采用長(zhǎng)連接的方式。Socket連接建立后,除非發(fā)生異常中斷,否則雙方不再關(guān)閉連接,

始終保持連通狀態(tài),雙方可以直接發(fā)送或接收數(shù)據(jù)。

銀聯(lián)支持入網(wǎng)機(jī)構(gòu)采用單工和雙工兩種通訊方式的接入。

4.2.2.1.1單工方式

單工方式是指一條連接只用于單方向的接收或發(fā)送。只用于發(fā)送交易報(bào)文的長(zhǎng)連接稱為發(fā)送長(zhǎng)連

接,只用于接收交易報(bào)文的長(zhǎng)連接稱為接收長(zhǎng)連接。由一條發(fā)送長(zhǎng)連接和一條接收長(zhǎng)連接組成一個(gè)通

訊連接對(duì)。對(duì)于單工方式本規(guī)范規(guī)定:

(1)在一個(gè)連接對(duì)中,如果是入網(wǎng)機(jī)構(gòu)發(fā)現(xiàn)它的發(fā)送長(zhǎng)連接中斷,則關(guān)閉連接對(duì)中的接收長(zhǎng)連接,

并向處理中心重新發(fā)起連接請(qǐng)求,重建連接對(duì)的網(wǎng)絡(luò)連接,電建時(shí)不能對(duì)其他連接對(duì)斷鏈亞連。

(2)在一個(gè)連接對(duì)中,如果入網(wǎng)機(jī)構(gòu)檢測(cè)到,發(fā)送長(zhǎng)連接或接收長(zhǎng)連接已經(jīng)被中斷,則認(rèn)為該連

接對(duì)已經(jīng)中斷,將關(guān)閉本連接對(duì)中的所有連接,并向處理中心發(fā)起連接請(qǐng)求。如果入網(wǎng)機(jī)構(gòu)檢測(cè)到3

分鐘之內(nèi)在接收連接上沒有收到任何報(bào)文(包括空閑連接查詢報(bào)文),則認(rèn)為該接收連接已經(jīng)中斷,

將關(guān)閉本連接對(duì)中的發(fā)送長(zhǎng)連接,并向處理中心發(fā)起連接請(qǐng)求,重建該連接對(duì)的網(wǎng)絡(luò)連接,商建時(shí)不

能對(duì)其他連接對(duì)斷鏈重連。

(3)在一個(gè)連接對(duì)中,如果處理中心發(fā)現(xiàn)連接對(duì)中的發(fā)送長(zhǎng)連接中斷,而相應(yīng)的接收長(zhǎng)連接正常

時(shí),則處理中心首先關(guān)閉接收長(zhǎng)連接,然后恢復(fù)到偵聽狀態(tài),等待入網(wǎng)機(jī)構(gòu)重新發(fā)起建立連接的請(qǐng)求。

如果處理中心檢測(cè)到3分鐘之內(nèi)在接收連接上沒有收到任何報(bào)文(包括空閑連接查詢報(bào)文),則認(rèn)為該

7

Q/CUP006.5—2012

接收連接已經(jīng)中斷,將關(guān)閉本連接對(duì)中的發(fā)送長(zhǎng)連接,然后恢復(fù)到偵聽狀態(tài),等待入網(wǎng)機(jī)構(gòu)重新發(fā)起

建立連接的請(qǐng)求。

(4)只要處理中心接收到入網(wǎng)機(jī)構(gòu)建立發(fā)送長(zhǎng)連接的請(qǐng)求,即使此時(shí)處理中心的發(fā)送長(zhǎng)連接是正

常的,也需要斷開當(dāng)前發(fā)送長(zhǎng)連接,按照入網(wǎng)機(jī)構(gòu)請(qǐng)求重建新的發(fā)送長(zhǎng)連接。

圖8聯(lián)機(jī)交易的連接示意圖

入網(wǎng)機(jī)構(gòu)和銀聯(lián)處理中心建立的長(zhǎng)連接數(shù)應(yīng)和入網(wǎng)機(jī)構(gòu)的交易量有關(guān)。銀聯(lián)處理中心提供二進(jìn)二

出共四條單工長(zhǎng)連接到八進(jìn)八出共十六條單工長(zhǎng)連接的連接方式,入網(wǎng)機(jī)構(gòu)應(yīng)根據(jù)自己的交易量大小

選擇其中之一。

入網(wǎng)機(jī)構(gòu)

圖9二進(jìn)二出單工長(zhǎng)連接示意圖

8

Q/CUP006.5—2012

圖10四進(jìn)四出單工長(zhǎng)連接示意圖

銀聯(lián)處理中心給每個(gè)入網(wǎng)機(jī)構(gòu)指定至少兩臺(tái)通信服務(wù)器,因此入網(wǎng)機(jī)構(gòu)和銀聯(lián)處理中心的連接對(duì)

必須是偶數(shù)的,每臺(tái)通信服務(wù)器上的連接數(shù)至少是一進(jìn)一出兩條單工長(zhǎng)連接。六進(jìn)六出單工長(zhǎng)連接和

八進(jìn)八出單工長(zhǎng)連接的示意圖均類似圖9和圖10。在系統(tǒng)運(yùn)行中,應(yīng)對(duì)具體的連接數(shù)目做參數(shù)化管

理,可以根據(jù)入網(wǎng)機(jī)構(gòu)具體交易量大小情況做調(diào)整。

4.2.2.1.2雙工方式

雙工方式是指一條連接既做為接收長(zhǎng)連接又作為發(fā)送長(zhǎng)連接,僅由一條連接就完成了接收和發(fā)送

的功能。對(duì)于雙工方式本規(guī)范規(guī)定:

(1)在雙工方式中,如果入網(wǎng)機(jī)構(gòu)檢測(cè)到,該連接已經(jīng)被中斷,則關(guān)閉本連接,并向處理中心發(fā)

起連接請(qǐng)求,重建連接對(duì)的網(wǎng)絡(luò)連接。

(2)如果入網(wǎng)機(jī)構(gòu)檢測(cè)到3分鐘之內(nèi)在連接上沒有收到任何報(bào)文(包括空閑連接查詢報(bào)文),則

認(rèn)為該連接已經(jīng)中斷,將關(guān)閉本連接對(duì),并向處理中心發(fā)起連接請(qǐng)求,重建該連接對(duì)的網(wǎng)絡(luò)連接。

(3)在雙工方式中,如果處理中心發(fā)現(xiàn)連接中斷,則處理中心將恢復(fù)到偵聽狀態(tài),等待入網(wǎng)機(jī)構(gòu)

重新發(fā)起建立連接的請(qǐng)求。如果處理中心檢測(cè)到3分鐘之內(nèi)在連接上沒有收到任何報(bào)文(包括空閑連接

查詢報(bào)文),則認(rèn)為該連接已經(jīng)中斷,將關(guān)閉本連接對(duì),處理中心將恢復(fù)到偵聽狀態(tài),等待入網(wǎng)機(jī)構(gòu)

重新發(fā)起建立連接的請(qǐng)求。

(4)只要處理中心接收到了入網(wǎng)機(jī)構(gòu)建立連接的請(qǐng)求就應(yīng)該立刻響應(yīng)。

9

Q/CUP006.5—2012

圖11聯(lián)機(jī)交易的連接示意圖

入網(wǎng)機(jī)構(gòu)和處理中心建立的長(zhǎng)連接數(shù)應(yīng)和入網(wǎng)機(jī)構(gòu)的交易量有關(guān)。處理中心提供兩條雙工長(zhǎng)連接

到八條雙工長(zhǎng)連接的連接方式,入網(wǎng)機(jī)構(gòu)應(yīng)根據(jù)自己的交易量大小選擇其中之一。

處理中心給每個(gè)入網(wǎng)機(jī)構(gòu)指定至少兩臺(tái)通信服務(wù)器,因此入網(wǎng)機(jī)構(gòu)和銀聯(lián)處理中心的雙工長(zhǎng)連接

必須是偶數(shù)的,每臺(tái)通信服務(wù)器上的連接數(shù)至少是一條雙工長(zhǎng)連接。在系統(tǒng)運(yùn)行中,應(yīng)對(duì)具體的連接

數(shù)目做參數(shù)化管理,可以根據(jù)入網(wǎng)機(jī)構(gòu)具體交易量大小情況做調(diào)整。

4.2.2.1.3支持應(yīng)答報(bào)文原路返回

應(yīng)答報(bào)文原路返回的含義是:支持在回送應(yīng)答報(bào)文時(shí)使用該交易請(qǐng)求報(bào)文上送時(shí)的線路進(jìn)行回送,

機(jī)構(gòu)可以選擇是否要求CUPS對(duì)應(yīng)答報(bào)文原路返回。

如果入網(wǎng)機(jī)構(gòu)沒有選擇開啟此功能,則入網(wǎng)機(jī)構(gòu)作為受理方上送的交易經(jīng)過CUPS處理后,將應(yīng)答

報(bào)文發(fā)送給入網(wǎng)機(jī)構(gòu)時(shí),將在入網(wǎng)機(jī)構(gòu)與CUPS已經(jīng)建立的通信線路中任意選擇一條線路作為報(bào)文返回

線路。

如果入網(wǎng)機(jī)構(gòu)選擇開啟此功能,則入網(wǎng)機(jī)構(gòu)作為受理方上送的交易經(jīng)過CUPS處理后,將應(yīng)答報(bào)文

發(fā)送給入網(wǎng)機(jī)構(gòu)時(shí),將選擇入網(wǎng)機(jī)構(gòu)上送報(bào)文時(shí)的使用的線路作為報(bào)文返回線路。

若在返回應(yīng)答時(shí),發(fā)送請(qǐng)求時(shí)的線路與CUPS斷開,機(jī)構(gòu)可以選擇由CUPS將應(yīng)答報(bào)文通過其他工作

正常的線路返回,機(jī)構(gòu)也可以選擇由CUPS丟棄此應(yīng)答報(bào)文。

雖然真正含義上的原路返回為上文定義的內(nèi)容,但銀聯(lián)處理中心還支持更廣義的概念,能夠提供

如下兩個(gè)粒度的原路返回功能:

1、對(duì)機(jī)構(gòu)的通訊主機(jī),銀聯(lián)可提供通訊主機(jī)組管理,原路返回粒度可控制到該組。即,只通過該

組內(nèi)的連接返回,但并不是發(fā)起請(qǐng)求的連接。這樣可以控制是返回到同一個(gè)處理中心,還是返回到同

一臺(tái)通訊主機(jī);

2、對(duì)機(jī)構(gòu)的通訊主機(jī),銀聯(lián)還可提供單個(gè)IP管理,原路返回粒度可控制到該IP。即,只通過該IP

中的連接返回,但并不是發(fā)起請(qǐng)求的連接。

因此,銀聯(lián)處理中心是提供了更為廣義的“線路組原路返回”概念。即,交易應(yīng)答可以通過與交

易請(qǐng)求上送線路在同一組的任一線路返回。線路分組的方法可以應(yīng)入網(wǎng)機(jī)構(gòu)的要求采取不同的策略(比

如:入網(wǎng)機(jī)構(gòu)側(cè)屬于同一個(gè)中心/同一臺(tái)服務(wù)器/同一個(gè)IP的線路分在同一組)。

4.2.2.2文件傳輸?shù)倪B接數(shù)目和方式

入網(wǎng)機(jī)構(gòu)和銀聯(lián)處理中心之間的文件傳輸不是實(shí)時(shí)性的聯(lián)機(jī)業(yè)務(wù),因此規(guī)定使用短連接的方式。

雙方建立一條全雙工的連接,連接建立后,雙方在同一條連接上收發(fā)請(qǐng)求和應(yīng)答。當(dāng)文件傳送完成后,

雙方關(guān)閉連接。

10

Q/CUP006.5—2012

CUPS入網(wǎng)機(jī)構(gòu)

圖12文件傳輸?shù)倪B接示意圖

4.2.3通信負(fù)載均衡

銀聯(lián)處理中心和每個(gè)入網(wǎng)機(jī)構(gòu)建立多條連接不僅為了防止單點(diǎn)故障,還應(yīng)在多條通信連接上實(shí)現(xiàn)

通信負(fù)載均衡。

例如,銀聯(lián)處理中心通過兩條或四條發(fā)送連接向入網(wǎng)機(jī)構(gòu)發(fā)送報(bào)文時(shí),可以采用簡(jiǎn)單輪詢的方式,

即從第一條發(fā)送連接開始路由,第一個(gè)報(bào)文從第一條發(fā)送連接發(fā)送,第二個(gè)報(bào)文從第二條發(fā)送連接發(fā)

送,依次類推,到最后一個(gè)連接時(shí)再路由到第一條可用的發(fā)送連接。

CUPS入網(wǎng)機(jī)構(gòu)

圖13簡(jiǎn)單輪詢方式

除了簡(jiǎn)單輪詢的方法,還可以通過監(jiān)測(cè)各通信服務(wù)器和各條連接的負(fù)載情況動(dòng)態(tài)調(diào)整各條連接的

路由選擇。

通過將銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)之間的通信負(fù)載合理的分配到各條連接和各臺(tái)通信服務(wù)器上,可

以防止出現(xiàn)某臺(tái)通信服務(wù)器上處理壓力過大的問題。

4.2.4Socket選項(xiàng)設(shè)置

在利用socket技術(shù)編寫通信程序時(shí),為了保證通信雙方可以正常通信,需要設(shè)置相關(guān)的選項(xiàng),其中

有的選項(xiàng)是協(xié)議相關(guān)的。在不同的系統(tǒng)中,socket選項(xiàng)有不同的默認(rèn)值。這里只規(guī)定幾個(gè)主要的socket

選項(xiàng)設(shè)置,其他選項(xiàng)均使用系統(tǒng)默認(rèn)值。

a)保持socket的“UNGER”選項(xiàng)為缺省狀態(tài),即“關(guān)閉”狀態(tài)。這個(gè)選項(xiàng)影響到使用TCP協(xié)議

的socket關(guān)閉操作的行為。設(shè)置該選項(xiàng)為“關(guān)閉”狀態(tài),使socket關(guān)閉操作保持默認(rèn)行為,

即close。函數(shù)調(diào)用立即返回,如果socket發(fā)送緩沖區(qū)中還有數(shù)據(jù),則系統(tǒng)會(huì)發(fā)送這些數(shù)據(jù)。

b)設(shè)置socket的“REUSEADDR”為“打開”狀態(tài)。設(shè)置這個(gè)選項(xiàng)可以保證socket監(jiān)聽進(jìn)程在異

常退出并重新啟動(dòng)后,仍可以成功綁定到原監(jiān)聽端口。該選項(xiàng)主要用在監(jiān)聽socket連接請(qǐng)求

的服務(wù)器端。

c)設(shè)置socket的“KeepAlive”為“打開”狀態(tài),設(shè)置這個(gè)選項(xiàng)可以保證在socket連接沒有流

量時(shí),自動(dòng)開始發(fā)送KeepAlive偵測(cè)包,偵測(cè)socket是否已經(jīng)斷開。

II

Q/CUP006.5—2012

4.3協(xié)議定義

4.3.1參考資料

有關(guān)TCP/IP協(xié)議的背景信息和協(xié)議定義可以參考以下文檔:

a)RFC791InternetProtocolfortheIPprotocol;

b)RFC792InternetControlMessageProtocolfortheICMPprotocol;

c)RFC793TransmissionControlProtocolfortheTCPprotocol;

d)RFC1122RequirementsforInternetHosts-CommunicationLayers;

e)RFC1123RequirementsforInternetHosts—ApplicationandSupport;

g)RFC959FileTransferProtocol0

4.3.2協(xié)議定義范圍

本節(jié)論述的通信控制協(xié)議以TCP/IP協(xié)議為基礎(chǔ),規(guī)定了銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)之間建立多條

socket連接的方式,雙方在多條連接上傳輸報(bào)文的方法以及通信異常的檢測(cè)和處理方法。

4.3.3基本規(guī)定

4.3.3.1數(shù)據(jù)編碼格式

銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)之間傳送的所有數(shù)據(jù)均是八位的二進(jìn)制數(shù)據(jù),沒有特殊含義字符和控制

字符。

4.3.3.2通信接口和業(yè)務(wù)流程的無關(guān)性

通信接口程序不對(duì)交易報(bào)文的類型作識(shí)別,不對(duì)報(bào)文內(nèi)容作處理。因此,業(yè)務(wù)流程上的任何變動(dòng)

對(duì)通信接口程序無影響,反之亦然。

4.3.4聯(lián)機(jī)交易控制協(xié)議

4.3.4.1建立連接

4.3.4.1.1連接建立過程

銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)在建立連接時(shí),采用的是client-server方式。服務(wù)方監(jiān)聽客戶的連接

請(qǐng)求,客戶方調(diào)用connect。發(fā)送連接請(qǐng)求,開始TCP的三步握手過程。雙方連接建立的過程如下:

b)客戶方調(diào)用connect。發(fā)起連接請(qǐng)求,使客戶方的TCP發(fā)送同步數(shù)據(jù)段(SYN段)。服務(wù)方TCP

收到后返回應(yīng)答(ACK段),同時(shí)發(fā)送自己的同步數(shù)據(jù)段??蛻舴絚onnect。調(diào)用返回;

12

Q/CUP006.5—2012

c)客戶方TCP對(duì)服務(wù)方的同步數(shù)據(jù)段返回應(yīng)答,連接建立,服務(wù)方accept。調(diào)用返回。

當(dāng)連接成功建立或發(fā)生錯(cuò)誤時(shí),客戶方的connect。調(diào)用返回?可能發(fā)生的錯(cuò)誤有以下幾種情況:

a)客戶方TCP在一定時(shí)間內(nèi)沒有收到SYN段的應(yīng)答,調(diào)用返回超時(shí)錯(cuò)誤ETIMEDOUT。不同系統(tǒng)

規(guī)定的超時(shí)時(shí)間從75秒到幾分鐘不等。

b)如果服務(wù)方TCP給客戶方TCP重置應(yīng)答RST,調(diào)用返回連接拒絕錯(cuò)誤,說明在服務(wù)方?jīng)]有監(jiān)

聽進(jìn)程運(yùn)行,或監(jiān)聽進(jìn)程已退出。

c)如果網(wǎng)絡(luò)中某路由器返回目的不可達(dá)的ICMP應(yīng)答,則客戶機(jī)系統(tǒng)會(huì)重發(fā)連接請(qǐng)求直到超時(shí),

此時(shí)調(diào)用返回主機(jī)不可達(dá)錯(cuò)誤EHOSTUNREAQL

Connect調(diào)用使客戶端TCP從CLOSED狀態(tài)轉(zhuǎn)變到SYN_SENT狀態(tài)。如果連接成功建立,則轉(zhuǎn)變到

ESTABLISHED狀態(tài)。如果出錯(cuò),則socket不再可用,必須被關(guān)閉。

起始點(diǎn)

圖15socket連接建立狀態(tài)轉(zhuǎn)換圖

4.3.4.1.2連接建立時(shí)序

對(duì)于單工方式而言,在銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)初始建立連接時(shí),要求先由入網(wǎng)機(jī)構(gòu)發(fā)起連接請(qǐng)

求。銀聯(lián)處理中心在監(jiān)聽端口監(jiān)聽入網(wǎng)機(jī)構(gòu)的連接請(qǐng)求,在接收到入網(wǎng)機(jī)構(gòu)的連接請(qǐng)求并通過合法性

檢查后,根據(jù)入網(wǎng)機(jī)構(gòu)的IP地址和監(jiān)聽端口號(hào)向入網(wǎng)機(jī)構(gòu)發(fā)起連接請(qǐng)求,完成一進(jìn)一出兩條單工長(zhǎng)連

接的建立。在該連接對(duì)的建立過程中,銀聯(lián)處理中心將設(shè)置一進(jìn)一出兩條單工長(zhǎng)連接建立的最長(zhǎng)時(shí)間

間隔參數(shù)值。如果中心建立好接收連接后,在最長(zhǎng)1分鐘內(nèi)仍無法建立與機(jī)構(gòu)的發(fā)送連接,則中心主動(dòng)

斷開與該發(fā)送連接相對(duì)應(yīng)的接收連接,回復(fù)到偵聽狀態(tài),等待接收入網(wǎng)機(jī)構(gòu)重新建立連接的請(qǐng)求。建

立其他連接的過程與此相同。如果建立連接的過程超時(shí)或發(fā)生錯(cuò)誤,則關(guān)閉本地socket后,重新建立

連接。如果一條連接中斷需要重新建立,則應(yīng)按照4.2.2.1.1節(jié)描述分情況處理。

下圖說明連接建立的時(shí)序:

13

Q/CUP006.5—2012

入網(wǎng)機(jī)構(gòu)

CUPS

圖16銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)單工連接時(shí)序圖

對(duì)于雙工方式而言,在銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)初始建立連接時(shí),要求先由入網(wǎng)機(jī)構(gòu)發(fā)起連接請(qǐng)

求。銀聯(lián)處理中心在監(jiān)聽端口監(jiān)聽入網(wǎng)機(jī)構(gòu)的連接請(qǐng)求,在接收到入網(wǎng)機(jī)構(gòu)的連接請(qǐng)求并通過合法性

檢查后,連接即告成功,完成了一條雙工長(zhǎng)連接的建立。

下圖說明連接建立的時(shí)序:

14

Q/CUP006.5—2012

AMSIK

avs

圖17銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)雙工連接時(shí)序圖

4.3.4.2報(bào)文格式

銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)之間的交易報(bào)文封裝在IP數(shù)據(jù)包內(nèi),通過TCP/IP協(xié)議傳送。每一個(gè)報(bào)文

由四字節(jié)報(bào)文長(zhǎng)度和報(bào)文數(shù)據(jù)構(gòu)成,如圖18所示。由于TCP數(shù)據(jù)是一個(gè)“流”的概念,報(bào)文邊界不易

確定,因此在每個(gè)報(bào)文前提供四個(gè)字節(jié)的報(bào)文長(zhǎng)度值,用來確定每個(gè)報(bào)文的長(zhǎng)度。本規(guī)范規(guī)定報(bào)文最

大長(zhǎng)度不超過2048字節(jié)。

報(bào)文數(shù)據(jù)格式可參見報(bào)文接口規(guī)范的說明。報(bào)文長(zhǎng)度是四個(gè)字節(jié)的ASCH碼串,指明后面的報(bào)文數(shù)

據(jù)的長(zhǎng)度,但該長(zhǎng)度不包括報(bào)文長(zhǎng)度域本身的四個(gè)字節(jié)值。通過報(bào)文長(zhǎng)度域,報(bào)文的接收方可以很容

易確定每個(gè)交易報(bào)文的長(zhǎng)度。

報(bào)文長(zhǎng)度報(bào)文數(shù)據(jù)

描述長(zhǎng)度(字節(jié))

報(bào)文長(zhǎng)度4

報(bào)文數(shù)據(jù)不定長(zhǎng)

圖18數(shù)據(jù)報(bào)文格式說明

4.3.4.3數(shù)據(jù)傳輸控制

4.3.4.3.1傳輸方式

15

Q/CUP006.5—2012

銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)之間的socket連接初始化過程完成后,雙方可開始報(bào)文交換。雙方采用

異步傳輸方式傳輸交易報(bào)文,即一方發(fā)送一筆交易請(qǐng)求后,不必等待對(duì)方的應(yīng)答,可以接著發(fā)送下一

筆交易請(qǐng)求。

因?yàn)殂y聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)存在多條socket連接,應(yīng)答報(bào)文從哪條連接返回不確定。對(duì)此,應(yīng)

用層上的業(yè)務(wù)處理流程必須加以判斷處理。

發(fā)送方發(fā)送一個(gè)交易請(qǐng)求后,由于通信鏈路中斷或其他通信異常情況的發(fā)生,發(fā)送方將不能確保

接收方一定能夠收到報(bào)文數(shù)據(jù)。在通信異常情況下,發(fā)送方多表現(xiàn)為發(fā)送數(shù)據(jù)超時(shí),因此在應(yīng)用層的

業(yè)務(wù)流程上要有相應(yīng)的超時(shí)控制。

4.3.4.3.2報(bào)文發(fā)送和接收

報(bào)文發(fā)送一方發(fā)送報(bào)文數(shù)據(jù),調(diào)用write。返回后,準(zhǔn)備下一筆報(bào)文數(shù)據(jù)的發(fā)送。報(bào)文接收一方調(diào)

用read。接收?qǐng)?bào)文,當(dāng)有報(bào)文數(shù)據(jù)到達(dá)后讀調(diào)用返回。

圖19報(bào)文發(fā)送和接收示意圖

接收方在讀取數(shù)據(jù)時(shí),應(yīng)按照長(zhǎng)度加報(bào)文再長(zhǎng)度加報(bào)文的方式,先讀取四個(gè)字節(jié)的長(zhǎng)度,用于確

定報(bào)文的實(shí)際長(zhǎng)度,再按實(shí)際報(bào)文長(zhǎng)度值讀取其后的報(bào)文數(shù)據(jù)。如果接收方一次讀取沒有接收到完整

的報(bào)文,必須再次讀取直到接收到規(guī)定長(zhǎng)度的報(bào)文數(shù)據(jù)。發(fā)送方發(fā)送報(bào)文時(shí),先在報(bào)文前加上四個(gè)字

節(jié)的報(bào)文長(zhǎng)度值再與報(bào)文一起發(fā)送。

報(bào)文報(bào)文報(bào)文報(bào)文

長(zhǎng)度數(shù)據(jù)長(zhǎng)度數(shù)據(jù)

圖20報(bào)文流小意圖

接收方在讀取數(shù)據(jù)的過程中,網(wǎng)絡(luò)有可能發(fā)生中斷或發(fā)送方寫數(shù)據(jù)進(jìn)程意外退出甚至宕機(jī),此時(shí)

接收方要根據(jù)異常情況做相應(yīng)處理。通信異常處理參見4.3.4.7節(jié)。

16

Q/CUP006.5—2012

4.3.4.4關(guān)閉連接的處理

這里規(guī)定的是銀聯(lián)處理中心或入網(wǎng)機(jī)構(gòu)需要正常關(guān)閉一個(gè)連接時(shí)要做的處理。正常關(guān)閉一個(gè)

socket連接需要經(jīng)過四個(gè)步驟:

圖21關(guān)閉socket連接過程

a)當(dāng)客戶方調(diào)用close()主動(dòng)關(guān)閉socket,該方TCP發(fā)送FIN段給服務(wù)方,表示結(jié)束發(fā)送數(shù)據(jù);

b)服務(wù)方TCP接收到FIN段后,進(jìn)入被動(dòng)關(guān)閉socket過程。服務(wù)方TCP收到FIN段后,會(huì)通知

服務(wù)方的應(yīng)用進(jìn)程,read。調(diào)用會(huì)返回0;

c)服務(wù)方讀調(diào)用返回0后,調(diào)用close()關(guān)閉socket,服務(wù)方TCP會(huì)向客戶方TCP發(fā)送FIN段;

d)客戶方TCP收到FIN段后,返回應(yīng)答。

從以上過程可以知道,當(dāng)連接的一方關(guān)閉socket后,另一方的socket會(huì)得到通知。對(duì)于銀聯(lián)處理

中心和入網(wǎng)機(jī)構(gòu)的接收連接,通過read。調(diào)用返回值可以獲得該通知。對(duì)于發(fā)送連接,通過select。

調(diào)用查詢本地socket是否接收到通知數(shù)據(jù)。若有通知數(shù)據(jù)到達(dá),調(diào)用read。,若返回。表示對(duì)方socket

已關(guān)閉。

當(dāng)銀聯(lián)處理中心或入網(wǎng)機(jī)構(gòu)需要關(guān)閉一條發(fā)送連接時(shí),先停止在該條連接上發(fā)送數(shù)據(jù),然后調(diào)用

close。關(guān)閉本地socket.接收方調(diào)用read。讀取數(shù)據(jù),當(dāng)調(diào)用返回0時(shí),表明發(fā)送方socket已關(guān)閉,

并調(diào)用close。關(guān)閉本地socket。此時(shí),雙方完成連接的關(guān)閉。

4.3.4.5空閑連接處理

對(duì)于單工通信方式,如果銀聯(lián)處理中心或入網(wǎng)機(jī)構(gòu)一條發(fā)送連接上超過2分鐘沒有發(fā)送報(bào)文數(shù)據(jù),

則向接收方發(fā)送“空閑連接查詢”控制報(bào)文。該報(bào)文不帶任何附加數(shù)據(jù),并置報(bào)文長(zhǎng)度域的值為零。

銀聯(lián)處理中心或入網(wǎng)機(jī)構(gòu)通信層收到這樣的報(bào)文后,直接丟棄該報(bào)文。

17

Q/CUP006.5—2012

報(bào)文長(zhǎng)度(4字節(jié)):

“0000”

圖22空閑連接查詢報(bào)文格式

如果接收方socket收到該控制報(bào)文,說明雙方連接正常,如果在3分鐘之內(nèi)沒有收到對(duì)方的“空閑

連接查詢”控制報(bào)文,則說明接收長(zhǎng)連接已經(jīng)中斷,需要關(guān)閉該連接socket,并且斷開發(fā)送長(zhǎng)連接。

如果連接中斷或接收方宕機(jī)、通信進(jìn)程異外退出,發(fā)送方TCP會(huì)向本地socket返回相應(yīng)的錯(cuò)誤通知,發(fā)

送方根據(jù)read。調(diào)用返回的錯(cuò)誤信息做相應(yīng)的異常處理,參見4.3.4.7節(jié)。如果接收方在接收連接上

有3分鐘未收到任何數(shù)據(jù),此時(shí),若入網(wǎng)機(jī)構(gòu)作為接收方,則關(guān)閉該連接對(duì),并重新向銀聯(lián)處理中心發(fā)

起建立連接的請(qǐng)求;若銀聯(lián)處理中心作為接收方,則關(guān)閉該連接對(duì),并恢復(fù)到偵聽狀態(tài),等待入網(wǎng)機(jī)

構(gòu)重新發(fā)起建立連接的請(qǐng)求。

發(fā)送方接收方

圖23空閑連接處理示意圖

對(duì)于雙工的通信方式,如果發(fā)送方或者接收方中有一方檢測(cè)到一條連接空閑超過2分鐘,則通過該

連接向?qū)Χ税l(fā)送一次空閑測(cè)試報(bào)文;對(duì)端收到該報(bào)文后直接丟棄。如果在3分鐘之內(nèi)沒收到對(duì)端的空閑

連接測(cè)試報(bào)文或者交易報(bào)文,此時(shí),若入網(wǎng)機(jī)構(gòu)作為接收方,則關(guān)閉該條連接,并重新向銀聯(lián)處理中

心發(fā)起建立連接的請(qǐng)求;若銀聯(lián)處理中心作為接收方,則關(guān)閉該連接,并恢復(fù)到偵聽狀態(tài),等待入網(wǎng)

機(jī)構(gòu)重新發(fā)起建立連接的請(qǐng)求。

4.3.4.6流量控制

銀聯(lián)處理中心連接各入網(wǎng)機(jī)構(gòu),各入網(wǎng)機(jī)構(gòu)的報(bào)文都要經(jīng)銀聯(lián)處理中心轉(zhuǎn)接。為了防止銀聯(lián)處理

中心在交易高峰時(shí)段,因處理數(shù)據(jù)量過大導(dǎo)致系統(tǒng)性能下降甚至崩潰,需要在銀聯(lián)處理中心和入網(wǎng)機(jī)

構(gòu)之間做通信流量控制。

TCP協(xié)議的窗口機(jī)制能夠協(xié)調(diào)通信雙方的數(shù)據(jù)收發(fā)速度,具有一定的流量控制作用。當(dāng)接收方監(jiān)測(cè)

到應(yīng)用層消息隊(duì)列已滿或?qū)M時(shí),通過“緩讀”的方法適當(dāng)延長(zhǎng)從接收連接上讀取數(shù)據(jù)的間隔,沒有

被讀取的數(shù)據(jù)緩存在socket連接的緩沖區(qū)內(nèi)。隨著緩沖區(qū)的數(shù)據(jù)增加,TCP協(xié)議的窗口機(jī)制會(huì)使發(fā)送方

TCP減小數(shù)據(jù)發(fā)送量,未發(fā)送的數(shù)據(jù)緩存在發(fā)送方緩沖區(qū)內(nèi)。當(dāng)發(fā)送緩沖區(qū)滿時(shí),發(fā)送方的發(fā)送進(jìn)程會(huì)

被系統(tǒng)核心阻塞。接收方的系統(tǒng)處理能力恢復(fù)正常后,恢復(fù)從接收連接上讀取數(shù)據(jù)的間隔,接收緩沖

區(qū)數(shù)據(jù)的減少通過TCP窗口機(jī)制使發(fā)送方TCP增大數(shù)據(jù)發(fā)送量,從而使發(fā)送緩沖區(qū)數(shù)據(jù)減少,被阻塞的

發(fā)送進(jìn)程恢復(fù)運(yùn)行。

銀聯(lián)處理中心除了通信層的流量控制機(jī)制外,在應(yīng)用層上也做了流量的控制。當(dāng)銀聯(lián)處理中心應(yīng)

用系統(tǒng)過忙時(shí),銀聯(lián)處理中心通信網(wǎng)關(guān)在原始報(bào)文前加上新增報(bào)文頭后返回給入網(wǎng)機(jī)構(gòu),新增報(bào)文頭

中的拒絕原因碼為系統(tǒng)忙。

除銀聯(lián)處理中心進(jìn)行流量控制以外,建議入網(wǎng)機(jī)構(gòu)也需要有與之對(duì)應(yīng)的流量控制策略。這樣在銀

聯(lián)系統(tǒng)異?;謴?fù)以后,對(duì)于積壓的大量請(qǐng)求、應(yīng)答或沖正交易應(yīng)能夠及時(shí)處理。基于此,建議入網(wǎng)機(jī)

構(gòu)在自身系統(tǒng)設(shè)計(jì)的TPS(每秒交易量)峰值情況下,能夠處理的交易持續(xù)時(shí)間不低于30分鐘。

18

Q/CUP006.5—2012

4.3.4.7通信異常處理

銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)的通信連接跨越了廣域網(wǎng),廣域網(wǎng)線路距離長(zhǎng)、通信環(huán)境復(fù)雜,會(huì)產(chǎn)生

各種通信異常的情況。為此,通信程序必須能夠及時(shí)檢測(cè)到通信異常的發(fā)生并做相應(yīng)的處理,保證銀

聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)聯(lián)機(jī)交易的正常進(jìn)行。

4.3.4.7.1通信異常分析

a)接收方通信進(jìn)程終止。

發(fā)送方接收方

圖24接收方進(jìn)程退出導(dǎo)致的通信異常

通信進(jìn)程終止的原因包括正常退出、因執(zhí)行出錯(cuò)導(dǎo)致的異常退出、進(jìn)程被系統(tǒng)管理員強(qiáng)行終止等。

此時(shí),接收方的socket可能被通信進(jìn)程正常關(guān)閉,也可能未被正常關(guān)閉。在這種情況下,接收方TCP

會(huì)向發(fā)送方TCP發(fā)送FIN段,發(fā)送方TCP向本地socket發(fā)送通知。在發(fā)送方通過select()調(diào)用可以捕獲該

通知,調(diào)用read。會(huì)返回結(jié)果0。如果發(fā)送方繼續(xù)向接收方發(fā)送數(shù)據(jù),因?yàn)榻邮辗絪ocket已經(jīng)關(guān)閉,接

收方TCP會(huì)向發(fā)送方TCP發(fā)送RST段。

發(fā)送方收到RST段后,若調(diào)用read。,則返回連接重置錯(cuò)誤信息。若調(diào)用write。,則返回寫錯(cuò)誤信

息。需要說明的是,在Unix平臺(tái)上,當(dāng)調(diào)用write。出錯(cuò)后,系統(tǒng)會(huì)向通信進(jìn)程發(fā)送SIGPIPE信號(hào),而

該信號(hào)默認(rèn)行為將終止通信進(jìn)程,故需要設(shè)置忽略該信號(hào)。

b)網(wǎng)絡(luò)中斷或接收方宕機(jī)。

圖25接收方宕機(jī)造成的通信異常

19

Q/CUP006.5—2012

發(fā)送方接收方

圖26網(wǎng)絡(luò)中斷造成的通信異常

如果接收方宕機(jī)或網(wǎng)絡(luò)發(fā)生中斷,發(fā)送方socket不會(huì)收到任何通知報(bào)文。發(fā)送方發(fā)送數(shù)據(jù)后,發(fā)

送方TCP的重傳機(jī)制會(huì)試圖重復(fù)嘗試發(fā)送數(shù)據(jù)。如果約9分鐘后發(fā)送方TCP一直收不到應(yīng)答,則返回錯(cuò)誤

信息,此后的讀寫調(diào)用都會(huì)出錯(cuò)返回。read。調(diào)用會(huì)返回超時(shí)錯(cuò)誤或主機(jī)不可達(dá)錯(cuò)誤。

c)接收方宕機(jī)后重啟。

圖27接收方宕機(jī)重啟導(dǎo)致的通信異常

如果接收方宕機(jī)后重啟,則接收方TCP不保留原來的連接信息。接收方宕機(jī)后,如果發(fā)送方?jīng)]有發(fā)

送數(shù)據(jù),則發(fā)送方不會(huì)知道接收方已宕機(jī)。在接收方重起后,發(fā)送方向接收方發(fā)送數(shù)據(jù),則接收方TCP

會(huì)向發(fā)送方TCP發(fā)送RST段,發(fā)送方隨后的讀寫調(diào)用都會(huì)出錯(cuò),read。調(diào)用會(huì)返回連接重置錯(cuò)誤信息。

d)如果發(fā)送方通信進(jìn)程終止,則接收方read。調(diào)用會(huì)返回0。

e)如果發(fā)送方宕機(jī)或網(wǎng)絡(luò)中斷,接收方收不到任何通知。

4.3.4.7.2通信異常處理

通信異常處理,此處假設(shè)發(fā)送方為入網(wǎng)機(jī)構(gòu),接收方為銀聯(lián)處理中心。

4.3.4.7.2.1連接中斷的處理

發(fā)送方發(fā)送交易報(bào)文或空閑測(cè)試報(bào)文出錯(cuò),說明連接發(fā)生中斷,則關(guān)閉該連接,并主動(dòng)向接收方

重新發(fā)起連接請(qǐng)求。接收方收到對(duì)方的重新連接請(qǐng)求,接收該請(qǐng)求并關(guān)閉原來的連接。

4.3.4.7.2.2接收方接收進(jìn)程異常終止的處理

接收方接收進(jìn)程意外退出會(huì)使發(fā)送方發(fā)送進(jìn)程返回錯(cuò)誤。發(fā)送方應(yīng)關(guān)閉本地socket,重新向接收

方發(fā)起連接請(qǐng)求。

4.3.4.7.2.3發(fā)送方發(fā)送進(jìn)程異常終止的處理

發(fā)送方發(fā)送進(jìn)程異常終止,接收方read。調(diào)用會(huì)返回0。接收方應(yīng)關(guān)閉本地socket,等待接收發(fā)送

方重新建立連接的請(qǐng)求。

4.3.4.7.2.4接收方宕機(jī)的處理

如果接收方宕機(jī)且不能及時(shí)重起時(shí),發(fā)送方在未超時(shí)前不會(huì)獲得任何異常通知,這種情況與連接

中斷情況類似,按連接中斷的異常情況處理。如果接收方通信主機(jī)在發(fā)送方超時(shí)前重起,發(fā)送方TCP

20

Q/CUP006.5—2012

會(huì)收到接收方TCP返回的RST段,發(fā)送方的寫調(diào)用將返回出錯(cuò)信息。此時(shí),發(fā)送方關(guān)閉本地socket,并

向接收方請(qǐng)求重新建立連接。

4.3.4.7.2.5發(fā)送方宕機(jī)的處理

接收方不能獲知發(fā)送方已宕機(jī)。如果發(fā)送方在5分鐘之內(nèi)重新發(fā)起連接請(qǐng)求,接收方收到連接請(qǐng)求

后重新建立連接,在合法性檢查通過之后,關(guān)閉原來的連接并建立新的連接。

4.3.5文件傳輸控制協(xié)議

這里只涉及利用流傳輸文件的控制,F(xiàn)TP建議參考標(biāo)準(zhǔn)FTP協(xié)議。

4.3.5.1報(bào)文格式

利用流傳輸傳送文件的報(bào)文格式與聯(lián)機(jī)交易使用的報(bào)文格式類似,由四字節(jié)報(bào)文長(zhǎng)度和報(bào)文數(shù)據(jù)

構(gòu)成。報(bào)文數(shù)據(jù)格式可參見《文件接口規(guī)范》的說明。

4.3.5.2建立連接

銀聯(lián)處理中心和入網(wǎng)機(jī)構(gòu)之間的文件傳輸采用全雙工的socket連接,可以同時(shí)存在多條連接。文

件收發(fā)雙方應(yīng)支持多條連接并發(fā),具體條數(shù)由收發(fā)雙方根據(jù)實(shí)際需要協(xié)商確定。銀聯(lián)處理中心支持對(duì)

每個(gè)文件接收機(jī)構(gòu)線路數(shù)的參數(shù)化配置,最少2條,最

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論