新四季網

一種乙太網通信系統及方法

2023-06-27 00:43:21 1

專利名稱:一種乙太網通信系統及方法
技術領域:
本發明涉及網絡通信技術領域,具體涉及一種乙太網通信系統及方法。
背景技術:
在高性能計算領域,網絡通信效率是影響機群並行計算的一個主要因素。VIA(虛擬接口架構)是一個開放的、可擴展的、獨立於具體平臺與實現、具有良好移植性的用戶層通信協議標準。它是一種用戶層通信協議的工業標準,它為機群環境帶來了低延遲、高帶寬、高可靠的通信支持。它定義了基本的通信函數和組織架構,為系統提供所需的性能和可靠性。它在通信硬體和進程保護內存空間之間提供一個VI(虛擬接口),為應用程式提供了一個直接訪問通信硬體的通道,消除了傳統模型的系統開銷。每一個VI表示了一個通信端點,每一對VI端點間可以在邏輯上進行連接,從而實現雙向的點對點的數據傳輸。一個進程可以擁有由一個或多個網卡提供的多個VI;一個網卡適配器提供多個虛擬端點,完成對硬體的復用和多路輸出選擇;通常由OS(作業系統)和驅動完成對數據傳輸的調度;保證已連接的兩個VI的通信可靠性可以由適配器來完成,也可以由應用程式來完成。
對於VIA架構的支持,很多是通過專門的支持VIA架構的通信子系統來實現。這些實現一般採用專用的通信網卡以及交換設備,也有採用可編程的專用網卡來實現VIA協議處理的。這樣的系統協議處理一般在專用的網卡上進行,系統價格相對較高。也有一些可以用於乙太網的、通過軟體來實現的VIA系統,這些系統主要由大學來開發、維護,主要用於對協議的研究的目的。這些系統實現功能簡單,而且一般不支持現有的商用平臺,如Windows作業系統以及現有的常見的乙太網卡,也很少考慮在複雜通信情況下的效率問題。
目前,通過乙太網進行數據傳輸大多採用圖1和圖2所示的兩種結構方式,即數據從用戶應用到網卡將數據轉換成以太數據包進行發送出去,一般要經過兩個模塊,一個是標準的Windows協議模塊,如標準的WindowsNDIS(網絡驅動程序接口規範)協議模塊或者Windows TCP/IP(傳輸控制/網際協議)協議棧處理模塊,還有一個是標準的Windows Miniport網絡驅動,具體根據不同的網卡有不同的實現。圖1所示為數據從用戶應用模塊首先發送到VIA接口代理模塊,然後經過Windows NDIS協議模塊及Windows Miniport網絡驅動模塊將數據轉換成以太數據包通過網卡進行發送;圖2所示為數據從用戶應用模塊經過Windows TCP/IP協議棧處理後,再通過Windows Miniport網絡驅動模塊將數據轉換成以太數據包通過網卡進行發送。
在現有技術中主要針對了VIA的硬體實現架構以及軟體層次中的協議實現機制,如採用序列號機制保證傳輸可靠,減少內存複製次數以及虛擬地址/物理地址轉換機制等。

發明內容
本發明的目的是克服現有技術的上述缺點,提供一種乙太網通信系統及方法,通過減少軟體協議層次的傳輸路徑以及處理內容,以及對不同類型的數據包設置不同的優先級,進一步提高了系統的通信性能。
本發明的目的是通過以下技術方案實現的一種乙太網通信系統,包括
用戶應用接口,用於輸入/輸出用戶信息;虛擬接口代理裝置,耦合到所述用戶應用接口,用於將所述用戶信息轉換成預定格式的數據或反之;虛擬接口協議處理裝置,耦合到所述虛擬接口代理裝置,用於生成包含所述預定格式的數據的數據包或反之;傳輸埠,耦合到所述虛擬接口協議處理裝置,用於連接對應的網絡傳送所述數據包。
所述虛擬接口代理裝置包括格式設定裝置,用於設定數據傳輸格式;用戶數據轉換裝置,耦合到所述格式設定裝置,用於根據所述格式設定裝置設定的數據傳輸格式轉換所述用戶信息。
所述虛擬接口協議處理裝置包括發送處理裝置,耦合到所述用戶數據轉換裝置,用於處理髮送所述預定格式的數據;接收處理裝置,耦合到所述用戶數據轉換裝置,用於接收處理乙太網數據包。
所述發送處理裝置包括發送數據轉換裝置,用於轉換所述預定格式的數據為乙太網數據包;發送機制設定裝置,用於設定不同的數據發送機制;機制選擇裝置,分別耦合到所述發送數據轉換裝置和所述發送機制設定裝置,用於根據所述乙太網數據包的信息選擇對應的數據發送機制;發送驅動裝置,分別耦合到所述發送數據轉換裝置和所述機制選擇裝置,用於驅動所述傳輸埠按照選擇的數據發送機制發送所述發送數據轉換裝置輸出的乙太網數據包。
所述接收處理裝置包括中斷通知裝置,用於當所述傳輸埠收到乙太網數據包時產生中斷通知;接收驅動裝置,耦合到所述中斷通知裝置,用於根據所述中斷通知驅動所述接收裝置接收所述乙太網數據包;接收裝置,用於從所述接收的乙太網數據包中獲取用戶信息;應答裝置,用於向發送端發送應答消息。
所述接收裝置包括接收數據轉換裝置,用於轉換接收的乙太網數據包為預定格式的數據;接收確認裝置,用於當所述接收裝置接收到一個完整的消息後,通知所述應答裝置發送應答消息。
所述傳輸埠包括各種型號的通用網卡。
本發明還提供了一種乙太網通信方法,包括A、設定不同的數據發送機制;B、當數據發送時,轉換用戶數據為乙太網包,並按照所述設定的數據發送機制發送所述乙太網包;C、接收到完整的乙太網包後,發送應答消息。
所述步驟A中不同的數據發送機制包括立即發送和延遲預定時間後發送數據。
所述步驟B包括根據所述乙太網包的類型和/或優先級選擇數據發送機制;根據所述選擇的數據發送機制發送所述乙太網包。
由以上本發明提供的技術方案可以看出,本發明將協議棧驅動和設備驅動合併在一起處理,通過通用的乙太網卡發送數據,降低了系統成本。在數據發送過程中,通過系統調用將數據發送請求直接傳遞給處理模塊。由於在乙太網上可靠連接協議都需要對接收到的數據包進行應答處理,對於不同類型的數據包,處理模塊根據要發送的各種數據包的類型以及優先級對數據包採用不同的方式發送,進一步保證了數據的可靠傳輸,提高了整體效率。


圖1是現有技術中利用NDIS協議進行乙太網數據發送方式示意圖;圖2是現有技術中利用TCP/IP協議進行乙太網數據發送的方式示意圖;圖3是本發明乙太網通信系統結構示意圖;圖4是圖3所示的本發明系統中發送處理裝置的詳細結構示意圖;圖5是圖3所示的本發明系統中接收處理裝置的詳細結構示意圖;圖6是本發明系統的應用實例進行數據發送和接收的流程;圖7是本發明方法的流程圖。
具體實施例方式
為了使本技術領域的人員更好地理解本發明,下面結合附圖和實施方式對本發明作進一步的詳細說明。
參照圖3所示的本發明乙太網通信系統結構示意圖,本發明系統由用戶應用接口30、虛擬接口代理裝置31、虛擬接口協議處理裝置32和傳輸埠33組成。其中,用戶應用接口30用於輸入/輸出用戶信息;虛擬接口代理裝置31耦合到用戶應用接口30,用於將用戶信息轉換成預定格式的數據或反之;虛擬接口協議處理裝置32耦合到虛擬接口代理裝置31,用於生成包含預定格式的數據的乙太網數據包或反之;傳輸埠33耦合到虛擬接口協議處理裝置32,用於連接對應的網絡傳送乙太網數據包。
虛擬接口代理裝置31由格式設定裝置311和用戶數據轉換裝置312組成。其中,格式設定裝置311用於設定數據傳輸格式;用戶數據轉換裝置312耦合到格式設定裝置311,用於根據格式設定裝置311設定的數據傳輸格式轉換用戶信息。在發送時,將需要發送的用戶信息轉換成設定格式的數據,在接收時,按照設定的數據傳輸格式從接收數據中獲取用戶信息。
虛擬接口協議處理裝置32由發送處理裝置321和接收處理裝置322組成。其中,發送處理裝置321耦合到用戶數據轉換裝置312,用於處理髮送預定格式的數據;接收處理裝置322同樣耦合到用戶數據轉換裝置312,用於接收處理乙太網數據包。
發送處理裝置321的詳細結構如圖4所示發送處理裝置321由發送數據轉換裝置41、發送機制設定裝置42、機制選擇裝置43和發送驅動裝置44組成。其中,發送數據轉換裝置41用於將圖3中用戶數據轉換裝置312輸出的包含用戶信息的預定格式的數據轉換為乙太網數據包。
發送機制設定裝置42用於設定不同的數據發送機制,以保證數據傳輸的可靠性,提高系統整體效率。例如,可以根據發送的數據包的類型以及優先級設定不同的發送機制立即發送等待預定時間後發送。
機制選擇裝置43分別耦合到發送數據轉換裝置41和發送機制設定裝置42,用於根據發送數據轉換裝置41輸出的乙太網數據包的信息選擇對應的數據發送機制。
發送驅動裝置44,分別耦合到發送數據轉換裝置41和機制選擇裝置43,用於驅動圖3中的傳輸埠33按照選擇的數據發送機制發送所述發送數據轉換裝置41輸出的乙太網數據包。
接收處理裝置322的詳細結構如圖5所示接收處理裝置322由中斷通知裝置51、接收驅動裝置52、接收裝置53和應答裝置54組成。其中,中斷通知裝置51用於當圖3中的傳輸埠收到乙太網數據包時產生中斷通知。
接收驅動裝置52,耦合到中斷通知裝置51,用於根據中斷通知驅動該接收裝置接收乙太網數據包。
接收裝置53,耦合到接收驅動裝置52,用於從接收的乙太網數據包中獲取用戶信息;它由接收數據轉換裝置531和接收確認裝置532組成,其中,接收數據轉換裝置531用於轉換接收的乙太網數據包為預定格式的數據;接收確認裝置532用於當該接收裝置接收到一個完整的消息後,通知應答裝置發送應答消息。
應答裝置54,耦合到接收確認裝置532,用於向發送端發送應答消息。
為了使本領域的技術人員更好地理解本發明,下面結合圖6詳細說明本發明系統的工作過程。
圖6示出了本發明系統的應用實例進行數據發送和接收的流程數據發送過程具體包括以下步驟步驟1用戶通過用戶應用接口輸入數據發送消息,該消息是一段有固定長度的數據。
步驟2虛擬接口代理裝置按照格式設定裝置預先設定的虛擬格式轉換用戶的數據發送消息,比如,將該消息轉換成相應的數據結構,其中包含請求發送描述符的地址作為系統調用的參數。
步驟3虛擬接口協議處理裝置中的發送處理裝置將轉換後的用戶數據按照乙太網包的形式發送到傳輸埠,在本例中為網卡。它包括以下幾個方面的工作(1)發送數據轉換裝置生成包括用戶發送數據信息的乙太網數據包。由於一個端點可以同時是發送端和接收端,存在模塊中的數據發送部分需要發送數據包以及數據接收部分會發送應答數據包。在這種情況下,數據發送裝置和數據接收裝置都填寫相應的發送數據結構,其中包括要發送的數據包的類型(用一個整數表示)、已經發送的次數(用一個整數表示)。
(2)由發送機制設定裝置設定不同的數據發送機制。比如,可以根據系統實際需要,設置以下兩種發送機制立即通過網卡發送,如果不成功,如緩衝區滿,則立即重試直到發送成功;另一種為延遲預定時間後通過網卡發送,如果不成功,則根據類型以及參數等待一段時間後再進行發送。具體的等待時間,可以用數據包的類型(用一個整數表示)、已經發送的次數(用一個整數表示)乘以相應的比例係數得到最終的時間。比如,可以設定等待時間=時間係數*發送類型*(最多發送次數-已經嘗試發送次數)*(一個一定範圍內的隨機數)。
(3)由機制選擇裝置根據數據包的信息(比如,數據包的類型和優先級)選擇某一種發送機制。
(4)由發送驅動裝置按照選定的發送機制驅動網卡輸出包含用戶信息的乙太網數據包。
步驟4乙太網包通過乙太網到達接收端。
步驟5通過網卡接收乙太網數據包,它包括以下兩方面的工作(1)斷通知裝置產生中斷通知接收驅動裝置有數據包到來;(2)接收驅動裝置收到中斷通知後驅動接收裝置接收數據包。
步驟6為了實現乙太網的可靠傳輸,當接收裝置確認已經收到了一個完整的消息時,由應答裝置向發送端發送一個應答消息,其中包含收到的消息的標示來說明接收端收到了相應的數據。
步驟7當接收裝置確認已經收到了一個完整的消息時,會根據以太包中的相應的數據結構,如數據長度、數據在描述符中的偏移等內容將數據包中的用戶應用要求的數據複製到相應的緩衝區中,填好收到消息的描述符的結構;並通知虛擬接口代理裝置。
步驟8虛擬接口代理裝置從相應的緩衝區中提取用戶信息傳送給用戶,同時返回收到消息的信息。
步驟9乙太網包通過乙太網到達發送端。
上述步驟7、步驟8和步驟9可以同時進行。
步驟10發送端由網卡接收乙太網數據包,同樣包括以下工作(1)中斷通知裝置產生中斷通知接收驅動裝置有數據包到來;(2)接收驅動裝置收到中斷通知後驅動接收裝置接收數據包,當判斷出是一個應答包的時候,會修改發送描述符中的相應標誌位,表示發送成功。
步驟11虛擬接口協議處理裝置通知虛擬接口代理裝置發送結束。
步驟12虛擬接口代理裝置發送結束消息通知用戶應用接口發送結束,該消息中包括發送是否成功信息。
下面參照圖7所示流程對本發明方法作詳細說明用戶數據發送時,包括以下步驟步驟701設定不同的數據發送機制,包括立即發送和延遲預定時間後發送,立即發送表示如果發送不成功,則立即重試直到發送成功;延遲預定時間後發送表示如果發送不成功,則根據數據包類型及其它參數等待一段時間後再進行發送,具體的等待時間,可以用數據包的類型(用一個整數表示)、已經發送的次數(用一個整數表示)乘以相應的比例係數得到最終的時間。比如,可以設定等待時間=時間係數*發送類型*(最多發送次數-已經嘗試發送次數)*(一個一定範圍內的隨機數)。
步驟702接收用戶數據信息;步驟703將用戶信息轉換成虛擬格式數據,比如,設定一種數據結構,將用戶數據信息填充到數據結構對應的位置上。
步驟704將虛擬格式數據轉換成乙太網數據包;步驟705根據乙太網包的類型和/或優先級選擇數據發送機制;步驟706根據選擇的數據發送機制發送乙太網數據包。
用戶數據接收時,包括以下步驟步驟711接收乙太網數據包;步驟712判斷接收的數據包是否結束,也就是說是否接收到了一個完整的消息;如果未結束,則返回步驟711繼續接收乙太網數據包;否則,進到步驟713判斷接收的數據包是否為應答包;如果是應答包,則進到步驟716通知用戶發送結束,該消息中包括是否發送成功信息;否則,進到步驟714從乙太網數據包中獲取用戶信息;進到步驟715將獲取的用戶信息發送給用戶。
雖然通過實施例描繪了本發明,本領域普通技術人員知道,本發明有許多變形和變化而不脫離本發明的精神,希望所附的權利要求包括這些變形和變化而不脫離本發明的精神。
權利要求
1.一種乙太網通信系統,包括用戶應用接口,用於輸入/輸出用戶信息;虛擬接口代理裝置,耦合到所述用戶應用接口,用於將所述用戶信息轉換成預定格式的數據或反之;虛擬接口協議處理裝置,耦合到所述虛擬接口代理裝置,用於生成包含所述預定格式的數據的數據包或反之;傳輸埠,耦合到所述虛擬接口協議處理裝置,用於連接對應的網絡傳送所述數據包。
2.如權利要求1所述的乙太網通信系統,其中,所述虛擬接口代理裝置包括格式設定裝置,用於設定數據傳輸格式;用戶數據轉換裝置,耦合到所述格式設定裝置,用於根據所述格式設定裝置設定的數據傳輸格式轉換所述用戶信息。
3.如權利要求1或2所述的乙太網通信系統,其中,所述虛擬接口協議處理裝置包括發送處理裝置,耦合到所述用戶數據轉換裝置,用於處理髮送所述預定格式的數據;接收處理裝置,耦合到所述用戶數據轉換裝置,用於接收處理乙太網數據包。
4.如權利要求3所述的乙太網通信系統,其特徵在於,所述發送處理裝置包括發送數據轉換裝置,用於轉換所述預定格式的數據為乙太網數據包;發送機制設定裝置,用於設定不同的數據發送機制;機制選擇裝置,分別耦合到所述發送數據轉換裝置和所述發送機制設定裝置,用於根據所述乙太網數據包的信息選擇對應的數據發送機制;發送驅動裝置,分別耦合到所述發送數據轉換裝置和所述機制選擇裝置,用於驅動所述傳輸埠按照選擇的數據發送機制發送所述發送數據轉換裝置輸出的乙太網數據包。
5.如權利要求3所述的乙太網通信系統,其特徵在於,所述接收處理裝置包括中斷通知裝置,用於當所述傳輸埠收到乙太網數據包時產生中斷通知;接收驅動裝置,耦合到所述中斷通知裝置,用於根據所述中斷通知驅動所述接收裝置接收所述乙太網數據包;接收裝置,用於從所述接收的乙太網數據包中獲取用戶信息;應答裝置,用於向發送端發送應答消息。
6.如權利要求5所述的乙太網通信系統,其特徵在於,所述接收裝置包括接收數據轉換裝置,用於轉換接收的乙太網數據包為預定格式的數據;接收確認裝置,用於當所述接收裝置接收到一個完整的消息後,通知所述應答裝置發送應答消息。
7.如權利要求1所述的乙太網通信系統,其特徵在於,所述傳輸埠包括各種型號的通用網卡。
8.一種利用乙太網通信的方法,其特徵在於,所述方法包括A、設定不同的數據發送機制;B、當數據發送時,轉換用戶數據為乙太網包,並按照所述設定的數據發送機制發送所述乙太網包;C、接收到完整的乙太網包後,發送應答消息。
9.如權利要求8所述的方法,其特徵在於,所述步驟A中不同的數據發送機制包括立即發送和延遲預定時間後發送數據。
10.如權利要求9所述的方法,其特徵在於,所述步驟B包括根據所述乙太網包的類型和/或優先級選擇數據發送機制;根據所述選擇的數據發送機制發送所述乙太網包。
全文摘要
本發明提供了一種乙太網通信系統及方法,該系統包括用戶應用接口,用於輸入/輸出用戶信息;虛擬接口代理裝置,耦合到用戶應用接口,用於將用戶信息轉換成預定格式的數據或反之;虛擬接口協議處理裝置,耦合到虛擬接口代理裝置,用於生成包含預定格式的數據的數據包或反之;傳輸埠,耦合到虛擬接口協議處理裝置,用於連接對應的網絡傳送數據包。該方法包括設定不同的數據發送機制;當數據發送時,轉換用戶數據為乙太網包,並按照設定的數據發送機制發送乙太網包;接收到完整的乙太網包後,發送應答消息。利用本發明,可以增強系統的通用性、保證數據的可靠傳輸,提高了整體效率、降低成本。
文檔編號H04L29/06GK1556607SQ200410000118
公開日2004年12月22日 申請日期2004年1月5日 優先權日2004年1月5日
發明者談華芳, 袁林, 朱晨露 申請人:聯想(北京)有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀