本發(fā)明涉及智能管理系統(tǒng),具體涉及一種基于智能光網(wǎng)絡(luò)單元的通信管理方法和系統(tǒng)。
背景技術(shù):
隨著社會(huì)信息化進(jìn)程在飛速發(fā)展,各種傳感器,數(shù)字化和智能化設(shè)備出現(xiàn)在我們生活的方方面面。這類(lèi)信息系統(tǒng)所涉及的技術(shù)方法及復(fù)雜程度越來(lái)越高,這就要求管理方法也要與時(shí)俱進(jìn),需要賦予管理“思考”的能力。
模塊化的智能光網(wǎng)絡(luò)單元集光網(wǎng)絡(luò)技術(shù),物聯(lián)網(wǎng)技術(shù)和嵌入式技術(shù)等信息化技術(shù)于一身,系統(tǒng)模塊多,為了保證系統(tǒng)性能在局域網(wǎng)和廣域網(wǎng)環(huán)境下都能高效和穩(wěn)定的運(yùn)行,需要一套特殊的管理方法和系統(tǒng)。
傳統(tǒng)的方式被管理設(shè)備的各個(gè)模塊都作為T(mén)CP的服務(wù)器端,管理服務(wù)器作為T(mén)CP連接的客戶(hù)端,管理設(shè)備與被管理設(shè)備的每個(gè)模塊都建立TCP連接,由于管理服務(wù)器的端口號(hào)有限,這種方式浪費(fèi)了TCP連接的端口號(hào),增加了系統(tǒng)的開(kāi)銷(xiāo)。
傳統(tǒng)的方式是通過(guò)IP地址尋址,這種方式在局域網(wǎng)上使用沒(méi)有問(wèn)題,但是在廣域網(wǎng)中可能因?yàn)榉?wù)器分配的IP地址被更改而引起錯(cuò)誤。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提出的一種基于智能光網(wǎng)絡(luò)單元的通信管理方法和系統(tǒng),能有效減少TCP連接對(duì)TCP端口號(hào)數(shù)量的要求,減少服務(wù)器數(shù)量和服務(wù)器開(kāi)銷(xiāo),實(shí)現(xiàn)主備服務(wù)器切換,IP和域名切換的目的,同時(shí)增加容錯(cuò)處理,在智能設(shè)備發(fā)生錯(cuò)誤時(shí)主動(dòng)恢復(fù)連接。
為實(shí)現(xiàn)上述目的,本發(fā)明采用了以下技術(shù)方案:
一種基于智能光網(wǎng)絡(luò)單元的通信管理方法,包括如下步驟:
(1)系統(tǒng)初始化和客戶(hù)端初始化:
系統(tǒng)通電后,主服務(wù)器或備服務(wù)器的管理功能模塊進(jìn)行初始化;主服務(wù)器或備服務(wù)器內(nèi)置的通信配置模塊初始化,自動(dòng)更新與智能光網(wǎng)絡(luò)客戶(hù)端對(duì)應(yīng)連接的初始化配置數(shù)據(jù);智能光網(wǎng)絡(luò)客戶(hù)端自動(dòng)進(jìn)行CPU控制模塊與物聯(lián)網(wǎng)接口模塊的功能識(shí)別初始化;
(2)智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器進(jìn)行TCP連接:
智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器,基于多線(xiàn)程socket和Select I/O復(fù)用機(jī)制進(jìn)行TCP連接;
(3)主服務(wù)器與備服務(wù)器切換:
(31)智能光網(wǎng)絡(luò)客戶(hù)端內(nèi)置兩個(gè)socket連接線(xiàn)程,與服務(wù)器建立socket連接;
(32)初始化默認(rèn)智能光網(wǎng)絡(luò)客戶(hù)端主動(dòng)與主服務(wù)器建立連接,備服務(wù)器的連接開(kāi)關(guān)是關(guān)閉的;
(33)當(dāng)主服務(wù)器的socket連接斷開(kāi),且計(jì)時(shí)器超時(shí)后,備服務(wù)器的socket連接啟動(dòng),智能光網(wǎng)絡(luò)客戶(hù)端開(kāi)始與備服務(wù)器建立socket連接,并一直嘗試與主服務(wù)器連接;
(34)如果主服務(wù)器連接重新建立,再關(guān)閉客戶(hù)端與備用服務(wù)器的socket連接,同時(shí)關(guān)閉備用服務(wù)器的socket連接;
(4)主服務(wù)器或備服務(wù)器尋址:
主服務(wù)器與備服務(wù)器包括兩種尋址方式:通過(guò)IP地址尋找服務(wù)器和通過(guò)域名尋找服務(wù)器;
可手動(dòng)配置尋址方式,也可啟動(dòng)自動(dòng)識(shí)別尋址方式;
(5)連接異常處理:
智能光網(wǎng)絡(luò)客戶(hù)端輪詢(xún)物聯(lián)網(wǎng)接口的物理狀態(tài)變化,當(dāng)網(wǎng)絡(luò)端口的狀態(tài)由Link Down轉(zhuǎn)變成Link Up時(shí),CPU控制模塊重新建立socket連接;同時(shí);直查看CPU的占用率,當(dāng)檢測(cè)到CPU占用率較高后,智能光網(wǎng)絡(luò)客戶(hù)端向服務(wù)器端發(fā)送告警信息。
作為上述方案的進(jìn)一步優(yōu)化,步驟(2)智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器進(jìn)行TCP連接,
服務(wù)器端具體步驟為:
(21)主服務(wù)器或備服務(wù)器端創(chuàng)建socket套接字;
(22)socket套接字與主服務(wù)器或備服務(wù)器的IP、端口號(hào)綁定連接;
(23)socket設(shè)置成監(jiān)聽(tīng)模式,等待主服務(wù)器或備服務(wù)器已綁定端口的連接請(qǐng)求;
(24)selete函數(shù)檢測(cè)到智能光網(wǎng)絡(luò)客戶(hù)端向服務(wù)器發(fā)送連接請(qǐng)求;
(25)主服務(wù)器或備服務(wù)器與智能光網(wǎng)絡(luò)客戶(hù)端進(jìn)行連接;
(26)若selete函數(shù)若檢測(cè)到N個(gè)智能光網(wǎng)絡(luò)客戶(hù)端向服務(wù)器發(fā)送連接請(qǐng)求,主進(jìn)程阻塞在連接處等待,創(chuàng)建N-1個(gè)新的進(jìn)程,建立新的連接;
(27)主服務(wù)器或備服務(wù)器接受智能光網(wǎng)絡(luò)客戶(hù)端的數(shù)據(jù);
(28)主服務(wù)器或備服務(wù)器向智能光網(wǎng)絡(luò)客戶(hù)端發(fā)送數(shù)據(jù);
(29)主服務(wù)器或備服務(wù)器端關(guān)閉socket套接字;
智能光網(wǎng)絡(luò)客戶(hù)端具體步驟為:
(201)智能光網(wǎng)絡(luò)客戶(hù)端創(chuàng)建socket套接字;
(202)selete函數(shù)檢測(cè)到服務(wù)器向智能光網(wǎng)絡(luò)客戶(hù)端發(fā)送連接請(qǐng)求;
(203)智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器進(jìn)行連接;
(204)智能光網(wǎng)絡(luò)客戶(hù)端向主服務(wù)器或備服務(wù)器向發(fā)送數(shù)據(jù);
(205)智能光網(wǎng)絡(luò)客戶(hù)端接受主服務(wù)器或備服務(wù)器數(shù)據(jù);
(206)智能光網(wǎng)絡(luò)客戶(hù)端端關(guān)閉socket套接字;
作為上述方案的進(jìn)一步優(yōu)化,步驟(3)主服務(wù)器或備服務(wù)器尋址啟動(dòng)自動(dòng)識(shí)別尋址方式,智能光網(wǎng)絡(luò)客戶(hù)端默認(rèn)先選擇使用IP地址的方式查找服務(wù)器,如果在計(jì)時(shí)器超時(shí)后,仍然沒(méi)有找到服務(wù)器,會(huì)轉(zhuǎn)而使用域名的方式,查找服務(wù)器,如果此時(shí)計(jì)時(shí)器也超時(shí),再使用IP地址的方式,反復(fù)循環(huán)。
作為上述方案的進(jìn)一步優(yōu)化,所述智能光網(wǎng)絡(luò)客戶(hù)端包括PON模塊、PHY模塊、以太網(wǎng)接口電路、交換模塊、CPU控制模塊、至少三路擴(kuò)展接口模塊、物聯(lián)網(wǎng)接口模塊和為上述模塊供電的電源模塊,所述物聯(lián)網(wǎng)接口模塊包括至少三路接口電路,所述接口電路為RS485和DO接口電路、DO接口電路或DI接口電路,所述PHY模塊與交換模塊通過(guò)管理數(shù)據(jù)輸入輸出接口對(duì)應(yīng)配合電性連接,所述以太網(wǎng)接口電路和交換模塊的網(wǎng)口接口對(duì)應(yīng)配合電性連接,所述PON模塊的信號(hào)出端與交換模塊的信號(hào)輸入端點(diǎn)電性連接,所述交換模塊和CPU控制模塊通過(guò)對(duì)應(yīng)配合電性連接,所述CPU控制模塊的擴(kuò)展口與至少三路擴(kuò)展接口模塊的擴(kuò)展口配合電性連接,一所述接口電路與一所述擴(kuò)展接口模塊的擴(kuò)展口電性連接。
作為上述方案的進(jìn)一步優(yōu)化,所述CPU控制模塊包括TIAM3358芯片及其外圍電路,TIAM3358芯片上集成5路數(shù)據(jù)擴(kuò)展接口;所述交換模塊包括Marvell88E6095的交換機(jī)控制芯片及其外圍電路,交換機(jī)控制芯片的媒體獨(dú)立接口MII_ETH與CPU控制模塊的媒體獨(dú)立接口MII_ETH電性連接。
作為上述方案的進(jìn)一步優(yōu)化,所述PHY模塊包括PHY芯片及其外圍電路,所述PHY芯片的MDC_PHY接口,串聯(lián)電阻R1后與交換機(jī)控制芯片的MDC_PHY接口配合電性連接,所述PHY芯片的MDIO_PHY接口,串聯(lián)電阻R2后與交換機(jī)控制芯片的MDIO_PHY接口配合電性連接。
作為上述方案的進(jìn)一步優(yōu)化,所述PON模塊包括BCM6838控制芯片及其外圍電路,所述BCM6838控制芯片的LAN接口與交換模塊的交換機(jī)控制芯片LAN接口通信連接。
本發(fā)明還提供了一種基于智能光網(wǎng)絡(luò)單元的通信管理系統(tǒng),包括主服務(wù)器,備服務(wù)器、管理客戶(hù)端和若干智能光網(wǎng)絡(luò)客戶(hù)端,所述管理客戶(hù)端與主服務(wù)器、備服務(wù)器電性連接,若干智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器、備服務(wù)器電性連接,其特征在于:所述基于智能光網(wǎng)絡(luò)單元的通信管理系統(tǒng)的通信管理方法,包括如下步驟:
(1)系統(tǒng)初始化和客戶(hù)端初始化:
系統(tǒng)通電后,主服務(wù)器或備服務(wù)器的管理功能模塊進(jìn)行初始化;主服務(wù)器或備服務(wù)器內(nèi)置的通信配置模塊初始化,自動(dòng)更新與智能光網(wǎng)絡(luò)客戶(hù)端對(duì)應(yīng)連接的初始化配置數(shù)據(jù);智能光網(wǎng)絡(luò)客戶(hù)端自動(dòng)進(jìn)行CPU控制模塊與物聯(lián)網(wǎng)接口模塊的功能識(shí)別初始化;
(2)智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器進(jìn)行TCP連接:
智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器,基于多線(xiàn)程socket和Select I/O復(fù)用機(jī)制進(jìn)行TCP連接;
(3)主服務(wù)器與備服務(wù)器切換:
(31)智能光網(wǎng)絡(luò)客戶(hù)端內(nèi)置兩個(gè)socket連接線(xiàn)程,與服務(wù)器建立socket連接;
(32)初始化默認(rèn)智能光網(wǎng)絡(luò)客戶(hù)端主動(dòng)與主服務(wù)器建立連接,備服務(wù)器的連接開(kāi)關(guān)是關(guān)閉的;
(33)當(dāng)主服務(wù)器的socket連接斷開(kāi),且計(jì)時(shí)器超時(shí)后,備服務(wù)器的socket連接啟動(dòng),智能光網(wǎng)絡(luò)客戶(hù)端開(kāi)始與備服務(wù)器建立socket連接,并一直嘗試與主服務(wù)器連接;
(34)如果主服務(wù)器連接重新建立,再關(guān)閉客戶(hù)端與備用服務(wù)器的socket連接,同時(shí)關(guān)閉備用服務(wù)器的socket連接;
(4)主服務(wù)器或備服務(wù)器尋址:
主服務(wù)器與備服務(wù)器包括兩種尋址方式:通過(guò)IP地址尋找服務(wù)器和通過(guò)域名尋找服務(wù)器;
可手動(dòng)配置尋址方式,也可啟動(dòng)自動(dòng)識(shí)別尋址方式;
(5)連接異常處理:
智能光網(wǎng)絡(luò)客戶(hù)端輪詢(xún)物聯(lián)網(wǎng)接口的物理狀態(tài)變化,當(dāng)網(wǎng)絡(luò)端口的狀態(tài)由Link Down轉(zhuǎn)變成Link Up時(shí),CPU控制模塊重新建立socket連接;同時(shí);直查看CPU的占用率,當(dāng)檢測(cè)到CPU占用率較高后,智能光網(wǎng)絡(luò)客戶(hù)端向服務(wù)器端發(fā)送告警信息。
作為上述方案的進(jìn)一步優(yōu)化,步驟(2)智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器進(jìn)行TCP連接,
服務(wù)器端具體步驟為:
(21)主服務(wù)器或備服務(wù)器端創(chuàng)建socket套接字;
(22)將socket綁定到主服務(wù)器或備服務(wù)器的IP、端口號(hào)上;
(23)socket設(shè)置成監(jiān)聽(tīng)模式,等待主服務(wù)器或備服務(wù)器已綁定端口的連接請(qǐng)求;
(24)selete函數(shù)檢測(cè)到智能光網(wǎng)絡(luò)客戶(hù)端向服務(wù)器發(fā)送連接請(qǐng)求;
(25)主服務(wù)器或備服務(wù)器與智能光網(wǎng)絡(luò)客戶(hù)端進(jìn)行連接;
(26)若selete函數(shù)檢測(cè)到N個(gè)智能光網(wǎng)絡(luò)客戶(hù)端向服務(wù)器發(fā)送連接請(qǐng)求,主進(jìn)程阻塞在連接處等待,創(chuàng)建N-1個(gè)新的進(jìn)程,建立新的連接;
(27)主服務(wù)器或備服務(wù)器接受智能光網(wǎng)絡(luò)客戶(hù)端的數(shù)據(jù);
(28)主服務(wù)器或備服務(wù)器向智能光網(wǎng)絡(luò)客戶(hù)端發(fā)送數(shù)據(jù);
(29)主服務(wù)器或備服務(wù)器端關(guān)閉socket套接字;
智能光網(wǎng)絡(luò)客戶(hù)端具體步驟為:
(201)智能光網(wǎng)絡(luò)客戶(hù)端創(chuàng)建socket套接字;
(202)selete函數(shù)檢測(cè)到服務(wù)器向智能光網(wǎng)絡(luò)客戶(hù)端發(fā)送連接請(qǐng)求;
(203)智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器進(jìn)行連接;
(204)智能光網(wǎng)絡(luò)客戶(hù)端向主服務(wù)器或備服務(wù)器向發(fā)送數(shù)據(jù);
(205)智能光網(wǎng)絡(luò)客戶(hù)端接受主服務(wù)器或備服務(wù)器數(shù)據(jù);
(206)智能光網(wǎng)絡(luò)客戶(hù)端端關(guān)閉socket套接字;
作為上述方案的進(jìn)一步優(yōu)化,步驟(3)主服務(wù)器或備服務(wù)器尋址啟動(dòng)自動(dòng)識(shí)別尋址方式,智能光網(wǎng)絡(luò)客戶(hù)端默認(rèn)先選擇使用IP地址的方式查找服務(wù)器,如果在計(jì)時(shí)器超時(shí)后,仍然沒(méi)有找到服務(wù)器,會(huì)轉(zhuǎn)而使用域名的方式,查找服務(wù)器,如果此時(shí)計(jì)時(shí)器也超時(shí),再使用IP地址的方式,反復(fù)循環(huán)。
由上述技術(shù)方案可知,本發(fā)明的一種基于智能光網(wǎng)絡(luò)單元的通信管理方法和系統(tǒng)具有以下有益效果:
(1)本發(fā)明的一種基于智能光網(wǎng)絡(luò)單元的通信管理方法,保持模塊化智能光網(wǎng)單元與管理平臺(tái)長(zhǎng)時(shí)間TCP連接和容錯(cuò)糾錯(cuò)的機(jī)制,本發(fā)明的一種基于智能光網(wǎng)絡(luò)單元的通信管理方法,能有效減少TCP連接對(duì)TCP端口號(hào)數(shù)量的要求,減少服務(wù)器數(shù)量和服務(wù)器開(kāi)銷(xiāo),實(shí)現(xiàn)主備服務(wù)器切換,IP和域名切換的目的,同時(shí)增加容錯(cuò)處理,在智能設(shè)備發(fā)生錯(cuò)誤時(shí)主動(dòng)恢復(fù)連接。
(2)本發(fā)明的一種基于智能光網(wǎng)絡(luò)單元的通信管理系統(tǒng),不僅能滿(mǎn)足將服務(wù)器設(shè)置在局域網(wǎng)中管理局域網(wǎng)中模塊化智能光網(wǎng)絡(luò)單元的目的,同時(shí)能滿(mǎn)足將服務(wù)器設(shè)置在廣域網(wǎng)中管理不同局域網(wǎng)中模塊化智能光網(wǎng)絡(luò)單元的能力,降低用戶(hù)使用和運(yùn)營(yíng)服務(wù)器的成本。
附圖說(shuō)明
圖1是本發(fā)明的一種基于智能光網(wǎng)絡(luò)單元的通信管理系統(tǒng)的結(jié)構(gòu)框圖。
圖2是本發(fā)明的智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器進(jìn)行TCP連接的流程圖。
圖3是本發(fā)明的Select處理機(jī)制流程圖。
圖4是本發(fā)明的智能光網(wǎng)絡(luò)單元的電路結(jié)構(gòu)框架圖。
圖5是本發(fā)明的智能光網(wǎng)絡(luò)單元的基于以太網(wǎng)輸入部分的線(xiàn)路連接架構(gòu)圖。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明做進(jìn)一步說(shuō)明:
一種基于智能光網(wǎng)絡(luò)單元的通信管理方法,包括如下步驟:
(1)系統(tǒng)初始化和客戶(hù)端初始化:
系統(tǒng)通電后,主服務(wù)器或備服務(wù)器的管理功能模塊進(jìn)行初始化;主服務(wù)器或備服務(wù)器內(nèi)置的通信配置模塊初始化,自動(dòng)更新與智能光網(wǎng)絡(luò)客戶(hù)端對(duì)應(yīng)連接的初始化配置數(shù)據(jù);智能光網(wǎng)絡(luò)客戶(hù)端自動(dòng)進(jìn)行CPU控制模塊與物聯(lián)網(wǎng)接口模塊的功能識(shí)別初始化;
(2)智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器進(jìn)行TCP連接:
智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器,基于多線(xiàn)程socket和Select I/O復(fù)用機(jī)制進(jìn)行TCP連接;
(3)主服務(wù)器與備服務(wù)器切換:
(31)智能光網(wǎng)絡(luò)客戶(hù)端內(nèi)置兩個(gè)socket連接線(xiàn)程,與服務(wù)器建立socket連接;
(32)初始化默認(rèn)智能光網(wǎng)絡(luò)客戶(hù)端主動(dòng)與主服務(wù)器建立連接,備服務(wù)器的連接開(kāi)關(guān)是關(guān)閉的;
(33)當(dāng)主服務(wù)器的socket連接斷開(kāi),且計(jì)時(shí)器超時(shí)后,備服務(wù)器的socket連接啟動(dòng),智能光網(wǎng)絡(luò)客戶(hù)端開(kāi)始與備服務(wù)器建立socket連接,并一直嘗試與主服務(wù)器連接;
(34)如果主服務(wù)器連接重新建立,再關(guān)閉客戶(hù)端與備用服務(wù)器的socket連接,同時(shí)關(guān)閉備用服務(wù)器的socket連接;
(4)主服務(wù)器或備服務(wù)器尋址:
主服務(wù)器與備服務(wù)器包括兩種尋址方式:通過(guò)IP地址尋找服務(wù)器和通過(guò)域名尋找服務(wù)器;
可手動(dòng)配置尋址方式,也可啟動(dòng)自動(dòng)識(shí)別尋址方式;
(5)連接異常處理:
智能光網(wǎng)絡(luò)客戶(hù)端輪詢(xún)物聯(lián)網(wǎng)接口的物理狀態(tài)變化,當(dāng)網(wǎng)絡(luò)端口的狀態(tài)由Link Down轉(zhuǎn)變成Link Up時(shí),CPU控制模塊重新建立socket連接;同時(shí);直查看CPU的占用率,當(dāng)檢測(cè)到CPU占用率較高后,智能光網(wǎng)絡(luò)客戶(hù)端向服務(wù)器端發(fā)送告警信息。以提示做負(fù)載均衡配置或者其他操作。
智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器,基于多線(xiàn)程socket和Select I/O復(fù)用機(jī)制進(jìn)行TCP連接。
Select I/O復(fù)用的原理是讓?xiě)?yīng)用程序可以同時(shí)對(duì)多個(gè)I/O端口進(jìn)行監(jiān)控以判斷其上的操作是否可以進(jìn)行,使得應(yīng)用程序能夠同時(shí)監(jiān)聽(tīng)多個(gè)文件描述符上面的可讀,可寫(xiě)和異常事件等。由于I/O復(fù)用本身是阻塞的,一般情況下只能按順序處理其中的每個(gè)文件描述符,為了是應(yīng)用程序能夠并行,高效的運(yùn)行,需要引入多線(xiàn)程技術(shù)。
參見(jiàn)圖2,圖2是智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器進(jìn)行TCP連接的流程圖。步驟(2)智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器進(jìn)行TCP連接,
服務(wù)器端具體步驟為:
(21)主服務(wù)器或備服務(wù)器端創(chuàng)建socket套接字;
(22)將socket綁定到主服務(wù)器或備服務(wù)器的IP、端口號(hào)上;
(23)socket設(shè)置成監(jiān)聽(tīng)模式,等待主服務(wù)器或備服務(wù)器已綁定端口的連接請(qǐng)求;
(24)selete函數(shù)檢測(cè)到智能光網(wǎng)絡(luò)客戶(hù)端向服務(wù)器發(fā)送連接請(qǐng)求;
(25)主服務(wù)器或備服務(wù)器與智能光網(wǎng)絡(luò)客戶(hù)端進(jìn)行連接;
(26)若selete函數(shù)檢測(cè)到N智能光網(wǎng)絡(luò)客戶(hù)端向服務(wù)器發(fā)送連接請(qǐng)求,主進(jìn)程阻塞在連接處等待,創(chuàng)建N-1個(gè)新的進(jìn)程,建立新的連接;
(27)主服務(wù)器或備服務(wù)器接受智能光網(wǎng)絡(luò)客戶(hù)端的數(shù)據(jù);
(28)主服務(wù)器或備服務(wù)器向智能光網(wǎng)絡(luò)客戶(hù)端發(fā)送數(shù)據(jù);
(29)主服務(wù)器或備服務(wù)器端關(guān)閉socket套接字;
智能光網(wǎng)絡(luò)客戶(hù)端具體步驟為:
(201)智能光網(wǎng)絡(luò)客戶(hù)端創(chuàng)建socket套接字;
(202)selete函數(shù)檢測(cè)到服務(wù)器向智能光網(wǎng)絡(luò)客戶(hù)端發(fā)送連接請(qǐng)求;
(203)智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器進(jìn)行連接;
(204)智能光網(wǎng)絡(luò)客戶(hù)端向主服務(wù)器或備服務(wù)器向發(fā)送數(shù)據(jù);
(205)智能光網(wǎng)絡(luò)客戶(hù)端接受主服務(wù)器或備服務(wù)器數(shù)據(jù);
(206)智能光網(wǎng)絡(luò)客戶(hù)端端關(guān)閉socket套接字。
如圖3所示,當(dāng)socket的創(chuàng)建,綁定完成后,服務(wù)器端把監(jiān)聽(tīng)到的socket添加到監(jiān)聽(tīng)的文件描述符集合中,一般情況下,一個(gè)進(jìn)程的理論文件描述符的最大值是1024。Select監(jiān)聽(tīng)所有文件描述符,判斷服務(wù)器socket是否可讀,如果可讀接受新的連接,如果不可讀,繼續(xù)判斷客戶(hù)端文件描述符是否可讀,如果可讀,判斷接受返回值,如果返回值大于0,連接建立,如果返回值小于等于0,則重新開(kāi)始連接過(guò)程。
步驟(3)主服務(wù)器或備服務(wù)器尋址啟動(dòng)自動(dòng)識(shí)別尋址方式,智能光網(wǎng)絡(luò)客戶(hù)端默認(rèn)先選擇使用IP地址的方式查找服務(wù)器,如果在計(jì)時(shí)器超時(shí)后,仍然沒(méi)有找到服務(wù)器,會(huì)轉(zhuǎn)而使用域名的方式,查找服務(wù)器,如果此時(shí)計(jì)時(shí)器也超時(shí),再使用IP地址的方式,反復(fù)循環(huán)。
參見(jiàn)圖4,圖4是圖4是本發(fā)明的智能光網(wǎng)絡(luò)單元的電路結(jié)構(gòu)框架圖。智能光網(wǎng)絡(luò)客戶(hù)端包括PON模塊、PHY模塊、以太網(wǎng)接口電路、交換模塊、CPU控制模塊、至少三路擴(kuò)展接口模塊、物聯(lián)網(wǎng)接口模塊和為上述模塊供電的電源模塊,所述物聯(lián)網(wǎng)接口模塊包括至少三路接口電路,所述接口電路為RS485和DO接口電路、DO接口電路或DI接口電路,所述PHY模塊與交換模塊通過(guò)管理數(shù)據(jù)輸入輸出接口對(duì)應(yīng)配合電性連接,所述以太網(wǎng)接口電路和交換模塊的網(wǎng)口接口對(duì)應(yīng)配合電性連接,所述PON模塊的信號(hào)出端與交換模塊的信號(hào)輸入端點(diǎn)電性連接,所述交換模塊和CPU控制模塊通過(guò)對(duì)應(yīng)配合電性連接,所述CPU控制模塊的擴(kuò)展口與至少三路擴(kuò)展接口模塊的擴(kuò)展口配合電性連接,一所述接口電路與一所述擴(kuò)展接口模塊的擴(kuò)展口電性連接。
所述CPU控制模塊包括TI AM3358芯片及其外圍電路,TI AM3358芯片上集成5路數(shù)據(jù)擴(kuò)展接口;所述交換模塊包括Marvell88E6095的交換機(jī)控制芯片及其外圍電路,交換機(jī)控制芯片的媒體獨(dú)立接口MII_ETH與CPU控制模塊的媒體獨(dú)立接口MII_ETH電性連接。所述PHY模塊包括PHY芯片及其外圍電路,所述PHY芯片的MDC_PHY接口,串聯(lián)電阻R1后與交換機(jī)控制芯片的MDC_PHY接口配合電性連接,所述PHY芯片的MDIO_PHY接口,串聯(lián)電阻R2后與交換機(jī)控制芯片的MDIO_PHY接口配合電性連接。所述PON模塊包括BCM6838控制芯片及其外圍電路,所述BCM6838控制芯片的LAN接口與交換模塊的交換機(jī)控制芯片LAN接口通信連接。
參見(jiàn)圖1,圖1是本發(fā)明的一種基于智能光網(wǎng)絡(luò)單元的通信管理系統(tǒng)的結(jié)構(gòu)框圖。本發(fā)明還給出了一種基于智能光網(wǎng)絡(luò)單元的通信管理系統(tǒng),包括主服務(wù)器,備服務(wù)器、管理客戶(hù)端和若干智能光網(wǎng)絡(luò)客戶(hù)端,所述管理客戶(hù)端與主服務(wù)器、備服務(wù)器電性連接,若干智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器、備服務(wù)器電性連接,所述基于智能光網(wǎng)絡(luò)單元的通信管理系統(tǒng)的通信管理方法,包括如下步驟:
(1)系統(tǒng)初始化和客戶(hù)端初始化:
系統(tǒng)通電后,主服務(wù)器或備服務(wù)器的管理功能模塊進(jìn)行初始化;主服務(wù)器或備服務(wù)器內(nèi)置的通信配置模塊初始化,自動(dòng)更新與智能光網(wǎng)絡(luò)客戶(hù)端對(duì)應(yīng)連接的初始化配置數(shù)據(jù);智能光網(wǎng)絡(luò)客戶(hù)端自動(dòng)進(jìn)行CPU控制模塊與物聯(lián)網(wǎng)接口模塊的功能識(shí)別初始化;
(2)智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器進(jìn)行TCP連接:
智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器,基于多線(xiàn)程socket和Select I/O復(fù)用機(jī)制進(jìn)行TCP連接;
(3)主服務(wù)器與備服務(wù)器切換:
(31)智能光網(wǎng)絡(luò)客戶(hù)端內(nèi)置兩個(gè)socket連接線(xiàn)程,與服務(wù)器建立socket連接;
(32)初始化默認(rèn)智能光網(wǎng)絡(luò)客戶(hù)端主動(dòng)與主服務(wù)器建立連接,備服務(wù)器的連接開(kāi)關(guān)是關(guān)閉的;
(33)當(dāng)主服務(wù)器的socket連接斷開(kāi),且計(jì)時(shí)器超時(shí)后,備服務(wù)器的socket連接啟動(dòng),智能光網(wǎng)絡(luò)客戶(hù)端開(kāi)始與備服務(wù)器建立socket連接,并一直嘗試與主服務(wù)器連接;
(34)如果主服務(wù)器連接重新建立,再關(guān)閉客戶(hù)端與備用服務(wù)器的socket連接,同時(shí)關(guān)閉備用服務(wù)器的socket連接;
(4)主服務(wù)器或備服務(wù)器尋址:
主服務(wù)器與備服務(wù)器包括兩種尋址方式:通過(guò)IP地址尋找服務(wù)器和通過(guò)域名尋找服務(wù)器;
可手動(dòng)配置尋址方式,也可啟動(dòng)自動(dòng)識(shí)別尋址方式;
(5)連接異常處理:
智能光網(wǎng)絡(luò)客戶(hù)端輪詢(xún)物聯(lián)網(wǎng)接口的物理狀態(tài)變化,當(dāng)網(wǎng)絡(luò)端口的狀態(tài)由Link Down轉(zhuǎn)變成Link Up時(shí),CPU控制模塊重新建立socket連接;同時(shí);直查看CPU的占用率,當(dāng)檢測(cè)到CPU占用率較高后,智能光網(wǎng)絡(luò)客戶(hù)端向服務(wù)器端發(fā)送告警信息。
步驟(2)智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器進(jìn)行TCP連接,
服務(wù)器端具體步驟為:
(21)主服務(wù)器或備服務(wù)器端創(chuàng)建socket套接字;
(22)將主服務(wù)器或備服務(wù)器的IP、端口號(hào)與socket進(jìn)程綁定連接;
(23)socket設(shè)置成監(jiān)聽(tīng)模式,等待主服務(wù)器或備服務(wù)器已綁定端口的連接請(qǐng)求;
(24)selete函數(shù)檢測(cè)到智能光網(wǎng)絡(luò)客戶(hù)端向服務(wù)器發(fā)送連接請(qǐng)求;
(25)主服務(wù)器或備服務(wù)器與智能光網(wǎng)絡(luò)客戶(hù)端進(jìn)行連接;
(26)若selete函數(shù)若檢測(cè)到N個(gè)智能光網(wǎng)絡(luò)客戶(hù)端向服務(wù)器發(fā)送連接請(qǐng)求,主進(jìn)程阻塞在連接處等待,創(chuàng)建N-1個(gè)新的進(jìn)程,建立新的連接;
(27)主服務(wù)器或備服務(wù)器接受智能光網(wǎng)絡(luò)客戶(hù)端的數(shù)據(jù);
(28)主服務(wù)器或備服務(wù)器向智能光網(wǎng)絡(luò)客戶(hù)端發(fā)送數(shù)據(jù);
(29)主服務(wù)器或備服務(wù)器端關(guān)閉socket套接字;
智能光網(wǎng)絡(luò)客戶(hù)端具體步驟為:
(201)智能光網(wǎng)絡(luò)客戶(hù)端創(chuàng)建socket套接字;
(202)selete函數(shù)檢測(cè)到服務(wù)器向智能光網(wǎng)絡(luò)客戶(hù)端發(fā)送連接請(qǐng)求;
(203)智能光網(wǎng)絡(luò)客戶(hù)端與主服務(wù)器或備服務(wù)器進(jìn)行連接;
(204)智能光網(wǎng)絡(luò)客戶(hù)端向主服務(wù)器或備服務(wù)器向發(fā)送數(shù)據(jù);
(205)智能光網(wǎng)絡(luò)客戶(hù)端接受主服務(wù)器或備服務(wù)器數(shù)據(jù);
(206)智能光網(wǎng)絡(luò)客戶(hù)端端關(guān)閉socket套接字;
步驟(3)主服務(wù)器或備服務(wù)器尋址啟動(dòng)自動(dòng)識(shí)別尋址方式,智能光網(wǎng)絡(luò)客戶(hù)端默認(rèn)先選擇使用IP地址的方式查找服務(wù)器,如果在計(jì)時(shí)器超時(shí)后,仍然沒(méi)有找到服務(wù)器,會(huì)轉(zhuǎn)而使用域名的方式,查找服務(wù)器,如果此時(shí)計(jì)時(shí)器也超時(shí),再使用IP地址的方式,反復(fù)循環(huán)。
本發(fā)明的一種基于智能光網(wǎng)絡(luò)單元的通信管理方法,保持模塊化智能光網(wǎng)單元與管理平臺(tái)長(zhǎng)時(shí)間TCP連接和容錯(cuò)糾錯(cuò)的機(jī)制,本發(fā)明的一種基于智能光網(wǎng)絡(luò)單元的通信管理方法,能有效減少TCP連接對(duì)TCP端口號(hào)數(shù)量的要求,減少服務(wù)器數(shù)量和服務(wù)器開(kāi)銷(xiāo),實(shí)現(xiàn)主備服務(wù)器切換,IP和域名切換的目的,同時(shí)增加容錯(cuò)處理,在智能設(shè)備發(fā)生錯(cuò)誤時(shí)主動(dòng)恢復(fù)連接。
以上所述的實(shí)施例僅僅是對(duì)本發(fā)明的優(yōu)選實(shí)施方式進(jìn)行描述,并非對(duì)本發(fā)明的范圍進(jìn)行限定,在不脫離本發(fā)明設(shè)計(jì)精神的前提下,本領(lǐng)域普通技術(shù)人員對(duì)本發(fā)明的技術(shù)方案作出的各種變形和改進(jìn),均應(yīng)落入本發(fā)明的保護(hù)范圍內(nèi)。