TWI794645B - 傳輸資料包的方法和實施該方法的裝置 - Google Patents

傳輸資料包的方法和實施該方法的裝置 Download PDF

Info

Publication number
TWI794645B
TWI794645B TW109131657A TW109131657A TWI794645B TW I794645 B TWI794645 B TW I794645B TW 109131657 A TW109131657 A TW 109131657A TW 109131657 A TW109131657 A TW 109131657A TW I794645 B TWI794645 B TW I794645B
Authority
TW
Taiwan
Prior art keywords
transmission
time
priority
queue
data
Prior art date
Application number
TW109131657A
Other languages
English (en)
Other versions
TW202114386A (zh
Inventor
羅曼 羅雷特
Original Assignee
日商三菱電機股份有限公司
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 日商三菱電機股份有限公司 filed Critical 日商三菱電機股份有限公司
Publication of TW202114386A publication Critical patent/TW202114386A/zh
Application granted granted Critical
Publication of TWI794645B publication Critical patent/TWI794645B/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/6215Individual queue per QOS, rate or priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Small-Scale Networks (AREA)

Abstract

提供一種用於傳輸資料包的方法,其包括,在多個連續時間週期中的當前傳輸週期,當前週期包括多個連續時間區間:獲得一或多個第一資料包,一或多個第一資料包之個別第一元資料,及與一或多個第一資料包相關的第一傳輸優先,其中,該一或該多個第一資料包儲存於處理器之記憶體中;基於第一傳輸優先,將第一元資料添加至處理器之記憶體中的第一等待佇列;在為與第一優先相關之資料包的傳輸保留之當前傳輸週期的第一時間區間,自第一等待佇列將第一元資料傳輸至端口傳輸佇列,其中,端口傳輸佇列係包括於處理器與媒體存取控制控制器之間的資料通訊端口;以及基於在端口傳輸佇列之第一元資料,將傳輸媒介上之一或多個第一資料包通過媒體存取控制控制器(MAC controller)中自記憶體至傳輸佇列之一或多個第一資料包的傳遞而傳輸。

Description

傳輸資料包的方法和實施該方法的裝置
本發明係關於在封包資料網路中之封包通訊的領域,特別係關於在網路中時效性封包之傳遞。
時效性網路(Time-Sensitive Networking, TSN)係由IEEE 802.1工作組之對時間敏感之網路的任務組所開發之一組標準,其在乙太網路中對於時間敏感或時序要求嚴格的資料傳輸提供方案。上述應用包括在汽車或工業網路中,即時的音頻/視頻流及對時序要求嚴格的控制訊號(如:即時的控制訊號)。可使用IEEE 802.1 Qbv時間感知調度器(time-aware scheduler)以提供時效性網路框架之準時的傳遞。
IEEE 802.1 Qbv係界定在時間表上傳輸某些時效性網路乙太框架的方法,從而允許非時效性乙太框架盡其所能在時效性網路框架傳輸。由於所有網路節點係為同步,因此支援IEEE 802.1 Qbv的裝置可非常快速地將關鍵通訊以非常低的抖動傳遞。
然而,IEEE 802.1 Qbv存取控制機制需要乙太傳輸器使能將具有良好準確度(<200ns)的精確時間之一些乙太框架傳輸以遵守使用在IEEE 802.1 Qbv的時間片段。那些用於與標準乙太框架共存之時序要求嚴格的傳輸之乙太框架係以如802.1 Q所引用之存取控制機制傳輸。那樣的效能需求通常導致特定乙太媒體存取控制(media access control, MAC)之控制器的開發,也就是說,控制器具有對於時效性網路支援開發的特定延伸。如此嚴重限制時效性網路的使用,不僅在於成本的因素,而且時效性網路無法使用於市面上低成本的微控制器裝置。
因此亟需提供用於傳輸資料包及網路節點以及其施行之改進方法以解決至少一些上述從屬領域中習知技術的缺陷及缺點。
本發明之目的在於提供對於傳輸資料包及設備以及其施行之改進方法。
本發明之另一目的在於提供對於傳輸資料包及設備以及其施行之改進方法,進而減少上述習知在計算機網路中,特別是在乙太網路中,時效性資料傳遞方案的缺陷及缺點。
然而,本發明之另一目的在於提供對於傳輸資料包及設備以及其施行之改進方法,以用於傳輸一些以太框架於需要準確度的特定時間,以及管理如IEEE 802.1 qbv標準中界定之不同的時間片段。
為了依據本發明的目的以達到這些目標及其他優點,如內文所體現及廣泛地描述,本發明之一態樣中,提出一種傳輸資料包之方法。該方法包括:在多個連續時間週期中的當前傳輸週期,當前傳輸週期包括多個連續時間區間:獲得一或多個第一資料包,一或多個第一資料包之個別第一元資料,及與一或多個第一資料包相關的第一傳輸優先,其中,一或多個第一資料包儲存於處理器之記憶體中;基於第一傳輸優先,將第一元資料添加至處理器之記憶體中的第一等待佇列;在為與第一優先(first priority)相關之資料包的傳輸保留之當前傳輸週期的第一時間區間,自第一等待佇列將第一元資料傳輸至端口傳輸佇列(interface transmission queue),其中,端口傳輸佇列係包括於處理器與媒體存取控制控制器之間的資料通訊端口(data communication interface);以及基於在端口傳輸佇列之第一元資料,將傳輸媒介上之一或多個第一資料包通過媒體存取控制控制器中自記憶體至傳輸佇列之一或多個第一資料包的傳遞而傳輸。
本發明提出之方法能有益地被實行以操作任何嵌入標準媒體存取控制乙太控制器的裝置,例如IEEE 802.1 Qbv調度器對於乙太框架之時效性的傳遞之使用。本發明提出之方法確實能施行於軟體中,使用專門為嵌入式應用程式設計之即時的操作系統。進一步地,本發明提出之方法能有益地施行以操作嵌入標準媒體存取控制乙太控制器之小的微控制器裝置,小的微控制器裝置能廣泛地使用於汽車或工業網路中。
在一或更多實施例中,本發明提出之方法可進一步包括,獲得第二資料包、第二資料包之第二元資料、及與第二資料包相關的第二傳輸優先,其中,第二資料包儲存於處理器之記憶體中;基於第二傳輸優先,將第二元資料添加至處理器之記憶體中的第二等待佇列;在第一時間區間中,第一優先傳輸時間間隔(first priority transmission time slot)致力於具有第一優先的資料包之傳輸且第一優先傳輸時間間隔被包括於第一時間區間中之後,自第二等待佇列將第二元資料傳輸至端口傳輸佇列;以及在接續第一時間區間之當前傳輸週期的第二時間區間,基於在端口傳輸佇列中之第二元資料,將傳輸媒介上之第二資料包通過媒體存取控制控制器中自記憶體至傳輸佇列的第二資料包的傳遞而傳輸。
在一或更多實施例中,第一時間區間及第二時間區間係為連續且沒有重疊。
在一或更多實施例中,本發明提出之方法可進一步地包括:獲得第二資料包、第二資料包之第二元資料、及與第二資料包相關的第二傳輸優先,其中,第二資料包儲存於處理器之記憶體中;如果第二資料包未在第一時間區間中獲得,將第二元資料添加至端口傳輸佇列;以及在為與第二優先相關之資料包的傳輸保留之當前傳輸週期的第二時間區間,基於在端口傳輸佇列中之第二元資料,將傳輸媒介上之第二資料包通過媒體存取控制控制器中自記憶體至傳輸佇列的第二資料包的傳遞而傳輸。
在一或更多實施例中,第一傳輸優先係用於資料包之即時的傳輸,且第二傳輸優先係用於資料包之非即時的傳輸。
在一或更多實施例中,本發明提出之方法可進一步地包括:自經由處理器執行之一或多個第一工作,接收傳輸媒介上用於一或多個第一資料包之傳輸的一或多個請求;其中,各請求包含第一傳輸優先、或與第一傳輸優先相關的一或多個第一工作。
在一或更多實施例中,媒體存取控制控制器在第一時間區間中包括之第一優先傳輸時間間隔(其係致力於具有第一優先的資料包之傳輸)中傳輸一或多個第一資料包,該方法復包括:在第一傳輸禁止時間區間及/或第二傳輸禁止時間區間禁止在媒體存取控制控制器的資料傳輸,其中,第一傳輸禁止時間區間在第一時間區間的第一優先傳輸間隔之前發生,且第二傳輸禁止時間區間在第一時間區間的第一優先傳輸時間間隔之後發生。
在一或更多實施例中,在媒體存取控制控制器之資料傳輸禁止期間,當前傳輸週期包括時間保護區間,其係在第一時間區間之前立即發生。
在一或更多實施例中,在第一時間區間的第一優先傳輸時間間隔之終點之後,第二資料包自第二等待佇列傳輸至端口傳輸佇列。
在一或更多實施例中,第一元資料自第一等待佇列傳輸至端口傳輸佇列,且基於端口傳輸佇列中之第一元資料,在第一時間區間的第一優先傳輸時間間隔之起點之前的第一預定時間之後,一或多個第一資料包自記憶體傳輸至傳輸佇列。
在一或更多實施例中,本發明提出之方法可進一步地包括:經由媒體存取控制控制器,在第一時間區間的第一優先傳輸時間間隔之起點之前的第二預定時間之後,啟用傳輸媒介上之一或多個第一資料包的傳輸。
在一或更多實施例中,本發明提出之方法可進一步地包括:在第一時間區間的第一預定時間之後,禁止具有第一傳輸優先的資料包的接收,以及在第一優先傳輸時間間隔期間,經由媒體存取控制控制器之第一傳輸優先的資料包尚未完成傳輸。
在一或更多實施例中,本發明提出之方法可進一步地包括:基於對應具有第一傳輸優先相關的第一資料包之累積大小所對應之資料數量的決定,在第一優先傳輸時間間隔致力於具有第一優先之資料包的傳輸且其包括在第一時間區間中,添加至第一等待佇列之第一元資料可被傳輸。
在本發明之另一態樣中,提出一種設備,其包括有處理器、可操作地耦接至處理器之記憶體、及在計算機網路中通訊之網路端口,其中,設備係組構以實施本發明中提出之用於傳輸資料包的方法之一或更多實施例。
在本發明之另一態樣中,一種非暫時性之計算機可讀之媒介以可執行之指令編碼,當執行時,提出一種設備,其設備包括有可操作地與記憶體耦接的處理器以執行如本發明提出之用於傳輸資料包的方法。
在本發明之另一態樣中,提出一種計算機程式產品,其包括實際嵌入計算機可讀取媒介中之計算機程式代碼,該計算機程式代碼包括,當提供指示至計算機系統並執行時,造成計算機實行本發明所提出用於傳輸資料包之方法。在本發明之另一態樣中,提出一種資料組,其經過例如壓縮或編碼而表示在此提出之一種計算機程式。
應當理解本發明可被實行及利用在很多方面,包括不被侷限之製程、裝置、系統、設備、及現今已知及隨後開發之應用程式的方法。本文所揭系統的這些及其他獨特的特徵從後續描述及附圖中將變得更加顯而易見。
藉由參考以下附圖並結合於隨附的說明書,將更好理解本發明的揭露,以及其眾多目的及優點對於從屬領域具通常知識者來說將變得更加顯而易見。
為了簡化說明,附圖說明一般的構造方式,且習知特徵及技術的描述及細節可省略以避免不必要地含糊本發明所描述之實施例的討論。再者,附圖中的元件並非以等比例繪製。例如,附圖中一些元件的尺寸可能相對於其他元件更加誇大以幫助理解本發明之實施例。某些圖式可以理想化的方式繪製以幫助理解,如當顯示之結構具有直線、銳角、及/或平行之平面或類似者,其在現實情況下可相當地減少其對稱性及佇列。相同的元件符號在不同的附圖中表示相同的元件,然而相似的元件符號可但不一定表示相似的元件。
此外,應當顯而易見的是,本文所教示的實施例可用多種方式來體現,任何揭露之特定結構及/或功能僅為示例性。特別的是,從屬領域具通常知識者將理解本文所揭之態樣可以在任何其他態樣中獨立施行且多種態樣能以各種方式結合。
本發明揭露係參照一或更多示例性實施例之方法、系統、及計算機程式之功能、引擎、方塊圖及流程圖來描述。各描述之功能、引擎、方塊圖之方塊、及流程圖可實行於硬體、軟體、韌體、中介軟體、微指令、或其任何合適之組合。如果實行於軟體,功能、引擎、方塊圖之方塊及/或流程圖可經由計算機程式指令或軟體編碼實行,其可於可讀式計算機媒介上儲存或傳輸,或負載於一般目的之計算機、特殊目的之計算機、或其他可編程資料處理之設備以產生機器,以使計算機程式指令或軟體編碼執行於計算機上或其他可編程資料處理設備上,以建立用於實行本文所述之功能的方法。
可讀式計算機媒介之實施例包括,但不侷限於此,計算機儲存媒體及通訊媒體皆包括促進計算機程式從一地傳輸至另一地之任何媒介。如本文所述,「計算機儲存媒體」可為經由計算機或處理器存取之任何實體性之媒體。此外,術語「記憶體」及「計算機儲存媒體」包括任何類型之資料儲存裝置,例如,但不限定為,硬碟、隨身碟、或其它閃存記憶體裝置(例如:記憶鍵(memory keys)、記憶棒(memory sticks)、鍵傳動(key drive))、CD-ROM、或其它光學儲存器、DVD、磁碟儲存器、或其他磁性儲存裝置、存儲器片(memory chip(s))、隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電性抹除式可複寫唯讀記憶體(EEPROM)、智能卡、或可用以藉由計算機處理器讀取之指令、資料結構、或其組合之形式攜帶或儲存程式編碼之任何其他合適的媒體。再者,可讀式計算機媒介之各種形式可傳輸或攜帶指令至計算機,其包括路由器、閘道器、伺服器、或其它傳輸裝置、有線的傳輸裝置(同軸電纜、光纖、雙絞線、DSL電纜)、或無線的傳輸裝置(紅外線、無線電、行動通訊(cellular)、微波)。指令可包括,包含但不侷限於,匯編語言、C語言、C++語言、Python、Visual Basic、SQL、PHP、及JAVA之任何計算機編程語言中之編碼。
除非有另外特別陳述,應當理解經過後續之描述討論使用術語如「處理」、「運算」、「計算」、「決定」、或類似者,指稱計算機或運算系統或相似電子運算裝置之動作或處理,其將表示實體性例如運算系統之寄存器或記憶體內的電子、量子之資料操作或傳輸至其他相似地表示如記憶體、寄存器、或運算系統之其他資訊儲存、傳輸、或顯示裝置內的物理量之資料。
術語「包括」、「包含」、「具有」及其變化係用以涵蓋非排他性之包含,以使包括一排元件之製程、方法、項目、或設備不必侷限於該些元件,但可包含沒有明確列出或固有於該製程、方法、項目、或設備之其他元件。
另外,「示例性」的用語在此表示作為範例、例子、或說明。本文在此描述之「示例性」之任何實施例不必解釋為相較其他實施例或設計較佳或具有優點。
在後續實施方式及申請專利範圍中,術語「耦接」及「連接」以及它們的衍生詞可無差別地用於指出二或更多元件直接彼此物理性或電子性的接觸,或二或更多元件並不直接彼此接觸,但仍彼此合作或互動。
在後續實施方式及申請專利範圍中,術語「有效載荷」、「有效載荷資料」、「訊息」、「封包」、及「資料包」可無差別地使用,且可包括資料塊、協定資料單元、或可於節點、站點之間、或跨越網路之間經過路由或傳輸之任何資料單元。封包可包括一群位元,其可包含例如一或更多個位址域、控制域及資料。資料塊可為任何資料單元或資訊位元。
對於本發明之目的而言,本文使用之術語「伺服器」係指稱提供處理、資料庫、及通訊設施之服務點。舉例來說,但不侷限於此,術語「伺服器」可指稱與通訊、資料儲存、及資料庫設施相關聯之單一且實體的處理器,或可指稱網路化或聚集複雜的處理器且與網路及儲存裝置相關,以及操作性軟體、一或更多個資料庫系統、及支援伺服器提供之服務的應用程式軟體。伺服器可於構造上或性能上廣泛地變化,但通常伺服器可包括一或更多個中央處理單元及記憶體。伺服器也可包括一或更多個大容量儲存器裝置、一或更多個電源、一或更多個有線或無線的網路端口、一或更多個輸入/輸出端口、或一或更多個操作性系統,如Windows Server、Mac OS X、Unix、Linux、FreeBSD、或類似者。
對於本發明之目的而言,「計算機網路」應當理解表示可耦接裝置(亦在本文表示「節點」)之網路,以使資料通訊可發生於裝置之間,包括例如,可操作地經由無線網路連接之無線裝置之間。網路亦可包括大容量儲存器,例如網路附加儲存(network attached storage, NAS)、儲存區域網路(storage area network, SAN)、或計算機或可讀式機器媒體之其他形式,例如,可包括或操作地連接至伺服器。網路可包含網際網路,一或更多區域網路(LANs)、一或更多廣域網路(WANs)、線狀類型連接、無線類型連接、行動通訊、如載波電話線、光學光纖、同步光學網路、同步數位層次結構鏈接、電力線通訊鏈接(例如:IEEE 61334、IEEE P1901.2)、乙太網路、藍芽、藍芽低功耗(Bluetooth Low Energy, BLE)或藍芽智能(Bluetooth Smart)、WiFi、或任何基於IEEE 802.11x協定、ZigBee、或任何基於IEEE 802.15.4協定、Z-Wave、6LowPAN(IPv6 Low-power wireless Personal Area Network)、Thread、Sigfox、Neul、LoRa、任何NFC連接、2G(包括:GSM/GPRS/EDGE)/3G(包括:UMTS/HSPA)/4G(包括LTE及LTE-Advanced)/5G 行動通訊、或其任意組合。多種裝置的類型,例如閘道器,可用於為網路中使用地不同架構或協定提供相互操作性能力。根據本發明之揭露,任何數量之節點、裝置、設備、鏈接、互連等可使用於計算機網路中。
通訊鏈接或通道可包括例如,類比電話線、全部或片段性數位線、包括衛星鏈接之無線鏈接、或其他通訊鏈接或通道,如所屬領域具通常知識者所習知。
網路之運算裝置,例如感應器節點或致動器節點,可致能傳輸或接收訊號,如經由有線的或無線的網路,及/或可致能處理及/或儲存資料。
應當理解本發明揭露之實施例可使用於各種應用上。雖然本發明不侷限於此態樣,本文所揭用於傳輸資料包之方法可使用於很多設備,例如在封包切換網路之網路節點、例如乙太網路(例如:乙太網路交換機、乙太網路橋接器、或乙太網路路由器)之網路節點。為了使本發明更清楚,後續描述著重於乙太網路。然而,本發明之技術特徵並不侷限於此。
如上揭所討論,時效性網路係為IEEE 802.1所定義之技術以對於乙太網路上即時的通訊提供確定性消息傳遞於標準化乙太網路上,特別是對於自動化及工業網路上。當允許非時效性網路乙太框架盡其所能圍繞時效性網路框架傳輸時,根據傳輸時間表,在802.1 QBV 時效性網路元件上解決了時效性網路框架之按時傳遞的問題,其係界定用於傳輸某些乙太網路框架之方案,其傳輸係為時效性(在下文中指稱為「時效性網路框架」或「即時的框架」)。
經由IEEE 802.1時效性網路工作群所界定不同之時效性網路標準可分類為三個元件群組: (1) 時間同步化:在時效性網路的時間通常自主資源分配至全部網路節點。在大部分案例中,使用IEEE 1588精細時間協定以完成,其使用乙太框架以分配時間同步化資訊。 (2) 調度與流量成型:調度及流量成型允許在相同網路中,具有不同優先的不同流量類別之共存性。時效性網路經由添加機制以增進標準乙太網路之通訊以確保依軟硬性即時需求按時傳遞。 (3) 通訊通道、通道預留、及容錯機制的選擇。
關於對於每個優先之調度元件,使用者可自不同存取控制及調度機制選擇如何進行乙太網路框架。因而,一些優先可分配至已存在之方法(如IEEE 802.1 Q嚴格優先調度器)或一些新處理方法,如時效性網路 IEEE 802.1 Qbv時間感知流量調度器。
IEEE 802.1 Qbv時間感知調度器被設計以將乙太網路上的通訊以固定長度分割,並以時間週期重複。在這些週期內,不同時間片段可組構以被分配至一或多個乙太網路優先。此時間片段方案可用以將具有嚴格即時約束的流量類別授予乙太網路傳輸媒介專用。此專用存取消除了在乙太網路交換傳輸緩衝器中的緩衝影響,且時序要求嚴格的流量可在沒有非確定性干擾下傳輸。時間片段可視為虛擬通訊通道,且致能從非時序要求嚴格的背景流量分離時序要求嚴格的通訊。
當乙太網路端口開始傳輸媒介上框架之傳輸,傳輸必須在另一傳輸發生前完全地完成。因此,IEEE 802.1 Qbv時間感知調度器必須確保當調度器從一時間片段切換至下一時間片段時,乙太網路端口不忙碌於框架的傳輸。為了實現上揭內容,插入保護帶(guard band)於每個時序要求嚴格流量的時間片段的前面。在此保護帶的期間,不允許傳輸器開始新的傳輸,且僅已在進行的傳輸可被完成。保護帶期間係取決於框架尺寸的最大值及資料鏈接速度。
圖1顯示二連續時間週期的例示之序列,每個連續時間週期包括二時間片段及一保護帶。例示之序列中,在兩個時間片段之間,第一時間片段(#1)組構以與對應時序要求嚴格的流量之最高優先(VLAN 優先 7)相關聯,以使僅時序要求嚴格之標記為VLAN 優先 7的時效性網路框架在第一時間片段被傳輸。第二時間片段(#2)組構以與對應非時序要求嚴格的流量之一或更多較低優先(VLAN 優先 0至6)相關聯,且該優先係根據標準IEEE 802.1 Q協定處理用於在第一時間片段期間非時序要求嚴格的時效性網路框架之傳輸。
保護帶係位於時間片段之結束點,且立即在後續時間週期之第一時間片段(#1)之前。
時效性網路界定了至多8個優先層級,優先層級(0…7)亦可分別與8個時間片段(1…8)相關聯。
在另一實施例中,3組優先層級(優先7、優先6、及優先0…5)亦可分別與8個時間片段(1、2、及3)相關聯。
為了減少經由引用保護帶之帶寬的損失,IEEE 802.1 Qbv標準引入長度感知調度機制,其檢查在沒有任何後續片段的侵害下框架是否能在保護帶內傳輸(具有高優先)。
現代的微控制器(microcontroller units, MCUs)典型地包含一些乙太網路媒體存取控制(Medium Access Controller, MAC)的周邊設備。其藉由減少元件的數量以減少整體的成本。現在市面上,乙太網路控制器嵌入微控制器中且低成本的微處理器(MPUs)符合基本的IEEE標準,如10BASE-T/100BASE-TX 802.3於乙太網路微控制器,1588-2008於精確網路時鐘同步化。微控制器支援10/100 Mbps資料傳輸速率且大部分微控制器也支援IEEE 802.1 Q VLAN標註偵測。微控制器使用整合的直接記憶體存取(Direct Memory Access, DMA)支援高效的資料記憶傳輸。主中央處理單元(CPU)及媒體存取控制的周邊設備之間的資料交換機制係基於雙緩衝區(環)或鏈接表(鍊)描述(descriptors)及可編程干擾以使其系統實行具靈活性且有效率。
然而,上揭內容不支援乙太網路優先且僅實行一佇列予傳輸及接收。所提出的方法可有益地克服一些在軟體實行之實施例的限制,例如,取決於實施例,可讀式計算機程式編碼組構以藉由微控制器或低成本之微處理器執行,用以導致微控制器(與低成本的微處理器分別地)實行一或更多本發明所提出之方法的實施例。如此軟體的實行可有益地使用即時作業系統(real-time operating system, RTOS),其係非常適合使用微控制器或低成本之微處理器於所揭之嵌入式應用程式中。
媒體存取控制的周邊設備典型地也實行用於傳輸或接收資料包的內部快速先進先出(First-In-First-Out, FIFO)記憶體組,例如乙太網路框架。
圖2顯示媒體存取控制控制器(10)之方塊示意圖,其可操作地連接至實體層(physical layer, PHY) 端口(11)於一端點,及至記憶體匯流排端口(15)於另一端點。
媒體存取控制控制器(10)與處理器之記憶體之間的資料交換驅使媒體存取控制控制器(10)自(分別傳輸至)記憶體匯流排(15),經過直接記憶體存取控制器(13)可操作地連接至傳輸/接收(transmit/receive, TX/RX)控制器(12),可操作地連接至處理器之記憶體被接收。
直接記憶體存取控制器(13)包括傳輸側直接記憶體存取控制器(13a)、及接收側直接記憶體存取控制器(13b),並且係經由直接記憶體存取控制單元(14)驅動。在資料包傳輸通道上,傳輸側直接記憶體存取控制器(13a)組構以從記憶體匯流排(15)接收資料包的傳輸至傳輸/接收控制器(12)。在資料包接收通道上,接收側直接記憶體存取控制器(13b)組構以從傳輸/接收控制器(12)接收資料包的傳輸至記憶體匯流排(15)。
直接記憶體存取控制單元(14)操作性地連接至直接記憶體存取控制器(13)及至媒體存取控制控制器(10),且其組構以啟用/停用直接記憶體存取之傳遞。在資料包傳輸通道上,傳輸/接收控制器(12)包括組構以自傳輸側直接記憶體存取控制器(13a)接收資料包之傳輸至直接記憶體存取控制器(10)的傳輸先進先出記憶體(12a)。在資料包接收通道上,傳輸/接收控制器(12)包括組構以自直接記憶體存取控制器(10)接收資料包之傳輸至接收側直接記憶體存取控制器(13b)的接收先進先出記憶體(12b)。
實體層端口(11)包括資料傳輸通道及資料接收通道,其中,資料傳輸通道上的資料係從直接記憶體存取控制器(10)接收且在實體性的媒介上傳輸,例如,在乙太網路傳輸的同軸電纜上,以及資料接收通道上的資料從實體性的媒介上接收,並傳輸至媒體存取控制控制器(10)。
在一或更多實施例中,即時系統可視為互動即時過程組,各即時過程產生在有限時間內響應外部事件的一些反應。即時作業系統(RTOS)係為其內部過程遵守硬性或軟性即時需求之作業系統。即時作業系統之典型特徵包含可預測性及確定性,其可預測性如同工作排程是可預測的,且其確定性如同在相同條件下持續產生相同的結果。
進程及進一步來說的系統可分類在以下即時進程的類別之一:
非即時:非即時系統係為一種系統,其中,沒有最終期限參與系統操作。
軟性即時:軟性即時系統係為一種系統,其中,未能在最終期限完成會產生不良影響,但系統仍能容忍。不良影響包含例如性能下降。
硬性即時:硬性即時系統係為一種系統,其中,未能在最終期限完成對於系統操作會產生嚴重的影響。
即使在即時作業系統中,進程永遠不會在固定時間中作出反應,因為任何物理性的進程必然會在足夠短的時間範圍內產生響應時間之抖動。圖3顯示反應時間,即經由給定即時進程以反應特別事件的需求時間,且與抖動(dT)(即,偏差)相關。
圖3顯示三個時間線,分別說明事件的發生、對於反應之發生的最小時間、及反應之發生與對於反應之發生的最小時間之間測量延遲的抖動。
頂部時間線說明事件發生於給定時間te。即時作業系統不會在最小反應時間T之前反應在時間te的事件之發生,以使在最佳案例中該反應可發生在時間te+T上,其顯示在中間的時間線。換言之,中間的時間線說明事件之發生後續的反應時間之最佳情況。底部時間線說明事件之發生後續的反應時間之最糟情況,即時作業系統在經由抖動長度dT而增加之最小反應時間T 之前不會反應事件的發生,以使反應發生於時間te+T+dT。
通常嵌入即時作業系統會有兩種進程:工作及中斷服務程式(Interrupt Service Routines, ISR)。中斷服務程式及工作可視為相似的,其差異在於中斷服務程式的執行不能等待(否則,系統會塞住),然而工作能等待直到執行。經由中斷觸發的中斷服務程式在觸發時被執行,然後終止。不像中斷服務程式,工作可被視為系統內的虛擬中央處理單元具有自己的一組寄存器以及記憶體堆疊處。
即時作業系統提供同步化工具以允許過程之間,例如工作與中斷服務程式之間,的互動。提供一些特定目標以使工作在一些被中斷所觸發的外部事件上可以等待。舉例來說,一些即時作業系統可提供佇列、郵箱、訊號燈(semaphore)、及互斥鎖(mutual exclusion)。
如上揭內容所述,IEEE 802.1 Qbv存取控制機制需要乙太網路傳輸器致能在具有良好精確(例如,精確度嚴格地位於200ns以下)的準確時間上傳輸某些乙太網路框架(所謂的即時乙太網路框架),從而將傳輸限定在IEEE 802.1 Qbv所界定的時間片段中。即時框架通常與先前框架(legacy frame)(亦即,非即時框架)共存,其可使用如IEEE 802.1 Q所引起的存取控制機制傳輸。使用非特定的乙太網路媒體存取控制控制器(即,如圖2所示沒有對於時效性網路支援之任何特定延伸的控制器),需要數個微秒(μs)以啟動乙太網路傳輸自動機,以傳輸資料至控制器內部之記憶體,以傳輸資料框架至乙太網路實體層控制器。然而,此延遲性能與IEEE 802.1 qbv需求並不兼容。
本發明所提出之方法有益地允許非特定乙太網路媒體存取控制控制器上IEEE 802.1 Qbv存取控制機制的使用,亦即,乙太網路媒體存取控制控制器通常實行在微控制器單元(MCU)或低成本的微處理器單元(MPU)。
圖4係為網路節點/裝置100示例之方塊示意圖,其組構以根據本發明揭露之實施例使用資料包傳輸特徵。
網路節點100可包括中央處理單元(CPU)(101)、網路端口(105)、及電源供應(例如,電池、插入式電源供應等)(104)。中央處理單元(101)可包括控制引擎(102)及記憶體(103)。
圖4所示的構造中,所有的控制引擎(102)、記憶體(103)、網路端口(105)、及電源供應(104)係操作性地經過系統匯流排(106)彼此連接。
控制引擎(102)包含一或更多處理器,其可為任何適當的微處理器、微控制器、場域可編程邏輯閘陣列(Field Programmable Gate Arrays, FPGA)、特定應用積體電路(Application Specific Integrated Circuits, ASIC)、數位訊號處理晶片、及/或狀態機、或其組合。根據各種實施例,中央處理單元(101)可組構為對於提供平行運算具有複數個處理器之多處理器計算機。
控制引擎(102)也可包括計算機儲存媒體,或與計算機儲存媒體通訊,如同記憶體(103),但不限定於此,當經由控制引擎(102)之處理器執行時,儲存計算機程式指令或軟體編碼能導致處理器執行即時作業系統(103a)、一或更多應用程式工作(103b)、及傳輸引擎(103c)。記憶體(103)可為任何類型的資料儲存計算機儲存媒體,儲存可讀式計算機程式編碼能實行本發明所提之方法之實施例,其可操作性地連接至控制引擎(102)且可與傳輸引擎(103c)操作以促進資料包之傳輸儲存在相關處。
網路端口(105)可包括傳輸/接收(TX/RX)直接記憶體存取(DMA)控制器(105a)、操作性地連接至傳輸/接收(TX/RX)控制器(105b)組構以控制用於資料包傳輸之傳輸先進先出的記憶體堆疊,及用於資料接收之接收先進先出的記憶體堆疊、媒體存取控制(MAC)(105c)、及實體層端口(105d)。
本發明揭露之實施例中,網路節點(100)組構以施行本文所描述之資料包傳輸之方法。
應當理解的是,參照圖4所示和描述之網路節點(100)僅作為示例。許多其他構造、操作環境、及組態係為可能的。其他實施例之節點可包含更少或更多數量的元件,且如圖4所示可合併有關網路節點所描述之一些或全部的功能。因此,雖然中央處理單元(101)、控制引擎(102)、即時作業系統(103a)、應用程式工作(103b)、傳輸引擎(103c)、記憶體(103)、網路端口(105)、及電源供應(104)皆說明為網路節點(100)的部分,但沒有限定其配置的位置及元件101、102、103a、103b、103c、103、105、104的控制。特別的是,在其他的實施例中,元件101、102、103a、103b、103c、103、105、104可為不同實體或計算機系統的部分。
圖5係根據本發明揭露之一或更多實施例說明用於傳輸資料包之方法的示例簡化流程圖。
在各種實施例中,時間可分割為多個連續時間週期,包含包括多個連續時間區間的當前傳輸週期。在一些實施例中,各時間週期可包括相同的多個連續時間區間。
在當前傳輸週期期間,一或多個第一資料包、一或多個第一資料包的個別第一元資料(例如,包含參考含有資料框架及框架大小之緩衝器的記憶體之記憶體結構)、及與一或多個第一資料包相關聯之第一傳輸優先(例如,界定用於資料包即時的傳輸)可經由裝置施行本發明所示資料傳輸方法以獲得(200)。
舉例來說,一或多個第一資料包可經由網路節點的一或多個處理器執行的一或多個應用程式工作所接收,如圖4所示。
在一些實施例中,裝置(操作如資料通訊網路中的網路節點)組構以實行本發明所提出之方法,可經由一或更多裝置的處理器執行一或更多應用程式工作接收傳輸媒體上用於一或多個第一資料包之傳輸的一或多個要求。取決於實施例,一或多個要求可包含第一傳輸優先(例如,界定用於資料包的即時傳輸),及/或從接收的要求中之一或更多應用程式工作可與第一傳輸優先有關。
一或多個第一資料包可之後儲存(201)於施行本發明所提出之方法的裝置之處理器的記憶體中。基於第一傳輸優先,第一元資料可添加(插入)(202)至處理器之記憶體中的第一等待佇列。
舉例來說,資料包可從裝置執行的各種應用程式工作所接收,其具有描述資料包相關的元資料及與接收之資料包的傳輸有關的優先的資訊。有益地,當所接收之資料包可儲存於記憶體中時,僅與所接收之資料包有關的元資料可插入等待佇列(例如,先進先出佇列)中。
在當前傳輸週期的的第一時間區間保留用於具有第一優先相關的資料包的傳輸,第一元資料可從第一等待佇列傳遞(203)至包括於處理器與媒體存取控制控制器之間的資料通訊端口的端口傳輸佇列。
一或多個第一資料包可之後基於端口傳輸佇列中的第一元資料從記憶體傳遞(204)至媒體存取控制控制器中的傳輸佇列。
一旦位於媒體存取控制控制器之傳輸佇列中,一或多個第一資料包可之後在第一時間區間在傳輸媒介上傳輸(205)。
有益地,特定時間區間可被界定於各傳輸週期內且致力於具有給定優先之所接收資料包的傳輸。如此允許界定傳輸時間窗口保留給與對應之傳輸優先有關之資料包的傳輸,例如,用於即時資料包的傳輸係有時效性的,以使具有不同傳輸優先有關的資料包,例如非即時資料包,可在此傳輸時間窗口不被傳輸。與對應之傳輸優先有關的資料包之傳輸時間可因此經過傳輸時間窗口精確地控制以保留給具有對應之傳輸優先的資料包之傳輸。
非即時資料包的處理可施行在以下一或更多實施例中:
第二資料包可併同第二資料包之第二元資料(例如,包含參考含有資料框架及框架大小之緩衝器的記憶體之記憶體結構)及與第二資料包有關之第二傳輸優先(對應非即時傳輸),例如從應用程式工作接收,而獲得。第二資料包亦可儲存於處理器之記憶體中。
基於第二傳輸優先,第二元資料可添加至處理器之記憶體中的第二等待佇列,例如,用於非即時資料包之傳輸的等待佇列。
在第一時間區間,在第一優先傳輸時間間隔致力於具有第一優先之資料包的傳輸(例如,即時資料包),且其包括在第一時間區間中之後,第二元資料可從第二等待佇列傳輸至處理器與媒體存取控制控制器之間的端口傳輸佇列。
第一時間區間之後的當前傳輸週期之第二時間區間,基於在端口傳輸佇列中之第二元資料,將傳輸媒介上之第二資料包經過媒體存取控制控制器中自記憶體至傳輸佇列的第二資料包的傳遞而傳輸。
非即時資料包的處理也可施行在以下一或多個實施例中:
如上揭內容所描述,第二資料包可併同第二資料包(例如,資料描述符(data descriptor))之第二元資料及與第二資料包有關之第二傳輸優先(對應非即時傳輸),例如從應用程式工作接收,而獲得。第二資料包亦可儲存於處理器之記憶體中。
如果第二資料包不在第一時間區間獲得,第二元資料可不需先傳遞至第二等待佇列,而直接地傳遞至處理器與媒體存取控制控制器之間的端口傳輸佇列。
第二資料包的傳輸可如上揭內容進行,換言之,在保留給具有第二優先有關的資料包之傳輸的當前傳輸週期之第二時間區間,基於在端口傳輸佇列中之第二元資料,將傳輸媒介上之第二資料包經過媒體存取控制控制器中自記憶體至傳輸佇列的第二資料包的傳遞而傳輸。
在一或更多實施例中,上述第一傳輸優先可界定用於即時資料包的傳輸,且上述第二傳輸優先可界定用於非即時資料包的傳輸。
如圖6所示,在各種實施例中,實行所提出之方法的裝置可組構以根據時間資源分割為連續週期來操作,各個週期很可能有相同的預定區間,且各週期包含第一即時區間,其位於先前區間之前,該二區間基於實施例所具有的區間可為預訂或在各週期變化。
在一或更多實施例中,對於各週期來說,即時區間可包含保留於組構以實行所提出之方法的一或更多個別的裝置(網路節點)一或更多時間間隔。在即時區間(這種資料包在下文稱之為「即時乙太網路框架」)中僅其保留時間間隔期間,該裝置可組構以傳輸資料包,例如,乙太網路框架。在各種實施例中,上述時間間隔自一週期至下一週期的位置及區間可視為恆定的。在先前沒有特定與時間有關的約束的區間,例如,遵循界定於802.1 Q乙太網路標準的存取控制機制,裝置可進一步組構以傳輸資料包,例如,乙太網路框架,換言之,全雙工模式(Full-Duplex mode)可依優先順序嚴格地傳輸乙太網路框架。支援如此需求有益地允許實行新定義之IEEE 801.1 qbv標準。
本發明所提出的方案有益地允許傳輸具有預定精確度(例如IEEE 802.1 Qbv時間感知流量調度器所要求)的乙太網路框架於致力於即時乙太網路框架的時間間隔中,以及控制乙太網路框架在先前區間中的傳輸以使沒有會導致延遲即時乙太網路框架之傳輸的溢出。
圖7說明根據一或更多實施例用於不同佇列上分配資料包(例如,乙太網路框架)的示例方案。
圖7顯示組構以實行所提出之方法的裝置(50)簡化圖,其包含中央處理單元(55)操作性地連接至媒體存取控制控制器(56)(例如,乙太網路媒體存取控制控制器),其自身操作性地連接至實體層(57)(例如,乙太網路實體層)。
在中央處理單元上運行之一或更多應用程式工作(58a、58b)可產生資料包,例如,乙太網路框架,其經由裝置(50)傳輸。該傳輸之框架可稱之為即時框架(也可稱之為「即時」框架,如圖7所示之即時乙太網路框架),其傳輸時間必須被精確地控制,相反地,非即時框架被稱之為先前框架或一般的框架。
因為即時乙太網路框架(不像先前的乙太網路框架)可不立即的傳輸,也就是說,例如,其可在經由應用程式工作產生之後不立即的傳輸,對於即時框架待處理的佇列(稱之為「即時框架待處理佇列」)(51)可組構在一或更多實施例之中央處理單元(55)中,其用以在經由一或更多應用程式工作產生的時間之間儲存即時乙太網路框架,且裝置(50)在致力於時間間隔之起始點可在實體媒介上傳輸即時乙太網路框架。
在一或更多實施例中,先前框架之待處理佇列(稱之為「先前框架待處理佇列」)(52)也可組構用以儲存先前的乙太網路框架,換言之,乙太網路框架不需要即時具有精確度的傳輸,其係經由在當前週期之即時區間的一或更多應用程式工作所產生。
在一或更多實施例中,當所接收之先前框架的全部區間超過先前區間,先前的乙太網路框架也可儲存於先前框架待處理佇列(52)中。
如圖7所示,除了先前框架待處理佇列(52)及即時框架待處理佇列(51)外,乙太網路媒體存取控制之直接記憶體存取傳輸佇列(53)可在中央處理單元(55)與乙太網路媒體存取控制控制器(56)之間的一些實施例中分享。可將中央處理單元(55)組構以添加至此佇列(53),其乙太網路框架直接地源自應用程式工作或先前框架待處理佇列(52)與即時框架待處理佇列(51)之其中一者。
當啟用直接記憶體存取傳輸時,乙太網路媒體存取控制控制器(56)可視為從乙太網路媒體存取控制之直接記憶體存取傳輸佇列(53)將框架提出該佇列,且從中央處理單元記憶體(例如,隨機存取記憶體)開始記憶體資料之傳輸(直接記憶體存取之傳輸)至乙太網路媒體存取控制控制器(56)之乙太網路媒體存取控制內部先進先出的傳輸(54)(稱之為「乙太網路媒體存取控制之先進先出傳輸」)。一旦記憶體資料完成傳輸,如果啟用乙太網路傳輸器,乙太網路框架可傳輸至乙太網路實體層(57),其接收後可通過傳輸媒介(例如,傳輸線)將其傳輸。在一些實施例中,裝置(50)可組構以使直接記憶體存取之傳遞及乙太網路之傳輸可獨立地啟用或禁止。一旦資料框架儲存於乙太網路媒體存取控制內部的傳輸之先進先出(54),其操作速度快且其執行時間的不確定性非常低。
圖8說明一些事件被各週期所界定,其組構於實行本發明所提出之方法的裝置中,例如,圖7之裝置。在週期期間,組構該裝置以使各事件的發生觸發與乙太網路媒體存取控制周邊設備控制、或內部處理與乙太網路框架準備有關之特定動作。
圖8係為顯示事件如何沿著週期而界定之示意圖,也就是說,其係沿著週期之即時與先前(一般)的區間,且其根據一或更多實施例致力於即時區間內的傳輸時間間隔。
在一或更多實施例中,部分或全部的事件(如圖8例示之事件T0、T1、T2、T4、T5)可經由計時器管理模組所管理之一或更多計時器所觸發,例如,圖4所示實行於傳輸引擎中。
示例性的時間事件T0、T1、T2、T3、T4及T5係參照圖7及圖8描述於下文,其舉例說明示範用途。
時間事件「T0」可界定以對應開始的週期,以及實施例中的週期之即時區間係界定於週期的第一部份。
在一些實施例中,發生時間事件T0時可禁用乙太網路之傳輸。因此,乙太網路框架可經由乙太網路媒體存取控制控制器(例如,圖7之乙太網路媒體存取控制(56))不傳輸至乙太網路實體層(例如,圖7之乙太網路實體層(57))。然而,在一些實施例中,乙太網路媒體存取控制之直接記憶體存取傳輸佇列(53)與乙太網路媒體存取控制之傳輸的先進先出(54)之間的傳遞仍可在時間事件「T0」發生之後完成。
在一些實施例中,通過直接記憶體存取進程的資料接收(稱之為「接收-直接記憶體存取」)可啟用於出現T0時即時框架的接收。
在一些實施例中,時間餘裕,標示為「T0, 餘裕 」,可有益地用於補償經由計時器管理和「T0」事件後執行之操作所引起的潛在延遲。因此,在媒體存取控制控制器禁止資料傳輸期間,傳輸週期可包括時間保護區間T0, 餘裕 ,其在即時區間之前立即發生。
時間事件「T1」可界定以觸發即時框架傳輸之準備。發生T1時,與即時待處理框架有關的元資料自即時框架待處理佇列(51)傳遞至乙太網路媒體存取控制之直接記憶體存取傳輸佇列(53)(該傳遞在附圖標註為「資料傳輸 記憶體->先進先出」)。
在一些實施例中,可執行的傳遞進一步檢查即時框架累積的期間不超過保留給即時區間之裝置(50)之時間間隔的期間。該時間間隔可界定於時間分割多重存取中的裝置,從而將即時區間劃分為一或更多時間間隔中,其係分別根據資料通訊網路中之一或更多裝置所提出之方案保留給即時框架的傳輸。
因此,在一些實施例中,可基於資料數量對應於即時框架的累積大小可以在即時區間內由裝置保留用於即時框架的傳輸之時間間隔以傳輸,即時框架之元資料可添加至等待佇列(例如,即時框架待處理佇列(51))。
在一些實施例中,在發生T1時也可開始將框架之直接記憶體存取傳遞至乙太網路媒體存取控制傳輸的先進先出(54)。
因此,在一些實施例中,與即時框架有關的元資料可自在接收後已經儲存位於等待佇列(例如,即時框架待處理佇列(51))上傳遞至包含有處理器與媒體存取控制控制器之間的資料傳輸端口的端口傳輸佇列(例如,乙太網路媒體存取控制之直接記憶體存取的傳輸佇列(53)),且即時框架可基於儲存於端口傳輸佇列中的元資料自記憶體耦接處理器(CPU)傳遞至媒體存取控制控制器中的傳輸佇列(例如,乙太網路媒體存取控制傳輸之先進先出(54)),其係在第一預定時間之後且在時間間隔之起始用以保留給裝置之前(50)(例如,時間事件T1發生後)。
在一些實施例中,時間餘裕,標示為「T1, 餘裕 」,可有益地使用在T1的發生與保留給裝置(50)之時間間隔的起始點之間,以使與第一乙太網路框架相關的資料完全地傳遞至媒體存取控制傳輸之先進先出的內部。
在一些實施例中,通過直接記憶體存取的資料之接收(稱之為「接收-直接記憶體存取」)可為了避免由於記憶體存取及接收框架之處理的干擾(額外的抖動)而在T1發生後禁止,特別是在資料傳輸與接收之間分享的中斷管理中的裝置(例如,通過中斷服務程式(interrupt service routines, ISR)。
同樣地,在一些實施例中,背景處理,可能包含框架之接收,即時框架之處理及/或準備將在下一個週期傳輸,其可在T0發生後開始可在T1發生後停用。
時間事件「T2」可界定如對應保留給裝置(50)之時間間隔的開始,如上所述。乙太網路之傳輸可之後在T2發生後啟用,且在乙太網路媒體存取控制之傳輸的先進先出(54)中的任何可用的框架可傳遞至乙太網路之實體層單元(57)。該傳遞通常會非常短,且抖動非常低,以使其有益地組構以如中斷服務程式(ISR)之一部分來執行。
因此,在一些實施例中,從媒體存取控制控制器中傳輸媒介上傳輸佇列之即時框架的傳遞(例如,乙太網路媒體存取控制之傳輸的先進先出(54))可經由媒體存取控制控制器在第二預定時間之後且保留給裝置(50)之時間間隔的起始之前的即時區間啟用(例如,時間事件T2之發生後),第二預定時間被界定以使其在上述第一預定時間之後發生。
在一些實施例中,時間餘裕,標示為「T2, 餘裕 」,可有益地使用在T2的發生與保留給裝置(50)之時間間隔的起始點之間用以補償經由計時器管理和乙太網路傳輸器之硬體起始點所引起的潛在延遲。
時間事件「T3」可界定以對應最後即時框架之傳輸的終點。
在一些實施例中,接收-直接記憶體存取(通過直接記憶體存取資料的接收)可致能用於發生時間事件T3後框架之接收。
因此,在一些實施例中,即時框架的接收可在如上所述時間事件T1的發生後之即時區間被禁止,且在時間事件T3之發生後再一次啟用。在具有時間事件T3保留給裝置的時間間隔期間監視即時框架之傳輸的終點有益地允許在保留給裝置的時間間隔期間由媒體存取控制控制器之即時框架的傳輸尚未完成時,禁止即時框架之直接記憶體存取的接收,以使由直接記憶體存取引起的潛在延遲(抖動)在由媒體存取控制控制器之即時框架傳輸期間被避免。
在一些實施例中,背景處理,可能包含框架之接收,框架之處理及/或準備(即時框架、或取決於實施例,在即時區間之即時框架及在一般區間之一般框架)將在下一個週期傳輸,其可在T3發生後開始。
時間事件「T4」可界定以對應保留給裝置(50)之時間間隔的終點。
在一些實施例中,與在先前-框架待處理佇列(52)中之先前框架有關的元資料可傳遞至乙太網路媒體存取控制之直接記憶體存取傳輸佇列(53)( 其在附圖標註為「資料傳輸 記憶體->先進先出」),可能進一步檢查乙太網路框架累積的期間不超過先前區間的期間。因此,先前框架可自仍待處理之等待佇列(例如,先前-框架待處理佇列(52))傳遞至包含有處理器與媒體存取控制控制器之間的資料傳輸端口的端口傳輸佇列(例如,乙太網路媒體存取控制之直接記憶體存取的傳輸佇列(53)),其係在保留給裝置之時間間隔的終點之後的即時區間(例如,時間事件T4發生時)。
在一些實施例中,乙太網路的傳輸可在T4之發生後禁止。因此,在一些實施例中,即時框架可具有即時優先被傳輸,換言之,在保留給裝置之時間間隔用於具有即時優先之資料的傳輸期間被媒體存取控制控制器傳輸,其具有保留給裝置之時間間隔係包含當前週期的即時區間。除了保留給裝置的時間間隔外,媒體存取控制控制器上的資料傳輸可能被禁止一或更多個週期,換言之,在第一傳輸禁止時間區間及/或第二傳輸禁止時間區間期間,第一傳輸禁止時間區間在即時區間的保留給裝置之間間隔之前發生(例如,在起始於T0且終止於T2的區間),且第二傳輸禁止時間區間在即時區間的保留給裝置之間間隔之後發生(例如,如下文所述在起始於T4且終止於T5的區間)。
時間事件「T5」可界定如對應先前之區間的開始。在一些實施例中,乙太網路之傳輸可在T5發生後啟用(與T2之發生有關的相同操作,亦即,在乙太網路媒體存取控制之傳輸先進先出(54)中可用的任何框架可傳遞至乙太網路之實體層單元(57))。在一些實施例中,接下來T0、T1、T2、T4、及T5計時器可在T5之發生後編程。
在一些實施例中,接收-直接記憶體存取(通過直接記憶體存取進程之資料的接收)可在T5之發生後啟用以用於框架的接收。
在一些實施例中,時間餘裕,標示為「T5, 餘裕 」,可有益地使用在T5的發生與先前之區間的起始點之間用以補償經由計時器管理和乙太網路傳輸器之硬體起始點所引起的潛在延遲。
根據一或更多實施例之本發明所提出之佇列管理描述於後:
對於各區間(即時區間及一般(先前)區間),一或更多狀態變因,分別以SRT 標示即時區間、及SLe 表示先前區間,其可用於一或更多實施例中以維持在個別區間中保留自由時間。進一步地,在任何時間t,狀態變因Pt 可用以指示當前區間的類型(不是「即時」就是「非即時」)。在週期的起始點,變因皆對於各區間的個別期間初始化。舉例來說,SRT 可對即時區間的期間初始化、及SLe 可對先前區間的期間初始化。
在一些實施例中,T1事件發生之後,當狀態變因SRT 大於佇列前頭之框架的期間時,可將即時框架待處理佇列(51) 之框架於媒體存取控制之直接記憶體存取的傳輸佇列(53)中提出佇列及放置佇列。狀態變因SRT 可經管理以使即時框架在各時間添加至媒體存取控制之直接記憶體存取的傳輸佇列(53),狀態變因SRT 經由對應之框架期間而減少其數值。
在一些實施例中,相同管理進程可應用於先前框架待處理佇列(52)與媒體存取控制之直接記憶體存取的傳輸佇列(53)之間的T4事件之後的狀態變因SLe 。換言之,T4事件發生之後,當狀態變因SLe 大於佇列前頭之框架的期間時,可將先前框架待等待佇列(52)之框架於媒體存取控制之直接記憶體存取的傳輸佇列(53)中提出佇列及放置佇列。狀態變因SLe 可經管理以使先前框架在各時間添加至媒體存取控制之直接記憶體存取的傳輸佇列(53),狀態變因SLe 經由對應之框架期間而減少其數值。
在一些實施例中,必須傳輸即時框架的應用程式工作可將其首先發布至即時框架待處理佇列(51)中。
在一些實施例中,在狀態變因Pt 設定為「即時」(t為當前時間)時,必須傳輸先前框架的應用程式工作可將其發布至先前框架待處理佇列(52)中。在狀態變因Pt 設定為「先前」時,如果狀態變因SLE 及先前區間終點之前的時間皆大於框架期間時,先前框架可發布至媒體存取控制之直接記憶體存取的傳輸佇列(53)中。
此提出之佇列管理方案確保遵守界定的區間,以及有益地優化先前乙太網路框架的傳輸時間。的確,如果當前區間致力於先前框架,經由工作準備之先前乙太網路框架將實質地立即傳輸。
根據之後描述之一或更多實施例提出計時器的管理方案:
在一或更多實施例中,計時器管理模組可實行或組構以經由時鐘而觸發(例如,精確時間協議(Precision Time Protocol, PTP)時鐘),且執行特定動作於在先前線程模式或在中斷服務程式(ISR)模式下以獲得更好的精確度。
如上述所討論之內容,在一些實施例中,在中斷服務模式所執行之動作的數量可為了減少更多中斷服務程式之執行延遲而被限制。由於避免使用中斷服務程式與即時作業系統工作之間的通知機制使此執行模式係為有用的,以減少執行所觸發的動作需要的延遲(及相關的抖動)。
例如,在一些實施例中,計時器管理模組可組構以使用單一硬體計時器,以及使用上下文事件的鏈接列表。其可執行計時器管理即時作業系統工作組構以編程下一個計時器目標數值及執行事件動作。每次關於事件的發生以觸發硬體計時器,關於鏈接列表上的下一個事件的發生可在編程硬體計時器。單一計時器的使用以管理按順序的多個事件,其有益地允許確保對於各事件之發生的執行抖動限制(例如,其避免解析多個鏈接列表以執行計時器相關的工作),從而達到具有給定精確度之執行抖動。
在一些實施例中,各事件內容可包含目標時間、事件動作(在一些實施例中由對應所執行可讀式計算機編碼的位址表示)、及標註,其用以指示觸發的動作係直接地執行於中斷服務程式的內部還是在計時器管理工作中。
在一些實施例中,為了加速鏈接列表事件內容的處理,列表可為按時間順序的,且具有較低時間戳記的事件可放置於鏈接列表的前頭。在如此的實施例中,當硬體計時器到期時,適當的中斷服務程式可被執行,且如果對應的標註已設置,在鏈接列表的前頭與事件內容相關的事件動作可被執行。在實施例中,中斷服務程式的執行可喚醒計時器管理工作(即使不需要標註,或在實施例中不使用標註),以為了如果尚未執行時執行相關事件動作、將置於鏈接列表前頭的事件內容提出佇列、及基於新的置於鏈接列表之前頭事件內容以編程下一個計時器目標的數值。
這樣的實施例將有益地減少時間延遲及與事件相關之動作執行的抖動。
如上揭所討論,經由計時器所觸發一些事件的執行時間可在一或更多實施例中被評估以使計時器可被預期以為了補償延遲。特別的是,如參照圖7及圖8之上述的實施例,對於經由T2計時器所觸發之事件的延遲精確的補償係為重要的,以為了達到需要的時間精確度。然而,此延遲補償並不容易計算且取決於很多因素,例如:中央處理單元頻率、緩存架構、編碼大小…等。
為了解決這個問題,根據一或更多實施例提出自動化校準方法以為了決定在操作執行於T2事件期間系統所需要的時間之數量以啟用乙太網路傳輸器。本發明提出之方案依賴經由媒體存取控制控制器施行的硬體時間戳記在一些特定的框架上。硬體時間戳記可施行以使用上揭之時鐘(例如,精確時間協議時鐘),且包含在乙太實體層位準框架傳輸的精確時間。相較預期的傳輸時間,此數值允許確定全局執行時間延遲。此延遲包含中斷服務程式例行的執行時間、用於計時器管理的編碼使用、及用於T2相關動作的編碼使用。
在一些實施例中,在每個週期中,傳輸至即時區間之第一框架可標籤以使傳輸時間戳記執行於較低的位準。延遲的平均數被計算且運用於T2餘裕以補償T2計時器。
本發明所揭之方法及設備能有益地實行於具有通訊端口(例如,乙太網路通訊端口)之低成本的裝置中,如關鍵網路中的感應器/致動器(工廠自動化、汽車)。其進一步使與時效性網路標準協議的相容性,提供確定性訊息於標準化乙太網路上。它們可有益地用以運行於具有非特定乙太網路媒體存取控制整合周邊設備的低成本微控制器/微處理器平台。
儘管已經參照較佳實施例描述本發明,所屬領域具通常知識者將容易理解在不脫離所附申請專利範圍界定之本發明的精神或範圍的情況下,可以對本發明進行各種改變及/或修改。
雖然本發明已揭露某些較佳實施例之內容,應當理解某些系統、裝置及方法的優點、特徵及態樣可理解於其他各種實施例中。此外,可以預期的是,本文所述各種態樣及特徵可以分別地實施、組合在一起、或彼此替代,並且可以進行特徵及態樣的各種組合及子組合,且仍被本發明之範圍所涵蓋。進一步地,上述系統及裝置不需包含較佳實施例中所述之模組及功能。
本文所描述之資訊及訊號可表示使用任何各種不同的技術及技巧。例如,資料、指示、命令、資訊、訊號、位元、符號、及晶片可由電壓、電流、電磁波、磁場或粒子、光學場或粒子、或其組合所表示。
取決於實施例,本文所述之任何方法之某些動作、事件、或功能可實行在不同順序中,可添加、合併、或一起排除在外(例如,並非全部所述之動作或事件對於本方法之實施係為必須的)。再者,在某些實施例中,動作或事件可同時實行而非依順序地實行。
10:媒體存取控制控制器 11,105d:實體層端口 12,105b:傳輸/接收控制器 12a:傳輸先進先出記憶體 12b:接收先進先出記憶體 13,105a:直接記憶體存取控制器 13a:傳輸側直接記憶體存取控制器 13b:接收側直接記憶體存取控制器 14:直接記憶體存取控制單元 15:記憶體匯流排 50:裝置 51:即時框架待處理佇列 52:先前框架待處理佇列 53:乙太網路媒體存取控制之直接記憶體存取傳輸佇列 54:乙太網路媒體存取控制之傳輸先進先出 55,101:中央處理單元 56:乙太網路媒體存取控制控制器 57:實體層、乙太網路實體層、乙太網路之實體層單元 58a,58b,103b:應用程式工作 100:網路節點、網路裝置 102:控制引擎 103:記憶體 103a:即時作業系統 103c:傳輸引擎 104:電源供應 105:網路端口 105c:媒體存取控制 106:系統匯流排 200:獲得第一資料包、第一元資料、及第一傳輸優先 201:儲存第一資料包於記憶體中 202:將第一元資料添加至記憶體中的第一等待佇列 203:傳遞第一元資料至端口傳輸佇列 204:基於第一元資料自記憶體傳遞第一資料包至媒體存取控制控制器中的傳輸佇列 205:在傳輸媒介上傳輸第一資料包
圖1顯示為使用於本發明的一或更多實施例中之IEEE 802.1 Qbv時間感知調度器之二連續時間週期之序列示意圖; 圖2顯示為使用於本發明的一或更多實施例中連接至乙太實體層(Ethernet physical layer, PHY)及至匯流記憶體之乙太媒體存取控制示意之方塊圖; 圖3顯示為應用於即時過程的抖動之界定示意圖; 圖4係為本發明的一或更多實施例中組構以使用資料包傳輸特徵之網路節點/裝置之方塊示意圖; 圖5係為本發明的一或更多實施例中用於傳輸資料包之方法的方塊示意圖; 圖6係為本發明的一或更多實施例中組構以使用資料包傳輸特徵之網路節點/裝置之方塊示意圖; 圖7顯示為本發明的一或更多實施例中用於在不同佇列上分配乙太框架之示意圖; 圖8顯示為如組構於實行所提出之方法的裝置中所界定一週期之事件之示意圖。
200:獲得第一資料包、第一元資料、及第一傳輸優先
201:儲存第一資料包於記憶體中
202:將第一元資料添加至記憶體中的第一等待佇列
203:傳遞第一元資料至端口傳輸佇列
204:基於第一元資料自記憶體傳遞第一資料包至媒體存取控制控制器中的傳輸佇列
205:在傳輸媒介上傳輸第一資料包

Claims (15)

  1. 一種傳輸資料包的方法,該方法包括,在多個連續時間週期中的當前傳輸週期進行下列步驟,該當前週期包括多個連續時間區間:獲得一或多個第一資料包、該一或該多個第一資料包之個別第一元資料、及與該一或該多個第一資料包相關的第一傳輸優先度,其中,該一或該多個第一資料包儲存於處理器之記憶體中;基於該第一傳輸優先度,將該第一元資料添加至該處理器之該記憶體中的第一等待佇列;在為與該第一傳輸優先度相關之資料包的傳輸保留之該當前傳輸週期的第一時間區間,自該第一等待佇列將該第一元資料傳遞至介面傳輸佇列,其中,該介面傳輸佇列係被包括於該處理器與媒體存取控制控制器之間的資料通訊介面;以及基於在該介面傳輸佇列中之該第一元資料,將該一或該多個第一資料包自該記憶體傳遞至該媒體存取控制控制器中之傳輸佇列,藉此將該一或該多個第一資料包經由傳輸媒介進行傳輸。
  2. 如請求項1所述之方法,復包括:獲得第二資料包、該第二資料包之第二元資料、及與該第二資料包相關的第二傳輸優先度,其中,該第二資料包儲存於該處理器之該記憶體中;基於該第二傳輸優先度,將該第二元資料添加至該處理器之該記憶體中的第二等待佇列;在該第一時間區間中且在第一優先度傳輸時槽之後,自該第二等待佇 列將該第二元資料傳遞至該介面傳輸佇列,其中該第一優先度傳輸時槽係專用於具有第一優先度的資料包之傳輸且該第一優先度傳輸時槽被包括於該第一時間區間中;以及在接續該第一時間區間之該當前傳輸週期的第二時間區間,基於在該介面傳輸佇列中之該第二元資料,將該第二資料包自該記憶體傳遞至該媒體存取控制控制器中之該傳輸佇列,藉此將該第二資料包經由該傳輸媒介進行傳輸。
  3. 如請求項1所述之方法,復包括:獲得第二資料包、該第二資料包之第二元資料、及與該第二資料包相關的第二傳輸優先度,其中,該第二資料包儲存於該處理器之該記憶體中;如果該第二資料包未在該第一時間區間中獲得,將該第二元資料添加至該介面傳輸佇列;以及在為與該第二優先度相關之資料包的傳輸保留之該當前傳輸週期的第二時間區間,基於在該介面傳輸佇列中之該第二元資料,將該第二資料包自該記憶體傳遞至該媒體存取控制控制器中之該傳輸佇列,藉此將該第二資料包經由該傳輸媒介進行傳輸。
  4. 如請求項1至3中任一項所述之方法,其中,該第一傳輸優先度係用於多個資料包之即時的傳輸,並且該第二傳輸優先度係用於多個資料包之非即時的傳輸。
  5. 如請求項1至3中任一項所述之方法,復包括:自經由該處理器執行之一或多個第一工作,接收要求經由該傳輸媒介而傳輸該一或該多個第一資料包的一或多個請求; 其中,各該請求包含該第一傳輸優先度、或該一或該多個第一工作係與該第一傳輸優先度相關。
  6. 如請求項1至3中任一項所述之方法,其中,該一或該多個第一資料包係在第一優先度傳輸時槽的期間由該媒體存取控制控制器所傳輸,該第一優先度傳輸時槽係專用於具有該第一優先度的資料包之傳輸且該第一優先度傳輸時槽被包括於該第一時間區間中,該方法復包括:在第一傳輸禁止時間區間及/或第二傳輸禁止時間區間禁止在該媒體存取控制控制器的資料傳輸,其中,該第一傳輸禁止時間區間在該第一時間區間中在該第一優先度傳輸時槽之前發生,且該第二傳輸禁止時間區間在該第一時間區間中在該第一優先度傳輸時槽之後發生。
  7. 如請求項1至3中任一項所述之方法,其中,該當前傳輸週期包括緊接在該第一時間區間之前發生的時間保護區間,在該時間保護區間禁止在該媒體存取控制控制器之資料傳輸。
  8. 如請求項2所述之方法,其中,在該第一時間區間的該第一優先度傳輸時槽之終點之後,該第二資料包自該第二等待佇列傳遞至該介面傳輸佇列。
  9. 如請求項5所述之方法,其中,該第一元資料自該第一等待佇列傳遞至該介面傳輸佇列,且基於該介面傳輸佇列中之該第一元資料,在該第一時間區間中且在該第一優先度傳輸時槽之起點之前的第一預定時間之後,該一或該多個第一資料包自該記憶體傳遞至該傳輸佇列。
  10. 如請求項5所述之方法,復包括:經由該媒體存取控制控制器,在該第一時間區間中且在該第一優先度傳輸時槽之起點之前的第二預定時間之後,啟用該傳輸媒介上之該一或該多個第一資料包的傳輸。
  11. 如請求項9所述之方法,復包括:在該第一時間區間中在該第一預定時間之後,以及在該第一優先度傳輸時槽期間之由該媒體存取控制控制器所為之該第一傳輸優先度的資料包的傳輸尚未完成時,禁止具有該第一傳輸優先度的資料包的接收。
  12. 如請求項1至3中任一項所述之方法,復包括:基於在第一優先度傳輸時槽可傳輸與該第一傳輸優先度相關的對應第一資料包之累積大小所對應之資料量的決定,將該第一元資料添加至該第一等待佇列,其中該第一優先度傳輸時槽係專用於具有第一優先度之資料包的傳輸且其被包括在該第一時間區間中。
  13. 一種傳輸資料包的設備,該設備包括處理器、有效連接至該處理器之記憶體、及在計算機網路中通訊之網路介面,其中,該設備係組構以實施如請求項1至12中任一項所述之方法,用以傳輸資料包。
  14. 一種計算機程式產品,該計算機程式產品包括實際嵌入計算機可讀取媒介中之計算機程式代碼,該計算機程式代碼包括,當提供指示至計算機並執行時,造成該計算機實行如請求項1至12中任一項所述之方法,用以傳輸資料包。
  15. 一種經過例如壓縮或編碼而表示請求項14所述之計算機程式產品之資料組。
TW109131657A 2019-09-26 2020-09-15 傳輸資料包的方法和實施該方法的裝置 TWI794645B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
EP19306207.2 2019-09-26
EP19306207.2A EP3799374A1 (en) 2019-09-26 2019-09-26 Method for transmitting data packets and apparatus for implementing the same
WOPCT/JP2020/027419 2020-07-07
PCT/JP2020/027419 WO2021059683A1 (en) 2019-09-26 2020-07-07 Method for transmitting data packets and apparatus for implementing the same

Publications (2)

Publication Number Publication Date
TW202114386A TW202114386A (zh) 2021-04-01
TWI794645B true TWI794645B (zh) 2023-03-01

Family

ID=68289892

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109131657A TWI794645B (zh) 2019-09-26 2020-09-15 傳輸資料包的方法和實施該方法的裝置

Country Status (7)

Country Link
US (1) US20220321493A1 (zh)
EP (1) EP3799374A1 (zh)
JP (1) JP7394986B2 (zh)
KR (1) KR20220045982A (zh)
CN (1) CN114424507A (zh)
TW (1) TWI794645B (zh)
WO (1) WO2021059683A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112021006308T5 (de) * 2020-12-04 2023-09-14 Microchip Technology Incorporated Verarbeitung von daten auf höherer ebene in zeitempfindlichen datenblöcken an einer schnittstellenvorrichtung für die physikalische schicht
CN115395988A (zh) * 2021-05-25 2022-11-25 瑞昱半导体股份有限公司 蓝牙通信装置与数据传输方法
EP4106275A1 (en) * 2021-06-18 2022-12-21 Rohde & Schwarz GmbH & Co. KG Jitter determination method, jitter determination module, and packet-based data stream receiver
JP7420406B2 (ja) * 2022-06-03 2024-01-23 株式会社インタフェース Tsn通信システム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7826469B1 (en) * 2009-03-09 2010-11-02 Juniper Networks, Inc. Memory utilization in a priority queuing system of a network device

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1303870B1 (it) * 1998-11-25 2001-03-01 Italtel Spa Metodo e dispositivo per il multiplexing statistico in tecnicaweighted fair queuing (wfq) di flussi che convogliano traffico atm
SE516571C2 (sv) * 1999-03-12 2002-01-29 Ericsson Telefon Ab L M Förfarande för att åstadkomma förbättrad överföringseffektiviti ett mobilt paketdatakomunikationssystem
IT1319611B1 (it) * 2000-12-22 2003-10-20 Siemens Inf & Comm Networks Procedimento di schedulazione dei permessi di trasmissione dei dati apacchetto sui canali radio condivisi dalle stazioni mobili in sistemi
JP2004147275A (ja) * 2002-08-30 2004-05-20 Matsushita Electric Ind Co Ltd パケット送信スケジューリング方法および基地局装置
US20090262649A1 (en) * 2005-11-10 2009-10-22 Nxp B.V. Bus guardian with improved channel monitoring
US8081625B2 (en) * 2007-02-01 2011-12-20 Broadcom Corporation Method and system for utilizing a 10/100/1G/10G base-T PHY device for single channel and shared channel networks
US9197576B2 (en) * 2010-11-15 2015-11-24 Rockwell Automation Technologies, Inc. Method and apparatus for allocating and prioritizing data transmission
CN103095607B (zh) * 2013-02-21 2015-07-29 南京磐能电力科技股份有限公司 一种实时优先级以太网控制器实现方法
US10454835B2 (en) * 2017-01-20 2019-10-22 Google Llc Device and method for scalable traffic shaping with a time-indexed data structure
US11805065B2 (en) * 2019-02-27 2023-10-31 Intel Corporation Scalable traffic management using one or more processor cores for multiple levels of quality of service

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7826469B1 (en) * 2009-03-09 2010-11-02 Juniper Networks, Inc. Memory utilization in a priority queuing system of a network device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
網路文獻 HAGINO NAOTO ET AL Frame transmission time control for TDMA based ethernet 20180613 https://ieeexplore.ieee.org/document/8402347 *

Also Published As

Publication number Publication date
JP2022537607A (ja) 2022-08-26
JP7394986B2 (ja) 2023-12-08
TW202114386A (zh) 2021-04-01
KR20220045982A (ko) 2022-04-13
EP3799374A1 (en) 2021-03-31
CN114424507A (zh) 2022-04-29
US20220321493A1 (en) 2022-10-06
WO2021059683A1 (en) 2021-04-01

Similar Documents

Publication Publication Date Title
TWI794645B (zh) 傳輸資料包的方法和實施該方法的裝置
CN110943899B (zh) 一种epa工业总线与时间敏感网络适配系统及方法
TWI713329B (zh) 於乙太網路交換器中用於排程訊框之多工方法、網路系統、網路處裡裝置及電腦程式產品
US10884786B2 (en) Switch device, switching method, and computer program product
CN110545152B (zh) 一种以太网中具有实时传输功能的上位机及以太网系统
KR102410422B1 (ko) 네트워크에서의 분산 프로세싱
TWI526024B (zh) 在一網路內用於等時資料遞送之方法及裝置
EP3582038B1 (en) Control device and control method
US20190102223A1 (en) System, Apparatus And Method For Real-Time Activated Scheduling In A Queue Management Device
Carvajal et al. Evaluation of communication architectures for switched real-time ethernet
CN104717149A (zh) 一种基于虚拟链路的数据帧调度方法
US10142228B2 (en) Device and method for retransmitting data in a network switch
JP2022518631A (ja) パケット交換ネットワークにおいて通信エンティティのコンピューター手段によって実施される方法、並びにそのコンピュータープログラム及びコンピューター可読非一時的記録媒体、並びにパケット交換ネットワークの通信エンティティ
CN109450817B (zh) 时间触发以太网多业务消息发送的混合调度方法
Migliavacca et al. RTCAN-A real-time CAN-bus protocol for robotic applications
Carvajal et al. Atacama: An open FPGA-based platform for mixed-criticality communication in multi-segmented Ethernet networks
US20140207948A1 (en) Network interface on a chip with an adaptive system to trigger data forwarding
US10812402B2 (en) Shaping of post-scheduling network pipeline jitter
US11075858B2 (en) A664 synch network design
Yan et al. Mixed time-triggered and event-triggered industrial controller in IoT environment
Sha et al. Distributed real-time system design: Theoretical concepts and applications
Nguyen et al. iDSRT: Integrated dynamic soft real-time architecture for critical infrastructure data delivery over wlan
CN111385222B (zh) 实时、时间感知、动态、情境感知和可重新配置的以太网分组分类
EP4068703B1 (en) Method and device for performing software-based switching functions in a local area network
Bhatia et al. Network Control Systems RTAI framework A Review