時(shí)間:2022-07-06 14:40:00
開(kāi)篇:寫(xiě)作不僅是一種記錄,更是一種創(chuàng)造,它讓我們能夠捕捉那些稍縱即逝的靈感,將它們永久地定格在紙上。下面是小編精心整理的12篇文件傳輸協(xié)議,希望這些內(nèi)容能成為您創(chuàng)作過(guò)程中的良師益友,陪伴您不斷探索和進(jìn)步。
關(guān)鍵詞: VxWorks; FTP; 分包傳輸; 在線更新
中圖分類(lèi)號(hào): TN919?34; TP311.1 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2013)24?0050?05
Research and implementation of file transfer method under VxWork
WANG Hao1, JIA Liang1, LI Yong?tian2
(1. Electronic and Information Engineering Institute, Shenyang Aerospace University, Shenyang 110136, China;
2. Beijing Fangtian Changjiu Science and Technology Ltd, beijing 100084, China)
Abstract: In a project development process, in order to meet the needs of online Flash update of DSP application program in data acquisition system, first of all, the application program is downloaded to the system controller memory by means of the Tornado development environment built?in FTP server, then encapsulated into packets to transmit, and finally the application program update is realized. The program solves the problem that when data dump space is less than the size of data transfer file, and the subpackage transmission in several times is required. The entire software development process is performed in the Tornado development environment, which is able to complete the subpackage error?free transmission of application files. The practical application shows that the software program designed according to the scheme can achieve a good Flash online update, has the characteristics of subpackage transmission and data accuracy, and can meet the design requirements.
Keywords: VxWorks; FTP; subpackage transmission; online update
隨著計(jì)算機(jī)技術(shù)、半導(dǎo)體技術(shù)以及軟件技術(shù)的飛速發(fā)展,嵌入式微處理器的性能也得到不斷提高,嵌入式操作系統(tǒng)的種類(lèi)更是層出不窮,從而使得嵌入式系統(tǒng)在越來(lái)越多的領(lǐng)域得到更加廣泛的應(yīng)用。其中,美國(guó)Wind River System公司于1983年設(shè)計(jì)開(kāi)發(fā)的一種嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS)VxWorks憑借其可移植性強(qiáng)等優(yōu)點(diǎn)得到了廣泛的應(yīng)用[1]。VxWorks提供的系統(tǒng)接口要比其他操作系統(tǒng)豐富,因此選擇它來(lái)作為嵌入式采集系統(tǒng)的軟件控制平臺(tái),可以大大提高開(kāi)發(fā)的效率[2]。本文應(yīng)用Motorola公司的MCP?750PowerPC嵌入式CPCI單板機(jī)作為系統(tǒng)控制器及北京方天長(zhǎng)久科技有限公司的FTC?6010作為數(shù)據(jù)采集板組成數(shù)據(jù)采集系統(tǒng)。在開(kāi)發(fā)過(guò)程中,考慮到了數(shù)據(jù)采集板有可能工作在不方便拆卸的場(chǎng)合,無(wú)法使用下載器對(duì)數(shù)據(jù)采集板上的DSP進(jìn)行應(yīng)用程序的更新,本文的研究重點(diǎn)就是實(shí)現(xiàn)對(duì)數(shù)據(jù)采集板上的DSP應(yīng)用程序進(jìn)行在線FLASH更新,從而擺脫下載器的束縛。基于以上考慮,規(guī)定了一份適合于本數(shù)據(jù)采集系統(tǒng)需要的分包文件傳輸協(xié)議,并在此基礎(chǔ)上用C語(yǔ)言封裝了一個(gè)基于VxWorks下的功能模塊,此功能模塊的設(shè)計(jì)成功的實(shí)現(xiàn)了DSP程序在線FLASH更新,滿(mǎn)足了開(kāi)發(fā)的需要。
1 數(shù)據(jù)采集系統(tǒng)分析介紹
1.1 系統(tǒng)總體結(jié)構(gòu)及軟硬件開(kāi)發(fā)環(huán)境
數(shù)據(jù)采集系統(tǒng)基于CPCI總線實(shí)現(xiàn),系統(tǒng)總體結(jié)構(gòu)及軟硬件開(kāi)發(fā)環(huán)境如圖1所示,上位機(jī)Tornado IDE(VxWorks集成開(kāi)發(fā)環(huán)境)通過(guò)以太網(wǎng)絡(luò)和MCP?750PowerPC嵌入式單板機(jī)相連,MCP?750作為CPCI總線控制器通過(guò)CPCI總線控制數(shù)據(jù)采集板(FTC?6010),同時(shí)通過(guò)串口輸出信息到上位機(jī),便于操作。
圖1 系統(tǒng)總體結(jié)構(gòu)及軟硬件開(kāi)發(fā)環(huán)境
1.2 DSP應(yīng)用程序在線FLASH更新時(shí)數(shù)據(jù)流向
圖2簡(jiǎn)要給出了DSP應(yīng)用程序在線FLASH更新時(shí)數(shù)據(jù)的流向,上位機(jī)使用FTP通過(guò)網(wǎng)絡(luò) 將應(yīng)用程序的二進(jìn)制文件下載到系統(tǒng)控制器的內(nèi)存中,再?gòu)南到y(tǒng)控制器的內(nèi)存中通過(guò)CPCI總線將文件傳送至數(shù)據(jù)采集板上DSP外接的FLASH中,最后實(shí)現(xiàn)FLASH的更新。在傳送過(guò)程中,由于系統(tǒng)控制器與數(shù)據(jù)采集板上的DSP需要通過(guò)DPSRAM進(jìn)行交互,而DPSRAM的存儲(chǔ)空間有限,此時(shí)就需要將應(yīng)用程序文件分包進(jìn)行傳輸,傳輸協(xié)議的制定就顯得至關(guān)重要了,需要保證數(shù)據(jù)傳輸正確,傳輸過(guò)程不丟包。
圖2 DSP應(yīng)用程序在線FLASH更新時(shí)數(shù)據(jù)流向
2 FTP文件傳輸
2.1 FTP介紹
文件傳輸協(xié)議(File Transfer Protocol,F(xiàn)TP)是TCP/IP 的一種具體應(yīng)用,工作在OSI 模型的第7層, TCP 模型的第4層, 即應(yīng)用層。FTP要求客戶(hù)向服務(wù)器提供用戶(hù)注冊(cè)名和口令, 服務(wù)器拒絕非法用戶(hù)的訪問(wèn)。但是鏈接一旦建立成功, 一個(gè)或多個(gè)文本或圖像二進(jìn)制文件都能被傳送, FTP 不必?fù)?dān)心可靠性和連接的管理, 因?yàn)镕TP 依靠TCP 正確執(zhí)行這些功能[3]。Tornado開(kāi)發(fā)環(huán)境自帶FTP服務(wù)器,常見(jiàn)用于系統(tǒng)成功引導(dǎo)后,下載VxWorks的運(yùn)行時(shí)映象,需正確配置用戶(hù)名,密碼和路徑[4]。
2.2 VxWorks下FTP程序的編寫(xiě)
可以直接使用VxWorks提供的幾個(gè)API函數(shù)進(jìn)行FTP程序的編寫(xiě),實(shí)現(xiàn)從上位機(jī)將應(yīng)用程序文件下載到系統(tǒng)控制器的內(nèi)存中的目的,這里主要介紹三個(gè):ftpXfer、ftpReplyGet和ftpCommand,幾個(gè)函數(shù)的原型和主要用法如下[5]:
ftpXfer的作用是初始化通過(guò)FTP傳輸?shù)奈募?/p>
STATUS ftpXfer
(
char * host,
/*ftp服務(wù)器的IP地址,點(diǎn)分十進(jìn)制,格式類(lèi)似于"10.0.0.1" */
char * user, /*訪問(wèn)ftp服務(wù)器的用戶(hù)名 */
char * passwd, /*訪問(wèn)ftp服務(wù)器的密碼 */
char * acct, /*一般不用,直接填寫(xiě)為空字符串就可以了*/
char * cmd, /*發(fā)送給FTP服務(wù)器的命令,例如讀取命令為"RETR"*/
char * dirname, /*待訪問(wèn)文件所在的目錄*/
char * filename, /*待訪問(wèn)文件的文件名*/
int * pCtrlSock, /*存儲(chǔ)返回的文件描述符,也就是常說(shuō)的fd*/
int * pDataSock /*存儲(chǔ)返回的待訪問(wèn)文件的文件描述符*/
)
此例程按以下順序發(fā)起通過(guò)FTP服務(wù)器傳輸文件:
(1)建立一個(gè)連接到指定的主機(jī)上的FTP服務(wù)器;
(2)在指定的主機(jī)上設(shè)置好用戶(hù)名,密碼和賬號(hào);
(3)發(fā)送文件傳輸類(lèi)型命令;
(4)發(fā)送文件所在的目錄以及文件名命令;
(5)將指定的轉(zhuǎn)移命令和指定的文件名作為參數(shù),建立一個(gè)數(shù)據(jù)連接。典型的傳輸命令為STOR %S:寫(xiě)入到一個(gè)遠(yuǎn)程文件;RETR%S:讀取一個(gè)遠(yuǎn)程文件。
由此產(chǎn)生的控制和數(shù)據(jù)連接文件描述符分別通過(guò)pCtrlSock和pDataSock返回。
調(diào)用這個(gè)程序后,數(shù)據(jù)可以被讀取或?qū)懭氲竭h(yuǎn)程服務(wù)器返回的文件描述符pDataSock中。當(dāng)所有傳入的數(shù)據(jù)被讀取(讀取數(shù)據(jù)套接字由EOF表示)和/或所有傳出的數(shù)據(jù)已寫(xiě)入,應(yīng)關(guān)閉數(shù)據(jù)套接字fd。
這時(shí)候應(yīng)該調(diào)用函數(shù)ftpReplyGet(),用來(lái)接收控制套接字的最后的回復(fù)。
int ftpReplyGet
(
int ctrlSock, /*連接FTP control socket文件描述符fd*/
BOOL expecteof /* TRUE = EOF expected, FALSE = EOF is error */
)
若沒(méi)有錯(cuò)誤,應(yīng)調(diào)用函數(shù)ftpCommand()關(guān)閉control socket。
int ftpCommand
(
int ctrlSock, /* 連接FTP control socket文件描述符fd */
char * fmt, /* 待傳遞的ftp命令 */
int arg1, /* ftp命令的參數(shù)*/
int arg2,
int arg3,
int arg4,
int arg5,
int arg6
)
如果FTP命令不涉及數(shù)據(jù)傳輸(例如文件刪除或重命名),pDataSock應(yīng)該是NULL,在這種情況下,不會(huì)建立數(shù)據(jù)連接。函數(shù)返回為OK或ERROR(有socket不能創(chuàng)建或不能進(jìn)行連接)。
FTP文件傳輸?shù)娜窟^(guò)程如圖3所示。
圖3 VxWorks下FTP文件傳輸過(guò)程
程序關(guān)鍵代碼如下:
/* initiate a transfer via a remote FTP server to read a remote file */
if(ERROR==ftpXfer(UNIX_HOST,USER,PASSWD,"","RETR %s",W_DIR,F(xiàn)ILE,&ctrlSock,
&dataSock))
{
perror("Error in initiating a transfer via a remote FTP server");
return ERROR;
}
/* read the remote file data to buffer */
while((NumBytes=read(dataSock,buff,sizeof(buff)))>0)
{
buff+=NumBytes;
}
if(NumBytes
{
perror ("Error in reading"); /* read error */
return (ERROR);
}
close(dataSock);
/* Get an FTP command reply to see whether EOF is encountered */
if(ftpReplyGet(ctrlSock,TRUE)!=FTP_COMPLETE)
{
perror ("positive completion failed");
return (ERROR);
}
/* Send QUIT FTP command */
if(ftpCommand(ctrlSock,"QUIT",0,0,0,0,0,0)!=FTP_COMPLETE)
{
perror ("QUIT FTP command positive completion failed");
return (ERROR);
}
close (ctrlSock);
3 分包文件傳輸協(xié)議的制定與實(shí)現(xiàn)
3.1 分包文件傳輸協(xié)議制定
通過(guò)本文前兩節(jié)的分析和應(yīng)用,文件已經(jīng)成功的從上位機(jī)下載到了系統(tǒng)控制器的內(nèi)存當(dāng)中,本節(jié)著重介紹如何從系統(tǒng)控制器的內(nèi)存中將文件封裝成數(shù)據(jù)包分次傳送給DPSRAM,如何通知DSP將數(shù)據(jù)包取走,如何得到DSP的應(yīng)答之后傳送下一個(gè)數(shù)據(jù)包,如何判斷數(shù)據(jù)包全部傳送完成等,簡(jiǎn)而言之,就是分包文件傳輸協(xié)議的制定,圖4用流程圖的形式對(duì)整個(gè)過(guò)程進(jìn)行了詳細(xì)的描述。
下面以數(shù)據(jù)包包含的信息要素為例介紹分包文件傳輸協(xié)議,每個(gè)數(shù)據(jù)包包含以下信息要素,如圖5所示。
系統(tǒng)控制器將數(shù)據(jù)包寫(xiě)入DPSRAM之后,會(huì)發(fā)起DPSRAM左端口中斷,DSP檢測(cè)到中斷后從DPSRAM中取走數(shù)據(jù)包。
控制命令字的主要作用是告知DSP,此數(shù)據(jù)包數(shù)據(jù)空間中的數(shù)據(jù)是用于FLASH更新用的,需要將其寫(xiě)入FLASH中。
數(shù)據(jù)包長(zhǎng)度的主要作用是告知DSP即將要讀取的數(shù)據(jù)包中數(shù)據(jù)空間的長(zhǎng)度,以便DSP將其寫(xiě)入到FLASH對(duì)應(yīng)的空間中。
圖4 分包文件傳送過(guò)程
圖5 數(shù)據(jù)包的信息要素
數(shù)據(jù)包序號(hào)的主要作用是告知DSP,此次傳輸?shù)氖堑趲讉€(gè)數(shù)據(jù)包,防止傳輸過(guò)程中丟包。
數(shù)據(jù)寫(xiě)入標(biāo)記分為3種:根據(jù)數(shù)據(jù)包序號(hào),如果傳輸?shù)氖堑谝粋€(gè)數(shù)據(jù)包,則表示數(shù)據(jù)包傳輸開(kāi)始;如果傳輸?shù)氖侵虚g的數(shù)據(jù)包,則表示數(shù)據(jù)包繼續(xù)傳輸;如果接收到的是最后一個(gè)數(shù)據(jù)包,則表示數(shù)據(jù)包傳輸完成。
CRC校驗(yàn)和的主要作用是便于DSP比較數(shù)據(jù)傳輸之前的檢驗(yàn)和與自己根據(jù)接收到的數(shù)據(jù)計(jì)算出來(lái)的校驗(yàn)和是否一致,借此判斷數(shù)據(jù)傳輸過(guò)程中有無(wú)丟數(shù)現(xiàn)象發(fā)生。文件總的大小的主要作用是告知DSP需要擦除多大的FLASH空間用于存儲(chǔ)更新后的文件。
3.2 分包文件傳輸協(xié)議實(shí)現(xiàn)
協(xié)議的實(shí)現(xiàn)主要用到了以下幾個(gè)關(guān)鍵函數(shù):
(1)數(shù)據(jù)包協(xié)議頭的封裝
UINT32 gfWriteLong(UINT32 x,UINT32 y)
{
*(UINT32*)x=y;
return y;
}
此函數(shù)用于封裝數(shù)據(jù)包協(xié)議頭,將數(shù)據(jù)包協(xié)議頭信息寫(xiě)入相應(yīng)的地址空間中。
(2)CRC校驗(yàn)和算法[6]
本文采用一種按位計(jì)算的方法計(jì)算校驗(yàn)和,和DSP計(jì)算出來(lái)的校驗(yàn)和相比較,防止數(shù) 據(jù)傳輸過(guò)程中出現(xiàn)差錯(cuò),關(guān)鍵代碼如下:
UINT32 gfCRCCheckSum(char *ptr,unsigned long len)
{
unsigned char i;unsigned long crc=0;
while(len??!=0)
{
for(i=0x80;i!=0;i/=2)
{
if((crc&0x8000)!=0)
{
crc*=2;
crc^=0x1021;
}
else
{
crc*=2;
}
if((*ptr&i)!=0)
{
crc^=0x1021;
}
}
ptr++;
}
return crc;
}
(3)應(yīng)答機(jī)制
應(yīng)答機(jī)制的作用是得到DSP接收完一個(gè)數(shù)據(jù)包之后反饋回來(lái)的信息(用數(shù)值表示),如為數(shù)據(jù)傳輸正確,則打印出提示提示語(yǔ)句后接著傳送下一個(gè)數(shù)據(jù)包;如為校驗(yàn)和出錯(cuò),則說(shuō)明數(shù)據(jù)包傳送過(guò)程中發(fā)生了丟數(shù)等現(xiàn)象,打印出語(yǔ)句后直接結(jié)束退出;如為FLASH更新完成,則說(shuō)明所有數(shù)據(jù)包傳送完成,且正確的寫(xiě)入到FLASH中了,打印出提示語(yǔ)句后直接結(jié)束退出;如為FLASH更新出錯(cuò),則說(shuō)明所有數(shù)據(jù)包傳送完成,但沒(méi)有正確的寫(xiě)入到FLASH中,打印出提示語(yǔ)句后直接結(jié)束退出。
關(guān)鍵代碼如下:
STATUS gfDSPACKCMD(int handle,UINT32 ACKAddress)
{
UINT32 ACKCMD;
ACKCMD=*(*ACKAddress);
switch(ACKCMD)
{
case DSP_ACK_OK:
printf("\nData Packet Send Success and Data Right!\n\n");
break;
case ERROR_CHECKSUM:
printf("\nData packet CRC CheckSum ERROR!\n");
break;
case FLASH_UPDATE_OK:
printf("\n\nFlash Data Updates Over!!!\n");
break;
case ERROR_FLASH_DATA:
printf("\nFlash data write error!\n");
break;
default:
printf("\nAcknowledge command word error!\n");
break;
}
return OK;
}
4 實(shí)際應(yīng)用
基于以上分析研究,編寫(xiě)了相應(yīng)的程序,并在數(shù)據(jù)采集系統(tǒng)中進(jìn)行了多次試驗(yàn),試驗(yàn)結(jié)果如表1所示,從試驗(yàn)結(jié)果可以看出,本文所介紹的方法可以保證數(shù)據(jù)傳輸?shù)臏?zhǔn)確性,滿(mǎn)足了DSP程序在線FLASH更新的需求。
表1 FLASH更新測(cè)試結(jié)果
5 結(jié) 論
本文結(jié)合實(shí)際項(xiàng)目開(kāi)發(fā)過(guò)程中遇到的實(shí)際問(wèn)題,概述了一種 VxWorks下簡(jiǎn)單文件傳輸?shù)脑砗途唧w的軟件實(shí)現(xiàn)方法。實(shí)際應(yīng)用證明,按照此種方式編寫(xiě)的程序代碼簡(jiǎn)單,實(shí)用,可以很好的進(jìn)行文件數(shù)據(jù)分包傳輸。
參考文獻(xiàn)
[1] 李署東,吳昊,杜祝.VxWorks下點(diǎn)對(duì)點(diǎn)簡(jiǎn)單文件傳輸?shù)膶?shí)現(xiàn)[J].中國(guó)水運(yùn),2011,11(1):84?87.
[2] 唐曉平.VxWorks在cPCI高速數(shù)據(jù)采集系統(tǒng)中的應(yīng)用研究[D].長(zhǎng)沙:國(guó)防科學(xué)技術(shù)大學(xué),2008.
[3] 黃世權(quán).FTP協(xié)議分析和安全研究[J].微計(jì)算機(jī)信息,2008,24(2?3):93?94.
[4] 馮先成,李寒,張鐵男.基于MPC850 VxWorks系統(tǒng)的BSP設(shè)計(jì)[J].計(jì)算機(jī)與數(shù)字工程,2012,40(6):39?43.
關(guān)鍵詞:FTP; Struts2; Web
Abstract: the application Struts2 framework to build FTP access to services Web platform, and to realize the FTP file to traverse and check.
Keywords: FTP; Struts2; Web
中圖分類(lèi)號(hào): TU323.5 文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):
前言
文件傳輸協(xié)議(File Transfer Protocol,簡(jiǎn)稱(chēng)FTP)是TCP/IP網(wǎng)絡(luò)上計(jì)算機(jī)之間相互傳送文件的協(xié)議[1],具有資源共享,管理方便等優(yōu)點(diǎn)。在傳統(tǒng)的C/S結(jié)構(gòu)中,用戶(hù)需要借助客戶(hù)端軟件(如FileZilla、CuteFTP等)來(lái)訪問(wèn)FTP服務(wù)器。隨著信息技術(shù)的發(fā)展,系統(tǒng)和應(yīng)用都在不斷推陳出新,這些軟件的穩(wěn)定性和兼容性將面臨考驗(yàn)。
本文設(shè)計(jì)的平臺(tái)充分利用Java程序跨平臺(tái)性的特點(diǎn),并采取基于MVC的Web應(yīng)用開(kāi)發(fā)框架Struts2, 在B/S結(jié)構(gòu)的基礎(chǔ)上應(yīng)用了文件傳輸協(xié)議, 使用戶(hù)在訪問(wèn)FTP時(shí)更方便和有效。
一、框架簡(jiǎn)介
Struts 是Apache軟件基金會(huì)贊助的一個(gè)開(kāi)源項(xiàng)目[2]。它通過(guò)采用 Java Servlet/JSP 技術(shù),實(shí)現(xiàn)了基于Java EE Web應(yīng)用的MVC設(shè)計(jì)模式的應(yīng)用框架。
MVC將軟件系統(tǒng)分為三個(gè)基本部分:模型(Model)、視圖(View)和控制器(Controller)。Struts 框架清楚地展現(xiàn)MVC模型的特性[3]:
1) Controller:當(dāng)用戶(hù)在客戶(hù)端發(fā)出請(qǐng)求以后,ActionServlet將負(fù)責(zé)分配該請(qǐng)求,通過(guò)查詢(xún)配置文件struts.xml中的ActionMapping映射,找到用來(lái)處理請(qǐng)求的Actition類(lèi);
2) Model:表單內(nèi)容被提交到ActionForm,由相應(yīng)的Actition類(lèi)來(lái)處理數(shù)據(jù),通過(guò)帶有封裝的方法和屬性的Bean來(lái)執(zhí)行業(yè)務(wù)邏輯,然后Actition將處理結(jié)果返回給ActionServlet;[4]
3) View:根據(jù)Action返回的字符串將結(jié)果返回到JSP交互頁(yè)面。
設(shè)計(jì)思路
1 建立工程
在Java的web項(xiàng)目中添加與Struts2相關(guān)的Jar包,以及訪問(wèn)FTP所需的類(lèi)庫(kù)(commons-net.jar)。
2 設(shè)計(jì)交互頁(yè)面
頁(yè)面名稱(chēng) 功能描述
LoginFTP.jsp FTP登錄頁(yè)面
FileList.jsp 資源列表頁(yè)面
ReadFile.jsp 文本顯示頁(yè)面
3 編寫(xiě)控制層
類(lèi)名 功能描述
ReadFileAction.java 控制文本讀取
LoginAction.java 控制用戶(hù)登錄
4 實(shí)現(xiàn)業(yè)務(wù)邏輯
類(lèi)名 功能描述
MyFtpClient.java 實(shí)現(xiàn)對(duì)FTP的訪問(wèn)
TextReader.java 讀取文本文件
SpecialStr.java 字符編碼處理
其中,MyFtpClient類(lèi)的算法抽象如下:
public class MyFTPClient {
/**登錄方法*/
public void login(String hostName, String userName, String password) {
// 連接到主機(jī)名為hostName的ftp服務(wù)器
// 輸入用戶(hù)名userName和密碼password進(jìn)行驗(yàn)證
}
/**遍歷方法*/
public List getFileList(String remoteDir) {
// 遍歷當(dāng)前目錄remoteDir下的文件和文件夾
foreach (FILE file : files) {
// 將每個(gè)文件夾和文件的記錄在List類(lèi)型的fileList
}
// 返回fileList供Action和JSP使用
}
/**關(guān)閉方法*/
public void close(){
// 使用IO包關(guān)閉流斷開(kāi)FTP連接
}
}
二、系統(tǒng)實(shí)現(xiàn)
1 開(kāi)發(fā)環(huán)境
在 Windows 環(huán)境下運(yùn)行,開(kāi)發(fā)工具為Eclipse Helios Service Release 2和Tomcat 6,JDK版本為J2se 6.0。
2功能實(shí)現(xiàn)
1.使用已有FTP賬戶(hù)驗(yàn)證登錄;
2.顯示文件列表,選取和查看目錄;
3.選擇文本文件進(jìn)行查看,結(jié)果如圖1-1所示:
圖1-1顯示結(jié)果
三、結(jié)論
利用Java技術(shù)建立的FTP服務(wù)的訪問(wèn)具有跨平臺(tái)性,采用的FTP訪問(wèn)組件避免了功能組件的繁瑣編碼,使得開(kāi)發(fā)人員能將更多的精力投入到業(yè)務(wù)邏輯的實(shí)現(xiàn)和數(shù)據(jù)模型的建立。在接下來(lái)的工作中,Struts2架構(gòu)還可以與Spring、Hibernate等組件相結(jié)合,將滿(mǎn)足更多需求,具有較好的可擴(kuò)展性。
參考文獻(xiàn)
[1] 李南方, 文件傳輸協(xié)議——FTP簡(jiǎn)介, 《武鋼大學(xué)學(xué)報(bào)》, 1999年03期
[2] struts.省略/
[3] 官全龍, 姚國(guó)祥, 基于Struts的應(yīng)用架構(gòu)的研究, 《計(jì)算機(jī)工程與設(shè)計(jì)》, 2005年12期
關(guān)鍵詞:萬(wàn)維網(wǎng);WWW;HTTP;FTP;Web服務(wù)器
WWW(World Wide Web,3W,Web)中文譯名為萬(wàn)維網(wǎng),環(huán)球信息網(wǎng)等。是歐洲核物理研究中心(CERN)為全球范圍的科學(xué)家利用Internet建立在客戶(hù)機(jī)/服務(wù)器模型之上,為了方便地進(jìn)行通信、交流和查詢(xún)所建立的。Internet采用超文本和超媒體的信息組織方式,將信息的鏈接擴(kuò)展到整個(gè)Internet上。萬(wàn)維網(wǎng)是一個(gè)分布式的超媒體(Hypermedia)系統(tǒng),它是超文本(Hypertext)系統(tǒng)的擴(kuò)充,所謂超文本是包含指向其他文檔的鏈接文本,超文本是萬(wàn)維網(wǎng)的基礎(chǔ),在萬(wàn)維網(wǎng)中,主要使用了兩個(gè)協(xié)議,分別是HTTP協(xié)議和FTP協(xié)議。
1 HTTP協(xié)議
超文本傳輸協(xié)議(Hypertext Transfer Protocol,HTTP)提供了訪問(wèn)超文本信息的功能,是萬(wàn)維網(wǎng)與Web服務(wù)器之間的通信協(xié)議,屬于應(yīng)用層。HTTP協(xié)議是用于分布式協(xié)作超文本信息系統(tǒng)的、通用的、面向?qū)ο蟮膮f(xié)議。可以用于傳輸各種超文本頁(yè)面和數(shù)據(jù)。
HTTP協(xié)議包括以下4個(gè)步驟:
第一,建立連接。客戶(hù)端向服務(wù)器發(fā)出建立連接HTTP報(bào)文的請(qǐng)求,服務(wù)端將響應(yīng)發(fā)送回客戶(hù)端,連接建立。
第二,發(fā)送請(qǐng)求。客戶(hù)端按照HTTP協(xié)議通過(guò)連接線路向服務(wù)端發(fā)送請(qǐng)求。
第三,給出應(yīng)答。服務(wù)器按照客戶(hù)端的要求給出應(yīng)答,將結(jié)果HTML文件返回給客戶(hù)端。
第四,關(guān)閉連接。客戶(hù)端接到HTTP報(bào)文請(qǐng)求后關(guān)閉連接。
HTTP協(xié)議是基于TCP/IP之上的協(xié)議,它不僅保證是否能夠正確傳輸超文本文檔,而且還要確定傳輸文檔中的哪一部分,以及哪部分內(nèi)容首先顯示等。通常HTTP報(bào)文消息包括客戶(hù)向服務(wù)器的請(qǐng)求報(bào)文和服務(wù)器向客戶(hù)的響應(yīng)報(bào)文。這兩種類(lèi)型的報(bào)文消息由一個(gè)起始行,一個(gè)或者多個(gè)頭域,一個(gè)指示結(jié)束的空行和消息體組成。HTTP的報(bào)文結(jié)構(gòu)包括通用首部、請(qǐng)求首部、響應(yīng)首部、實(shí)體首部和實(shí)體主體五個(gè)部分。每個(gè)頭域由,和三部分組成。(注意:域名與大小寫(xiě)無(wú)關(guān),可以在域值前添加任何數(shù)量的空格符,可將萬(wàn)維網(wǎng)的頭域擴(kuò)展為多行。)
通用域名首部包含請(qǐng)求和響應(yīng)報(bào)文,其中的頭域還包含Cache-Control、Connection、Date、Pragma、Transfer-Encoding、Upgrade、Via等。對(duì)通用頭域的擴(kuò)展要求通訊雙方都支持,如果存在不支持的通用頭域,一般將會(huì)作為實(shí)體處理。
一次HTTP操作其工作過(guò)程可分為以下幾步:
第一,瀏覽器分析鏈接指向頁(yè)面的URL。
第二,瀏覽器向DNS請(qǐng)求解析IP地址。
第三,域名系統(tǒng)DNS解析出微軟服務(wù)器的IP地址。
第四,瀏覽器與該服務(wù)器建立TCP鏈接。
第五,瀏覽器發(fā)出HTTP請(qǐng)求GET。
第六,服務(wù)器通過(guò)HTTP響應(yīng)把文件index.heml發(fā)送給瀏覽器。
第七,TCP連接釋放。
第八,瀏覽器將文件index.heml進(jìn)行解釋?zhuān)eb頁(yè)顯示給用戶(hù)。
如果在以上過(guò)程中的某一步出現(xiàn)錯(cuò)誤,那么產(chǎn)生錯(cuò)誤的信息將返回到客戶(hù)端,由顯示屏輸出。對(duì)于用戶(hù)來(lái)說(shuō),這些過(guò)程是由HTTP自己完成的,用戶(hù)只要用鼠標(biāo)點(diǎn)擊,等待信息顯示就可以了。HTTP采用TCP作為運(yùn)輸層協(xié)議,保證了數(shù)據(jù)的可靠傳輸,HTTP不需要考慮數(shù)據(jù)在傳輸過(guò)程中丟失后是怎樣重傳的,但是HTTP協(xié)議本身是無(wú)連接的,即通信雙方在交換HTTP報(bào)文之前不需要先建立HTTP鏈接。
2 FTP協(xié)議
文件傳輸協(xié)議(File Transfer Protocol,F(xiàn)TP)是因特網(wǎng)上使用最廣泛的文件傳輸協(xié)議,F(xiàn)TP運(yùn)行在TCP上采用客戶(hù)/服務(wù)器模型,包括兩個(gè)組成部分,分別為FTP服務(wù)器、FTP客戶(hù)端。其中FTP服務(wù)器用來(lái)存儲(chǔ)文件,用戶(hù)可以使用FTP客戶(hù)端通過(guò)FTP協(xié)議訪問(wèn)位于服務(wù)器上的資源。FTP使用20和21這兩個(gè)端口,如果采用主動(dòng)模式,那么數(shù)據(jù)傳輸端口就是20;如果采用被動(dòng)模式,數(shù)據(jù)傳輸端口就是21。
FTP提供以下功能:
第一,提供不同種類(lèi)的主機(jī)系統(tǒng)之間的傳輸。
第二,使用戶(hù)對(duì)遠(yuǎn)程服務(wù)器上的文件進(jìn)行管理。
第三,提供文件共享能力。
另FTP還有兩種模式,主動(dòng)方式Standard(PORT方式),被動(dòng)方式Passive(PASV方式)。Standard模式下FTP客戶(hù)端發(fā)送PORT命令到服務(wù)器。Passive模式下FTP的客戶(hù)端發(fā)送PASV命令到FTP Server。
Port:FTP客戶(hù)端與服務(wù)器的21端口建立控制連接,用來(lái)傳輸控制信息,客戶(hù)端發(fā)送請(qǐng)求,通過(guò)控制連接發(fā)送給服務(wù)器端的控制進(jìn)程。服務(wù)器通過(guò)自己的數(shù)據(jù)連接端口連接至客戶(hù)端的指定端口并發(fā)送數(shù)據(jù)。
FTP服務(wù)器在很多情況下是不支持PASV模式的,因?yàn)楹芏喾阑饓υ谠O(shè)置時(shí),是不允許接受外部發(fā)起連接的,因而位于防火墻后或內(nèi)網(wǎng)的客戶(hù)端無(wú)法穿過(guò)防火墻打開(kāi)FTP服務(wù)器的高端端口,故許多內(nèi)網(wǎng)的客戶(hù)端不能用PORT模式登陸FTP服務(wù)器,造成無(wú)法連接。
文件交換協(xié)議(File Exchange Protoco,F(xiàn)XP)相當(dāng)于是FTP的控制器,也可以認(rèn)為FXP本身其實(shí)就是FTP的一個(gè)子集,使一個(gè)FTP客戶(hù)端控制兩個(gè)FTP服務(wù)器,在兩個(gè)服務(wù)器之間傳送文件。FTP協(xié)議的任務(wù)是使計(jì)算機(jī)將文件傳送至另一臺(tái)計(jì)算機(jī),它與這兩臺(tái)計(jì)算機(jī)所處的位置、聯(lián)接的方式、是否使用相同的計(jì)算機(jī)操作系統(tǒng)均沒(méi)有關(guān)系。例如,兩臺(tái)計(jì)算機(jī)通過(guò)FTP協(xié)議連接,并且能夠成功地訪問(wèn)Internet,用戶(hù)就可以使用FTP命令來(lái)傳輸文件。
其傳輸方式可分為兩大類(lèi):ASCII傳輸和二進(jìn)制數(shù)據(jù)傳輸。
ASCII傳輸模式:若客戶(hù)端當(dāng)時(shí)正在拷貝的文件中包含的簡(jiǎn)單ASCII碼,在機(jī)器上運(yùn)行的是不同的操作系統(tǒng),當(dāng)文件傳輸時(shí),F(xiàn)TP協(xié)議通常會(huì)自動(dòng)地調(diào)整文件的內(nèi)容以便于將文件“翻譯”成另一臺(tái)計(jì)算機(jī)存儲(chǔ)的文本文件格式,就是我們通常所說(shuō)的翻譯。但是時(shí)常會(huì)有這樣的情況發(fā)生,用戶(hù)正在傳輸?shù)奈募牟皇俏谋疚募鼈兛赡苁浅绦颉?shù)據(jù)庫(kù)、字處理文件或者壓縮文件等信息。那么這時(shí),ASCII傳輸模式則會(huì)消耗大量的時(shí)間、資源進(jìn)行翻譯,與我們所希望的相去甚遠(yuǎn),于是,出現(xiàn)了第二種傳輸方式,二進(jìn)制傳輸。
參考文獻(xiàn):
[1] 沈紅,李?lèi)?ài)華.計(jì)算機(jī)網(wǎng)絡(luò)(第二版)[M].清華大學(xué)出版社,2010.
[2] 謝希仁.計(jì)算機(jī)網(wǎng)絡(luò)(第5版)[M].電子工業(yè)出版社,2011.
作者簡(jiǎn)介:周開(kāi)強(qiáng)(1993―),男,黑龍江慶安人。
1 物聯(lián)網(wǎng)
物聯(lián)網(wǎng)主要指的是末端設(shè)施和設(shè)備,主要包括工業(yè)系統(tǒng)、傳感器以及貼在射頻識(shí)別器上各種設(shè)備、攜帶無(wú)線終端的車(chē)輛和個(gè)人等。通過(guò)各種無(wú)線、有線,長(zhǎng)距離或短距離的相互連通實(shí)現(xiàn)對(duì)數(shù)據(jù)傳輸。物聯(lián)網(wǎng)就是利用傳感器,實(shí)時(shí)對(duì)需要的數(shù)據(jù)進(jìn)行采集、互動(dòng)、連接,采集的信息的類(lèi)型可以是電信號(hào)、光信號(hào)、化學(xué)信號(hào)等,利用各種可能存在的網(wǎng)絡(luò)接入,實(shí)現(xiàn)物與人、物與物之間的連接,從而實(shí)現(xiàn)對(duì)物品的智能化管理和識(shí)別。因此,可以簡(jiǎn)單的將物聯(lián)網(wǎng)描述為,利用傳感器獲取物理環(huán)境信息,然后利用通信網(wǎng)絡(luò)對(duì)信息進(jìn)行傳遞,再利用云計(jì)算平臺(tái),實(shí)現(xiàn)對(duì)復(fù)雜信息的處理。
2 系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
2.1 設(shè)計(jì)方案
系統(tǒng)的具體實(shí)現(xiàn)方案:在測(cè)井現(xiàn)場(chǎng)利用傳感器獲取待測(cè)油井的數(shù)據(jù),將數(shù)據(jù)利用專(zhuān)用的電量將測(cè)得護(hù)具傳送給計(jì)算機(jī),然后利用計(jì)算機(jī)對(duì)數(shù)據(jù)進(jìn)行處理后,利用GPRS將傳遞到企業(yè)內(nèi)部,數(shù)據(jù)最終將會(huì)被送到測(cè)控中心,從而實(shí)現(xiàn)對(duì)數(shù)據(jù)的遠(yuǎn)程傳輸
2.2 網(wǎng)絡(luò)傳輸協(xié)議
利用GPRS對(duì)數(shù)據(jù)進(jìn)行傳輸面臨協(xié)議選擇,TCP和UDP是目前應(yīng)用最廣泛的兩種協(xié)議,對(duì)協(xié)議的選擇需要依據(jù)系統(tǒng)運(yùn)行的實(shí)際情況而定。TCP協(xié)議數(shù)據(jù)的傳遞面向連接具有較高的可靠性,比較適合應(yīng)用在順序不重復(fù)、大批量的數(shù)據(jù)傳遞。但需要注意,TCP提供的數(shù)據(jù)傳輸不會(huì)對(duì)數(shù)據(jù)的便捷進(jìn)行記錄,因此如果數(shù)據(jù)傳遞過(guò)程中采用的方式是數(shù)據(jù)包,需要對(duì)包的同步問(wèn)題加以考慮。測(cè)井在數(shù)據(jù)傳遞過(guò)程中對(duì)數(shù)據(jù)量的要求較大,同時(shí)網(wǎng)絡(luò)環(huán)境十分復(fù)雜。此外,從目前的情況來(lái)看,在實(shí)際測(cè)試過(guò)程中,如果對(duì)TCP協(xié)議進(jìn)行利用,數(shù)據(jù)在吞吐率上完全可以滿(mǎn)足使用要求。UDP協(xié)議與TCP相比更加簡(jiǎn)單,靈活度高,建立連接較為容易,會(huì)對(duì)數(shù)據(jù)的邊界進(jìn)行保留。其最大的不足它提供的數(shù)據(jù)包通信的方式并不可靠,在復(fù)雜的網(wǎng)絡(luò)環(huán)境下的應(yīng)用要十分謹(jǐn)慎,如果程序?qū)Τ霈F(xiàn)的問(wèn)題處理不當(dāng),可能會(huì)造成協(xié)議崩潰,從而導(dǎo)致系統(tǒng)無(wú)法正常運(yùn)行。
2.3 測(cè)試通訊方案
為了對(duì)系統(tǒng)的可行性進(jìn)行驗(yàn)證,在中國(guó)聯(lián)通和中國(guó)移動(dòng)兩種網(wǎng)絡(luò)的支持下對(duì)數(shù)據(jù)的傳輸效果進(jìn)行驗(yàn)證。在數(shù)據(jù)驗(yàn)證過(guò)程中,利用自行編程的通訊程序?qū)τ吞飳?shí)地進(jìn)行測(cè)試。測(cè)試過(guò)程中主要涉及到的性能有:RTK、吞吐量、時(shí)延、誤幀率的平均值。根據(jù)測(cè)試結(jié)果對(duì)公眾移動(dòng)網(wǎng)絡(luò)是否滿(mǎn)足傳輸需求進(jìn)行確定。同時(shí),可以通過(guò)現(xiàn)場(chǎng)測(cè)試了解用戶(hù)要求,使其為通訊協(xié)議設(shè)計(jì)提供參考。
2.4 設(shè)計(jì)通訊協(xié)議
(1)雙發(fā)送隊(duì)列。
石油測(cè)井?dāng)?shù)據(jù)傳輸系統(tǒng),不僅要能夠?qū)崿F(xiàn)對(duì)測(cè)井中數(shù)據(jù)的傳遞,同時(shí)還應(yīng)當(dāng)實(shí)現(xiàn)文件的傳輸。測(cè)井?dāng)?shù)據(jù)傳輸在實(shí)時(shí)性上具有較高的要求,在文件的傳輸上實(shí)時(shí)性要求相對(duì)則較低,一般來(lái)說(shuō)能夠在規(guī)定的一段時(shí)間內(nèi)完成文件傳輸即可。因此,在實(shí)際工作中,如果傳輸數(shù)據(jù)的寬帶有限,為了確保測(cè)數(shù)據(jù)傳遞的實(shí)時(shí)性,應(yīng)當(dāng)對(duì)測(cè)井?dāng)?shù)據(jù)和文件傳輸兩者制定相應(yīng)的優(yōu)先級(jí)機(jī)制。方案如下:將發(fā)送隊(duì)列分為兩列,一列為測(cè)井?dāng)?shù)據(jù),另一列則為文件傳輸隊(duì)列,同時(shí)應(yīng)當(dāng)在文件傳送隊(duì)列上安置一個(gè)標(biāo)志,對(duì)發(fā)送權(quán)限進(jìn)行限制,該標(biāo)志只有則測(cè)井?dāng)?shù)據(jù)發(fā)送結(jié)束后,才會(huì)生效,標(biāo)志生效后,文件傳送隊(duì)列發(fā)送數(shù)據(jù),然后安置的標(biāo)志將會(huì)再一次回到原位置,依次循環(huán)。
(2)后退N幀協(xié)議。
在數(shù)據(jù)傳輸過(guò)程中,如果采用簡(jiǎn)單的協(xié)議,RTT的時(shí)延一般約為500ms,這對(duì)數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性產(chǎn)生了一定影響,為了提高通訊協(xié)議效率,可以對(duì)后退N幀協(xié)議進(jìn)行應(yīng)用,這種協(xié)議處于非受限協(xié)議和等停協(xié)議之間,對(duì)其進(jìn)行應(yīng)用可以緩解因?yàn)閭鬏斁嚯x過(guò)大,導(dǎo)致等停協(xié)議效率低問(wèn)題的發(fā)生。后退N幀協(xié)議一般只在測(cè)井?dāng)?shù)據(jù)中使用,并不在文件傳輸中使用,對(duì)于文件傳輸?shù)木S護(hù)有更高層的ZMOG協(xié)議完成,在線程發(fā)送上只是簡(jiǎn)單進(jìn)行發(fā)送,并不會(huì)進(jìn)行等待和確認(rèn)。測(cè)井?dāng)?shù)據(jù)傳輸系統(tǒng)在通訊上需要是雙向的,因此在實(shí)際工程中,必須是由接收線程和發(fā)送線程兩者相互系統(tǒng)工作,接收線程和發(fā)送線程兩者之間的信息要能相互傳遞,其中最重要的一點(diǎn)就是,接收線程應(yīng)當(dāng)能夠?qū)RQ應(yīng)當(dāng)信號(hào)傳送給發(fā)送線程,從而確保發(fā)送線程在運(yùn)行過(guò)程中能夠順利完成發(fā)送任務(wù),確保整個(gè)系統(tǒng)的安全運(yùn)行。
[關(guān)鍵詞]數(shù)字圖書(shū)館元數(shù)據(jù)對(duì)象數(shù)據(jù)856字段
一、傳統(tǒng)圖書(shū)館向數(shù)字圖書(shū)館的過(guò)渡
隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)及應(yīng)用的發(fā)展和普及,讀者獲取信息和交流信息的方式發(fā)生了極大的變化。在數(shù)字化圖書(shū)館的構(gòu)建中,數(shù)據(jù)資源應(yīng)當(dāng)包括兩個(gè)基本組成部分:元數(shù)據(jù)和對(duì)象數(shù)據(jù)。
元數(shù)據(jù)包包含的內(nèi)容是對(duì)原始信息資源(即對(duì)象數(shù)據(jù))的描述,其作用是使用數(shù)據(jù)用戶(hù)能夠通過(guò)檢索對(duì)相關(guān)原始信息資源進(jìn)行選擇和定位,并提供調(diào)取對(duì)象數(shù)據(jù)的手段,例如以ISO2709格式存放的各種文獻(xiàn)信息和非文獻(xiàn)信息。對(duì)象數(shù)據(jù)包括印刷文獻(xiàn)的數(shù)字化圖像、各種含有輸出格式控制信息的數(shù)字化文檔、其它圖像、聲音、錄像信息。
二、856字段在元數(shù)據(jù)中的應(yīng)用
在數(shù)字圖書(shū)館中,如何把元數(shù)據(jù)與對(duì)象數(shù)據(jù)進(jìn)行有機(jī)的結(jié)合呢?其結(jié)合點(diǎn)又在哪里呢?我們知道,數(shù)據(jù)格式的標(biāo)準(zhǔn)化是數(shù)據(jù)得以交流和共享的基礎(chǔ),圖書(shū)館所積累的數(shù)據(jù)資源能否跨平臺(tái)遷移,關(guān)鍵要解決標(biāo)準(zhǔn)的問(wèn)題,因此,擴(kuò)充機(jī)讀目錄格式,增加856電子資源定位字段以連接元數(shù)據(jù)和對(duì)象數(shù)據(jù),就是解決這一問(wèn)題的關(guān)鍵。
856字段,電子資源定位與檢索(Electronic Location and Access)包括定位與檢索電子資源所需要的信息。當(dāng)文獻(xiàn)資源或其子集可以通過(guò)電子方式獲取時(shí),可在書(shū)目記錄中啟用856字段。另外,該字段也可用于定位與檢索書(shū)目記錄中著錄的非電子資源的電子版或其相關(guān)的電子資源。856字段應(yīng)當(dāng)屬于元數(shù)據(jù),在CNMARC中,沒(méi)有關(guān)于此字段的定義,但我們可以根據(jù)UNIMARC進(jìn)行擴(kuò)充,以滿(mǎn)足對(duì)電子資源訪問(wèn)的需要。
對(duì)于856字段,具體定義如下:
指示符1:用來(lái)定義電子資源的檢索方法。如果電子資源可以通過(guò)多種檢索方法獲取,那么該字段可以重復(fù)。
#無(wú)信息提供
指沒(méi)有提供關(guān)于檢索方法的信息。
0電子郵件 (Email)
指通過(guò)“郵件傳輸協(xié)議”(Mail Transfer Protocol,簡(jiǎn)稱(chēng)MAIL TP)檢索電子資源。
1文件傳輸協(xié)議 (FTP)
指通過(guò)“文件傳輸協(xié)議”(File Transfer Protocol,簡(jiǎn)稱(chēng)FTP)方式檢索電子資源。
2遠(yuǎn)程登錄(Telnet)
指應(yīng)用Telnet等遠(yuǎn)程登錄方式檢索電子資源。
3撥號(hào)入網(wǎng)(Dial-up)
指通過(guò)傳統(tǒng)的電話撥號(hào)入網(wǎng)方式檢索電子資源。
4超文本傳輸協(xié)議(HTTP)
指通過(guò)超文本傳輸協(xié)議(Hypertext Transfer Protocol,簡(jiǎn)稱(chēng)HTTP)檢索電子資源。
7檢索方法在$y中說(shuō)明
電子資源的檢索方法不是通過(guò)定義的指示符值來(lái)表示,而是通過(guò)記錄在子字段$2的標(biāo)識(shí)性代碼識(shí)別。
指示符2:未定義,空位
現(xiàn)就一些常用字段應(yīng)用作以介紹。
$b檢索號(hào)碼 (有則必備,可重復(fù))
包含與主機(jī)相關(guān)的檢索號(hào)碼。如果文獻(xiàn)是Internet資源,它指的是互聯(lián)網(wǎng)協(xié)議地址(Internet Protocol,簡(jiǎn)稱(chēng)IP);如果用電話撥號(hào)上網(wǎng),它指的可能是電話號(hào)碼。這一數(shù)據(jù)不是靜態(tài)地存儲(chǔ)在某一地方,而是經(jīng)常變化且可以由系統(tǒng)自動(dòng)生成。
例 856 3#$alocis.loc.gov$b140.147.254.3$mlconline@loc.gov$t3270$tline mo
de (e.g.,vt100)$vM-F 06:00-21:30 USA EST, Sat. 08:30-17:00 USA EST, Sun.13:00-17:00 USA EST
注: 本字段是利用電話撥號(hào)入網(wǎng)方式獲取電子資源的實(shí)例。包含主機(jī)域名($a)、IP地址($b)、用戶(hù)可以和資源提供者聯(lián)系的email地址($m)、仿真終端($t)和檢索時(shí)間($v)等信息。
$d路徑 (有則必備,可重復(fù))
$d包含的路徑信息用于說(shuō)明文件存儲(chǔ)位置的邏輯目錄與子目錄名稱(chēng)的序列。
$f電子文件名稱(chēng) (有則必備,可重復(fù))
$f包含存儲(chǔ)在子字段$d指定的目錄/子目錄下的電子文件名稱(chēng)。
例 856 1#$d/pub/EIS/vol*no*/adobe$f*.pdf$lanonymous$qapplication/pdf
注: $d記錄路徑,$f記錄文件名稱(chēng),$o記錄操作系統(tǒng),$i記錄登錄信息,此處為匿名登錄,$q記錄文件的格式類(lèi)型。
三、856字段的實(shí)現(xiàn)方式
以MARC記錄格式為基礎(chǔ),通過(guò)856字段描述網(wǎng)絡(luò)化電子資源的特性、連接方式和提取操作要求。MARC是圖書(shū)館描述、存儲(chǔ)、交換、處理以及檢索信息的基礎(chǔ),經(jīng)過(guò)不斷發(fā)展已被圖書(shū)館用來(lái)描述和存取電子信息資源, 856字段可利用MARC記錄描述網(wǎng)絡(luò)化電子資源(包括網(wǎng)頁(yè)、電子期刊、telnet系統(tǒng)、FTP站點(diǎn)等)的特征、連接方式和提取要求。
網(wǎng)絡(luò)用戶(hù)通過(guò)瀏覽器各種元數(shù)據(jù)輸出結(jié)果,都將采用動(dòng)態(tài)頁(yè)面方式產(chǎn)生,傳送到用戶(hù)端的信息格式符合HTML語(yǔ)言的基本規(guī)范。為改善顯示效果而嵌入的特殊內(nèi)容,可以采用三種方式:ASP、JAVA SCRIPT或ACTIVE X控件。
對(duì)于各種數(shù)字資源,目前比較成熟的技術(shù)解決辦法是:
數(shù)字視頻文件:各種視頻信息采集,并通過(guò)在頁(yè)面文件中嵌入ActiveMovie對(duì)象定義,實(shí)現(xiàn)以Web頁(yè)面方式實(shí)時(shí)傳輸,實(shí)時(shí)播放視頻流式文件。
數(shù)字音頻文件:各種音頻信息采集,并通過(guò)頁(yè)面文件中嵌入ActiveMovie對(duì)象定義,實(shí)現(xiàn)以Web頁(yè)面方式實(shí)時(shí)傳輸,實(shí)時(shí)播放音頻流式文件。
連續(xù)多幅圖像文件:各種圖像信息采集,并通過(guò)頁(yè)面文件中嵌入Java Script定義信息,以Web頁(yè)面方式分頁(yè)(幀)傳輸圖像,并可翻頁(yè)或查看指定頁(yè)(幀)。
電子圖書(shū):利用快速掃描儀,將多頁(yè)圖書(shū)正文打包形成PDF文件。
通過(guò)這種處理,圖書(shū)館就能夠在原有元數(shù)據(jù)的基礎(chǔ)上,通過(guò)856字段這個(gè)切入點(diǎn),把相關(guān)的對(duì)象數(shù)據(jù)(電子資源)連接起來(lái),并且,在查找到相關(guān)的元數(shù)據(jù)信息(例如書(shū)目信息)之后,就可進(jìn)入相關(guān)鏈接,訪問(wèn)其數(shù)字資源,一步到位地滿(mǎn)足讀者的信息需求。
參考文獻(xiàn)
[1]《中國(guó)機(jī)讀目錄格式使用手冊(cè)》,北京圖書(shū)館,華藝出版社.
一、流媒體技術(shù)的傳輸方式
流媒體技術(shù)的傳輸方式主要有兩種,一種是順序流式傳輸,主要是指利用超文本傳輸協(xié)議傳送文件的傳送方式;另一種就是實(shí)時(shí)流式傳輸,指實(shí)時(shí)廣播,或者是應(yīng)用實(shí)時(shí)流協(xié)議等的傳輸方式。
1.順序流式傳輸方式順序流式傳輸方式就是指按順序下載多媒體文件數(shù)據(jù)包,在下載文件的同時(shí)用戶(hù)可觀看在線內(nèi)容,但在給定時(shí)刻,用戶(hù)只能使用已下載的多媒體文件部分,并不可以跳轉(zhuǎn)到尚未下載的部分。由于標(biāo)準(zhǔn)的HTTP服務(wù)器也可以進(jìn)行順序流式傳輸,而且還不需要其他特殊的協(xié)議,所以順序流式傳輸也被稱(chēng)作HTTP流式傳輸。另外,由于用戶(hù)通過(guò)順序流式傳輸方式下載的多媒體文件是無(wú)損下載,加上這種傳輸方式需要用戶(hù)在使用多媒體文件前必須通過(guò)時(shí)延,所以這種傳輸方式多用于高質(zhì)量的短片段,如片頭、片尾和廣告,保證播放的最終質(zhì)量,并不適合長(zhǎng)片段和有隨機(jī)訪問(wèn)要求的情況,如講座、演說(shuō)與演示;也不支持現(xiàn)場(chǎng)廣播,所以在一定程度上,順序流式傳輸方式屬于點(diǎn)播技術(shù)。
2.實(shí)時(shí)流式傳輸方式在采用實(shí)時(shí)流式傳輸方式傳送文件的時(shí)候,需要進(jìn)行實(shí)時(shí)傳送,所以這種傳輸方式最為適合現(xiàn)場(chǎng)廣播和隨機(jī)訪問(wèn),用戶(hù)根據(jù)自身的實(shí)際情況快進(jìn)或后退,觀看自己需要或感興趣的內(nèi)容的內(nèi)容。但采用這種方式傳輸多媒體文件時(shí),需要保證媒體信號(hào)帶寬和網(wǎng)絡(luò)連接相互匹配,這樣,傳輸?shù)亩嗝襟w文件內(nèi)同才可以進(jìn)行實(shí)時(shí)使用,但這也意味著圖像的質(zhì)量較差。
二、目前流媒體技術(shù)的應(yīng)用狀況
1.遠(yuǎn)程教學(xué)流媒體技術(shù)的應(yīng)用為遠(yuǎn)程教學(xué)提供了聲音和音頻,通過(guò)增添學(xué)習(xí)內(nèi)容的趣味性,激發(fā)學(xué)生的學(xué)習(xí)興趣,解決了傳統(tǒng)的單一性等負(fù)面問(wèn)題。教師在教學(xué)過(guò)程中,通過(guò)在線播放與教學(xué)內(nèi)容相關(guān)的視頻,把傳統(tǒng)的教學(xué)模式多樣化,而學(xué)員也能夠針對(duì)自身的不足,自由地選擇想要學(xué)習(xí)的內(nèi)容或章節(jié),提高學(xué)生學(xué)習(xí)主觀能動(dòng)性的同時(shí)也能夠節(jié)省學(xué)生的學(xué)習(xí)時(shí)間。另外,流媒體技術(shù)的應(yīng)用也能夠提高遠(yuǎn)程教學(xué)的互動(dòng)性,師生不僅能夠相互溝通,學(xué)生之間也能夠相互交流學(xué)習(xí)經(jīng)驗(yàn)。最后,部分大型或跨國(guó)企業(yè)也可以通過(guò)遠(yuǎn)程教學(xué),對(duì)員工進(jìn)行教育和培訓(xùn),這些都是歸功于流媒體技術(shù)的應(yīng)用和發(fā)展。
2.直播網(wǎng)絡(luò)視頻隨著時(shí)代的進(jìn)步,流媒體技術(shù)已經(jīng)成為第四代媒體技術(shù)之一。加上網(wǎng)絡(luò)傳播的全球性、快捷性,有很多大型的新聞娛樂(lè)媒體都趁著這個(gè)時(shí)機(jī),通過(guò)互聯(lián)網(wǎng)提供視頻的直播,其中,流媒體技術(shù)的發(fā)展為在網(wǎng)絡(luò)上直播視頻提供了極大的幫助。目前流媒體的視頻直播應(yīng)用突破了網(wǎng)絡(luò)帶寬的限制,實(shí)現(xiàn)了多媒體文件的高質(zhì)量影音傳輸,令不論是什么環(huán)境的用戶(hù)都可以隨時(shí)隨地通過(guò)網(wǎng)絡(luò),利用媒體技術(shù)觀看多媒體信息。
3.進(jìn)行電視電話會(huì)議如今經(jīng)濟(jì)全球化,不少跨國(guó)企業(yè)的高層管理都通過(guò)視頻會(huì)議商討企業(yè)的發(fā)展前景,而視頻會(huì)議系統(tǒng)是指通過(guò)互聯(lián)網(wǎng)或其它數(shù)據(jù)網(wǎng)絡(luò),雙方進(jìn)行視頻或語(yǔ)音開(kāi)展的一種交互式多媒體通信業(yè)務(wù)。視頻會(huì)議系統(tǒng)與流媒體技術(shù)應(yīng)用相結(jié)合,可以充分利用流媒體技術(shù)的可訪問(wèn)性、可擴(kuò)展性以及對(duì)帶寬的有效利用性,實(shí)現(xiàn)視頻會(huì)議內(nèi)容的廣播和錄播,滿(mǎn)足視頻會(huì)議的如上需求。
三、結(jié)語(yǔ)
做為一種具備極高數(shù)據(jù)傳輸率的無(wú)線技術(shù),UWB(Ultra Wideband,超寬帶)已被提出多年。但是直到現(xiàn)在,眾多廠商也還不能夠就其標(biāo)準(zhǔn)達(dá)成一致,同時(shí)沒(méi)有任何UWB產(chǎn)品上市。今年晚些時(shí)候在UWB開(kāi)始嵌入到從PDA到數(shù)碼相機(jī)的任何數(shù)字設(shè)備之中時(shí),這種情況或會(huì)發(fā)生變化。但可能不會(huì)只有一種標(biāo)準(zhǔn)存在,至少目前將有兩種標(biāo)準(zhǔn),這意味著即使消費(fèi)者的移動(dòng)電話和手提電腦都嵌入了對(duì)UWB的支持,它們之間可能也無(wú)法直接通訊。
由于在UWB的標(biāo)準(zhǔn)上兩個(gè)競(jìng)爭(zhēng)的集團(tuán)一直在推動(dòng)各自的建議,IEEE為UWB發(fā)展統(tǒng)一標(biāo)準(zhǔn)(802.15.3a)的努力已經(jīng)陷入僵局兩年之久。這種競(jìng)爭(zhēng)可能會(huì)導(dǎo)致其中一種標(biāo)準(zhǔn)獲勝,也可能使雙方達(dá)成某種妥協(xié),但在UWB上似乎達(dá)成妥協(xié)沒(méi)有可能:兩個(gè)集團(tuán)都在推動(dòng)自己技術(shù)的發(fā)展,都展示了自己的原型樣機(jī),并在年初獲得了FCC的批準(zhǔn)。
UWB論壇是第一個(gè)展示可運(yùn)行系統(tǒng)并獲得FCC批準(zhǔn)的集團(tuán),該論壇由摩托羅拉倡導(dǎo),成員有100多家,大多為小型公司。另一個(gè)競(jìng)爭(zhēng)集團(tuán)WiMedia聯(lián)盟則較晚展示了其系統(tǒng),該集團(tuán)只有35家成員公司,但基本都是些在業(yè)內(nèi)有影響力的企業(yè)。該聯(lián)盟由Intel發(fā)起,吸引了包括諾基亞、索尼和惠普在內(nèi)的其他一些主要供應(yīng)商。論壇和聯(lián)盟都允諾了相似的性能,即在數(shù)英尺距離上提供500Mbps數(shù)據(jù)傳輸速率,但在物理層和MAC層上,兩個(gè)標(biāo)準(zhǔn)具有很大不同。
即使硬件產(chǎn)品可以同時(shí)支持兩種版本的UWB(目前還沒(méi)有廠家做出此承諾),但在應(yīng)用層上,兩種標(biāo)準(zhǔn)的協(xié)同工作仍然存在問(wèn)題。大多數(shù)UWB建議者的遠(yuǎn)期目標(biāo)是將連接PC與顯示器、DVD碟機(jī)與電視機(jī)等線纜連線變成為無(wú)線連接。短期來(lái)看,主要應(yīng)用還將注重于文件傳輸、便攜電腦之間傳遞PowerPoint演示文檔或從數(shù)碼相機(jī)上傳照片。僅就WiMedia來(lái)看,在其上運(yùn)行的文件傳輸協(xié)議至少有不同三種。
到目前為止,WiMedia聯(lián)盟只展示了一種應(yīng)用層協(xié)議:無(wú)線USB,該協(xié)議同樣主要由Intel提出。對(duì)于其他協(xié)議的計(jì)劃仍在進(jìn)行當(dāng)中。例如WiMedia上的本地IP,以及IEEE1394(又稱(chēng)為火線,最初由蘋(píng)果公司提出,是USB的一種競(jìng)爭(zhēng)方案)在WiMedia上運(yùn)行的無(wú)線版本。USB和火線之間的不兼容問(wèn)題已經(jīng)持續(xù)多年,這使得很多高端PC只能同時(shí)容納兩種接口。消除線纜可能會(huì)使這種問(wèn)題更加激化,因?yàn)檫@同時(shí)會(huì)消除兩種規(guī)范對(duì)應(yīng)的物理接口,而正是不同的物理接口才使用戶(hù)能夠分辨使用的是哪種規(guī)范的接口。
關(guān)鍵詞 流媒體;點(diǎn)播;構(gòu)建
中圖分類(lèi)號(hào) G206文獻(xiàn)標(biāo)識(shí)碼 A文章編號(hào) 1674-6708(2010)17-0004-02
隨著網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,校園網(wǎng)絡(luò)帶寬不斷拓展,網(wǎng)絡(luò)的應(yīng)用更加豐富,網(wǎng)絡(luò)信息已經(jīng)從原來(lái)只用文本、圖像、聲音文件,發(fā)展到視/音頻信號(hào)組合等大容量形式文件。近年來(lái),流媒體技術(shù)的成熟與廣泛應(yīng)用,使這些文件的播放更加方便、快速、流暢,并實(shí)現(xiàn)了教學(xué)資源、會(huì)議、講座通過(guò)網(wǎng)絡(luò)直播、點(diǎn)播,使學(xué)生可以隨時(shí)隨地根據(jù)自己需要,選擇學(xué)習(xí)自己感興趣的知識(shí),改變了網(wǎng)絡(luò)教育的傳統(tǒng)模式,促進(jìn)遠(yuǎn)程教學(xué)、網(wǎng)絡(luò)教學(xué)的發(fā)展上了一個(gè)新的臺(tái)階。
1 流媒體技術(shù)簡(jiǎn)介
流媒體技術(shù)也稱(chēng)流式媒體技術(shù),就是把連續(xù)的視/音頻信息經(jīng)過(guò)壓縮處理后放上網(wǎng)站服務(wù)器,讓用戶(hù)一邊下載一邊觀看、收聽(tīng),而不要等整個(gè)壓縮文件下載到自己的計(jì)算機(jī)上才可以觀看的網(wǎng)絡(luò)傳輸技術(shù)。流媒體在播放前并不需要下載整個(gè)文件,只將開(kāi)始部分內(nèi)容存入內(nèi)存,等待幾秒或十幾秒后,流媒體數(shù)據(jù)流隨時(shí)傳送隨時(shí)播放,所以,在播放過(guò)程中用戶(hù)避免了等待整個(gè)文件全部從Internet/Intranet上下載完成才能觀看的缺點(diǎn)。
目前,比較流行流媒體技術(shù)及產(chǎn)品主要有三大“流派”:一是Real Networks公司的Real Media;二是蘋(píng)果公司的QuickTime;三是微軟的Windows Media。其中Windows Media 與Windows集成在一起,使用方便,用戶(hù)最為廣泛。它主要包括Media Tools,Media Services和Media Player3部分:Media Tools提供了一系列的流處理工具,Media Services是流媒體服務(wù)器端的程序,它支持單播、組播、廣播和點(diǎn)播等多種媒體播放方式;Media Player是客戶(hù)端的播放應(yīng)用程序,它負(fù)責(zé)媒體的播放,主要文件格式有.asf和.wmv等。
Windows Media技術(shù)提供了一系列流式媒體服務(wù)工具,用以創(chuàng)建、制作、、播放和管理等一整套解決方案,還免費(fèi)提供了開(kāi)發(fā)工具包(SDK)代二次開(kāi)發(fā)使用。為網(wǎng)絡(luò)流媒體播放系統(tǒng)組建提供了極大的便利。本文就以運(yùn)用Windows Media軟件,提供流媒體點(diǎn)播解決方案。
2 網(wǎng)絡(luò)VOD傳輸方式
VOD (Video On Demand)即視頻點(diǎn)播技術(shù)的簡(jiǎn)稱(chēng)。視頻點(diǎn)播是計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)、多媒體技術(shù)發(fā)展的產(chǎn)物,是一項(xiàng)全新的信息服務(wù)。它擺脫了傳統(tǒng)視頻受時(shí)空限制的束縛,解決了一個(gè)想看什么節(jié)目就看什么,想何時(shí)看就何時(shí)看的問(wèn)題。VOD常用的傳輸方式主要有兩種,一種是順序流式傳輸,另一種是實(shí)時(shí)流式傳輸。
2.1順序流式傳輸
順序流式傳輸是順序下載,在下載文件的同時(shí)用戶(hù)可以觀看,而且用戶(hù)只能觀看已下載的那部分,而不能要求跳到還未下載的部分。順序流式文件可以放在標(biāo)準(zhǔn)HTTP或FTP服務(wù)器上,可用標(biāo)準(zhǔn)HTTP服務(wù)發(fā)送,而不需要特殊協(xié)議,它不支持現(xiàn)場(chǎng)廣播。
2.2實(shí)時(shí)流式傳輸
實(shí)時(shí)流式傳輸中,音視頻信息可被實(shí)時(shí)觀看到。即用戶(hù)想從那開(kāi)始看就可以從那開(kāi)始看,在觀看過(guò)程中用戶(hù)可快進(jìn)或后退以觀看前面或后面的內(nèi)容。實(shí)時(shí)流傳輸與順序流式傳輸不同,它需要專(zhuān)用的流媒體服務(wù)器與傳輸協(xié)議,如QuickTime Streaming Services、Real Services與Windows Media Services。這些服務(wù)器允許你對(duì)媒體發(fā)送進(jìn)行更多級(jí)別的控制,因而系統(tǒng)設(shè)置、管理比標(biāo)準(zhǔn)HTTP服務(wù)器更復(fù)雜。實(shí)時(shí)流式傳輸還需要特殊網(wǎng)絡(luò)協(xié)議,如:RTSP (Real time Streaming Protocol)或MMS (Microsoft Media Services)。
順序流傳輸?shù)膶?shí)現(xiàn)方法簡(jiǎn)單,但播放進(jìn)程只能按順序從頭到尾,在網(wǎng)絡(luò)教學(xué)應(yīng)用中不能控制。比如,對(duì)于重點(diǎn)難點(diǎn),老師需要反復(fù)播放某一片段的內(nèi)容,采用順序流就無(wú)法實(shí)現(xiàn)了。為了克服這一缺點(diǎn),我們利用微軟的Windows Media,實(shí)現(xiàn)實(shí)時(shí)流點(diǎn)播,使校園網(wǎng)中教師與學(xué)生都可以控制視/音資源,以將豐富的教學(xué)素材引入到課堂,有利于學(xué)校教學(xué)資源網(wǎng)絡(luò)化。
3 校園網(wǎng)實(shí)時(shí)流VOD系統(tǒng)開(kāi)發(fā)
我們要求校園網(wǎng)絡(luò)中的多媒體數(shù)據(jù)以實(shí)時(shí)流形式傳輸,它與傳統(tǒng)的文件傳輸數(shù)據(jù)不同,多媒體數(shù)據(jù)一旦開(kāi)始傳輸,就必須穩(wěn)定的速率傳送到用戶(hù)桌面,以保證播放效果。網(wǎng)絡(luò)擁堵、進(jìn)程中斷、I/O瓶頸都可能導(dǎo)致傳送延遲,引起數(shù)據(jù)流傳輸阻塞。下面筆者以我校校園網(wǎng)為基礎(chǔ),以Windows Media提供的系統(tǒng)軟件為例,探討流媒體點(diǎn)播系統(tǒng)的組建。
3.1校園網(wǎng)VOD系統(tǒng)基本功能要求
1) 可以讓一個(gè)節(jié)目在同一個(gè)時(shí)間內(nèi)供多個(gè)用戶(hù)同時(shí)點(diǎn)播;
2)提供全屏播放,暫停、停止、快倒、快播、跳播的功能;
3)提供A/V數(shù)據(jù)庫(kù)的增添、刪除、查詢(xún)等管理能力;
4)支持節(jié)目名的檢索,能夠以極快的速度查找到想要的資源。
3.2系統(tǒng)組成
為了滿(mǎn)足校園網(wǎng)VOD系統(tǒng)基本功能要求,實(shí)現(xiàn)校園網(wǎng)絡(luò)流媒體的實(shí)時(shí)流式傳輸,我校VOD系統(tǒng)主要由以下幾個(gè)部分組成,如圖1所示。
1)節(jié)目源:攝像機(jī)、電視機(jī)、VCD光盤(pán);
2)A/V捕獲和壓縮編碼:A/V捕獲卡,編碼軟件Media Encoder,將捕獲的A/V信號(hào)進(jìn)行編碼壓縮后送到多媒體播放服務(wù)器,采集格式是微軟的流媒體格式,如:.asf、.wmv等;
3)Windows Media Services:設(shè)置點(diǎn)播服務(wù),運(yùn)行流播放軟件播放視/音頻;
4)終端工作站:使用IE瀏覽器,用于實(shí)時(shí)點(diǎn)播A/V節(jié)目。
從系統(tǒng)硬件結(jié)構(gòu)看,它與一般的一個(gè)點(diǎn)播系統(tǒng)沒(méi)什么區(qū)別,實(shí)時(shí)流的實(shí)現(xiàn)關(guān)鍵技術(shù)主要是在軟件上進(jìn)行必要的設(shè)置和對(duì)播放器編碼程序進(jìn)行控制。
3.3系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)
1)Windows Media Services的設(shè)置。在Windows Media Services上設(shè)置點(diǎn)播服務(wù)站,將要點(diǎn)播的視/音頻文件映射到該站點(diǎn)上,這是實(shí)現(xiàn)實(shí)時(shí)點(diǎn)播的一個(gè)技術(shù)關(guān)鍵。如果將點(diǎn)播視/音頻文件映射到IIS服務(wù)上,就無(wú)法實(shí)現(xiàn)對(duì)流的實(shí)時(shí)控制,只能順序流傳輸,HTTP方式只能以順序流的方式播放流媒體。
可以說(shuō),“點(diǎn)播”指的是一種典型的文件傳輸過(guò)程,在這個(gè)過(guò)程中,只將單獨(dú)的數(shù)據(jù)副本從源位置發(fā)送到請(qǐng)求該數(shù)據(jù)的每個(gè)客戶(hù)端。設(shè)置點(diǎn)播站后,所播放的文件實(shí)際是通過(guò)Media Services的點(diǎn)播站,其傳輸協(xié)議是mms,其URL由服務(wù)器名、虛擬點(diǎn)播站名和流文件名(*.wmv *.wma *.asf)組成。
設(shè)置 Windows Media Services 的過(guò)程極其簡(jiǎn)單:
(1)將Windows Media 文件(*.ASF 或* .WMA)放置在運(yùn)行 Windows Media 管理器的 NT Services 上的 ASFROOT 目錄中。
(2)創(chuàng)建 ASX 或 WAX 文件,該文件是頁(yè)面與 Windows Media 文件之間提供鏈接的、文本形式的元文件。對(duì)于 ASX 文件,代碼如下所示:
(4)更改 標(biāo)記中的路徑,以使其指向Windows Media 文件。
(5)將該文件保存到 Windows Media 文件所在的同一個(gè)文件夾中,并將其擴(kuò)展名從 .txt 更改為 .asx 或 .wax。
2)A/V節(jié)目編碼。為了使錄制視/音頻資源實(shí)現(xiàn)實(shí)時(shí)流點(diǎn)播,首先要對(duì)其進(jìn)行編碼。在用Windows Media Encoder對(duì)節(jié)目編碼時(shí)要做注意二點(diǎn),才能夠?qū)崿F(xiàn)節(jié)目隨著拖動(dòng)播放,一是在設(shè)置文件輸出分發(fā)時(shí),應(yīng)選擇“文件將從windows Media服務(wù)器傳輸”;二是文件保存時(shí)要選擇“將索引添加到文件”。如果沒(méi)有做到這兩點(diǎn),則需要用Encoder重新處理,或者用Windows Media Tools將文件重新編輯一下。
3)終端工作站配置。在點(diǎn)播工作站,可以用Media Player來(lái)點(diǎn)播服務(wù)器中的資源,對(duì)于將Media Player嵌入網(wǎng)頁(yè)的代碼設(shè)計(jì)者可根據(jù)所用網(wǎng)頁(yè)制作軟件進(jìn)行編寫(xiě)。
4 結(jié)論
本文的設(shè)計(jì)實(shí)例是筆者借助于本校原來(lái)完善的局域網(wǎng)組建的流媒體點(diǎn)播系統(tǒng),設(shè)計(jì)、開(kāi)發(fā)符合我校視頻點(diǎn)播的應(yīng)用要求,目的就是將教學(xué)、娛樂(lè)、資訊與網(wǎng)絡(luò)集成在一起,實(shí)現(xiàn)交互和實(shí)時(shí)的管理和服務(wù),以更好的發(fā)揮校園網(wǎng)絡(luò)的作用,改善教師教學(xué)的手段,學(xué)生自主學(xué)習(xí)的機(jī)會(huì)。
參考文獻(xiàn)
[1]馬武.多媒體技術(shù)及應(yīng)用[M].北京:清華大學(xué)出版社,2008.
【關(guān)鍵詞】傳輸系統(tǒng);集成信息化;校驗(yàn)碼;事件;監(jiān)聽(tīng)機(jī)制
引言
目前,隨著企業(yè)集約化管理的需求,使用集成平臺(tái)處理業(yè)務(wù)、數(shù)據(jù)、信息已經(jīng)滲透到企業(yè)安全、生產(chǎn)各個(gè)環(huán)節(jié)。數(shù)據(jù)、文件之間共享被越來(lái)越多的集成應(yīng)用系統(tǒng)所使用,如實(shí)時(shí)監(jiān)測(cè)數(shù)據(jù)文本、圖文圖紙、資料文件等,需要構(gòu)建一套企業(yè)集成類(lèi)信息化平臺(tái),對(duì)作業(yè)現(xiàn)場(chǎng)各子系統(tǒng)數(shù)據(jù)進(jìn)行集成與應(yīng)用,達(dá)到實(shí)時(shí)監(jiān)視與集中調(diào)度的目標(biāo)。在某些應(yīng)用場(chǎng)景下,數(shù)據(jù)在傳輸過(guò)程中需要考慮上傳的及時(shí)性與數(shù)據(jù)的連續(xù)性,以保證對(duì)現(xiàn)場(chǎng)環(huán)境的實(shí)時(shí)監(jiān)視,以保證對(duì)預(yù)警和故障的及時(shí)處理;同時(shí)在應(yīng)用分析過(guò)程中,需要對(duì)現(xiàn)場(chǎng)數(shù)據(jù)的連續(xù)性分析,以保證數(shù)據(jù)的完整性和數(shù)據(jù)分析結(jié)果的準(zhǔn)確性。
常規(guī)的文件傳輸系統(tǒng)更適應(yīng)于下行多于上行傳輸?shù)膱?chǎng)景。而在企業(yè)的信息化集成平臺(tái)上,客戶(hù)端對(duì)上傳文件的需求更為強(qiáng)烈。客戶(hù)端存在有大量的文件需要上傳至服務(wù)器,以實(shí)現(xiàn)數(shù)據(jù)處理、解析與存儲(chǔ)備份及文件歸檔存儲(chǔ)與備份等。常規(guī)的文件傳輸系統(tǒng)有以下缺點(diǎn):一、上行與下行不對(duì)等,更注重下行傳輸;二、傳輸權(quán)限不易控制,權(quán)限認(rèn)證手段種類(lèi)繁多,步驟繁瑣,例如FTP模式;三、對(duì)于大量小文件和頻繁傳輸?shù)膱?chǎng)景,文件傳輸效率低下,多數(shù)情況下需要驗(yàn)證請(qǐng)求再傳輸。
1.實(shí)現(xiàn)目標(biāo)
本文針對(duì)現(xiàn)有企業(yè)生產(chǎn)過(guò)程實(shí)時(shí)監(jiān)測(cè)與應(yīng)用平臺(tái)中,基層單位小文件,多客戶(hù)端,安全高效頻繁傳輸?shù)膽?yīng)用需求,設(shè)計(jì)一種基于TCP協(xié)議的遠(yuǎn)程高效文件傳輸系統(tǒng),達(dá)到數(shù)據(jù)及時(shí)、高效、穩(wěn)定傳輸,主要實(shí)現(xiàn)基于文件夾、文件創(chuàng)建事件的監(jiān)聽(tīng)觸發(fā)上傳機(jī)制;一次握手,終身傳輸機(jī)制;自定義分發(fā)機(jī)制,滿(mǎn)足多種業(yè)務(wù)應(yīng)用;分塊多線程傳輸機(jī)制提高傳輸效率;分級(jí)故障診斷等系統(tǒng)功能,同時(shí)該系統(tǒng)的核心技術(shù)亦可作為企業(yè)網(wǎng)盤(pán)的核心技術(shù)。
2.設(shè)計(jì)實(shí)現(xiàn)
系統(tǒng)基于TCP/IP技術(shù),采用Socket方式進(jìn)行設(shè)計(jì),面向SOA的架構(gòu)思路,利用windows服務(wù)實(shí)現(xiàn)在服務(wù)端提供服務(wù),定義好數(shù)據(jù)傳輸方式,傳輸協(xié)議,數(shù)據(jù)格式,同時(shí)通過(guò)ip地址和端口進(jìn)行服務(wù)訪問(wèn)。客戶(hù)端通過(guò)連接服務(wù)器指定的端口進(jìn)行消息交互。程序拓?fù)浣Y(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)架構(gòu)圖
系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)主要利用.Net Remoting技術(shù),在windows 服務(wù)中注冊(cè)文件傳輸服務(wù),客戶(hù)端利用Windows應(yīng)用程序?qū)崿F(xiàn),在實(shí)現(xiàn)中利用分布式的設(shè)計(jì)思想,便于程序與系統(tǒng)功能擴(kuò)展。
.NET遠(yuǎn)程處理(.NET Remoting)是微軟 .NET Framework 中的一種網(wǎng)絡(luò)通信技術(shù),提供了一種允許對(duì)象通過(guò)應(yīng)用程序域與另一對(duì)象進(jìn)行交互的框架。可以使用 SOAP 以外的協(xié)議來(lái)通信,而在服務(wù)端和客戶(hù)端之間所操作的方法近乎相同,客戶(hù)端可以不必考慮使用的協(xié)議,即可訪問(wèn)服務(wù)端所開(kāi)放的對(duì)象。
在Remoting中是通過(guò)通道(channel)來(lái)實(shí)現(xiàn)兩個(gè)應(yīng)用程序域之間對(duì)象的通信的。
客戶(hù)端通過(guò)Remoting訪問(wèn)通道以獲得服務(wù)端對(duì)象,再通過(guò)解析為客戶(hù)端對(duì)象,遠(yuǎn)程對(duì)象代碼運(yùn)行在服務(wù)器上,然后客戶(hù)端再通過(guò)Remoting連接服務(wù)器,獲得該服務(wù)對(duì)象并通過(guò)序列化在客戶(hù)端運(yùn)行。
3.研究?jī)?nèi)容
3.1 統(tǒng)一權(quán)限認(rèn)證體系的設(shè)計(jì)與實(shí)現(xiàn)
建立統(tǒng)一的權(quán)限認(rèn)證體系,以控制文件傳輸權(quán)限,權(quán)限認(rèn)證主要通過(guò)客戶(hù)端調(diào)用服務(wù)器接口進(jìn)行權(quán)限認(rèn)證,如果正常登陸,則進(jìn)行文件同步及創(chuàng)建監(jiān)聽(tīng)事件。
3.2 大文件分塊傳輸與算法設(shè)計(jì)
針對(duì)大文件傳輸特殊性要求,需要考慮對(duì)文件進(jìn)行分塊多線程進(jìn)行傳輸,因此需要設(shè)定文件塊大小的閾值,如512kb,小于等于512K時(shí)為小文件,反之為大文件;大文件分為多塊之后,在傳輸之前每塊均提取自身校驗(yàn)碼;同時(shí)向服務(wù)器發(fā)送對(duì)應(yīng)的文件基本信息及分塊信息,校驗(yàn)碼與文件均進(jìn)行傳輸;同時(shí)系統(tǒng)根據(jù)文件分塊個(gè)數(shù)分配多個(gè)線程的傳輸;單塊數(shù)據(jù)傳輸后,仍使用同樣的算法提取校驗(yàn)碼,與原始校驗(yàn)碼對(duì)比驗(yàn)證以確定當(dāng)前數(shù)據(jù)塊是否正確接收。各分塊傳輸完成后,根據(jù)文件塊索引,實(shí)現(xiàn)文件合并。
圖2 文件分塊傳輸邏輯圖
3.3 文件轉(zhuǎn)換庫(kù)的設(shè)計(jì)
在某些特殊情況下,需要考慮規(guī)定接收文件的格式,比如圖片類(lèi)僅支持bmp、jpg、png和gif;客戶(hù)端能夠獲取格式規(guī)定,并對(duì)本地的相關(guān)文件實(shí)現(xiàn)文件轉(zhuǎn)換算法,例如傳輸圖片文件時(shí),客戶(hù)端生成tiff格式的文件,則必須將該文件轉(zhuǎn)換為bmp、jpg、png或gif中的一種才可以上傳。對(duì)于客戶(hù)端本身操作的文件,不符合格式的文件都可以通過(guò)算法轉(zhuǎn)換為標(biāo)準(zhǔn)格式的文件。
因此在文件版?zhèn)鬏敯姹具^(guò)程中,需要考慮文件轉(zhuǎn)換庫(kù)的設(shè)計(jì),即記錄客戶(hù)端文件名稱(chēng)、文件特征碼、文件擴(kuò)展名、服務(wù)端文件名稱(chēng)、轉(zhuǎn)換后文件特征碼、文件擴(kuò)展名,服務(wù)器在啟動(dòng)過(guò)程中,掃描服務(wù)器某目錄下的文件列表名稱(chēng)及校驗(yàn)碼,與客戶(hù)端對(duì)應(yīng)目錄文件校驗(yàn)碼進(jìn)行第一次比對(duì),對(duì)服務(wù)器端不存在或不一致的文件名及校驗(yàn)碼進(jìn)行同步上傳,文件信息比對(duì)主要用在客戶(hù)端啟動(dòng)時(shí),其他時(shí)間主要通過(guò)文件夾或文件事件進(jìn)行同步更新。
3.4 敏捷傳輸機(jī)制的設(shè)計(jì)
在傳統(tǒng)的傳輸設(shè)計(jì)過(guò)程中,主要通過(guò)時(shí)間輪詢(xún)的方式判斷某目錄下文件是否發(fā)生了變化,同時(shí)對(duì)于某些文件處于變化狀態(tài)中,然后進(jìn)行對(duì)應(yīng)的事件,在這種情況下既不利于文件的及時(shí)傳輸與數(shù)據(jù)的更新,也不利于程序的設(shè)計(jì)實(shí)現(xiàn),變化中的狀態(tài)文件需要加鎖進(jìn)行處理,否則會(huì)造成文件半個(gè)的傳輸或者傳輸異常。
系統(tǒng)在設(shè)計(jì)過(guò)程中采用C#中的FileSystem Watcher組件,實(shí)現(xiàn)對(duì)文件系統(tǒng)的監(jiān)視,當(dāng)目錄或者文件發(fā)生增加、修改、刪除等事件完成時(shí),進(jìn)行相關(guān)的事件驅(qū)動(dòng),快速地啟動(dòng)業(yè)務(wù)處理。系統(tǒng)主要針對(duì)FileSystemWatcher的Changed,Created,Deleted,Renamed等FileSystemEventArgs事件,實(shí)現(xiàn)當(dāng)客戶(hù)端創(chuàng)建目錄或文件時(shí),通過(guò)文件夾或文件創(chuàng)建成功事件,激發(fā)客戶(hù)端通過(guò)服務(wù)器端接口創(chuàng)建對(duì)應(yīng)目錄或文件;當(dāng)客戶(hù)端更改目錄時(shí),通過(guò)文件夾更改成功事件,激發(fā)客戶(hù)端通過(guò)服務(wù)器端接口更改對(duì)應(yīng)目錄;當(dāng)客戶(hù)端刪除目錄時(shí),通過(guò)文件夾刪除成功事件,激發(fā)客戶(hù)端通過(guò)服務(wù)器端接口刪除對(duì)應(yīng)目錄及目錄中文件;
3.5 故障處理及重傳方法的設(shè)計(jì)
系統(tǒng)基于網(wǎng)絡(luò)傳輸,在傳輸過(guò)程中,難免因?yàn)榫W(wǎng)絡(luò)故障而導(dǎo)致的傳輸網(wǎng)絡(luò)中斷,在公司集成化信息平臺(tái)中,需要考慮不間斷運(yùn)行,因此需要及時(shí)對(duì)網(wǎng)絡(luò)傳輸進(jìn)行診斷,并提供一定的定位功能,可通過(guò)提示窗、控制臺(tái)輸出、日志記錄等多種功能提供故障定位信息,例如網(wǎng)絡(luò)中斷異常、文件轉(zhuǎn)換失敗等故障均有記錄可查,可輔助解決故障,同時(shí)根據(jù)故障狀態(tài)或故障類(lèi)型將故障劃分類(lèi)別,根據(jù)持續(xù)時(shí)間進(jìn)行分級(jí)報(bào)警,進(jìn)行窗體閃爍或語(yǔ)音報(bào)警提醒。
在傳輸過(guò)程中,網(wǎng)絡(luò)中斷,在傳輸中間過(guò)程會(huì)導(dǎo)致部分文件的中斷或不完整,在服務(wù)器端通過(guò)文件校驗(yàn)對(duì)文件塊進(jìn)行檢查,當(dāng)發(fā)現(xiàn)文件塊出現(xiàn)傳輸錯(cuò)誤則向客戶(hù)端發(fā)出錯(cuò)誤回執(zhí),進(jìn)行重發(fā)。
3.6 斷點(diǎn)續(xù)傳的設(shè)計(jì)
由于實(shí)時(shí)監(jiān)測(cè)平臺(tái)數(shù)據(jù)完整性要求,需要對(duì)傳輸?shù)臄?shù)據(jù)保持完整性,因此需要考慮文件時(shí)間戳標(biāo)識(shí)對(duì)文件進(jìn)行本地化存儲(chǔ),當(dāng)發(fā)生網(wǎng)絡(luò)中斷時(shí),文件暫存到本地,網(wǎng)絡(luò)通斷時(shí),根據(jù)文件列表,依據(jù)文件的創(chuàng)建時(shí)間進(jìn)行順序上傳,以保證數(shù)據(jù)有序性。
4.功能測(cè)試
測(cè)試環(huán)境采用局域網(wǎng)內(nèi)的三臺(tái)機(jī)器,一臺(tái)作為服務(wù)器,兩臺(tái)作為客戶(hù)端,分別實(shí)現(xiàn)對(duì)服務(wù)端與客戶(hù)端程序部署。
4.1 測(cè)試準(zhǔn)備
(1)建立客戶(hù)端信息目錄庫(kù):客戶(hù)端目錄庫(kù)存儲(chǔ)服務(wù)器地址、登錄賬號(hào)、密碼、共享路徑、是否自定驗(yàn)證登陸。如在客戶(hù)端程序配置文件中服務(wù)器地址(192.168.1.1)、登陸賬戶(hù)(ABC)、密碼(加密源碼:123456)、共享路徑為D:\F1;D:\F2。
(2)服務(wù)器初始化:設(shè)定好存放路徑,如:G:\Data。在服務(wù)器上創(chuàng)建好實(shí)際路徑,并將路徑名稱(chēng)保存在配置文件中,加載轉(zhuǎn)換對(duì)應(yīng)的校驗(yàn)碼庫(kù)列表(主要與客戶(hù)端轉(zhuǎn)換后文件對(duì)比分析)。
(3)客戶(hù)端初始化:監(jiān)聽(tīng)共享路徑為D:\F1;D:\F2下文件或者目錄操作事件,同時(shí)在啟動(dòng)過(guò)程中,通過(guò)輸入用戶(hù)名、密碼完成權(quán)限認(rèn)證后,實(shí)現(xiàn)本地目錄下文件監(jiān)聽(tīng)。
4.2 過(guò)程測(cè)試
(1)初始自動(dòng)同步:客戶(hù)端登陸驗(yàn)證完成后,進(jìn)行對(duì)應(yīng)(舉例D:\F1;D:\F2下)目錄對(duì)應(yīng)的服務(wù)器目錄進(jìn)行文件校驗(yàn)碼的獲取,如服務(wù)器對(duì)應(yīng)G:\Data\ABC\F1目錄下有一個(gè)文件D1.DOC,對(duì)應(yīng)的文件校驗(yàn)碼為AFCD1238,文件大小為1.32M,一個(gè)文件D2.DOC,對(duì)應(yīng)的文件校驗(yàn)碼為ABCD1238,文件大小為500K,F(xiàn)2目錄不存在,則根據(jù)事件創(chuàng)建F2目錄,則服務(wù)器上G:\Data\ABC\F2目錄;客戶(hù)端D:\F1下有文件D1.DOC,對(duì)應(yīng)的文件校驗(yàn)碼為AFFF1238,文件大小為1.32M,一個(gè)文件D2.DOC,對(duì)應(yīng)的文件校驗(yàn)碼為ABCD1238,文件大小為500K。D:\F2有一個(gè)P1.TIFF文件,根據(jù)對(duì)應(yīng)的文件名和校驗(yàn)碼進(jìn)行判斷,本次上傳F1下的D1.DOC和F2下的P1.TIFF文件;
(2)文件傳輸:對(duì)于F1下的D1.DOC文件:根據(jù)前文示例,將512kb作為劃分文件大小的標(biāo)準(zhǔn),大于512kb的文件,按照每塊512kb大小將整個(gè)文件分割成三個(gè)文件塊之后再傳輸,傳輸完成后合成,進(jìn)行保存,同時(shí)可根據(jù)服務(wù)器線程管理,啟動(dòng)線程資源分配,如服務(wù)器共有1000個(gè)接收線程,有空閑上傳線程2個(gè),則分配2個(gè)線程進(jìn)行并行上傳,服務(wù)器空閑線程為0,如先傳遞先兩個(gè)512KB文件,文件傳輸完畢,則通知服務(wù)器線程回收,服務(wù)器空閑線程大于2,則單獨(dú)分配1個(gè)空閑線程進(jìn)行剩余數(shù)據(jù)塊的傳輸,傳輸完成后,回收線程,所有塊均傳輸完成后,合并所有塊,完成大文件傳輸。對(duì)于F2下的P1.TIFF文件進(jìn)行上傳轉(zhuǎn)換,采用SaveAs方式進(jìn)行文件另存,同時(shí)將文件校驗(yàn)碼記錄到對(duì)應(yīng)庫(kù)中,以便于重傳判別。
(3)故障處理及重傳:傳輸過(guò)程中,通過(guò)停止網(wǎng)卡工作或斷開(kāi)網(wǎng)線方式進(jìn)行,系統(tǒng)進(jìn)行網(wǎng)絡(luò)傳輸中斷提醒,當(dāng)中斷故障持續(xù)5分鐘,進(jìn)行使用日志提醒或提示窗;故障持續(xù)時(shí)間超過(guò)10分鐘則報(bào)警升級(jí),通過(guò)語(yǔ)音報(bào)警箱進(jìn)行提醒;同時(shí)對(duì)某一個(gè)特殊類(lèi)型文件進(jìn)行轉(zhuǎn)換上傳時(shí),當(dāng)文件轉(zhuǎn)換失敗進(jìn)行記錄可查。
(4)其他測(cè)試:網(wǎng)絡(luò)中斷以后,文件本地化暫存的斷點(diǎn)續(xù)傳測(cè)試,文件進(jìn)行本地化暫存,當(dāng)網(wǎng)絡(luò)通以后,進(jìn)行文件順序上傳。客戶(hù)端對(duì)應(yīng)目錄下的文件、目錄創(chuàng)建、刪除、更新事件,服務(wù)端相關(guān)事件的響應(yīng)。
(5)退出:當(dāng)客戶(hù)程序退出時(shí),與服務(wù)端消息交互,服務(wù)端進(jìn)行對(duì)應(yīng)退出信息的記錄,以防止客戶(hù)端用戶(hù)在文件數(shù)據(jù)傳輸過(guò)程中非法操作的追蹤。
4.3 測(cè)試結(jié)果
通過(guò)測(cè)試,該文件傳輸系統(tǒng)高效的進(jìn)行了文件的傳輸,解決了傳統(tǒng)傳輸模式效率、穩(wěn)定性及可控性問(wèn)題,該系統(tǒng)更適合大量小文件頻繁傳輸,有利于在企業(yè)集約化監(jiān)測(cè)監(jiān)管信息化平臺(tái)中的數(shù)據(jù)共享集成。同時(shí),服務(wù)端文件傳輸塊的設(shè)計(jì)根據(jù)程序運(yùn)行過(guò)程進(jìn)行實(shí)時(shí)調(diào)整,以保證大文件所占比率在整個(gè)文件傳輸系統(tǒng)中的5%以下,從而避免過(guò)多的文件切塊傳輸與合并另存,提高文件傳輸效率。
5.總結(jié)
本文就一種高效文件傳輸系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)展開(kāi)論述,系統(tǒng)就企業(yè)集約化監(jiān)測(cè)監(jiān)管信息化平臺(tái)中的數(shù)據(jù)、文件之間共享建立了穩(wěn)定高效的傳輸通道,在項(xiàng)目應(yīng)用起著有至關(guān)重要的作用。在后期系統(tǒng)完善中尚需要考慮服務(wù)器端的可靠性,同時(shí)實(shí)現(xiàn)基于SOAP的多種協(xié)議的傳輸以滿(mǎn)足越過(guò)服務(wù)器,實(shí)現(xiàn)SOCKET等被屏蔽的功能,以及建立統(tǒng)一的管理平臺(tái),支持多語(yǔ)言及遠(yuǎn)程管理功能。
參考文獻(xiàn)
[1]高珍珍.跨庫(kù)集成檢索系統(tǒng)中數(shù)據(jù)源連接器的半自動(dòng)生成[D].北京師范大學(xué).
[2]趙文濤,魏紅格.礦業(yè)信息異構(gòu)數(shù)據(jù)庫(kù)集成模型的研究[J].工礦自動(dòng)化,2008(06).
[3]林懷恭,聶瑞華,等.基于ESB的共享數(shù)據(jù)中心的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2010,5.
[4]韓建國(guó),楊漢宏,等.神華集團(tuán)數(shù)字礦山建設(shè)研究[J].工礦自動(dòng)化,2013(03).
傳統(tǒng)的視頻傳輸具有傳輸延時(shí)、抖動(dòng)、丟包等缺點(diǎn),在人們生活水平越來(lái)越高對(duì)網(wǎng)絡(luò)視頻的要求也越來(lái)越高的情況下,隨著視頻編碼和互聯(lián)網(wǎng)的快速發(fā)展,H.264視頻編碼標(biāo)準(zhǔn)壓縮性能良好、適應(yīng)性強(qiáng)等特點(diǎn)再結(jié)合RTP協(xié)議作為質(zhì)量保證,能夠很好地解決傳統(tǒng)視頻傳輸中的缺點(diǎn),保證視頻的完整、清晰、準(zhǔn)確。實(shí)踐證明,這種結(jié)合對(duì)于自適應(yīng)傳輸機(jī)制具有很好的適用性和廣闊的發(fā)展前景。
1 自適應(yīng)傳輸機(jī)制的研究現(xiàn)狀
自適應(yīng)傳輸機(jī)制是一種利用網(wǎng)絡(luò)技術(shù)對(duì)網(wǎng)絡(luò)動(dòng)態(tài)進(jìn)行測(cè)試評(píng)估,再通過(guò)調(diào)節(jié)適應(yīng)機(jī)制以達(dá)到實(shí)時(shí)調(diào)整視頻傳輸速率來(lái)滿(mǎn)足寬帶網(wǎng)速。其原理是利用視頻接收端反饋到發(fā)送端的網(wǎng)絡(luò)動(dòng)態(tài)來(lái)調(diào)整視頻傳輸以保證視頻質(zhì)量完好。
2 H.264視頻編碼標(biāo)準(zhǔn)與RTP協(xié)議的適用性探討
2.1 H.264簡(jiǎn)介
H.264是新一代視頻編碼標(biāo)準(zhǔn),在H.261、H.263的基礎(chǔ)上,通過(guò)對(duì)相關(guān)性能的改進(jìn)和完善,使其具備更多特性和更優(yōu)的性能。比如,H.264的編碼效率更高,傳輸?shù)囊曨l畫(huà)質(zhì)更優(yōu),對(duì)視頻傳輸過(guò)程中出現(xiàn)差錯(cuò)能夠較快恢復(fù)等等。其性能主要在于幾個(gè)方面的改進(jìn):①運(yùn)動(dòng)估計(jì)多樣化,新一代H.264具有高精度估計(jì)、多宏塊劃分模式估計(jì)、多幀參考估計(jì)等特點(diǎn),相比于傳統(tǒng)的視頻編碼標(biāo)準(zhǔn),其不僅為相同的宏塊提供了不同的編碼模式使其運(yùn)動(dòng)矢量的數(shù)量增加,而且提高了運(yùn)動(dòng)矢量位移的精度,此外,為了使編碼更優(yōu),提供了多個(gè)參考幀從中擇優(yōu)應(yīng)用。②DTC變換單位變小,傳統(tǒng)的DTC變換單位多是8×8塊,但H.264以4×4塊作為DTC的變換單位,其塊的減小,使得視頻在傳輸過(guò)程中更加精確。③幀內(nèi)預(yù)測(cè)更加準(zhǔn)確,在H.264中,塊內(nèi)提供了十幾種像素來(lái)供其進(jìn)行幀內(nèi)預(yù)測(cè),同時(shí)用已編碼像素作為參考值加權(quán)預(yù)測(cè),從而達(dá)到預(yù)測(cè)值精準(zhǔn)的目的。④VLC統(tǒng)一,H.264的編碼方式有兩種,一種為CABAC,即二進(jìn)制算數(shù)編碼,另一種為VLC、UVLC統(tǒng)一編碼,前者較后者要復(fù)雜,但效果更佳。H.264的性能決定其能夠保證視頻傳輸?shù)馁|(zhì)量,具有良好的適用性。
2.2 RTP協(xié)議簡(jiǎn)介
RTP協(xié)議,是目前應(yīng)用最廣的服務(wù)協(xié)議,尤其在視頻或數(shù)據(jù)量大的文件傳輸中獨(dú)占鰲頭,也是最為可靠的實(shí)時(shí)傳輸協(xié)議。RTP協(xié)議實(shí)際是由RTP和RTCP構(gòu)成,其中,RTP用于數(shù)據(jù),僅僅是為了使數(shù)據(jù)根據(jù)其提供的數(shù)據(jù)源標(biāo)志、負(fù)載指示等進(jìn)行實(shí)時(shí)傳輸,另外,在數(shù)據(jù)接收的過(guò)程中,可以利用RTP提供的資料對(duì)接收信息進(jìn)行排序或同步等。而RTCP用于控制。在大數(shù)據(jù)流或者單獨(dú)視頻下,都可進(jìn)行實(shí)時(shí)質(zhì)量監(jiān)控并及時(shí)傳送相關(guān)信息,RTCP反饋的信息能夠反映出視頻在傳輸過(guò)程中是否延時(shí)或者丟包等情況,RTCP就相當(dāng)于數(shù)據(jù)傳輸?shù)难劬Γ軌蚍答亴?shí)時(shí)的視頻傳輸是否順暢,并以此來(lái)判斷網(wǎng)絡(luò)的現(xiàn)狀。相比于其他傳輸協(xié)議,RTP協(xié)議在H.264視頻傳輸上更具優(yōu)勢(shì),相比于UDP協(xié)議,RTP更加可靠,UDP只是針對(duì)簡(jiǎn)單的報(bào)文傳輸,無(wú)法保證視頻傳輸?shù)耐暾院唾|(zhì)量。而TCP雖然是可靠的可連接的傳輸協(xié)議,但是其啟動(dòng)慢,此外,其自身的擁塞控制和超時(shí)重傳機(jī)制不適合視頻傳輸。
3 基于RTP的H.264視頻自適應(yīng)傳輸機(jī)制網(wǎng)絡(luò)端設(shè)計(jì)
基于RTP的H.264視頻自適應(yīng)傳輸機(jī)制系統(tǒng)的設(shè)計(jì)主要有三個(gè)方面:服務(wù)器、網(wǎng)絡(luò)傳輸、客戶(hù)端,下文主要從網(wǎng)絡(luò)端系統(tǒng)設(shè)計(jì)進(jìn)行探討。
3.1 擁塞控制算法
H.264視頻傳輸一般數(shù)據(jù)量較大,在傳輸?shù)倪^(guò)程中,容易出現(xiàn)擁堵情況,從而導(dǎo)致丟包、延時(shí)等現(xiàn)象發(fā)生。擁塞控制算法主要采用AIMD算法,即
3.4 結(jié)果分析
經(jīng)過(guò)實(shí)驗(yàn)證明,雖然改進(jìn)后的算法僅僅相對(duì)于AIMD算法稍微改進(jìn),但是其對(duì)于視頻傳輸具有重要作用,在不同的網(wǎng)絡(luò)狀況下,不僅降低丟包率,而且提高了視頻傳輸質(zhì)量。
4 結(jié)束語(yǔ)
視頻傳輸是時(shí)下互聯(lián)網(wǎng)的熱點(diǎn),而Internet由于自身的局限,對(duì)于復(fù)雜的網(wǎng)絡(luò)狀況無(wú)法保證視頻傳輸?shù)馁|(zhì)量,因此,探索新的傳輸方式來(lái)保證視頻傳輸質(zhì)量是當(dāng)下網(wǎng)絡(luò)研究的重點(diǎn),自適應(yīng)傳輸機(jī)制在RTP的H.264視頻雖然能夠在一定程度上解決視頻傳輸質(zhì)量問(wèn)題,但還存在許多不足,仍需不斷地探索并加以改進(jìn)。
參考文獻(xiàn)
[1]李校林,劉利權(quán),張杰.基于RTP的H.264視頻流實(shí)時(shí)打包傳輸?shù)难芯縖J].計(jì)算機(jī)科學(xué)與工程,2012,34(5):168-171.
[2]李瑞鋒.基于RTP的H.264視頻自適應(yīng)傳輸機(jī)制研究[D].長(zhǎng)安大學(xué),2011.
[3]盛先剛.基于RTP的H.264視頻傳輸系統(tǒng)研究[D].西安電子科技大學(xué),2006.
在運(yùn)用信息技術(shù)教學(xué)過(guò)程中,若只是一味地將書(shū)本知識(shí)制作成電子課件,不加以任何修飾地播放給學(xué)生,大部分學(xué)生會(huì)產(chǎn)生倦怠心理,從而無(wú)法領(lǐng)會(huì)信息技術(shù)教學(xué)的真正用意,對(duì)學(xué)習(xí)狀態(tài)以及學(xué)習(xí)積極性產(chǎn)生不利影響。基于此種情況,教學(xué)拓展被逐步引入高中信息技術(shù)教學(xué)中,這一教學(xué)活動(dòng)旨在通過(guò)信息技術(shù)教學(xué)與學(xué)生日常生活相結(jié)合的方式,幫助高中生建立科學(xué)的思維方法和探究方法,提高學(xué)生分析問(wèn)題和解決問(wèn)題的能力,最終實(shí)現(xiàn)其均衡而富有個(gè)性的發(fā)展。
1 教學(xué)拓展在高中信息技術(shù)教學(xué)中的應(yīng)用意義
教學(xué)拓展作為將高中信息技術(shù)教學(xué)與高中生日常生活緊密相連的有效工具,其意義表現(xiàn)在兩方面。[1]一方面,教學(xué)拓展過(guò)程中,教師可以通過(guò)創(chuàng)設(shè)輕松詼諧的教學(xué)環(huán)境,降低性格偏內(nèi)向的學(xué)生對(duì)發(fā)言的恐懼,在學(xué)生發(fā)言或回答問(wèn)題后,采取口頭或書(shū)面表?yè)P(yáng)的方式,增強(qiáng)學(xué)生學(xué)習(xí)的自信心,并且?guī)椭鷮W(xué)生獲得成功的體驗(yàn)。另一方面,教學(xué)拓展可以幫助教師利用學(xué)生的好奇心來(lái)提高學(xué)習(xí)興趣,只有學(xué)生對(duì)將信息技術(shù)運(yùn)用于學(xué)習(xí)中有探索精神并且對(duì)將所學(xué)知識(shí)運(yùn)用于實(shí)際生活有強(qiáng)烈渴望,才可能激發(fā)其創(chuàng)新潛能。教師在拓展教學(xué)中若能恰當(dāng)?shù)乩脤W(xué)生的好奇心來(lái)完成教學(xué)任務(wù),便可激發(fā)學(xué)生的學(xué)習(xí)欲望,對(duì)培養(yǎng)學(xué)生學(xué)習(xí)的自主性和創(chuàng)新性都可起到積極作用。[2]
2 教學(xué)拓展在高中信息技術(shù)教學(xué)應(yīng)用中的策略
教學(xué)拓展貫穿高中信息技術(shù)教學(xué)中的每個(gè)環(huán)節(jié),無(wú)論是課堂教學(xué)還是課后學(xué)生自學(xué)或教師輔導(dǎo),教學(xué)拓展都發(fā)揮著不可替代的作用。
2.1 展示學(xué)校官方網(wǎng)站及豐富網(wǎng)站內(nèi)容
當(dāng)前我國(guó)高中普遍擁有各自的官方網(wǎng)站,各科教師應(yīng)在所教學(xué)科第一課時(shí)將本學(xué)科官方網(wǎng)站告知學(xué)生并向?qū)W生說(shuō)明網(wǎng)站中所教學(xué)科的相關(guān)信息,使學(xué)生能夠在課堂教學(xué)期間在教師的指導(dǎo)下瀏覽學(xué)科信息,從而對(duì)所學(xué)課文有更深刻的了解。另外,學(xué)生可以結(jié)合自身經(jīng)歷或在生活中遇到的人和事,完善學(xué)校網(wǎng)站內(nèi)容,將學(xué)科信息中出現(xiàn)的不足之處改編成經(jīng)過(guò)查驗(yàn)證實(shí)的文字圖片資料或在缺漏處增添新的、真實(shí)的內(nèi)容,最大限度發(fā)掘?qū)W生自主學(xué)習(xí)能力。[3]
例如,某中學(xué)官方網(wǎng)站根據(jù)高中生學(xué)習(xí)需求將所有學(xué)科分為語(yǔ)文組、數(shù)學(xué)組、英語(yǔ)組等九大組別,每個(gè)組別中包含課時(shí)安排、課文內(nèi)容及資料和成績(jī)查詢(xún)等子類(lèi)別,高中生只需輸入學(xué)號(hào)及密碼即可進(jìn)行瀏覽、查詢(xún)和修改。尤其在進(jìn)行內(nèi)容修改時(shí),學(xué)生應(yīng)在教師的指導(dǎo)下運(yùn)用自身生活經(jīng)驗(yàn)展開(kāi)聯(lián)想,遇到問(wèn)題時(shí)應(yīng)積極思考,結(jié)合自身經(jīng)歷自主解決,逐步提高自我思考和自主學(xué)習(xí)的能力。
2.2 增加學(xué)校網(wǎng)站論壇管理員
學(xué)校官方網(wǎng)站中可設(shè)置學(xué)習(xí)論壇,為高中生提供網(wǎng)絡(luò)交流的平臺(tái)。學(xué)生可在論壇中自身遇到的疑難知識(shí)點(diǎn),與全校師生進(jìn)行探討;也可在論壇中自身學(xué)習(xí)心得和經(jīng)驗(yàn)教訓(xùn),供學(xué)生借鑒參考,并且為教師加深對(duì)學(xué)生的了解提供依據(jù)。如果論壇訪問(wèn)量達(dá)到一定數(shù)額,則需征召論壇管理員,各班選派的管理員應(yīng)實(shí)行輪換制,以保證更多的學(xué)生能夠參與其中。學(xué)校官網(wǎng)論壇一般會(huì)招收多名管理員,這就需要每位管理員各有分工、互相配合、共同完成論壇管理工作,這不僅有助于增強(qiáng)學(xué)生對(duì)所在班級(jí)學(xué)校的責(zé)任感,而且可以培養(yǎng)學(xué)生在生活中為人處世的能力。
2.3 利用校園網(wǎng)上傳學(xué)生作業(yè)
學(xué)校機(jī)房為了便于統(tǒng)一管理,一般都配有還原卡,因此,學(xué)生第二天無(wú)法查詢(xún)當(dāng)天儲(chǔ)存在電腦中的資料,這將不利于學(xué)生資料的保存。目前我國(guó)普遍使用Serv-U軟件于電腦服務(wù)器上設(shè)定文件傳輸協(xié)議,便于主機(jī)間共享文件,高中信息技術(shù)教學(xué)中可采用此種方法上傳學(xué)生資料至電腦。教師需注冊(cè)兩個(gè)賬號(hào),一個(gè)是權(quán)限限定為除文件保存外不能進(jìn)行復(fù)制、刪除的學(xué)生賬號(hào),另一個(gè)是擁有保存、復(fù)制和刪除文件功能的教師賬號(hào),此種方法有利于防止學(xué)生作弊。
教師在每一個(gè)學(xué)生的作品均上傳至文件傳輸協(xié)議服務(wù)器后,需對(duì)所教班級(jí)的學(xué)生作品做出優(yōu)劣評(píng)定。作品從傳送、送達(dá)文件傳輸協(xié)議服務(wù)器至教師評(píng)定整個(gè)過(guò)程中,學(xué)生都無(wú)法看到非本人作品文檔,即使傳送出現(xiàn)錯(cuò)誤也只有教師可以將其重新傳送。而當(dāng)教師評(píng)定結(jié)束后,可開(kāi)放學(xué)生賬號(hào)權(quán)限,學(xué)生可瀏覽其他學(xué)生作品文檔并與自身作品相比較,找出自身不足并加以改正。設(shè)置文件傳輸協(xié)議傳送學(xué)生作業(yè)的方式,一方面可以提高教師教學(xué)工作效率,另一方面也可以促進(jìn)學(xué)生間交互合作學(xué)習(xí),激發(fā)學(xué)生學(xué)習(xí)興趣,從而使學(xué)生的學(xué)習(xí)生活更加輕松。
2.4 建立班級(jí)微信群
課堂教學(xué)占據(jù)了高中生校園學(xué)習(xí)的大部分時(shí)間,在遇到疑難知識(shí)點(diǎn)時(shí),只有極少數(shù)學(xué)生可以抽出時(shí)間向教師提問(wèn)并獲得滿(mǎn)意解答,這將造成學(xué)生課堂上遺留的問(wèn)題越積越多,對(duì)學(xué)生有效掌握學(xué)科知識(shí)產(chǎn)生不利影響,最終導(dǎo)致學(xué)生學(xué)習(xí)積極性減弱甚至喪失。高中生生活中QQ、微信等聊天工具的使用愈加頻繁,在信息技術(shù)教學(xué)中,QQ等聊天工具除了方便溝通這一傳統(tǒng)功能外,更可以促進(jìn)學(xué)生間關(guān)于學(xué)習(xí)上疑難問(wèn)題的交流,以幫助學(xué)生共同進(jìn)步。
例如,某地一中學(xué)在信息技術(shù)教學(xué)中采用建立微信群的方式,具體來(lái)說(shuō)學(xué)生可以將課堂上積累的問(wèn)題以圖片或文字的形式上傳至班級(jí)微信群中,并集中在中餐或晚餐時(shí)間由各科目教師進(jìn)行講解。另外,為了監(jiān)督學(xué)生是否認(rèn)真學(xué)習(xí),教師可以采取隨機(jī)抽查的方式,讓學(xué)生上傳實(shí)時(shí)畫(huà)面至群里。微信群中的語(yǔ)言平實(shí)活潑,多源于網(wǎng)絡(luò)、源于生活,類(lèi)似“贊一個(gè)”等網(wǎng)絡(luò)用語(yǔ)的使用提升了性格內(nèi)向?qū)W生發(fā)言的膽量和積極性。
2.5 樹(shù)立信息技術(shù)教學(xué)榜樣
高中學(xué)習(xí)階段,部分學(xué)生通過(guò)科學(xué)合理利用信息技術(shù),在學(xué)業(yè)完成上取得了不俗的成績(jī)。另外,部分學(xué)生在學(xué)習(xí)文化知識(shí)之余,將所學(xué)知識(shí)運(yùn)用于日常生活中,讓課堂知識(shí)為日常生活服務(wù)。教師應(yīng)在信息技術(shù)教學(xué)過(guò)程中積極宣傳此類(lèi)將信息技術(shù)科學(xué)融入日常學(xué)習(xí)生活中的實(shí)例,并且宣傳實(shí)例的主人公應(yīng)是學(xué)生周?chē)煜さ耐瑢W(xué)和朋友,以達(dá)到在學(xué)生中產(chǎn)生共鳴、提高學(xué)生學(xué)習(xí)興趣的目的。
例如,高中化學(xué)實(shí)驗(yàn)中,由于化學(xué)試劑一般采用瓶裝,使用時(shí)一般會(huì)多次提取,這就造成試劑瓶?jī)?nèi)試劑逐漸減少而空氣不斷增多,導(dǎo)致試劑氧化變質(zhì)甚至失效。某地一高中生由醫(yī)院輸液這一生活現(xiàn)象引發(fā)聯(lián)想,結(jié)合所學(xué)化學(xué)知識(shí),思索出仿照吊瓶使用柔軟材料制作化學(xué)試劑瓶的想法,經(jīng)過(guò)網(wǎng)絡(luò)查閱相關(guān)化學(xué)資料和反復(fù)試驗(yàn),此高中生最終研制出可廣泛應(yīng)用于科研所和試驗(yàn)室的化學(xué)試劑儲(chǔ)取裝置并獲得國(guó)家發(fā)明專(zhuān)利。教師可將類(lèi)似事例通過(guò)學(xué)校官網(wǎng)或教育類(lèi)網(wǎng)站進(jìn)行宣傳,并向?qū)W生講授相關(guān)學(xué)科知識(shí),這不僅有利于激發(fā)學(xué)生的學(xué)習(xí)熱情,而且可以促使其積極思考,并提高學(xué)習(xí)效率。
3 結(jié)束語(yǔ)
關(guān)鍵詞:計(jì)算機(jī)網(wǎng)絡(luò);課程;知識(shí);系統(tǒng)化
計(jì)算機(jī)網(wǎng)絡(luò)課知識(shí)很多,而且錯(cuò)綜復(fù)雜,教材一般是將計(jì)算機(jī)網(wǎng)絡(luò)內(nèi)容按“塊”組織并展開(kāi)的,如計(jì)算機(jī)網(wǎng)絡(luò)概述、物理層、數(shù)據(jù)鏈路層、局域網(wǎng)、廣域網(wǎng)、網(wǎng)絡(luò)層、運(yùn)輸層、應(yīng)用層、網(wǎng)絡(luò)安全、網(wǎng)絡(luò)應(yīng)用等。同樣,授課一般也是依教材的內(nèi)容和次序進(jìn)行組織,一塊一塊內(nèi)容、一堂課一堂課講解,因此,學(xué)生積累的是點(diǎn),最多也就是面的知識(shí),而計(jì)算機(jī)網(wǎng)絡(luò)是一個(gè)系統(tǒng),學(xué)生僅僅掌握面的知識(shí)不是課程的目的,把面的知識(shí)變成立體的知識(shí)并形成系統(tǒng),知識(shí)才能活起來(lái)、才能有用。
目前,計(jì)算機(jī)網(wǎng)絡(luò)課程教材均沒(méi)有對(duì)計(jì)算機(jī)網(wǎng)絡(luò)知識(shí)進(jìn)行梳理、總結(jié)的內(nèi)容。在計(jì)算機(jī)網(wǎng)絡(luò)課程內(nèi)容介紹完成后,對(duì)計(jì)算機(jī)網(wǎng)絡(luò)課程內(nèi)容進(jìn)行梳理總結(jié)很重要。通過(guò)教學(xué)實(shí)踐,我們發(fā)現(xiàn)采用穿插、聯(lián)系和系統(tǒng)的方法能夠讓學(xué)生將學(xué)到的知識(shí)形成系統(tǒng)。
1構(gòu)建和配置網(wǎng)絡(luò)系統(tǒng)
1.1從簡(jiǎn)單網(wǎng)絡(luò)及其配置說(shuō)起
兩臺(tái)計(jì)算機(jī)通過(guò)雙絞線連接起來(lái),說(shuō)明雙絞線4根線的作用、水晶頭連線的做法、連通檢測(cè)工具,交叉線和直通線用法。兩臺(tái)主機(jī)配置IP地址、子網(wǎng)掩碼,用Ping檢查網(wǎng)絡(luò)是否連通,將文件夾作為共享資源。通過(guò)Ping命令的功能復(fù)習(xí)ICMP協(xié)議。
通過(guò)共享集線器或者交換機(jī)連接主機(jī)組成小的
局域網(wǎng)。結(jié)合本校網(wǎng)絡(luò)實(shí)驗(yàn)室設(shè)備,配置交換機(jī)的IP地址,配置VLAN,檢查VLAN配置是否正確。據(jù)此,介紹共享集線器工作原理、特點(diǎn)、工作的層、網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。介紹交換機(jī)工作原理、特點(diǎn)、工作的層,區(qū)分半雙工和全雙工工作方式,由交換機(jī)組成的VLAN工作原理、應(yīng)用場(chǎng)合。
在這個(gè)基礎(chǔ)上,系統(tǒng)介紹以太網(wǎng)的組成、以太網(wǎng)的擴(kuò)展(包括中繼器、網(wǎng)橋、集線器的級(jí)聯(lián))、高速以太網(wǎng)等。
通過(guò)路由器連接兩個(gè)局域網(wǎng),結(jié)合本校網(wǎng)絡(luò)實(shí)驗(yàn)室設(shè)備,配置路由器的IP地址、靜態(tài)路由表,主機(jī)IP地址、子網(wǎng)掩碼和網(wǎng)關(guān)。據(jù)此,介紹路由器的工作原理、路由表及其形成。進(jìn)一步通過(guò)2個(gè)路由器連接3個(gè)網(wǎng)絡(luò),其中中間是廣域網(wǎng),并以此作為一個(gè)小的自治系統(tǒng),配置路由器的內(nèi)部網(wǎng)關(guān)協(xié)議RIP。在這個(gè)基礎(chǔ)上,總結(jié)自治系統(tǒng)及其內(nèi)部網(wǎng)關(guān)協(xié)議IGP和外部網(wǎng)關(guān)協(xié)議EGP。
如果有可能,可以對(duì)幾個(gè)典型的網(wǎng)絡(luò)案例進(jìn)行分析[1]。
1.2從接入互聯(lián)網(wǎng)談起
通過(guò)本地IP地址和全局IP地址,引入服務(wù)器、NAT和VPN。分別介紹它們的工作原理、應(yīng)用場(chǎng)合、上網(wǎng)的特點(diǎn)。
通過(guò)家庭上網(wǎng),介紹ADSL工作原理、連接方法。介紹家庭無(wú)線路由器工作原理、連接方法、上網(wǎng)的特點(diǎn)。
介紹一個(gè)單位網(wǎng)絡(luò)的基本構(gòu)成,包括拓?fù)浣Y(jié)構(gòu)、傳輸介質(zhì)、設(shè)備配置、結(jié)構(gòu)化布線方案和接入因特網(wǎng)方法。拓?fù)浣Y(jié)構(gòu)主要突出星型結(jié)構(gòu),傳輸介質(zhì)主要突出雙絞線和光纖。以自己熟悉的當(dāng)前運(yùn)行的單位或者政府(例如區(qū))網(wǎng)絡(luò)為例進(jìn)行分析。通過(guò)碰撞域和信號(hào)不失真?zhèn)鬏斁嚯x解析采用傳輸介質(zhì)的最大長(zhǎng)度。
介紹工業(yè)現(xiàn)場(chǎng)典型網(wǎng)絡(luò)構(gòu)成、拓?fù)浣Y(jié)構(gòu)、設(shè)備配置。拓?fù)浣Y(jié)構(gòu)主要突出總線結(jié)構(gòu),同時(shí)介紹RS485和CAN總線等。設(shè)備包括PLC、工控機(jī)和嵌入式裝置。
介紹本校校園網(wǎng)的構(gòu)成(包括校內(nèi)無(wú)線網(wǎng))、本城市內(nèi)校園網(wǎng)的連接、如何連入中國(guó)教育與科研網(wǎng)[2]。
2把IP地址及其相關(guān)問(wèn)題聯(lián)系在一起
先提出下列問(wèn)題:“如果學(xué)生宿舍兩臺(tái)計(jì)算機(jī)通過(guò)集線器連在一起,如果IP地址分別配置成192.168.1.1和192.168.2.1,這兩臺(tái)計(jì)算機(jī)是否無(wú)法打交道?”學(xué)生當(dāng)然是能夠回答的。但如果提出“計(jì)算機(jī)為什么要同時(shí)采用IP地址和硬件地址?”這個(gè)問(wèn)題,有不少學(xué)生說(shuō)不到位。課程總結(jié)時(shí),通過(guò)第一個(gè)問(wèn)題,復(fù)習(xí)IP地址的分類(lèi)、子網(wǎng)掩碼、網(wǎng)絡(luò)號(hào)、主機(jī)號(hào)等。通過(guò)IP地址分類(lèi)的缺限,介紹子網(wǎng)和超網(wǎng)(CIDR)原理、計(jì)算方法及其與它們有關(guān)路由器查找路由算法的變化。通過(guò)IP地址存在的問(wèn)題,對(duì)IPV6主要特點(diǎn)作個(gè)介紹。
通過(guò)第二個(gè)問(wèn)題,介紹IP地址用于找到目的主機(jī)所在的網(wǎng)絡(luò),而在同一個(gè)網(wǎng)絡(luò)中數(shù)據(jù)采用的是數(shù)據(jù)鏈路層的幀傳輸,而幀采用是硬件地址(封裝在MAC 幀中稱(chēng)為MAC地址),通過(guò)ARP可以將目的主機(jī)的IP地址查到對(duì)應(yīng)的硬件地址。
關(guān)于計(jì)算機(jī)在廣域網(wǎng)中的地址,將最簡(jiǎn)單的層次結(jié)構(gòu)地址與EUI-48地址進(jìn)行對(duì)比,說(shuō)明它們的共同點(diǎn)和不同點(diǎn)。
在由IP地址得到網(wǎng)絡(luò)號(hào)和主機(jī)號(hào)基礎(chǔ)上,引入單播、廣播、多播。通過(guò)上面的介紹,單播就不需要更多說(shuō)明,主要是廣播和多播。關(guān)于廣播,說(shuō)明IP地址如何表達(dá)廣播地址,硬件地址如何表達(dá)廣播地址,通過(guò)ARP給廣播舉例。關(guān)于多播,介紹IP使用D類(lèi)地址支持多播,以太網(wǎng)多播地址表達(dá)方法以及它們的映射關(guān)系。關(guān)于多播其他內(nèi)容包括IGMP,因?yàn)閮?nèi)容多,應(yīng)該專(zhuān)門(mén)梳理。
在介紹硬件地址和IP地址的基礎(chǔ)上,引入域名和DNS,域名需要說(shuō)明域名樹(shù)型結(jié)構(gòu),DNS需要說(shuō)明它的作用、DNS服務(wù)器的分布、由域名查找對(duì)應(yīng)的IP地址的過(guò)程。從而形成了域名――IP地址――硬件地址系統(tǒng)知識(shí)鏈。
3為了提供更好的“服務(wù)”費(fèi)盡心血
3.1理解兩種“連接”服務(wù)
計(jì)算機(jī)網(wǎng)絡(luò)從不同層面提供面向連接可靠的服務(wù)和無(wú)連接不可靠的服務(wù),而且由此產(chǎn)生了很多相關(guān)問(wèn)題,學(xué)生不易理解,認(rèn)為交給目的主機(jī)的所有數(shù)據(jù)都應(yīng)該是正確的和完整的。為了進(jìn)一步理解這兩種服務(wù)的特點(diǎn),可以先大致介紹文件傳輸、IP電話等工作原理,讓學(xué)生明白,有些應(yīng)用到達(dá)目的主機(jī)的所有數(shù)據(jù)都必須是正確的和完整的,例如文件傳輸。有些應(yīng)用(例如IP電話)實(shí)時(shí)性比可靠性更重要,個(gè)別數(shù)據(jù)包丟失或者不正確并不影響它的使用。在這個(gè)基礎(chǔ)上進(jìn)行總結(jié),為了適應(yīng)不同應(yīng)用的需要,計(jì)算機(jī)網(wǎng)絡(luò)需要同時(shí)提供面向連接服務(wù)和無(wú)連接服務(wù)。然后,從運(yùn)輸層、網(wǎng)絡(luò)層和數(shù)據(jù)鏈路層分別展開(kāi)說(shuō)明。
UDP和TCP是TCP/IP體系運(yùn)輸層提供的無(wú)連接服務(wù)和面向連接服務(wù),在應(yīng)用層,DNS、RIP、DHCP、SNMP、IP電話、流式多媒體通信等都采用UDP服務(wù),而HTTP、FTP、SMTP、TELNET等都采用TCP服務(wù)。因?yàn)閁DP是無(wú)連接服務(wù),所以它報(bào)文格式首部比較簡(jiǎn)單。TCP是面向連接服務(wù),所以它報(bào)文格式首部非常復(fù)雜。TCP為了實(shí)現(xiàn)可靠數(shù)據(jù)傳輸,傳輸前需要建立連接,連接成功才能進(jìn)行數(shù)據(jù)傳輸,傳輸結(jié)束后需要釋放連接。為了可靠建立連接,需要3次握手。數(shù)據(jù)傳輸時(shí),通過(guò)“窗口”協(xié)調(diào)雙方的傳輸節(jié)奏,通過(guò)檢驗(yàn)和判斷接收到的數(shù)據(jù)是否正確,通過(guò)確認(rèn)報(bào)文通知發(fā)送方已經(jīng)接收到的數(shù)據(jù)情況,等等。傳輸結(jié)束,需要雙向釋放連接。通過(guò)上面UDP和TCP數(shù)據(jù)傳輸穿插和比較,把許多概念聯(lián)系起來(lái),區(qū)分開(kāi)來(lái)[3]。
TCP/IP體系的網(wǎng)際層提供的是無(wú)連接的IP服務(wù)。
在數(shù)據(jù)鏈路層,以前非常流行的連續(xù)的ARQ協(xié)議是面向連接的可靠的數(shù)據(jù)傳輸協(xié)議,所以,需要包含建立連接、數(shù)據(jù)傳輸、釋放連接過(guò)程,幀頭部包含序號(hào)字段,用于描述當(dāng)前傳輸?shù)膸木幪?hào)和接收方對(duì)收到的幀確認(rèn),用FCS字段表達(dá)數(shù)據(jù)檢驗(yàn),用確認(rèn)幀告訴發(fā)送方接收的幀是否正確。而當(dāng)前流行的PPP協(xié)議的幀格式中沒(méi)有序號(hào)字段,因?yàn)樗菬o(wú)連接的傳輸協(xié)議。同樣,以太網(wǎng)也是采用無(wú)連接傳輸協(xié)議,所以,以太網(wǎng)V2標(biāo)準(zhǔn)和IEEE的802.3標(biāo)準(zhǔn)的MAC幀格式都很簡(jiǎn)單。實(shí)際上,無(wú)連接的傳輸協(xié)議并不一定就是不可靠的數(shù)據(jù)傳輸,像以太網(wǎng)本身傳輸很少出錯(cuò),由于協(xié)議簡(jiǎn)單,所以網(wǎng)絡(luò)的傳輸效率非常高。
參考文獻(xiàn):
[1] 張衛(wèi),俞黎陽(yáng). 計(jì)算機(jī)網(wǎng)絡(luò)工程[M]. 2版. 北京:清華大學(xué)出版社,2009:284-289.
[2] 吳功宜,吳英. 計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)用技術(shù)教程[M]. 3版. 北京:清華大學(xué)出版社,2010:210-224.
[3] 謝希仁. 計(jì)算機(jī)網(wǎng)絡(luò) [M]. 5版. 北京:電子工業(yè)出版社,2008:1-306.
[4] 吳功宜,吳英. 計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)用技術(shù)教程題解與實(shí)驗(yàn)指導(dǎo)[M]. 3版. 北京:清華大學(xué)出版社,2009:17-37.
[5] 陳鳴,常強(qiáng)林,岳振軍. 計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)教程:從原理到實(shí)踐[M]. 北京:機(jī)械工業(yè)出版社,2007:1-417.
[6] 張?jiān)? 計(jì)算機(jī)網(wǎng)絡(luò) [M]. 3版. 北京:清華大學(xué)出版社,2009:233-270.
Interweave, Associate and Systematization:The Practice and Think about the Summary Course of Computer Network
ZHENG A-qi
(College of Computer Science &Technology, Nanjing Normal University, Nanjing 210097, China)