版權(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- Windows Server網(wǎng)絡(luò)管理項(xiàng)目教程(Windows Server 2022)(微課版)3.7 DHCP 拓展案例(一)DHCP中繼代理的配置
- 高中語(yǔ)文第4課詞語(yǔ)萬花筒第3節(jié)每年一部“新詞典”-新詞語(yǔ)課件新人教版選修語(yǔ)言文字應(yīng)用
- 信息技術(shù)(第2版)(拓展模塊)教案 拓展模塊5 5.3常用核心技術(shù)3
- 2024年江西省中考英語(yǔ)試題含解析
- 校園展美 課件 2024-2025學(xué)年人美版(2024)初中美術(shù)七年級(jí)上冊(cè)
- 高中物理第一章運(yùn)動(dòng)的描述2時(shí)間和位移課件新人教版必修
- 【中考考點(diǎn)基礎(chǔ)練】第10章 溫度與物態(tài)變化 2025年物理中考總復(fù)習(xí)(福建)(含答案)
- 2024至2030年中國(guó)圓柱石英晶體諧振器數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2024至2030年中國(guó)發(fā)音板數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2024至2030年中國(guó)八爪魚數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 高中語(yǔ)文表現(xiàn)手法之烘托、渲染、襯托、對(duì)比的明顯區(qū)別
- 泰達(dá)時(shí)代中心樓頂發(fā)光字施工方案
- LED燈具規(guī)格書中英文
- 固定資產(chǎn)與無形資產(chǎn)管理制度
- 液壓泵站使用說明
- 論我國(guó)農(nóng)村集體土地所有制度的完善-
- SPC八大控制圖自動(dòng)生成表
- 國(guó)家電網(wǎng)公司用電信息采集系統(tǒng)運(yùn)行維護(hù)管理辦法
- 人民大學(xué)大眾汽車案例-4組
- 惠州市金山湖公園修建性詳細(xì)規(guī)劃
- 旅行社行政崗位職責(zé)
評(píng)論
0/150
提交評(píng)論