国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      網(wǎng)卡及信息處理裝置的制作方法

      文檔序號(hào):7942368閱讀:136來源:國(guó)知局
      專利名稱:網(wǎng)卡及信息處理裝置的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及一種數(shù)據(jù)發(fā)送技術(shù),特別是涉及一種有效地發(fā)送寬帶流數(shù)據(jù) (Streaming data)的技術(shù)。
      背景技術(shù)
      近幾年,實(shí)現(xiàn)了視頻點(diǎn)播(VOD)等流媒體服務(wù)。另外,由于近幾年的存取網(wǎng)的寬帶 化,從發(fā)配服務(wù)器發(fā)送的一個(gè)視頻流數(shù)據(jù)的頻寬也增大。此外,可預(yù)期以后通過所謂HD (高 清)圖像的發(fā)配等,會(huì)進(jìn)一步寬帶化。隨著從發(fā)配服務(wù)器傳輸?shù)臄?shù)據(jù)傳輸率增大,該發(fā)配服 務(wù)器的內(nèi)部總線(例如PCI等)的利用率也有增大的趨勢(shì)。一般在網(wǎng)絡(luò)接口方面,根據(jù)各規(guī)格而規(guī)定有可傳輸?shù)淖畲蟮臄?shù)據(jù)長(zhǎng)度(MTU)。例如 即使是IEEE 802. 3系列規(guī)格,所知的以太網(wǎng)絡(luò)(注冊(cè)商標(biāo))中也是最大約1.5k字節(jié)。因 此,一般而言,設(shè)備驅(qū)動(dòng)程序即使在內(nèi)部總線可傳送的數(shù)據(jù)長(zhǎng)度非常大的情況下,也將發(fā)送 到網(wǎng)絡(luò)上的數(shù)據(jù)分割成不超過上述MTU的大小的數(shù)據(jù)以后,經(jīng)由內(nèi)部總線傳輸至接口板。 此外,該分割被稱為片段(Fragment)處理。之后,通過板上的MAC/PHY來進(jìn)行處理并發(fā)送 至網(wǎng)絡(luò)。另一方面,在流媒體服務(wù)中,因?yàn)閿?shù)據(jù)量多而會(huì)在網(wǎng)絡(luò)上發(fā)生包損壞等。在此情況 下,可以不從接收側(cè)發(fā)出重發(fā)請(qǐng)求,而在發(fā)配服務(wù)器中利用前向糾錯(cuò)碼(FEC)。例如,利用如 專利文獻(xiàn)1所公開的編碼。專利文獻(xiàn)1 國(guó)際公開號(hào)第W02005/112250號(hào)

      發(fā)明內(nèi)容
      在內(nèi)部總線中,一般而言,能夠根據(jù)流數(shù)據(jù)的發(fā)送單位以非常大的數(shù)據(jù)單位(數(shù) 據(jù)長(zhǎng)度)進(jìn)行傳輸。不過,如同上述,由于MTU的限制,其結(jié)果在內(nèi)部總線上流動(dòng)的數(shù)據(jù)長(zhǎng) 度會(huì)變小。因此,在流數(shù)據(jù)的發(fā)送方面,容易發(fā)生總線混亂,存在由于片段處理而需要CPU 功耗的問題。另外,為了對(duì)大量的數(shù)據(jù)執(zhí)行專利文獻(xiàn)1所公開的編碼處理,需要更大的CPU功
      ^^ ο本發(fā)明是鑒于上述的問題而作出的,其目的在于解決這些問題中的至少一個(gè)。為了解決上述問題中的至少一個(gè),本發(fā)明的一種網(wǎng)卡具備以下結(jié)構(gòu)。S卩,一種網(wǎng)卡,具備主機(jī)連接器,用于與設(shè)置在主機(jī)裝置上的總線連接器連接; 和網(wǎng)絡(luò)連接器,用于與網(wǎng)絡(luò)連接,所述網(wǎng)卡還具備接收單元,將能夠經(jīng)由所述網(wǎng)絡(luò)連接器 發(fā)送的數(shù)據(jù)幀的最大大小設(shè)為第1大小時(shí),以比所述第1大小大的第2大小的塊數(shù)據(jù)為單 位,經(jīng)由所述主機(jī)連接器而接收經(jīng)由所述網(wǎng)絡(luò)連接器發(fā)送的數(shù)據(jù);緩沖存儲(chǔ)器,用于暫時(shí)存 儲(chǔ)所述接收單元所接收的塊數(shù)據(jù);以及發(fā)送單元,從所述緩沖存儲(chǔ)器讀入用于包含到發(fā)送 的數(shù)據(jù)幀中的數(shù)據(jù),生成所述第1大小以下的數(shù)據(jù)幀,將該數(shù)據(jù)幀發(fā)送至與所述網(wǎng)絡(luò)連接 器連接的網(wǎng)絡(luò)上。
      4
      為了解決上述問題中的至少一個(gè),本發(fā)明的一種信息處理裝置具備以下結(jié)構(gòu)。S卩,一種信息處理裝置,具備通過總線連接的主機(jī)處理部和網(wǎng)絡(luò)處理部,將流數(shù)據(jù) 發(fā)送至網(wǎng)絡(luò),所述主機(jī)處理部具備數(shù)據(jù)輸入單元,輸入流數(shù)據(jù);和總線傳輸單元,將能夠 在所述網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)幀的最大大小設(shè)為第1大小時(shí),以比該第1大小大的第2大小的 塊數(shù)據(jù)為單位,經(jīng)由所述總線將至少所述流數(shù)據(jù)傳輸至所述網(wǎng)絡(luò)處理部,所述網(wǎng)絡(luò)處理部 具備接收單元,接收從所述總線傳輸單元經(jīng)由所述總線所發(fā)送的塊數(shù)據(jù);存儲(chǔ)單元,用于 暫時(shí)存儲(chǔ)所述接收單元所接收的塊數(shù)據(jù);以及發(fā)送單元,從所述存儲(chǔ)單元讀入用于包含到 發(fā)送的數(shù)據(jù)幀中的數(shù)據(jù),生成所述第1大小以下的數(shù)據(jù)幀,將該數(shù)據(jù)幀發(fā)送至與所述網(wǎng)絡(luò) 連接器連接的網(wǎng)絡(luò)上。發(fā)明效果根據(jù)本發(fā)明,能夠提供一種高效地發(fā)送流數(shù)據(jù)的技術(shù)。


      圖1是例示地表示流發(fā)配系統(tǒng)的整體結(jié)構(gòu)的圖。圖2是表示第1實(shí)施例的發(fā)配服務(wù)器的內(nèi)部結(jié)構(gòu)的圖。圖3是表示第1實(shí)施例的發(fā)配服務(wù)器內(nèi)的網(wǎng)絡(luò)板的內(nèi)部結(jié)構(gòu)的圖。圖4是表示與第1實(shí)施例的發(fā)配服務(wù)器的數(shù)據(jù)發(fā)送相關(guān)的功能結(jié)構(gòu)的圖。圖5是第1實(shí)施例的發(fā)配服務(wù)器的數(shù)據(jù)處理流程圖。圖6是表示第2實(shí)施例的發(fā)配服務(wù)器內(nèi)的網(wǎng)絡(luò)板的內(nèi)部結(jié)構(gòu)的圖。圖7是表示與第2實(shí)施例的發(fā)配服務(wù)器的數(shù)據(jù)發(fā)送相關(guān)的功能結(jié)構(gòu)的圖。標(biāo)號(hào)說明100IlOaUlOb30130230331040140240340具體實(shí)施例方式以下,參照附圖詳細(xì)說明本發(fā)明優(yōu)選的實(shí)施方式。此外,這些實(shí)施方式僅是例示, 并非將本發(fā)明的范圍局限于此。(第1實(shí)施例)作為本發(fā)明的數(shù)據(jù)發(fā)送裝置的第1實(shí)施例,以下由通用PC及網(wǎng)絡(luò)板所構(gòu)成的流發(fā) 配裝置為例進(jìn)行說明。< 概要 >
      發(fā)配服務(wù)器 接收終端
      包處理器(發(fā)送單元)
      存儲(chǔ)器(緩沖存儲(chǔ)器或者存儲(chǔ)單元)
      存儲(chǔ)控制器
      總線I/F (接收單元)
      輸入部(輸入單元)
      總線傳輸部(總線傳輸單元)
      片段處理部(發(fā)送單元)
      平滑處理部(發(fā)送間隔控制單元)
      在第1實(shí)施例的流發(fā)配裝置中,以往通過PC主體的CPU執(zhí)行設(shè)備驅(qū)動(dòng)程序而進(jìn)行 的片段處理(Fragment processing)是由網(wǎng)絡(luò)板上的硬件來進(jìn)行的。其結(jié)果,實(shí)現(xiàn)PC主體 的CPU的負(fù)荷降低,并且能以更大的數(shù)據(jù)長(zhǎng)度來經(jīng)由總線對(duì)網(wǎng)絡(luò)板進(jìn)行數(shù)據(jù)傳輸,實(shí)現(xiàn)總 線使用效率的提升。<系統(tǒng)結(jié)構(gòu)以及裝置結(jié)構(gòu)>圖1表示流發(fā)配系統(tǒng)的整體結(jié)構(gòu)的概念圖。發(fā)配服務(wù)器100是流發(fā)配服務(wù)器,IlOaUlOb是流接收裝置。另外,IOlUlla以及 Illb分別是發(fā)配服務(wù)器100、接收裝置110a、IlOb所屬的網(wǎng)段(Network segment)。各網(wǎng)段 101、llla、lllb是經(jīng)由路由器102、112a、112b以及核心網(wǎng)絡(luò)120連接。此外,以后,在各網(wǎng) 段之間的數(shù)據(jù)傳輸方面,以使用因特網(wǎng)協(xié)議(IP)的情況進(jìn)行說明。發(fā)配服務(wù)器100對(duì)接收終端IlOaUlOb以RTP/UDP/IP的形式來將流數(shù)據(jù)進(jìn)行 封包化并發(fā)送。在此,RTP代表實(shí)時(shí)傳輸協(xié)議,UDP代表用戶數(shù)據(jù)報(bào)協(xié)議(User Datagram Protocol) 0此外,發(fā)配服務(wù)器100能以單播(imicast)來對(duì)各接收終端進(jìn)行流發(fā)配,也可 以利用組播(multicast)來進(jìn)行發(fā)配。另外,也可以如同所謂的視頻點(diǎn)播(VOD)服務(wù),根據(jù) 來自各接收終端的發(fā)配請(qǐng)求而開始發(fā)配。圖2是表示第1實(shí)施例的發(fā)配服務(wù)器的內(nèi)部結(jié)構(gòu)圖。如圖所示,發(fā)配服務(wù)器100 由CPU201、RAM202、R0M203、HDD204、用戶I/F 205以及網(wǎng)絡(luò)(NW)板200所構(gòu)成,各部分通 過內(nèi)部系統(tǒng)總線210相互連接。CPU201通過執(zhí)行R0M203、HDD204中所存儲(chǔ)的各種程序來控制各部,并實(shí)現(xiàn)圖4中 后述的各功能部。R0M203存儲(chǔ)發(fā)配服務(wù)器100起動(dòng)時(shí)等所執(zhí)行的程序等。RAM202暫時(shí)存 儲(chǔ)由CPU201所執(zhí)行的各種程序和各種數(shù)據(jù)。HDD204是大容量的存儲(chǔ)裝置,進(jìn)行各種程序和 各種數(shù)據(jù)文件的存儲(chǔ)。程序中包含有操作系統(tǒng)(OS)程序和流發(fā)配程序。用戶I/F205是未 圖標(biāo)的鍵盤、鼠標(biāo)等用戶輸入裝置、以及未圖標(biāo)的顯示器等顯示輸出裝置。作為內(nèi)部系統(tǒng)總線210,假設(shè)是含有普通PCI總線的通用總線,但當(dāng)然也可以是專 用的總線。不過,總線210的傳輸速度比網(wǎng)絡(luò)101的傳輸速度高,可傳輸?shù)臄?shù)據(jù)長(zhǎng)度比網(wǎng)絡(luò) 101的數(shù)據(jù)長(zhǎng)度長(zhǎng)。此外,為了以后方便說明,在發(fā)配服務(wù)器100中,有時(shí)會(huì)將網(wǎng)絡(luò)(NW)板200稱為 “NW板側(cè)”,其以外的部分稱為“服務(wù)器主體側(cè)”。圖3是表示第1實(shí)施例的發(fā)配服務(wù)器內(nèi)的網(wǎng)絡(luò)板的內(nèi)部結(jié)構(gòu)的圖。如圖所示,網(wǎng) 絡(luò)板200由包處理器(Packet Handler) 301、存儲(chǔ)器302、存儲(chǔ)控制器303以及總線I/F 310 所構(gòu)成。存儲(chǔ)器302是暫時(shí)存儲(chǔ)經(jīng)由總線210以及總線I/F 310從服務(wù)器主體側(cè)接收的數(shù) 據(jù)的部分,且在內(nèi)部具備包緩存器(Packet Buffer)302a。此外,后述詳細(xì)情況,包緩存器 302a針對(duì)每個(gè)流確保有區(qū)域。包處理器301是以適合網(wǎng)絡(luò)110的數(shù)據(jù)形式來發(fā)送暫時(shí)存儲(chǔ)于存儲(chǔ)器302的數(shù) 據(jù)的電路部。具體而言,對(duì)于暫時(shí)存儲(chǔ)在存儲(chǔ)器302的數(shù)據(jù),進(jìn)行后述的片段處理和平滑 (smoothing)處理之后,輸出至網(wǎng)絡(luò)110?!垂δ芙Y(jié)構(gòu)以及動(dòng)作〉圖4是表示第1實(shí)施例的發(fā)配服務(wù)器的功能結(jié)構(gòu)的圖。
      發(fā)配服務(wù)器100具備輸入部401、總線傳輸部402、片段處理部403以及平滑處理 部404作為與數(shù)據(jù)發(fā)送相關(guān)的功能部。此外,服務(wù)器主體側(cè)的CPU201執(zhí)行各種程序,由此 實(shí)現(xiàn)輸入部401以及總線傳輸部402的各功能部。另一方面,通過NW板側(cè)的硬件來實(shí)現(xiàn)片 段處理部403以及平滑處理部404的各功能部。以下,對(duì)各功能部進(jìn)行說明。此外,以下為了簡(jiǎn)化說明,僅就各處理部對(duì)RTP/UDP/IP形式的流數(shù)據(jù)進(jìn)行的處理 進(jìn)行說明。在其它的數(shù)據(jù)方面,則采用與以往相同的處理。此外,包的區(qū)分可以根據(jù)IP標(biāo) 頭(header)所記載的端口號(hào)碼來進(jìn)行,也可以僅根據(jù)包的數(shù)據(jù)長(zhǎng)度來進(jìn)行。輸入部401是輸入經(jīng)由網(wǎng)絡(luò)板200發(fā)送的流文件的功能部。具體而言,CPU201執(zhí) 行流發(fā)配軟件,由此將存儲(chǔ)在HDD204等的流數(shù)據(jù)讀入至RAM202,從而實(shí)現(xiàn)輸入部401。此 外,輸入部401的功能在于作為輸入單元。總線傳輸部402是將由輸入部401輸入至RAM202上的流數(shù)據(jù)分割成預(yù)定的固定 長(zhǎng)數(shù)據(jù)以后,存儲(chǔ)為RTP/UDP/IP形式并經(jīng)由總線210傳輸至NW板側(cè)的功能部。具體而言, 由CPU201執(zhí)行IP堆棧程序以及NW板200的設(shè)備驅(qū)動(dòng)程序來實(shí)現(xiàn)總線傳輸部402。此外, 總線傳輸部402的功能在于作為總線傳輸單元。但是,與背景技術(shù)所說明的情況不同,被傳輸?shù)牧鲾?shù)據(jù)包比可發(fā)送至網(wǎng)絡(luò)101的 數(shù)據(jù)長(zhǎng)度大。例如即使網(wǎng)絡(luò)101是以太網(wǎng)絡(luò)(注冊(cè)商標(biāo))的情況下,換言之,最大的數(shù)據(jù)長(zhǎng) 度(MTU)(第1大小)為約1. 5k字節(jié)時(shí),也會(huì)以例如32k字節(jié)等大數(shù)據(jù)塊(第2大小)傳輸。此外,一般在應(yīng)用程序和IP堆棧程序之間,以及在IP堆棧程序和設(shè)備驅(qū)動(dòng)程序之 間的數(shù)據(jù)形式方面,因?yàn)榇_定了規(guī)格,所以在進(jìn)行變更時(shí)會(huì)伴隨著很大的設(shè)計(jì)變更。不過, 應(yīng)注意到如同上述,設(shè)備驅(qū)動(dòng)程序和硬件之間的數(shù)據(jù)形式可較自由地進(jìn)行設(shè)計(jì)。后述詳細(xì)情況,在數(shù)據(jù)(數(shù)據(jù)塊)中,優(yōu)選的是,將除去IP、UDP、RTP的各標(biāo)頭的有 效負(fù)載部設(shè)定為與流數(shù)據(jù)的最小處理單位的整數(shù)倍(或2的冪乘倍)相當(dāng)?shù)臄?shù)據(jù)長(zhǎng)度。片段處理部403是將經(jīng)由總線210 (總線連接器)從總線傳輸部402所傳輸?shù)臄?shù) 據(jù)(數(shù)據(jù)塊)分割成可發(fā)送至網(wǎng)絡(luò)101的數(shù)據(jù)長(zhǎng)度的功能部。具體而言,經(jīng)由未圖示的主 機(jī)連接器(Host connector)將存儲(chǔ)于存儲(chǔ)器302的數(shù)據(jù)塊分割成網(wǎng)絡(luò)101的MTU以下的 數(shù)據(jù)長(zhǎng)度,并再生成與被分割的數(shù)據(jù)對(duì)應(yīng)的IP、UDP、RTP的各標(biāo)頭。然后,將可直接發(fā)送至 網(wǎng)絡(luò)101的數(shù)據(jù)長(zhǎng)度的IP包存儲(chǔ)在包緩存器302a。此外,總線I/F 310的功能在于作為接 收單元,存儲(chǔ)器302的功能在于作為緩沖存儲(chǔ)器或者存儲(chǔ)單元。另外,片段處理部403構(gòu)成 發(fā)送單元的一部分,包處理器301的功能在于作為發(fā)送單元。此外,所謂再生成IP、UDP、RTP的各標(biāo)頭,具體而言就是以下的處理。在IP包中, 記載有該IP包所包含的數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度(有效負(fù)載長(zhǎng)度)。另外,在UDP標(biāo)頭中,記載有 該UDP包所包含的數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度以及該數(shù)據(jù)的校驗(yàn)和。此外,在RTP包中,記載有該RTP 包所包含的數(shù)據(jù)的序列號(hào)碼以及時(shí)間戳。因此,片段處理部403進(jìn)行片段處理的結(jié)果,因?yàn)?RTP包被分割,所以與被分割的包對(duì)應(yīng)地,算出被記載于這些各標(biāo)頭內(nèi)的信息,并更新標(biāo)頭 信息。此外,在從總線傳輸部402傳輸?shù)臄?shù)據(jù)(數(shù)據(jù)塊)中,將除去IP、UDP、RTP的各標(biāo)頭 的有效負(fù)載部進(jìn)行等分割,所以標(biāo)頭信息的計(jì)算變得簡(jiǎn)單。因此,如同前述,優(yōu)選的是,將數(shù) 據(jù)塊的有效負(fù)載部設(shè)定為與流數(shù)據(jù)的最小處理單位的整數(shù)倍(或2的冪乘倍)相當(dāng)?shù)臄?shù)據(jù) 長(zhǎng)度。
      7
      平滑處理部404是如下功能部,其將通過片段處理部403存儲(chǔ)在包緩存器302a的 固定長(zhǎng)度的IP包以相等間隔發(fā)送至網(wǎng)絡(luò)101。具體而言,根據(jù)存儲(chǔ)在包緩存器302a的固定 長(zhǎng)度的IP包內(nèi)的標(biāo)頭信息來算出發(fā)送間隔,按所存儲(chǔ)的順序發(fā)送IP包??赏ㄟ^例如IP標(biāo) 頭或UDP標(biāo)頭的數(shù)據(jù)長(zhǎng)度的信息和RTP標(biāo)頭的時(shí)間戳的信息來算出發(fā)送間隔。另外,也能 以推測(cè)不會(huì)成為突發(fā)性通信(burst traffic)特性的預(yù)先設(shè)定的發(fā)送間隔依次發(fā)送IP數(shù) 據(jù)。此外,平滑處理部404的功能在于作為發(fā)送間隔控制單元。此外,在上述的說明中,以片段處理后的IP(RTP)包在時(shí)間方向上成為均等間隔 的方式進(jìn)行發(fā)送控制。不過,一般而言,從NW板200,不僅是可以發(fā)送RTP包,還可發(fā)送被利 用于控制該RTP包流的RTCP包或其它包。因此,優(yōu)選的是,能預(yù)先確??墒褂糜赗TP包以 外的時(shí)隙(time slot),以除了該時(shí)隙以外的期間為均等間隔的方式進(jìn)行發(fā)送控制。<動(dòng)作流程>圖5是第1實(shí)施例的發(fā)配服務(wù)器的數(shù)據(jù)處理流程圖。此外,以下的步驟是通過例 如接收來自接收裝置IlOa(或者IlOb)的流數(shù)據(jù)發(fā)送請(qǐng)求而開始。此外,在此,假設(shè)流數(shù)據(jù) 的最小處理單位是64字節(jié)。在步驟S501中,輸入部401從HDD204等讀入從接收裝置IlOa請(qǐng)求的流數(shù)據(jù),并 存儲(chǔ)于RAM202。在步驟S502中,總線傳輸部402將在步驟S501中存儲(chǔ)在RAM202的數(shù)據(jù)分割成例 如16k字節(jié)(=64字節(jié)X28)的數(shù)據(jù)長(zhǎng)的數(shù)據(jù)塊。然后,對(duì)該數(shù)據(jù)塊生成IP、UDP、RTP的 各標(biāo)頭,并以RTP/UDP/IP的形式存儲(chǔ),經(jīng)由總線210傳輸至NW板側(cè)。在步驟S503中,片段處理部403將在步驟S502中經(jīng)由總線210從總線傳輸部402 傳輸?shù)臄?shù)據(jù)塊內(nèi)的有效負(fù)載數(shù)據(jù)分割成例如512字節(jié)(=64字節(jié)X 23)的數(shù)據(jù)長(zhǎng)度的數(shù) 據(jù)。換言之,將數(shù)據(jù)塊分割成網(wǎng)絡(luò)101的MTU以下的數(shù)據(jù)長(zhǎng)度。然后,對(duì)被分割生成的512 字節(jié)長(zhǎng)的各數(shù)據(jù)再生成IP、UDP、RTP的各標(biāo)頭,并以RTP/UDP/IP的形式存儲(chǔ)。然后,將再生 成的IP包存儲(chǔ)于包緩存器302a。步驟S504中,平滑處理部404將在步驟S503中存儲(chǔ)于包緩存器302a的IP包,以 相等間隔發(fā)送至網(wǎng)絡(luò)101。此外,在上述的流程圖中,為了簡(jiǎn)化說明,說明了從發(fā)配服務(wù)器100發(fā)送單一流數(shù) 據(jù)的情況。不過,當(dāng)然能對(duì)每個(gè)流數(shù)據(jù)執(zhí)行上述的處理。特別是,通過對(duì)每個(gè)流數(shù)據(jù)執(zhí)行上 述平滑處理部404的處理,到達(dá)各接收裝置IlOaUlOb所屬的網(wǎng)段IllaUllb的流數(shù)據(jù)分 別為突發(fā)性被抑制的通信量,所以有不易發(fā)生數(shù)據(jù)丟失的優(yōu)點(diǎn)。如同以上所說明,通過第1實(shí)施例的發(fā)配服務(wù)器,能夠大幅度降低由于片段處理 所造成的總線210的負(fù)荷(擁塞)以及執(zhí)行片段處理所造成的CPU201的負(fù)荷。因此,大幅 緩和了因總線210的傳輸能力或者CPU201的處理能力所引起的瓶頸。其結(jié)果,能夠更有效 率地發(fā)送流數(shù)據(jù)。(第2實(shí)施例)〈概要〉在第2實(shí)施例中,除了第1實(shí)施例的結(jié)構(gòu)以外,在NW板上配置前向糾錯(cuò)碼(FEC)的 編碼器。此外,在此所謂的前向糾錯(cuò)碼包含缺損補(bǔ)償碼。通過這種結(jié)構(gòu),能夠大幅降低FEC 編碼處理所消耗的CPU功率。另外,能夠降低總線使用率(通信量)。
      此外,在流發(fā)配系統(tǒng)的整體結(jié)構(gòu)(圖1)以及發(fā)配服務(wù)器的內(nèi)部結(jié)構(gòu)(圖2)方面, 因?yàn)楹偷?實(shí)施例相同,所以省略說明。<FEC 碼 >在本發(fā)明中,作為FEC碼,使用缺損補(bǔ)償碼特別有效。因此,在第2實(shí)施例中,作為 FEC碼,假設(shè)使用由美國(guó)Digital Fountain公司所開發(fā)的FEC碼即Raptor碼(預(yù)編碼)。 不過,當(dāng)然也可以使用一般的里德-所羅門(RS=Reed-Solomon)架構(gòu)的碼。以下簡(jiǎn)單地說 明Raptor碼,細(xì)節(jié)請(qǐng)參照背景技術(shù)中所述的專利文獻(xiàn)1。在Raptor碼中,以特定的數(shù)據(jù)長(zhǎng)度(sXk字節(jié))的每個(gè)區(qū)間來劃分流文件,將各 區(qū)間的數(shù)據(jù)分割成被稱為“輸入記號(hào)”的相同數(shù)據(jù)長(zhǎng)度(s字節(jié))的k個(gè)數(shù)據(jù)。然后,根據(jù) 被稱為金鑰(key)的索引(index)值,從被分割的k個(gè)輸入記號(hào)中選擇1個(gè)以上的輸入記 號(hào),以每個(gè)位對(duì)被選擇的輸入記號(hào)之間進(jìn)行XOR運(yùn)算,并生成被稱為“輸出記號(hào)”的s字節(jié) 的數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)。對(duì)不同的金鑰連續(xù)生成這種輸出記號(hào)。另一方面,在接收側(cè)隨機(jī)地接收k+α個(gè)(α小于k)輸出記號(hào),對(duì)輸出記號(hào)之間進(jìn) 行XOR運(yùn)算,從而使輸入記號(hào)復(fù)原。此時(shí),因?yàn)槟苋我獾剡x擇k+α個(gè)輸出記號(hào),所以有即使 在傳輸中有某個(gè)包丟失的情況下也能復(fù)原的優(yōu)越特性。<裝置結(jié)構(gòu)>圖6是表示第2實(shí)施例的發(fā)配服務(wù)器內(nèi)的網(wǎng)絡(luò)板的內(nèi)部結(jié)構(gòu)的圖。如圖所示,網(wǎng) 絡(luò)板600除了具備包處理器601、存儲(chǔ)器602、存儲(chǔ)控制器603、總線I/F 610以外,還具備 編碼引擎604以及編碼控制部605。以下,對(duì)與第1實(shí)施例不同的部分即FEC編碼引擎604 以及編碼控制部605進(jìn)行說明。FEC編碼引擎604是以硬件執(zhí)行XOR運(yùn)算的電路。本領(lǐng)域技術(shù)人員很熟悉包括XOR 運(yùn)算的邏輯運(yùn)算能容易地以硬件實(shí)現(xiàn)。編碼控制部605是如下功能部,其通過控制FEC編碼引擎604來實(shí)現(xiàn)前述的 Raptor碼的編碼動(dòng)作。此外,優(yōu)選的是,通過將編碼控制部605構(gòu)成為未圖標(biāo)的CPU以及 存儲(chǔ)控制程序的閃存,由此可輕易地變更為其它的FEC碼算法。此外,編碼控制部605以及 FEC編碼引擎604相當(dāng)于實(shí)施例的編碼單元。具體而言,編碼控制部605從暫時(shí)存儲(chǔ)于存儲(chǔ)器602的數(shù)據(jù)(輸入記號(hào))中,選擇 1以上的輸入記號(hào)并輸入至FEC編碼引擎604,由此依次生成輸出記號(hào)。然后,將所生成的 輸出記號(hào)暫時(shí)存儲(chǔ)在存儲(chǔ)器602。不過,如在前述的對(duì)Raptor碼進(jìn)行的說明,應(yīng)注意輸出記號(hào)和輸入記號(hào)的數(shù)據(jù)長(zhǎng) 度相同,但數(shù)量至少增加α個(gè)以上。包處理器601是如下電路部,其以適合網(wǎng)絡(luò)110的數(shù)據(jù)形式,發(fā)送由暫時(shí)存儲(chǔ)于存 儲(chǔ)器602的輸出記號(hào)所構(gòu)成的數(shù)據(jù)。具體而言,對(duì)暫時(shí)存儲(chǔ)于存儲(chǔ)器602的數(shù)據(jù)進(jìn)行片段 處理和平滑處理之后,輸出至網(wǎng)絡(luò)110?!垂δ芙Y(jié)構(gòu)以及動(dòng)作〉圖7是表示第2實(shí)施例的發(fā)配服務(wù)器的功能結(jié)構(gòu)的圖。發(fā)配服務(wù)器100作為與數(shù)據(jù)發(fā)送相關(guān)的功能部,除了具備輸入部701、總線傳輸部 702、片段處理部703、平滑處理部704以外,還具備編碼處理部705。以下,對(duì)與第1實(shí)施例 不同的部分即編碼處理部705所相關(guān)的部分進(jìn)行說明。
      編碼處理部705是如下功能部,對(duì)經(jīng)由總線210從總線傳輸部702傳輸?shù)臄?shù)據(jù)(數(shù) 據(jù)塊)執(zhí)行FEC編碼處理。具體而言,將由編碼引擎604以及編碼控制部605所實(shí)現(xiàn)且被 存儲(chǔ)于存儲(chǔ)器302的數(shù)據(jù)塊認(rèn)定為前述的輸入記號(hào),并生成輸出記號(hào)。片段處理部703是如下功能部,其將由編碼處理部705所編碼的輸出記號(hào)(數(shù)據(jù) 塊)分割為可發(fā)送至網(wǎng)絡(luò)101的數(shù)據(jù)長(zhǎng)度。具體而言,將存儲(chǔ)于存儲(chǔ)器602的數(shù)據(jù)塊分割 成網(wǎng)絡(luò)101的MTU以下的數(shù)據(jù)長(zhǎng)度,再生成與被分割的數(shù)據(jù)對(duì)應(yīng)的IP、UDP、RTP的各標(biāo)頭。 然后,將可直接發(fā)送于網(wǎng)絡(luò)101的數(shù)據(jù)長(zhǎng)度的IP包存儲(chǔ)于包緩存器602a。不過,如同前述,通過編碼處理部705的編碼處理,增加了冗余數(shù)據(jù),其結(jié)果,與編 碼處理部705的輸入率(Input rate)相比,輸出率(Output rate)較大。具體而言,從k 個(gè)輸入記號(hào)生成k+α個(gè)輸出記號(hào)的情況下,因?yàn)槭窍嗤臄?shù)據(jù)長(zhǎng)度,所以輸出率是輸入率 的(k+a)/k倍。這時(shí)候,編碼率是被表示成k/(k+α),例如根據(jù)編碼率再設(shè)定RTP標(biāo)頭的 時(shí)間戳。換言之,與非編碼時(shí)相比,將時(shí)間間隔設(shè)定為縮短約k/(k+a)倍。在此,輸入記號(hào) 以及輸出記號(hào)的1個(gè)數(shù)據(jù)量相當(dāng)于實(shí)施例的第1數(shù)據(jù)量。另外,相當(dāng)于k個(gè)輸入記號(hào)的數(shù) 據(jù)量相當(dāng)于實(shí)施例的第2數(shù)據(jù)量。 平滑處理部704是如下功能部,其將通過片段處理部703存儲(chǔ)在包緩存器602a的 固定長(zhǎng)度的IP包以相等間隔發(fā)送至網(wǎng)絡(luò)101。具體而言,根據(jù)包緩存器602a中所存儲(chǔ)的 固定長(zhǎng)度的IP包內(nèi)的標(biāo)頭信息來算出發(fā)送間隔,按存儲(chǔ)的順序發(fā)送IP包。如同前述,因?yàn)?RTP標(biāo)頭的時(shí)間戳被設(shè)定得短,結(jié)果發(fā)送間隔也被設(shè)定為縮短約k/ (k+ α )倍。如以上所說明,通過第2實(shí)施例的發(fā)配服務(wù)器,除了第1實(shí)施例說明的片段處理以 外,在NW板600上執(zhí)行FEC編碼處理,因此能夠大幅降低CPU201的負(fù)荷。另外,由于FEC 編碼所引起的冗余數(shù)據(jù)不會(huì)在總線210上流動(dòng),所以能夠降低總線使用率(通信量)。其結(jié) 果,能夠更有效地發(fā)送流數(shù)據(jù)。(變形例)此外,在上述的說明中,將比網(wǎng)絡(luò)板直接連接的網(wǎng)絡(luò)(在此為以太網(wǎng)絡(luò)(注冊(cè)商 標(biāo)))的最大傳輸大小(約1.5k字節(jié))要小的固定長(zhǎng)度包(512字節(jié))設(shè)定為傳輸大小。 不過,當(dāng)然也可以設(shè)定成與MTU大致相等。此外,一般而言,從發(fā)配服務(wù)器到接收終端為 止會(huì)混雜著多種網(wǎng)絡(luò),可能各MTU會(huì)不同。此外,因?yàn)槊總€(gè)接收終端路徑不同,所以有可 能在每個(gè)接收終端“路徑MTU”會(huì)有所不同。因此,也可以在使用路徑MTU探索(Path MTU Discovery)等以前,檢測(cè)出路徑MTU,在流發(fā)配開始時(shí),將包大小動(dòng)態(tài)地設(shè)定為與各終端對(duì) 應(yīng)的總線MTU以下。
      10
      權(quán)利要求
      一種網(wǎng)卡,具備主機(jī)連接器,用于與設(shè)置在主機(jī)裝置上的總線連接器連接;和網(wǎng)絡(luò)連接器,用于與網(wǎng)絡(luò)連接,所述網(wǎng)卡的特征在于,還具備接收單元,將能夠經(jīng)由所述網(wǎng)絡(luò)連接器發(fā)送的數(shù)據(jù)幀的最大大小設(shè)為第1大小時(shí),以比所述第1大小大的第2大小的塊數(shù)據(jù)為單位,經(jīng)由所述主機(jī)連接器接收經(jīng)由所述網(wǎng)絡(luò)連接器發(fā)送的數(shù)據(jù);緩沖存儲(chǔ)器,用于暫時(shí)存儲(chǔ)所述接收單元所接收的塊數(shù)據(jù);以及發(fā)送單元,從所述緩沖存儲(chǔ)器讀入用于包含到發(fā)送的數(shù)據(jù)幀中的數(shù)據(jù),生成所述第1大小以下的數(shù)據(jù)幀,將該數(shù)據(jù)幀發(fā)送至與所述網(wǎng)絡(luò)連接器連接的網(wǎng)絡(luò)上。
      2.如權(quán)利要求1所述的網(wǎng)卡,其特征在于,所述發(fā)送單元還具備發(fā)送間隔控制單元,以時(shí)間軸方向上大致均勻的間隔將1個(gè)以上 的所述數(shù)據(jù)幀發(fā)送至所述網(wǎng)絡(luò)。
      3.如權(quán)利要求2所述的網(wǎng)卡,其特征在于,所述網(wǎng)卡還具備編碼單元,對(duì)所述塊數(shù)據(jù)中所包含的數(shù)據(jù)進(jìn)行前向糾錯(cuò)碼的編碼處理。
      4.如權(quán)利要求3所述的網(wǎng)卡,其特征在于,所述發(fā)送單元根據(jù)由所述編碼單元所編碼的數(shù)據(jù)生成所述第2大小以下的數(shù)據(jù)幀, 所述發(fā)送間隔控制單元根據(jù)所述編碼單元所使用的編碼率決定發(fā)送所述數(shù)據(jù)幀的所 述間隔。
      5.如權(quán)利要求4所述的網(wǎng)卡,其特征在于,所述編碼單元反復(fù)執(zhí)行以預(yù)定的第1數(shù)據(jù)量為單位的邏輯運(yùn)算,從而進(jìn)行所述編碼處理,所述發(fā)送單元將所述第1數(shù)據(jù)量的整數(shù)倍大小的數(shù)據(jù)包含到所述數(shù)據(jù)幀中。
      6.如權(quán)利要求4或5所述的網(wǎng)卡,其特征在于,所述編碼單元以預(yù)定的第2數(shù)據(jù)量為單位進(jìn)行所述編碼處理,所述接收單元接收被設(shè)定為所述第2數(shù)據(jù)量的整數(shù)倍大小的所述塊數(shù)據(jù)。
      7.一種信息處理裝置,具備通過總線連接的主機(jī)處理部和網(wǎng)絡(luò)處理部,將流數(shù)據(jù)發(fā)送 至網(wǎng)絡(luò),所述信息處理裝置的特征在于,所述主機(jī)處理部具備 數(shù)據(jù)輸入單元,輸入流數(shù)據(jù);和總線傳輸單元,將能夠在所述網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)幀的最大大小設(shè)為第1大小時(shí),以比 該第1大小大的第2大小的塊數(shù)據(jù)為單位,經(jīng)由所述總線將至少所述流數(shù)據(jù)傳輸至所述網(wǎng) 絡(luò)處理部,所述網(wǎng)絡(luò)處理部具備接收單元,接收從所述總線傳輸單元經(jīng)由所述總線所發(fā)送的塊數(shù)據(jù); 存儲(chǔ)單元,用于暫時(shí)存儲(chǔ)所述接收單元所接收的塊數(shù)據(jù);以及 發(fā)送單元,從所述存儲(chǔ)單元讀入用于包含到發(fā)送的數(shù)據(jù)幀中的數(shù)據(jù),生成所述第1大 小以下的數(shù)據(jù)幀,將該數(shù)據(jù)幀發(fā)送至與所述網(wǎng)絡(luò)連接器連接的網(wǎng)絡(luò)上。
      8.一種信息處理裝置,具備通過總線連接的主機(jī)處理部和網(wǎng)絡(luò)處理部,將流數(shù)據(jù)發(fā)送 至網(wǎng)絡(luò),所述信息處理裝置的特征在于,所述主機(jī)處理部具備 數(shù)據(jù)輸入部,輸入流數(shù)據(jù);和總線傳輸,將能夠在所述網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)幀的最大大小設(shè)為第1大小時(shí),以比該第1 大小大的第2大小的塊數(shù)據(jù)為單位,經(jīng)由所述總線將至少所述流數(shù)據(jù)傳輸至所述網(wǎng)絡(luò)處理 部,所述網(wǎng)絡(luò)處理部具備接收部,接收從所述總線傳輸部所發(fā)送的塊數(shù)據(jù); 緩沖存儲(chǔ)器,用于暫時(shí)存儲(chǔ)所述接收部所接收的塊數(shù)據(jù);以及 發(fā)送部,從所述緩沖存儲(chǔ)器讀入用于包含到發(fā)送的數(shù)據(jù)幀中的數(shù)據(jù),生成所述第1大 小以下的數(shù)據(jù)幀,將該數(shù)據(jù)幀發(fā)送至與所述網(wǎng)絡(luò)連接器連接的網(wǎng)絡(luò)上。
      全文摘要
      一種網(wǎng)卡,具備主機(jī)連接器(Host connector)和網(wǎng)絡(luò)連接器,該網(wǎng)卡還具備接收單元,經(jīng)由主機(jī)連接器,以比第1大小大的第2大小的塊數(shù)據(jù)為單位,接收經(jīng)由網(wǎng)絡(luò)連接器發(fā)送的數(shù)據(jù);緩沖存儲(chǔ)器,用于暫時(shí)存儲(chǔ)所接收的塊數(shù)據(jù);以及發(fā)送單元,生成第1大小以下的數(shù)據(jù)幀,將該數(shù)據(jù)幀發(fā)送至與網(wǎng)絡(luò)連接器連接的網(wǎng)絡(luò)上。
      文檔編號(hào)H04L12/56GK101911613SQ20088012447
      公開日2010年12月8日 申請(qǐng)日期2008年1月10日 優(yōu)先權(quán)日2008年1月10日
      發(fā)明者永井正大, 西本裕明 申請(qǐng)人:住友電工網(wǎng)絡(luò)株式會(huì)社
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1