麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

一種用于鏈路聚合鏈接條件下的文件傳輸方法與流程

文檔序號:12494431閱讀:761來源:國知局
一種用于鏈路聚合鏈接條件下的文件傳輸方法與流程

本發明屬于通信領域,具體涉及數字化信息系統中基于對象管理組織(Object Management Group,OMG)組織提出的數據分發服務(Date Distribution Service,DDS)標準實現的“請求-響應”式數據通信方式。



背景技術:

TFTP(Trivial File Transfer Protocol,RFC1350)是一個傳輸文件的簡單協議,通常使用UDP協議而實現。其單端口傳輸,對每一數據塊一ACK的傳輸方式能夠確保數據有序到達。而在鏈路聚合鏈接條件下,其協議不能有效使用所有鏈路的帶寬,限制了傳輸效率。



技術實現要素:

本發明的發明目的是:

為了解決背景中所存在的技術問題,本發明提出了一種用于鏈路聚合鏈接條件下的文件傳輸方法。在TFTP的基礎上,通過對客戶端使用多個端口并設立發送窗口,達到多鏈路的有效使用,提高了鏈路聚合鏈接條件下的傳輸效率。

本發明的技術解決方案是:

一種用于鏈路聚合鏈接條件下的文件傳輸方法,包括:

數據上傳方法和數據下載方法;

其中,數據上傳方法包括:

步驟1、客戶端從n個端口中隨機選擇一端口向客戶端發送寫請求,請求參數中附帶客戶端所有n個傳輸端口信息;

步驟2、服務端返回ACK給客戶端,ACK編號為0;

步驟3、客戶端n個端口,同時隨機發送滑動窗口內的數據塊,所述滑動窗口大小為z;

步驟4、服務端收到數據塊后,根據數據緩存內容,生成返回的ACK的編號m并返回ACK,所述m表示m及其之前的數據塊已全部接收成功;

步驟5、客戶端接到編號為m的ACK之后,將窗口向前滑動到m+1,n個端口繼續并行發送窗口中的數據,此時發送的數據塊為m+1到m+z;

步驟6、重復上述發送步驟,直到ACK編號到達最后一個數據塊位置,所述最后一個數據塊為不滿TFTP塊大小的數據塊,完成傳輸;

數據下載方法包括:

步驟7、客戶端從n個端口中隨機選擇一端口向客戶端發送讀請求,請求參數中附帶客戶端所有n個傳輸端口信息;

步驟8、服務端向客戶端n個端口,分別隨機發送滑動窗口內的數據塊,所述滑動窗口大小為z;

步驟9、客戶端收到數據塊后,根據數據緩存內容,生成返回的ACK的編號m并返回ACK,所述m表示m及其之前的數據塊已全部接收成功;

步驟10、服務端接到編號為m的ACK之后,將窗口向前滑動到m+1,繼續向客戶端n個端口隨機發送窗口中的數據,此時發送的數據塊為m+1到m+z;

步驟11、重復上述發送步驟,直到ACK編號到達最后一個數據塊位置,所述最后一個數據塊為不滿TFTP塊大小的數據塊,完成傳輸。

本發明具有的優點效果:

本發明在TFTP文件傳輸協議的基礎上,根據鏈路聚合鏈接條件下的特點,使用多端口發送及發送窗口,達到了多鏈路的充分利用,提高了鏈路聚合鏈接條件下的傳輸效率;并且當某一路斷開時,可以自動將負載分配到其他正常鏈路上,實現了動態負載均衡。

附圖說明

圖1是本發明發送窗口的示意圖:n,n+1及以前塊數據已發送完畢且已收到ACK;n+2,n+3,n+4塊數據在發送窗口中正在發送,等待收到ACK后滑動窗口;n+5,n+6,n+7,n+8及以后數據塊還未發送;

圖2是本發明多端口接收/發送數據鏈路圖,客戶端多端口分配到不同的鏈路上,從而實現多鏈路的充分利用。

具體實施方式

如圖1、2所示,一種用于鏈路聚合鏈接條件下的文件傳輸方法,包括:

數據上傳方法和數據下載方法;

其中,數據上傳方法包括:

步驟1、客戶端從n個端口中隨機選擇一端口向客戶端發送寫請求,請求參數中附帶客戶端所有n個傳輸端口信息;

步驟2、服務端返回ACK給客戶端,ACK編號為0;

步驟3、客戶端n個端口,同時隨機發送滑動窗口內的數據塊,所述滑動窗口大小為z;

步驟4、服務端收到數據塊后,根據數據緩存內容,生成返回的ACK的編號m并返回ACK,所述m表示m及其之前的數據塊已全部接收成功;

步驟5、客戶端接到編號為m的ACK之后,將窗口向前滑動到m+1,n個端口繼續并行發送窗口中的數據,此時發送的數據塊為m+1到m+z;

步驟6、重復上述發送步驟,直到ACK編號到達最后一個數據塊位置,所述最后一個數據塊為不滿TFTP塊大小的數據塊,完成傳輸;

數據下載方法包括:

步驟7、客戶端從n個端口中隨機選擇一端口向客戶端發送讀請求,請求參數中附帶客戶端所有n個傳輸端口信息;

步驟8、服務端向客戶端n個端口,分別隨機發送滑動窗口內的數據塊,所述滑動窗口大小為z;

步驟9、客戶端收到數據塊后,根據數據緩存內容,生成返回的ACK的編號m并返回ACK,所述m表示m及其之前的數據塊已全部接收成功;

步驟10、服務端接到編號為m的ACK之后,將窗口向前滑動到m+1,繼續向客戶端n個端口隨機發送窗口中的數據,此時發送的數據塊為m+1到m+z;

步驟11、重復上述發送步驟,直到ACK編號到達最后一個數據塊位置,所述最后一個數據塊為不滿TFTP塊大小的數據塊,完成傳輸。

當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 玉门市| 龙海市| 谷城县| 嘉黎县| 大安市| 宁夏| 吉首市| 醴陵市| 习水县| 临江市| 平南县| 昌宁县| 竹北市| 乐平市| 霍州市| 丹巴县| 赫章县| 永春县| 盘山县| 醴陵市| 神农架林区| 郧西县| 青岛市| 涿鹿县| 松滋市| 韶关市| 仁布县| 嘉定区| 满城县| 武城县| 衡山县| 洛隆县| 延寿县| 桃源县| 定西市| 西吉县| 齐河县| 泗水县| 德令哈市| 镇平县| 淳安县|