嵌入式系統(tǒng)及其方法
【專利摘要】一種嵌入式系統(tǒng)可以包括嵌入式器件和主機(jī)設(shè)備。嵌入式器件可以提供用于服務(wù)的封包,以及產(chǎn)生包括封包的段和不具有校驗(yàn)和值的第一標(biāo)頭的第一傳輸控制協(xié)議(TCP)分段。主機(jī)設(shè)備可以接收第一TCP分段,基于封包的段和第一標(biāo)頭來產(chǎn)生包括封包的段和具有校驗(yàn)和值的第二標(biāo)頭的第二TCP分段,以及基于第二TCP分段來產(chǎn)生互聯(lián)網(wǎng)協(xié)議(IP)封包。
【專利說明】嵌入式系統(tǒng)及其方法
[0001]相關(guān)申請(qǐng)的交叉引用
[0002]本申請(qǐng)要求2015年2月17日提交的美國臨時(shí)申請(qǐng)第62/117,200號(hào)的優(yōu)先權(quán)以及2016年2月16日提交的美國非臨時(shí)申請(qǐng)第15/044,997號(hào)的優(yōu)先權(quán),其全部內(nèi)容通過引用合并于此。
技術(shù)領(lǐng)域
[0003]本公開的示例性實(shí)施例涉及嵌入式系統(tǒng)和用于操作嵌入式系統(tǒng)的方法。
【背景技術(shù)】
[0004]—般而言,嵌入式系統(tǒng)包括嵌入式器件和主機(jī)設(shè)備。近來,對(duì)于嵌入式器件,使用諸如固態(tài)驅(qū)動(dòng)器(SDD)的存儲(chǔ)器件。
【發(fā)明內(nèi)容】
[0005]本公開的實(shí)施例針對(duì)包括嵌入式器件和主機(jī)設(shè)備的嵌入式系統(tǒng)及其方法。
[0006]本發(fā)明的方面包括一種包括有嵌入式器件和主機(jī)設(shè)備的系統(tǒng)。嵌入式器件可以提供用于服務(wù)的封包(packet),以及產(chǎn)生包括封包的段(piece)和不具有校驗(yàn)和值(checksumvalue)的第一標(biāo)頭(header)的第一傳輸控制協(xié)議(TCP)分段(segment)。主機(jī)設(shè)備可以接收第一 TCP分段,基于該封包的段和第一標(biāo)頭來產(chǎn)生包括封包的段和具有校驗(yàn)和值的第二標(biāo)頭的第二TCP分段,以及基于第二TCP分段來產(chǎn)生互聯(lián)網(wǎng)協(xié)議(IP)封包。
[0007]本發(fā)明的又一方面包括用于操作具有嵌入式器件和主機(jī)設(shè)備的嵌入式系統(tǒng)的方法。該方法可以包括:通過嵌入式器件提供用于服務(wù)的封包;通過嵌入式器件產(chǎn)生包括封包的段和不具有校驗(yàn)和值的第一標(biāo)頭的第一傳輸控制協(xié)議(TCP)分段;通過主機(jī)設(shè)備接收第一 TCP分段;基于封包的段和第一標(biāo)頭而通過主機(jī)設(shè)備來產(chǎn)生包括封包的段和具有校驗(yàn)和值的第二標(biāo)頭的第二 TCP分段;基于第二 TCP分段而通過主機(jī)設(shè)備來產(chǎn)生互聯(lián)網(wǎng)協(xié)議(IP)封包。
[0008]本發(fā)明的更進(jìn)一步方面包括用于嵌入式系統(tǒng)的嵌入式器件。該嵌入式器件可以包括:至少一個(gè)服務(wù)供給器,適用于提供用于服務(wù)的封包;處理單元,適用于產(chǎn)生包括封包的段和不具有校驗(yàn)和值的標(biāo)頭的傳輸控制協(xié)議(TCP)分段;以及接口單元,適用于將TCP分段傳送到主機(jī)設(shè)備。
[0009]本發(fā)明的附加方面包括用于嵌入式系統(tǒng)的主機(jī)設(shè)備。該主機(jī)設(shè)備可以包括:接口單元,適用于從嵌入式器件接收包括用于服務(wù)的封包的段和不具有校驗(yàn)和值的第一標(biāo)頭的第一傳輸控制協(xié)議(TCP)分段;第一處理單元,適用于基于封包的段和第一標(biāo)頭來計(jì)算校驗(yàn)和值并且產(chǎn)生包括封包的段和具有校驗(yàn)和值的第二標(biāo)頭的第二 TCP分段;第二處理單元,適用于執(zhí)行互聯(lián)網(wǎng)協(xié)議(IP)路由并且基于第二TCP分段來產(chǎn)生互聯(lián)網(wǎng)協(xié)議(IP)封包;以及第三處理單元,適用于基于IP封包來產(chǎn)生傳輸幀并且將傳輸幀傳送到網(wǎng)絡(luò)。
【附圖說明】
[0010]圖1是嵌入式系統(tǒng)的框圖。
[0011 ]圖2是嵌入式器件的控制器的框圖。
[0012]圖3是圖示根據(jù)本公開的實(shí)施例的包括嵌入式器件和主機(jī)設(shè)備的嵌入式系統(tǒng)的框圖。
[0013]圖4是圖示根據(jù)本公開的實(shí)施例的嵌入式系統(tǒng)的TCP/IP模型的示圖。
[0014]圖5是圖示根據(jù)本公開的實(shí)施例的產(chǎn)生TCP分段的操作的示圖。
[0015]圖6A和圖6B是圖示根據(jù)本公開的實(shí)施例的產(chǎn)生TCP分段標(biāo)頭的操作的示圖。
【具體實(shí)施方式】
[0016]以下將參考附圖更詳細(xì)地描述各個(gè)實(shí)施例。然而,本發(fā)明可以具體化為不同的形式并且不應(yīng)該理解為受限于本文所闡述的實(shí)施例。更確切地說,提供這些實(shí)施例使得本公開將是徹底和完整的,并且將向本領(lǐng)域技術(shù)人員充分地傳達(dá)本發(fā)明的范圍。貫穿本公開,相同的附圖標(biāo)記在本發(fā)明的各個(gè)圖和實(shí)施例各處指代相同的部分。
[0017]本發(fā)明可以以許多方式來實(shí)施,包括作為處理;設(shè)備;系統(tǒng);組合物;在計(jì)算機(jī)可讀儲(chǔ)存介質(zhì)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品;和/或處理器(諸如適用于執(zhí)行儲(chǔ)存在耦接至處理器的存儲(chǔ)器上和/或通過耦接至處理器的存儲(chǔ)器所提供的指令的處理器)。在本說明書中,這些實(shí)施例或者本發(fā)明可以采用的任何其它形式可以被稱為技術(shù)。一般而言,所公開的處理的步驟的順序可以在本發(fā)明的范圍內(nèi)改變。除非另有說明,被描述為適用于執(zhí)行任務(wù)的諸如處理器或者存儲(chǔ)器的組件可以被實(shí)施為在給定時(shí)間暫時(shí)適用于執(zhí)行該任務(wù)的普通組件或者被制造來執(zhí)行該任務(wù)的特定組件。作為在本文中所使用的,術(shù)語“處理器”是指一個(gè)或更多個(gè)器件、電路和/或適用于處理數(shù)據(jù)(諸如計(jì)算機(jī)程序指令)的處理核。
[0018]以下提供與示出了本發(fā)明的原理的附圖一起的本發(fā)明的一個(gè)或多個(gè)實(shí)施例的詳細(xì)描述。盡管連同這種實(shí)施例來描述本發(fā)明,但是本發(fā)明不限于任何實(shí)施例。本發(fā)明的范圍僅僅由權(quán)利要求限制并且本發(fā)明包括許多的替換例、變型以及等同例。在以下詳細(xì)說明中,闡述了許多的具體的細(xì)節(jié)以便提供本發(fā)明的徹底的理解。這個(gè)細(xì)節(jié)是為了示例而被提供并且本發(fā)明可以在沒有這些具體細(xì)節(jié)中的一些或者全部的情況下根據(jù)權(quán)利要求來實(shí)踐。為了清楚的目的,沒有詳細(xì)地描述與本發(fā)明有關(guān)的技術(shù)領(lǐng)域所熟知的技術(shù)材料以便本發(fā)明不被不必要地模糊。
[0019]在本文中將描述本發(fā)明的各種實(shí)施例,其提供使用常規(guī)、行業(yè)標(biāo)準(zhǔn)連接的能力以通過接口來管理嵌入式器件或者換句話說與嵌入式器件通信。這些實(shí)施例允許嵌入式器件使用這種常規(guī)、到處存在的基本結(jié)構(gòu)以用于管理和監(jiān)測(cè)。這些實(shí)施例在如圖1所示的嵌入式系統(tǒng)的嵌入式器件上啟用服務(wù),并且通過互聯(lián)網(wǎng)以行業(yè)標(biāo)準(zhǔn)方式來使用該服務(wù)。
[0020]圖1圖示顯示嵌入式系統(tǒng)(或者數(shù)據(jù)處理系統(tǒng))10的示圖。
[0021]參考圖1,嵌入式系統(tǒng)10可以包括嵌入式器件100和主機(jī)設(shè)備200。
[0022]主機(jī)設(shè)備200可以利用各種類型的電子設(shè)備中的任何一個(gè)來實(shí)施。在一些實(shí)施例中,主機(jī)設(shè)備200可以包括諸如臺(tái)式計(jì)算機(jī)、工作站、三維(3D)電視、智能電視、數(shù)字音頻記錄器、數(shù)字音頻播放器、數(shù)字圖像記錄器、數(shù)字圖像播放器、數(shù)字視頻記錄器以及數(shù)字視頻播放器的電子設(shè)備。在一些實(shí)施例中,主機(jī)設(shè)備200可以包括諸如移動(dòng)電話、智能電話、電子書、MP3播放器、便攜式多媒體播放器(PMP)以及便攜式游戲播放器的便攜式電子設(shè)備。
[0023]嵌入式器件100可以響應(yīng)于來自主機(jī)設(shè)備200的請(qǐng)求而操作,并且具體地,存儲(chǔ)要由主機(jī)設(shè)備200訪問的數(shù)據(jù)。在一些實(shí)施例中,嵌入式器件100可以利用諸如固態(tài)驅(qū)動(dòng)器(SSD)的儲(chǔ)存設(shè)備來實(shí)施。在一些實(shí)施例中,嵌入式器件100可以利用諸如多媒體卡(MMC)、嵌入式麗C(e麗C)、縮小尺寸麗C(RS-MMC)以及微型麗C、安全數(shù)字(SD)卡、迷你SD以及微型SD、通用串行總線(USB)儲(chǔ)存設(shè)備、通用快閃儲(chǔ)存(UFS)設(shè)備、緊湊型快閃(CF)卡、智能媒體(SM)卡和記憶棒等的各種類型的儲(chǔ)存設(shè)備中的任意一種來實(shí)施。
[0024]嵌入式器件100可以包括存儲(chǔ)要由主機(jī)設(shè)備200訪問的數(shù)據(jù)的存儲(chǔ)單元110和控制存儲(chǔ)單元110中數(shù)據(jù)的儲(chǔ)存的控制器120。
[0025]用于嵌入式器件100的存儲(chǔ)單元110可以利用諸如動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)和靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)的易失性存儲(chǔ)器件或者諸如只讀存儲(chǔ)器(R0M)、掩模ROM(MROM )、可編程ROM (PROM)、可擦除可編程ROM(EPROM)、電可擦除可編程ROM (EEPROM)、鐵電隨機(jī)存取存儲(chǔ)器(FRAM)、相變RAM(PRAM)、磁阻式RAM(MRAM)以及電阻式RAM(RRAM)的非易失性存儲(chǔ)器件來實(shí)施。
[0026]嵌入式器件100的控制器120可以響應(yīng)于來自主機(jī)設(shè)備200的請(qǐng)求來控制存儲(chǔ)單元110??刂破?20可以將從存儲(chǔ)單元110讀取的數(shù)據(jù)提供至主機(jī)設(shè)備200,以及將從主機(jī)設(shè)備200提供的數(shù)據(jù)儲(chǔ)存到存儲(chǔ)單元110中。
[0027]在一些實(shí)施例中,嵌入式器件100可以配置配置有數(shù)據(jù)中心的儲(chǔ)存器、能夠在無線環(huán)境下發(fā)送與接收信息的設(shè)備、配置家庭網(wǎng)絡(luò)的各種電子設(shè)備中的一種、配置計(jì)算機(jī)網(wǎng)絡(luò)的各種電子設(shè)備中的一種、配置遠(yuǎn)程信息處理網(wǎng)絡(luò)的各種電子設(shè)備中的一種、RFID設(shè)備或者配置計(jì)算系統(tǒng)的各種組成元件中的一種。
[0028]圖2是圖1中所示出的嵌入式器件100的控制器120的框圖。
[0029]參考圖2,控制器120可以包括接口 210、處理器220、錯(cuò)誤校正碼(ECC)單元230、電源管理單元(PMU)240、接口 245以及存儲(chǔ)器260。
[0030]接口 210可以提供在控制器120和存儲(chǔ)單元110之間的接口以允許控制器120響應(yīng)于來自主機(jī)設(shè)備200的請(qǐng)求來控制存儲(chǔ)單元110。接口 210可以產(chǎn)生用于存儲(chǔ)單元110的控制信號(hào)并且在處理器220的控制下處理數(shù)據(jù)。當(dāng)存儲(chǔ)單元110是諸如NAND快閃存儲(chǔ)器的快閃存儲(chǔ)器時(shí),接口 210可以產(chǎn)生用于NAND快閃存儲(chǔ)器110的控制信號(hào)并且在處理器220的控制下處理數(shù)據(jù)。
[0031 ] 處理器220可以控制嵌入式器件100的常規(guī)操作,以及響應(yīng)于來自主機(jī)設(shè)備200的寫入請(qǐng)求或者讀取請(qǐng)求來控制用于存儲(chǔ)單元110的寫入操作或者讀取操作。處理器220可以驅(qū)動(dòng)被稱為快閃轉(zhuǎn)換層(FTL)的固件以控制嵌入式器件100的常規(guī)操作。處理器220可以利用微處理器或者中央處理器(CPU)來實(shí)施。
[0032]ECC單元230可以在讀取操作期間檢測(cè)并且校正從存儲(chǔ)單元110讀取的數(shù)據(jù)中的錯(cuò)誤。ECC單元230在錯(cuò)誤位的數(shù)目大于或等于可校錯(cuò)誤位的閾值數(shù)時(shí)不能校正錯(cuò)誤位,并且可以輸出指示校正錯(cuò)誤位失敗的錯(cuò)誤校正失敗信號(hào)。
[0033]ECC單元230可以基于諸如低密度奇偶校驗(yàn)(LDPC)碼、博斯-喬赫里-霍克文黑姆(BCH,Bose-Chaudhur1-Hocquenghem)碼、禍輪碼(turbo code)、里德-所羅門(RS,Reed-Solomon)碼、卷積碼、遞歸系統(tǒng)碼(RSC)、格形編碼調(diào)制(TCM)和塊碼調(diào)制(BCM)等的編碼調(diào)制來執(zhí)行錯(cuò)誤校正操作。ECC單元230可以包括用于錯(cuò)誤校正操作的所有電路、系統(tǒng)或者設(shè)備。
[0034]PMU 240可以提供和管理用于控制器120的電源,S卩,用于包括在控制器120內(nèi)的組成元件的電源。
[0035]接口 245可以處理從主機(jī)設(shè)備200提供的命令和數(shù)據(jù),并且可以通過各種接口協(xié)議中的任意一種來與主機(jī)設(shè)備200通信。在一些實(shí)施例中,接口 245可以通過串行連接在嵌入式器件100和主機(jī)設(shè)備200之間提供接口。例如,接口 245可以根據(jù)自動(dòng)化/驅(qū)動(dòng)接口傳輸(ADT)協(xié)議來提供接口。
[0036]存儲(chǔ)器260可以用作嵌入式器件100和控制器120的工作存儲(chǔ)器,并且儲(chǔ)存用于驅(qū)動(dòng)嵌入式器件100和控制器120的數(shù)據(jù)??刂破?20可以響應(yīng)于來自主機(jī)設(shè)備200的請(qǐng)求來控制存儲(chǔ)單元110。例如,控制器120可以將從存儲(chǔ)單元110讀取的數(shù)據(jù)提供至主機(jī)設(shè)備200并且將從主機(jī)設(shè)備200提供的數(shù)據(jù)儲(chǔ)存在存儲(chǔ)單元110中。在控制器120控制存儲(chǔ)單元110的操作時(shí),存儲(chǔ)器260可以儲(chǔ)存由控制器120和存儲(chǔ)單元110所使用的數(shù)據(jù)以用于諸如讀取操作、寫入操作、編程操作以及擦除操作的操作。
[0037]存儲(chǔ)器260可以利用易失性存儲(chǔ)器來實(shí)施。存儲(chǔ)器260可以利用靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)或者動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)來實(shí)施。如上所述,存儲(chǔ)器260可以儲(chǔ)存由主機(jī)設(shè)備200和存儲(chǔ)單元110所使用的數(shù)據(jù)以用于讀取操作和寫入操作。為了儲(chǔ)存數(shù)據(jù),存儲(chǔ)器260可以包括程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器、寫入緩沖器、讀取緩沖器和映射緩沖器等。
[0038]圖3是圖示根據(jù)本公開的實(shí)施例的包括嵌入式器件150和主機(jī)設(shè)備250的嵌入式系統(tǒng)20的框圖。在本發(fā)明的示例中,嵌入式系統(tǒng)20、嵌入式器件150以及主機(jī)設(shè)備250可以在結(jié)構(gòu)和功能上分別與如參考圖1和圖2所描述的嵌入式系統(tǒng)10、嵌入式器件100以及主機(jī)設(shè)備200類似。
[0039]參考圖3,嵌入式系統(tǒng)20可以提供使用常規(guī)、行業(yè)標(biāo)準(zhǔn)連接的能力以通過串行互聯(lián)來管理嵌入式器件150或者換句話說與嵌入式器件150通信。這種技術(shù)可以允許嵌入式器件150使用這種常規(guī)、到處存在的基本結(jié)構(gòu)以用于管理和監(jiān)測(cè)。
[0040]嵌入式系統(tǒng)20可以在諸如固態(tài)驅(qū)動(dòng)器(SSD)上啟用服務(wù)并且通過互聯(lián)網(wǎng)以行業(yè)標(biāo)準(zhǔn)方式使用該服務(wù)。嵌入式器件150可以通過串行互聯(lián)連接到主機(jī)設(shè)備250。一個(gè)或更多個(gè)服務(wù)供給者311-312可以位于嵌入式器件150上。在嵌入式器件可見的情況下,由嵌入式器件150提供的服務(wù)的客戶端可以位于網(wǎng)絡(luò)(S卩,互聯(lián)網(wǎng))上的任何地方。在一些實(shí)施例中,如圖3所示,客戶端440可以位于主機(jī)設(shè)備250中??蛇x地,客戶端440可以位于通過主機(jī)設(shè)備250連接的互聯(lián)網(wǎng)(未示出)上。
[0041]嵌入式器件150可以包括多個(gè)服務(wù)提供者(例如,兩個(gè)服務(wù)提供器)311_312、處理單元320以及接口單元330。
[0042]服務(wù)提供器311-312中的每個(gè)可以提供用于服務(wù)的分段。用于諸如SSD的嵌入式器件150的服務(wù)的示例可以包括負(fù)載分布服務(wù)、驅(qū)動(dòng)器健康監(jiān)測(cè)器、容量使用監(jiān)測(cè)器、壞塊計(jì)數(shù)分布、壽命終止預(yù)警服務(wù)、驅(qū)動(dòng)器配置服務(wù)或者任何類型的智能計(jì)數(shù)器采集服務(wù)。
[0043]接口單元330可以耦接到處理單元320,并且可以將由處理單元320產(chǎn)生的傳輸控制協(xié)議(TCP)分段傳送到主機(jī)設(shè)備250。接口單元330可以是在嵌入式器件150和主機(jī)設(shè)備250之間的用于串行互聯(lián)的串行接口。在一些實(shí)施例中,接口單元330可以利用基于自動(dòng)化/驅(qū)動(dòng)接口傳輸(ADT)協(xié)議的串行接口來實(shí)施。
[0044]處理單元320可以向任何服務(wù)提供器311-312給出行業(yè)標(biāo)準(zhǔn)傳輸控制協(xié)議(TCP)接口。為了輸出TCP封包,處理單元320除了使用ADT層而非其將通常使用的互聯(lián)網(wǎng)協(xié)議(IP)層之外,該處理單元320可以起典型TCP桟(stack)的作用。換句話說,處理單元320可以起改進(jìn)的TCP棧的作用。詳細(xì)地,處理單元320可以產(chǎn)生與用于服務(wù)的封包相對(duì)應(yīng)的TCP分段。在一些實(shí)施例中,該封包可以被劃分為若干段,并且TCP分段可以包括封包的段和不具有校驗(yàn)和值(checksum value)的標(biāo)頭。
[0045]主機(jī)設(shè)備250可以包括接口單元410、第一處理單元420、第二處理單元430以及第三處理單元461和第四處理單元462中的至少一個(gè)。此外,主機(jī)設(shè)備250可以包括客戶端440和主機(jī)TCP棧450。
[0046]接口單元410可以接收由嵌入式器件150的處理單元320所產(chǎn)生的TCP分段。接口單元410可以是用于在嵌入式器件150和主機(jī)設(shè)備250之間的串行互聯(lián)的串行接口。在一些實(shí)施例中,接口單元410可以利用基于自動(dòng)化/驅(qū)動(dòng)接口傳輸(ADT)協(xié)議的串行接口來實(shí)施。
[0047]第一處理單元420可以執(zhí)行用于通過接口單元410從嵌入式器件150接收到的TCP分段的TCP校驗(yàn)求和操作以基于TCP分段來計(jì)算校驗(yàn)和值,并且產(chǎn)生包括具有校驗(yàn)和值的標(biāo)頭的新TCP分段。換句話說,第一處理單元420可以起改進(jìn)的TCP校驗(yàn)的作用。此外,第一處理單元420可以將新TCP分段連接到第二處理單元430以用于IP路由。
[0048]第二處理單元430可以對(duì)由第一處理單元420產(chǎn)生的TCP分段執(zhí)行IP路由。由于嵌入式器件150與互聯(lián)網(wǎng)上的具有其自身IP地址和自身服務(wù)組的任何主機(jī)類似,因此第二處理單元430可以執(zhí)行IP路由。如果客戶端位于作為客戶端440的主機(jī)設(shè)備250中,則第二處理單元430可以通過主機(jī)TCP棧處理單元450來對(duì)客戶端440執(zhí)行IP路由。如果客戶端通過主機(jī)設(shè)備250而位于互聯(lián)網(wǎng)上,則第二處理單元430可以對(duì)第三處理單元461和第四處理單元462執(zhí)行IP路由。
[0049]第三處理單元461和第四處理單元462中的每個(gè)可以從第二處理單元430接收由第一處理單元420產(chǎn)生的TCP分段,并且基于由第一處理單元420產(chǎn)生的TCP分段來產(chǎn)生互聯(lián)網(wǎng)協(xié)議(IP)封包。此外,第三處理單元461和第四處理單元462中的每個(gè)可以基于IP封包來產(chǎn)生傳輸幀,并且將該傳輸幀傳送到網(wǎng)絡(luò)(即,以太網(wǎng))。
[0050]如圖3所示,作為行業(yè)標(biāo)準(zhǔn)ADT傳輸層的接口單元330和410可以在串行鏈路的任何一側(cè)上實(shí)施。這個(gè)傳輸層在用于針對(duì)串行的小型計(jì)算機(jī)系統(tǒng)接口(SCSI)的委員會(huì)TlO文件中被描述。傳輸層實(shí)現(xiàn)鏈路像兩側(cè)能夠處理那樣快地運(yùn)行的方案并且保證數(shù)據(jù)的無損耗傳輸。
[0051 ]作為改進(jìn)TCP棧的處理單元320可以存在于嵌入式器件150上,并且向存在于嵌入式器件150中的任何服務(wù)提供器311-312給出行業(yè)標(biāo)準(zhǔn)TCP接口。為了輸出TCP封包,處理單元320除了使用ADT層而非IP層之外,處理單元320起典型TCP棧的作用。處理單元320不執(zhí)行TCP校驗(yàn)求和以保證封包的無損耗傳輸,這緩解了這個(gè)計(jì)算密集工作的嵌入式器件150。此夕卜,處理單元320也不對(duì)進(jìn)入的封包執(zhí)行TCP校驗(yàn)和測(cè)試。這也緩解了這個(gè)計(jì)算密集工作的嵌入式器件150。反而,對(duì)作為在串行鏈路的主機(jī)設(shè)備250上給出的改進(jìn)TCP校驗(yàn)組件的處理單元420進(jìn)行所有TCP校驗(yàn)求和。因此主機(jī)設(shè)備250(通常具有比嵌入式器件150多得多的計(jì)算能力)對(duì)TCP校驗(yàn)求和負(fù)責(zé)。作為改進(jìn)TCP校驗(yàn)組件的處理單元420也對(duì)連接到用于主機(jī)設(shè)備250的IP路由的處理單元430負(fù)責(zé)。這意味著可以使用按照行業(yè)標(biāo)準(zhǔn)方式的IP路由。嵌入式器件150可以看起來像在互聯(lián)網(wǎng)上的具有其自身IP地址和自身服務(wù)組的任何主機(jī)。
[0052]盡管嵌入式器件150的改進(jìn)TCP棧不執(zhí)行TCP校驗(yàn)求和或者TCP校驗(yàn)和測(cè)試,但是作為ADT層的接口單元330和410可以保證無錯(cuò)誤的傳輸。接口單元330和410可以處理和校正在鏈路上產(chǎn)生的位錯(cuò)誤。實(shí)質(zhì)上,由于這是不存在典型TCP假設(shè)的可靠的IP層,因此在嵌入式器件150上的改進(jìn)TCP棧320的輕便特性。
[0053]嵌入式系統(tǒng)具有與其它系統(tǒng)相比更少的輸入/輸出(I/O)連接和處理資源。本發(fā)明的實(shí)施例可以包括在嵌入式器件150和主機(jī)設(shè)備250之間的串行連接,所述主機(jī)設(shè)備250使用比諸如TCP/IP或者用戶數(shù)據(jù)報(bào)協(xié)議/互聯(lián)網(wǎng)協(xié)議(UDP/IP)更少的I/O連接,但是仍然提供對(duì)嵌入式系統(tǒng)20的高帶寬訪問。此外,嵌入式器件150不執(zhí)行TCP校驗(yàn)和產(chǎn)生或者TCP校驗(yàn)和校驗(yàn),這降低在嵌入式器件150的資源限制上的處理負(fù)荷。因此,本發(fā)明的實(shí)施例可以提供管理在嵌入式系統(tǒng)上運(yùn)行的服務(wù)的有利處理,該嵌入式系統(tǒng)在嵌入式系統(tǒng)的I/O限制和處理限制的約束內(nèi)工作。
[0054]由于可以保證嵌入式器件150為不可能通過嵌入式器件150轉(zhuǎn)發(fā)IP封包的端點(diǎn),因此在嵌入式器件150上不需要封包路由表或者任何類型的IP路由。這也節(jié)省相當(dāng)大的計(jì)算資源。
[0055]在一些實(shí)施例中,為了獲取由報(bào)告服務(wù)或者監(jiān)控服務(wù)所使用的適當(dāng)信息,命令經(jīng)由主機(jī)接口被發(fā)送到嵌入式器件150(例如,SSD)以采集一組行業(yè)標(biāo)準(zhǔn)統(tǒng)計(jì)數(shù)字(例如,智能計(jì)數(shù)器)。在本文中的實(shí)施例可以通過串行接口(例如,與主機(jī)接口相對(duì))來使嵌入式器件150在互聯(lián)網(wǎng)上可見。然后嵌入式器件150可以是似乎像任何人期待發(fā)現(xiàn)的任何其它服務(wù)主服務(wù)。被寫入諸如Java的任何互聯(lián)網(wǎng)語言的特定客戶端能夠連接到嵌入式器件150的這些驅(qū)動(dòng)器并且通過數(shù)據(jù)中心中的正常局域網(wǎng)(LAN)來管理它們。
[0056]在一些實(shí)施例中,嵌入式系統(tǒng)可以包括高速通用異步接收器/發(fā)射器發(fā)射器((UART)。在一些實(shí)施例中,TCP授時(shí)服務(wù)可以用來在主機(jī)設(shè)備250(例如,數(shù)據(jù)中心)與嵌入式器件150(例如,SSD)之間使時(shí)間同步。這將例如對(duì)該設(shè)備來說很有價(jià)值以幫助判斷停機(jī)時(shí)間和壽命。
[0057]圖4是示出了根據(jù)本公開的實(shí)施例的嵌入式系統(tǒng)的TCP/IP模型的示圖。TCP/IP模型可以由圖3中的嵌入式器件150和主機(jī)設(shè)備250和/或由圖1和圖2中的嵌入式器件100和主機(jī)設(shè)備200來執(zhí)行。
[0058]參考圖4,TCP/IP模型可以包括應(yīng)用層401、傳輸層402、互聯(lián)網(wǎng)層403以及網(wǎng)絡(luò)接口層404。應(yīng)用層401可以由嵌入式器件150執(zhí)行或者實(shí)施。傳輸層402可以由嵌入式器件150和主機(jī)設(shè)備250執(zhí)行或者實(shí)施?;ヂ?lián)網(wǎng)層403和網(wǎng)絡(luò)接口層404可以由主機(jī)設(shè)備250執(zhí)行或者實(shí)施。
[0059]在步驟470處,嵌入式器件150的服務(wù)提供器311-312中的每個(gè)可以提供用于服務(wù)的封包。用于諸如SSD的嵌入式器件150的服務(wù)的示例可以包括負(fù)載分布服務(wù)、驅(qū)動(dòng)器健康監(jiān)測(cè)器、容量使用監(jiān)測(cè)器、壞塊計(jì)數(shù)分布、壽命終止預(yù)警服務(wù)、驅(qū)動(dòng)器配置服務(wù)或者任何類型的智能計(jì)數(shù)器采集服務(wù)。
[0060]在步驟475處,嵌入式器件150的處理單元320可以起改進(jìn)TCP棧的作用。詳細(xì)地,處理單元320可以產(chǎn)生與用于服務(wù)的封包相對(duì)應(yīng)的TCP分段。在一些實(shí)施例中,該封包可以被劃分為段,并且TCP分段可以包括封包的段和不具有校驗(yàn)和值的標(biāo)頭。
[0061 ] 在步驟480處,嵌入式器件150的接口單元330可以將由處理單元320產(chǎn)生的傳輸控制協(xié)議(TCP)分段傳送到主機(jī)設(shè)備250。
[0062]在步驟485處,主機(jī)設(shè)備250的第一處理單元420可以對(duì)通過接口單元410從嵌入式器件150接收到的TCP分段執(zhí)行TCP校驗(yàn)求和操作以基于該TCP分段計(jì)算校驗(yàn)和值,并且產(chǎn)生包括具有校驗(yàn)和值的標(biāo)頭的新TCP分段。
[0063]在步驟490處,主機(jī)設(shè)備250的第二處理單元430可以對(duì)由第一處理單元420產(chǎn)生的TCP分段執(zhí)行IP路由。此外,第三處理單元461和第四處理單元462中的每個(gè)可以從第二處理單元430接收由第一處理單元420所產(chǎn)生的TCP分段,并且基于由第一處理單元420所產(chǎn)生的TCP分段來產(chǎn)生互聯(lián)網(wǎng)協(xié)議(IP)封包。
[0064]在步驟495處,主機(jī)設(shè)備250的第三處理單元461和第四處理單元462中的每個(gè)可以基于該IP封包來產(chǎn)生傳輸幀,并且將該傳輸幀傳送到網(wǎng)絡(luò)(例如,以太網(wǎng))。
[0065]圖5是圖示根據(jù)本公開的實(shí)施例的產(chǎn)生TCP分段的操作的示圖。例如,產(chǎn)生TCP分段的操作可以由嵌入式器件150的處理單元320執(zhí)行。
[0066]參考圖5,處理單元(例如,處理單元320)可以從服務(wù)提供器(例如,服務(wù)提供器311-312)接收用于服務(wù)的封包或者應(yīng)用層數(shù)據(jù)510。處理單元可以產(chǎn)生與用于服務(wù)的應(yīng)用層數(shù)據(jù)510相對(duì)應(yīng)的TCP分段。在一些實(shí)施例中,應(yīng)用層數(shù)據(jù)510可以被劃分為若干段(段1-段3)520,并且TCP分段530中的每個(gè)可以包括數(shù)據(jù)534的段和不具有校驗(yàn)和值的標(biāo)頭532。例如,TCP分段I可以包括段Piecel和標(biāo)頭Header I,TCP分段2可以包括段Piece 2和標(biāo)頭Header 2,以及TCP分段3可以包括段Piece 3和標(biāo)頭Headerf0
[0067]圖6A和圖6B是圖示根據(jù)本公開的實(shí)施例的傳輸控制協(xié)議(TCP)分段標(biāo)頭的結(jié)構(gòu)的示圖。例如,圖6A的TCP分段標(biāo)頭532A可以由嵌入式器件150的處理單元320產(chǎn)生,并且圖6B的TCP分段標(biāo)頭532B可以由主機(jī)設(shè)備250的處理單元420產(chǎn)生。由于TCP標(biāo)頭的字段是眾所周知的,因此將省略關(guān)于TCP標(biāo)頭的字段的詳細(xì)描述。
[0068]參考圖6A,TCP分段可以包括不具有校驗(yàn)和值的標(biāo)頭532A和數(shù)據(jù)534JCP分段標(biāo)頭532A可以包括源端口數(shù)、目標(biāo)端口數(shù)、序列號(hào)、確認(rèn)號(hào)、長度、標(biāo)記、窗口尺寸、緊急指針、保留字段和選擇字段。
[0069]參考圖6B,TCP分段可以包括具有非校驗(yàn)和值標(biāo)頭532B和數(shù)據(jù)534JCP分段標(biāo)頭532B可以包括源端口數(shù)、目標(biāo)端口數(shù)、序列號(hào)、確認(rèn)號(hào)、長度、標(biāo)記、窗口尺寸、TCP校驗(yàn)和值600、緊急指針、保留字段和選擇字段。與TCP分段標(biāo)頭532A相反,TCP分段標(biāo)頭532B還包括TCP校驗(yàn)和值600。
[0070]利用在適當(dāng)位置的這種系統(tǒng),其可以充分利用行業(yè)標(biāo)準(zhǔn)互聯(lián)網(wǎng)安全協(xié)議、用于多個(gè)服務(wù)的多個(gè)端口以及潛在地限定一整套新產(chǎn)品來在數(shù)據(jù)中心中管理我們的硬件。
[0071]盡管為了理解清楚已經(jīng)相當(dāng)詳細(xì)地描述前述實(shí)施例,但是本發(fā)明不限于所提供的細(xì)節(jié)。存在實(shí)施本發(fā)明的許多可選擇的方法。所公開的實(shí)施例是說明性的而非限制性的。
【主權(quán)項(xiàng)】
1.一種系統(tǒng),包括: 嵌入式器件,適用于提供用于服務(wù)的封包,以及產(chǎn)生包括封包的段和不具有校驗(yàn)和值的第一標(biāo)頭的第一傳輸控制協(xié)議TCP分段;以及 主機(jī)設(shè)備,適用于接收第一 TCP分段,基于封包的段和第一標(biāo)頭來產(chǎn)生包括封包的段和具有校驗(yàn)和值的第二標(biāo)頭的第二TCP分段,以及基于第二TCP分段來產(chǎn)生互聯(lián)網(wǎng)協(xié)議IP封包。2.如權(quán)利要求1所述的系統(tǒng),其中,所述主機(jī)設(shè)備還適用于基于IP封包來產(chǎn)生傳輸幀,以及將傳輸幀傳送到網(wǎng)絡(luò)。3.如權(quán)利要求1所述的系統(tǒng),其中,所述嵌入式器件通過串行互聯(lián)耦接到主機(jī)設(shè)備。4.如權(quán)利要求3所述的系統(tǒng),其中,所述串行互聯(lián)包括基于自動(dòng)化/驅(qū)動(dòng)接口傳輸ADT協(xié)議的串行接口。5.如權(quán)利要求1所述的系統(tǒng),其中,所述嵌入式器件包括固態(tài)驅(qū)動(dòng)器SSD。6.如權(quán)利要求5所述的系統(tǒng),其中,所述服務(wù)包括負(fù)載分布服務(wù)、驅(qū)動(dòng)器健康監(jiān)測(cè)器、容量使用監(jiān)測(cè)器、壞塊計(jì)數(shù)分布、壽命終止預(yù)警服務(wù)、或驅(qū)動(dòng)器配置服務(wù)中的至少一種智能計(jì)數(shù)器采集服務(wù)。7.—種用于操作包括嵌入式器件和主機(jī)設(shè)備的嵌入式系統(tǒng)的方法,所述方法包括: 通過嵌入式器件提供用于服務(wù)的封包; 通過嵌入式器件產(chǎn)生包括封包的段和不具有校驗(yàn)和值的第一標(biāo)頭的第一傳輸控制協(xié)議TCP分段; 通過主機(jī)設(shè)備接收第一 TCP分段; 基于封包的段和第一標(biāo)頭而通過主機(jī)設(shè)備來產(chǎn)生包括封包的段和具有校驗(yàn)和值的第二標(biāo)頭的第二TCP分段;以及 基于第二 TCP分段而通過主機(jī)設(shè)備來產(chǎn)生互聯(lián)網(wǎng)協(xié)議IP封包。8.如權(quán)利要求7所述的方法,還包括: 基于IP封包而通過主機(jī)設(shè)備來產(chǎn)生傳輸幀;以及 通過主機(jī)將傳輸幀傳送到網(wǎng)絡(luò)。9.如權(quán)利要求7所述的方法,其中,所述嵌入式器件通過串行互聯(lián)耦接到主機(jī)設(shè)備。10.如權(quán)利要求9所述的方法,其中,所述串行互聯(lián)包括基于自動(dòng)化/驅(qū)動(dòng)接口傳輸ADT協(xié)議的串行接口。11.如權(quán)利要求7所述的方法,其中,所述嵌入式器件包括固態(tài)驅(qū)動(dòng)器SSD。12.如權(quán)利要求11所述的方法,其中,所述服務(wù)包括負(fù)載分布服務(wù)、驅(qū)動(dòng)器健康監(jiān)測(cè)器、容量使用監(jiān)測(cè)器、壞塊計(jì)數(shù)分布、壽命終止預(yù)警服務(wù)、或驅(qū)動(dòng)器配置服務(wù)中的至少一種智能計(jì)數(shù)器采集服務(wù)。13.—種嵌入式器件,包括: 至少一個(gè)服務(wù)提供器,適用于提供用于服務(wù)的封包; 處理單元,適用于產(chǎn)生包括封包的段和不具有校驗(yàn)和值的標(biāo)頭的傳輸控制協(xié)議TCP分段;以及 接口單元,適用于將TCP分段傳送到主機(jī)設(shè)備。14.如權(quán)利要求13所述的器件,其中,所述接口單元包括基于自動(dòng)化/驅(qū)動(dòng)接口傳輸ADT協(xié)議的串行接口。15.如權(quán)利要求13所述的器件,其中,所述嵌入式器件包括固態(tài)驅(qū)動(dòng)器SSD。16.如權(quán)利要求15所述的器件,其中,所述服務(wù)提供器適用于提供用于服務(wù)的封包,所述服務(wù)包括負(fù)載分布服務(wù)、驅(qū)動(dòng)器健康監(jiān)測(cè)器、容量使用監(jiān)測(cè)器、壞塊計(jì)數(shù)分布、壽命終止預(yù)警服務(wù)、或驅(qū)動(dòng)器配置服務(wù)中的至少一種智能計(jì)數(shù)器采集服務(wù)。17.一種主機(jī)設(shè)備,包括: 接口單元,適用于從嵌入式器件接收包括用于服務(wù)的封包的段和不具有校驗(yàn)和值的第一標(biāo)頭的第一傳輸控制協(xié)議TCP分段; 第一處理單元,適用于基于封包的段和第一標(biāo)頭來計(jì)算校驗(yàn)和值,以及產(chǎn)生包括封包的段和具有校驗(yàn)和值的第二標(biāo)頭的第二 TCP分段; 第二處理單元,適用于執(zhí)行互聯(lián)網(wǎng)協(xié)議IP路由,以及基于第二TCP分段來產(chǎn)生互聯(lián)網(wǎng)協(xié)議IP封包;以及 第三處理單元,適用于基于IP封包來產(chǎn)生傳輸幀,以及將傳輸幀傳送到網(wǎng)絡(luò)。18.如權(quán)利要求17所述的設(shè)備,其中,所述接口單元包括基于自動(dòng)化/驅(qū)動(dòng)接口傳輸ADT協(xié)議的串行接口。19.如權(quán)利要求17所述的設(shè)備,其中,所述嵌入式器件包括固態(tài)驅(qū)動(dòng)器SSD。20.如權(quán)利要求19所述的設(shè)備,其中,所述服務(wù)包括負(fù)載分布服務(wù)、驅(qū)動(dòng)器健康監(jiān)測(cè)器、容量使用監(jiān)測(cè)器、壞塊計(jì)數(shù)分布、壽命終止預(yù)警服務(wù)、或驅(qū)動(dòng)器配置服務(wù)中的至少一種智能計(jì)數(shù)器采集服務(wù)。
【文檔編號(hào)】H04L29/06GK105897689SQ201610090018
【公開日】2016年8月24日
【申請(qǐng)日】2016年2月17日
【發(fā)明人】斯蒂芬·J.·席爾瓦
【申請(qǐng)人】愛思開海力士有限公司