專利名稱:基于udt和tcp中轉(zhuǎn)實現(xiàn)nat穿越的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)地址轉(zhuǎn)換(Network Address Translator,NAT)技術(shù)領(lǐng)域,具體涉 及基于UDT打洞和TCP中轉(zhuǎn)實現(xiàn)NAT穿越的系統(tǒng)和方法。
背景技術(shù):
為了解決公網(wǎng)互聯(lián)網(wǎng)協(xié)議(IP,Internet Protocol)地址緊缺以及安全等問題,廣 域網(wǎng)上通信雙方的兩個主體常被網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT,NetworkAddressTranslatiun) /防火 墻設(shè)備或軟件隱藏,由處于同一 NAT設(shè)備后的多臺主機共享一個公網(wǎng)IP地址;一個私網(wǎng)內(nèi) 的主機通過NAT設(shè)備與公網(wǎng)的其他主機通信,通常都是由私網(wǎng)內(nèi)的主機主動發(fā)起連接,數(shù) 據(jù)包經(jīng)過網(wǎng)絡(luò)地址轉(zhuǎn)換后送給公網(wǎng)上的服務(wù)器。但是這種通信方式是不允許從公網(wǎng)上主動 向位于私網(wǎng)內(nèi)的主機主動發(fā)起連接的,這也就阻隔了用戶之間的直接通信。因此,到目前為止出現(xiàn)多種不同的解決方法,常用的穿越NAT的方法主要包括ALG 方式,MIDCOM方式、STUN方式、TURN方式、FullProxy方式、UDP打洞、TCP打洞等。其中基 于UDP協(xié)議的NAT穿越技術(shù)是目前運用得比較多的方法,其成功率比較高,但是由于UDP是 不可靠傳輸協(xié)議,在網(wǎng)絡(luò)環(huán)境比較差時,發(fā)生丟包的現(xiàn)象比較嚴重,無法保證傳輸?shù)馁|(zhì)量。 而基于TCP協(xié)議的NAT穿越技術(shù)雖然是面向連接的可靠傳輸協(xié)議,但是由于TCP需要三次 握手,實現(xiàn)比較復(fù)雜,而且穿透成功率比較低,只有百分之六十多。
發(fā)明內(nèi)容
本發(fā)明的首要目的在于克服現(xiàn)有技術(shù)的缺點與不足,提供一種基于UDT打洞和 TCP中轉(zhuǎn)實現(xiàn)NAT穿越的系統(tǒng)。本發(fā)明的另一目的是提供一種基于UDT打洞和TCP中轉(zhuǎn)實現(xiàn)NAT穿越的方法。本發(fā)明的首要目的通過下述技術(shù)方案實現(xiàn)基于UDT打洞和TCP中轉(zhuǎn)實現(xiàn)NAT穿 越的系統(tǒng),包括用于向NAT穿越服務(wù)器進行注冊,使用UDT進行打洞或TCP中轉(zhuǎn)實現(xiàn)NAT穿越的 終端;與終端交互的NAT穿越服務(wù)器,用于保存所述終端的注冊信息,協(xié)助終端進行UDT 打洞和TCP中轉(zhuǎn);以及與終端交互的索引服務(wù)器,用于為所述終端提供包含客戶節(jié)點ID的peer列 表fe息。本發(fā)明的另一目的通過下述技術(shù)方案實現(xiàn)步驟S10、客戶節(jié)點向NAT穿越服務(wù)器發(fā)送包括客戶節(jié)點ID和名稱的注冊請求,從 而在NAT穿越服務(wù)器上注冊,建立主連接;步驟S20、NAT穿越服務(wù)器通過步驟SlO中得到的客戶節(jié)點ID和名稱并保存,然后 向客戶節(jié)點返回注冊成功信息;步驟S30、客戶節(jié)點向索引服務(wù)器獲取peer列表,該列表中包含每個客戶節(jié)點的ID和名稱;步驟S40、使用UDT打洞進行NAT穿越;若成功,則跳到步驟S60,否則轉(zhuǎn)到下一步 驟;步驟S50、使用TCP中轉(zhuǎn)進行NAT穿越;步驟S60、數(shù)據(jù)傳輸。本發(fā)明相對于現(xiàn)有技術(shù)具有如下的優(yōu)點及效果1、簡單易行。2、保證百分之百的穿透率。3、數(shù)據(jù)傳輸可靠性高,因為UDT是基于UDP的面向連接的基于數(shù)據(jù)流的可靠的應(yīng) 用層傳輸協(xié)議,TCP也是面向連接的可靠傳輸協(xié)議。
圖1是本發(fā)明的基于UDT打洞和TCP中轉(zhuǎn)實現(xiàn)NAT穿越系統(tǒng)的結(jié)構(gòu)示意圖;圖2是本發(fā)明的基于UDT打洞和TCP中轉(zhuǎn)實現(xiàn)NAT穿越方法的流程圖。
具體實施例方式下面結(jié)合實施例及附圖對本發(fā)明作進一步詳細的描述,但本發(fā)明的實施方式不限 于此。實施例如圖1所示,本發(fā)明基于UDT打洞和TCP中轉(zhuǎn)實現(xiàn)NAT穿越的系統(tǒng),包括終端10, 以及分別與終端10相互連接的NAT穿越服務(wù)器20和索引服務(wù)器30。終端10用于向NAT 穿越服務(wù)器進行注冊,使用UDT進行打洞或TCP中轉(zhuǎn)實現(xiàn)NAT穿越。NAT穿越服務(wù)器20用 于保存所述終端10的注冊信息,協(xié)助終端進行UDT打洞和TCP中轉(zhuǎn)。索引服務(wù)器30用于 為終端10提供可連接的peer列表信息,當本地終端要和其他終端建立連接時,該本地終端 先向索引服務(wù)器獲取在線的終端列表,該列表中包含在線終端的ID和名稱。所述終端10包括TCP交互模塊101,用于終端與NAT穿越服務(wù)器建立TCP連接進 行交互;UDT打洞模塊102,用于除了當兩個終端處于都處于Symmetric NAT后或者一方處 于Symmetric NAT后而另一方處于Port Restricted Cone NAT后的情況外,建立UDT連接 進行數(shù)據(jù)傳輸。TCP中轉(zhuǎn)模塊103,用于本地終端和對方終端都處于Symmetric NAT后或者 一方處于Symmetric NAT后而另一方處于Port Restricted Cone NAT后,建立TCP連接進 行數(shù)據(jù)傳輸。下面詳細敘述基于UDT打洞和TCP中轉(zhuǎn)實現(xiàn)NAT穿越系統(tǒng)的工作過程所述終端10進入TCP交互模塊,與NAT穿越服務(wù)器建立TCP連接后,發(fā)送包括終 端ID和名稱的注冊請求給NAT穿越服務(wù)器,NAT穿越服務(wù)器解析該數(shù)據(jù)報文中的終端ID和 名稱,并將這兩項(終端ID,終端名稱)信息保存。NAT穿越服務(wù)器20保存完成后,向終端10返回注冊成功消息。終端10向索引服 務(wù)器30獲取peer列表,其中包括每個peer的ID和名稱。終端10收到peer列表之后,得到對方終端的ID和名稱,并進入UDT打洞模塊102。
在UDT打洞模塊102中,終端10創(chuàng)建一個UDT套接字向NAT穿越服務(wù)器的協(xié)助打洞模塊202發(fā)送打洞請求報文A,請求與對方終端進行UDT打洞,報文A的內(nèi)容包含本地終 端ID和對方終端ID ;NAT穿越服務(wù)器的協(xié)助打洞模塊202收到報文A后,通過網(wǎng)絡(luò)接口得到發(fā)起NAT穿 越請求方的外部IP和端口號,接著解析報文A得到對方終端的ID,通過對方終端ID查找到 對方終端與NAT穿越服務(wù)器20的主連接,并通過該連接向?qū)Ψ浇K端發(fā)送打洞命令報文B,報 文B包含發(fā)起NAT穿越請求方客戶節(jié)點的節(jié)點ID、外部IP地址和端口號;對方終端收到報文B后,解析得到發(fā)起NAT穿越請求的終端的ID、外部IP地址和 端口號,創(chuàng)建一個UDT套接字向NAT穿越服務(wù)器的協(xié)助打洞模塊202發(fā)送打洞就緒報文C, 該報文包括兩個終端各自的ID、發(fā)起NAT穿越請求方的外部IP和端口號;NAT穿越服務(wù)器協(xié)助打洞模塊202收到報文C后,通過網(wǎng)絡(luò)接口得到對方終端的外 部IP和端口號,解析得到雙方節(jié)點的ID、發(fā)起NAT穿越請求方的外部IP和端口號,并向兩 個終端分別發(fā)送開啟打洞報文D,該報文包括對方的ID、外部IP和端口號;本地終端和對方終端收到報文D后,解析該報文得到對方的外部IP和端口號,分 別再創(chuàng)建一個UDT套接字,并綁定到與NAT穿越服務(wù)器的協(xié)助打洞模塊交互的UDT套接字 上,接著設(shè)置打洞模式,向?qū)Ψ浇K端的外部IP地址和端口號進行連接,成功創(chuàng)建連接之后, 則進行數(shù)據(jù)傳輸,否則進入TCP中轉(zhuǎn)模塊103。假設(shè)終端a要和終端b通信,則a創(chuàng)建一個UDT套接字向NAT穿越服務(wù)器的協(xié)助 打洞模塊發(fā)送打洞請求消息,請求與對方終端進行UDT打洞,消息中包括a和b在NAT穿越 服務(wù)器上注冊的ID。NAT穿越服務(wù)器收到后,通過網(wǎng)絡(luò)接口得到a的外部IP和端口號,假 設(shè)a的IP地址為218. 192. 170. 22,端口為7500,接著解析該打洞請求得到a和b的ID,根 據(jù)b的ID查找到b與NAT穿越服務(wù)器交互的主連接,并通過該連接向b發(fā)送打洞命令消息, 該消息包含a的ID、外部IP地址和端口號;b收到打洞命令消息后,解析得到a的ID、外部 IP地址和端口號,創(chuàng)建一個UDT套接字向NAT穿越服務(wù)器的協(xié)助打洞模塊發(fā)送打洞就緒消 息,該消息中包括雙方ID、a的外部IP和端口號;NAT穿越服務(wù)器收到b發(fā)來的打洞就緒消 息后,通過網(wǎng)絡(luò)接口得到b的外部IP和端口號,假設(shè)b的IP地址為218. 192. 168. 2,端口 為7800,解析得到雙方的ID、a的外部IP和端口號,并分別向a和b發(fā)送開啟打洞消息,該 報文包括對方終端的ID、外部IP和端口號;a和b收到后,分別再創(chuàng)建一個UDT套接字,并 調(diào)用bind ()函數(shù)綁定到各自與NAT服務(wù)器的協(xié)助打洞模塊交互的UDT套接字上,接著調(diào)用 setsocketopt ()函數(shù)設(shè)置打洞模式UDT_RENDEZVOUS,然后調(diào)用connect ()向NAT服務(wù)器所 指定的開啟打洞消息中的對方IP地址和端口號進行連接。若其中一方的connect ()函數(shù) 成功返回,則表示打洞成功,雙方均可調(diào)用recvO或sendO函數(shù)進行數(shù)據(jù)的收發(fā),實現(xiàn)數(shù) 據(jù)的可靠傳輸。在TCP中轉(zhuǎn)模塊103中,終端10通過與NAT穿越服務(wù)器交互的主連接向NAT穿越 服務(wù)器發(fā)送TCP中轉(zhuǎn)請求消息,該消息包含本地終端ID和對方終端ID ;NAT穿越服務(wù)器的TCP交互模塊201收到報文E后,解析得到本地終端的ID和對 方終端的ID,接著創(chuàng)建一個TCP中轉(zhuǎn)模塊,并通過本地終端和對方終端與NAT穿越服務(wù)器交 互的主連接,分別向本地終端和對方終端發(fā)送開啟TCP中轉(zhuǎn)消息,該消息包含本地終端ID、 對方終端ID和NAT穿越服務(wù)器上的TCP中轉(zhuǎn)模塊的端口號;本地終端和對方終端收到開啟TCP中轉(zhuǎn)報文F后,解析該報文得到NAT穿越服務(wù)器的TCP中轉(zhuǎn)模塊的端口號,分別創(chuàng)建一個TCP套接字,并與NAT穿越服務(wù)的該端口建立 TCP連接,進行數(shù)據(jù)傳輸。如圖2所示,本發(fā)明基于UDT打洞和TCP中轉(zhuǎn)實現(xiàn)NAT穿越的方法,具體包括如下 步驟步驟S10、客戶節(jié)點向NAT穿越服務(wù)器發(fā)送包括客戶節(jié)點ID和名稱的注冊請求,從 而在NAT穿越服務(wù)器上注冊,建立主連接。NAT穿越服務(wù)器主要用來登記用戶的注冊信息, 協(xié)助終端進行UDT打洞和TCP中轉(zhuǎn)。步驟S20、NAT穿越服務(wù)器通過步驟SlO中得到的客戶節(jié)點ID和名稱并保存,然后 向客戶節(jié)點返回注冊成功信息;步驟S30、客戶節(jié)點向索引服務(wù)器獲取peer列表,該列表中包含每個客戶節(jié)點的 ID和名稱;步驟S40、使用UDT打洞進行NAT穿越;若成功,則跳到步驟S60,否則轉(zhuǎn)到下一步 驟;本步驟S40中,使用UDT進行NAT穿越,具體包括如下步驟步驟401、本地客戶節(jié)點創(chuàng)建一個UDT套接字向NAT穿越服務(wù)器的協(xié)助打洞模塊發(fā) 送打洞請求報文A,請求與對方客戶節(jié)點進行UDT打洞,報文A的內(nèi)容包含本地客戶節(jié)點ID 和對方客戶節(jié)點ID ;步驟402、NAT穿越服務(wù)器收到報文A后,通過網(wǎng)絡(luò)接口得到發(fā)起NAT穿越請求方 的外部IP和端口號,接著解析報文A得到對方節(jié)點的ID,通過對方客戶節(jié)點ID查找到對方 節(jié)點與NAT穿越服務(wù)器的主連接,并通過該連接向?qū)Ψ焦?jié)點發(fā)送打洞命令報文B,報文B包 含發(fā)起NAT穿越請求方客戶節(jié)點的節(jié)點ID、外部IP地址和端口號;步驟403、對方節(jié)點收到報文B后,解析得到發(fā)起NAT穿越請求的客戶節(jié)點的ID、 外部IP地址和端口號,創(chuàng)建一個UDT套接字向NAT穿越服務(wù)器的協(xié)助打洞模塊發(fā)送打洞就 緒報文C,該報文包括雙方節(jié)點ID、發(fā)起NAT穿越請求方的外部IP和端口號;步驟404、NAT穿越服務(wù)器收到報文C后,通過網(wǎng)絡(luò)接口得到對方節(jié)點的外部IP和 端口號,解析得到雙方節(jié)點的ID、發(fā)起NAT穿越請求方的外部IP和端口號,并分別向雙方發(fā) 送開啟打洞報文D,該報文包括對方節(jié)點的ID、外部IP和端口號;步驟405、本地客戶節(jié)點和對方客戶節(jié)點收到報文D后,解析該報文得到對方的外 部IP和端口號,分別再創(chuàng)建一個UDT套接字,并綁定到與NAT穿越服務(wù)器的協(xié)助打洞模塊 交互的UDT套接字上,接著設(shè)置打洞模式,向?qū)Ψ娇蛻艄?jié)點的外部IP地址和端口號進行連 接,成功創(chuàng)建連接之后,跳轉(zhuǎn)到步驟S60進行數(shù)據(jù)傳輸,否則轉(zhuǎn)到步驟S50。其中打洞模式是 通過調(diào)用setsocketopt函數(shù)設(shè)置UDT_RENDEZVOUS模式來實現(xiàn)。步驟S50、使用TCP中轉(zhuǎn)進行NAT穿越;本步驟S50中,使用TCP中轉(zhuǎn)進行NAT穿越,具體包括如下步驟步驟501、本地客戶節(jié)點通過與NAT穿越服務(wù)器交互的主連接向NAT穿越服務(wù)器發(fā) 送TCP中轉(zhuǎn)請求E,報文E的內(nèi)容包含本地客戶節(jié)點ID和對方客戶節(jié)點ID ;步驟502、NAT穿越服務(wù)器收到報文E后,解析得到本地客戶節(jié)點ID和對方客戶節(jié) 點ID,接著創(chuàng)建一個TCP中轉(zhuǎn)模塊,并通過客戶端節(jié)點和對方節(jié)點與NAT穿越服務(wù)器交互的 主連接,分別向客戶端節(jié)點和對方節(jié)點發(fā)送開啟TCP中轉(zhuǎn)報文F,該報文包含雙方節(jié)點ID、
7NAT穿越服務(wù)器上的TCP中轉(zhuǎn)模塊的端口號;步驟503、客戶端節(jié)點和對方節(jié)點收到開啟TCP中轉(zhuǎn)報文F后,解析該報文得到 NAT穿越服務(wù)器的TCP中轉(zhuǎn)模塊的端口號,分別創(chuàng)建一個TCP套接字,并與NAT穿越服務(wù)的 該端口建立TCP連接,轉(zhuǎn)到步驟S60進行數(shù)據(jù)傳輸;步驟S60、數(shù)據(jù)傳輸。上述實施例為本發(fā)明較佳的實施方式,但本發(fā)明的實施方式并不受上述實施例的 限制,其他的任何未背離本發(fā)明的精神實質(zhì)與原理下所作的改變、修飾、替代、組合、簡化, 均應(yīng)為等效的置換方式,都包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
基于UDT打洞和TCP中轉(zhuǎn)實現(xiàn)NAT穿越的系統(tǒng),其特征在于包括用于向NAT穿越服務(wù)器進行注冊,使用UDT進行打洞或TCP中轉(zhuǎn)實現(xiàn)NAT穿越的終端;與終端交互的NAT穿越服務(wù)器,用于保存所述終端的注冊信息,協(xié)助終端進行UDT打洞和TCP中轉(zhuǎn);以及與終端交互的索引服務(wù)器,用于為所述終端提供包含在線終端ID的peer列表信息。
2.根據(jù)權(quán)利要求1所述的基于UDT打洞和TCP中轉(zhuǎn)實現(xiàn)NAT穿越的系統(tǒng),其特征在于 所述終端包括UDT打洞模塊,用于除了當兩個終端處于都處于Symmetric NAT后或者一方處于 SymmetricNAT后而另一方處于Port Restricted Cone NAT后的情況外,建立UDT連接進行 數(shù)據(jù)傳輸。TCP中轉(zhuǎn)模塊,用于本地終端和對方終端都處于Symmetric NAT后或者一方處于 SymmetricNAT后而另一方處于Port Restricted Cone NAT后,建立TCP連接進行數(shù)據(jù)傳輸。
3.基于UDT打洞和TCP中轉(zhuǎn)實現(xiàn)NAT穿越的方法,其特征在于包括以下步驟步驟S10、客戶節(jié)點向NAT穿越服務(wù)器發(fā)送包括客戶節(jié)點ID和名稱的注冊請求,從而在 NAT穿越服務(wù)器上注冊,建立主連接;步驟S20、NAT穿越服務(wù)器通過步驟SlO中得到的客戶節(jié)點ID和名稱并保存,然后向客 戶節(jié)點返回注冊成功信息;步驟S30、客戶節(jié)點向索引服務(wù)器獲取peer列表,該列表中包含每個客戶節(jié)點的ID和 名稱;步驟S40、使用UDT打洞進行NAT穿越;若成功,則跳到步驟S60,否則轉(zhuǎn)到下一步驟; 步驟S50、使用TCP中轉(zhuǎn)進行NAT穿越; 步驟S60、數(shù)據(jù)傳輸。
4.根據(jù)權(quán)利要求3所述的基于UDT打洞和TCP中轉(zhuǎn)實現(xiàn)NAT穿越的方法,其特征在于 所述步驟S40包括步驟401、本地客戶節(jié)點創(chuàng)建一個UDT套接字向NAT穿越服務(wù)器的協(xié)助打洞模塊發(fā)送打 洞請求報文A,請求與對方客戶節(jié)點進行UDT打洞,報文A的內(nèi)容包含本地客戶節(jié)點ID和對 方客戶節(jié)點ID ;步驟402、NAT穿越服務(wù)器收到報文A后,通過網(wǎng)絡(luò)接口得到發(fā)起NAT穿越請求方的外 部IP和端口號,接著解析報文A得到對方節(jié)點的ID,通過對方客戶節(jié)點ID查找到對方節(jié)點 與NAT穿越服務(wù)器的主連接,并通過該連接向?qū)Ψ焦?jié)點發(fā)送打洞命令報文B,報文B包含發(fā) 起NAT穿越請求方客戶節(jié)點的節(jié)點ID、外部IP地址和端口號;步驟403、對方節(jié)點收到報文B后,解析得到發(fā)起NAT穿越請求的客戶節(jié)點的ID、外部 IP地址和端口號,創(chuàng)建一個UDT套接字向NAT穿越服務(wù)器的協(xié)助打洞模塊發(fā)送打洞就緒報 文C,該報文包括雙方節(jié)點ID、發(fā)起NAT穿越請求方的外部IP和端口號;步驟404、NAT穿越服務(wù)器收到報文C后,通過網(wǎng)絡(luò)接口得到對方節(jié)點的外部IP和端口 號,解析得到雙方節(jié)點的ID、發(fā)起NAT穿越請求方的外部IP和端口號,并分別向雙方發(fā)送開 啟打洞報文D,該報文包括對方節(jié)點的ID、外部IP和端口號;步驟405、本地客戶節(jié)點和對方客戶節(jié)點收到報文D后,解析該報文得到對方的外部IP 和端口號,分別再創(chuàng)建一個UDT套接字,并綁定到與NAT穿越服務(wù)器的協(xié)助打洞模塊交互的 UDT套接字上,接著設(shè)置打洞模式,向?qū)Ψ娇蛻艄?jié)點的外部IP地址和端口號進行連接,成功 創(chuàng)建連接之后,跳轉(zhuǎn)到步驟S60進行數(shù)據(jù)傳輸,否則轉(zhuǎn)到步驟S50。
5.根據(jù)權(quán)利要求3所述的基于UDT打洞和TCP中轉(zhuǎn)實現(xiàn)NAT穿越的方法,其特征在于 所述步驟S50包括步驟501、本地客戶節(jié)點通過與NAT穿越服務(wù)器交互的主連接向NAT穿越服務(wù)器發(fā)送 TCP中轉(zhuǎn)請求E,報文E的內(nèi)容包含本地客戶節(jié)點ID和對方客戶節(jié)點ID ;步驟502、NAT穿越服務(wù)器收到報文E后,解析得到本地客戶節(jié)點ID和對方客戶節(jié)點 ID,接著創(chuàng)建一個TCP中轉(zhuǎn)模塊,并通過客戶端節(jié)點和對方節(jié)點與NAT穿越服務(wù)器交互的主 連接,分別向客戶端節(jié)點和對方節(jié)點發(fā)送開啟TCP中轉(zhuǎn)報文F,該報文包含雙方節(jié)點ID、NAT 穿越服務(wù)器上的TCP中轉(zhuǎn)模塊的端口號;步驟503、客戶端節(jié)點和對方節(jié)點收到開啟TCP中轉(zhuǎn)報文F后,解析該報文得到NAT穿 越服務(wù)器的TCP中轉(zhuǎn)模塊的端口號,分別創(chuàng)建一個TCP套接字,并與NAT穿越服務(wù)的該端口 建立TCP連接,轉(zhuǎn)到步驟S60進行數(shù)據(jù)傳輸。
全文摘要
本發(fā)明涉及基于UDT打洞和TCP中轉(zhuǎn)實現(xiàn)NAT穿越的系統(tǒng)和方法,其系統(tǒng)包括用于向NAT穿越服務(wù)器進行注冊,使用UDT進行打洞或TCP中轉(zhuǎn)實現(xiàn)NAT穿越的終端;與終端交互的NAT穿越服務(wù)器,用于保存所述終端的注冊信息,協(xié)助終端進行UDT打洞和TCP中轉(zhuǎn);以及與終端交互的索引服務(wù)器,用于為所述終端提供包含在線終端工D的peer列表信息。本發(fā)明簡單易行,穿透成功率高,數(shù)據(jù)傳輸可靠性高。
文檔編號H04L29/12GK101883056SQ201010237088
公開日2010年11月10日 申請日期2010年7月23日 優(yōu)先權(quán)日2010年7月23日
發(fā)明者伍明彰, 吳宗澤, 吳潤凱, 林光華, 謝勝利 申請人:華南理工大學(xué)