TW200818808A - Method and data processing system for managing a plurality of interfaces - Google Patents

Method and data processing system for managing a plurality of interfaces Download PDF

Info

Publication number
TW200818808A
TW200818808A TW096113349A TW96113349A TW200818808A TW 200818808 A TW200818808 A TW 200818808A TW 096113349 A TW096113349 A TW 096113349A TW 96113349 A TW96113349 A TW 96113349A TW 200818808 A TW200818808 A TW 200818808A
Authority
TW
Taiwan
Prior art keywords
socket
application
sockets
computer
sub
Prior art date
Application number
TW096113349A
Other languages
English (en)
Inventor
Dwip N Banerjee
Kavitha Ramalingam
Prithvi Srihari
Venkat Venkatsubra
Original Assignee
Ibm
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ibm filed Critical Ibm
Publication of TW200818808A publication Critical patent/TW200818808A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Description

200818808 , 九、發明說明: 【發明所屬之技術領域】 本發明大體上侧於-種改良資料處理系統,且特定言 之本發明係關於-種用於管理介面之方法及設備。更特定 言之,本發明係關於-種用於管理複數個網際網路介面之 , 電腦實施方法、資料處理系統及電腦程式產品。 • 【先前技術】 在過去十年内’應用程式伺服器與多個網路連接進行介 ^ ^連接之能力已顯著提高。以前,應用程式伺服器通常能 夠存取單-網路連接或少數網路連接。因此,應用程式饲 服器能夠容易地管理待處理請求之數目及待接收並回答請 求之人員。然而’隨著網際網路曰益普及,應用程式飼服 器可利用之網路連接之數目亦增加。因此,管理及處理請 求的複雜性業已增加。 l系為處s #求’應用程式伺服器必須僅為發出該 請求之個體打開一應用程式之—執行個體,或為網路上之 戶斤有個體打開該執行個體。應用程式祠服器不具有區別或 選擇與哪些個體建立連接的能力。因而,應用程式飼服器 只有兩種非理想之選擇:與每一個體單獨工作,或與所有 個體同時工作。與每一個體單獨工作低效及繁瑣。然而, 與所有個體同時工作引發與機密性及安全性有關之問題。 【發明内容】 說明性實施例提供一種用於管理複數個介面之電腦實施 方法資料處理系统及電腦程式產品。一應用矛呈式選擇該 119853.doc 200818808 複數個介面之一子集。回應於該選擇,該應用程式繫結至 介面之該子集,其中該應用程式偵聽介面之該子集。 【實施方式】
現參看諸圖,且尤其參看圖1至圖2,提供可實施說明性 具施例之資料處理環境之例示性圖解。應瞭解,圖1至圖2 為例示性的而非意欲表明或默示任何對於可實施說明性 貝施例之環境的限制。可在不脫離說明性實施例之精神及 嘴的情況下對所描繪之環境作出許多修改。 現參看諸圖,圖丨描緣可實施說明性實施例之諸態樣之 資料處理系統之網路的圖象表示。網路資料處理系統1 〇〇 為可實施說明性實施例之多個電腦之網路。網路資料處理 系統100含有網路102,該網路102為用於提供共同連接於 網路資料處理系統100内之各種裝置與電腦之間的通信鏈 路的媒體。網路102可包括多種連接,諸如,電線、無線 通信鏈路或光纖電纜。 在所描繪之實例中,伺服器104及伺服器106連同儲存單 元108連接至網路102。另外,用戶端11〇、112及114連接 至網路102。此等用戶端110、112及114可(例如)為個人電 腦或網路電腦。在所描繪之實例中,伺服器1〇4將諸如開 機檔、作業系統影像及應用程式之資料提供至用戶端 ㈣、m及114。在此實财,用戶端㈣、m及ιΐ4為飼 服器104之用戶端。網路資料處理系統1〇〇可包括未圖示之 額外伺服器、用戶端及其他裝置。 在所描繪之實例中 網路資料處理系統1〇〇為 具有網路 119853.doc 200818808 102之網際網路,該網際網路表示全球範圍内使用傳輸控 制協定/網際網路協定(TCP/IP)協定組以彼此通信之網路及 閘道器的集合。網際網路之核心為由用於投送資料及訊息 之數以千計商用電腦系統、政府電腦系統、教育電腦系統 及其他電腦系統組成的主節點或主電腦之間的高速資料通 信線路的骨架。當然,網路資料處理系統1 〇〇亦可實施為 若干不同類型之網路,諸如,企業内部網路、區域網路 (LAN)或廣域網路(WAN)。圖1意在作為一實例,而非作為 不同說明性實施例之架構限制。 現參看圖2,展示可實施說明性實施例之諸態樣之資料 處理系統的方塊圖。資料處理系統200為諸如圖1中之伺服 器104或用戶端110之電腦的一實例,實施說明性實施例之 程序之電腦可用碼或指令可位於該系統中。 在所描繪之實例中,資料處理系統200使用包括北橋與 記憶體控制器集線器(NB/MCH)202及南橋與輸入/輸出(I/O) 控制器集線器(SB/ICH)204之集線器架構。處理單元206、 主記憶體208及圖形處理器210連接至NB/MCH 202。圖形 處理器210可經由加速圖形埠(AGP)連接至NB/MCH 202。 在所描繪之實例中,區域網路(LAN)配接器212連接至 SB/ICH 204。音訊配接器216、鍵盤與滑鼠配接器220、數 據機222、唯讀記憶體(ROM)224、硬磁碟驅動機 (HDD)226、CD-ROM驅動機230、通用串列匯流排(USB)埠 及其他通信埠232以及PCI/PCIe裝置234經由匯流排23 8及 匯流排240連接至SB/ICH 204。PCI/PCIe裝置可包括(例如) 119853.doc 200818808 乙太網路配接器、插卡及用於筆記型電腦之pc卡。pci使 用卡匯流排控制器,而PCIe不使用卡匯流排控制器。ROM 224可為(例如)快閃二進制輸入/輸出系統(BIOS)。 HDD 226及CD-ROM驅動機230經由匯流排240連接至 SB/ICH 204。HDD 226及CD-ROM驅動機230可使用(例如) 整合驅動電子介面(IDE)或串行高級技術附加(SATA)介 面。超I/0(SI0)裝置236可連接至SB/ICH 204。 一作業系統在處理單元206上執行,且協調及提供對圖2 中之資料處理系統200内之各種組件的控制。作為用戶 端,該作業系統可為一可購得之作業系統,諸如, Microsoft® Windows⑧ XP(Microsoft及 Windows為微軟公司 在美國、其他國家或所有國家的商標)。諸如JavaTM程式設 計系統之物件導向式程式設計系統可與作業系統一起執 行,且其將自在資科處理系統200上執行之Java™程式或應 用程式之調用提供至作業系統(Java為Sun Microsystems, Inc.在美國、其他國家或所有國家的商標)。 作為伺服器,資料處理系統200可為(例如)執行進階互 動式執行(AIX®)作業系統或LINUX®作業系統之IBM⑧ eServerTM pSeries⑧電腦系統(eServer、pSeries及 AIX為國際 商業機器公司在美國、其他國家或所有國家的商標,而 LINUX為Linus Torvalds在美國、其他國家或所有國家的商 標)。資料處理系統200可為在處理單元206中包括複數個 處理器之對稱多處理器(SMP)系統。或者,可使用單一處 理器系統。 119853.doc 200818808 用於作業純、物料向切式料“及應用程式或 程式之指令位於諸如咖咖之儲存裝置上,且可載 主記憶體208中以由處理單元寫執行。由處理單元2〇6使 用電腦可用程式絲執行㈣性實施狀料,電腦可用 程式碼可位於諸如主記憶體2〇8、R〇M 224之記憶體中或 位於一或多個周邊裝置226及23〇中。
發性記憶體或光碟機及其類似物之其他内部硬體或周邊裝 置。又,說明性實施例之程序可應用於多處理器資料處理 系統。 一般熟習此項技術者將瞭解,圖丨至圖2中之硬體可視實 施而變化。除圖i至圖2中所描繪之硬體以外或替代_ 圖2中所描繪之硬體,可使用諸如快閃記憶體、等效非揮 在一些說明性實施例中,資料處理系統2〇〇可為個人數 位助理(PDA) ’其經組態而具有快閃記憶體以提供用於儲 存作業系統檔及/或使用者產生資料之非揮發性記憶體。 匯流排系統可包含一或多個匯流排,諸如,圖2中所示 之匯流排238或匯流排240。當然,可使用任何類型之通信 組構或架構來建構匯流排系統,該通信組構或架構提供附 接至該組構或架構之不同組件或裝置之間的資料轉移。通 信單元可包括用於發射及接收資料之一或多個裝置,諸 如’圖2之數據機222或網路配接器212。記憶體可為(例如) 圖2中之主記憶體2〇8、rom 224或諸如位於NB/MCH 202 中之快取記憶體。圖1至圖2中所描繪之實例及上述實例並 不意在默示架構限制。舉例而言,除採取PDA之形式以 119853.doc -10- 200818808 膝上型電腦或 外,貝料處理系統200亦可為平板型電腦、 電話裝置。 一實施例提供一種用於管理複數個介面之電腦實施方法、 資料處理系統及雷腦妒斗、立 rfe ra 人 域憲版私式產品。一應用程式選擇該複數個
"面之-子集。回應於該選擇,該應用程式繫結至介面之 該子集,以使得該應用㈣㈣介面之該子集。為了使該 應用私式繫結至介面之該子集,應用程式首先為介面之該 子集中的每-介面打開-主套接子及-子套接子。主套: 子與子套接子彼此關聯。主套接子亦連接至應用程式。因 而,主套接子維持有效套接子之—清單,並管理添加哪些 套接子及將哪些套接子自清單移除。 圖3說明根據說明性實施例之具有複數個介面之應用程 式伺服器。資料處理系統3〇〇為一祠服器,其類似於㈣ 飼服器104及106。資料處理系統3〇〇包括應用程式31〇、主 套接子320、套接子33G至339,及網路介面⑽至州。應 用程式3iG常駐於資料處理系統谓之主記憶體中且由資料 處理系統綱之處理器執行。應用程式3H)為利用自諸如網 路介面340至349之網路介面接收或發送之資料之任何應用 程式。主套接子320為管理在應用程式31〇與套接子33〇至 339之間的介面的套接子。套接子咖至别連接至相應網 路介面340至349。網路介面3跑349各自以—單獨之網際 網路協定位址來識別,且連接至諸如圖丨之網路1〇2之網 路。 套接子為設計用於在網路上發送及接收資料之軟體程 119853.doc • 11 · 200818808 式。套接子通常連接至網際網路連接之傳送協定層,亦稱 為傳輸控制協定/網際網路協定(TCP/IP)。為建立一套接 子,必須創建或打開、繫結及偵聽該套接子。創建函數、 繫結函數及偵聽函數為利用應用程式設計介面(API)實施 之軟體調用。在創建或打開階段,識別套接子類型及相應 協定系族。在繫結階段,套接子映射至一網路位址、璋或 彳面。-套接子可繫結或映射至單—網路介面或複數個網 癱 料面。說明性實施例展示繫結至單一網路介面的單一套 攀接子。因而,在說明性實施例中,例如,套接子330繫妹 至網路介面340,套接子331繫結至網路介面341,依此類 推。在偵聽階段,套接子接受來自與網路新建立之連接的 資料。 一套接子可與複數個其他套接子關I在制性實施例 中’ -關聯4在傳輸控制協aTCP)階層處創建套接子之 間的通信鏈路的應用程式設計介面(API)。通信鍵路使一 φ I接子代表另一套接子執行一動作。在說明性實施例中’ 主套接子320與套接子33〇至339關聯。因而,套接子33〇至 339代表主套接子32〇執行請求。該等請求來自於應用程式 ㈣。由於該關聯,主套接子32G亦可稱為母套接子,且套 接子330至339亦可稱為從屬套接子或子套接子。 套接子320使用關聯清單來管理舆套接子至州之 關聯二1聯清單為—資料庫,且可為—鏈接清單、一 表 平坦檔、一雜湊表或其任一組合。關耳葬清單指示與 主套接子320關聯或聯繫之所有套接子,諸如,套接子謂 119853.doc -12- 200818808 至奶。可自關聯清單移除任—套接子330至339,亦稱為 與主套接子320解除關聯。另外,可藉由簡單地將新套接 子添加至關聯清單而使新套接子與主套接子32〇關聯。 使用時’應用程式31〇執行—演算法,並選擇與應用程 式310'可利之網路介面之-子集通信或彳貞聽該子集。_ 旦應用程式31〇識別到網路介面之該子集,則應用程式3ι〇 利用打開、繫結及偵聽應用程式設計介面(趟)而為該子 集中之每_網路介面建立_主套接子及—子套接子。接 著1用程式31〇將打開套接子之清單傳達至主套接子。 接著,主套接子創建一關聯清單以建立主套接子與該等子 套接子之間的關聯。在創建一關聯之後,應用程式3ι〇接 文主套接子與子套接子之關聯。接受函數為一應用程式設 计’I面(API) ’其經由主套接子而建立應用程式與子套 接子之間的連接。 因而,在說明性實施例中,應用程式3 1〇選擇與網路介 • 面340至349通信,網路介面340至349為應用程式31〇可利 用之網路介面之一子集。接著,應用程式31〇打開主套接 子320及子套接子330至339。接著,應用程式31〇將子套接 子330至339已打開以與網路介面34〇至349通信此一情況傳 達至主套接子320。接著,主套接子32〇創建一列有套接子 340至349之關聯清單並使套接子34〇至349與主套接子“ο 關聯。所描述之過程使得應用程式31〇偵聽網路介面之一 子集。 說明性實施例亦允許應用程式31〇與一特定網路介面動 119853.doc -13- 200818808 態地斷開連接。動態地斷開連接意謂在已建立與網路介面 之一子集之連接且主套接子與該子集關聯之後斷開連接。 使用時,應用程式310可選擇在一網路介面出現問題時與 該網路介面斷開連接。為動態地斷開連接,應用程式HO 識別應用程式310希望與之斷開連接之子套接子。接著, 應用程式310將一訊息傳達至主套接子32〇以與該經識別之 子套接子解除關聯。主套接子32〇將該子套接子自關聯清 單移除,且應用程式310關閉該子套接子。接著,應用程 式3 10與該特定網路介面斷開連接。 說明性實施例亦允許應用程式31〇動態地連接至一特定 網路介面。動態地連接意謂在建立與其他網路介面之連接 且一主套接子與其他網路介面關聯之後連接。使用時,應 用程式310可選擇在建立一新的網路介面時添加一網路Z 面。為動態地添加一網路介面,應用程式31〇為應用程式 310希望與之通信之網路介面打開一子套接子。接著,應 φ 用程式310將一訊息發送至主套接子320以與該新的子套接 子關聯主套接子320將該新的子套接子添加至關聯清單 且使該新的子套接子與主套接子32〇關聯。現在,應用程 式310可與新的子套接子通信。 、祝明性實施例亦提供僅自網路介面之子集接收網路請 求。通常,應用程式310與應用程式31〇可利用之單一網路 介面或所有網路進行介面連接。結果,應用程式31〇將視 連接類51而定來處理所有請求。因而,若應用程式训連 接至單一網路介面,則應用程式310將處理來自單一網路 119853.doc -14- 200818808 介面之所有網路請求。同樣,若應用程式31〇連接至所有 網路介面,則應用程式310將處理來自所有網路介面之所 有請求。 然而,說明性實施例允許應用程式31〇與網路介面之一 子集連接。結果,應用程式310將僅處理來自網路介面之 該子集之網路請求。因而,在所描繪之實例中,網路介面 340至349為由應用程式31〇選定之網路介面之子集。說明 性實施例提供應用程式3丨〇將僅處理及接收來自網路介面 340至349之請求,以代替處理來自應用程式31〇可利用之 所有網路介面之請求。 說明性實施例亦允許管理在主套接子以及網路介面之選 定子集中之每一網路介面處的一請求佇列。一請求佇列為 專待應用私式3 10處理之請求的積存(backi〇g)。該等請求 以先進先出之次序進行處理。通常,對於每一個別網路介 面340至349而言存在請求之一個別佇列,因為每一個別網 φ 路介面340至349直接連接至應用程式310。因而,主套接 子320通常將不作為在網路介面"ο至349與應用程式31〇之 間的中間介面而存在。然而,說明性實施例提供主套接子 、 320作為在應用程式310與網路介面340至349之間的中間介 面而存在。因此,說明性實施例亦提供主套接子32〇以及 主套接子320下游在每一個別網路介面340至349處可存在 一請求佇列。 主套接子320管理主套接子32〇之後之佇列的大小。同 樣’套接子330至套接子339管理相應網路介面340至349之 119853.doc -15- 200818808 佇列的大小。套接子330至339將其各別請求轉發至主套接 子320之請求佇列之末端。若在任一網路介面34〇至349之 後存在一請求佇列,則套接子33〇至339以先進先出之方式 轉發其各別請求。 使用時,常駐於主套接子320中之演算法通知每一套接 子330至339何時主套接子320可將額外請求接收於其佇列 中。接著,該演算法協調首先接收來自套接子33〇至339之 哪一請求。演算法可使用時間日戳或若干其他替代方法來 判疋首先接收哪一請求。在判定首先接收哪一請求之後, 演算法處理適當套接子330至339之請求以轉發該請求。接 著,適當套接子330至339轉發該適當請求並將該請求添加 至佇列末端。 圖4說明根據說明性實施例之可由主套接子創建及使用 之關聯清單。表400表示圖3之資料處理系統3〇〇中所說明 之組態。表400為可常駐於一主套接子(諸如,圖3之主套 接子320)中之表的一實例。 表400包括套接子編號行41〇、網路介面編號行42〇,及 母套接子編號行43 0。套接子編號行4丨〇為與主套接子關聯 之所有套接子之清單。在說明性實施例中,列於套接子編 唬行310中之套接子330至339為圖3中所說明之相同子套接 子。 網路介面編號行420為與套接子編號行41〇中之相應套接 子連接之網路介面的清單。列於網路介面編號行42〇中之 網路介面表示圖3之網路介面34〇至349。因而,網路介面 119853.doc -16- 200818808 編號行420中之網路介面為應用程式可利用之全部網路介 面之一子集。列於網路介面編號行420中之編號為每一網 路/丨面之實例網際網路協定位址。說明性實施例不限於所 描繪之網際網路協定位址。網路位址之命名法在此項技術 中係普遍且已知的。因而,一般熟習此項技術者將認識到 不偏離說明性實施例之範疇及精神之其他替代方法。 母套接子編號行430識別與每一子套接子關聯之主套接 子。因而,在說明性實施例中,主套接子32〇為子套接子 330至339之母套接子。因此,主套接子32〇與子套接子 至339關聯。 表400之列450至459列出與一特定套接子關聯之網路介 面編號行420及母套接子編號行43〇中所識別之所有資訊。 因而’在說明性實施例巾,列45〇中之套接子33〇與網路介 面IPV4:0.3.3.0連揍。列451中之套接子331連接至網路介 面編號IPV4:0.3.3.1。列452中之套接子332連接至網路介 面編號IPV4:0.3.3.2。列453中之套接子333連接至網路介 面編號IPV4:0.3.3.3。列454中之套接子334連接至網路介 面編號IPV4:0.3.3.4。列455中之套接子335連接至網路介 面編號IPV4:0.3.3.5。列456中之套接子336連接至網路介 面編號IPV4:0·3·3·6。列457中之套接子337連接至網路介 面編號IPV4:G.3.3.7。列458中之套接子338連接至網路介 面編號IPV4m8。列459中之套接子339連接至網路介 面編號ΙΡν4··0·3.3·9。所有套接子33〇至339與主套接子 關聯。 119853.doc •17- 200818808 使用時,一應用程式 路介^ 、 “應用程式希望與之通信之網 . '為、揭路介面之子集中之每一網路 介面打開一套接子。接荖, 主套接子接收來自該應用程式 之打開套接子之一清單。接# ο 4用私式 i41 ^ 接者,主套接子創建一關聯清 早’堵如’表400。主套接子 六从7 肝备接子清早填充至表400之 套接子編號行410中。主套接 奮接子亦用與套接子對應之每一 網路介面的網際網路位址來 水具死網路介面編號行420。接
著,主套接子使其自身與關聯清單中之每—子套接子關 聯。主套接子執行一關聯演算法’此將使主套接子聯繫至 列於套接子編號清單410中之每一套接子。接著,主套接 子指示母套接子編號行430中之關聯。 表400不限於所描繪之實施例。舉例而言,套接子編號 及網路介面編號可以另一形式袅 %忒衣不。又,一些資訊可移除 或包括於表4 0 0中。 圖5說明根據說明性實施例之在與—套接子動態地解除 關聯之後的關聯清單。表5〇〇為可常駐於一主套接子(諸 如圖3之主套接子320)中之表的一實例。除表5〇〇表示一 在與一套接子解除關聯之後的關聯清單以外,表5〇〇類似 於圖4之表400。 表500包括套接子編號行51〇、網路介面編號行52〇,及 母套接子編號行530。套接子編號行51〇為與主套接子關聯 之所有套接子之清單。網路介面編號行520為與套接子編 號行510中之相應套接子連接之網路介面的清單。母套接 子編號行530識別與每一子套接子關聯之主套接子。表5〇〇 119853.doc -18 - 200818808 之歹J 550至557列出與-特定套接子關聯之網路介面編號行 520及母套接子編號行53〇中所識別之所有資訊。 主套接子(在此貝鈿例中為主套接子32〇)接收來自應用 程式之與套接子編號331及333解除關聯之請求。因而,主 套接子執行一解除關聯演算法,此使得主套接子與套接子 編號33U 333斷開連接。接著,主套接子自表5〇〇移除套 接子編號331及333以及與套接子編號331及333有關之所有 育訊。解除關聯之結果反映於表5()()中。除將套接子編號 331及333自表500移除外,應用程式亦關閉套接子331及 333。移除套接子編號同時關閉套接子便斷開應用程式與 網路介面之通信。 圖6說明根據說明性實施例之在一新的套接子與主套接 子動態地關聯之後的關聯清單。表6〇〇為可常駐於一主套 接子(諸如,圖3之主套接子320)中之表的一實例。除表6〇〇 表示在一新的套接子與一主套接子關聯之後的關聯清單以 外,表600類似於圖4之表4〇〇。 表600包括套接子編號行61〇、網路介面編號行,及 母套接子編號行630。套接子編號行61〇為與主套接子關聯 之所有套接子之清單。網路介面編號行620為與套接子編 號行610中之相應套接子連接之網路介面的清單。母套接 子編號行630識別與每一子套接子關聯之主套接子。表 之列650至660列出與一特定套接子關聯之網路介面編號行 620及母套接子編號行63〇中所識別之所有資訊。 應用程式打開一新的套接子(在此實施例中為套接子編 119853.doc -19- 200818808 唬350)。主套接子(在此實施例中為主套接子32〇)接收一與 套接子編號350關聯之請求。主套接子執行一關聯演算 法’此將使主套接子聯繫至套接子編號35〇。接著,主套 接子將套接子編號350及套接子編號350之所有有關資訊添 加至表600。該添加反映於列66〇中。將套接子編號添加至 表600允許應用程式偵聽套接子編號35〇。
圖7為根據說明性實施例說明一應用程式内用以使該應 用程式與網路介面之一子集通信之程序的流程圖。該程序 在諸如圖3之應用程式310之應用程式中執行。 該程序開始於應用程式選擇該應用程式希望與之進行介 面連接之網路位址(步驟700)。所選定網路位址為該應用程 式可利用之網路位址之一子集。接著,應用程式打開一主 套接子(步驟710)。接著,應用程式為該應用程式希望與之 進仃介面連接之每一網路位址打開一子套接子(步驟72〇)。 接著,應用程式將打開子套接子之清單發送至主套接子 (步驟730),其後該程序終止。 圖8為說明一主套接子内用以使該主套接子與網路介面 之一子集關聯之程序的流程圖。該程序在諸如圖3之主套 接子320之主套接子中執行。 該耘序開始於主套接子接收打開子套接子之一清單(步 :,。接著’主套接子創建該等打開子套接子之一關聯 清早(步職0)。接著,主套接子使㈣子套接子與該主套 ❹關聯(步驟820)。接著’衫應用程式是否希望自該清 早移除-子套接子(步驟83())。若主套接子接收到移除 119853.doc -20· 200818808 套接子之請求(步㈣嗜出"是”),社 ==除關聯(步_)。接著,判定應用程= 接收到添加一步驟85°)。若主套接子 ^ 奮接子之请求(步驟850輸出"是"),則主套 程1=新的子套接子與主套接子關聯(步驟_),其後該 現回到步驟830,若本泰拉2 1 Λ 之請求(步_輪出"否"):子二, n 徇出否)’則判定應用程式是否希望將一 子=子添加至該清單(步驟㈣)。若主套接子接收到添加 接子之請求(步驟㈣輸出,,是"),則主套接子使該新 接子與主套接子關聯(步驟86G),其後該程序終止。 回到/驟850,若主套接子未接收到添加一子套接子之 請求(步驟850輸出"否"),則其後該程序終止。 .說㈣實施例提供-種用於管理複數個介面之電腦實施 …法貝料處理系統及電腦程式產品。一應用程式選擇該 入面之子集。回應於該選擇,該應用程式繫結至 ’I面,4子集’以使得該應用程式摘聽介面之該子集。為 吏亥應用~式繫結至介面之該子集,制程式首先為介 面之該子集中之每一介面打開一主套接子及一子套接子。 2套接子與子套接子彼此„。主套接子錢接至應用程 ^因而4套接子維持有效套接子之—清單,並管理添 哪些套接子及將哪些套接子自清單移除。 說明性實施例允許應用程式僅與介面之一子集通信,而 4限於僅早一介面或所有介面。說明性實施例亦允許應用 H9853.doc •21- 200818808 程式與-介面動態地斷開連接或連接而不干擾與其他介面 之通信。動態地斷開連接之能力提供給應用程式移除需要 修理或具有其他問題之介面的能力。動態地連接之能力提 供給應用程式接受來自新介面之通信的能力。 本發明可採取完全硬體實施例、完全軟體實施例或含有 硬體及軟體元件之實施例的形式。在一較佳實施例中,本 發明以包括(但不限於)韌體、常駐軟體、微碼等之軟體實 施。 、 _ 此外’本發明可採取可自電腦可用媒體或電腦可讀取媒 體存取之提供程式碼之電腦程式產品之形式,以供電腦或 任何指令執行系統使用或與其結合使用。出於此描述之目 的,電腦可用媒體或電腦可讀取媒體可為任何可含有、儲 存、傳達、傳播或傳送程式以供指令執行系統、設備或裝 置使用或與其結合使用之有形設備。 媒體可為電子、磁、光學、電磁、紅外或半導體系統 φ (或設備或裝置)或傳播媒體。電腦可讀取媒體之實例包括 半‘體或固‘癌記憶體、磁帶、抽取式電腦磁#、隨機存取 記憶體(RAM)、唯讀記憶體(R〇M)、硬質磁碟及光碟。光 碟之當前實例包括緊密光碟-唯讀記憶體(CD-ROM)、緊密 光碟-讀/寫(CD-R/W)及DVD(數位多功能碟片)。 適合用於儲存及/或執行程式碼之資料處理系統將包括 經由系統匯流排而與記憶體元件直接或間接耦接之至少一 個處理器。記憶體元件可包括在程式碼之實際執行期間使 用之區域記憶體、大容量儲存器及快取記憶體,快取記憶 119853.doc -22· 200818808 體提供至少一些程式碼之暫時儲存以便減少在執行期間必 須自大容量儲存器擷取碼之次數。 輸入/輸出或I/O裝置(包括(但不限於)鍵盤、顯示器、指 向裝置)可直接耦接至系統或經由介入式1/0控制器耦接至 系統。 網路配接器亦可耦接至系統以使資料處理系統能夠經由 介入式專用網路或公眾網路耦接至其他資料處理系統或遠 端印表機或儲存裝置。數據機、電纜數據機及乙太網路卡 正為一些當前可利用類型之網路配接器。 已出於說明及描述之目的陳述本發明之描述内容,且不 希望其為詳盡的或限於本發明所揭示之形式。一般熟習此 項技術者將易瞭解許多修改及變化。選擇並描述實施例是 為了最佳地解釋本發明之原理及實務應用,且使一般熟習 此項技術者能夠理解本發明的具有適合特殊預期用途之各 種修改之各種實施例。 【圖式簡單說明】 圖1為可實施說明性實施例之諸態樣之資料處理系統之 網路的圖象表示; 圖2為可實施說明性實施例之諸態樣之資料處理系統的 方塊圖; 圖3說明根據說明性實施例之具有複數個介面之應用程 式伺服器; 圖4說明根據說明性實施例之可由主套接子創建及使用 之關聯清單; 119853.doc -23- 200818808 圖5說明根據說明性實施例之在與—套接子動態地解除 關聯之後的關聯清單; 圖6說明根據說明性實施例之在一新的套接子與主套接 子動恕地關聯之後的關聯清單; 圖7為根據說明性實施例說明一應用程式内用以使應用 程式與網路介面之一子集通信之程序的流程圖;及
圖8為根據說明性實施例說明一主套接子内用以使主套 接子與網路介面之一子集關聯之程序的流程圖。 【主要元件符號說明】 100 網路資料處理系統 102 網路 104 伺服器 106 伺服器 108 儲存單元 110 用戶端 112 用戶端 114 用戶端 200 資料處理系統 202 北橋與記憶體控制器集線器(NB/MCH) 204 南橋與輸入/輸出(I/O)控制器集線器 (SB/ICH) 206 處理單元 208 主記憶體 210 圖形處理器 119853.doc 200818808
212 區域網路(LAN)配接器 216 音訊配接器 220 鍵盤與滑鼠配接器 222 數據機 224 唯讀記憶體(ROM) 226 硬磁碟驅動機(HDD)/周邊裝置 230 CD-ROM驅動機/周邊裝置 232 通用串列匯流排(USB)埠及其他通信埠 234 PCI/PCIe 裝置 236 超I/0(SI0)裝置 238 匯流排 240 匯流排 300 資料處理系統 310 應用程式 320 主套接子 330-339 套接子 340-349 網路介面 119853.doc -25-

Claims (1)

  1. 200818808 十、申請專利範圍: 1. 一種用於管理複數個介面之電腦實施方法,該電腦實施 方法包含: ' 由一應用程式選擇該複數個介面之一子集以形成介面 之一子集;及 回應於該由該應用程式選擇該複數個介面之一子集而 使該剌程式繫結至介面之該子集,其巾該制程式债 聽該等介面之該子集。 • 2·如請求項1之電腦實施方法,其進一步包含: 打開一主套接子;及 為介面之該子集内之每一介面打開一子套接子,其中 該主套接子及該等子套接子由該應用程式打開。 3·如請求項2之電腦實施方法,其進一步包含: 組態該等子套接子。 4. 如請求項3之電腦f施方法,纟中該組態該等子套接子 的步驟包含: 使該子套接子與介面之該子集内之該每—介面繫 結;及 μ 使該主套接子與該等子套接子關聯。 5· ^請求項4之電腦實施方法’其中該使該主套接子與該 等子套接子關聯的步驟包含: 將4等子套接子添加至一由該主套接子維持之關聯清 單;及 使該主套接子與該關聯清單中之該等子套接子鍵接。 119853.doc 200818808 6·如請求項5之電腦實施方法,其進一步包含· 接收一來自該應用程式之動態地關閉該等子套接子中 的一者之請求;及 回應於遠來自該應用程式之動態地關閉該等子套接子 中的-者之請求而與該等子套接子中的該一者解除關 聯0 7·如請求項6之電腦實施方法,其中該與該等子套接子中 的一者解除關聯的步驟包含: 將該等子套接子中的該一者自該關聯清單移除。 8.如晴求項5之電腦實施方法,其進一步包含· 接收一來自該應用程式之動態地添加一新的子套接子 之請求;及 回應於該來自該應用程式之動態地添加一新的子套接 子之請求而使該新的子套接子與該主套接子關聯。 9·如請求項2之電腦實施方法,其進一步包含·· 由該主套接子管理一應用程式之一請求佇列;及 將-來自該等子套接子中的一者的請求轉發至該請求 仔列之-末端’其中該來自該等子套接子中的—者的請 求係該等子套接子中的該—者之—請求㈣中的一第一 請求。 -種用於管理複數個介面之資料處理系 含: 一應用程式伺服器,其連接至一網路,· 該複數個介面,其處於一應用程式伺服器内;及 119853.doc -2 · 200818808 一應用程式,其處於該應用程式伺服器内,其中該應 用程式經由該複數個介面繫結至該網路。 Π ·如請求項1 〇之資料處理系統,其進一步包含: 套接子,其蘩結至邊複數個介面中的每一介面以形 成一子套接子;及 一主套接子,其與每一子套接子關聯,其中該主套接 子連接至該應用程式。 12· —種用於管理複數個介面之電腦程式產品,其包含一具 有電腦可用程式碼之電腦可用媒體,該電腦程式產品 包含: 用於由一應用程式選擇該複數個介面之一子集以形成 介面之一子集的電腦可用程式碼;及 •回應於該由該應用程式選擇該複數個介面之一子集, 用於使該應用程式繫結至介面之該子錢電腦可用程式 碼,其中該應用程式偵聽介面之該子集。 13.如請求項12之電腦程式產品,其進一步包含: 用於打開一主套接子的電腦可用程式碼;及 用於為介面之該子集内之每一介面打開一子套接子的 電腦可用程式碼’其中該主套接子及該等子套接子由該 應用程式打開。 14·如請求項13之電腦程式產品,其進一步包含·· 用於組態該等子套接子的電腦可用程式碼。 ’求項14之電細冑式產品中該用於組態該等子套 接子的電腦可用程式碼包含·· 119853.doc 200818808 用於使該子套接子與介面之該子集内之該每一介面繫 結的電腦可用程式碼;及 ” 用於使該主套接子與該等子套接子關聯的電腦可用程 式碼。 16·如請求項15之電腦程式產品,其中該用於使該主套接子 與该等子套接子關聯的電腦可用程式碼包含·· 用於將該等子套接子添加至一由該主套接子維持之關 聯清單的電腦可用程式碼;及 用於使該主套接子與該關聯清單中之該等子套接子鏈 接的電腦可用程式碼。 17·如請求項16之電腦程式產品,其進一步包含: 用於接收一來自該應用程式之動態地關閉該等子套接 子中的一者之請求的電腦可用程式碼;及 回應於該來自該應用程式之動態地關閉該等子套接子 中的一者之請求,用於與該等子套接子中的該一者解除 關聯的電腦可用程式碼。 18·如請求項17之電腦程式產品,其中該用於與該等子套接 子中的該一者解除關聯的電腦可用程式碼包含: 用於將該等子套接子中的該一者自該關聯清單移除的 電腦可用程式碼。 19·如請求項16之電腦程式產品,其進一步包含: 用於接收一來自該應用程式之動態地添加一新的子套 接子之請求的電腦可用程式碼;及 回應於該來自該應用程式之動態地添加一新的子套接 119853.doc 200818808 子之請求,用於使該新的子套接子與該主套接 電腦可用程式碼。 J 20.如請求項15之電腦程式產品’其進一步包含·· 用於由該主套接子管理一膺 Μ用%式之一睛求仵列的 腦可用程式碼;及 用於將一來自該等子矣接;士 4子套接子巾的—者的請求轉發至該 Μ求佇列之一末端的電腦可用程式碼,其中該來自該等 子套接子中的—者的請求係該等子套接子中的該一者之 一請求佇列中的一第一請求。 2!.一種用於使-應用程式與網路位址之—子集通信之電腦 實施方法,該電腦實施方法包含: 由一應用程式識別網路位址之該子集; 建立一與網路位址之該子集之連接;及 由-應用程式接受該與網路位址之該子集之連接。 22. 如請求項21之電腦實施方法,其中該建立-與網路位址 之該子集之連接的步驟包含: 打開一主套接子;及 為網路位址之該子集内之每一網路位址打開一子套接 子〃中°亥主套接子及該等子套接子由該應用程式打 開。 23. 如請求項22之電腦實施方法,其進一步包含: 使網路位址之該子集内之每一網路位址與該子套接子 繫結;及 偵聽該等子套接子。 119853.doc 200818808 24. 如請求項22之電腦實施方 其進一步包含: 使該主套接子與該等子套 丁备接子關聯。 25. 如請求項24之電腦實施方 其中該使該主套接子與該 子套接子關聯的步驟包含·· 將該等子套接子填入-關聯清單;及 將該主套接子與該等子套接子列表於該關聯清單中。 26. 如請求項25之電腦實施方法,其進_步包含: 接收一來自該應用程式之私_ 飞^動恶地關閉該等子套接子中 的一者之請求;及 回應於該來自該應用程式之翻仏日日b 狂式之動悲地關閉該等子套接子 中的一者之請求而與該等子套 备接子中的该一者解除關 聯。 ”·如請求項26之電腦實施方法,其中該與該等子套接子中 的一者解除關聯的步驟包含: 將該等子套接子中的該-者自該關聯清單移除。 28·如請求項25之電腦實施方法,其進一步包含: 接收一來自該應用程式之動態地添加一新的子套接子 之睛求;及 回應於該來自該應用程式之動態地添加—新的子套接 子之請求而使該新的子套接子與該主套接子關聯。 29. —種用於使一應用程式與網路位址之一子集通信之電腦 程式產品,其包含一具有電腦可用程式碼之電腦可用媒 體,該電腦程式產品包含: ' 用於由一應用程式識別網路位址之該早鱼 于集的電腦可用 119853.doc 200818808 程式碼; 之連接的電腦 可用程 用於建立一與網路位址之該子集 式碼;及 址之該子集之連接 用於由一應用程式接受該與網路位 的電腦可用程式碼。 30.如請求項29之電腦程式產品, ,、甲°亥用於建立一與網路 位址之§亥子集之連接的電腦可用程式碼包含:
    用於打開-主套接子的電腦可用程式碼;及 用於為網路位址之該子集内之每一網路位址打開一子 套接子的電腦可用程式碼,其中該主套接子及該等子套 接子由該應用程式打開。 31·如請求項30之電腦程式產品,其進一步包含: 用於使網路位址之該子集内之每一網路位址與該子套 接子繫結的電腦可用程式碼;及 用於偵聽該等子套接子的電腦可用程式碼。 32·如請求項30之電腦程式產品,其進一步包含·· 用於使該主套接子與该荨子套接子關聯的電腦可用程 式碼。 33.如請求項32之電腦程式產品,其中用於使該主套接子與 該子套接子關聯的指令包含·· 用於將該等子套接子填入一關聯清單的電腦可用程式 碼,及 用於將該主套接子與該等子套接子列表於該關聯清單 中之電腦可用程式碼。 119853.doc 200818808 34.如晴求項33之電腦程式產品,其進一步包含: 用於接收一來自該應用程式之動態地關閉該等子套接 子中的一者之請求的電腦可用程式碼;及
    回應於該來自該應用程式之動態地關閉該等子套接子 中的一者之請求,用於與該等子套接子中的該一者解除 關聯的電腦可用程式碼,其中該用於與該等子套接.子中 的一者解除關聯的電腦可用程式碼包含用於將該等子套 接子中的該一者自該關聯清單移除的指令。 35·如請求項33之電腦程式產品,其進一步包含: 用於接收一來自該應用程式之動態地添加一新的子套 接子之請求的電腦可用程式碼;及 回應於該來自該應用程式之動態地添加一新的子套接 子之睛求,用於使該新的子套接子盥 電腦可用程式碼。 -該主套接子關聯的
    119853.doc
TW096113349A 2006-04-18 2007-04-16 Method and data processing system for managing a plurality of interfaces TW200818808A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/406,185 US20070245005A1 (en) 2006-04-18 2006-04-18 Method and data processing system for managing a plurality of interfaces

Publications (1)

Publication Number Publication Date
TW200818808A true TW200818808A (en) 2008-04-16

Family

ID=38353663

Family Applications (1)

Application Number Title Priority Date Filing Date
TW096113349A TW200818808A (en) 2006-04-18 2007-04-16 Method and data processing system for managing a plurality of interfaces

Country Status (6)

Country Link
US (1) US20070245005A1 (zh)
EP (1) EP2011005A1 (zh)
JP (1) JP4979762B2 (zh)
CN (1) CN101410804A (zh)
TW (1) TW200818808A (zh)
WO (1) WO2007118877A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8364850B2 (en) * 2006-07-20 2013-01-29 Qualcomm Incorporated Utility service in multi-processor environment
US8856460B2 (en) 2010-09-15 2014-10-07 Oracle International Corporation System and method for zero buffer copying in a middleware environment
CN102158350B (zh) * 2011-02-12 2012-11-21 华为终端有限公司 一种移动宽带设备及管理移动宽带设备的方法
US9086909B2 (en) * 2011-05-17 2015-07-21 Oracle International Corporation System and method for supporting work sharing muxing in a cluster
CN102301650B (zh) * 2011-07-08 2014-07-09 华为技术有限公司 计算机系统中子网管理方法、总线适配器及计算机系统
CN105159102A (zh) * 2015-07-30 2015-12-16 北京京东尚科信息技术有限公司 智能家电、智能家电系统及其方法
CN110198312B (zh) * 2019-05-23 2021-12-24 北京华三通信技术有限公司 消息处理方法和装置

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5421024A (en) * 1991-04-30 1995-05-30 Hewlett-Packard Company Detection of a relative location of a network device using a multicast packet processed only by hubs
US5721876A (en) * 1995-03-30 1998-02-24 Bull Hn Information Systems Inc. Sockets application program mechanism for proprietary based application programs running in an emulation environment
US6061713A (en) * 1997-03-12 2000-05-09 Fujitsu Limited Communications system for client-server data processing systems
US6269400B1 (en) * 1998-07-22 2001-07-31 International Business Machines Corporation Method for discovering and registering agents in a distributed network
US6349341B1 (en) * 1998-07-30 2002-02-19 Advanced Micro Devices, Inc. Method and system for providing inter-tier application control in a multi-tiered computing environment
US6954784B2 (en) * 2000-08-17 2005-10-11 International Business Machines Corporation Systems, method and computer program products for cluster workload distribution without preconfigured port identification by utilizing a port of multiple ports associated with a single IP address
US6950879B2 (en) * 2001-01-24 2005-09-27 Interland, Inc. Using virtual network address information during communications
US20020143954A1 (en) * 2001-04-03 2002-10-03 Aiken John Andrew Methods, systems and computer program products for content-based routing via active TCP connection transfer
US6922727B2 (en) * 2001-06-26 2005-07-26 International Business Machines Corporation Method and system for managing parallel data transfer through multiple sockets to provide scalability to a computer network
US7080156B2 (en) * 2002-03-21 2006-07-18 Sun Microsystems, Inc. Message routing in a torus interconnect
US20040003085A1 (en) * 2002-06-26 2004-01-01 Joseph Paul G. Active application socket management
US7260599B2 (en) * 2003-03-07 2007-08-21 Hyperspace Communications, Inc. Supporting the exchange of data by distributed applications
US7263555B2 (en) * 2003-04-30 2007-08-28 International Business Machines Corporation Apparatus and method for dynamic sharing of server network interface resources
US20050125514A1 (en) * 2003-11-21 2005-06-09 Intel Corporation, A Delaware Corporation Dynamic resource allocation systems and methods
US20050165932A1 (en) * 2004-01-22 2005-07-28 International Business Machines Corporation Redirecting client connection requests among sockets providing a same service
US20050213115A1 (en) * 2004-03-29 2005-09-29 Bruce Johnson Print job system and method
ATE427601T1 (de) * 2004-07-01 2009-04-15 Alcatel Lucent Verfahren zur auswahl zwischen netzwerkschnittstellen, gerat mit mehreren netzwerkschnittstellen und verarbeitungsschicht
JP4698316B2 (ja) * 2005-07-15 2011-06-08 株式会社日立製作所 アクセスパス管理方法及びプログラム

Also Published As

Publication number Publication date
JP4979762B2 (ja) 2012-07-18
CN101410804A (zh) 2009-04-15
JP2009534728A (ja) 2009-09-24
EP2011005A1 (en) 2009-01-07
WO2007118877A1 (en) 2007-10-25
US20070245005A1 (en) 2007-10-18

Similar Documents

Publication Publication Date Title
TW200818808A (en) Method and data processing system for managing a plurality of interfaces
ES2428867T3 (es) Método y sistema para establecer una Red Igualitaria confiable y descentralizada
TW556095B (en) Method and system for embedding correlated performance measurements for distributed application performance decomposition
CN102546583B (zh) 用于便于网络服务虚拟化的计算机可执行方法及系统
US6928476B2 (en) Peer to peer remote data storage and collaboration
TW200910126A (en) Method and system for sharing data between subscribers of a multi-tenant database service
US20050209842A1 (en) Remote USB port system and method
US20070180079A1 (en) Method and system for peer-to-peer stream
TW201235860A (en) Cloud storage/access device and method thereof
US20220150364A1 (en) System and method for sending, delivery or receiving of faxes, over a computer based network according to security or other protocols
TW498217B (en) Internet-based shared file service with native PC client access and semantics and distributed version control
CN101834765B (zh) 一种远程文件传输的系统及方法
WO2014154009A1 (zh) 一种群组通信的方法、装置、接收端、发送端和设备
RU2008140278A (ru) Механизм удаления в мультимедийных службах, работающих по протоколу sip
CN103870938A (zh) 一种协同通信系统
JP4137769B2 (ja) 通信システム、通信方法および通信プログラム
JP2005215797A (ja) 端末装置、サーバ、グループウェアシステム、グループウェア方法、および、グループウェアプログラム
WO2015135358A1 (zh) 处理即时消息的方法、消息服务器、终端与系统
CN116308359A (zh) 一种数字资产的转移方法、装置、设备及存储介质
JP2002108718A (ja) コンテンツ配送管理システム、コンテンツ配送管理方法、及びコンテンツ配送管理プログラムを記録した記録媒体
TWI229995B (en) Packet transfer system applied to proxy server and method thereof
CN117319141A (zh) 云设备网络管理方法、访问方法及相关设备
JP2009534762A (ja) 電子ファイル共有
TW200822629A (en) Method and system of retrieving data safely from company database via instant messaging
Transports NFSv4 C. Lever Internet-Draft Oracle Intended status: Experimental May 29, 2015 Expires: November 30, 2015