分类: News

IT資訊新聞

  • 關於WebService開發的個人經驗

    去年幫客戶和某超商作欠費的即時查詢及代收的整合,剛開始試寫了幾種方法,但是超商都說我回的Message他們驗證不過吃不進去,最後是超商提供的一個C#範例程式,我拿來改成VB.Net,所以當時有一些Attribute的語法被不明就裡的拿來套用,剛好最近兩天有空就拿來研究,終於都搞通了,以下就是這兩天的研究成果

    以VS2005開發Web Service來傳遞自訂物件時,如下例
    Public Class Service1
    Inherits System.Web.Services.WebService
    <WebMethod()> _
    Public Function Operation(ByVal obj As MyObj) As MyObj
    …..
    End Function
    End Class

    Public Class MyObj
    …..
    End Class
    預設Request和Response的SOAP Message會長的像這樣:
    =======Request=======
    <?xml version=”1.0″ encoding=”utf-8″?>
    <soap:Envelope …>
    <soap:Body>
    <obj>
    ….
    </obj>
    </soap:Body>
    </soap:Envelope>

    =======Response=======
    <?xml version=”1.0″ encoding=”utf-8″?>
    <soap:Envelope …>
    <soap:Body>
    <OperationResult>
    ….
    </OperationResult>
    </soap:Body>
    </soap:Envelope>

    但超商希望的是無論在Request和Response的訊息都是在SOAP BODY內包一個<OLTP>…</OLTP>就好,長的像這樣:
    <?xml version=”1.0″ encoding=”utf-8″?>
    <soap:Envelope …>
    <soap:Body>
    <OLTP>
    ….
    </OLTP>
    </soap:Body>
    </soap:Envelope>

    要怎麼作呢?
    要修改Request時的Message容易!
    Public Class Service1
    Inherits System.Web.Services.WebService
    <WebMethod()> _
    Public Function Operation(ByVal objOLTP As MyObj) As MyObj
    …..
    End Function
    End Class

    要改Response時的Message就要在我們的自訂物件上多加一些Attribute的東西
    Imports System.Xml.Serialization
    <XmlRootAttribute(ElementName:=”OLTP”)> _
    Public Class MyObj
    …..
    End Class

    不過這樣(加上Attribute)改過之後,如果您是在VS2005直接用加入Web參考的方式,去呼叫這個Web Service會發現收不到傳回值,而且您的測試專案可能就會有一個運算式沒有產生值的錯誤訊息,去看Reference.vb(在專案的.\Web References\Web參考資料夾名稱下)會發現您呼叫的是一個Sub而不是Function,當然您可以直接修改這隻程式,不過我強烈建議絶對不要這樣作,因為那一天您不小心去更新Web參考時就毀了,VS2005會重新產生這個檔案,您所作的修改就不見了。所以我建議如果會有要自己修改Reference.vb這個檔案的人,請照這樣作!

    1. 先移去剛剛加的<XmlRootAttribute(ElementName:=”OLTP”)> _,存檔並重新建置(重建一定要作,不然後面就白作了)
    2. 先開啟VS2005命令提示字元
    3. 輸入 WSDL /l:VB http://伺服器IP/WebService名稱.asmx
    4. 在現行資料夾下會產生一個 WebService名稱.vb 的檔案
    5. 將這個.vb的檔案複製到測試專案資料夾下並加入到測試專案中
    6. 修改測試專案程式碼,將原本程式碼中的 Web參考資料夾名稱.ServiceName 改成 ServiceName,Web參考資料夾名稱.MyObj 改成 MyObj
    7. 作到這裡,看起來已經沒有錯誤訊息了,但是實際執行時,您會發現雖然是Function但傳回值卻永遠是Nothing,那是因為VS2005只會去讀SOAP BODY內的<XXXXResult>…</XXXXResult>內容當作傳回值(XXXX就是您WebMethod的Function名稱)
    8. 打開 WebService名稱.vb ,修改Function宣告式的傳回值部份,在XmlElementAttribute中加入ElementName:=”OLTP” 讓VS2005會去讀SOAP BODY中的<OLTP>…</OLTP>內容當作傳回值即可

    Public Function Operation( <System.Xml.Serialization.XmlElementAttribute( _
    [Namespace]:=”http://tempuri.org/”)> ByVal OLTP As MyObj) _
    As <System.Xml.Serialization.XmlElementAttribute([Namespace]:=”http://tempuri.org/”, ElementName:=”OLTP”)> MyObj
    Dim results() As Object = Me.Invoke(“Operation”, New Object() {OLTP})
    Return CType(results(0),MyObj)
    End Function

    引用:http://paul0407.blogspot.com/search/label/ASP.NET

  • 提高自己水平的十大技術解析

     在當今的IT就業市場,有人歡喜有人憂。有人對目前的工作和薪水很滿意,有人目前正面臨著下崗,或者已經下崗……

        可能你是公司裡唯一諳熟某項關鍵技術的高手,缺了你,公司便玩不轉了;也可能你所在的公司對你現有的專業技能高枕無憂,認為你在任期內足以勝任公司給你的開發任務(當然就不會再花銀子去培訓你啦)。

        不要告訴我你們公司對原來用VB開發的業務處理系統很滿意,而你呢,也認為自己除了用C語言開發程序以外,不會再去做別的什麼事情。

        你是不是對.NET和Java為爭奪開發工具市場撕破臉皮而熟視無睹,你是不是對XML將要取代關係數據庫而無動於衷以及不屑一顧。你是不是認為你能用彙編或C開發任何東西,所以覺得其它開發工具都不再重要……

        如果真是這樣,那麼你離失業的日子不遠了

        俗話說–未雨綢繆……

        想一想如果你現在失業沒有工作會怎麼樣?

        想一想現在還有如此之多的弟兄們為了找一個飯碗而四處奔波。

        想一想如果現在你們公司為了搶占市場,突然要進行技術轉向,你該怎麼辦?

        想一想你現在為了自己的前途,突然需要改變技術領域,你該怎麼辦?或者你不滿足於現在自己的知識結構,想要再充實一下,但又不知選擇那些內容來學習。那麼繼續往下看,並一起參加討論吧,相信會有收穫的。

        在人才招聘市場,人事經理們關注的是實際技能,要求現在和將來從事開發工作所需要的實際技能。作為一個技術開發人員,自己的知識結構是就業和保持自身崗位的關鍵。此外還有一點也很重要,那就是即便你不再從事或者尋求實際的開發工作,也必須盡可能多地了解和熟悉當今你所從事的領域中最前沿的技術和信息,只有這樣才能跟上技術發展的步伐。以便使自己始終處於不敗之地。

        本文列出了當今計算機軟件開發和應用領域最重要十種關鍵技術排名,如果你想保證你現在以及未來的幾年不失業,那麼你最好跟上這些技術的發展。雖然你不必對這十種技術樣樣精通,但至少應該對它們非常熟悉。

        一、XML

        在十種技術中,最重要的一種技術我想應該非XML莫屬。這裡不僅僅指XML規範本身,還包括一系列有關的基於XML的語言:主要有XHTML,XSLT,XSL,DTDs,XML Schema(XSD),XPath,XQuery和SOAP。如果你現在還對XML一無所知,那麼趕快狂補吧。 XML是包含類似於HTML標籤的一個文本文件,在這個文件中定義了一個樹型結構來描述它所保存的數據。

         XML最大的優點是你既可以在這個文本文件中存儲結構化數據,也可以在其中存儲非結構化數據——也就是說,它能包含和描述“粗糙的”文檔數據,就像它描述“規則的”表格數據一樣。

         XHTML是目前編寫HTML的首選方法;因為XHTML本身就是格式良好的XML,與通常畸形的HTML文檔相比, XHTML格式文檔更容易處理。

         XSLT和XSL是對XML文檔進行轉換的語言。它們可以將XML文檔轉換成各種格式,比如另一個文本文件、PDF文件、HTML文件、逗號分割的文件,或者轉換成其它的XML文檔。

         DTDs和XML Schema用來描述XML文件所包含的數據內容的類型,使你不用編寫定制的代碼就能對XML文檔的內容進行“有效性”檢查,使內容強行遵守給出的規則。

         XPath和XQuery是查詢語言,用它們可以從XML文檔中吸取單個的數據項或者數據項列表。 XQuery的功能特別強大,因為它對XPath查詢進行了擴展。實際上,XQuery和XML的關係就像SQL之於關係數據庫一樣。

         SOAP是Web services間進行通訊的標準協議。你不必知道SOAP協議的所有細節,但是你應該熟悉其常用規則及其工作原理,這樣你才能使用它。

        二、Web Services

         Web服務是XML流行後的直接產物。因為XML可以描述數據和對象,XML大綱可以保證XML文檔數據的有效性,因為XML的基於文本的規範,因而XML文檔極其適合於作為一種跨平台通訊標準的基本格式。如果你還沒有接觸過Web服務,那麼過不了多久你肯定會碰到它,所以必須熟練掌握Web服務,最好是精通它,因為它是迄今為止應用程序間跨不同種類機器、語言、平台和位置通訊的最簡單的一種方式。不管你需不需要它,Web服務都會是將來互用性的主要趨勢。

         XML工作組的John Bosak曾說過:“XML使得Java有事可做”,那麼,我們也可以說,Web服務使得所有語言都有事可做。 Web服務讓運行在大型機上的COBOL應用程序與運行在手持設備上的應用程序相互溝通;讓Java小應用與。 NET服務器相互通訊,讓桌面應用與Web服務器進行無縫交互,不但為商業數據處理,同時也為商業功能提供了方便的實現——並且這種實現與語言、平台、和位置無關。

        三、面向對象編程

        許多程序員仍然認為OOP乃技術的象牙之塔,但是細細想一下過去十年裡在面向對象領域裡佔據過統治地位的開發語言之後,你就不會這麼認為了,OOP理念從Smalltalk開始,然後蔓延到C++和Pascal(Delphi),到Java成為真正的主流,VB.NET和C#的出現可以說是OOP發展到了登峰造極的地步。雖然使用這些語言不必了解OOP的概念,但如果你缺乏一些OOP的基本知識和方法,我想你很難在逐漸疲軟的就業市場中找到工作。

        四、Java,C++,C#,VB.NET

        如果你熱衷於技術,並且熱愛編程,那麼我想你應該輕鬆玩轉這些高級語言,我說的玩轉並不一定要你成為超級編程高手。而是能看懂用這些語言編寫的代碼即可。如果你還有精力用它們編碼那就更好了。其實這種機會甚少。但是看代碼的機會很多,學習編程的最有效的一種方式就是看源代碼——浩如煙海的源代碼中很多都不是用你所鍾愛的開發語言編寫的。

        在過去的幾年裡,各個語言功能的發展基本上都差不多。現在你完全可以用VB.NET來寫Windows服務、Web應用或者命令行程序。即使你只用其中的一種語言寫程序。我認為也完全有必要學習另外一種語言,使自己能閱讀和理解它們現有的例子代碼,並且能將一種語言編寫的代碼轉換成你首選的編程語言代碼。這裡列出的四種語言可謂是一個強大的開發語言工具箱,如果你掌握了它們,毫無疑問你一定是一個眾人仰慕的高手。這裡我要聲明一下:那就是我並沒有要忽略和排除其它的高級語言,如:FORTRAN、COBOL、APL、ADA、Perl和Lisp等等,根據你所從事的領域不同,應該選擇適合的語言和工具。

        五、JavaScript

         Java和JavaScript兩者的名字儘管很類似,但它們之間並沒有什麼關係。為什麼一種腳本語言會如此重要,以至於將它列入十種關鍵技術之一呢?仔細想一下就知道了,目前所有主流的瀏覽器都使用JavaScript。如果你要編寫Web應用程序,那麼JavaScript不可或缺。此外,JavaScript還能作為一種服務器端的腳本語言,如將它嵌入在ASP、ASP.NET中,或者嵌入XSLT來擴展功能。目前JavaScript在Mozilla/Netscape中是激活基於XUL界面的首選語言,它派生出了ActionScript,成為Flash MX應用的編程語言。還有就是JavaScript極有可能成為未來新設備的腳本語言以及主流應用的宏語言。

       相比之下,VBScript雖然在微軟的產品中得到很好的支持,但從長遠來看,沒有跡象表明它會有美好前途。微軟自己都趨向於用JavaScript(或者用由JavaScript派生的JScript)來編寫其客戶端腳本代碼。因此,如果你要選擇腳本語言,非JavaScript莫屬。

        六、Regular Expressions

        從所周知,關係數據庫的查詢使用SQL,搜索XML文檔用XPath和XQuery,而正則表達式則用來搜索純文本。例如,你可以用一個命令來查找或刪除HTML格式文件中的註釋內容。大家都用過“IndexOf”、“InStr”以及“Like”這些內建在JavaScript或VB中的文本搜索函數,這些函數雖然很容易使用,但是它們的功能卻無法與正則表達式同日而語— —現在每一種主流的開發語言都提供對正則表達式的存取。儘管有人認為正則表達式本身的讀寫艱澀難懂,但畢竟它的功能強大,使用它的領域也越來越多。

        七、Design Patterns

        就像OOP通過創建和分類對象來簡化編程一樣,設計模式將普通的對象交互分類成指定的模型,這是一個從一般到具體的過程。 OOP的成分使用得越多,設計模式就顯得越有用武之地。所以你必須理解它們,跟上其總體理論的發展。

        八、Flash MX

        當你需要比HTML和CSS所能提供的更多的客戶端圖形和編程能力時,Flash是最佳選擇。在Flash中編程比用Java小應用或者.NET代碼來得快得多,也容易得多。

        在最新版本中(MX),Flash不僅可以畫圖和進行動畫打包,它還是個高度的可編程應用環境。具備強大的與SOAP Web服務溝通的能力,可以調用運行在遠端服務器上的ColdFusion、Java或。 NET代碼。可以說Flash幾乎無處不在,包括手持設備、置頂盒、甚至是新的平板電腦,你到處都可以見到它的身影,所以使用它實際上可以擴展和延伸你的應用程序使用領域。
       九、Linux/Windows

        這是當今PC機操作系統的兩大陣容,如果你想在計算機行業裡混,就一定要熟悉它們。對於Linux,最好能自己安裝,配置,下載它的圖形用戶界面以及一些應用程序。自己安裝Apache並會編寫Web應用程序。要清醒地認識到這個世界除了Windows之外,還有Linux的存在。並且這種局面將會長期存在。反過來,如果你是一個死忠的Linux開發者,不要再繼續對Windows的憎惡,要相互學習,取長補短,看看Windows有什麼好的東東可以採納。記住Windows仍然是桌面之王。

        誰也說不准你們公司什麼時候會決定從Linux轉向Windows,或者從Windows轉向Linux。誰也說不准什麼時候你會跳槽跑到另外一個使用不同平台的公司上班——或者即便不跳槽,也有可能在不同平台上開始另外一個殺手級項目——所以最好在每個平台上都積累一些經驗,而不要在一棵樹上吊死。

        十、SQL

        儘管SQL在當今眾多的技術中已不是什麼新東西,而且在未來的十年裡它的作用很有可能被削弱,甚至整個被淘汰,但它仍然是一種基本技能——別看它是一種基本技能,至今仍有許多開發人員不懂什麼是SQL或對它了解不多。不要指望基於圖形用戶界面的SQL構造器會幫你的忙,還是自己親手寫SQL查詢吧,確定你掌握了SQL的基本語法。現在理解了SQL,不僅對以後學習XQuery有所裨益,而且可以使你很快找到簡化或改進當前開發項目的途徑。

        尾聲:培養對技術的好奇心

        其實,不管技術的發展趨勢如何,每個人最重要的一個技能是好奇心。敢於面對挑戰,在你目前或未來的工作中,新語言或新技術可能很重要,也可能不怎麼重要,你所學習的東西並不一定非要針對你的工作。不要怕失敗,任何新的技術對初學者來說都是困難的。大多數的失敗都可以歸咎於本身急功近利,希望速成。俗話說——千里之行,始於足下,應該腳踏實地,一步一個腳印地往前走。不要讓時間來左右你行動,而是要利用時間來關注、研究、測試新的開發技術和工具。

        本文的用意不在於要讓你成為任何一種技術的專家——只是想拋磚引玉,和大家暢談現在和未來哪些技術是我們要密切關注的,討論今後IT行業就業的知識結構,思考自己今後應該在哪些方面需要多花些功夫。因為每一個人的情況各有不同,應該根據具體情況來構築自己的知識層面。但有一點無庸置疑——那就是保持良好的好奇心始終會使你充實和睿智。

  • Java入門需掌握的30個基本概念

    Java的白皮書為我們提出了Java語言的11個關鍵特性。

    (1)Easy:Java的語法比C++的相對簡單,另一個方面就是Java能使軟件在很小的機器上運行,基礎解釋其和類庫的支持的大小約為40kb,增

    加基本的標準庫和線程支持的內存需要增加125kb。
    (2)分佈式:Java帶有很強大的TCP/IP協議族的例程庫,Java應用程序能夠通過URL來穿過網絡來訪問遠程對象,由於servlet機制的出現,使

    Java編程非常的高效,現在許多的大的web server都支持servlet。
    (3)OO:面向對象設計是把重點放在對象及對象的接口上的一個編程技術.其面向對象和C++有很多不同,在與多重繼承的處理及Java的原類模

    型。
    (4)健壯特性:Java採取了一個安全指針模型,能減小重寫內存和數據崩潰的可能型。
    (5)安全:Java用來設計網路和分佈系統,這帶來了新的安全問題,Java可以用來構建防病毒和防攻擊的System.事實證明Java在防毒這一方

    面做的比較好。
    (6)中立體系結構:Java編譯其生成體系結構中立的目標文件格式可以在很多處理器上執行,編譯器產生的指令字節碼(Javabytecode)實現此

    特性,此字節碼可以在任何機器上解釋執行。
    (7)可移植性:Java中對基本數據結構類型的大小和算法都有嚴格的規定所以可移植性很好。
    (8)多線程:Java處理多線程的過程很簡單,Java把多線程實現交給底下操作系統或線程程序完成.所以多線程是Java作為服務器端開發語言

    的流行原因之一。
    (9)Applet和servlet:能夠在網頁上執行的程序叫Applet,需要支持Java的瀏覽器很多,而applet支持動態的網頁,這是很多其他語言所不

    能做到的。
    基本概念?
    1.OOP中唯一關係的是對象的接口是什麼,就像計算機的銷售商她不管電源內部結構是怎樣的,他只關係能否給你提供電就行了,也就是只

    要知道can or not而不是how and why.所有的程序是由一定的屬性和行為對象組成的,不同的對象的訪問通過函數調用來完成,對象間所有

    的交流都是通過方法調用,通過對封裝對像數據,很大限度上提高複用率。
    2.OOP中最重要的思想是類,類是模板是藍圖,從類中構造一個對象,即創建了這個類的一個實例(instance)。
    3.封裝:就是把數據和行為結合起在一個包中)並對對象使用者隱藏數據的實現過程,一個對像中的數據叫他的實例字段(instance field)。
    4.通過擴展一個類來獲得一個新類叫繼承(inheritance),而所有的類都是由Object根超類擴展而得,根超類下文會做介紹。
    5.對象的3個主要特性
    behavior—說明這個對象能做什麼.
    state—當對象施加方法時對象的反映.
    identity—與其他相似行為對象的區分標誌.
    每個對像有唯一的indentity而這3者之間相互影響.

    6.類之間的關係:
    use-a :依賴關係
    has-a :聚合關係
    is-a :繼承關係–例:A類繼承了B類,此時A類不僅有了B類的方法,還有其自己的方法.(個性存在於共性中)
    7.構造對象使用構造器:構造器的提出,構造器是一種特殊的方法,構造對象並對其初始化。
    例:Data類的構造器叫Data
    new Data()—構造一個新對象,且初始化當前時間.
    Data happyday=new Data()—把一個對象賦值給一個變量happyday,從而使該對象能夠多次使用,此處要聲明的使變量與對像變量二者是

    不同的.new返回的值是一個引用。
    構造器特點:構造器可以有0個,一個或多個參數
    構造器和類有相同的名字
    一個類可以有多個構造器
    構造器沒有返回值
    構造器總是和new運算符一起使用.

    8.重載:當多個方法具有相同的名字而含有不同的參數時,便發生重載.編譯器必須挑選出調用哪個方法。
    9.包(package)Java允許把一個或多個類收集在一起成為一組,稱作包,以便於組織任務,標準Java庫分為許多包.java.lang java.util

    java,net等,包是分層次的所有的java包都在java和javax包層次內。
    10.繼承思想:允許在已經存在的類的基礎上構建新的類,當你繼承一個已經存在的類時,那麼你就復用了這個類的方法和字段,同時你可以

    在新類中添加新的方法和字段。
    11.擴展類:擴展類充分體現了is-a的繼承關係.形式為:class (子類) extends (基類)。
    12.多態:在java中,對像變量是多態的.而java中不支持多重繼承。
    13.動態綁定:調用對象方法的機制。
    (1)編譯器檢查對象聲明的類型和方法名。
    (2)編譯器檢查方法調用的參數類型。
    (3)靜態綁定:若方法類型為priavte static final編譯器會準確知道該調用哪個方法。
    (4)當程序運行並且使用動態綁定來調用一個方法時,那麼虛擬機必須調用x所指向的對象的實際類型相匹配的方法版本。
    (5)動態綁定:是很重要的特性,它能使程序變得可擴展而不需要重編譯已存代碼。
    14.final類:為防止他人從你的類上派生新類,此類是不可擴展的。
    15.動態調用比靜態調用花費的時間要長。
    16.抽像類:規定一個或多個抽象方法的類本身必須定義為abstract。
    例: public abstract string getDescripition
    17.Java中的每一個類都是從Object類擴展而來的。
    18.object類中的equal和toString方法。
    equal用於測試一個對像是否同另一個對象相等。
    toString返回一個代表該對象的字符串,幾乎每一個類都會重載該方法,以便返回當前狀態的正確表示.
    (toString方法是一個很重要的方法)
    19.通用編程:任何類類型的所有值都可以同object類性的變量來代替。
    20.數組列表:ArrayList動態數組列表,是一個類庫,定義在java.uitl包中,可自動調節數組的大小。
    21.class類object類中的getclass方法返回ckass類型的一個實例,程序啟動時包含在main方法的類會被加載,虛擬機要加載他需要的所有

    類,每一個加載的類都要加載它需要的類。
    22.class類為編寫可動態操縱java代碼的程序提供了強大的功能反射,這項功能為JavaBeans特別有用,使用反射Java能支持VB程序員習慣

    使用的工具。
    能夠分析類能力的程序叫反射器,Java中提供此功能的包叫Java.lang.reflect反射機制十分強大.
    1.在運行時分析類的能力。
    2.在運行時探察類的對象。
    3.實現通用數組操縱代碼。
    4.提供方法對象。

    而此機制主要針對是工具者而不是應用及程序。
    反射機制中的最重要的部分是允許你檢查類的結構.用到的API有:
    java.lang.reflect.Field返回字段.
    java.reflect.Method返回方法.
    java.lang.reflect.Constructor返回參數.
    方法指針:java沒有方法指針,把一個方法的地址傳給另一個方法,可以在後面調用它,而接口是更好的解決方案。
    23.接口(Interface)說明類該做什麼而不指定如何去做,一個類可以實現一個或多個interface。
    24.接口不是一個類,而是對符合接口要求的類的一套規範。
    若實現一個接口需要2個步驟:
    1.聲明類需要實現的指定接口。
    2.提供接口中的所有方法的定義。
    聲明一個類實現一個接口需要使用implements關鍵字
    class actionB implements Comparable其actionb需要提供CompareTo方法,接口不是類,不能用new實例化一個接口.
    25.一個類只有一個超類,但一個類能實現多個接口。 Java中的一個重要接口:Cloneable sc-
    26.接口和回調.編程一個常用的模式是回調模式,在這種模式中你可以指定當一個特定時間發生時回調對像上的方法。
    例:ActionListener接口監聽. 
    類似的API有:java.swing.JOptionPane
    java.swing.Timer
    java.awt.Tookit
    27.對象clone:clone方法是object一個保護方法,這意味著你的代碼不能簡單的調用它。
    28.內部類:一個內部類的定義是定義在另一個內部的類。
    原因是:
    1.一個內部類的對象能夠訪問創建它的對象的實現,包括私有數據。
    2.對於同一個包中的其他類來說,內部類能夠隱藏起來。
    3.匿名內部類可以很方便的定義回調。
    4.使用內部類可以非常方便的編寫事件驅動程序。
    29.代理類(proxy):
    1.指定接口要求所有代碼
    2.object類定義的所有的方法(toString equals)
    30.數據類型:Java是強調類型的語言,每個變量都必須先申明它都類型,java中總共有8個基本類型.4種是整型,2種是浮點型,一種是字符型,被用於Unicode編碼中的字符,布爾型

  • 台灣IT 人員何去何從?

      筆者發現最近國民黨遠赴大陸,跟對岸領導人舉行經濟論壇。其訪問團中不泛一些國內知名企業老闆也名列團中。更值得筆者注意的是

    ,大陸片面開放對台灣民眾一些息息相關的措施。我們知道國內排名前十大之企業紛紛在大陸投資,初期也派遣台灣菁英與幹部前往開發。

    我們台灣從事IT科技人才未來如何跟對岸競爭呢 ??

      在拋開任何政治意識型態迷思的情況下,唯有取得大陸當局認同的技能證明將是在大陸立足的關鍵第一步。筆者在台中北訓電腦從事教

    育訓練多年來發現的趨勢。遂於2006 年開始輔導學員一一取得IT 國際認證,也幫助學員取得相關工作的經驗當中發現,,台灣IT 產業人才

    若是將眼光侷限於台灣。未來發展前途將會慢慢萎縮。唯有充實自己的國際觀,取得國際間大家都可以認同的技能證明。才是您在IT 專業

    領域中唯一致勝法寶。

      出國一定要持護照才可以在國際間差旅。在IT 領域中持有國際認證,更能夠讓您在國際人力市場中暢行無阻。

      您還在徬遑俳佪嗎?? 讓台中北訓幫助您以最經濟、最快速方式取得這張國際通行證吧!!

    詳情洽尋網站:http://www.51-pass.com
     
    以下新聞是引用自聯合報96.04.30 焦點新聞A2 版內容

     

    大陸最新對台開放政策

    ㄧ、教育部:

    台灣的大學可開放招收大陸學生

     

    二、公安部:

    下月15 日起,辦理台胞證入境簽注,增加廣州、青島、武漢3 口岸( 原有8 口岸為上海、福州、廈門、海口、三亞、瀋陽、大連、成都)

     

    三、人事部:

    專技人員資格考試再開放15類:經濟、會計、衛生、計算機 (電腦)技術與軟體 、質量管理、翻譯、拍賣師、藥師、棉花質量檢驗師、註冊

    資產評估師、房地產估價師、房地產經紀人、造價工程師、註冊諮詢工程師、註冊稅務師

     

    四、交通部:

    1. 台灣航運和道路運輸企業,可在大陸設獨資船務、貨櫃運輸、貨物倉儲、貨櫃場站、國際船舶管理、無船承運、道路貨運和汽車維修業

    、合資國際船舶代理、道路客運公司。

    2. 台灣客運公司從事福建沿海與金馬澎之海上直接通航,可在福建口岸設辦事機構做票務;海峽兩岸船公司在大陸取得的運輸收入,免徵

    營業稅和所得稅。

    3. 為台灣船員和淺水員培訓、發證,免收考試、發證費。

     

    五、民航總局:

    1. 第二批直航包機點,開放成都、杭州、南京、深圳、大連、桂林。

    2. 台灣飛行包機的航空公司,可在大陸包機點設辦事機構或代表處。

    3. 歡迎台灣學生報考大陸民航院校,台灣機務維修人員和學生可考大陸執照。

  • 當前反垃圾郵件技術縱覽分析

      垃圾郵件肆虐橫行,其危害已經讓人們忍無可忍,究竟垃圾郵件是如何發送的?針對之,目前國際上又有什麼好的技術?我們在挑選反垃圾郵件產品的時候應該如何選擇?本文與您共同探討。

        垃圾郵件發送方式揭密

        說簡單一點,垃圾郵件(SPAM Email)就是批量發送的未徵得收信人同意的電子郵件。垃圾郵件的發送方式歸納起來有以下幾種情況:其一,垃圾郵件發送者利用寬帶連接,建立SMTP服務器,大量發送垃圾郵件;其二,病毒郵件、蠕蟲郵件,利用操作系統或者應用系統的漏洞,大量轉發含帶病毒的郵件;其三,郵件服務器Openrelay漏洞被人利用進行垃圾郵件的發送;其四,利用IDC提供的郵件服務,以正常用戶的方式進行垃圾郵件的發送。

        反垃圾郵件機理大全

        到現在為止,目前國際上主要有哪些技術手段能夠幫助我們抵禦垃圾郵件呢?下面我們來大致了解一下:

         IP地址、域名、郵件地址黑白名單方式

        這種技術手段是最傳統的方式,它通過黑名單技術對垃圾郵件進行屏蔽,通過白名單技術對允許的郵件進行放行。

        基於信頭、信體、附件的內容過濾方式

        該項技術目前尚不成熟,因為現在的群發程序自動生成和發送的垃圾郵件對於發件人、收件人、郵件主題甚至郵件內容都是隨機生成的,使得該種技術目前應用範圍日趨狹窄。

        基於統計分析的貝葉斯算法技術

        基於統計的原則,採用標記權重的方式,根據對用戶認為的垃圾郵件和非垃圾郵件進行統計計算,生成過濾規則,具有學習漸進的功能,可以逐漸取得好的效果。

        基於連接頻率的動態規則方式

        由於一個正常用戶發送郵件的數量和頻率遠遠低於垃圾郵件發送者,因此我們可以根據垃圾郵件發送具有一定時間內郵件數量和郵件連接頻率都非常大的情況,從頻率和數量對垃圾發送者的連接行為進行控制。

        電子郵票方案

        因為垃圾郵件發送具有大規模發送成本很小的行為特徵,微軟公司提出了對發送郵件進行收費的解決方案。不過這種方式卻是對廣大的正常郵件發送者帶來了新的負擔,還需考慮。

         Challenge-Response方式挑戰-應答模式是從增加垃圾郵件發送者時間成本上入手,要求每發送一封郵件,就要求發件人回答一些問題的方式來增加發送時間。

         Domainkeys方式

        這是一種基於PKI的方式對郵件發送者進行驗證,對郵件信息進行加密保護,對收信人實現防抵賴機制。

         SPF方式

        這是一種源頭認證的方式,它通過改變域名系統的數據庫,接受方核實郵件實際來源是否和SPF註冊的一致來判斷郵件是否為假冒郵件。

        另外還有基於病毒引擎的病毒郵件的過濾等的一些反垃圾郵件方式,主要在一些反病毒產品中體現。

        如何選擇“反垃圾郵件”產品

        選擇一個較大型反垃圾郵件系統,筆者認為主要從實用性、有效性、可靠性、無關性、可管理性等幾個方面進行考慮。具體地說就是,系統提供反垃圾郵件功能的同時,不影響用戶應用速度;在網絡高流量的情況下,系統仍可有效準確地進行垃圾郵件的過濾;系統在提供垃圾郵件過濾的同時,不能因為自身故障對郵件系統的正常運行產生影響;而且系統在提供反垃圾郵件功能的同時,不影響原郵件服務器配置和反垃圾郵件策略;系統能夠提供多種方式的接入和運行模式(透明網關等),能夠為管理員提供簡單易操作的界面。

        綜上所述,垃圾郵件儘管猖獗,但是人類相應的反垃圾郵件技術也層出不窮,作為專業的反垃圾郵件安全產品的提供廠商,思維世紀公司相信,隨著國家、社會、企業和個人對垃圾郵件危害重視程度的提高,完全解決垃圾郵件的問題不會只是一個遙遠的夢。

  • CISSP Vs CCISP:認證名稱相近令人困惑

    一些持有安全行業最值得誇耀的CISSP(信息系統安全專業人員資格認證)證書的人擔心,隨著另一種類似的旨在保護重要的基礎設施網絡的證書的出現,他們努力獲得的CISSP證書將失去特殊的地位。那種由重要基礎設施研究所頒發的資格證書非正式的名稱是CCISP。
      
    Counterpane互聯網安全公司的CISSP資格證書持有者和整合業務經理JP Vossen說,我對這個縮寫字與CISSP非常接近感到非常擔心。自從90年代末獲得CISSP資格證書以來,我親身體驗到了商務界人士一直很難把這個縮寫字搞正確。現在,新增加一個縮寫字將使這種情況更加糟糕。
      
    那些尋求得到更新一點的證書的人必須要滿足最低限度的要求。這些要求包括在重要的基礎設施、數據採集與監控系統(SCADA)或者其它高可用性環境中工作三年以上。因為課程材料的敏感性質和每兩年更新一次資格證書,這項資格證書的申請人還需要通過背景考試。相比之下,CISSP資格證書需要有在這個領域工作四年的經驗並且要廣泛測試申請人的知識。這個資格證書還要求持有者不間斷地學習以保持良好的狀態。
      
    在過去的幾年裡,比較新一點的資格證書已經進入了網絡安全領域。這種證書的持有者要求為他們已經證明的安全技能得到更高的工資。然而,胡亂排列字母令人們難以應付。
      
    Vossen說,過多地使用縮寫字使IT專業蒙受了痛苦。這些縮寫字不僅造成了混亂,而且在很多情況下這些縮寫字還不是惟一的。雖然任何專業都有自己的行話,但是,我們必須要與依賴於我們的IT專業以外的許多人士交流。信息安全在行話和失敗的代價這兩個方面更糟糕,因此,我們要使事情好起來,而不是把事情搞糟。
      
    這個問題的中心是信息系統安全協會(ISSA)承認的並且適合於具體環境的CCISP(重要基礎設施安全專業人員資格證書)。 CCISP資格證書的頒發者稱,這是一種完全不同的證書,是針對重要基礎設施行業的,實際上是CISSP資格證書的一個補充。
      
    重要基礎設施研究所所長Clint Bodungen說,我們是專門從事重要基礎設施保護工作的。重要基礎設施一般包括石油和天然氣、公用事業和核設施。我們的課程專門介紹CIP(重要基礎設施保護)系統和設備,也就是(ISC)2(國際信息系統安全認證聯盟)沒有涉及的數據採集與監控系統。
      
    Bodungen表示,這個縮寫字作為CIP行業的資格證書是合乎邏輯的。我們建議,由於CISSP提供了良好的安全基礎,所有的學生在取得更專業的CCISP資格證書之前都要獲得CISSP資格證書。
      
    美國普度大學的一位CISSP資格證書持有者和計算機技術專業的副教授Marc Rogers說,如果國際信息系統安全認證聯盟不追究他們侵犯商標權的問題,我會感到非常意外。那個縮寫字太接近CISSP了。
      
    據Bodungen說,負責頒發CISSP資格證書的非盈利的國際信息系統安全認證聯盟確實發出了停止使用CCISP縮寫字的命令。但是,這個機構沒有採取其它的措施。同時,Bodungen的公司繼續推銷其資格證書。
      
    國際信息系統安全認證聯盟沒有解釋它為什麼放棄了這個努力。國際信息系統安全認證聯盟通信和相關服務經理Sarah Bohne對SearchSecurity.com網站說,該機構有一項政策,禁止僱員對其它安全資格認證和證書發表評論。
      
    然而,其他持有CISSP資格證書的人員講話更隨便一些。美國紅十字會首席信息安全官、CISSP資格證書持有者Ron Baklarz說,雖然這個縮寫字非常相似,但是,從法律角度看它是不一樣的。我同意這樣的觀點,認為這個縮寫字會引起混亂,這個縮寫字太相似了,令人非常遺憾。我認為,這對CISSP的影響是很小的,因為國際信息系統安全認證聯盟本身已經開始把這個資格證書簡化為SSCP(系統安全認證從業人員),更不用說國際信息系統審計協會(ISACA)的CISM(信息安全經理人認證)認證了。
      
    CISSP資格證書的持有者、安全專家Stephen Cobb對CCISP資格證書的含義有不同的看法。他說,我從該機構網站上看到的內容似乎顯示,這是一個非盈利的機構。 CCISP資格證書與其它證書的惟一區別就是這個證書是由非盈利機構創建和管理的。有些基於廠商的證書,如思科和微軟的資格證書,也具有一定的地位。但是,可信賴的資格證書應該由非盈利機構管理,否則,就很難避開“文憑工廠”的指控。
      
    Baklarz補充說,CCISP網站沒有提供詳細的信息,如嚴格的考試和公共知識體系。國際信息系統安全認證聯盟、國際信息系統審計協會和ASIS等機構用了很多年時間才發展和獲得了一流的聲譽。 CCISP資格證書似乎是最時髦的,但是,肯定是沒有經過考驗的。
  • 台灣地區所有Prometric考場

    基隆、台北

    TI55

    學承電腦基隆分校

    Hsueh Cheng Educational Organization Keelung

    02-24213456

    基隆市仁愛區忠二路17號1樓

     

    TI1

    資策會台北教育訓練中心

    INFORMATION TECH TGN CENTRE

    02-27089215

    台北市復興南路一段390號2樓

     

    TI8

    恆逸資訊台北分校

    SYSWARE CORPORATION

    02-25149191

    台北市復興北路99號14樓

     

    TI59

    學承電腦忠孝分校

    Hsueh Cheng Educational Org. Taipei Zhongxiao Div-01

    02-66171133

    台北市忠孝東路四段147巷1號4樓

     

    TI65

    學承電腦北區認證中心

    Hsueh Cheng Educational Organization Zhongzheng Division

    02-23704911

    台北市博愛路38號4樓

     

    TI69

    學承電腦士林分校

    Hsueh Cheng Educational Organization Shilin Division

    02-28823200

    台北市士林區文林路416號1樓

     

    TI19

    巨匠電腦台北認證中心

    GREAT MASTER TAIPEI CO LTD

    02-23826015

    台北市公園路30號3樓

     

    TI41

    巨匠電腦台北東區認證中心

    GREAT MASTER TAIPEI DONGUAG CO LTD

    02-27735243 

    台北市忠孝東路四段169號4F之1

     

    TI17

    聯成電腦公館分校

    LIEN CHENG KUNGKUAN COMPUTER TRAINING CENTER

    02-23648885

    台北市羅斯福路三段272號3樓

     

    TI28

    HP教育訓練中心

    HEWLETT-PACKARD TAIWAN LTD.

    02-87229645

    台北市信義路五段106號9樓

     

    TIH

    啟迪資訊

    GLOBAL EDUCATION NETWORK

    02-87978738

    台北市內湖路一段516號10樓

     

    TIN

    TRAINING PARTNERS

    02-27477467

    台北市南京東路五段188號2樓之2

     

    TI34

    廣科國際

    DIGIMENTAL TECHNOLOGY CO LTD

    02-23278658

    台北市中正區忠孝東路一段140號4樓

     

    TI16

    聯成電腦板橋分校

    LIEN CHENG BANCHIAU COMPUTER CENTER

    02-29681701

    板橋市文化路1段30號6樓

     

    桃園

    TI25

    龍華科技大學

    LUNGHWA UNIVERSITY OF SCIENCE AND TECHNOLOGY

    02-82093211

    桃園縣龜山鄉萬壽路一段300號

     

    TI42

    巨匠電腦桃園認證中心

    GREAT MASTER – TAOYUAN 1

    03-474878

    桃園縣桃園市民權路6號2樓

     

    TI74

    學承電腦中壢分校

    Hsueh Cheng Educational Organization Zhongli City

    03- 4221808

    桃園縣中壢市中山路128號

     

    TIP

    資策會中壢教育訓練中心

    INSTITUTE FOR INFO INDUSTRY

    03-4257387

    桃園縣中壢市五權里38-1號(中央大學內)

     

    新竹

    TI21

    巨匠電腦新竹認證中心

    GREAT MASTER INFORMATION

    03-5284678

    新竹市中華路二段393號

     

    TI32

    聯成電腦新竹分校

    LIEN CHENG HSIN CHU TRAINING CENTER

    03-5235568

    新竹市中華路二段387號

     

    TIR

    恆逸資訊新竹分校

    SYSWARE CORPORATION

    03-5723322

    新竹市光復路二段295號3樓

     

    台中

    TI29

    資策會台中教育訓練中心

    INSTITUTE FOR INFORMATION INDUSTRY – TAICHUNG

    04-24525773

    台中市河南路二段262號14樓

     

    TI18

    巨匠電腦台中認證中心

    GREAT MASTER INFORMATION CO., LTD – TAICHUNG

    04-22210973

    台中市中山路27號1F

     

    TI39

    北訓電腦台中分校

    BSNET COMPUTER TRAINING CENTER, TAICHUNG

    04-22231797

    台中市中山路33號

     

    TI99

    恆逸資訊台中分校

    Systex-TaiChung

    04-23297722

    台中市中港路一段201號2樓

     

    TI86

    學承電腦豐原分校

    Hsueh Cheng Educational Organization Fengyuan City

    04-25272288

    台中縣豐原市三民路65號

     

    彰化、嘉義

    TI46

    學承電腦彰化分校

    Hsueh Cheng Educational Organization Changhua City

    04-7280555

    彰化市中正路二段85號

     

    TI47

    學承電腦嘉義分校

    Hsueh Cheng Educational Organization Chiayi City

    05-2223471

    嘉義市中山路492號

     

    TI37

    聯成電腦嘉義分校

    LIEN CHENG CHIAYI TRAINING CTR

    05-2258268

    嘉義市中正路709號

     

    TI30

    吳鳳技術學院

    WUFENG INSTITUTE OF TECHNOLOGY

    05-2267125

    嘉義縣民雄鄉建國路二段117號

     

    台南

    TI62

    學承電腦台南分校

    Hsueh Cheng Educational Organization Tainan City

    06-2267388

    台南市成功路87號

     

    TI24

    巨匠電腦台南認證中心

    GREAT MASTER INFORMATION CO., LTD – TAINAN

    06-2200940

    台南市公園路108號

     

    TI61

    北訓電腦台南分校

    BSNET Computer Training Center Tainan

    06-2230542

    台南市成功路63之2號

     

    高雄

    TIQ

    恆逸資訊高雄分校

    SYSTEX CORPORATION

    07-2246222

    高雄市新興區中正三路55號10樓

     

    TI15

    國立中山大學

    NATIONAL SUN YAT SEN UNIVERSITY

    07-5252000

    分機2523

    高雄市鼓山區蓮海路70號

     

    TI20

    巨匠電腦高雄認證中心

    GREAT MASTER INFORMATION

    07-2371933

    高雄市新興區中山一路242號

     

    TI54

    學承電腦高雄分校

    Hsueh Cheng Educational Organization Kaohsiung City

    07-2887025

    高雄市七賢二路5號

     

    TI101

    北訓電腦高雄分校

    BSNET Computer Training Center

    07-2355901

    高雄市中山一路318號

     

    TI48

    學承電腦鳳山分校

    Hsueh Cheng Educational Organization Fengshan City

    07-7996998

    高雄縣鳳山市光遠路342號

     

    屏東

    TI35

    聯成電腦屏東分校

    LIEN CHENG PING TUNG TRAINING CENTER

    08-7325018

    屏東市南昌街1號

     

    TI36

    美和技術學院

    MEIHO INSTITUTE OF TECHNOLOGY

    08-7799821

    屏東縣內埔鄉美和村屏光路23號

     

    TI87

    學承電腦屏東分校

    Hsueh Cheng Educational Organization Pingtung City

    08-7326611

    屏東市中山路28號

     

    宜蘭、花蓮

    TI106

    學承電腦羅東分校

    Hsueh Cheng Educational Org Yilan County

    03-9560022

    宜蘭縣羅東鎮公正路34號

     

    TI109

    大漢技術學院

    Dahan Institute of Technology

    03-8210871

    花蓮縣新城鄉大漢村樹人街1號

  • 路由器(Router)VPN和IPv6技術分析

    路由器綜述
    路由器是互聯網的主要節點設備。路由器通過路由決定數據的轉發。轉發策略稱為路由選擇(routing),這也是路由器名稱的由來(router,轉發者)。

    路由器通常用於節點眾多的大型網絡環境,它處於ISO/OSI模型的網絡層。與交換機和網橋相比,在實現骨幹網的互聯方面,路由器、特別是高端路由器有著明顯的優勢。路由器高度的智能化,對各種路由協議、網絡協議和網絡接口的廣泛支持,還有其獨具的安全性和訪問控制等功能和特點是網橋和交換機等其他互聯設備所不具備的。路由器的中低端產品可以用於連接骨幹網設備和小規模端點的接入,高端產品可以用於骨幹網之間的互聯以及骨幹網與互聯網的連接。特別是對於骨幹網的互聯和骨幹網與互聯網的互聯互通,不但技術複雜,涉及通信協議、路由協議和眾多接口,信息傳輸速度要求高,而且對網絡安全性的要求也比其他場合高得多。因此採用高端路由器作為互聯設備,有著其他互聯設備不可比擬的優勢。

    路由器的作用

    路由器的一個作用是連通不同的網絡,另一個作用是選擇信息傳送的線路。選擇通暢快捷的近路,能大大提高通信速度,減輕網絡系統通信負荷,節約網絡系統資源,提高網絡系統暢通率,從而讓網絡系統發揮出更大的效益來。

    從過濾網絡流量的角度來看,路由器的作用與交換機和網橋非常相似。但是與工作在網絡物理層,從物理上劃分網段的交換機不同,路由器使用專門的軟件協議從邏輯上對整個網絡進行劃分。例如,一台支持IP協議的路由器可以把網絡劃分成多個子網段,只有指向特殊IP地址的網絡流量才可以通過路由器。對於每一個接收到的數據包,路由器都會重新計算其校驗值,並寫入新的物理地址。因此,使用路由器轉發和過濾數據的速度往往要比只查看數據包物理地址的交換機慢。但是,對於那些結構複雜的網絡,使用路由器可以提高網絡的整體效率。路由器的另外一個明顯優勢就是可以自動過濾網絡廣播。從總體上說,在網絡中添加路由器的整個安裝過程要比即插即用的交換機複雜很多。

    路由器的類型及特點

    互聯網各種級別的網絡中隨處都可見到路由器。接入網絡使得家庭和小型企業可以連接到某個互聯網服務提供商;企業網中的路由器連接一個校園或企業內成千上萬的計算機;骨幹網上的路由器終端系統通常是不能直接訪問的,它們連接長距離骨幹網上的ISP和企業網絡。互聯網的快速發展無論是對骨幹網、企業網還是接入網都帶來了不同的挑戰。骨幹網要求路由器能對少數鏈路進行高速路由轉發。企業級路由器不但要求端口數目多、價格低廉,而且要求配置起來簡單方便,並提供QoS。

    1.接入路由器

    接入路由器連接家庭或ISP內的小型企業客戶。接入路由器已經開始不只是提供SLIP或PPP連接,還支持諸如PPTP和IPSec等虛擬私有網絡協議。這些協議要能在每個端口上運行。諸如ADSL等技術將很快提高各家庭的可用帶寬,這將進一步增加接入路由器的負擔。由於這些趨勢,接入路由器將來會支持許多異構和高速端口,並在各個端口能夠運行多種協議,同時還要避開電話交換網。

    2.企業級路由器

    企業或校園級路由器連接許多終端系統,其主要目標是以盡量便宜的方法實現盡可能多的端點互連,並且進一步要求支持不同的服務質量。許多現有的企業網絡都是由Hub或網橋連接起來的以太網段。儘管這些設備價格便宜、易於安裝、無需配置,但是它們不支持服務等級。相反,有路由器參與的網絡能夠將機器分成多個碰撞域,並因此能夠控制一個網絡的大小。此外,路由器還支持一定的服務等級,至少允許分成多個優先級別。但是路由器的每端口造價要貴些,並且在能夠使用之前要進行大量的配置工作。因此,企業路由器的成敗就在於是否提供大量端口且每端口的造價很低,是否容易配置,是否支持QoS。另外還要求企業級路由器有效地支持廣播和組播。企業網絡還要處理歷史遺留的各種LAN技術,支持多種協議,包括IP、IPX和Vine。它們還要支持防火牆、包過濾以及大量的管理和安全策略以及VLAN。

    3.骨幹級路由器

    骨幹級路由器實現企業級網絡的互聯。對它的要求是速度和可靠性,而代價則處於次要地位。硬件可靠性可以採用電話交換網中使用的技術,如熱備份、雙電源、雙數據通路等來獲得。這些技術對所有骨幹路由器而言差不多是標準的。骨幹IP路由器的主要性能瓶頸是在轉發表中查找某個路由所耗的時間。當收到一個包時,輸入端口在轉發表中查找該包的目的地址以確定其目的端口,當包越短或者當包要發往許多目的端口時,勢必增加路由查找的代價。因此,將一些常訪問的目的端口放到緩存中能夠提高路由查找的效率。不管是輸入緩衝還是輸出緩衝路由器,都存在路由查找的瓶頸問題。除了性能瓶頸問題,路由器的穩定性也是一個常被忽視的問題。

    4.太比特路由器

    在未來核心互聯網使用的三種主要技術中,光纖和DWDM都已經是很成熟的並且是現成的。如果沒有與現有的光纖技術和DWDM技術提供的原始帶寬對應的路由器,新的網絡基礎設施將無法從根本上得到性能的改善,因此開發高性能的骨幹交換/路由器(太比特路由器)已經成為一項迫切的要求。太比特路由器技術現在還主要處於開發實驗階段。

    路由器技術

    路由器的體系結構

    從體系結構上看,路由器可以分為第一代單總線單CPU結構路由器、第二代單總線主從CPU結構路由器、第三代單總線對稱式多CPU結構路由器;第四代多總線多CPU結構路由器、第五代共享內存式結構路由器、第六代交叉開關體系結構路由器和基於機群系統的路由器等多類。

    路由器的構成

    路由器具有四個要素:輸入端口、輸出端口、交換開關和路由處理器。

    輸入端口是物理鏈路和輸入包的進口處。端口通常由線卡提供,一塊線卡一般支持4、8或16個端口,一個輸入端口具有許多功能。第一個功能是進行數據鏈路層的封裝和解封裝。第二個功能是在轉發表中查找輸入包目的地址從而決定目的端口(稱為路由查找),路由查找可以使用一般的硬件來實現,或者通過在每塊線卡上嵌入一個微處理器來完成。第三,為了提供QoS(服務質量),端口要對收到的包分成幾個預定義的服務級別。第四,端口可能需要運行諸如SLIP(串行線網際協議)和PPP(點對點協議)這樣的數據鏈路級協議或者諸如PPTP(點對點隧道協議)這樣的網絡級協議。一旦路由查找完成,必須用交換開關將包送到其輸出端口。如果路由器是輸入端加隊列的,則有幾個輸入端共享同一個交換開關。這樣輸入端口的最後一項功能是參加對公共資源(如交換開關)的仲裁協議。

    交換開關可以使用多種不同的技術來實現。迄今為止使用最多的交換開關技術是總線、交叉開關和共享存貯器。最簡單的開關使用一條總線來連接所有輸入和輸出端口,總線開關的缺點是其交換容量受限於總線的容量以及為共享總線仲裁所帶來的額外開銷。交叉開關通過開關提供多條數據通路,具有N×N個交叉點的交叉開關可以被認為具有2N條總線。如果一個交叉是閉合,輸入總線上的數據在輸出總線上可用,否則不可用。交叉點的閉合與打開由調度器來控制,因此,調度器限制了交換開關的速度。在共享存貯器路由器中,進來的包被存貯在共享存貯器中,所交換的僅是包的指針,這提高了交換容量,但是,開關的速度受限於存貯器的存取速度。儘管存貯器容量每18個月能夠翻一番,但存貯器的存取時間每年僅降低5%,這是共享存貯器交換開關的一個固有限制。

    輸出端口在包被發送到輸出鏈路之前對包存貯,可以實現複雜的調度算法以支持優先級等要求。與輸入端口一樣,輸出端口同樣要能支持數據鏈路層的封裝和解封裝,以及許多較高級協議。

    路由處理器計算轉發表實現路由協議,並運行對路由器進行配置和管理的軟件。同時,它還處理那些目的地址不在線卡轉發表中的包。

    VPN
    VPN(Virtual Private Network-虛擬專用網)解決方案是路由器具有的重要功能之一。其解決方案大致如下:

    1.訪問控制

    一般分為PAP(口令認證協議)和CHAP(高級口令認證協議)兩種協議。 PAP要求登錄者向目標路由器提供用戶名和口令,與其訪問列表(Access List)中的信息相符才允許其登錄。它雖然提供了一定的安全保障,但用戶登錄信息在網上無加密傳遞,易被人竊取。 CHAP便應運而生,它把一隨機初始值與用戶原始登錄信息(用戶名和口令)經Hash算法翻譯後形成新的登錄信息。這樣在網上傳遞的用戶登錄信息對黑客來說是不透明的,且由於隨機初始值每次不同,用戶每次的最終登錄信息也會不同,即使某一次用戶登錄信息被竊取,黑客也不能重複使用。需要注意的是,由於各廠商採取各自不同的Hash算法,所以CHAP無互*作性可言。要建立VPN需要VPN兩端放置相同品牌路由器。

    2.數據加密

    在加密過程中加密位數是一個很重要的參數,它直接關係到解密的難易程度,其中Intel 9000系列路由器表現最為優異,為一百多位加密。

    3.NAT(Network Address Translation-網絡地址轉換協議)

    如同用戶登錄信息一樣,IP和MAC地址在網上無加密傳遞也很不安全。 NAT可把合法IP地址和MAC地址翻譯成非法IP地址和MAC地址在網上傳遞,到達目標路由器後反翻譯成合法IP與MAC地址,這一過程有點像CHAP,翻譯算法廠商各自有不同標準,不能實現互*作。

    QoS

    QoS(Quality of Service-服務質量)本來是ATM(Asynchronous Transmit Mode)中的專用術語,在IP上原來是不談QoS的,但利用IP傳VOD等多媒體信息的應用越來越多,IP作為一個打包的協議顯得有點力不從心:延遲長且不為定值,丟包造成信號不連續且失真大。為解決這些問題,廠商提供了若干解決方案:第一種方案是基於不同對象的優先級,某些設備(多為多媒體應用)發送的數據包可以後到先傳。第二種方案基於協議的優先級,用戶可定義哪種協議優先級高,可後到先傳,Intel和Cisco都支持。第三種方案是做鏈路整合MLPPP(Multi Link Point to Point Protocol),Cisco支持可通過將連接兩點的多條線路做帶寬匯聚,從而提高帶寬。第四種方案是做資源預留RSVP(Resource Reservation Protocol),它將一部分帶寬固定的分給多媒體信號,其它協議無論如何擁擠,也不得佔用這部分帶寬。這幾種解決方案都能有效的提高傳輸質量。

    RIP、OSPF和BGP協議

    互聯網上現在大量運行的路由協議有RIP(Routing Information Protocol-路由信息協議)、OSPF(Open Shortest Path First–開放式最短路優先)和BGP(Border Gateway Protocol—邊界網關協議)。 RIP、OSPF是內部網關協議,適用於單個ISP的統一路由協議的運行,由一個ISP運營的網絡稱為一個自治系統。 BGP是自治系統間的路由協議,是一種外部網關協議。

    RIP是推出時間最長的路由協議,也是最簡單的路由協議。它主要傳遞路由信息(路由表)來廣播路由。每隔30秒,廣播一次路由表,維護相鄰路由器的關係,同時根據收到的路由表計算自己的路由表。 RIP運行簡單,適用於小型網絡,互聯網上還在部分使用著RIP。

    OSPF協議是“開放式最短路優先”的縮寫。 “開放”是針對當時某些廠家的“私有”路由協議而言,而正是因為協議開放性,才使得OSPF具有強大的生命力和廣泛的用途。它通過傳遞鏈路狀態(連接信息)來得到網絡信息,維護一張網絡有向拓撲圖,利用最小生成樹算法得到路由表。 OSPF是一種相對複雜的路由協議。

    總的來說,OSPF、RIP都是自治系統內部的路由協議,適合於單一的ISP(自治系統)使用。一般說來,整個互聯網並不適合跑單一的路由協議,因為各ISP有自己的利益,不願意提供自身網絡詳細的路由信息。為了保證各ISP利益,標準化組織製定了ISP間的路由協議BGP。

    BGP處理各ISP之間的路由傳遞。其特點是有豐富的路由策略,這是RIP、OSPF等協議無法做到的,因為它們需要全局的信息計算路由表。 BGP通過ISP邊界的路由器加上一定的策略,選擇過濾路由,把RIP、OSPF、BGP等的路由發送到對方。全局範圍的、廣泛的互聯網是BGP處理多個ISP間的路由的實例。 BGP的出現,引起了互聯網的重大變革,它把多個ISP有機的連接起來,真正成為全球範圍內的網絡。帶來的副作用是互聯網的路由爆炸,現在互聯網的路由大概是60000條,這還是經過“聚合”後的數字。配置BGP需要對用戶需求、網絡現狀和BGP協議非常了解,還需要非常小心,BGP運行在相對核心的地位,一旦出錯,其造成的損失可能會很大!

    IPv6技術

    迅速發展中的互聯網將不再是僅僅連接計算機的網絡,它將發展成能同電話網、有線電視網類似的信息通信基礎設施。因此,正在使用的IP(互聯網協議)已經難以勝任,人們迫切希望下一代IP即IPv6的出現。

    IPv6是IP的一種版本,在互聯網通信協議TCP/IP中,是OSI模型第3層(網絡層)的傳輸協議。它同目前廣泛使用的、1974年便提出的IPv4相比,地址由32位擴充到128位。從理論上說,地址的數量由原先的4.3×109個增加到4.3×1038個。之所以必須從現行的IPv4改用IPv6,主要有二個原因。

    1.由於互聯網迅速發展,地址數量已經不夠用,這使得網絡管理花費的精力和費用令人難以承受。地址的枯竭是促使向擁有128位地址空間過渡的首要原因。

    2.隨著主機數目的增加,決定數據傳輸路由的路由表在不斷加大。路由器的處理性能跟不上這種迅速增長。長此以往,互聯網連接將難以提供穩定的服務。經由IPv6,路由數可以減少一個數量級。

    為了使互聯網連接許多東西變得簡單,而且使用容易,必須採用IPv6。 IPv6所以能做到這一點,是因為它使用了四種技術:地址空間的擴充、可使路由表減小的地址構造、自動設定地址以及提高安全保密性。

    IPv6在路由技術上繼承了IPv4的有利方面,代表未來路由技術的發展方向,許多路由器廠商目前已經投入很大力量以生產支持IPv6的路由器。當然IPv6也有一些值得注意和效率不高的地方,IPv4/NAT和IPv6將會共存相當長的一段時間。