




已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
精品文檔酒店管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)1 引言酒店管理系統(tǒng)是我們常說的MIS (Management InformationSystem, 管理信息系統(tǒng))的一種, 在強(qiáng)調(diào)管理, 強(qiáng)調(diào)信息的現(xiàn)代社會(huì)中它越來越得到普及。酒店管理系統(tǒng)的主要目標(biāo)是實(shí)現(xiàn)對酒店內(nèi)部各種管理的電子化和自動(dòng)化, 提高酒店的辦公效率, 為高質(zhì)量的酒店服務(wù)提供保證。在酒店業(yè)競爭越來越激烈的今天, 努力在市場競爭中脫穎而出, 已經(jīng)成為每位酒店經(jīng)營者所追求的目標(biāo)。酒店如何才能提高服務(wù)質(zhì)量, 其管理能力顯得越來越重要。由于使用了先進(jìn)的數(shù)據(jù)庫管理技術(shù), 酒店管理系統(tǒng)對提高酒店的管理能力將會(huì)起到比較重大的作用, 整個(gè)系統(tǒng)的基本設(shè)計(jì)目標(biāo)是實(shí)現(xiàn)系統(tǒng)界面友好美觀、簡單易用、功能全面并有較高的安全性。本系統(tǒng)需要實(shí)現(xiàn)中小型酒店常用的點(diǎn)菜、訂菜、結(jié)算等功能, 并幫助酒店建立菜譜數(shù)據(jù)庫和銷售存根數(shù)據(jù)庫, 能夠方便地進(jìn)行查詢, 并在系統(tǒng)的易用性和安全性兩方面進(jìn)行相應(yīng)的完善。2 系統(tǒng)主要模塊(1)登錄管理模塊; (2)菜譜管理模塊; (3)點(diǎn)菜訂菜模塊; (4)結(jié)算模塊; (5)幫助模塊; (6)數(shù)據(jù)庫設(shè)計(jì); (7)系統(tǒng)界面設(shè)計(jì)。軟件系統(tǒng)由各個(gè)具體的功能模塊組成, 若值班員未登錄或登錄失敗, 則只能使用登錄, 幫助, 關(guān)于, 退出這四個(gè)功能模塊。登錄成功后才可以使用全部的功能模塊。各個(gè)功能模塊都是分別進(jìn)行開發(fā)的, 這樣就便于日后拓展功能, 也易于檢查和修改錯(cuò)誤。軟件的系統(tǒng)結(jié)構(gòu)如圖1 所示。3 系統(tǒng)設(shè)計(jì)方案根據(jù)系統(tǒng)功能的要求, 考慮到Visual C+的編程特點(diǎn), 將酒店管理系統(tǒng)分解成前臺(tái)和后臺(tái)兩部分, 并將系統(tǒng)分解為幾個(gè)比較小的功能模塊分別進(jìn)行開發(fā)。使得開發(fā)過程更具條理性, 并且方便對模塊功能進(jìn)行修改或添加新的功能模塊, 從而使整個(gè)系統(tǒng)能夠隨著酒店業(yè)務(wù)的擴(kuò)展進(jìn)行功能的升級(jí)。為了增強(qiáng)系統(tǒng)的安全性,需要設(shè)計(jì)登錄模塊, 登錄成功后才可以使用全部功能.整個(gè)酒店管理系統(tǒng)的設(shè)計(jì)方案如圖2 所示。圖1 軟件系統(tǒng)結(jié)構(gòu)圖2 系統(tǒng)設(shè)計(jì)方案摘要: 本文主要介紹了利用Visual C+開發(fā)的酒店管理系統(tǒng)。隨著軟件開發(fā)技術(shù)和數(shù)據(jù)庫技術(shù)的完善與發(fā)展, 國內(nèi)外的企業(yè)已經(jīng)開始充分利用各種各樣的系統(tǒng)管理軟件來管理諸如銷售信息、產(chǎn)品信息、員工信息等大量日趨繁雜的資料, 計(jì)算機(jī)輔助管理的高效性和高安全性等優(yōu)點(diǎn)使得傳統(tǒng)的管理方式黯然失色, 也為系統(tǒng)管理軟件的發(fā)展提供了更廣闊的前景和發(fā)展空間。本系統(tǒng)設(shè)計(jì)的主要目標(biāo)是設(shè)計(jì)一個(gè)面向中小型酒店的簡單易用的酒店管理系統(tǒng)。前臺(tái)以Visual C+ 為開發(fā)工具, 設(shè)計(jì)軟件的界面和各個(gè)功能模塊; 后臺(tái)使用SQLServer 2000 進(jìn)行系統(tǒng)數(shù)據(jù)庫的連接和管理。本系統(tǒng)已基本實(shí)現(xiàn)了中小型酒店常用的點(diǎn)菜、訂菜、結(jié)算等功能, 幫助酒店建立了菜譜數(shù)據(jù)庫和銷售存根數(shù)據(jù)庫, 可以方便地進(jìn)行查詢, 并在系統(tǒng)的易用性和安全性兩方面進(jìn)行了相應(yīng)的完善。關(guān)鍵詞: Visual C+; 安全性; 數(shù)據(jù)庫中圖分類號(hào): TP315 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1009- 3044(2007)19- 40023- 03The Des ignment and Implementation of Res taurant Management Sys temGAN Chao- Song1, XIA Rong2(1.School of Computing, Jiangxi City Vocational Institute, Nanchang 330004, China; 2.Science and Technology College of NCHU, Nanchang330034, China)Abs tract:This paper mainly introduces the management system of restaurant developed with Microsoft Visual C+. With the developmentof software and database technology, the domestic corporations and the oversea corporations already begin to make full use of all kinds of systemmanagement software to manage lots of interior things, such as vendition information、production information、employee information and so on.Computer- aided management has lots of merits compared with traditional management mode, such as high efficiency and high security. It alsosupplies more wide foreground and developing space for the development of system management software. The main aim of this system is to designa easily- using management system of restaurant for petty restaurant. Front end uses Visual C+ as developing tool, designs main interfaceand function modules; background use SQL Server 2000 for connecting and managing system database. This system basicly actualized functionsin common use of order dishes、prearrangement、settle accounts for petty restaurant, and help restaurant to set up database of bills of fare and venditioninformation. They can expediently be queryed and strengthen the easily- using and security of system.Key words :Visual C+; security; database234 設(shè)計(jì)要點(diǎn)與注意事項(xiàng)4.1 設(shè)計(jì)要點(diǎn)圖形化界面盡量做到美觀簡潔;充分考慮到系統(tǒng)的安全性;通過使用map 類快速保存和檢索數(shù)據(jù)集結(jié)果;通過使用數(shù)據(jù)綁定技術(shù)優(yōu)化代碼。4.2 注意事項(xiàng)系統(tǒng)運(yùn)行前數(shù)據(jù)庫要進(jìn)行正確配置;算法應(yīng)簡單明了, 有較高的時(shí)空效率;注意學(xué)習(xí)使用數(shù)據(jù)綁定等新技術(shù);設(shè)計(jì)登錄模塊時(shí)注意增強(qiáng)安全性。5 關(guān)鍵技術(shù)5.1 數(shù)據(jù)庫的連接將SQL Server 默認(rèn)的數(shù)據(jù)庫設(shè)置為酒店管理系統(tǒng)所在的RMS 后, 就可以在程序中使用DSN 來訪問SQL Server 數(shù)據(jù)庫了。CRMSDlg:OnInitDialog()中連接數(shù)據(jù)庫部分的代碼如下:trym_DBCnt.CreateInstance(_uuidof(Connection);m_DBCnt - ConnectionString = DSN =RMS;UID =fdd;PWD =121;m_DBCnt- Open(, , , - 1);catch(_com_error& e)AfxMessageBox(e.ErrorMessage();this- EndDialog(0);return TRUE;其中DSN=后面即為酒店管理系統(tǒng)所用的數(shù)據(jù)庫的名稱, 可根據(jù)實(shí)際情況進(jìn)行更改。5.2 菜譜管理模塊菜譜對話框的設(shè)計(jì)采用一個(gè)列表框控件顯示讀取的數(shù)據(jù)記錄, 并在CDlgViewCP:OnInitDialog()中對這個(gè)控件(m_list)進(jìn)行初始化(分割列, 設(shè)置列寬, 設(shè)置風(fēng)格等), 其中m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT);這一行代碼使單擊列表框時(shí)選中其中的一整行, 而不是其中的某一格。在單擊并選中某一行的時(shí)候,程序處理這個(gè)單擊事件, 并將這一行的數(shù)據(jù)在下面的列表框中顯示出來, 利用函數(shù)CDlgViewCP:OnClickListCp 來實(shí)現(xiàn)這一點(diǎn):int i = m_list.GetSelectionMark();m_no = m_list.GetItemText(i,0);m_name = m_list.GetItemText(i,1);m_kind = m_list.GetItemText(i,2);m_price = (float)atof(m_list.GetItemText(i,3);m_detail = m_list.GetItemText(i,4);UpdateData(FALSE);*pResult = 0;另外在菜譜管理模塊中還要同時(shí)實(shí)現(xiàn)菜譜查詢功能, 即由用戶選擇查詢目標(biāo)(編號(hào),菜名,種類), 再填入所要查詢的內(nèi)容就可在菜譜中查詢到符合條件的菜。如果沒有輸入任何查詢條件, 那么就列出菜譜中所有的菜。void CDlgViewCP:RefreshData(LPCTSTR qry)m_list.DeleteAllItems();m_list.SetRedraw(FALSE);_RecordsetPtr pRst = NULL;IADORecordBinding *picRs = NULL; /Interface Pointer declared.(VC+ Extensions)CCPRs rs;try _bstr_t strSQL = qry;TESTHR(pRst.CreateInstance(_uuidof(Recordset);pRst = m_DBCnt- Execute(strSQL, NULL, adCmdText);/數(shù)據(jù)綁定(Data Binding)TESTHR (pRst - QueryInterface (_uuidof (IADORecordBinding),(LPVOID*)&picRs);TESTHR(picRs- BindToRecordset(&rs);int i = 0;char buf128;while (! pRst- adoEOF)m_list.InsertItem(0, rs.m_sz_no);m_list.SetItemText(i, 1, rs.m_sz_name);m_list.SetItemText(i, 2, rs.m_sz_kind);sprintf(buf, %f, rs.m_f_price); m_list.SetItemText(i, 3, buf);m_list.SetItemText(i, 4, rs.m_sz_detail);/移到下一條記錄pRst- MoveNext();picRs- Release();pRst- Close();catch(_com_error& e)AfxMessageBox(e.ErrorMessage();m_list.SetRedraw(TRUE);return;m_list.SetRedraw(TRUE);在上面的這段RefreshData 函數(shù)的代碼中, 由于使用了ADO2.0 for Visual C+ Extensions 所提供的新特性Data Binding (數(shù)據(jù)綁定)技術(shù), 所以代碼顯得比較簡潔。5.3 登錄管理模塊在未登錄的時(shí)候, 主對話框中的按鈕, 除了登錄, 退出, 幫助,關(guān)于等項(xiàng), 全是不可用的。為了達(dá)到這一效果, 在CRMSDlg:OnInitDialog()中加入如下代碼:GetDlgItem(IDC_BTN_UPDPWD)- EnableWindow(FALSE);GetDlgItem(IDC_BTN_DC)- EnableWindow(FALSE);GetDlgItem(IDC_BTN_JS)- EnableWindow(FALSE);GetDlgItem(IDC_BTN_CP)- EnableWindow(FALSE);GetDlgItem(IDC_BTN_VIEWDC)- EnableWindow(FALSE);若登錄成功后, 只需將FALSE 換成TRUE, 則所有按鈕都變?yōu)榭捎?。將進(jìn)行登錄驗(yàn)證的SQL 代碼加入到主對話框的事件處理函數(shù)CRMSDlg:OnBtnLogin()中, 用來處理登錄事務(wù):sql_.Format (SELECT 值班員FROM ZBY WHERE 值班員=%s AND 密碼=%s,dlg.m_name, dlg.m_pswd);這里并沒有取出值班員表中的所有字段(值班員和密碼), 然后把密碼字段和用戶的輸入作比較來決定登錄成功與否; 而是只取出了值班員名字(值班員), 密碼的校驗(yàn)放在數(shù)據(jù)庫服務(wù)器端進(jìn)行, 這主要是基于安全的考慮。如果沒有確實(shí)的需要, 就盡量不從數(shù)據(jù)庫里取用戶密碼這種敏感數(shù)據(jù), 以免產(chǎn)生安全漏洞, 削弱系統(tǒng)的安全性。修改密碼部分的處理代碼和登錄部分類似, 只是不但要進(jìn)行舊密碼的驗(yàn)證, 還要確認(rèn)兩次輸入的新密碼一致, 如舊密碼錯(cuò)誤或兩次輸入的新密碼不一致則需要給出相應(yīng)的提示。另外還要利用SQL 語句向數(shù)據(jù)庫中寫入新密碼: sql_.Format (Update ZBYSET 密碼=% s WHERE 值班員=% s,dlg.m_newpswd, dlg.m_name); 密碼修改成功后則給出密碼已修改成功的提示。5.4 點(diǎn)菜模塊在這個(gè)模塊里可以根據(jù)顧客的需要逐項(xiàng)輸入菜譜中的菜肴,并可對已經(jīng)做出的選擇進(jìn)行刪除和修改。待最終決定之后單擊提交按鈕就會(huì)將結(jié)果保存到數(shù)據(jù)庫中。點(diǎn)菜訂菜操作首先要在桌號(hào)編輯框中輸入桌號(hào), 然后在編號(hào)選擇框中通過選擇菜譜中的編號(hào)來選擇菜肴。這樣顧客只需說出所需菜肴在菜譜上的編號(hào), 值班員就可以很快地找到顧客所需要的菜, 而不必讓顧客報(bào)出菜名,提高服務(wù)效率, 降低出錯(cuò)率。為了使編號(hào)選擇框中包含所有的菜譜號(hào), 在CDlgDC:OnInitDialog()中應(yīng)包含如下代碼:try_bstr_t strSQL(SELECT * FROMCP);pRst = m_DBCnt- Execute(strSQL, NULL, adCmdText);TESTHR (pRst - QueryInterface (_uuidof (IADORecordBinding),(LPVOID*)&picRs);TESTHR(picRs- BindToRecordset(&rs);int i = 0;cpmap.clear(); / 清空cpmapwhile (! pRst- adoEOF)m_nos.AddString(rs.m_sz_no);/向cpmap 中添加一個(gè)菜譜號(hào)- 菜名映射cpmap.insert (CPMap:value_type (string (rs.m_sz_no), string(rs.24m_sz_name);pRst- MoveNext();picRs- Release();pRst- Close();catch(_com_error& e)AfxMessageBox(e.ErrorMessage();return TRUE;上面代碼中的cpmap 變量用于保存一組菜譜號(hào)- 菜名的映射, 這樣在用戶選中某一個(gè)菜譜編號(hào)是能迅速的由編號(hào)找到對應(yīng)的菜, 而不用去讀取數(shù)據(jù)庫.值班員在編號(hào)選擇框中選中一個(gè)編號(hào)的事件為CBN_CLOSEUP, 這個(gè)事件的處理函數(shù)為CDlgDC:OnCloseupComboDcnos():void CDlgDC:OnCloseupComboDcnos()char buf128;m_nos.GetWindowText(buf, 128);CPMap:const_iterator it = cpmap.find(string(buf);if (it! =cpmap.end()string name = (*it).second;GetDlgItem(IDC_EDIT_DCNAME)- SetWindowText(name.data();cpmap 的定義在DlgDC.cpp 的開頭:#pragma warning(disable: 4786)#pragma warning(disable: 4503)#include #include using namespace std;typedef map CPMap;CPMap cpmap;這里定義的CPMap 類建立了一個(gè)從字符串到字符串的映射, 就是從map 和string 模板類來的, CPMap 是一個(gè)STL(StandardTemplate Library)類, 而cpmap 則是CPMap 型的全局變量。另外由于使用了模板, 會(huì)在類的內(nèi)部產(chǎn)生相當(dāng)長的類型名, 從而在編譯時(shí)出現(xiàn)C4787 警告, 提示指示類型名長度超過255 個(gè)字符, 所以用“#pragma warning(disable: 4786)”來關(guān)掉這個(gè)警告。值班員在訂餐模塊中修改、刪除和增加菜肴都不會(huì)對數(shù)據(jù)庫作修改, 而是先在列表框控件m_list 中進(jìn)行這些操作。只有在單擊提交按鈕之后, 才會(huì)向數(shù)據(jù)庫中提交數(shù)據(jù)。每向數(shù)據(jù)庫中加入一條, 就會(huì)自動(dòng)清除列表框中相應(yīng)的輸入。全部添加成功后, 列表框才會(huì)被全部清空。如果中途出現(xiàn)錯(cuò)誤, 則停止添加。列表框中剩下的項(xiàng)就是沒有成功添加的項(xiàng), 值班員可對其進(jìn)行修改后再進(jìn)行添加。這部分的主要代碼如下:tryTESTHR(pRst.CreateInstance(_uuidof(Recordset);pRst- Open(DC,_variant_t(IDispatch *) m_DBCnt, true),adOpenKeyset, adLockOptimistic, adCmdTable);/逐項(xiàng)讀取,逐項(xiàng)提交while (m_list.GetItemCount()0)m_list.GetItemText(0,0,rs.m_sz_desk,sizeof(rs.m_sz_desk);m_list.GetItemText(0,1,rs.m_sz_no,sizeof(rs.m_sz_no);m_list.GetItemText(0,2,rs.m_sz_name,sizeof(rs.m_sz_name);rs.m_f_number=(float)atof(m_list.GetItemText(0,3);m_list.GetItemText(0,4,rs.m_sz_date,sizeof(rs.m_sz_date);COleSafeArray vaFieldlist, vaValuelist;rs.FillFieldsArray(vaFieldlist,vaValuelist);/提交一條菜譜記錄TESTHR(pRst- AddNew(vaFieldlist, vaValuelist);/從列表控件中刪除已成功添加的菜m_list.DeleteItem(0);pRst- Close();catch(_com_error& e)AfxMessageBox(e.ErrorMessage();return;在將數(shù)據(jù)添加到數(shù)據(jù)庫后將顯示操作完成的提示。5.5 結(jié)算模塊開始結(jié)算時(shí), 將先出現(xiàn)要求輸入桌號(hào)和折扣率的對話框, 為符合實(shí)際情況, 需要在ClassWizard 里限制折扣率一項(xiàng)的輸入在0.1- 1.0 之間。如未輸入桌號(hào)就點(diǎn)擊確定, 則會(huì)給出要求輸入桌號(hào)的提示。下面是處理單擊結(jié)算按鈕事件的函數(shù):void CRMSDlg:OnBtnJs()CDlgBeginJS dlg1;ShowWindow(SW_HIDE);dlg1.DoModal();if (dlg1.m_desk.GetLength()0)CDlgJS dlg2;dlg2.Setup(m_DBCnt, dlg1.m_desk, dlg1.m_dz);dlg2.DoModal(); elseMessageBox(請輸入桌號(hào)! );ShowWindow(SW_SHOW);在上面的代碼中, 讀取了桌號(hào)和折扣率的信息之后, 程序把這兩個(gè)信息傳給一個(gè)CDlgJS 對話框?qū)ο? 然后顯示這個(gè)對話框。程序讀出指定桌號(hào)的訂餐信息, 計(jì)算出總金額, 并根據(jù)打折情況計(jì)算出結(jié)算金額, 這部分工作在OnInitDialog 中完成:float CDlgJS:GetPrice(LPCTSTR no)_RecordsetPtr pRst = NULL;IADORecordBinding *picRs = NULL; /Interface Pointer declared.(VC+ Extensions)CCPRs rs;rs.m_f_price = 0.0;CString sql_;sql_.Format(SELECT * FROMCP WHERE 編號(hào)=%s, no);_bstr_t strSQL = sql_;pRst = m_DBCnt- Execute(strSQL, NULL, adCmdText);if (pRst- adoEOF) _com_issue_error(0x80000000);TESTHR(pRst - QueryInterface (_uuidof(IADORecordBinding),(LPVOID*)&picRs);TESTHR(picRs- BindToRecordset(&rs);picRs- Release();pRst- Close();return rs.m_f_price;結(jié)算完成后單擊保存帳單按鈕, 程序?qū)⒃诮Y(jié)算表中添加一條記錄, 并刪除已經(jīng)結(jié)算過的訂菜信息。由于涉及到兩個(gè)相互關(guān)聯(lián)的操作, 所以必須使用ADO 的事務(wù)功能。在添加操作之前調(diào)用Connection 對象的BeginTrans 方法開始一個(gè)事務(wù), 在刪除操作完成之后調(diào)用CommitTrans 提交這個(gè)事務(wù): 如果其中的某一步出錯(cuò),通過RollBackTrans 方法, 數(shù)據(jù)庫將保持原樣。處理單擊保存帳單按鈕事件的函數(shù):void CDlgJS:OnBtnJssave()if (! UpdateData()return;if (m_no.GetLength()=0)MessageBox(請輸入客戶姓名! );return;_RecordsetPtr pRst = NULL;CJSRs rs;trym_DBCnt- BeginTrans(); /開始事務(wù)TESTHR(pRst.CreateInstance(_uuidof(Recordset);pRst - Open (JS,_variant_t (IDispatch *) m_DBCnt, true),adOpenKeyset, adLockOptimistic, adCmdTable); /打開結(jié)算表格strcpy(rs.m_sz_no, m_no); /填寫結(jié)算記錄strcpy(rs.m_sz_desk,m_desk);rs.m_f_dz = m_dz;rs.m_f_total = m_total;_tmstr(m_date, rs.m_sz_date);COleSafeArray vaFieldlist, vaValuelist;rs.FillFieldsArray(vaFieldlist,vaValuelist);/添加結(jié)算記錄TESTHR(pRst- AddNew(vaFieldlist, vaValuelist);pRst- Close();/刪除訂菜記錄CString sql_; ( 下轉(zhuǎn)第79 頁)25網(wǎng)絡(luò)地址轉(zhuǎn)換一協(xié)議轉(zhuǎn)換(NAT- PT)包括兩個(gè)組成部分:網(wǎng)絡(luò)地址轉(zhuǎn)換協(xié)議和協(xié)議轉(zhuǎn)換。其中地址轉(zhuǎn)化是指通過使用NAT 網(wǎng)關(guān),將一種IP 網(wǎng)絡(luò)的地址轉(zhuǎn)換為另一種IP 網(wǎng)絡(luò)的地址, 它允許內(nèi)部網(wǎng)絡(luò)使用一組在公網(wǎng)中從不使用的保留地址。在使用這項(xiàng)技術(shù)是可以將IPv6 網(wǎng)視為一個(gè)獨(dú)立而封閉的局域網(wǎng), 它需要使用一個(gè)地址翻譯器進(jìn)行地址翻譯。當(dāng)內(nèi)網(wǎng)的主機(jī)向外發(fā)送數(shù)據(jù)包時(shí), 將內(nèi)部的IP 地址轉(zhuǎn)換為外部的公網(wǎng)地址, 當(dāng)數(shù)據(jù)包從外部網(wǎng)絡(luò)回復(fù)數(shù)據(jù)包時(shí), 再將公網(wǎng)地址轉(zhuǎn)換為內(nèi)部網(wǎng)絡(luò)的地址。協(xié)議轉(zhuǎn)換是指根據(jù)IPv6 和IPv4 之間的差異對數(shù)據(jù)包的首部做相應(yīng)的修改以符合對方網(wǎng)絡(luò)的格式要求, 并且由于網(wǎng)絡(luò)層協(xié)議的改變要對上層的TCP、UDP、ICMP 等數(shù)據(jù)包做相應(yīng)的修改。將網(wǎng)絡(luò)地址轉(zhuǎn)換機(jī)制與協(xié)議轉(zhuǎn)換機(jī)制相結(jié)合而產(chǎn)生的NAT- PT 可以通過對協(xié)議、地址的轉(zhuǎn)換實(shí)現(xiàn)IPv6 和IPv4 之間的相互通信。2.4 基于MPLS 的過渡技術(shù)MPLS(Multiprotocol Label Switch)最初是用來提高路由器的轉(zhuǎn)發(fā)速度而提出的一個(gè)協(xié)議, 但是由于MPLS 在流量工程和VPN 這一在目前工網(wǎng)絡(luò)中非常關(guān)鍵的兩項(xiàng)技術(shù)中的突出表現(xiàn), MPLS 己日益成為擴(kuò)大IP 網(wǎng)絡(luò)規(guī)模的重要標(biāo)準(zhǔn)。MPLS 是一種使不同的網(wǎng)絡(luò)傳輸技術(shù)在同一個(gè)平臺(tái)上統(tǒng)一起來的技術(shù), 它能夠減少網(wǎng)絡(luò)的復(fù)雜度, 并兼容主流的網(wǎng)絡(luò)技術(shù), 代表了未來網(wǎng)絡(luò)發(fā)展的一種趨勢。目前, 使用MPLS 的骨干網(wǎng)越來越多, 因此必須考慮如何在MPLS 上集成IPv6。因?yàn)镸PLS 在網(wǎng)絡(luò)中, 轉(zhuǎn)發(fā)是根據(jù)標(biāo)記進(jìn)行的, 這就不需要數(shù)據(jù)層面支持IPv6 的數(shù)據(jù)轉(zhuǎn)發(fā), 即無須核心網(wǎng)絡(luò)軟硬件的升級(jí), 只需要邊緣路由器具有配置IPv6 的能力即可。利用現(xiàn)有的MPLS 骨干網(wǎng)向IPv6 過渡, 是將IPv4 升級(jí)過渡到IPv6 的一個(gè)重要途徑, 具體的辦法是, 在CE 路由器上配置IPv6 隧道、MPLS 電路的IPv6 透明傳輸?shù)?。MPLS 當(dāng)前技術(shù)已經(jīng)比較成熟, 可以借助MPLSL2/L3VPN 技術(shù)來連接IPv6 的網(wǎng)絡(luò)。在CE 路由器上配置隧道要求CE 路由器支持雙棧, CE 和PE 之間運(yùn)行IPv4, CE 負(fù)責(zé)將IPv6 數(shù)據(jù)封裝在IPv4 中通過MPLS 傳送到對端的CE 路由器。MPLS 電路的IPv6透明傳輸將IPv6 的數(shù)據(jù)包通過Any Transport OVER MPLS(MPLS/AtoM)或Ethernet OVER MPLS(EToMPLS)來傳遞, 路由器需要支持AToM特性, 相當(dāng)L2VPN 于。在PE 路由器起用IPv6 是在PE 路由器上提供雙棧功能, IPv6 數(shù)據(jù)包被封裝在二層標(biāo)簽里進(jìn)行傳送,外層標(biāo)簽由LDP 來分發(fā), 內(nèi)層標(biāo)簽由BGP4+來分發(fā), 相當(dāng)于L3VPN。Native IPv6 MPLS 是將IPv4 的核心網(wǎng)絡(luò)升級(jí)到IPv6, 其核心網(wǎng)的控制平面需要升級(jí)到IPv6 以支持核心網(wǎng)的IPv6 路由和IPv6 的LDP, 如果需要提供IPv4 /IPv6 共存的服務(wù), 則需要雙控制平面的支持。3 四種技術(shù)的優(yōu)缺點(diǎn)比較隧道技術(shù)其優(yōu)點(diǎn)是不需要大量的專用路由器設(shè)備和專用鏈路, 可以明顯地減少投資。其缺點(diǎn)是在IPv4 網(wǎng)絡(luò)上配置隧道是一個(gè)比較麻煩的過程, 特別是在隧道數(shù)目增加到一定程度時(shí), 因此,采用隧道方案特別是手工隧道時(shí)一定要做好詳細(xì)的文檔一記錄。IPv6 的流量和原有的IPv4 流量之間會(huì)爭搶帶寬和路由器資源(CPU、緩沖和路由表), 在IPv6 的流量較小時(shí), 這個(gè)問題不是很明顯, 但隨著IPv6 流量的增大這個(gè)問題將來會(huì)很突出, 存在迂回路由的情況。這對于整個(gè)IPv4 網(wǎng)絡(luò)性能來說, 無疑是一種惡劣的影響。在IPv6 網(wǎng)絡(luò)建設(shè)的初期, 其網(wǎng)絡(luò)規(guī)模和業(yè)務(wù)量都較小, 因此采用這種連接方式是可行的。雙協(xié)議棧的優(yōu)點(diǎn)是不需要購置專門的IPv6 路由器和鏈路, 節(jié)省了硬件投資, 核心IPv6 路由器之間采用專用本地鏈路, 克服了隧道方式的許多缺點(diǎn)。其缺點(diǎn)是IPv6 的流量和原4 的IPv4 流量爭搶帶寬和路由器資源, 從而影響IPv4 網(wǎng)絡(luò)的性能, 升級(jí)和維護(hù)費(fèi)用大, 不符合從網(wǎng)絡(luò)邊緣開始演進(jìn)的策略。在IPv6 網(wǎng)絡(luò)建設(shè)的初期, 由于IPv6 地址相對充足, 這種方案的實(shí)施具有可行性。當(dāng)IPv6 網(wǎng)絡(luò)發(fā)展到一定階段, 為每個(gè)節(jié)點(diǎn)分配兩個(gè)全局地址的方案將很難實(shí)現(xiàn)。NAT- PT 的優(yōu)點(diǎn)是所有的地址轉(zhuǎn)換和協(xié)議轉(zhuǎn)換都在NAT- PT服務(wù)器上完成, 而子網(wǎng)內(nèi)部的主機(jī)不需要做任何改動(dòng), 就可以實(shí)現(xiàn)兩個(gè)不同子網(wǎng)之間的相互
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 刀剪產(chǎn)品的品牌推廣策略與執(zhí)行計(jì)劃考核試卷
- 豬的飼養(yǎng)智能化管理考核試卷
- 竹材加工過程中的質(zhì)量控制考核試卷
- 皮革制品的消費(fèi)心理與購買決策考核試卷
- 盾構(gòu)機(jī)施工中的隧道工程地質(zhì)環(huán)境保護(hù)策略考核試卷
- 廈門醫(yī)學(xué)院《心理測量學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 無錫科技職業(yè)學(xué)院《人體工程學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 西昌民族幼兒師范高等??茖W(xué)?!赌X癱兒童功能評(píng)估》2023-2024學(xué)年第一學(xué)期期末試卷
- 沈陽化工大學(xué)《語文》2023-2024學(xué)年第一學(xué)期期末試卷
- 沈陽職業(yè)技術(shù)學(xué)院《外國文學(xué)作品欣賞》2023-2024學(xué)年第二學(xué)期期末試卷
- 3.2工業(yè)區(qū)位因素及其變化以大疆無人機(jī)為例課件高一地理人教版
- 2024年陜西省中考數(shù)學(xué)試卷(A卷)附答案
- DL-T5190.1-2022電力建設(shè)施工技術(shù)規(guī)范第1部分:土建結(jié)構(gòu)工程
- 財(cái)務(wù)預(yù)算分析表模板
- 中國高清熒光腹腔鏡行業(yè)市場現(xiàn)狀分析及競爭格局與投資發(fā)展研究報(bào)告2024-2034版
- 2024年高考體育單招考試政治重點(diǎn)知識(shí)點(diǎn)歸納總結(jié)(復(fù)習(xí)必背)
- MOOC 大數(shù)據(jù)技術(shù)原理與應(yīng)用-廈門大學(xué) 中國大學(xué)慕課答案
- 國企管理人員招聘考試題庫
- 高血壓與青光眼的關(guān)系
- (2024版)小學(xué)二年級(jí)孩子如何高效復(fù)習(xí)語文知識(shí)點(diǎn)
- asme焊接工藝評(píng)定
評(píng)論
0/150
提交評(píng)論