決定最大分段大小值方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及無線通信網(wǎng)絡(luò),且尤其涉及在一無線通信系統(tǒng)中決定最大分段大小(Maximum Segment Size, MSS)值的方法。
【背景技術(shù)】
[0002]在第三代合作伙伴計劃(3rdGenerat1n Partnership Project,3GPP)所說明的第三代(Third generat1n, 3G)和第四代(fourth generat1n, 4G)無線網(wǎng)絡(luò)包括在不同應(yīng)用服務(wù)(例如,數(shù)據(jù)服務(wù)、IP語音(VoIP)內(nèi)容、視頻內(nèi)容等服務(wù))中的無線存取網(wǎng)絡(luò)。傳輸控制協(xié)定(Transmiss1n Control Protocol,TCP)定義傳輸在網(wǎng)絡(luò)中的數(shù)據(jù)封裝大小限制。最大傳輸單兀(Maximum Transmiss1n Unit, MTU)定義封裝可傳輸?shù)淖畲蟪叽?。TCP最大分段大小(Maximum Segment Size, MSS)定義在一封裝中數(shù)據(jù)位元的最大值。
[0003]在一般情況下,位于終端的用戶端并不知道在TCP路徑中網(wǎng)絡(luò)或一網(wǎng)絡(luò)分段可容納的MTU及MSS值,因此,使用系統(tǒng)的用戶端選擇一預(yù)設(shè)值作為MTU值。然而,此預(yù)設(shè)值可能無法使封裝通過無線存取網(wǎng)絡(luò)。當一數(shù)據(jù)封裝過大時(例如,數(shù)據(jù)封裝超過MTU和/或MSS大小)時,網(wǎng)絡(luò)裝置可能因數(shù)據(jù)封裝超過上述預(yù)設(shè)值而丟棄。
[0004]因此,需要一決定最大分段大小值的方法,以解決數(shù)據(jù)封裝超過MTU和/或MSS大小而丟棄封裝的問題。
【發(fā)明內(nèi)容】
[0005]為了克服現(xiàn)有技術(shù)的缺陷,本發(fā)明提出一種決定最大分段大小(Maximum SegmentSize, MSS)值的方法,用于一存取點中,上述方法包括:檢測上述存取點至至少一下一裝置間的一第一 MSS值;將上述存取點建立的至少一傳輸控制協(xié)定(Transmiss1n ControlProtocol, TCP)會話中一 TCP MSS值設(shè)定為一第二 MSS值;比較上述第一 MSS值與上述第二MSS值,并選出其中的一最小值作為一最大MSS值;以及記錄上述存取點至上述下一裝置間的所有MSS值與上述最大MSS值至一裝置MSS表格中。
[0006]本發(fā)明提出一種決定最大分段大小(Maximum Segment Size, MSS)值的方法,用于一無線通信系統(tǒng)中,上述方法包括下列步驟:由一存取點檢測上述存取點至至少一下一裝置間的一第一 MSS值;通過上述存取點將上述存取點建立的至少一傳輸控制協(xié)定(Transmiss1n Control Protocol, TCP)會話中一 TCP MSS 值設(shè)定為一第二 MSS 值;通過上述存取點比較上述第一MSS值與上述第二MSS值,并選出其中的一最小值作為一最大MSS值;以及通過上述存取點記錄上述存取點至上述下一裝置間的所有MSS值與上述最大MSS值至一裝置MSS表格中。
[0007]綜上所述,通過本發(fā)明的決定最大分段大小值的方法,通過存取點自動調(diào)整并更新TCP SYN/TCP SYN-ACK信息所攜帶的MSS值。因此可避免MSS設(shè)定過低而造成效率不彰的情形,也避免MSS值設(shè)定不當造成的傳輸錯誤。
[0008]為使本發(fā)明的上述和其他目的、特征和優(yōu)點能更明顯易懂,下文特舉出較佳實施例,并配合附圖,作詳細說明如下。
【附圖說明】
[0009]圖1是顯示根據(jù)本發(fā)明一實施例所述的無線通信網(wǎng)絡(luò)系統(tǒng)的示意圖。
[0010]圖2是以另一方式表示根據(jù)本發(fā)明一實施例所述的通信裝置的簡化功能方框圖。
[0011]圖3是根據(jù)本發(fā)明一實施例中表示圖2中執(zhí)行程序碼的簡化功能方框圖。
[0012]圖4是顯示根據(jù)本發(fā)明一實施例所述的決定最大分段大小值的方法流程圖。
[0013]圖5是顯示根據(jù)本發(fā)明一實施例所述的存取點在用戶端及遠端裝置間決定最大分段大小值的信息流程圖。
[0014]其中,附圖標記說明如下:
[0015]100?無線通信網(wǎng)絡(luò)系統(tǒng);
[0016]110?第一用戶端;
[0017]112?第二用戶端;
[0018]120?第一遠端裝置;
[0019]122?第二遠端裝置;
[0020]130?存取點;
[0021]140 ?網(wǎng)絡(luò);
[0022]200?通信裝置;
[0023]202?輸入裝置;
[0024]204?輸出裝置;
[0025]206?控制電路;
[0026]208?中央處理器;
[0027]210?存儲器;
[0028]212?執(zhí)行程序碼;
[0029]214?收發(fā)器;
[0030]300?應(yīng)用層;
[0031]302?第三層;
[0032]304 ?第二層;
[0033]306 ?第一層;
[0034]400?方法流程圖;
[0035]S405、S410 ?步驟;
[0036]500?信息流程圖;
[0037]510?用戶端;
[0038]512?存取點;
[0039]514?遠端裝置
[0040]S520、S525、S530、S535、S540、S545、S550、S555、S560、S565、S570、S575 ?步驟。
【具體實施方式】
[0041]為了讓本發(fā)明的目的、特征、及優(yōu)點能更明顯易懂,下文特舉較佳實施例,并配合附圖圖1至圖5,做詳細的說明。本說明書提供不同的實施例來說明不同實施方式的技術(shù)特征。其中,實施例中的各元件的配置是為說明之用,并非用以限制本發(fā)明。且實施例中附圖標記的部分重復(fù),是為了簡化說明,并非意指不同實施例之間的關(guān)聯(lián)性。
[0042]圖1是顯示根據(jù)本發(fā)明一實施例所述的無線通信網(wǎng)絡(luò)系統(tǒng)100的示意圖。無線通信網(wǎng)絡(luò)系統(tǒng)100至少包含一第一用戶端110、一第二用戶端112、一第一遠端裝置120、一第二遠端裝置122及一存取點130。第一用戶端110及第二用戶端112通過網(wǎng)絡(luò)(Internet) 140中的存取點130分別連接至第一遠端裝置120及一第二遠端裝置122。
[0043]值得注意的是,雖然在圖1的實施例中僅描述了一個存取點裝置,但是本公開的技術(shù)也適用于點對點系統(tǒng)(例如,第一用戶端110和第一遠端裝置120)間所存在任意數(shù)量和任意類型的存取點裝置。此存取點裝置可為路由器、閘道器(Gateway)等裝置。
[0044]此外,第一用戶端110及第二用戶端112可為具有網(wǎng)絡(luò)連線能力的電子裝置。例如個人電腦、筆記本電腦、平板電腦、智能終端裝置等可連接至無線網(wǎng)絡(luò)的電子裝置。而第一遠端裝置120及一第二遠端裝置122可為網(wǎng)絡(luò)或電信營運商所提供的交換器、網(wǎng)絡(luò)服務(wù)器或其他設(shè)備。必須注意的是,以上所述的用戶端、遠端裝置等數(shù)目,并不局限于本發(fā)明附圖及說明書的內(nèi)容所示。
[0045]在本發(fā)明所描述的實施方式中,存取點130可通過讀取用戶端與遠端裝置之間的傳輸封裝時以攔截在第一用戶端110至第一遠端裝置120和/或第二用戶端112至第一遠端裝置122之間的傳輸控制協(xié)定(Transmiss1n Control Protocol, TCP)同步(synchronize, SYN)和 / 或 TCP 同步確認(synchronize acknowledge, SYN-ACK)信息。存取點130還可檢查在TCP SYN和/或TCP SYN-ACK信息中的TCP標頭(header)內(nèi)容,并對應(yīng)調(diào)整標頭中的最大分段大小(Maximum Segment Size, MSS)值以使封裝能通過網(wǎng)絡(luò)。值得注意的是,在本發(fā)明中存取點130所進行修改或更新對于用戶端及遠端裝置可以為透明的,以使最佳的MSS值可運用現(xiàn)有的TCP協(xié)定來實現(xiàn)。
[0046]下方將對存取點130如何決定一最大MSS值進行說明。首先,存取點130可預(yù)先檢測存取點130至至少一個下一裝置間最大的MSS值,其中下一裝置可為一無線控制器、一遠端通道端點(Remote tunnel endpoint)、一網(wǎng)絡(luò)服務(wù)器(